diff --git a/DEPS b/DEPS
index af70a784..fadb966 100644
--- a/DEPS
+++ b/DEPS
@@ -304,7 +304,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling V8
   # and whatever else without interference from each other.
-  'src_internal_revision': 'c7ca139b5030a1740c3ef47563720f66d1501d6c',
+  'src_internal_revision': '4e05864666c58f0cc169127b45bd44f103b594fc',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling Skia
   # and whatever else without interference from each other.
@@ -312,11 +312,11 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling V8
   # and whatever else without interference from each other.
-  'v8_revision': '251745faf6397345dac2eed13afe0c495718d3a3',
+  'v8_revision': '563bff0b6e7bc8dd9cac09321dbf9aa2c7fc6ed9',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling ANGLE
   # and whatever else without interference from each other.
-  'angle_revision': 'b71fe1c594db7bca182308c23314f11d2876e4eb',
+  'angle_revision': '8f6b295aac73fc2c6a2954778b6c701b9805ebbd',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling SwiftShader
   # and whatever else without interference from each other.
@@ -399,7 +399,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling devtools-frontend
   # and whatever else without interference from each other.
-  'devtools_frontend_revision': '0d533faf672a300f96a692c96a8eed7a868a844a',
+  'devtools_frontend_revision': '33a09fb44a6f593270589acfac482d9b275b389c',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling libprotobuf-mutator
   # and whatever else without interference from each other.
@@ -491,7 +491,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling feed
   # and whatever else without interference from each other.
-  'highway_revision': '8f20644eca693cfb74aa795b0006b6779c370e7a',
+  'highway_revision': '8295336dd70f1201d42c22ab5b0861de38cf8fbf',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling ffmpeg
   # and whatever else without interference from each other.
@@ -1004,12 +1004,12 @@
 
   'src/clank': {
     'url': Var('chrome_git') + '/clank/internal/apps.git' + '@' +
-    '91339b8b4480a489b0c8e7e10ed1710420af97d9',
+    '9e0c16ba7803a6362dc0f1504a171f38b08a8423',
     'condition': 'checkout_android and checkout_src_internal',
   },
 
   'src/docs/website': {
-    'url': Var('chromium_git') + '/website.git' + '@' + '610abd294843897ceb5cbe4d26e33f11330021ad',
+    'url': Var('chromium_git') + '/website.git' + '@' + '2b7cfaa61f6bba49ecef7b8b050188c6a2103b66',
   },
 
   'src/ios/third_party/earl_grey2/src': {
@@ -1163,7 +1163,7 @@
     'packages': [
       {
           'package': 'chromium/third_party/androidx',
-          'version': 'IiKddJnfGGQjhIr3rzdqkYKQeLgTmfzm8vw4O64EOzsC',
+          'version': 'v7Devo4icVeg_Fi4h6o1emunjka-gsVK2qENAz83sdMC',
       },
     ],
     'condition': 'checkout_android',
@@ -1425,7 +1425,7 @@
   # Tools used when building Chrome for Chrome OS. This affects both the Simple
   # Chrome workflow, as well as the chromeos-chrome ebuild.
   'src/third_party/chromite': {
-      'url': Var('chromium_git') + '/chromiumos/chromite.git' + '@' + '8d0f67b603baecf2da3e1ad830062e356430f5ab',
+      'url': Var('chromium_git') + '/chromiumos/chromite.git' + '@' + '8a31c4e2f3416b669a31b6e6b8be77bf4ec12532',
       'condition': 'checkout_chromeos',
   },
 
@@ -1460,13 +1460,13 @@
   },
 
   'src/third_party/depot_tools':
-    Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '9a8c80ca55f2bd2023c801dfd97651617e618867',
+    Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + 'f97b5e242423158b83bcd9ca518dbd3b13cd85d3',
 
   'src/third_party/devtools-frontend/src':
     Var('chromium_git') + '/devtools/devtools-frontend' + '@' + Var('devtools_frontend_revision'),
 
   'src/third_party/devtools-frontend-internal': {
-      'url': Var('chrome_git') + '/devtools/devtools-internal.git' + '@' + '291ff6f046be407b5bd3e20f6ae6aa4eeac27398',
+      'url': Var('chrome_git') + '/devtools/devtools-internal.git' + '@' + '7ff0acfea354b4043618f5d0b24c23b0f8fb829c',
     'condition': 'checkout_src_internal',
   },
 
@@ -1956,7 +1956,7 @@
     Var('pdfium_git') + '/pdfium.git' + '@' +  Var('pdfium_revision'),
 
   'src/third_party/perfetto':
-    Var('android_git') + '/platform/external/perfetto.git' + '@' + 'e12318bd5a080502f7f18dbd12c0ac5b4cb5478d',
+    Var('android_git') + '/platform/external/perfetto.git' + '@' + 'a056c122b9a4c09797d3f09fdf4671657ff98240',
 
   'src/third_party/perl': {
       'url': Var('chromium_git') + '/chromium/deps/perl.git' + '@' + '8ef97ff3b7332e38e61b347a2fbed425a4617151',
@@ -2173,7 +2173,7 @@
     Var('chromium_git') + '/external/github.com/gpuweb/cts.git' + '@' + '007e1015875a0a91794edbc14feb3ad5fe60f90b',
 
   'src/third_party/webrtc':
-    Var('webrtc_git') + '/src.git' + '@' + '5ef183eee8cf92f06f0f1f220bd4c39f8e6e34b2',
+    Var('webrtc_git') + '/src.git' + '@' + '7518ae9ac92f7020daa38de3fb87de9a5e875872',
 
   # Wuffs' canonical repository is at github.com/google/wuffs, but we use
   # Skia's mirror of Wuffs, the same as in upstream Skia's DEPS file.
@@ -2296,7 +2296,7 @@
     'packages': [
       {
         'package': 'chromeos_internal/apps/help_app/app',
-        'version': 'IrldqhI9fm0-uieXg7Zh2UJPJEIVkJsDlmbDOgDIibIC',
+        'version': 'V5jumaAco3maN-XXLTOAqQRh-AXuMk_4zuIyy2WS6iYC',
       },
     ],
     'condition': 'checkout_chromeos and checkout_src_internal',
@@ -2307,7 +2307,7 @@
     'packages': [
       {
         'package': 'chromeos_internal/apps/media_app/app',
-        'version': 'ugSq-EY57Bf7CmYZg1N033tZoq1YSPg3bnl6W1XFgsgC',
+        'version': 'MvihSpYX_XYya7NfRRfmnTnJ6B-RJ5KSjrdHPUR__8cC',
       },
     ],
     'condition': 'checkout_chromeos and checkout_src_internal',
@@ -4166,13 +4166,13 @@
 
   'src/chrome/app/theme/default_100_percent/google_chrome': {
       'url': Var('chrome_git') + '/chrome/theme/default_100_percent/google_chrome.git' + '@' +
-        'e31fd741c41c140585441c8121119bfa64b0d8a6',
+        '0fbd11198295f3dfb0b5eca1ecdd552350447971',
       'condition': 'checkout_src_internal',
   },
 
   'src/chrome/app/theme/default_200_percent/google_chrome': {
       'url': Var('chrome_git') + '/chrome/theme/default_200_percent/google_chrome.git' + '@' +
-        'cf09779445a996a4a6771dd96962c8db66687ec9',
+        '467ceaa55947ede56a7d4b99c8a6748c3b0fd611',
       'condition': 'checkout_src_internal',
   },
 
@@ -4410,7 +4410,7 @@
 
   'src/ios_internal':  {
       'url': Var('chrome_git') + '/chrome/ios_internal.git' + '@' +
-        '446152abe1f5e9c4257723613550ac630d2484fa',
+        '777169d126a0d105da7e96ff3f5afcb2cb9482fb',
       'condition': 'checkout_ios and checkout_src_internal',
   },
 
diff --git a/android_webview/browser/cookie_manager.cc b/android_webview/browser/cookie_manager.cc
index 08ad8d70..a31adce 100644
--- a/android_webview/browser/cookie_manager.cc
+++ b/android_webview/browser/cookie_manager.cc
@@ -498,8 +498,7 @@
 
   std::unique_ptr<net::CanonicalCookie> cc(net::CanonicalCookie::Create(
       new_host, value, base::Time::Now(), std::nullopt /* server_time */,
-      cookie_partition_key,
-      /*block_truncated=*/true, net::CookieSourceType::kOther,
+      cookie_partition_key, net::CookieSourceType::kOther,
       /*status=*/nullptr));
 
   if (!cc || !should_allow_cookie) {
diff --git a/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java b/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java
index d4fd4c2..8d8b7b9 100644
--- a/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java
+++ b/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java
@@ -662,10 +662,6 @@
         Flag.baseFeature(
                 NetFeatures.ASYNC_QUIC_SESSION, "Enables asynchronous QUIC session creation"),
         Flag.baseFeature(
-                NetFeatures.BLOCK_TRUNCATED_COOKIES,
-                "When enabled, cookies containing '\\0', '\\r', and '\\n' characters will be "
-                        + "deemed invalid and the cookie won't be set."),
-        Flag.baseFeature(
                 NetFeatures.SPDY_HEADERS_TO_HTTP_RESPONSE_USE_BUILDER,
                 "Enables new optimized implementation of SpdyHeadersToHttpResponse. No behavior"
                         + " change."),
diff --git a/ash/child_accounts/parent_access_controller_impl_unittest.cc b/ash/child_accounts/parent_access_controller_impl_unittest.cc
index ff3854b..3651977 100644
--- a/ash/child_accounts/parent_access_controller_impl_unittest.cc
+++ b/ash/child_accounts/parent_access_controller_impl_unittest.cc
@@ -52,12 +52,11 @@
   }
 
   void TearDown() override {
-    LoginTestBase::TearDown();
-
     // If the test did not explicitly dismissed the widget, destroy it now.
     PinRequestWidget* pin_request_widget = PinRequestWidget::Get();
     if (pin_request_widget)
       pin_request_widget->Close(false /* validation success */);
+    LoginTestBase::TearDown();
   }
 
   // Simulates mouse press event on a |button|.
diff --git a/ash/components/arc/BUILD.gn b/ash/components/arc/BUILD.gn
index 5efc1669..b5440a319 100644
--- a/ash/components/arc/BUILD.gn
+++ b/ash/components/arc/BUILD.gn
@@ -51,8 +51,8 @@
     "compat_mode/touch_mode_mouse_rewriter.h",
     "crash_collector/arc_crash_collector_bridge.cc",
     "crash_collector/arc_crash_collector_bridge.h",
-    "disk_quota/arc_disk_quota_bridge.cc",
-    "disk_quota/arc_disk_quota_bridge.h",
+    "disk_space/arc_disk_space_bridge.cc",
+    "disk_space/arc_disk_space_bridge.h",
     "ime/arc_ime_bridge.h",
     "ime/arc_ime_bridge_impl.cc",
     "ime/arc_ime_bridge_impl.h",
@@ -430,7 +430,7 @@
     "compat_mode/resize_util_unittest.cc",
     "compat_mode/touch_mode_mouse_rewriter_unittest.cc",
     "crash_collector/arc_crash_collector_bridge_unittest.cc",
-    "disk_quota/arc_disk_quota_bridge_unittest.cc",
+    "disk_space/arc_disk_space_bridge_unittest.cc",
     "ime/arc_ime_service_unittest.cc",
     "ime/key_event_result_receiver_unittest.cc",
     "media_session/arc_media_session_bridge_unittest.cc",
diff --git a/ash/components/arc/disk_quota/DEPS b/ash/components/arc/disk_quota/DEPS
deleted file mode 100644
index c105b45..0000000
--- a/ash/components/arc/disk_quota/DEPS
+++ /dev/null
@@ -1,4 +0,0 @@
-include_rules = [
-  # For dbus/cryptohome/dbus-constants.h
-  "+third_party/cros_system_api/dbus",
-]
diff --git a/ash/components/arc/disk_quota/OWNERS b/ash/components/arc/disk_space/OWNERS
similarity index 100%
rename from ash/components/arc/disk_quota/OWNERS
rename to ash/components/arc/disk_space/OWNERS
diff --git a/ash/components/arc/disk_quota/arc_disk_quota_bridge.cc b/ash/components/arc/disk_space/arc_disk_space_bridge.cc
similarity index 74%
rename from ash/components/arc/disk_quota/arc_disk_quota_bridge.cc
rename to ash/components/arc/disk_space/arc_disk_space_bridge.cc
index a8036ef..c820f5c 100644
--- a/ash/components/arc/disk_quota/arc_disk_quota_bridge.cc
+++ b/ash/components/arc/disk_space/arc_disk_space_bridge.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "ash/components/arc/disk_quota/arc_disk_quota_bridge.h"
+#include "ash/components/arc/disk_space/arc_disk_space_bridge.h"
 
 #include <utility>
 
@@ -21,23 +21,23 @@
 // Path to query disk space and disk quota for ARC.
 constexpr char kArcDiskHome[] = "/home/chronos/user";
 
-// Singleton factory for ArcDiskQuotaBridge.
-class ArcDiskQuotaBridgeFactory
+// Singleton factory for ArcDiskSpaceBridge.
+class ArcDiskSpaceBridgeFactory
     : public internal::ArcBrowserContextKeyedServiceFactoryBase<
-          ArcDiskQuotaBridge,
-          ArcDiskQuotaBridgeFactory> {
+          ArcDiskSpaceBridge,
+          ArcDiskSpaceBridgeFactory> {
  public:
   // Factory name used by ArcBrowserContextKeyedServiceFactoryBase.
-  static constexpr const char* kName = "ArcDiskQuotaBridgeFactory";
+  static constexpr const char* kName = "ArcDiskSpaceBridgeFactory";
 
-  static ArcDiskQuotaBridgeFactory* GetInstance() {
-    return base::Singleton<ArcDiskQuotaBridgeFactory>::get();
+  static ArcDiskSpaceBridgeFactory* GetInstance() {
+    return base::Singleton<ArcDiskSpaceBridgeFactory>::get();
   }
 
  private:
-  friend base::DefaultSingletonTraits<ArcDiskQuotaBridgeFactory>;
-  ArcDiskQuotaBridgeFactory() = default;
-  ~ArcDiskQuotaBridgeFactory() override = default;
+  friend base::DefaultSingletonTraits<ArcDiskSpaceBridgeFactory>;
+  ArcDiskSpaceBridgeFactory() = default;
+  ~ArcDiskSpaceBridgeFactory() override = default;
 };
 
 bool IsAndroidUid(uint32_t uid) {
@@ -63,11 +63,11 @@
 }
 
 void IsQuotaSupportedOnArcDiskHome(
-    ArcDiskQuotaBridge::IsQuotaSupportedCallback callback) {
+    ArcDiskSpaceBridge::IsQuotaSupportedCallback callback) {
   ash::SpacedClient::Get()->IsQuotaSupported(
       kArcDiskHome,
       base::BindOnce(
-          [](ArcDiskQuotaBridge::IsQuotaSupportedCallback callback,
+          [](ArcDiskSpaceBridge::IsQuotaSupportedCallback callback,
              std::optional<bool> reply) {
             LOG_IF(ERROR, !reply.has_value())
                 << "Failed to retrieve result from IsQuotaSupported";
@@ -79,32 +79,28 @@
 }  // namespace
 
 // static
-ArcDiskQuotaBridge* ArcDiskQuotaBridge::GetForBrowserContext(
+ArcDiskSpaceBridge* ArcDiskSpaceBridge::GetForBrowserContext(
     content::BrowserContext* context) {
-  return ArcDiskQuotaBridgeFactory::GetForBrowserContext(context);
+  return ArcDiskSpaceBridgeFactory::GetForBrowserContext(context);
 }
 
 // static
-ArcDiskQuotaBridge* ArcDiskQuotaBridge::GetForBrowserContextForTesting(
+ArcDiskSpaceBridge* ArcDiskSpaceBridge::GetForBrowserContextForTesting(
     content::BrowserContext* context) {
-  return ArcDiskQuotaBridgeFactory::GetForBrowserContextForTesting(context);
+  return ArcDiskSpaceBridgeFactory::GetForBrowserContextForTesting(context);
 }
 
-ArcDiskQuotaBridge::ArcDiskQuotaBridge(content::BrowserContext* context,
+ArcDiskSpaceBridge::ArcDiskSpaceBridge(content::BrowserContext* context,
                                        ArcBridgeService* bridge_service)
     : arc_bridge_service_(bridge_service) {
-  arc_bridge_service_->disk_quota()->SetHost(this);
+  arc_bridge_service_->disk_space()->SetHost(this);
 }
 
-ArcDiskQuotaBridge::~ArcDiskQuotaBridge() {
-  arc_bridge_service_->disk_quota()->SetHost(nullptr);
+ArcDiskSpaceBridge::~ArcDiskSpaceBridge() {
+  arc_bridge_service_->disk_space()->SetHost(nullptr);
 }
 
-void ArcDiskQuotaBridge::SetAccountId(const AccountId& account_id) {
-  account_id_ = account_id;
-}
-
-void ArcDiskQuotaBridge::IsQuotaSupported(IsQuotaSupportedCallback callback) {
+void ArcDiskSpaceBridge::IsQuotaSupported(IsQuotaSupportedCallback callback) {
   // Whether ARC quota is supported is an AND of the following two booleans:
   // * Whether there are no unmounted Android users (from cryptohome)
   // * Whether |kArcDiskHome| is mounted with quota enabled (from spaced)
@@ -125,9 +121,9 @@
           std::move(callback)));
 }
 
-void ArcDiskQuotaBridge::GetCurrentSpaceForUid(
+void ArcDiskSpaceBridge::GetQuotaCurrentSpaceForUid(
     uint32_t android_uid,
-    GetCurrentSpaceForUidCallback callback) {
+    GetQuotaCurrentSpaceForUidCallback callback) {
   if (!IsAndroidUid(android_uid)) {
     LOG(ERROR) << "Android uid " << android_uid
                << " is outside the allowed query range";
@@ -139,7 +135,7 @@
   ash::SpacedClient::Get()->GetQuotaCurrentSpaceForUid(
       kArcDiskHome, cros_uid,
       base::BindOnce(
-          [](GetCurrentSpaceForUidCallback callback, int cros_uid,
+          [](GetQuotaCurrentSpaceForUidCallback callback, int cros_uid,
              std::optional<int64_t> reply) {
             LOG_IF(ERROR, !reply.has_value())
                 << "Failed to retrieve result from GetQuotaCurrentSpaceForUid "
@@ -149,9 +145,9 @@
           std::move(callback), cros_uid));
 }
 
-void ArcDiskQuotaBridge::GetCurrentSpaceForGid(
+void ArcDiskSpaceBridge::GetQuotaCurrentSpaceForGid(
     uint32_t android_gid,
-    GetCurrentSpaceForGidCallback callback) {
+    GetQuotaCurrentSpaceForGidCallback callback) {
   if (!IsAndroidGid(android_gid)) {
     LOG(ERROR) << "Android gid " << android_gid
                << " is outside the allowed query range";
@@ -163,7 +159,7 @@
   ash::SpacedClient::Get()->GetQuotaCurrentSpaceForGid(
       kArcDiskHome, cros_gid,
       base::BindOnce(
-          [](GetCurrentSpaceForGidCallback callback, int cros_gid,
+          [](GetQuotaCurrentSpaceForGidCallback callback, int cros_gid,
              std::optional<int64_t> reply) {
             LOG_IF(ERROR, !reply.has_value())
                 << "Failed to retrieve result from GetQuotaCurrentSpaceForGid "
@@ -173,9 +169,9 @@
           std::move(callback), cros_gid));
 }
 
-void ArcDiskQuotaBridge::GetCurrentSpaceForProjectId(
+void ArcDiskSpaceBridge::GetQuotaCurrentSpaceForProjectId(
     uint32_t project_id,
-    GetCurrentSpaceForProjectIdCallback callback) {
+    GetQuotaCurrentSpaceForProjectIdCallback callback) {
   if (!IsAndroidProjectId(project_id)) {
     LOG(ERROR) << "Android project id " << project_id
                << " is outside the allowed query range";
@@ -185,7 +181,7 @@
   ash::SpacedClient::Get()->GetQuotaCurrentSpaceForProjectId(
       kArcDiskHome, project_id,
       base::BindOnce(
-          [](GetCurrentSpaceForProjectIdCallback callback, int project_id,
+          [](GetQuotaCurrentSpaceForProjectIdCallback callback, int project_id,
              std::optional<int64_t> reply) {
             LOG_IF(ERROR, !reply.has_value())
                 << "Failed to retrieve result from "
@@ -196,14 +192,14 @@
           std::move(callback), project_id));
 }
 
-void ArcDiskQuotaBridge::GetFreeDiskSpace(GetFreeDiskSpaceCallback callback) {
+void ArcDiskSpaceBridge::GetFreeDiskSpace(GetFreeDiskSpaceCallback callback) {
   ash::SpacedClient::Get()->GetFreeDiskSpace(
       kArcDiskHome,
-      base::BindOnce(&ArcDiskQuotaBridge::OnGetFreeDiskSpace,
+      base::BindOnce(&ArcDiskSpaceBridge::OnGetFreeDiskSpace,
                      weak_factory_.GetWeakPtr(), std::move(callback)));
 }
 
-void ArcDiskQuotaBridge::OnGetFreeDiskSpace(GetFreeDiskSpaceCallback callback,
+void ArcDiskSpaceBridge::OnGetFreeDiskSpace(GetFreeDiskSpaceCallback callback,
                                             std::optional<int64_t> reply) {
   if (!reply.has_value()) {
     LOG(ERROR) << "spaced::GetFreeDiskSpace failed";
@@ -217,8 +213,8 @@
 }
 
 // static
-void ArcDiskQuotaBridge::EnsureFactoryBuilt() {
-  ArcDiskQuotaBridgeFactory::GetInstance();
+void ArcDiskSpaceBridge::EnsureFactoryBuilt() {
+  ArcDiskSpaceBridgeFactory::GetInstance();
 }
 
 }  // namespace arc
diff --git a/ash/components/arc/disk_quota/arc_disk_quota_bridge.h b/ash/components/arc/disk_space/arc_disk_space_bridge.h
similarity index 65%
rename from ash/components/arc/disk_quota/arc_disk_quota_bridge.h
rename to ash/components/arc/disk_space/arc_disk_space_bridge.h
index c9cf3b2..fa6ac5f 100644
--- a/ash/components/arc/disk_quota/arc_disk_quota_bridge.h
+++ b/ash/components/arc/disk_space/arc_disk_space_bridge.h
@@ -2,18 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef ASH_COMPONENTS_ARC_DISK_QUOTA_ARC_DISK_QUOTA_BRIDGE_H_
-#define ASH_COMPONENTS_ARC_DISK_QUOTA_ARC_DISK_QUOTA_BRIDGE_H_
+#ifndef ASH_COMPONENTS_ARC_DISK_SPACE_ARC_DISK_SPACE_BRIDGE_H_
+#define ASH_COMPONENTS_ARC_DISK_SPACE_ARC_DISK_SPACE_BRIDGE_H_
 
 #include <optional>
 
-#include "ash/components/arc/mojom/disk_quota.mojom.h"
+#include "ash/components/arc/mojom/disk_space.mojom.h"
 #include "base/memory/raw_ptr.h"
 #include "base/memory/weak_ptr.h"
-#include "chromeos/ash/components/dbus/cryptohome/UserDataAuth.pb.h"
-#include "components/account_id/account_id.h"
 #include "components/keyed_service/core/keyed_service.h"
-#include "third_party/cros_system_api/dbus/cryptohome/dbus-constants.h"
 
 namespace content {
 class BrowserContext;
@@ -34,10 +31,10 @@
 // The smallest UID in Android that is tracked by installd. This is set to be
 // the minimum possible uid that Android process can have.
 constexpr uid_t kAndroidUidStart = 0;
-// The largest Android UID for which GetCurrentSpaceForUid() could be called by
-// installd, based on the numbers in android_filesystem_config.h. The limit
-// differs before and after T; it has been AID_APP_END before T, but from T it's
-// AID_SDK_SANDBOX_PROCESS_END.
+// The largest Android UID for which GetQuotaCurrentSpaceForUid() could be
+// called by installd, based on the numbers in android_filesystem_config.h. The
+// limit differs before and after T; it has been AID_APP_END before T, but from
+// T it's AID_SDK_SANDBOX_PROCESS_END.
 constexpr uid_t kAndroidUidEndBeforeT = 19999;
 constexpr uid_t kAndroidUidEndAfterT = 29999;
 
@@ -70,38 +67,38 @@
 
 class ArcBridgeService;
 
-// This class proxies quota requests from Android to cryptohome.
-class ArcDiskQuotaBridge : public KeyedService, public mojom::DiskQuotaHost {
+// This class proxies disk space related requests between CrOS and Android.
+class ArcDiskSpaceBridge : public KeyedService, public mojom::DiskSpaceHost {
  public:
   // Returns singleton instance for the given BrowserContext,
   // or nullptr if the browser |context| is not allowed to use ARC.
-  static ArcDiskQuotaBridge* GetForBrowserContext(
+  static ArcDiskSpaceBridge* GetForBrowserContext(
       content::BrowserContext* context);
-  static ArcDiskQuotaBridge* GetForBrowserContextForTesting(
+  static ArcDiskSpaceBridge* GetForBrowserContextForTesting(
       content::BrowserContext* context);
 
-  ArcDiskQuotaBridge(content::BrowserContext* context,
+  ArcDiskSpaceBridge(content::BrowserContext* context,
                      ArcBridgeService* bridge_service);
 
-  ArcDiskQuotaBridge(const ArcDiskQuotaBridge&) = delete;
-  ArcDiskQuotaBridge& operator=(const ArcDiskQuotaBridge&) = delete;
+  ArcDiskSpaceBridge(const ArcDiskSpaceBridge&) = delete;
+  ArcDiskSpaceBridge& operator=(const ArcDiskSpaceBridge&) = delete;
 
-  ~ArcDiskQuotaBridge() override;
+  ~ArcDiskSpaceBridge() override;
 
-  void SetAccountId(const AccountId& account_id);
-
-  // mojom::DiskQuotaHost overrides:
+  // mojom::DiskSpaceHost overrides:
   void IsQuotaSupported(IsQuotaSupportedCallback callback) override;
 
-  void GetCurrentSpaceForUid(uint32_t uid,
-                             GetCurrentSpaceForUidCallback callback) override;
+  void GetQuotaCurrentSpaceForUid(
+      uint32_t uid,
+      GetQuotaCurrentSpaceForUidCallback callback) override;
 
-  void GetCurrentSpaceForGid(uint32_t gid,
-                             GetCurrentSpaceForGidCallback callback) override;
+  void GetQuotaCurrentSpaceForGid(
+      uint32_t gid,
+      GetQuotaCurrentSpaceForGidCallback callback) override;
 
-  void GetCurrentSpaceForProjectId(
+  void GetQuotaCurrentSpaceForProjectId(
       uint32_t project_id,
-      GetCurrentSpaceForProjectIdCallback callback) override;
+      GetQuotaCurrentSpaceForProjectIdCallback callback) override;
 
   void GetFreeDiskSpace(GetFreeDiskSpaceCallback) override;
 
@@ -114,12 +111,10 @@
   const raw_ptr<ArcBridgeService>
       arc_bridge_service_;  // Owned by ArcServiceManager.
 
-  AccountId account_id_;
-
   // WeakPtrFactory to use for callbacks.
-  base::WeakPtrFactory<ArcDiskQuotaBridge> weak_factory_{this};
+  base::WeakPtrFactory<ArcDiskSpaceBridge> weak_factory_{this};
 };
 
 }  // namespace arc
 
-#endif  // ASH_COMPONENTS_ARC_DISK_QUOTA_ARC_DISK_QUOTA_BRIDGE_H_
+#endif  // ASH_COMPONENTS_ARC_DISK_SPACE_ARC_DISK_SPACE_BRIDGE_H_
diff --git a/ash/components/arc/disk_quota/arc_disk_quota_bridge_unittest.cc b/ash/components/arc/disk_space/arc_disk_space_bridge_unittest.cc
similarity index 77%
rename from ash/components/arc/disk_quota/arc_disk_quota_bridge_unittest.cc
rename to ash/components/arc/disk_space/arc_disk_space_bridge_unittest.cc
index 67d1509f..54c8f53f 100644
--- a/ash/components/arc/disk_quota/arc_disk_quota_bridge_unittest.cc
+++ b/ash/components/arc/disk_space/arc_disk_space_bridge_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "ash/components/arc/disk_quota/arc_disk_quota_bridge.h"
+#include "ash/components/arc/disk_space/arc_disk_space_bridge.h"
 
 #include "ash/components/arc/arc_util.h"
 #include "ash/components/arc/session/arc_service_manager.h"
@@ -27,16 +27,16 @@
       base::Time::Now());
 }
 
-class ArcDiskQuotaBridgeTest : public testing::Test {
+class ArcDiskSpaceBridgeTest : public testing::Test {
  protected:
-  ArcDiskQuotaBridgeTest()
-      : bridge_(ArcDiskQuotaBridge::GetForBrowserContextForTesting(&context_)) {
+  ArcDiskSpaceBridgeTest()
+      : bridge_(ArcDiskSpaceBridge::GetForBrowserContextForTesting(&context_)) {
   }
-  ArcDiskQuotaBridgeTest(const ArcDiskQuotaBridgeTest&) = delete;
-  ArcDiskQuotaBridgeTest& operator=(const ArcDiskQuotaBridgeTest&) = delete;
-  ~ArcDiskQuotaBridgeTest() override = default;
+  ArcDiskSpaceBridgeTest(const ArcDiskSpaceBridgeTest&) = delete;
+  ArcDiskSpaceBridgeTest& operator=(const ArcDiskSpaceBridgeTest&) = delete;
+  ~ArcDiskSpaceBridgeTest() override = default;
 
-  ArcDiskQuotaBridge* bridge() { return bridge_; }
+  ArcDiskSpaceBridge* bridge() { return bridge_; }
 
   void SetUp() override {
     ash::SpacedClient::InitializeFake();
@@ -52,10 +52,10 @@
   content::BrowserTaskEnvironment task_environment_;
   ArcServiceManager arc_service_manager_;
   user_prefs::TestBrowserContextWithPrefs context_;
-  const raw_ptr<ArcDiskQuotaBridge> bridge_;
+  const raw_ptr<ArcDiskSpaceBridge> bridge_;
 };
 
-TEST_F(ArcDiskQuotaBridgeTest, IsQuotaSupported_Supported) {
+TEST_F(ArcDiskSpaceBridgeTest, IsQuotaSupported_Supported) {
   ash::FakeSpacedClient::Get()->set_quota_supported(true);
   ash::FakeUserDataAuthClient::TestApi::Get()->set_arc_quota_supported(true);
 
@@ -64,7 +64,7 @@
   EXPECT_TRUE(future.Get());
 }
 
-TEST_F(ArcDiskQuotaBridgeTest, IsQuotaSupported_NotSupportedInSpaced) {
+TEST_F(ArcDiskSpaceBridgeTest, IsQuotaSupported_NotSupportedInSpaced) {
   ash::FakeSpacedClient::Get()->set_quota_supported(false);
   ash::FakeUserDataAuthClient::TestApi::Get()->set_arc_quota_supported(true);
 
@@ -73,7 +73,7 @@
   EXPECT_FALSE(future.Get());
 }
 
-TEST_F(ArcDiskQuotaBridgeTest, IsQuotaSupported_NotSupportedInCryptohome) {
+TEST_F(ArcDiskSpaceBridgeTest, IsQuotaSupported_NotSupportedInCryptohome) {
   ash::FakeSpacedClient::Get()->set_quota_supported(true);
   ash::FakeUserDataAuthClient::TestApi::Get()->set_arc_quota_supported(false);
 
@@ -82,7 +82,7 @@
   EXPECT_FALSE(future.Get());
 }
 
-TEST_F(ArcDiskQuotaBridgeTest, GetQuotaCurrentSpaceForGid_Success) {
+TEST_F(ArcDiskSpaceBridgeTest, GetQuotaCurrentSpaceForGid_Success) {
   const std::vector<std::pair<uint32_t, int64_t>>
       valid_android_gid_and_expected_space = {
           {kAndroidGidStart, 100},
@@ -96,24 +96,25 @@
 
   for (const auto& [gid, space] : valid_android_gid_and_expected_space) {
     base::test::TestFuture<int64_t> future;
-    bridge()->GetCurrentSpaceForGid(gid, future.GetCallback());
+    bridge()->GetQuotaCurrentSpaceForGid(gid, future.GetCallback());
     EXPECT_EQ(future.Get(), space);
   }
 }
 
-TEST_F(ArcDiskQuotaBridgeTest, GetQuotaCurrentSpaceForGid_InvalidId) {
+TEST_F(ArcDiskSpaceBridgeTest, GetQuotaCurrentSpaceForGid_InvalidId) {
   constexpr uint32_t kInvalidAndroidGid = kAndroidGidEnd + 1;
 
   base::test::TestFuture<int64_t> future;
-  bridge()->GetCurrentSpaceForGid(kInvalidAndroidGid, future.GetCallback());
+  bridge()->GetQuotaCurrentSpaceForGid(kInvalidAndroidGid,
+                                       future.GetCallback());
   EXPECT_EQ(future.Get(), -1);
 }
 
-class ArcDiskQuotaBridgeWithArcVersionTest
-    : public ArcDiskQuotaBridgeTest,
+class ArcDiskSpaceBridgeWithArcVersionTest
+    : public ArcDiskSpaceBridgeTest,
       public ::testing::WithParamInterface<int> {};
 
-TEST_P(ArcDiskQuotaBridgeWithArcVersionTest,
+TEST_P(ArcDiskSpaceBridgeWithArcVersionTest,
        GetQuotaCurrentSpaceForUid_Success) {
   const int arc_sdk_version = GetParam();
   const auto scoped_version_info =
@@ -135,12 +136,12 @@
 
   for (const auto& [uid, space] : valid_android_uid_and_expected_space) {
     base::test::TestFuture<int64_t> future;
-    bridge()->GetCurrentSpaceForUid(uid, future.GetCallback());
+    bridge()->GetQuotaCurrentSpaceForUid(uid, future.GetCallback());
     EXPECT_EQ(future.Get(), space);
   }
 }
 
-TEST_P(ArcDiskQuotaBridgeWithArcVersionTest,
+TEST_P(ArcDiskSpaceBridgeWithArcVersionTest,
        GetQuotaCurrentSpaceForUid_InvalidId) {
   const int arc_sdk_version = GetParam();
   const auto scoped_version_info =
@@ -152,11 +153,12 @@
   const uint32_t kInvalidAndroidUid = kAndroidUidEnd + 1;
 
   base::test::TestFuture<int64_t> future;
-  bridge()->GetCurrentSpaceForUid(kInvalidAndroidUid, future.GetCallback());
+  bridge()->GetQuotaCurrentSpaceForUid(kInvalidAndroidUid,
+                                       future.GetCallback());
   EXPECT_EQ(future.Get(), -1);
 }
 
-TEST_P(ArcDiskQuotaBridgeWithArcVersionTest,
+TEST_P(ArcDiskSpaceBridgeWithArcVersionTest,
        GetQuotaCurrentSpaceForProjectId_Success) {
   const int arc_sdk_version = GetParam();
   const auto scoped_version_info =
@@ -185,12 +187,13 @@
   for (const auto& [project_id, space] :
        valid_android_project_id_and_expected_space) {
     base::test::TestFuture<int64_t> future;
-    bridge()->GetCurrentSpaceForProjectId(project_id, future.GetCallback());
+    bridge()->GetQuotaCurrentSpaceForProjectId(project_id,
+                                               future.GetCallback());
     EXPECT_EQ(future.Get(), space);
   }
 }
 
-TEST_P(ArcDiskQuotaBridgeWithArcVersionTest,
+TEST_P(ArcDiskSpaceBridgeWithArcVersionTest,
        GetQuotaCurrentSpaceForProjectId_Invalid) {
   const int arc_sdk_version = GetParam();
   const auto scoped_version_info =
@@ -208,17 +211,18 @@
 
   for (const auto project_id : invalid_android_project_id) {
     base::test::TestFuture<int64_t> future;
-    bridge()->GetCurrentSpaceForProjectId(project_id, future.GetCallback());
+    bridge()->GetQuotaCurrentSpaceForProjectId(project_id,
+                                               future.GetCallback());
     EXPECT_EQ(future.Get(), -1);
   }
 }
 
-INSTANTIATE_TEST_SUITE_P(ArcDiskQuotaBridgeTestForR,
-                         ArcDiskQuotaBridgeWithArcVersionTest,
+INSTANTIATE_TEST_SUITE_P(ArcDiskSpaceBridgeTestForR,
+                         ArcDiskSpaceBridgeWithArcVersionTest,
                          testing::Values(kArcVersionR));
 
-INSTANTIATE_TEST_SUITE_P(ArcDiskQuotaBridgeTestForT,
-                         ArcDiskQuotaBridgeWithArcVersionTest,
+INSTANTIATE_TEST_SUITE_P(ArcDiskSpaceBridgeTestForT,
+                         ArcDiskSpaceBridgeWithArcVersionTest,
                          testing::Values(kArcVersionT));
 
 }  // namespace
diff --git a/ash/components/arc/mojom/BUILD.gn b/ash/components/arc/mojom/BUILD.gn
index ad30d73..49cbf52 100644
--- a/ash/components/arc/mojom/BUILD.gn
+++ b/ash/components/arc/mojom/BUILD.gn
@@ -27,7 +27,7 @@
     "compatibility_mode.mojom",
     "crash_collector.mojom",
     "digital_goods.mojom",
-    "disk_quota.mojom",
+    "disk_space.mojom",
     "enterprise_reporting.mojom",
     "file_system.mojom",
     "iio_sensor.mojom",
diff --git a/ash/components/arc/mojom/arc_bridge.mojom b/ash/components/arc/mojom/arc_bridge.mojom
index 0f213305..f54ebd3 100644
--- a/ash/components/arc/mojom/arc_bridge.mojom
+++ b/ash/components/arc/mojom/arc_bridge.mojom
@@ -21,7 +21,7 @@
 import "ash/components/arc/mojom/compatibility_mode.mojom";
 import "ash/components/arc/mojom/crash_collector.mojom";
 import "ash/components/arc/mojom/digital_goods.mojom";
-import "ash/components/arc/mojom/disk_quota.mojom";
+import "ash/components/arc/mojom/disk_space.mojom";
 import "ash/components/arc/mojom/enterprise_reporting.mojom";
 import "ash/components/arc/mojom/file_system.mojom";
 import "ash/components/arc/mojom/iio_sensor.mojom";
@@ -140,9 +140,9 @@
   [MinVersion=51] OnDigitalGoodsInstanceReady@156(
       pending_remote<DigitalGoodsInstance> instance_remote);
 
-  // Notifies Chrome that the DiskQuotaInstance interface is ready.
-  [MinVersion=39] OnDiskQuotaInstanceReady@144(
-      pending_remote<DiskQuotaInstance> instance_remote);
+  // Notifies Chrome that the DiskSpaceInstance interface is ready.
+  [MinVersion=39] OnDiskSpaceInstanceReady@144(
+      pending_remote<DiskSpaceInstance> instance_remote);
 
   // Notifies Chrome that the EnterpriseReportingInstance interface is ready.
   [MinVersion=15] OnEnterpriseReportingInstanceReady@122(
diff --git a/ash/components/arc/mojom/disk_quota.mojom b/ash/components/arc/mojom/disk_quota.mojom
deleted file mode 100644
index da22da1c..0000000
--- a/ash/components/arc/mojom/disk_quota.mojom
+++ /dev/null
@@ -1,37 +0,0 @@
-// Copyright 2018 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-//
-// Next MinVersion: 3
-
-module arc.mojom;
-
-struct DiskSpace {
-  uint64 space_in_bytes;
-};
-
-// Next Method ID: 6
-// Deprecated method ID: 4
-interface DiskQuotaHost {
-  // Whether cryptohome supports quota-based stats.
-  IsQuotaSupported@0() => (bool supported);
-
-  // Get the current disk space usage for a uid. Returns -1 for failure.
-  GetCurrentSpaceForUid@1(uint32 uid) => (int64 cur_space);
-
-  // Get the current disk space usage for a gid. Returns -1 for failure.
-  GetCurrentSpaceForGid@2(uint32 gid) => (int64 cur_space);
-
-  // Get the current disk space usage for a project ID. Returns -1 for failure.
-  [MinVersion=1] GetCurrentSpaceForProjectId@3(uint32 project_id) =>
-      (int64 cur_space);
-
-  // Get free disk space in the stateful partition.
-  [MinVersion=2] GetFreeDiskSpace@5() => (DiskSpace? free_space);
-};
-
-// Next Method ID: 1
-interface DiskQuotaInstance {
-  // Establishes full-duplex communication with the host.
-  Init@0(pending_remote<DiskQuotaHost> host_remote) => ();
-};
diff --git a/ash/components/arc/mojom/disk_space.mojom b/ash/components/arc/mojom/disk_space.mojom
new file mode 100644
index 0000000..fac2157
--- /dev/null
+++ b/ash/components/arc/mojom/disk_space.mojom
@@ -0,0 +1,40 @@
+// Copyright 2018 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+//
+// Next MinVersion: 3
+
+module arc.mojom;
+
+struct DiskSpace {
+  uint64 space_in_bytes;
+};
+
+// Next Method ID: 6
+// Deprecated method ID: 4
+interface DiskSpaceHost {
+  // Whether cryptohome supports quota-based stats.
+  IsQuotaSupported@0() => (bool supported);
+
+  // Get the current quota-based disk space usage for a uid. Returns -1 for
+  // failure.
+  GetQuotaCurrentSpaceForUid@1(uint32 uid) => (int64 cur_space);
+
+  // Get the current quota-based disk space usage for a gid. Returns -1 for
+  // failure.
+  GetQuotaCurrentSpaceForGid@2(uint32 gid) => (int64 cur_space);
+
+  // Get the current quota-based disk space usage for a project ID. Returns -1
+  // for failure.
+  [MinVersion=1] GetQuotaCurrentSpaceForProjectId@3(uint32 project_id) =>
+      (int64 cur_space);
+
+  // Get free disk space in the stateful partition.
+  [MinVersion=2] GetFreeDiskSpace@5() => (DiskSpace? free_space);
+};
+
+// Next Method ID: 1
+interface DiskSpaceInstance {
+  // Establishes full-duplex communication with the host.
+  Init@0(pending_remote<DiskSpaceHost> host_remote) => ();
+};
diff --git a/ash/components/arc/session/arc_bridge_host_impl.cc b/ash/components/arc/session/arc_bridge_host_impl.cc
index 139f634..09406d9 100644
--- a/ash/components/arc/session/arc_bridge_host_impl.cc
+++ b/ash/components/arc/session/arc_bridge_host_impl.cc
@@ -22,7 +22,7 @@
 #include "ash/components/arc/mojom/compatibility_mode.mojom.h"
 #include "ash/components/arc/mojom/crash_collector.mojom.h"
 #include "ash/components/arc/mojom/digital_goods.mojom.h"
-#include "ash/components/arc/mojom/disk_quota.mojom.h"
+#include "ash/components/arc/mojom/disk_space.mojom.h"
 #include "ash/components/arc/mojom/enterprise_reporting.mojom.h"
 #include "ash/components/arc/mojom/file_system.mojom.h"
 #include "ash/components/arc/mojom/iio_sensor.mojom.h"
@@ -202,10 +202,10 @@
                   std::move(digital_goods_remote));
 }
 
-void ArcBridgeHostImpl::OnDiskQuotaInstanceReady(
-    mojo::PendingRemote<mojom::DiskQuotaInstance> disk_quota_remote) {
-  OnInstanceReady(arc_bridge_service_->disk_quota(),
-                  std::move(disk_quota_remote));
+void ArcBridgeHostImpl::OnDiskSpaceInstanceReady(
+    mojo::PendingRemote<mojom::DiskSpaceInstance> disk_space_remote) {
+  OnInstanceReady(arc_bridge_service_->disk_space(),
+                  std::move(disk_space_remote));
 }
 
 void ArcBridgeHostImpl::OnEnterpriseReportingInstanceReady(
diff --git a/ash/components/arc/session/arc_bridge_host_impl.h b/ash/components/arc/session/arc_bridge_host_impl.h
index 76301d8..33450c1 100644
--- a/ash/components/arc/session/arc_bridge_host_impl.h
+++ b/ash/components/arc/session/arc_bridge_host_impl.h
@@ -93,8 +93,8 @@
   void OnDigitalGoodsInstanceReady(
       mojo::PendingRemote<mojom::DigitalGoodsInstance> digital_goods_remote)
       override;
-  void OnDiskQuotaInstanceReady(
-      mojo::PendingRemote<mojom::DiskQuotaInstance> disk_quota_remote) override;
+  void OnDiskSpaceInstanceReady(
+      mojo::PendingRemote<mojom::DiskSpaceInstance> disk_space_remote) override;
   void OnEnterpriseReportingInstanceReady(
       mojo::PendingRemote<mojom::EnterpriseReportingInstance>
           enterprise_reporting_remote) override;
diff --git a/ash/components/arc/session/arc_bridge_host_impl_unittest.cc b/ash/components/arc/session/arc_bridge_host_impl_unittest.cc
index 82d30832..fe25a22 100644
--- a/ash/components/arc/session/arc_bridge_host_impl_unittest.cc
+++ b/ash/components/arc/session/arc_bridge_host_impl_unittest.cc
@@ -152,7 +152,7 @@
     MAKE_INSTANCE_READY(CompatibilityMode);
     MAKE_INSTANCE_READY(CrashCollector);
     MAKE_INSTANCE_READY(DigitalGoods);
-    MAKE_INSTANCE_READY(DiskQuota);
+    MAKE_INSTANCE_READY(DiskSpace);
     MAKE_INSTANCE_READY(EnterpriseReporting);
     MAKE_INSTANCE_READY(FileSystem);
     MAKE_INSTANCE_READY(Ime);
diff --git a/ash/components/arc/session/arc_bridge_service.cc b/ash/components/arc/session/arc_bridge_service.cc
index aa1a677..471c144 100644
--- a/ash/components/arc/session/arc_bridge_service.cc
+++ b/ash/components/arc/session/arc_bridge_service.cc
@@ -20,7 +20,7 @@
 #include "ash/components/arc/mojom/clipboard.mojom.h"
 #include "ash/components/arc/mojom/crash_collector.mojom.h"
 #include "ash/components/arc/mojom/digital_goods.mojom.h"
-#include "ash/components/arc/mojom/disk_quota.mojom.h"
+#include "ash/components/arc/mojom/disk_space.mojom.h"
 #include "ash/components/arc/mojom/enterprise_reporting.mojom.h"
 #include "ash/components/arc/mojom/file_system.mojom.h"
 #include "ash/components/arc/mojom/iio_sensor.mojom.h"
diff --git a/ash/components/arc/session/arc_bridge_service.h b/ash/components/arc/session/arc_bridge_service.h
index 2787ea2..278157d 100644
--- a/ash/components/arc/session/arc_bridge_service.h
+++ b/ash/components/arc/session/arc_bridge_service.h
@@ -50,8 +50,8 @@
 class CrashCollectorHost;
 class CrashCollectorInstance;
 class DigitalGoodsInstance;
-class DiskQuotaHost;
-class DiskQuotaInstance;
+class DiskSpaceHost;
+class DiskSpaceInstance;
 class EnterpriseReportingHost;
 class EnterpriseReportingInstance;
 class FileSystemHost;
@@ -220,9 +220,9 @@
   ConnectionHolder<mojom::DigitalGoodsInstance>* digital_goods() {
     return &digital_goods_;
   }
-  ConnectionHolder<mojom::DiskQuotaInstance, mojom::DiskQuotaHost>*
-  disk_quota() {
-    return &disk_quota_;
+  ConnectionHolder<mojom::DiskSpaceInstance, mojom::DiskSpaceHost>*
+  disk_space() {
+    return &disk_space_;
   }
   ConnectionHolder<mojom::EnterpriseReportingInstance,
                    mojom::EnterpriseReportingHost>*
@@ -375,7 +375,7 @@
   ConnectionHolder<mojom::CrashCollectorInstance, mojom::CrashCollectorHost>
       crash_collector_;
   ConnectionHolder<mojom::DigitalGoodsInstance> digital_goods_;
-  ConnectionHolder<mojom::DiskQuotaInstance, mojom::DiskQuotaHost> disk_quota_;
+  ConnectionHolder<mojom::DiskSpaceInstance, mojom::DiskSpaceHost> disk_space_;
   ConnectionHolder<mojom::EnterpriseReportingInstance,
                    mojom::EnterpriseReportingHost>
       enterprise_reporting_;
diff --git a/ash/components/arc/test/fake_arc_bridge_host.cc b/ash/components/arc/test/fake_arc_bridge_host.cc
index 884790a..2e143d7 100644
--- a/ash/components/arc/test/fake_arc_bridge_host.cc
+++ b/ash/components/arc/test/fake_arc_bridge_host.cc
@@ -18,7 +18,7 @@
 #include "ash/components/arc/mojom/clipboard.mojom.h"
 #include "ash/components/arc/mojom/compatibility_mode.mojom.h"
 #include "ash/components/arc/mojom/crash_collector.mojom.h"
-#include "ash/components/arc/mojom/disk_quota.mojom.h"
+#include "ash/components/arc/mojom/disk_space.mojom.h"
 #include "ash/components/arc/mojom/enterprise_reporting.mojom.h"
 #include "ash/components/arc/mojom/file_system.mojom.h"
 #include "ash/components/arc/mojom/ime.mojom.h"
@@ -123,8 +123,8 @@
 void FakeArcBridgeHost::OnDigitalGoodsInstanceReady(
     mojo::PendingRemote<mojom::DigitalGoodsInstance> digital_goods_remote) {}
 
-void FakeArcBridgeHost::OnDiskQuotaInstanceReady(
-    mojo::PendingRemote<mojom::DiskQuotaInstance> disk_quota_remote) {}
+void FakeArcBridgeHost::OnDiskSpaceInstanceReady(
+    mojo::PendingRemote<mojom::DiskSpaceInstance> disk_space_remote) {}
 
 void FakeArcBridgeHost::OnEnterpriseReportingInstanceReady(
     mojo::PendingRemote<mojom::EnterpriseReportingInstance>
diff --git a/ash/components/arc/test/fake_arc_bridge_host.h b/ash/components/arc/test/fake_arc_bridge_host.h
index f1a842ca..1373626 100644
--- a/ash/components/arc/test/fake_arc_bridge_host.h
+++ b/ash/components/arc/test/fake_arc_bridge_host.h
@@ -63,8 +63,8 @@
   void OnDigitalGoodsInstanceReady(
       mojo::PendingRemote<mojom::DigitalGoodsInstance> digital_goods_remote)
       override;
-  void OnDiskQuotaInstanceReady(
-      mojo::PendingRemote<mojom::DiskQuotaInstance> disk_quota_remote) override;
+  void OnDiskSpaceInstanceReady(
+      mojo::PendingRemote<mojom::DiskSpaceInstance> disk_space_remote) override;
   void OnEnterpriseReportingInstanceReady(
       mojo::PendingRemote<mojom::EnterpriseReportingInstance>
           enterprise_reporting_remote) override;
diff --git a/ash/in_session_auth/auth_dialog_contents_view.cc b/ash/in_session_auth/auth_dialog_contents_view.cc
index 10c65f6..ee6121d 100644
--- a/ash/in_session_auth/auth_dialog_contents_view.cc
+++ b/ash/in_session_auth/auth_dialog_contents_view.cc
@@ -618,8 +618,8 @@
                               base::Unretained(this)),
           l10n_util::GetStringUTF16(IDS_ASH_IN_SESSION_AUTH_CANCEL)));
 
-  action_view_container_->SetPreferredSize(
-      gfx::Size(kContainerPreferredWidth, cancel_button_->height()));
+  action_view_container_->SetPreferredSize(gfx::Size(
+      kContainerPreferredWidth, cancel_button_->GetPreferredSize().height()));
 }
 
 void AuthDialogContentsView::OnInsertDigitFromPinPad(int digit) {
diff --git a/ash/login/ui/local_authentication_request_controller_impl_unittest.cc b/ash/login/ui/local_authentication_request_controller_impl_unittest.cc
index a469599d..407f9340 100644
--- a/ash/login/ui/local_authentication_request_controller_impl_unittest.cc
+++ b/ash/login/ui/local_authentication_request_controller_impl_unittest.cc
@@ -74,8 +74,6 @@
   }
 
   void TearDown() override {
-    LoginTestBase::TearDown();
-
     // If the test did not explicitly dismissed the widget, destroy it now.
     LocalAuthenticationRequestWidget* local_authentication_request_widget =
         LocalAuthenticationRequestWidget::Get();
@@ -87,6 +85,7 @@
     SystemSaltGetter::Shutdown();
     UserDataAuthClient::Shutdown();
     CryptohomeMiscClient::Shutdown();
+    LoginTestBase::TearDown();
   }
 
   void SetExpectedCredentialsWithDbusClient(const AccountId& account_id,
diff --git a/ash/login/ui/lock_contents_view.cc b/ash/login/ui/lock_contents_view.cc
index 62849246..8beddfc7 100644
--- a/ash/login/ui/lock_contents_view.cc
+++ b/ash/login/ui/lock_contents_view.cc
@@ -2321,6 +2321,16 @@
 void LockContentsView::OnBackToSigninButtonTapped() {
   // TODO(b/333882432): Remove this log after the bug fixed.
   LOG(WARNING) << "b/333882432: LockContentsView::OnBackToSigninButtonTapped";
+  // Prevent starting a gaia signin in a transition state.
+  session_manager::SessionState current_state =
+      Shell::Get()->session_controller()->GetSessionState();
+  if (current_state != session_manager::SessionState::OOBE &&
+      current_state != session_manager::SessionState::LOGIN_PRIMARY) {
+    LOG(WARNING) << "Back to signin button was called in an unexpected state: "
+                 << static_cast<int>(current_state)
+                 << " skip to call ShowGaiaSignin.";
+    return;
+  }
   Shell::Get()->login_screen_controller()->ShowGaiaSignin(
       /*prefilled_account=*/EmptyAccountId());
 }
diff --git a/ash/login/ui/lock_screen_media_controls_view.cc b/ash/login/ui/lock_screen_media_controls_view.cc
index b795cde6..535e593 100644
--- a/ash/login/ui/lock_screen_media_controls_view.cc
+++ b/ash/login/ui/lock_screen_media_controls_view.cc
@@ -69,16 +69,12 @@
 constexpr int kDesiredArtworkSize = 48;
 constexpr int kArtworkRowPadding = 16;
 constexpr auto kArtworkRowInsets = gfx::Insets::TLBR(24, 0, 9, 0);
-constexpr gfx::Size kArtworkRowPreferredSize =
-    gfx::Size(328, kDesiredArtworkSize);
 constexpr int kMediaButtonRowPadding = 16;
 constexpr auto kButtonRowInsets = gfx::Insets::TLBR(4, 0, 0, 0);
 constexpr int kPlayPauseIconSize = 40;
 constexpr int kMediaControlsIconSize = 24;
 constexpr gfx::Size kPlayPauseButtonSize = gfx::Size(72, 72);
 constexpr gfx::Size kMediaControlsButtonSize = gfx::Size(48, 48);
-constexpr gfx::Size kMediaControlsButtonRowSize =
-    gfx::Size(328, kPlayPauseButtonSize.height());
 constexpr gfx::Size kMediaButtonGroupSize =
     gfx::Size(2 * kMediaControlsButtonSize.width() + kMediaButtonRowPadding,
               kPlayPauseButtonSize.height());
@@ -275,7 +271,6 @@
 
   // |artwork_row| contains the session artwork, artist and track info.
   auto artwork_row = std::make_unique<NonAccessibleView>();
-  artwork_row->SetPreferredSize(kArtworkRowPreferredSize);
   auto* artwork_row_layout =
       artwork_row->SetLayoutManager(std::make_unique<views::BoxLayout>(
           views::BoxLayout::Orientation::kHorizontal, kArtworkRowInsets,
@@ -370,7 +365,6 @@
   right_control_group_layout->set_main_axis_alignment(
       views::BoxLayout::MainAxisAlignment::kStart);
 
-  button_row->SetPreferredSize(kMediaControlsButtonRowSize);
   button_row_ = contents_view_->AddChildView(std::move(button_row));
 
   left_control_group->SetPreferredSize(kMediaButtonGroupSize);
diff --git a/ash/login/ui/login_pin_input_view.cc b/ash/login/ui/login_pin_input_view.cc
index bfe9245..0bfc701 100644
--- a/ash/login/ui/login_pin_input_view.cc
+++ b/ash/login/ui/login_pin_input_view.cc
@@ -33,8 +33,6 @@
 constexpr const int kMaxWidthPinInputDp = 280;
 constexpr const int kFieldWidth = 24;
 constexpr const int kFieldSpace = 8;
-// Total height of the view.
-constexpr const int kPinInputTotalHeightDp = 37;
 // Default length
 constexpr const int kPinAutosubmitMinLength = 6;
 constexpr const int kPinAutosubmitMaxLength = 12;
@@ -280,8 +278,10 @@
 gfx::Size LoginPinInputView::CalculatePreferredSize(
     const views::SizeBounds& available_size) const {
   const int ideal_size = kFieldWidth * length_ + kFieldSpace * (length_ - 1);
-  return gfx::Size(std::min(kMaxWidthPinInputDp, ideal_size),
-                   kPinInputTotalHeightDp);
+  const int available_width = std::min(kMaxWidthPinInputDp, ideal_size);
+  return gfx::Size(
+      available_width,
+      GetLayoutManager()->GetPreferredHeightForWidth(this, available_width));
 }
 
 void LoginPinInputView::RequestFocus() {
diff --git a/ash/login/ui/login_user_view.cc b/ash/login/ui/login_user_view.cc
index f3671cd..3fa712f 100644
--- a/ash/login/ui/login_user_view.cc
+++ b/ash/login/ui/login_user_view.cc
@@ -599,6 +599,14 @@
   }
 }
 
+int LoginUserView::GetHeightForWidth(int w) const {
+  // TODO(crbug.com/40232718): The behavior of GetHeightForWidth is inconsistent
+  // with the behavior of CalculatePreferredSize. This results in LoginUserView
+  // having different heights in different layouts. There is a conflict between
+  // multiple pixel tests.
+  return GetLayoutManager()->GetPreferredHeightForWidth(this, w);
+}
+
 void LoginUserView::Layout(PassKey) {
   LayoutSuperclass<views::View>(this);
   tap_button_->SetBoundsRect(GetLocalBounds());
diff --git a/ash/login/ui/login_user_view.h b/ash/login/ui/login_user_view.h
index dcfa023..7121e24 100644
--- a/ash/login/ui/login_user_view.h
+++ b/ash/login/ui/login_user_view.h
@@ -95,6 +95,7 @@
   // views::View:
   gfx::Size CalculatePreferredSize(
       const views::SizeBounds& available_size) const override;
+  int GetHeightForWidth(int w) const override;
   void Layout(PassKey) override;
   void RequestFocus() override;
   views::View::Views GetChildrenInZOrder() override;
diff --git a/ash/public/cpp/wallpaper/wallpaper_info.cc b/ash/public/cpp/wallpaper/wallpaper_info.cc
index 853546f0..204564e2 100644
--- a/ash/public/cpp/wallpaper/wallpaper_info.cc
+++ b/ash/public/cpp/wallpaper/wallpaper_info.cc
@@ -11,6 +11,7 @@
 #include "base/logging.h"
 #include "base/ranges/algorithm.h"
 #include "base/types/cxx23_to_underlying.h"
+#include "base/version.h"
 
 namespace ash {
 
@@ -216,6 +217,12 @@
   WallpaperInfo info;
   info.type = wallpaper_type;
 
+  const std::string* version =
+      dict.FindString(WallpaperInfo::kNewWallpaperVersionNodeName);
+  if (version) {
+    info.version = base::Version(*version);
+  }
+
   int64_t date_val;
   if (!base::StringToInt64(*date_string, &date_val)) {
     return std::nullopt;
@@ -239,6 +246,9 @@
 
 base::Value::Dict WallpaperInfo::ToDict() const {
   base::Value::Dict wallpaper_info_dict;
+  if (version.IsValid()) {
+    wallpaper_info_dict.Set(kNewWallpaperVersionNodeName, version.GetString());
+  }
   if (asset_id.has_value()) {
     wallpaper_info_dict.Set(kNewWallpaperAssetIdNodeName,
                             base::NumberToString(asset_id.value()));
diff --git a/ash/public/cpp/wallpaper/wallpaper_info.h b/ash/public/cpp/wallpaper/wallpaper_info.h
index f3f7f82..73b3d198 100644
--- a/ash/public/cpp/wallpaper/wallpaper_info.h
+++ b/ash/public/cpp/wallpaper/wallpaper_info.h
@@ -16,6 +16,7 @@
 #include "ash/public/cpp/wallpaper/wallpaper_types.h"
 #include "base/time/time.h"
 #include "base/values.h"
+#include "base/version.h"
 #include "ui/gfx/image/image_skia.h"
 
 namespace ash {
@@ -27,14 +28,15 @@
       "collection_id";
   static constexpr std::string_view kNewWallpaperDateNodeName = "date";
   static constexpr std::string_view kNewWallpaperDedupKeyNodeName = "dedup_key";
-  static constexpr std::string_view kNewWallpaperLayoutNodeName = "layout";
   static constexpr std::string_view kNewWallpaperLocationNodeName = "file";
   static constexpr std::string_view kNewWallpaperUserFilePathNodeName =
       "file_path";
+  static constexpr std::string_view kNewWallpaperLayoutNodeName = "layout";
   static constexpr std::string_view kNewWallpaperTypeNodeName = "type";
   static constexpr std::string_view kNewWallpaperUnitIdNodeName = "unit_id";
   static constexpr std::string_view kNewWallpaperVariantListNodeName =
       "variants";
+  static constexpr std::string_view kNewWallpaperVersionNodeName = "version";
 
   // Names of nodes for the online wallpaper variant dictionary.
   static constexpr std::string_view kOnlineWallpaperTypeNodeName =
@@ -83,6 +85,11 @@
 
   ~WallpaperInfo();
 
+  // The version associated with the wallpaper. Expected to be in the form of
+  // "major.minor". Major version indicates breaking change, and incompatible
+  // with the other versions. Check `base::Version::IsValid()` before using.
+  base::Version version;
+
   // Either file name of migrated wallpaper including first directory level
   // (corresponding to user wallpaper_files_id), online wallpaper URL, or
   // Google Photos id.
diff --git a/ash/public/cpp/wallpaper/wallpaper_info_unittest.cc b/ash/public/cpp/wallpaper/wallpaper_info_unittest.cc
index 8c6a9f6..2e7850e 100644
--- a/ash/public/cpp/wallpaper/wallpaper_info_unittest.cc
+++ b/ash/public/cpp/wallpaper/wallpaper_info_unittest.cc
@@ -57,6 +57,24 @@
     base::Value::Dict dict = actual_info.ToDict();
     std::optional<WallpaperInfo> expected_info = WallpaperInfo::FromDict(dict);
     EXPECT_TRUE(actual_info.MatchesAsset(expected_info.value()));
+    EXPECT_FALSE(expected_info->version.IsValid());
+  }
+  {
+    // WallpaperType::kOnline with version
+    OnlineWallpaperParams params = OnlineWallpaperParams(
+        kAccountId1,
+        /*collection_id=*/std::string(), WALLPAPER_LAYOUT_CENTER_CROPPED,
+        /*preview_mode=*/false, /*from_user=*/false,
+        /*daily_refresh_enabled=*/false, kUnitId,
+        /*variants=*/
+        {{kAssetId, GURL("https://example.com/image.png"),
+          backdrop::Image::IMAGE_TYPE_UNKNOWN}});
+    WallpaperInfo actual_info = WallpaperInfo(params, params.variants[0]);
+    actual_info.version = base::Version("1.0");
+    base::Value::Dict dict = actual_info.ToDict();
+    std::optional<WallpaperInfo> expected_info = WallpaperInfo::FromDict(dict);
+    EXPECT_TRUE(actual_info.MatchesAsset(expected_info.value()));
+    EXPECT_TRUE(expected_info->version.IsValid());
   }
   {
     // WallpaperType::kOnceGooglePhotos
@@ -67,6 +85,7 @@
     base::Value::Dict dict = actual_info.ToDict();
     std::optional<WallpaperInfo> expected_info = WallpaperInfo::FromDict(dict);
     EXPECT_TRUE(actual_info.MatchesAsset(expected_info.value()));
+    EXPECT_FALSE(expected_info->version.IsValid());
   }
   {
     // WallpaperType::kCustomized
@@ -76,6 +95,7 @@
     base::Value::Dict dict = actual_info.ToDict();
     std::optional<WallpaperInfo> expected_info = WallpaperInfo::FromDict(dict);
     EXPECT_TRUE(actual_info.MatchesAsset(expected_info.value()));
+    EXPECT_FALSE(expected_info->version.IsValid());
   }
 }
 
diff --git a/ash/strings/ash_strings_ca.xtb b/ash/strings/ash_strings_ca.xtb
index 080a674..de154a9b 100644
--- a/ash/strings/ash_strings_ca.xtb
+++ b/ash/strings/ash_strings_ca.xtb
@@ -886,7 +886,7 @@
 <translation id="4453876312474547652">Veuràs el porta-retalls quan mantinguis premudes les tecles Ctrl+V. Pots desactivar aquesta drecera desactivant la marca #clipboard-history-longpress a chrome://flags (os://flags si utilitzes Lacros).</translation>
 <translation id="445864333228800152">Bon vespre,</translation>
 <translation id="4458688154122353284">Atura la gravació de pantalla</translation>
-<translation id="445923051607553918">Connexió a una xarxa Wi-Fi</translation>
+<translation id="445923051607553918">Connexió de xarxa Wi-Fi</translation>
 <translation id="4471354919263203780">S'estan baixant els fitxers de reconeixement de parla... <ph name="PERCENT" />%</translation>
 <translation id="4471432286288241507">{0,plural, =0{Actualitza el dispositiu ara}=1{Actualitza el dispositiu en 1 segon}other{Actualitza el dispositiu en # segons}}</translation>
 <translation id="4472575034687746823">Comença</translation>
@@ -992,7 +992,7 @@
 <translation id="485634149294284819">Menú per seleccionar el teclat</translation>
 <translation id="485806788160414322">Reprodueix o posa en pausa el contingut multimèdia</translation>
 <translation id="4858764087721901597"><ph name="MODIFIER_ONE" /> i després <ph name="KEY_ONE" />, <ph name="KEY_TWO" />, <ph name="KEY_THREE" /> o <ph name="KEY_FOUR" /></translation>
-<translation id="4860284199500934869">Comprova la connexió a la xarxa per baixar <ph name="FILENAME" /></translation>
+<translation id="4860284199500934869">Comprova la connexió de xarxa per baixar <ph name="FILENAME" /></translation>
 <translation id="4864369630010738180">S'està iniciant la sessió...</translation>
 <translation id="4864648187878336334">Escriptori 15</translation>
 <translation id="4868492592575313542">activada</translation>
@@ -1645,7 +1645,7 @@
 <translation id="7378889811480108604">El mode d'estalvi de bateria està desactivat</translation>
 <translation id="7382680553121047388">Activat</translation>
 <translation id="7384028040782072252">Fes clic amb el botó dret en qualsevol lloc per tornar a ordenar les aplicacions</translation>
-<translation id="7386767620098596324">Commuta la connexió a la xarxa. <ph name="STATE_TEXT" />.</translation>
+<translation id="7386767620098596324">Commuta la connexió de xarxa. <ph name="STATE_TEXT" />.</translation>
 <translation id="7392563512730092880">Pots ajustar aquesta funció més endavant des de Configuració.</translation>
 <translation id="7401222354741467707">Fes una captura o una gravació de pantalla completes</translation>
 <translation id="7405710164030118432">Introdueix el codi d'accés parental de Family Link per desbloquejar el dispositiu</translation>
diff --git a/ash/system/focus_mode/sounds/focus_mode_sounds_view.cc b/ash/system/focus_mode/sounds/focus_mode_sounds_view.cc
index e848dfb..79ccac9 100644
--- a/ash/system/focus_mode/sounds/focus_mode_sounds_view.cc
+++ b/ash/system/focus_mode/sounds/focus_mode_sounds_view.cc
@@ -146,11 +146,17 @@
   auto* sounds_controller =
       FocusModeController::Get()->focus_mode_sounds_controller();
   if (is_soundscape_type) {
-    soundscape_container_->UpdateContents(
-        sounds_controller->soundscape_playlists());
+    const auto& playlists = sounds_controller->soundscape_playlists();
+    if (playlists.empty()) {
+      return;
+    }
+    soundscape_container_->UpdateContents(playlists);
   } else {
-    youtube_music_container_->UpdateContents(
-        sounds_controller->youtube_music_playlists());
+    const auto& playlists = sounds_controller->youtube_music_playlists();
+    if (playlists.empty()) {
+      return;
+    }
+    youtube_music_container_->UpdateContents(playlists);
   }
 }
 
diff --git a/ash/webui/print_preview_cros/resources/js/data/capabilities_manager.ts b/ash/webui/print_preview_cros/resources/js/data/capabilities_manager.ts
index c74e0d2..1a256c31 100644
--- a/ash/webui/print_preview_cros/resources/js/data/capabilities_manager.ts
+++ b/ash/webui/print_preview_cros/resources/js/data/capabilities_manager.ts
@@ -46,6 +46,7 @@
   private destinationManager: DestinationManager =
       DestinationManager.getInstance();
   private capabilitiesCache = new Map<string, Capabilities>();
+  private activeDestinationCapabilitiesLoaded = false;
 
   // Prevent additional initialization.
   private constructor() {
@@ -76,13 +77,11 @@
       return;
     }
 
-    this.dispatchEvent(createCustomEvent(
-        CAPABILITIES_MANAGER_ACTIVE_DESTINATION_CAPS_LOADING));
+    this.setActiveCapabilitiesLoading();
 
     const cachedCapabilities = this.capabilitiesCache.get(destination.id);
     if (cachedCapabilities) {
-      this.dispatchEvent(createCustomEvent(
-          CAPABILITIES_MANAGER_ACTIVE_DESTINATION_CAPS_READY));
+      this.setActiveCapabilitiesReady();
       return;
     }
 
@@ -100,8 +99,7 @@
     const activeDestination = this.destinationManager.getActiveDestination();
     assert(activeDestination);
     if (caps.destinationId === activeDestination.id) {
-      this.dispatchEvent(createCustomEvent(
-          CAPABILITIES_MANAGER_ACTIVE_DESTINATION_CAPS_READY));
+      this.setActiveCapabilitiesReady();
     }
   }
 
@@ -115,6 +113,22 @@
     return this.capabilitiesCache.get(activeDestination.id);
   }
 
+  private setActiveCapabilitiesLoading(): void {
+    this.activeDestinationCapabilitiesLoaded = false;
+    this.dispatchEvent(createCustomEvent(
+        CAPABILITIES_MANAGER_ACTIVE_DESTINATION_CAPS_LOADING));
+  }
+
+  private setActiveCapabilitiesReady(): void {
+    this.activeDestinationCapabilitiesLoaded = true;
+    this.dispatchEvent(
+        createCustomEvent(CAPABILITIES_MANAGER_ACTIVE_DESTINATION_CAPS_READY));
+  }
+
+  areActiveDestinationCapabilitiesLoaded(): boolean {
+    return this.activeDestinationCapabilitiesLoaded;
+  }
+
   // Returns true only after the `initializeSession` function has been called
   // with a valid `SessionContext`.
   isSessionInitialized(): boolean {
diff --git a/ash/webui/print_preview_cros/resources/js/summary_panel_controller.ts b/ash/webui/print_preview_cros/resources/js/summary_panel_controller.ts
index 47614c8c..eb1d013 100644
--- a/ash/webui/print_preview_cros/resources/js/summary_panel_controller.ts
+++ b/ash/webui/print_preview_cros/resources/js/summary_panel_controller.ts
@@ -5,6 +5,7 @@
 import {assert} from 'chrome://resources/js/assert.js';
 import {EventTracker} from 'chrome://resources/js/event_tracker.js';
 
+import {CAPABILITIES_MANAGER_ACTIVE_DESTINATION_CAPS_LOADING, CAPABILITIES_MANAGER_ACTIVE_DESTINATION_CAPS_READY, CapabilitiesManager} from './data/capabilities_manager.js';
 import {PREVIEW_REQUEST_FINISHED_EVENT, PREVIEW_REQUEST_STARTED_EVENT, PreviewTicketManager} from './data/preview_ticket_manager.js';
 import {PRINT_REQUEST_FINISHED_EVENT, PRINT_REQUEST_STARTED_EVENT, PrintTicketManager} from './data/print_ticket_manager.js';
 
@@ -24,6 +25,7 @@
 // `summary-panel` element.
 export class SummaryPanelController extends EventTarget {
   private sheetsUsed = 0;
+  private capabilitiesManager = CapabilitiesManager.getInstance();
   private previewTicketManager = PreviewTicketManager.getInstance();
   private printTicketManager = PrintTicketManager.getInstance();
 
@@ -34,17 +36,25 @@
   constructor(eventTracker: EventTracker) {
     super();
     eventTracker.add(
+        this.capabilitiesManager,
+        CAPABILITIES_MANAGER_ACTIVE_DESTINATION_CAPS_LOADING,
+        () => this.dispatchPrintButtonDisabledChangedEvent());
+    eventTracker.add(
+        this.capabilitiesManager,
+        CAPABILITIES_MANAGER_ACTIVE_DESTINATION_CAPS_READY,
+        () => this.dispatchPrintButtonDisabledChangedEvent());
+    eventTracker.add(
         this.previewTicketManager, PREVIEW_REQUEST_STARTED_EVENT,
-        () => this.onPreviewRequestStarted());
+        () => this.dispatchPrintButtonDisabledChangedEvent());
     eventTracker.add(
         this.previewTicketManager, PREVIEW_REQUEST_FINISHED_EVENT,
-        () => this.onPreviewRequestFinished());
+        () => this.dispatchPrintButtonDisabledChangedEvent());
     eventTracker.add(
         this.printTicketManager, PRINT_REQUEST_STARTED_EVENT,
-        (e: Event) => this.onPrintRequestStarted(e));
+        () => this.dispatchPrintButtonDisabledChangedEvent());
     eventTracker.add(
         this.printTicketManager, PRINT_REQUEST_FINISHED_EVENT,
-        (e: Event) => this.onPrintRequestFinished(e));
+        () => this.dispatchPrintButtonDisabledChangedEvent());
   }
 
   // Returns localized string based on current number of sheets in document and
@@ -83,29 +93,16 @@
         new CustomEvent<void>(eventName, {bubbles: true, composed: true}));
   }
 
-  // Handles notifying UI to update state when preview request starts.
-  private onPreviewRequestStarted(): void {
-    this.dispatch(PRINT_BUTTON_DISABLED_CHANGED_EVENT);
-  }
-
-  // Handles notifying UI to update state when preview request finishes.
-  private onPreviewRequestFinished(): void {
-    this.dispatch(PRINT_BUTTON_DISABLED_CHANGED_EVENT);
-  }
-
-  // Handles notifying UI to update state when print request starts.
-  private onPrintRequestStarted(_e: Event): void {
-    this.dispatch(PRINT_BUTTON_DISABLED_CHANGED_EVENT);
-  }
-
-  // Handles notifying UI to update state when print request finishes.
-  private onPrintRequestFinished(_e: Event): void {
+  // Handles notifying UI to update state when an attribute that can
+  // enable/disable the print button changes.
+  private dispatchPrintButtonDisabledChangedEvent() {
     this.dispatch(PRINT_BUTTON_DISABLED_CHANGED_EVENT);
   }
 
   // Whether the print button should be enabled for the current state.
   shouldDisablePrintButton(): boolean {
-    return !this.previewTicketManager.isPreviewLoaded() ||
+    return !this.capabilitiesManager.areActiveDestinationCapabilitiesLoaded() ||
+        !this.previewTicketManager.isPreviewLoaded() ||
         this.printTicketManager.isPrintRequestInProgress();
   }
 }
diff --git a/ash/wm/snap_group/snap_group_unittest.cc b/ash/wm/snap_group/snap_group_unittest.cc
index d7eef21b8..01aa051 100644
--- a/ash/wm/snap_group/snap_group_unittest.cc
+++ b/ash/wm/snap_group/snap_group_unittest.cc
@@ -646,15 +646,22 @@
   expected_window_bounds.set_width(initial_bounds.width() + drag_x);
   EXPECT_EQ(expected_window_bounds, w1->GetBoundsInScreen());
 
-  gfx::Rect expected_grid_bounds(work_area_bounds());
-  expected_grid_bounds.Subtract(w1->GetBoundsInScreen());
-  EXPECT_EQ(expected_grid_bounds, GetOverviewGridBounds(w1->GetRootWindow()));
+  gfx::Rect expected_autosnap_bounds(work_area_bounds());
+  expected_autosnap_bounds.Subtract(w1->GetBoundsInScreen());
+  EXPECT_EQ(expected_autosnap_bounds,
+            GetOverviewGridBounds(w1->GetRootWindow()));
 
   // Create a window and test that it auto snaps.
   std::unique_ptr<aura::Window> w3(CreateAppWindow());
   EXPECT_EQ(WindowStateType::kSecondarySnapped,
             WindowState::Get(w3.get())->GetStateType());
-  EXPECT_EQ(expected_grid_bounds, w3->GetBoundsInScreen());
+  const int divider_delta = IsSnapGroupEnabledInClamshellMode()
+                                ? kSplitviewDividerShortSideLength / 2
+                                : 0;
+  expected_autosnap_bounds.Subtract(
+      gfx::Rect(expected_window_bounds.top_right(),
+                gfx::Size(divider_delta, work_area_bounds().height())));
+  EXPECT_EQ(expected_autosnap_bounds, w3->GetBoundsInScreen());
 }
 
 // Verify the window focus behavior both when activing a window or skipping
@@ -1467,9 +1474,12 @@
   EXPECT_EQ(window1_state->GetStateType(), WindowStateType::kPrimarySnapped);
   EXPECT_LT(window1_state->snap_ratio().value(), chromeos::kTwoThirdSnapRatio);
 
+  const int divider_delta = IsSnapGroupEnabledInClamshellMode()
+                                ? kSplitviewDividerShortSideLength
+                                : 0;
   // Both windows will fit within the work are with no overlap
   EXPECT_EQ(window1->GetBoundsInScreen().width() +
-                window2->GetBoundsInScreen().width(),
+                window2->GetBoundsInScreen().width() + divider_delta,
             work_area_bounds().width());
 }
 
diff --git a/ash/wm/splitview/split_view_multi_display_unittest.cc b/ash/wm/splitview/split_view_multi_display_unittest.cc
index b6358f9..6289c26 100644
--- a/ash/wm/splitview/split_view_multi_display_unittest.cc
+++ b/ash/wm/splitview/split_view_multi_display_unittest.cc
@@ -15,13 +15,14 @@
 
 namespace ash {
 
-class SplitViewMultiDisplayTest : public AshTestBase {
+class SplitViewMultiDisplayClamshellTest : public AshTestBase {
  public:
-  SplitViewMultiDisplayTest() = default;
-  SplitViewMultiDisplayTest(const SplitViewMultiDisplayTest&) = delete;
-  SplitViewMultiDisplayTest& operator=(const SplitViewMultiDisplayTest&) =
-      delete;
-  ~SplitViewMultiDisplayTest() override = default;
+  SplitViewMultiDisplayClamshellTest() = default;
+  SplitViewMultiDisplayClamshellTest(
+      const SplitViewMultiDisplayClamshellTest&) = delete;
+  SplitViewMultiDisplayClamshellTest& operator=(
+      const SplitViewMultiDisplayClamshellTest&) = delete;
+  ~SplitViewMultiDisplayClamshellTest() override = default;
 
   display::Display GetPrimaryDisplay() {
     return display::Screen::GetScreen()->GetPrimaryDisplay();
@@ -63,7 +64,7 @@
 
 // Tests that using the shortcut to move the snapped window to another display
 // works as intended.
-TEST_F(SplitViewMultiDisplayTest, MoveWindowToDisplayShortcut) {
+TEST_F(SplitViewMultiDisplayClamshellTest, MoveWindowToDisplayShortcut) {
   UpdateDisplay("1200x900,800x600");
   display::test::DisplayManagerTestApi display_manager_test(display_manager());
 
@@ -146,9 +147,10 @@
   }
 }
 
-// Tests that snap across multi-displays works correctly. Regression test for
-// b/331663949.
-TEST_F(SplitViewMultiDisplayTest, SnapToCorrectDisplay) {
+// Tests that snap across multi-displays works correctly. Pressing escape key
+// afte each test to avoid Snap Group creation with `kSnapGroup` enabled.
+// Regression test for b/331663949.
+TEST_F(SplitViewMultiDisplayClamshellTest, SnapToCorrectDisplay) {
   UpdateDisplay("800x600,800x600");
 
   // Create 2 test windows with non-overlapping bounds so we can drag them.
@@ -162,24 +164,28 @@
   event_generator->DragMouseTo(0, 100);
   EXPECT_EQ(GetExpectedSnappedBounds(GetPrimaryDisplay()).first,
             w1->GetBoundsInScreen());
+  PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
 
   // Drag to snap `w2` to secondary on display 1.
   event_generator->set_current_screen_location(GetDragPoint(w2.get()));
   event_generator->DragMouseTo(799, 100);
   EXPECT_EQ(GetExpectedSnappedBounds(GetPrimaryDisplay()).second,
             w2->GetBoundsInScreen());
+  PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
 
   // Drag to snap `w2` to primary on display 2.
   event_generator->set_current_screen_location(GetDragPoint(w2.get()));
   event_generator->DragMouseTo(800, 100);
   EXPECT_EQ(GetExpectedSnappedBounds(GetSecondaryDisplay()).first,
             w2->GetBoundsInScreen());
+  PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
 
   // Drag to snap `w2` back to secondary on display 1.
   event_generator->set_current_screen_location(GetDragPoint(w2.get()));
   event_generator->DragMouseTo(799, 100);
   EXPECT_EQ(GetExpectedSnappedBounds(GetPrimaryDisplay()).second,
             w2->GetBoundsInScreen());
+  PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
 
   // Drag to snap `w2` back to primary on display 2.
   event_generator->set_current_screen_location(GetDragPoint(w2.get()));
@@ -189,7 +195,9 @@
 }
 
 // Tests that drag to snap across different display sizes works correctly.
-TEST_F(SplitViewMultiDisplayTest, SnapDifferentDisplaySizes) {
+// Pressing escape key after each test to avoid Snap Group creation with
+// `kSnapGroup` enabled.
+TEST_F(SplitViewMultiDisplayClamshellTest, SnapDifferentDisplaySizes) {
   std::unique_ptr<aura::Window> w1(CreateTestWindow(gfx::Rect(0, 0, 200, 200)));
   std::unique_ptr<aura::Window> w2(
       CreateTestWindow(gfx::Rect(400, 0, 200, 200)));
@@ -210,6 +218,7 @@
     event_generator->DragMouseTo(work_area1.origin());
     EXPECT_EQ(GetExpectedSnappedBounds(display1).first,
               w1->GetBoundsInScreen());
+    PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
 
     // Drag to snap `w2` to secondary on display 1.
     wm::ActivateWindow(w2.get());
@@ -217,6 +226,7 @@
     event_generator->DragMouseTo(work_area1.right() - 1, work_area1.y());
     EXPECT_EQ(GetExpectedSnappedBounds(display1).second,
               w2->GetBoundsInScreen());
+    PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
 
     // Drag to snap `w2` to primary on display 2.
     event_generator->set_current_screen_location(GetDragPoint(w2.get()));
@@ -225,18 +235,21 @@
     event_generator->DragMouseTo(work_area2.origin());
     EXPECT_EQ(GetExpectedSnappedBounds(display2).first,
               w2->GetBoundsInScreen());
+    PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
 
     // Drag to snap `w2` back to secondary on display 1.
     event_generator->set_current_screen_location(GetDragPoint(w2.get()));
     event_generator->DragMouseTo(work_area1.right() - 1, work_area1.y());
     EXPECT_EQ(GetExpectedSnappedBounds(display1).second,
               w2->GetBoundsInScreen());
+    PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
 
     // Drag to snap `w2` back to primary on display 2.
     event_generator->set_current_screen_location(GetDragPoint(w2.get()));
     event_generator->DragMouseTo(work_area2.origin());
     EXPECT_EQ(GetExpectedSnappedBounds(display2).first,
               w2->GetBoundsInScreen());
+    PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
 
     // Drag to snap `w1` to secondary on display 2.
     wm::ActivateWindow(w1.get());
@@ -244,11 +257,12 @@
     event_generator->DragMouseTo(work_area2.right() - 1, work_area2.y());
     EXPECT_EQ(GetExpectedSnappedBounds(display2).second,
               w1->GetBoundsInScreen());
+    PressAndReleaseKey(ui::VKEY_ESCAPE, ui::EF_NONE);
   }
 }
 
 // Tests that snapping across a landscape and portrait display works correctly.
-TEST_F(SplitViewMultiDisplayTest, LandscapeAndPortrait) {
+TEST_F(SplitViewMultiDisplayClamshellTest, LandscapeAndPortrait) {
   UpdateDisplay("800x600,600x800");
 
   std::unique_ptr<aura::Window> w1(CreateTestWindow(gfx::Rect(0, 0, 200, 200)));
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index 652170b..ea426b1 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -2406,10 +2406,10 @@
   if (is_win) {
     cflags = [ "/O2" ] + common_optimize_on_cflags
 
-    # https://doc.rust-lang.org/rustc/profile-guided-optimization.html#usage
-    # suggests not using an explicit `-Copt-level` at all, and the default is
-    # to optimize for performance like `/O2` for clang.
-    rustflags = []
+    # The `-O3` for clang turns on extra optimizations compared to the standard
+    # `-O2`. But for rust, `-Copt-level=3` is the default and is thus reliable
+    # to use.
+    rustflags = [ "-Copt-level=3" ]
   } else if (optimize_for_size || is_chromeos) {
     # Favor size over speed.
     # -Os in clang is more of a size-conscious -O2 than "size at any cost"
diff --git a/build/rust/BUILD.gn b/build/rust/BUILD.gn
index 6fc7527d..ec82053 100644
--- a/build/rust/BUILD.gn
+++ b/build/rust/BUILD.gn
@@ -21,7 +21,7 @@
     # The version of cxx under //third_party/rust/chromium_crates_io/vendor.
     # Update this whenever cxx is rolled. Also update the version number in the
     # //third_party/rust/cxx/v1/cxx.h header.
-    cxx_version = "1.0.121"
+    cxx_version = "1.0.122"
 
     # The required dependencies for cxx-generated bindings, that must be included
     # on the C++ side.
diff --git a/cc/BUILD.gn b/cc/BUILD.gn
index 274d2422..fe00f07 100644
--- a/cc/BUILD.gn
+++ b/cc/BUILD.gn
@@ -572,7 +572,6 @@
     "test/mock_latency_info_swap_promise_monitor.h",
     "test/mock_layer_tree_mutator.cc",
     "test/mock_layer_tree_mutator.h",
-    "test/mock_occlusion_tracker.h",
     "test/paint_image_matchers.h",
     "test/paint_op_helper.cc",
     "test/paint_op_helper.h",
diff --git a/cc/layers/render_surface_unittest.cc b/cc/layers/render_surface_unittest.cc
index 8a6f9c6..4120a08 100644
--- a/cc/layers/render_surface_unittest.cc
+++ b/cc/layers/render_surface_unittest.cc
@@ -10,7 +10,6 @@
 #include "cc/test/fake_layer_tree_host_impl.h"
 #include "cc/test/fake_picture_layer_impl.h"
 #include "cc/test/layer_tree_impl_test_base.h"
-#include "cc/test/mock_occlusion_tracker.h"
 #include "cc/test/test_task_graph_runner.h"
 #include "cc/trees/layer_tree_impl.h"
 #include "cc/trees/single_thread_proxy.h"
diff --git a/cc/layers/scrollbar_layer_unittest.cc b/cc/layers/scrollbar_layer_unittest.cc
index 895d5f5..85e91b54 100644
--- a/cc/layers/scrollbar_layer_unittest.cc
+++ b/cc/layers/scrollbar_layer_unittest.cc
@@ -27,7 +27,6 @@
 #include "cc/test/fake_scrollbar.h"
 #include "cc/test/layer_tree_impl_test_base.h"
 #include "cc/test/layer_tree_test.h"
-#include "cc/test/mock_occlusion_tracker.h"
 #include "cc/test/stub_layer_tree_host_single_thread_client.h"
 #include "cc/test/test_task_graph_runner.h"
 #include "cc/trees/effect_node.h"
diff --git a/cc/test/layer_tree_impl_test_base.cc b/cc/test/layer_tree_impl_test_base.cc
index 51b56568e..e23e72ac 100644
--- a/cc/test/layer_tree_impl_test_base.cc
+++ b/cc/test/layer_tree_impl_test_base.cc
@@ -12,7 +12,6 @@
 #include "cc/layers/append_quads_data.h"
 #include "cc/test/animation_test_common.h"
 #include "cc/test/fake_layer_tree_frame_sink.h"
-#include "cc/test/mock_occlusion_tracker.h"
 #include "cc/test/property_tree_test_utils.h"
 #include "cc/trees/draw_property_utils.h"
 #include "ui/gfx/geometry/point_conversions.h"
diff --git a/cc/test/mock_occlusion_tracker.h b/cc/test/mock_occlusion_tracker.h
deleted file mode 100644
index 731b8e17..0000000
--- a/cc/test/mock_occlusion_tracker.h
+++ /dev/null
@@ -1,47 +0,0 @@
-// Copyright 2014 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CC_TEST_MOCK_OCCLUSION_TRACKER_H_
-#define CC_TEST_MOCK_OCCLUSION_TRACKER_H_
-
-#include "cc/trees/occlusion_tracker.h"
-
-namespace cc {
-
-class MockOcclusionTracker : public OcclusionTracker {
-  // This class is used for testing only. It fakes just enough information to
-  // calculate unoccluded content rect and unoccluded contributing surface
-  // content rect. It calls the helper function of occlusion tracker to avoid
-  // DCHECKs since testing environment won't be set up properly to pass those.
- public:
-  MockOcclusionTracker() : OcclusionTracker(gfx::Rect(0, 0, 1000, 1000)) {
-    OcclusionTracker::StackObject stack_obj;
-    OcclusionTracker::stack_.push_back(stack_obj);
-    OcclusionTracker::stack_.push_back(stack_obj);
-  }
-
-  explicit MockOcclusionTracker(const gfx::Rect& screen_scissor_rect)
-      : OcclusionTracker(screen_scissor_rect) {
-    OcclusionTracker::StackObject stack_obj;
-    OcclusionTracker::stack_.push_back(stack_obj);
-    OcclusionTracker::stack_.push_back(stack_obj);
-  }
-  MockOcclusionTracker(const MockOcclusionTracker&) = delete;
-
-  MockOcclusionTracker& operator=(const MockOcclusionTracker&) = delete;
-
-  void set_occluded_target_rect(const gfx::Rect& occluded) {
-    OcclusionTracker::stack_.back().occlusion_from_inside_target = occluded;
-  }
-
-  void set_occluded_target_rect_for_contributing_surface(
-      const gfx::Rect& occluded) {
-    OcclusionTracker::stack_[OcclusionTracker::stack_.size() - 2]
-        .occlusion_from_inside_target = occluded;
-  }
-};
-
-}  // namespace cc
-
-#endif  // CC_TEST_MOCK_OCCLUSION_TRACKER_H_
diff --git a/chrome/VERSION b/chrome/VERSION
index f850afc..1ddf5a9 100644
--- a/chrome/VERSION
+++ b/chrome/VERSION
@@ -1,4 +1,4 @@
 MAJOR=127
 MINOR=0
-BUILD=6485
+BUILD=6486
 PATCH=0
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
index a55aae0..bc95669 100644
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -744,7 +744,6 @@
   "java/src/org/chromium/chrome/browser/init/ChromeActivityNativeDelegate.java",
   "java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java",
   "java/src/org/chromium/chrome/browser/init/ChromeLifetimeController.java",
-  "java/src/org/chromium/chrome/browser/init/ChromeStartupDelegate.java",
   "java/src/org/chromium/chrome/browser/init/EmptyBrowserParts.java",
   "java/src/org/chromium/chrome/browser/init/LaunchFailedActivity.java",
   "java/src/org/chromium/chrome/browser/init/MinimalBrowserStartupUtils.java",
diff --git a/chrome/android/features/start_surface/javatests/src/org/chromium/chrome/features/start_surface/StartSurfaceMVTilesTest.java b/chrome/android/features/start_surface/javatests/src/org/chromium/chrome/features/start_surface/StartSurfaceMVTilesTest.java
index f7a57b9..ff6664f 100644
--- a/chrome/android/features/start_surface/javatests/src/org/chromium/chrome/features/start_surface/StartSurfaceMVTilesTest.java
+++ b/chrome/android/features/start_surface/javatests/src/org/chromium/chrome/features/start_surface/StartSurfaceMVTilesTest.java
@@ -161,11 +161,8 @@
     @MediumTest
     @Feature({"StartSurface"})
     @CommandLineFlags.Add({START_SURFACE_TEST_SINGLE_ENABLED_PARAMS})
-    @EnableFeatures({
-        ChromeFeatureList.SURFACE_POLISH,
-        ChromeFeatureList.MAGIC_STACK_ANDROID
-    })
-    public void testTapMVTilesInSingleSurfaceWithSurfacePolish() {
+    @EnableFeatures({ChromeFeatureList.MAGIC_STACK_ANDROID})
+    public void testTapMVTilesInSingleSurfaceWithMagicStack() {
         testTapMVTilesInSingleSurfaceImpl();
     }
 
@@ -352,8 +349,7 @@
     @MediumTest
     @Feature({"StartSurface"})
     @CommandLineFlags.Add({START_SURFACE_TEST_SINGLE_ENABLED_PARAMS})
-    @EnableFeatures(ChromeFeatureList.SURFACE_POLISH)
-    public void test1RowMvtOnStartSurfaceAfterPolish() {
+    public void testMvtOnStartSurface() {
         if (!mImmediateReturn) {
             StartSurfaceTestUtils.pressHomePageButton(mActivityTestRule.getActivity());
         }
diff --git a/chrome/android/features/start_surface/javatests/src/org/chromium/chrome/features/start_surface/StartSurfaceTest.java b/chrome/android/features/start_surface/javatests/src/org/chromium/chrome/features/start_surface/StartSurfaceTest.java
index c8b120a..96ada20 100644
--- a/chrome/android/features/start_surface/javatests/src/org/chromium/chrome/features/start_surface/StartSurfaceTest.java
+++ b/chrome/android/features/start_surface/javatests/src/org/chromium/chrome/features/start_surface/StartSurfaceTest.java
@@ -983,9 +983,8 @@
     @Test
     @MediumTest
     @Feature({"StartSurface"})
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH + "<Study"})
     @CommandLineFlags.Add({START_SURFACE_TEST_SINGLE_ENABLED_PARAMS})
-    public void testStartSurfaceBackgroundColorAfterPolish() {
+    public void testStartSurfaceBackgroundColor() {
         if (!mImmediateReturn) return;
         ChromeTabbedActivity cta = mActivityTestRule.getActivity();
         StartSurfaceTestUtils.waitForStartSurfaceVisible(
@@ -1028,8 +1027,7 @@
     @LargeTest
     @Feature({"StartSurface"})
     @CommandLineFlags.Add({START_SURFACE_TEST_SINGLE_ENABLED_PARAMS})
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
-    public void testFakeOmniboxPolish() {
+    public void testFakeOmnibox() {
         if (!mImmediateReturn) {
             StartSurfaceTestUtils.pressHomePageButton(mActivityTestRule.getActivity());
         }
diff --git a/chrome/android/features/tab_ui/BUILD.gn b/chrome/android/features/tab_ui/BUILD.gn
index 41ba5de..00bfaf5 100644
--- a/chrome/android/features/tab_ui/BUILD.gn
+++ b/chrome/android/features/tab_ui/BUILD.gn
@@ -46,6 +46,7 @@
     "java/res/drawable/price_card_scrim.xml",
     "java/res/drawable/selected_tab_background.xml",
     "java/res/drawable/selected_tab_background_incognito.xml",
+    "java/res/drawable/sleep_auto.xml",
     "java/res/drawable/tab_cleanup_message_card_icon_bg.xml",
     "java/res/drawable/tab_grid_card_background.xml",
     "java/res/drawable/tab_grid_dialog_background.xml",
@@ -64,18 +65,19 @@
     "java/res/drawable/tablet_tab_switcher_empty_state_illustration.xml",
     "java/res/drawable/ungroup_bar_background.xml",
     "java/res/layout/action_confirmation_dialog.xml",
+    "java/res/layout/archived_tabs_message_card_view.xml",
     "java/res/layout/bottom_tab_strip_toolbar.xml",
     "java/res/layout/color_picker_item.xml",
     "java/res/layout/custom_message_card_item.xml",
     "java/res/layout/data_sharing_bottom_sheet.xml",
     "java/res/layout/data_sharing_group_bar.xml",
-    "java/res/layout/declutter_message_card_layout.xml",
     "java/res/layout/incognito_description_container_layout.xml",
     "java/res/layout/iph_drag_and_drop_dialog_layout.xml",
     "java/res/layout/large_message_card_item.xml",
     "java/res/layout/price_card.xml",
     "java/res/layout/strip_tab_drag_shadow_view.xml",
     "java/res/layout/tab_grid_card_item.xml",
+    "java/res/layout/tab_grid_card_item_layout.xml",
     "java/res/layout/tab_grid_dialog_layout.xml",
     "java/res/layout/tab_grid_message_card_item.xml",
     "java/res/layout/tab_group_color_picker_container.xml",
diff --git a/chrome/android/features/tab_ui/java/res/drawable/sleep_auto.xml b/chrome/android/features/tab_ui/java/res/drawable/sleep_auto.xml
new file mode 100644
index 0000000..f6b5c72
--- /dev/null
+++ b/chrome/android/features/tab_ui/java/res/drawable/sleep_auto.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright 2024 The Chromium Authors
+Use of this source code is governed by a BSD-style license that can be
+found in the LICENSE file.
+-->
+
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+  <group>
+    <clip-path
+        android:pathData="M0,0h24v24h-24z"/>
+    <path
+        android:pathData="M12.075,22C10.675,22 9.358,21.733 8.125,21.2C6.908,20.667 5.842,19.95 4.925,19.05C4.025,18.133 3.308,17.067 2.775,15.85C2.242,14.617 1.975,13.3 1.975,11.9C1.975,9.467 2.75,7.325 4.3,5.475C5.85,3.608 7.825,2.45 10.225,2C9.925,3.65 10.017,5.267 10.5,6.85C10.983,8.417 11.817,9.792 13,10.975C14.183,12.158 15.558,12.992 17.125,13.475C18.708,13.958 20.325,14.05 21.975,13.75C21.542,16.15 20.392,18.125 18.525,19.675C16.658,21.225 14.508,22 12.075,22ZM12.075,20C13.542,20 14.9,19.633 16.15,18.9C17.4,18.167 18.383,17.158 19.1,15.875C17.667,15.742 16.308,15.383 15.025,14.8C13.742,14.2 12.592,13.392 11.575,12.375C10.558,11.358 9.75,10.208 9.15,8.925C8.55,7.642 8.192,6.283 8.075,4.85C6.792,5.567 5.783,6.558 5.05,7.825C4.333,9.075 3.975,10.433 3.975,11.9C3.975,14.15 4.758,16.067 6.325,17.65C7.908,19.217 9.825,20 12.075,20ZM17.5,12C17.5,10.467 16.967,9.167 15.9,8.1C14.833,7.033 13.533,6.5 12,6.5C13.533,6.5 14.833,5.967 15.9,4.9C16.967,3.833 17.5,2.533 17.5,1C17.5,2.533 18.033,3.833 19.1,4.9C20.167,5.967 21.467,6.5 23,6.5C21.467,6.5 20.167,7.033 19.1,8.1C18.033,9.167 17.5,10.467 17.5,12Z"
+        android:fillColor="@macro/default_icon_color_accent1"/>
+  </group>
+</vector>
diff --git a/chrome/android/features/tab_ui/java/res/layout/archived_tabs_message_card_view.xml b/chrome/android/features/tab_ui/java/res/layout/archived_tabs_message_card_view.xml
new file mode 100644
index 0000000..5fce26a
--- /dev/null
+++ b/chrome/android/features/tab_ui/java/res/layout/archived_tabs_message_card_view.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright 2024 The Chromium Authors
+Use of this source code is governed by a BSD-style license that can be
+found in the LICENSE file.
+-->
+
+<org.chromium.components.browser_ui.widget.MaterialCardViewNoShadow
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content">
+
+    <androidx.constraintlayout.widget.ConstraintLayout
+        android:id="@+id/container"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:padding="16dp">
+
+        <ImageView
+            android:id="@+id/start_image"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:src="@drawable/sleep_auto"
+            app:tint="@macro/default_icon_color_accent1"
+            android:scaleType="center"
+            android:focusable="false"
+            android:importantForAccessibility="no"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintBottom_toBottomOf="parent"/>
+
+        <LinearLayout
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="start"
+            android:orientation="vertical"
+            android:paddingStart="12dp"
+            app:layout_constraintStart_toEndOf="@+id/start_image"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintBottom_toBottomOf="parent">
+
+            <TextView
+                android:id="@+id/title"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:maxLines="1"
+                android:ellipsize="end"
+                android:textAppearance="@style/TextAppearance.TextLarge.Primary" />
+
+            <TextView
+                android:id="@+id/subtitle"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:maxLines="1"
+                android:ellipsize="end"
+                android:textAppearance="@style/TextAppearance.TextSmall.Secondary" />
+        </LinearLayout>
+
+        <ImageView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:src="@drawable/chevron_right"
+            app:tint="@color/default_icon_color_tint_list"
+            android:scaleType="center"
+            android:focusable="false"
+            android:importantForAccessibility="no"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintBottom_toBottomOf="parent"/>
+
+
+
+    </androidx.constraintlayout.widget.ConstraintLayout>
+</org.chromium.components.browser_ui.widget.MaterialCardViewNoShadow>
\ No newline at end of file
diff --git a/chrome/android/features/tab_ui/java/res/layout/declutter_message_card_layout.xml b/chrome/android/features/tab_ui/java/res/layout/declutter_message_card_layout.xml
deleted file mode 100644
index 3739f89c..0000000
--- a/chrome/android/features/tab_ui/java/res/layout/declutter_message_card_layout.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-Copyright 2023 The Chromium Authors
-Use of this source code is governed by a BSD-style license that can be
-found in the LICENSE file.
--->
-<org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardView
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    style="@style/MaterialCardStyle">
-    <LinearLayout
-        android:layout_height="wrap_content"
-        android:layout_width="match_parent"
-        android:orientation="horizontal">
-        <TextView
-            android:id="@+id/declutter_info_text"
-            android:accessibilityHeading="true"
-            android:focusable="true"
-            android:layout_width="0dp"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center_vertical"
-            android:layout_weight="1"
-            android:paddingStart="14dp"
-            android:singleLine="true"
-            android:ellipsize="end"
-            style="@style/TextAppearance.TextMedium.Primary" />
-        <ImageButton
-            android:id="@+id/declutter_settings"
-            android:layout_width="@dimen/tab_list_card_action_button_size"
-            android:layout_height="@dimen/tab_list_card_action_button_size"
-            android:layout_gravity="end"
-            android:background="?android:attr/selectableItemBackground"
-            android:src="@drawable/ic_settings_gear_24dp"
-            app:tint="@macro/default_icon_color"
-            android:contentDescription="@string/tab_declutter_message_card_review_settings_description" />
-        <ImageButton
-            android:id="@+id/declutter_expand_button"
-            android:layout_width="@dimen/tab_list_card_action_button_size"
-            android:layout_height="@dimen/tab_list_card_action_button_size"
-            android:layout_marginEnd="@dimen/tab_list_selected_margin"
-            android:layout_gravity="end"
-            android:background="?android:attr/selectableItemBackground"
-            android:src="@drawable/ic_expand_more_horizontal_black_24dp"
-            app:tint="@macro/default_icon_color"
-            android:contentDescription="@string/tab_declutter_message_card_review_archived_tabs_description" />
-    </LinearLayout>
-</org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardView>
\ No newline at end of file
diff --git a/chrome/android/features/tab_ui/java/res/layout/tab_grid_card_item.xml b/chrome/android/features/tab_ui/java/res/layout/tab_grid_card_item.xml
index 5343cea..2db74f4 100644
--- a/chrome/android/features/tab_ui/java/res/layout/tab_grid_card_item.xml
+++ b/chrome/android/features/tab_ui/java/res/layout/tab_grid_card_item.xml
@@ -10,82 +10,6 @@
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="wrap_content">
-
-    <org.chromium.ui.widget.ChromeImageView
-        android:id="@+id/background_view"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:background="@drawable/tab_grid_card_background"
-        android:layout_margin="@dimen/tab_grid_card_margin"
-        android:visibility="gone"
-        android:importantForAccessibility="no" />
-    <FrameLayout
-        android:id="@+id/content_view"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent">
-        <RelativeLayout
-            android:id="@+id/card_view"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:layout_gravity="center"
-            android:background="@drawable/tab_grid_card_background"
-            android:layout_margin="@dimen/tab_grid_card_margin">
-            <ImageView
-                android:id="@+id/tab_favicon"
-                android:layout_height="@dimen/tab_grid_card_header_height"
-                android:layout_width="wrap_content"
-                android:minWidth="@dimen/tab_grid_card_favicon_padding"
-                android:adjustViewBounds="true"
-                android:importantForAccessibility="no"
-                app:srcCompat="@drawable/ic_globe_24dp" />
-            <TextView
-                android:id="@+id/tab_title"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_toEndOf="@id/tab_favicon"
-                android:layout_marginEnd="@dimen/tab_grid_card_title_end_margin"
-                android:requiresFadingEdge="horizontal"
-                android:fadingEdgeLength="@dimen/tab_grid_card_title_fading_length"
-                android:minHeight="@dimen/tab_grid_card_header_height"
-                android:gravity="center_vertical"
-                android:ellipsize="none"
-                android:singleLine="true"
-                android:textAppearance="@style/TextAppearance.TextMediumThick.Primary"/>
-            <org.chromium.chrome.browser.tab_ui.TabThumbnailView
-                android:id="@+id/tab_thumbnail"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:layout_below="@id/tab_title"
-                android:layout_marginLeft="@dimen/tab_grid_card_thumbnail_margin"
-                android:layout_marginRight="@dimen/tab_grid_card_thumbnail_margin"
-                android:layout_marginBottom="@dimen/tab_grid_card_thumbnail_margin"
-                android:gravity="center_horizontal"
-                android:scaleType="fitCenter"
-                android:adjustViewBounds="false"
-                android:importantForAccessibility="no"
-                android:src="@color/thumbnail_placeholder_on_primary_bg"
-                app:cornerRadiusTopStart="@dimen/tab_grid_card_thumbnail_corner_radius_top"
-                app:cornerRadiusTopEnd="@dimen/tab_grid_card_thumbnail_corner_radius_top"
-                app:cornerRadiusBottomStart="@dimen/tab_grid_card_thumbnail_corner_radius_bottom"
-                app:cornerRadiusBottomEnd="@dimen/tab_grid_card_thumbnail_corner_radius_bottom"/>
-            <org.chromium.chrome.browser.tasks.tab_management.PriceCardView
-                android:id="@+id/price_info_box_outer"
-                android:layout_below="@id/tab_title"
-                android:background="@drawable/price_card_scrim"
-                android:layout_width="match_parent"
-                android:layout_height="56dp"
-                android:layout_marginStart="4dp"
-                android:visibility="gone"/>
-        </RelativeLayout>
-        <org.chromium.ui.widget.ChromeImageView
-            android:id="@+id/action_button"
-            android:layout_width="@dimen/tab_list_card_action_button_size"
-            android:layout_height="@dimen/tab_list_card_action_button_size"
-            android:layout_margin="@dimen/tab_list_card_action_button_margin"
-            android:scaleType="center"
-            android:layout_gravity="end"
-            android:tint="@macro/default_icon_color"
-            tools:ignore="ContentDescription" />
-    </FrameLayout>
+    <include layout="@layout/tab_grid_card_item_layout"/>
 
 </org.chromium.chrome.browser.tasks.tab_management.TabGridView>
\ No newline at end of file
diff --git a/chrome/android/features/tab_ui/java/res/layout/tab_grid_card_item_layout.xml b/chrome/android/features/tab_ui/java/res/layout/tab_grid_card_item_layout.xml
new file mode 100644
index 0000000..53b1f401
--- /dev/null
+++ b/chrome/android/features/tab_ui/java/res/layout/tab_grid_card_item_layout.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright 2019 The Chromium Authors
+Use of this source code is governed by a BSD-style license that can be
+found in the LICENSE file.
+-->
+<merge xmlns:android="http://schemas.android.com/apk/res/android"
+       xmlns:app="http://schemas.android.com/apk/res-auto"
+       xmlns:tools="http://schemas.android.com/tools">
+
+    <org.chromium.ui.widget.ChromeImageView
+        android:id="@+id/background_view"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="@drawable/tab_grid_card_background"
+        android:layout_margin="@dimen/tab_grid_card_margin"
+        android:visibility="gone"
+        android:importantForAccessibility="no" />
+    <FrameLayout
+        android:id="@+id/content_view"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent">
+        <RelativeLayout
+            android:id="@+id/card_view"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            android:layout_gravity="center"
+            android:background="@drawable/tab_grid_card_background"
+            android:layout_margin="@dimen/tab_grid_card_margin">
+            <ImageView
+                android:id="@+id/tab_favicon"
+                android:layout_height="@dimen/tab_grid_card_header_height"
+                android:layout_width="wrap_content"
+                android:minWidth="@dimen/tab_grid_card_favicon_padding"
+                android:adjustViewBounds="true"
+                android:importantForAccessibility="no"
+                app:srcCompat="@drawable/ic_globe_24dp" />
+            <TextView
+                android:id="@+id/tab_title"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_toEndOf="@id/tab_favicon"
+                android:layout_marginEnd="@dimen/tab_grid_card_title_end_margin"
+                android:requiresFadingEdge="horizontal"
+                android:fadingEdgeLength="@dimen/tab_grid_card_title_fading_length"
+                android:minHeight="@dimen/tab_grid_card_header_height"
+                android:gravity="center_vertical"
+                android:ellipsize="none"
+                android:singleLine="true"
+                android:textAppearance="@style/TextAppearance.TextMediumThick.Primary"/>
+            <org.chromium.chrome.browser.tab_ui.TabThumbnailView
+                android:id="@+id/tab_thumbnail"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_below="@id/tab_title"
+                android:layout_marginLeft="@dimen/tab_grid_card_thumbnail_margin"
+                android:layout_marginRight="@dimen/tab_grid_card_thumbnail_margin"
+                android:layout_marginBottom="@dimen/tab_grid_card_thumbnail_margin"
+                android:gravity="center_horizontal"
+                android:scaleType="fitCenter"
+                android:adjustViewBounds="false"
+                android:importantForAccessibility="no"
+                android:src="@color/thumbnail_placeholder_on_primary_bg"
+                app:cornerRadiusTopStart="@dimen/tab_grid_card_thumbnail_corner_radius_top"
+                app:cornerRadiusTopEnd="@dimen/tab_grid_card_thumbnail_corner_radius_top"
+                app:cornerRadiusBottomStart="@dimen/tab_grid_card_thumbnail_corner_radius_bottom"
+                app:cornerRadiusBottomEnd="@dimen/tab_grid_card_thumbnail_corner_radius_bottom"/>
+            <org.chromium.chrome.browser.tasks.tab_management.PriceCardView
+                android:id="@+id/price_info_box_outer"
+                android:layout_below="@id/tab_title"
+                android:background="@drawable/price_card_scrim"
+                android:layout_width="match_parent"
+                android:layout_height="56dp"
+                android:layout_marginStart="4dp"
+                android:visibility="gone"/>
+        </RelativeLayout>
+        <org.chromium.ui.widget.ChromeImageView
+            android:id="@+id/action_button"
+            android:layout_width="@dimen/tab_list_card_action_button_size"
+            android:layout_height="@dimen/tab_list_card_action_button_size"
+            android:layout_margin="@dimen/tab_list_card_action_button_margin"
+            android:scaleType="center"
+            android:layout_gravity="end"
+            android:tint="@macro/default_icon_color"
+            tools:ignore="ContentDescription" />
+    </FrameLayout>
+</merge>
\ No newline at end of file
diff --git a/chrome/android/features/tab_ui/java/res/layout/tab_grid_dialog_layout.xml b/chrome/android/features/tab_ui/java/res/layout/tab_grid_dialog_layout.xml
index ef64ae2..4c5022f 100644
--- a/chrome/android/features/tab_ui/java/res/layout/tab_grid_dialog_layout.xml
+++ b/chrome/android/features/tab_ui/java/res/layout/tab_grid_dialog_layout.xml
@@ -62,6 +62,6 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:alpha="0.0">
-        <include layout="@layout/tab_grid_card_item"/>
+       <include layout="@layout/tab_grid_card_item_layout"/>
     </FrameLayout>
 </org.chromium.chrome.browser.tasks.tab_management.TabGridDialogView>
\ No newline at end of file
diff --git a/chrome/android/features/tab_ui/java/res/layout/tab_group_row.xml b/chrome/android/features/tab_ui/java/res/layout/tab_group_row.xml
index 188fc8d0..26945f8 100644
--- a/chrome/android/features/tab_ui/java/res/layout/tab_group_row.xml
+++ b/chrome/android/features/tab_ui/java/res/layout/tab_group_row.xml
@@ -9,17 +9,16 @@
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="96dp"
+  android:gravity="center_vertical"
   android:orientation="horizontal"
-  android:paddingHorizontal="16dp"
-  android:paddingVertical="8dp"
   tools:ignore="UnusedResources">
 
   <androidx.constraintlayout.widget.ConstraintLayout
     android:id="@+id/tab_group_start_icon"
     android:layout_width="80dp"
     android:layout_height="80dp"
-    android:background="@drawable/tab_group_start_icon_bg"
-    android:importantForAccessibility="no">
+    android:layout_marginStart="16dp"
+    android:background="@drawable/tab_group_start_icon_bg">
     <!-- Code will later adjust these to each occupy different corners. -->
     <include layout="@layout/tab_group_favicon_quarter" />
     <include layout="@layout/tab_group_favicon_quarter" />
@@ -82,7 +81,6 @@
     android:id="@+id/more"
     android:layout_width="@dimen/min_touch_target_size"
     android:layout_height="match_parent"
-    android:layout_marginEnd="-16dp"
     android:background="@null"
     android:importantForAccessibility="no"
     android:src="@drawable/ic_more_vert_24dp"
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewBinder.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewBinder.java
new file mode 100644
index 0000000..ddfc89e
--- /dev/null
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewBinder.java
@@ -0,0 +1,52 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.tasks.tab_management;
+
+import android.content.Context;
+import android.view.View;
+import android.widget.TextView;
+
+import org.chromium.chrome.R;
+import org.chromium.ui.modelutil.PropertyKey;
+import org.chromium.ui.modelutil.PropertyModel;
+
+/** Binds the custom view for archived tabs. */
+public class ArchivedTabsCardViewBinder {
+    /**
+     * Binder method for the archived tabs custom message
+     *
+     * @param model The {@link PropertyModel} for the view.
+     * @param view The {@link View} to bind.
+     * @param key The {@link PropertyKey} to bind.
+     */
+    public static void bind(PropertyModel model, View view, PropertyKey key) {
+        Context context = view.getContext();
+        if (ArchivedTabsCardViewProperties.NUMBER_OF_ARCHIVED_TABS == key) {
+            int numInactiveTabs = model.get(ArchivedTabsCardViewProperties.NUMBER_OF_ARCHIVED_TABS);
+            String title =
+                    context.getResources()
+                            .getQuantityString(
+                                    R.plurals.archived_tab_card_title,
+                                    numInactiveTabs,
+                                    numInactiveTabs);
+            ((TextView) view.findViewById(R.id.title)).setText(title);
+        } else if (ArchivedTabsCardViewProperties.ARCHIVE_TIME_DELTA_DAYS == key) {
+            int inactiveTimeDeltaDays =
+                    model.get(ArchivedTabsCardViewProperties.ARCHIVE_TIME_DELTA_DAYS);
+            String subtitle =
+                    context.getResources()
+                            .getQuantityString(
+                                    R.plurals.archived_tab_card_subtitle,
+                                    inactiveTimeDeltaDays,
+                                    inactiveTimeDeltaDays);
+            ((TextView) view.findViewById(R.id.subtitle)).setText(subtitle);
+        } else if (ArchivedTabsCardViewProperties.CLICK_HANDLER == key) {
+            view.setOnClickListener(
+                    v -> {
+                        ((Runnable) model.get(ArchivedTabsCardViewProperties.CLICK_HANDLER)).run();
+                    });
+        }
+    }
+}
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewProperties.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewProperties.java
new file mode 100644
index 0000000..d69fb8a
--- /dev/null
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewProperties.java
@@ -0,0 +1,22 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.tasks.tab_management;
+
+import org.chromium.ui.modelutil.PropertyKey;
+import org.chromium.ui.modelutil.PropertyModel.ReadableObjectPropertyKey;
+import org.chromium.ui.modelutil.PropertyModel.WritableIntPropertyKey;
+
+/** List of properties used by the archived_tab_message_card_view layout. */
+public class ArchivedTabsCardViewProperties {
+    public static final WritableIntPropertyKey NUMBER_OF_ARCHIVED_TABS =
+            new WritableIntPropertyKey();
+    public static final WritableIntPropertyKey ARCHIVE_TIME_DELTA_DAYS =
+            new WritableIntPropertyKey();
+    public static final ReadableObjectPropertyKey<Runnable> CLICK_HANDLER =
+            new ReadableObjectPropertyKey<>();
+
+    public static final PropertyKey[] ALL_KEYS =
+            new PropertyKey[] {NUMBER_OF_ARCHIVED_TABS, ARCHIVE_TIME_DELTA_DAYS, CLICK_HANDLER};
+}
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsMessageService.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsMessageService.java
new file mode 100644
index 0000000..50c9056f
--- /dev/null
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsMessageService.java
@@ -0,0 +1,191 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.tasks.tab_management;
+
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.ARCHIVE_TIME_DELTA_DAYS;
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.CLICK_HANDLER;
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.NUMBER_OF_ARCHIVED_TABS;
+
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.View;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+
+import org.chromium.chrome.R;
+import org.chromium.chrome.browser.app.tabmodel.ArchivedTabModelOrchestrator;
+import org.chromium.chrome.browser.tab.Tab;
+import org.chromium.chrome.browser.tab.TabArchiveSettings;
+import org.chromium.chrome.browser.tab.TabCreationState;
+import org.chromium.chrome.browser.tab.TabLaunchType;
+import org.chromium.chrome.browser.tabmodel.TabModel;
+import org.chromium.chrome.browser.tabmodel.TabModelObserver;
+import org.chromium.chrome.browser.tasks.tab_management.MessageCardViewProperties.MessageCardScope;
+import org.chromium.chrome.browser.tasks.tab_management.TabListModel.CardProperties.ModelType;
+import org.chromium.ui.modelutil.PropertyModel;
+import org.chromium.ui.modelutil.PropertyModelChangeProcessor;
+
+import java.util.concurrent.TimeUnit;
+
+/** A message service to surface information about archived tabs. */
+public class ArchivedTabsMessageService extends MessageService
+        implements CustomMessageCardProvider {
+
+    static class ArchivedTabsMessageData implements MessageService.CustomMessageData {
+        private CustomMessageCardProvider mProvider;
+
+        public ArchivedTabsMessageData(CustomMessageCardProvider provider) {
+            mProvider = provider;
+        }
+
+        @Override
+        public CustomMessageCardProvider getProvider() {
+            return mProvider;
+        }
+    }
+
+    private final ArchivedTabModelOrchestrator.Observer mArchivedTabModelOrchestratorObserver =
+            new ArchivedTabModelOrchestrator.Observer() {
+                @Override
+                public void onTabModelCreated(TabModel archivedTabModel) {
+                    mArchivedTabModelOrchestrator.removeObserver(this);
+
+                    mArchivedTabModel = archivedTabModel;
+                    mArchivedTabModel.addObserver(mArchivedTabModelObserver);
+
+                    mCustomCardView =
+                            LayoutInflater.from(mContext)
+                                    .inflate(R.layout.archived_tabs_message_card_view, null);
+                    mCustomCardModel =
+                            new PropertyModel.Builder(ArchivedTabsCardViewProperties.ALL_KEYS)
+                                    .with(
+                                            CLICK_HANDLER,
+                                            ArchivedTabsMessageService.this::openArchivedTabsDialog)
+                                    .build();
+                    PropertyModelChangeProcessor.create(
+                            mCustomCardModel, mCustomCardView, ArchivedTabsCardViewBinder::bind);
+
+                    if (archivedTabModel.getCount() > 0) {
+                        maybeSendMessageToQueue();
+                    }
+                }
+            };
+
+    private final TabModelObserver mArchivedTabModelObserver =
+            new TabModelObserver() {
+                @Override
+                public void didAddTab(
+                        Tab tab,
+                        @TabLaunchType int type,
+                        @TabCreationState int creationState,
+                        boolean markedForSelection) {
+                    updateModelProperties();
+                    if (mArchivedTabModel.getCount() > 0) {
+                        maybeSendMessageToQueue();
+                    }
+                }
+
+                @Override
+                public void tabRemoved(Tab tab) {
+                    updateModelProperties();
+                    if (mArchivedTabModel.getCount() <= 0) {
+                        maybeInvalidatePreviouslySentMessage();
+                    }
+                }
+            };
+
+    private final Context mContext;
+    private final TabArchiveSettings mTabArchiveSettings;
+    private final ArchivedTabModelOrchestrator mArchivedTabModelOrchestrator;
+
+    private TabModel mArchivedTabModel;
+    private View mCustomCardView;
+    private PropertyModel mCustomCardModel;
+    private boolean mMessageSentToQueue;
+
+    ArchivedTabsMessageService(
+            @NonNull Context context,
+            @NonNull ArchivedTabModelOrchestrator archivedTabModelOrchestrator) {
+        super(MessageType.ARCHIVED_TABS_MESSAGE);
+
+        mContext = context;
+        mArchivedTabModelOrchestrator = archivedTabModelOrchestrator;
+        if (mArchivedTabModelOrchestrator.isTabModelInitialized()) {
+            mArchivedTabModelOrchestratorObserver.onTabModelCreated(
+                    mArchivedTabModelOrchestrator
+                            .getTabModelSelector()
+                            .getModel(/* incognito= */ false));
+        } else {
+            mArchivedTabModelOrchestrator.addObserver(mArchivedTabModelOrchestratorObserver);
+        }
+        mTabArchiveSettings = mArchivedTabModelOrchestrator.getTabArchiveSettings();
+    }
+
+    // CustomMessageCardViewProvider implementation.
+
+    @Override
+    public View getCustomView() {
+        return mCustomCardView;
+    }
+
+    @Override
+    public @MessageCardScope int getMessageCardVisibilityControl() {
+        return MessageCardViewProperties.MessageCardScope.REGULAR;
+    }
+
+    @Override
+    public @ModelType int getCardType() {
+        return TabListModel.CardProperties.ModelType.MESSAGE;
+    }
+
+    @Override
+    public void setIsIncognito(boolean isIncognito) {
+        // No-op
+    }
+
+    // Private methods.
+
+    @VisibleForTesting
+    void maybeSendMessageToQueue() {
+        if (mMessageSentToQueue) return;
+        sendAvailabilityNotification(new ArchivedTabsMessageData(this));
+        mMessageSentToQueue = true;
+    }
+
+    @VisibleForTesting
+    void maybeInvalidatePreviouslySentMessage() {
+        if (!mMessageSentToQueue) return;
+        sendInvalidNotification();
+        mMessageSentToQueue = false;
+    }
+
+    private void openArchivedTabsDialog() {
+        // TODO(crbug.com/340581912): Create/show the ui to manage archived tabs.
+    }
+
+    private void updateModelProperties() {
+        mCustomCardModel.set(NUMBER_OF_ARCHIVED_TABS, mArchivedTabModel.getCount());
+        mCustomCardModel.set(ARCHIVE_TIME_DELTA_DAYS, getArchiveTimeDeltaInDays());
+    }
+
+    private int getArchiveTimeDeltaInDays() {
+        return (int) TimeUnit.HOURS.toDays(mTabArchiveSettings.getArchiveTimeDeltaHours());
+    }
+
+    // Testing methods.
+
+    PropertyModel getCustomCardModelForTesting() {
+        return mCustomCardModel;
+    }
+
+    ArchivedTabModelOrchestrator.Observer getArchivedTabModelOrchestratorObserverForTesting() {
+        return mArchivedTabModelOrchestratorObserver;
+    }
+
+    TabModelObserver getArchivedTabModelObserverForTesting() {
+        return mArchivedTabModelObserver;
+    }
+}
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinder.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinder.java
index 7f9fe98..bcf3fbce 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinder.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinder.java
@@ -11,24 +11,15 @@
 
 /** ViewBinder for CustomMessageCardItem. */
 public class CustomMessageCardViewBinder {
-    static class ViewHolder {
-        final CustomMessageCardView mContentView;
-        final CustomMessageCardProvider mProvider;
-
-        public ViewHolder(CustomMessageCardView contentView, CustomMessageCardProvider provider) {
-            mContentView = contentView;
-            mProvider = provider;
-        }
-    }
-
-    public static void bind(PropertyModel model, ViewHolder viewHolder, PropertyKey propertyKey) {
-        if (CustomMessageCardViewProperties.MESSAGE_CARD_VIEW == propertyKey) {
-            viewHolder.mContentView.setChildView(
-                    model.get(CustomMessageCardViewProperties.MESSAGE_CARD_VIEW));
+    public static void bind(
+            PropertyModel model, CustomMessageCardView view, PropertyKey propertyKey) {
+        if (CustomMessageCardViewProperties.CUSTOM_VIEW == propertyKey) {
+            view.setChildView(model.get(CustomMessageCardViewProperties.CUSTOM_VIEW));
         } else if (CARD_ALPHA == propertyKey) {
-            viewHolder.mContentView.setAlpha(model.get(CARD_ALPHA));
+            view.setAlpha(model.get(CARD_ALPHA));
         } else if (MessageCardViewProperties.IS_INCOGNITO == propertyKey) {
-            viewHolder.mProvider.setIsIncognito(model.get(MessageCardViewProperties.IS_INCOGNITO));
+            model.get(CustomMessageCardViewProperties.IS_INCOGNITO_CALLBACK)
+                    .onResult(model.get(MessageCardViewProperties.IS_INCOGNITO));
         }
     }
 }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewModel.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewModel.java
new file mode 100644
index 0000000..89a95e0
--- /dev/null
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewModel.java
@@ -0,0 +1,27 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.tasks.tab_management;
+
+import static org.chromium.chrome.browser.tasks.tab_management.TabListModel.CardProperties.CARD_ALPHA;
+import static org.chromium.chrome.browser.tasks.tab_management.TabListModel.CardProperties.CARD_TYPE;
+
+import org.chromium.ui.modelutil.PropertyModel;
+
+public class CustomMessageCardViewModel {
+    public static PropertyModel create(CustomMessageCardProvider provider) {
+        return new PropertyModel.Builder(CustomMessageCardViewProperties.ALL_KEYS)
+                .with(CustomMessageCardViewProperties.CUSTOM_VIEW, provider.getCustomView())
+                .with(
+                        MessageCardViewProperties
+                                .MESSAGE_CARD_VISIBILITY_CONTROL_IN_REGULAR_AND_INCOGNITO_MODE,
+                        MessageCardViewProperties.MessageCardScope.REGULAR)
+                .with(
+                        CustomMessageCardViewProperties.IS_INCOGNITO_CALLBACK,
+                        provider::setIsIncognito)
+                .with(CARD_TYPE, TabListModel.CardProperties.ModelType.MESSAGE)
+                .with(CARD_ALPHA, 1f)
+                .build();
+    }
+}
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewProperties.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewProperties.java
index 32372fbc..2c8e44f 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewProperties.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewProperties.java
@@ -11,20 +11,26 @@
 
 import android.view.View;
 
+import org.chromium.base.Callback;
 import org.chromium.ui.modelutil.PropertyKey;
-import org.chromium.ui.modelutil.PropertyModel;
+import org.chromium.ui.modelutil.PropertyModel.ReadableObjectPropertyKey;
 
 /** List of properties used by the CustomMessageCardItem. */
 public class CustomMessageCardViewProperties {
-    public static final PropertyModel.WritableObjectPropertyKey<View> MESSAGE_CARD_VIEW =
-            new PropertyModel.WritableObjectPropertyKey<>();
+    public static final ReadableObjectPropertyKey<View> CUSTOM_VIEW =
+            new ReadableObjectPropertyKey<>();
+
+    /** Binds the provider's setIsIncognito function to a property. */
+    public static final ReadableObjectPropertyKey<Callback<Boolean>> IS_INCOGNITO_CALLBACK =
+            new ReadableObjectPropertyKey<>();
 
     public static final PropertyKey[] ALL_KEYS =
             new PropertyKey[] {
-                CARD_ALPHA,
-                CARD_TYPE,
+                CUSTOM_VIEW,
                 IS_INCOGNITO,
+                IS_INCOGNITO_CALLBACK,
                 MESSAGE_CARD_VISIBILITY_CONTROL_IN_REGULAR_AND_INCOGNITO_MODE,
-                MESSAGE_CARD_VIEW
+                CARD_ALPHA,
+                CARD_TYPE
             };
 }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardView.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardView.java
deleted file mode 100644
index 9d0d3d3cb..0000000
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardView.java
+++ /dev/null
@@ -1,50 +0,0 @@
-// Copyright 2024 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.chrome.browser.tasks.tab_management;
-
-import android.content.Context;
-import android.util.AttributeSet;
-import android.widget.ImageButton;
-import android.widget.TextView;
-
-import androidx.annotation.Nullable;
-
-import org.chromium.chrome.tab_ui.R;
-import org.chromium.components.browser_ui.widget.MaterialCardViewNoShadow;
-
-/**
- * A message card view for the declutter entrypoint that is laid out as a horizontal span, including
- * info text, a settings button and an expand icon.
- */
-public class DeclutterMessageCardView extends MaterialCardViewNoShadow {
-    private TextView mDescription;
-    private ImageButton mSettingsButton;
-    private ImageButton mExpandButton;
-
-    public DeclutterMessageCardView(Context context, @Nullable AttributeSet attrs) {
-        super(context, attrs);
-    }
-
-    @Override
-    protected void onFinishInflate() {
-        super.onFinishInflate();
-
-        mDescription = findViewById(R.id.declutter_info_text);
-        mSettingsButton = findViewById(R.id.declutter_settings);
-        mExpandButton = findViewById(R.id.declutter_expand_button);
-    }
-
-    public void setDescriptionText(String template) {
-        mDescription.setText(template);
-    }
-
-    public void setSettingsButtonOnClickListener(OnClickListener listener) {
-        mSettingsButton.setOnClickListener(listener);
-    }
-
-    public void setExpandButtonOnClickListener(OnClickListener listener) {
-        mExpandButton.setOnClickListener(listener);
-    }
-}
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewBinder.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewBinder.java
deleted file mode 100644
index 5744b2c3..0000000
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewBinder.java
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright 2024 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.chrome.browser.tasks.tab_management;
-
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.ARCHIVED_TABS_EXPAND_CLICK_HANDLER;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.ARCHIVED_TAB_COUNT;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.DECLUTTER_INFO_TEXT;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.DECLUTTER_SETTINGS_CLICK_HANDLER;
-
-import android.view.View;
-
-import org.chromium.ui.modelutil.PropertyKey;
-import org.chromium.ui.modelutil.PropertyModel;
-
-/** ViewBinder for the DeclutterMessageCard layout. */
-public class DeclutterMessageCardViewBinder {
-    public static void bind(PropertyModel model, View view, PropertyKey propertyKey) {
-        assert view instanceof DeclutterMessageCardView;
-
-        DeclutterMessageCardView itemView = (DeclutterMessageCardView) view;
-        if (propertyKey == DECLUTTER_INFO_TEXT || propertyKey == ARCHIVED_TAB_COUNT) {
-            itemView.setDescriptionText(
-                    itemView.getContext()
-                            .getResources()
-                            .getQuantityString(
-                                    model.get(DECLUTTER_INFO_TEXT),
-                                    model.get(ARCHIVED_TAB_COUNT),
-                                    model.get(ARCHIVED_TAB_COUNT)));
-        } else if (propertyKey == DECLUTTER_SETTINGS_CLICK_HANDLER) {
-            itemView.setSettingsButtonOnClickListener(
-                    (v) -> model.get(DECLUTTER_SETTINGS_CLICK_HANDLER).run());
-        } else if (propertyKey == ARCHIVED_TABS_EXPAND_CLICK_HANDLER) {
-            itemView.setExpandButtonOnClickListener(
-                    (v) -> model.get(ARCHIVED_TABS_EXPAND_CLICK_HANDLER).run());
-        }
-    }
-}
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewProperties.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewProperties.java
deleted file mode 100644
index e220f6d..0000000
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewProperties.java
+++ /dev/null
@@ -1,34 +0,0 @@
-// Copyright 2024 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.chrome.browser.tasks.tab_management;
-
-import org.chromium.ui.modelutil.PropertyKey;
-import org.chromium.ui.modelutil.PropertyModel.WritableIntPropertyKey;
-import org.chromium.ui.modelutil.PropertyModel.WritableObjectPropertyKey;
-
-/** List of properties used by the DeclutterMessageCard layout. */
-public class DeclutterMessageCardViewProperties {
-    /** The string id of the info text shown on the message card. */
-    public static final WritableIntPropertyKey DECLUTTER_INFO_TEXT = new WritableIntPropertyKey();
-
-    /** The tab count of all tabs in the archived tab model. */
-    public static final WritableIntPropertyKey ARCHIVED_TAB_COUNT = new WritableIntPropertyKey();
-
-    /** The handler for the settings icon on the declutter message card. */
-    public static final WritableObjectPropertyKey<Runnable> DECLUTTER_SETTINGS_CLICK_HANDLER =
-            new WritableObjectPropertyKey<>();
-
-    /** The handler for the expand icon when accessing the archived tabs interface. */
-    public static final WritableObjectPropertyKey<Runnable> ARCHIVED_TABS_EXPAND_CLICK_HANDLER =
-            new WritableObjectPropertyKey<>();
-
-    public static final PropertyKey[] ALL_KEYS =
-            new PropertyKey[] {
-                DECLUTTER_INFO_TEXT,
-                ARCHIVED_TAB_COUNT,
-                DECLUTTER_SETTINGS_CLICK_HANDLER,
-                ARCHIVED_TABS_EXPAND_CLICK_HANDLER
-            };
-}
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IphMessageService.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IphMessageService.java
index 31e5067..09898dd 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IphMessageService.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IphMessageService.java
@@ -76,7 +76,11 @@
     @Override
     public void addObserver(MessageObserver observer) {
         super.addObserver(observer);
-        mTracker.addOnInitializedCallback(mInitializedCallback);
+        if (mTracker.isInitialized()) {
+            mInitializedCallback.onResult(true);
+        } else {
+            mTracker.addOnInitializedCallback(mInitializedCallback);
+        }
     }
 
     protected Callback<Boolean> getInitializedCallbackForTesting() {
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardProviderMediator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardProviderMediator.java
index a9d69ad7..7ee6daa 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardProviderMediator.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardProviderMediator.java
@@ -4,6 +4,7 @@
 
 package org.chromium.chrome.browser.tasks.tab_management;
 
+import static org.chromium.chrome.browser.tasks.tab_management.MessageService.MessageType.ARCHIVED_TABS_MESSAGE;
 import static org.chromium.chrome.browser.tasks.tab_management.MessageService.MessageType.INCOGNITO_REAUTH_PROMO_MESSAGE;
 import static org.chromium.chrome.browser.tasks.tab_management.MessageService.MessageType.IPH;
 import static org.chromium.chrome.browser.tasks.tab_management.MessageService.MessageType.PRICE_MESSAGE;
@@ -137,6 +138,10 @@
                         mContext,
                         this::invalidateShownMessage,
                         (IncognitoReauthPromoMessageService.IncognitoReauthMessageData) data);
+            case ARCHIVED_TABS_MESSAGE:
+                assert data instanceof ArchivedTabsMessageService.ArchivedTabsMessageData;
+                return CustomMessageCardViewModel.create(
+                        ((ArchivedTabsMessageService.ArchivedTabsMessageData) data).getProvider());
             default:
                 return new PropertyModel.Builder(MessageCardViewProperties.ALL_KEYS)
                         .with(MessageCardViewProperties.IS_INCOGNITO, false)
@@ -145,6 +150,7 @@
     }
 
     // MessageObserver implementations.
+
     @Override
     public void messageReady(
             @MessageService.MessageType int type, MessageService.MessageData data) {
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageService.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageService.java
index 5a06fcf..9af714a 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageService.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageService.java
@@ -24,6 +24,7 @@
         MessageType.IPH,
         MessageType.PRICE_MESSAGE,
         MessageType.INCOGNITO_REAUTH_PROMO_MESSAGE,
+        MessageType.ARCHIVED_TABS_MESSAGE,
         MessageType.ALL
     })
     @Retention(RetentionPolicy.SOURCE)
@@ -33,13 +34,14 @@
         int IPH = 2;
         int PRICE_MESSAGE = 3;
         int INCOGNITO_REAUTH_PROMO_MESSAGE = 4;
-        int ALL = 5;
+        int ARCHIVED_TABS_MESSAGE = 5;
+        int ALL = 6;
     }
 
     /**
      * The reason why we disable the message in grid tab switcher and no longer show it.
      *
-     * Needs to stay in sync with GridTabSwitcherMessageDisableReason in enums.xml. These values
+     * <p>Needs to stay in sync with GridTabSwitcherMessageDisableReason in enums.xml. These values
      * are persisted to logs. Entries should not be renumbered and numeric values should never be
      * reused.
      */
@@ -76,13 +78,22 @@
     public interface MessageData {}
 
     /**
-     * An interface to be notified about changes to a Message.
-     * TODO(meiliang): Need to define this interface in more detail.
+     * Extends {@link MessageData} for CUSTOM_MESSAGE types which require a {@link
+     * CustomMessageCardProvider}.
+     */
+    public interface CustomMessageData extends MessageData {
+        /** Returns a provider of information used for custom messages. */
+        CustomMessageCardProvider getProvider();
+    }
+
+    /**
+     * An interface to be notified about changes to a Message. TODO(meiliang): Need to define this
+     * interface in more detail.
      */
     public interface MessageObserver {
         /**
-         * Called when a message is available.
-         * TODO(meiliang): message data is needed.
+         * Called when a message is available. TODO(meiliang): message data is needed.
+         *
          * @param type The type of the message.
          * @param data {@link MessageData} associated with the message.
          */
@@ -132,7 +143,7 @@
         }
     }
 
-    /** Notifies all {@link MessageObserver} that a message is became invalid. */
+    /** Notifies all {@link MessageObserver} that a message was invalidated. */
     public void sendInvalidNotification() {
         for (MessageObserver observer : mObservers) {
             observer.messageInvalidate(mMessageType);
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIphDialogCoordinator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIphDialogCoordinator.java
index a17bb14c..6d8889f 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIphDialogCoordinator.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIphDialogCoordinator.java
@@ -6,10 +6,11 @@
 
 import android.content.Context;
 import android.view.LayoutInflater;
-import android.view.View;
 import android.view.ViewGroup;
 import android.view.ViewTreeObserver;
 
+import androidx.annotation.Nullable;
+
 import org.chromium.base.TraceEvent;
 import org.chromium.chrome.tab_ui.R;
 import org.chromium.ui.modaldialog.DialogDismissalCause;
@@ -19,21 +20,21 @@
 
 /** Coordinator for the IPH dialog in grid tab switcher. */
 class TabGridIphDialogCoordinator implements TabSwitcherIphController {
-    private final View mParentView;
     private final TabGridIphDialogView mIphDialogView;
     private final PropertyModel mModel;
     private final ModalDialogManager mModalDialogManager;
     private final ViewTreeObserver.OnGlobalLayoutListener mRootViewLayoutListener;
 
-    TabGridIphDialogCoordinator(
-            Context context, ViewGroup parent, ModalDialogManager modalDialogManager) {
+    private @Nullable ViewGroup mParentView;
+    private boolean mGlobalLayoutListenerAttached;
+
+    TabGridIphDialogCoordinator(Context context, ModalDialogManager modalDialogManager) {
         try (TraceEvent e = TraceEvent.scoped("TabGridIphDialogCoordinator.constructor")) {
             mIphDialogView =
                     (TabGridIphDialogView)
                             LayoutInflater.from(context)
                                     .inflate(R.layout.iph_drag_and_drop_dialog_layout, null, false);
             mModalDialogManager = modalDialogManager;
-            mParentView = parent;
 
             ModalDialogProperties.Controller dialogController =
                     new ModalDialogProperties.Controller() {
@@ -48,6 +49,7 @@
                         @Override
                         public void onDismiss(PropertyModel model, int dismissalCause) {
                             mIphDialogView.stopIPHAnimation();
+                            detachParentGlobalLayoutListener();
                         }
                     };
             mModel =
@@ -60,20 +62,43 @@
                             .with(ModalDialogProperties.CUSTOM_VIEW, mIphDialogView)
                             .build();
 
-            mIphDialogView.setRootView(mParentView);
             mRootViewLayoutListener = mIphDialogView::updateLayout;
-            mParentView.getViewTreeObserver().addOnGlobalLayoutListener(mRootViewLayoutListener);
+        }
+    }
+
+    /** Sets the parent view of the model dialog. */
+    public void setParentView(@Nullable ViewGroup parentView) {
+        boolean wasGlobalLayoutListenerAttached = mGlobalLayoutListenerAttached;
+        detachParentGlobalLayoutListener();
+        mParentView = parentView;
+        mIphDialogView.setRootView(parentView);
+        if (wasGlobalLayoutListenerAttached && parentView != null) {
+            attachParentGlobalLayoutListener();
         }
     }
 
     @Override
     public void showIph() {
+        attachParentGlobalLayoutListener();
         mModalDialogManager.showDialog(mModel, ModalDialogManager.ModalDialogType.APP);
         mIphDialogView.startIPHAnimation();
     }
 
     /** Destroy the IPH component. */
     public void destroy() {
+        detachParentGlobalLayoutListener();
+    }
+
+    private void attachParentGlobalLayoutListener() {
+        assert mParentView != null;
+        mGlobalLayoutListenerAttached = true;
+        mParentView.getViewTreeObserver().addOnGlobalLayoutListener(mRootViewLayoutListener);
+    }
+
+    private void detachParentGlobalLayoutListener() {
+        if (mParentView == null) return;
+
+        mGlobalLayoutListenerAttached = false;
         mParentView.getViewTreeObserver().removeOnGlobalLayoutListener(mRootViewLayoutListener);
     }
 }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridItemTouchHelperCallback.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridItemTouchHelperCallback.java
index 6cb3fd64..f5e836e2 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridItemTouchHelperCallback.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridItemTouchHelperCallback.java
@@ -163,7 +163,8 @@
             @NonNull RecyclerView.ViewHolder current,
             @NonNull RecyclerView.ViewHolder target) {
         if (target.getItemViewType() == TabProperties.UiType.MESSAGE
-                || target.getItemViewType() == TabProperties.UiType.LARGE_MESSAGE) {
+                || target.getItemViewType() == TabProperties.UiType.LARGE_MESSAGE
+                || target.getItemViewType() == TabProperties.UiType.CUSTOM_MESSAGE) {
             return false;
         }
         return super.canDropOver(recyclerView, current, target);
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupListCoordinator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupListCoordinator.java
index 1dae0867..f502193 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupListCoordinator.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupListCoordinator.java
@@ -76,7 +76,14 @@
 
         ViewBuilder<TabGroupRowView> layoutBuilder =
                 new LayoutViewBuilder<>(R.layout.tab_group_row);
-        mSimpleRecyclerViewAdapter = new SimpleRecyclerViewAdapter(modelList);
+        mSimpleRecyclerViewAdapter =
+                new SimpleRecyclerViewAdapter(modelList) {
+                    @Override
+                    public void onBindViewHolder(ViewHolder viewHolder, int position) {
+                        ((TabGroupRowView) viewHolder.itemView).resetOnBind();
+                        super.onBindViewHolder(viewHolder, position);
+                    }
+                };
         mSimpleRecyclerViewAdapter.registerType(
                 RowType.TAB_GROUP, layoutBuilder, new TabGroupRowViewBinder());
 
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupListView.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupListView.java
index f716684..ed106ba 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupListView.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupListView.java
@@ -37,7 +37,6 @@
         Context context = getContext();
         mRecyclerView = findViewById(R.id.tab_group_list_recycler_view);
         mRecyclerView.setLayoutManager(new LinearLayoutManager(context));
-        mRecyclerView.setItemAnimator(null);
 
         mEmptyStateContainer = findViewById(R.id.empty_state_container);
 
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupRowView.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupRowView.java
index c958da6c..6b13c01 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupRowView.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupRowView.java
@@ -93,6 +93,12 @@
         mListMenuButton.setDelegate(() -> getListMenu(openRunnable, deleteRunnable));
     }
 
+    void resetOnBind() {
+        for (int corner = Corner.TOP_LEFT; corner <= Corner.BOTTOM_LEFT; corner++) {
+            setFavicon(null, 0, corner);
+        }
+    }
+
     private ListMenu getListMenu(
             @Nullable Runnable openRunnable, @Nullable Runnable deleteRunnable) {
         ModelList listItems = new ModelList();
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupRowViewUnitTest.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupRowViewUnitTest.java
index d01161b..dde7789f 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupRowViewUnitTest.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupRowViewUnitTest.java
@@ -218,4 +218,16 @@
         assertNull(imageView.getDrawable());
         assertEquals("", textView.getText());
     }
+
+    @Test
+    @SmallTest
+    public void testResetOnBind() {
+        remakeWithProperty(ASYNC_FAVICON_TOP_LEFT, (callback) -> callback.onResult(mDrawable));
+        ImageView imageView =
+                mTabGroupStartIconParent.getChildAt(0).findViewById(R.id.favicon_image);
+        assertEquals(mDrawable, imageView.getDrawable());
+
+        mTabGroupRowView.resetOnBind();
+        assertNull(imageView.getDrawable());
+    }
 }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSuggestionMessageService.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSuggestionMessageService.java
index 1500b35..d8a9490 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSuggestionMessageService.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSuggestionMessageService.java
@@ -4,18 +4,11 @@
 
 package org.chromium.chrome.browser.tasks.tab_management;
 
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.ALL_KEYS;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.ARCHIVED_TABS_EXPAND_CLICK_HANDLER;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.ARCHIVED_TAB_COUNT;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.DECLUTTER_INFO_TEXT;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.DECLUTTER_SETTINGS_CLICK_HANDLER;
 import static org.chromium.chrome.browser.tasks.tab_management.suggestions.TabSuggestionFeedback.TabSuggestionResponse.ACCEPTED;
 import static org.chromium.chrome.browser.tasks.tab_management.suggestions.TabSuggestionFeedback.TabSuggestionResponse.DISMISSED;
 import static org.chromium.chrome.browser.tasks.tab_management.suggestions.TabSuggestionFeedback.TabSuggestionResponse.NOT_CONSIDERED;
 
 import android.content.Context;
-import android.view.LayoutInflater;
-import android.view.View;
 
 import androidx.annotation.NonNull;
 import androidx.annotation.VisibleForTesting;
@@ -31,9 +24,6 @@
 import org.chromium.chrome.browser.tasks.tab_management.suggestions.TabSuggestion;
 import org.chromium.chrome.browser.tasks.tab_management.suggestions.TabSuggestionFeedback;
 import org.chromium.chrome.browser.tasks.tab_management.suggestions.TabSuggestionsObserver;
-import org.chromium.chrome.tab_ui.R;
-import org.chromium.ui.modelutil.PropertyModel;
-import org.chromium.ui.modelutil.PropertyModelChangeProcessor;
 
 import java.util.ArrayList;
 import java.util.Collections;
@@ -42,27 +32,18 @@
 /**
  * One of the concrete {@link MessageService} that only serve {@link MessageType#TAB_SUGGESTION}.
  */
-public class TabSuggestionMessageService extends MessageService
-        implements TabSuggestionsObserver, CustomMessageCardProvider {
+public class TabSuggestionMessageService extends MessageService implements TabSuggestionsObserver {
     private static boolean sSuggestionAvailableForTesting;
 
     /** This is the data type that this MessageService is serving to its Observer. */
     public class TabSuggestionMessageData implements MessageData {
         private final TabSuggestion mTabSuggestion;
         private final Callback<TabSuggestionFeedback> mTabSuggestionFeedback;
-        private CustomMessageCardProvider mCustomMessageCardProvider;
 
         public TabSuggestionMessageData(
-                TabSuggestion tabSuggestion,
-                Callback<TabSuggestionFeedback> feedbackCallback,
-                CustomMessageCardProvider customMessageCardProvider) {
+                TabSuggestion tabSuggestion, Callback<TabSuggestionFeedback> feedbackCallback) {
             mTabSuggestion = tabSuggestion;
             mTabSuggestionFeedback = feedbackCallback;
-            mCustomMessageCardProvider = customMessageCardProvider;
-        }
-
-        public View getView() {
-            return mCustomMessageCardProvider.getCustomView();
         }
 
         /**
@@ -122,9 +103,6 @@
     private final Supplier<TabModelFilter> mCurrentTabModelFilterSupplier;
     private final Supplier<TabListEditorCoordinator.TabListEditorController>
             mTabListEditorControllerSupplier;
-    private final CustomMessageCardProvider mCustomMessageCardProvider;
-    private final View mCustomCardView;
-    private final PropertyModel mModel;
 
     public TabSuggestionMessageService(
             Context context,
@@ -137,21 +115,6 @@
         mProfile = profile;
         mCurrentTabModelFilterSupplier = currentTabModelFilterSupplier;
         mTabListEditorControllerSupplier = tabListEditorControllerSupplier;
-        mCustomMessageCardProvider = this;
-        mCustomCardView =
-                LayoutInflater.from(context).inflate(R.layout.declutter_message_card_layout, null);
-        mModel =
-                new PropertyModel.Builder(ALL_KEYS)
-                        .with(DECLUTTER_INFO_TEXT, R.plurals.tab_declutter_message_card_text_info)
-                        .with(
-                                ARCHIVED_TAB_COUNT,
-                                currentTabModelFilterSupplier.get().getTotalTabCount())
-                        .with(ARCHIVED_TABS_EXPAND_CLICK_HANDLER, () -> {})
-                        .with(DECLUTTER_SETTINGS_CLICK_HANDLER, () -> {})
-                        .build();
-
-        PropertyModelChangeProcessor.create(
-                mModel, mCustomCardView, DeclutterMessageCardViewBinder::bind);
     }
 
     @VisibleForTesting
@@ -270,10 +233,7 @@
         sSuggestionAvailableForTesting = true;
         for (TabSuggestion tabSuggestion : tabSuggestions) {
             sendAvailabilityNotification(
-                    new TabSuggestionMessageData(
-                            tabSuggestion,
-                            tabSuggestionFeedback,
-                            mCustomMessageCardProvider));
+                    new TabSuggestionMessageData(tabSuggestion, tabSuggestionFeedback));
         }
     }
 
@@ -286,25 +246,4 @@
     public static boolean isSuggestionAvailableForTesting() {
         return sSuggestionAvailableForTesting;
     }
-
-    // CustomMessageCardProvider implementation
-    @Override
-    public View getCustomView() {
-        return mCustomCardView;
-    }
-
-    @Override
-    public int getMessageCardVisibilityControl() {
-        return MessageCardViewProperties.MessageCardScope.REGULAR;
-    }
-
-    @Override
-    public int getCardType() {
-        return TabListModel.CardProperties.ModelType.MESSAGE;
-    }
-
-    @Override
-    public void setIsIncognito(boolean isIncognito) {
-        // Intentional noop - this card will not appear on incognito.
-    }
 }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMessageManager.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMessageManager.java
index 9786236..ce44bf1 100644
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMessageManager.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMessageManager.java
@@ -15,6 +15,7 @@
 import org.chromium.base.supplier.LazyOneshotSupplier;
 import org.chromium.base.supplier.ObservableSupplier;
 import org.chromium.base.supplier.Supplier;
+import org.chromium.chrome.browser.app.tabmodel.ArchivedTabModelOrchestrator;
 import org.chromium.chrome.browser.flags.ChromeFeatureList;
 import org.chromium.chrome.browser.incognito.reauth.IncognitoReauthManager;
 import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
@@ -115,7 +116,7 @@
     private final @NonNull Context mContext;
     private final @NonNull ActivityLifecycleDispatcher mLifecylceDispatcher;
     private final @NonNull ObservableSupplier<TabModelFilter> mCurrentTabModelFilterSupplier;
-    private final @NonNull ViewGroup mContainer;
+    private final @NonNull TabGridIphDialogCoordinator mTabGridIphDialogCoordinator;
     private final @NonNull MultiWindowModeStateDispatcher mMultiWindowModeStateDispatcher;
     private final @NonNull SnackbarManager mSnackbarManager;
     private final @NonNull ModalDialogManager mModalDialogManager;
@@ -131,12 +132,13 @@
             new ValueChangedCallback<>(this::onTabModelFilterChanged);
 
     private @Nullable Profile mProfile;
-    private @Nullable TabGridIphDialogCoordinator mTabGridIphDialogCoordinator;
     private @Nullable IncognitoReauthManager mIncognitoReauthManager;
     private @Nullable TabSuggestionsOrchestrator mTabSuggestionsOrchestrator;
     private @Nullable TabSuggestionMessageService mTabSuggestionMessageService;
     private @Nullable PriceMessageService mPriceMessageService;
     private @Nullable IncognitoReauthPromoMessageService mIncognitoReauthPromoMessageService;
+    private @Nullable ArchivedTabModelOrchestrator mArchivedTabModelOrchestrator;
+    private @Nullable ArchivedTabsMessageService mArchivedTabsMessageService;
 
     /**
      * @param context The Android activity context.
@@ -155,7 +157,7 @@
      */
     public TabSwitcherMessageManager(
             @NonNull Context context,
-            @NonNull ActivityLifecycleDispatcher lifecylceDispatcher,
+            @NonNull ActivityLifecycleDispatcher lifecycleDispatcher,
             @NonNull ObservableSupplier<TabModelFilter> currentTabModelFilterSupplier,
             @NonNull ViewGroup container,
             @NonNull MultiWindowModeStateDispatcher multiWindowModeStateDispatcher,
@@ -168,9 +170,8 @@
                     PriceWelcomeMessageReviewActionProvider priceWelcomeMessageReviewActionProvider,
             @TabListMode int mode) {
         mContext = context;
-        mLifecylceDispatcher = lifecylceDispatcher;
+        mLifecylceDispatcher = lifecycleDispatcher;
         mCurrentTabModelFilterSupplier = currentTabModelFilterSupplier;
-        mContainer = container;
         mMultiWindowModeStateDispatcher = multiWindowModeStateDispatcher;
         mSnackbarManager = snackbarManager;
         mModalDialogManager = modalDialogManager;
@@ -188,6 +189,10 @@
 
         registerMessages(tabListCoordinator, mode);
 
+        mTabGridIphDialogCoordinator =
+                new TabGridIphDialogCoordinator(mContext, mModalDialogManager);
+        mTabGridIphDialogCoordinator.setParentView(container);
+
         mMultiWindowModeStateDispatcher.addObserver(mMultiWindowModeObserver);
         mOnTabModelFilterChanged.onResult(
                 currentTabModelFilterSupplier.addObserver(mOnTabModelFilterChanged));
@@ -213,21 +218,13 @@
         mProfile = profile;
         if (mMode != TabListCoordinator.TabListMode.GRID) return;
 
-        if (ChromeFeatureList.sArchiveTabService.isEnabled()) {
-            mTabSuggestionsOrchestrator =
-                    new TabSuggestionsOrchestrator(mContext, mCurrentTabModelFilterSupplier);
-            mTabSuggestionMessageService =
-                    new TabSuggestionMessageService(
-                            mContext,
-                            profile,
-                            mCurrentTabModelFilterSupplier,
-                            mTabListEditorControllerSupplier::get);
-            mTabSuggestionsOrchestrator.addObserver(mTabSuggestionMessageService);
-            mMessageCardProviderCoordinator.subscribeMessageService(mTabSuggestionMessageService);
+        if (ChromeFeatureList.sAndroidTabDeclutter.isEnabled()) {
+            mArchivedTabsMessageService =
+                    new ArchivedTabsMessageService(
+                            mContext, ArchivedTabModelOrchestrator.getForProfile(mProfile));
+            mMessageCardProviderCoordinator.subscribeMessageService(mArchivedTabsMessageService);
         }
 
-        mTabGridIphDialogCoordinator =
-                new TabGridIphDialogCoordinator(mContext, mContainer, mModalDialogManager);
         IphMessageService iphMessageService =
                 new IphMessageService(profile, mTabGridIphDialogCoordinator);
         mMessageCardProviderCoordinator.subscribeMessageService(iphMessageService);
@@ -279,9 +276,7 @@
         mCurrentTabModelFilterSupplier.removeObserver(mOnTabModelFilterChanged);
 
         mMessageCardProviderCoordinator.destroy();
-        if (mTabGridIphDialogCoordinator != null) {
-            mTabGridIphDialogCoordinator.destroy();
-        }
+        mTabGridIphDialogCoordinator.destroy();
         if (mIncognitoReauthPromoMessageService != null) {
             mIncognitoReauthPromoMessageService.destroy();
         }
@@ -337,6 +332,9 @@
                     mTabListCoordinator.getPriceWelcomeMessageInsertionIndex(),
                     TabProperties.UiType.LARGE_MESSAGE,
                     nextMessage.model);
+        } else if (messageType == MessageService.MessageType.ARCHIVED_TABS_MESSAGE) {
+            mTabListCoordinator.addSpecialListItem(
+                    0, TabProperties.UiType.CUSTOM_MESSAGE, nextMessage.model);
         } else {
             mTabListCoordinator.addSpecialListItemToEnd(
                     TabProperties.UiType.MESSAGE, nextMessage.model);
@@ -366,6 +364,10 @@
                         mCurrentTabModelFilterSupplier.get().index() + 1,
                         TabProperties.UiType.LARGE_MESSAGE,
                         messages.get(i).model);
+            } else if (messages.get(i).type == MessageService.MessageType.ARCHIVED_TABS_MESSAGE) {
+                // Always add the archived tabs message to the start.
+                mTabListCoordinator.addSpecialListItem(
+                        0, TabProperties.UiType.CUSTOM_MESSAGE, messages.get(i).model);
             } else {
                 mTabListCoordinator.addSpecialListItem(
                         index, TabProperties.UiType.MESSAGE, messages.get(i).model);
@@ -420,6 +422,10 @@
                 MessageService.MessageType.INCOGNITO_REAUTH_PROMO_MESSAGE);
         mTabListCoordinator.removeSpecialListItem(
                 TabProperties.UiType.LARGE_MESSAGE, MessageService.MessageType.TAB_SUGGESTION);
+        mTabListCoordinator.removeSpecialListItem(
+                TabProperties.UiType.CUSTOM_MESSAGE,
+                MessageService.MessageType.ARCHIVED_TABS_MESSAGE);
+
         sAppendedMessagesForTesting = false;
         for (MessageUpdateObserver observer : mObservers) {
             observer.onRemoveAllAppendedMessage();
@@ -477,18 +483,10 @@
                 new LayoutViewBuilder(R.layout.large_message_card_item),
                 LargeMessageCardViewBinder::bind);
 
-        if (ChromeFeatureList.sArchiveTabService.isEnabled()) {
-            tabListCoordinator.registerItemType(
-                    TabProperties.UiType.CUSTOM_MESSAGE,
-                    new LayoutViewBuilder(R.layout.custom_message_card_item),
-                    (model, view, key) -> {
-                        CustomMessageCardViewBinder.bind(
-                                model,
-                                new CustomMessageCardViewBinder.ViewHolder(
-                                        (CustomMessageCardView) view, mTabSuggestionMessageService),
-                                key);
-                    });
-        }
+        tabListCoordinator.registerItemType(
+                TabProperties.UiType.CUSTOM_MESSAGE,
+                new LayoutViewBuilder(R.layout.custom_message_card_item),
+                CustomMessageCardViewBinder::bind);
     }
 
     private void setUpPriceTracking() {
diff --git a/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings.grd b/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings.grd
index 1d32412..ee760c9 100644
--- a/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings.grd
+++ b/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings.grd
@@ -422,20 +422,6 @@
           Close without reviewing
       </message>
 
-      <!-- Tab Declutter strings -->
-      <message name="IDS_TAB_DECLUTTER_MESSAGE_CARD_TEXT_INFO" desc="Text info for the Tab Declutter message card that indicates the number of archived tabs a user can review to close.">
-          {TABS_COUNT, plural,
-            =1 {You have <ph name="TABS_COUNT_ONE">%1$s<ex>1</ex></ph> archived tab}
-            other {You have <ph name="TABS_COUNT_MANY">%1$s<ex>8</ex></ph> archived tabs}
-          }
-      </message>
-      <message name="IDS_TAB_DECLUTTER_MESSAGE_CARD_REVIEW_SETTINGS_DESCRIPTION" desc="Acessibility string describing the settings icon on the tab declutter message card interface.">
-          Review the current declutter settings.
-      </message>
-      <message name="IDS_TAB_DECLUTTER_MESSAGE_CARD_REVIEW_ARCHIVED_TABS_DESCRIPTION" desc="Acessibility string describing the expand icon for reviewing archived tabs on the tab declutter message card interface.">
-          Review all archived tabs for declutter by entering this editor.
-      </message>
-
       <!-- Accessibility strings for Tab Suggestion -->
       <message name="IDS_ACCESSIBILITY_TAB_SUGGESTION_REVIEW_BUTTON" desc="The accessibility text to read when the text button 'Review' is focused. The 'Review' button is shown next to the message 'X of your tabs haven't been used lately. Close them?', or 'X tabs seem related. Group them?'. User uses that text button to enter a selection mode where they can see the suggested tabs to close or to group, see the rest of their open tabs, and choose what tabs to close or to group.">
         Review the suggestions.
diff --git a/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings_grd/IDS_TAB_DECLUTTER_MESSAGE_CARD_REVIEW_ARCHIVED_TABS_DESCRIPTION.png.sha1 b/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings_grd/IDS_TAB_DECLUTTER_MESSAGE_CARD_REVIEW_ARCHIVED_TABS_DESCRIPTION.png.sha1
deleted file mode 100644
index 28ef7c9..0000000
--- a/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings_grd/IDS_TAB_DECLUTTER_MESSAGE_CARD_REVIEW_ARCHIVED_TABS_DESCRIPTION.png.sha1
+++ /dev/null
@@ -1 +0,0 @@
-fecae66a0cebf756612ce3332e97fde081ea9c8e
\ No newline at end of file
diff --git a/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings_grd/IDS_TAB_DECLUTTER_MESSAGE_CARD_REVIEW_SETTINGS_DESCRIPTION.png.sha1 b/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings_grd/IDS_TAB_DECLUTTER_MESSAGE_CARD_REVIEW_SETTINGS_DESCRIPTION.png.sha1
deleted file mode 100644
index 28ef7c9..0000000
--- a/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings_grd/IDS_TAB_DECLUTTER_MESSAGE_CARD_REVIEW_SETTINGS_DESCRIPTION.png.sha1
+++ /dev/null
@@ -1 +0,0 @@
-fecae66a0cebf756612ce3332e97fde081ea9c8e
\ No newline at end of file
diff --git a/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings_grd/IDS_TAB_DECLUTTER_MESSAGE_CARD_TEXT_INFO.png.sha1 b/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings_grd/IDS_TAB_DECLUTTER_MESSAGE_CARD_TEXT_INFO.png.sha1
deleted file mode 100644
index 28ef7c9..0000000
--- a/chrome/android/features/tab_ui/java/strings/android_chrome_tab_ui_strings_grd/IDS_TAB_DECLUTTER_MESSAGE_CARD_TEXT_INFO.png.sha1
+++ /dev/null
@@ -1 +0,0 @@
-fecae66a0cebf756612ce3332e97fde081ea9c8e
\ No newline at end of file
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_af.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_af.xtb
index a3b941345..26ec37b 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_af.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_af.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Jou oortjiegroepe word hier gestoor en word op al jou aangemelde toestelle opgedateer</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Maak <ph name="TABS_COUNT_ONE" /> gekose oortjie toe}other{Maak <ph name="TABS_COUNT_MANY" /> gekose oortjies toe}}</translation>
 <translation id="8398929769197326728">Nuwe vouer – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Maak oortjie toe en vee groep uit?</translation>
 <translation id="8714939927607906138">Laer prys</translation>
 <translation id="8730621377337864115">Gedoen</translation>
 <translation id="8730999928494395583">Jou aktiwiteit in hierdie Incognito-oortjies sal van hierdie toestel af verwyder word</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_am.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_am.xtb
index 4b7b922..534e398 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_am.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_am.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">የእርስዎ የትር ቡድኖች እዚህ ተቀምጠዋል፣ እና በመለያ በተገባባቸው ሁሉም መሣሪያዎችዎ ላይ ይዘመናሉ</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{የተመረጠ <ph name="TABS_COUNT_ONE" /> ትር ዝጋ}one{የተመረጡ <ph name="TABS_COUNT_MANY" /> ትሮችን ዝጋ}other{የተመረጡ <ph name="TABS_COUNT_MANY" /> ትሮችን ዝጋ}}</translation>
 <translation id="8398929769197326728">አዲስ አቃፊ - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ትር ይዘጋ እና ቡድን ይሰረዝ?</translation>
 <translation id="8714939927607906138">ዝቅተኛ ዋጋ</translation>
 <translation id="8730621377337864115">ተከናውኗል</translation>
 <translation id="8730999928494395583">በእነዚህ ማንነትን የማያሳውቁ ትሮች ውስጥ የሚኖርዎት እንቅስቃሴ ከዚህ መሣሪያ ላይ ይወገዳል</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ar.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ar.xtb
index 80d85b5..c5390d58 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ar.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ar.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">يتم حفظ مجموعات علامات التبويب هنا ويتم تعديلها على جميع الأجهزة التي سجّلت الدخول عليها</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{إغلاق علامة تبويب واحدة محدّدة (<ph name="TABS_COUNT_ONE" />)}zero{إغلاق <ph name="TABS_COUNT_MANY" /> علامة تبويب محدّدة}two{إغلاق علامتَي تبويب محدّدتَين (<ph name="TABS_COUNT_MANY" />)}few{إغلاق <ph name="TABS_COUNT_MANY" /> علامات تبويب محدّدة}many{إغلاق <ph name="TABS_COUNT_MANY" /> علامة تبويب محدّدة}other{إغلاق <ph name="TABS_COUNT_MANY" /> علامة تبويب محدّدة}}</translation>
 <translation id="8398929769197326728">‏مجلد جديد - ‎<ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">هل تريد إغلاق علامة التبويب وحذف المجموعة؟</translation>
 <translation id="8714939927607906138">السعر المنخفض</translation>
 <translation id="8730621377337864115">تم</translation>
 <translation id="8730999928494395583">ستتم إزالة نشاطك في علامات التبويب في وضع التصفُّح المتخفي من هذا الجهاز.</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_as.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_as.xtb
index 19256b43..2fae36a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_as.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_as.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">আপোনাৰ টেবৰ গোটসমূহ ইয়াত ছেভ কৰা হয় আৰু আপোনাৰ আটাইবোৰ ছাইন-ইন কৰা ডিভাইচত আপডে’ট কৰা হয়</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> টা বাছনি কৰা টেব বন্ধ কৰক}one{<ph name="TABS_COUNT_MANY" /> টা বাছনি কৰা টেব বন্ধ কৰক}other{<ph name="TABS_COUNT_MANY" /> টা বাছনি কৰা টেব বন্ধ কৰক}}</translation>
 <translation id="8398929769197326728">নতুন ফ’ল্ডাৰ - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">টেবটো বন্ধ কৰিব আৰু গোটটো মচিবনে?</translation>
 <translation id="8714939927607906138">কম মূল্য</translation>
 <translation id="8730621377337864115">হ’ল</translation>
 <translation id="8730999928494395583">এই ইনক’গনিট’ টেবসমূহত আপুনি কৰা কাৰ্যকলাপ এই ডিভাইচটোৰ পৰা আঁতৰোৱা হ’ব</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_az.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_az.xtb
index b9f7085..01686e5 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_az.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_az.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Tab qruplarınız burada yaddaşda saxlanılır və bütün giriş edilmiş cihazlarınızda yenilənir</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Seçilmiş <ph name="TABS_COUNT_ONE" /> tabeli bağlayın}other{Seçilmiş <ph name="TABS_COUNT_MANY" /> tabeli bağlayın}}</translation>
 <translation id="8398929769197326728">Yeni Qovluq - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Tab bağlansın və tab qrupu silinsin?</translation>
 <translation id="8714939927607906138">Aşağı qiymət</translation>
 <translation id="8730621377337864115">Tamamdır</translation>
 <translation id="8730999928494395583">Bu Anonim tablardakı fəaliyyət bu cihazdan silinəcək</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_be.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_be.xtb
index 8236df9..626b904a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_be.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_be.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Групы ўкладак захоўваюцца тут і абнаўляюцца на ўсіх прыладах, на якіх выкананы ўваход</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Закрыць <ph name="TABS_COUNT_ONE" /> выбраную ўкладку}one{Закрыць <ph name="TABS_COUNT_MANY" /> выбраную ўкладку}few{Закрыць <ph name="TABS_COUNT_MANY" /> выбраныя ўкладкі}many{Закрыць <ph name="TABS_COUNT_MANY" /> выбраных укладак}other{Закрыць <ph name="TABS_COUNT_MANY" /> выбранай укладкі}}</translation>
 <translation id="8398929769197326728">Новая папка – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Закрыць укладку і выдаліць групу?</translation>
 <translation id="8714939927607906138">Цана знізілася</translation>
 <translation id="8730621377337864115">Гатова</translation>
 <translation id="8730999928494395583">Звесткі пра вашы дзеянні на гэтых укладках у рэжыме інкогніта будуць выдалены з прылады</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bg.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bg.xtb
index 43a4693..05c7567 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bg.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bg.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Групите ви раздели се запазват тук и се актуализират на всички устройства, на които сте влезли в профила си</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Затваряне на избрания <ph name="TABS_COUNT_ONE" /> раздел}other{Затваряне на избраните <ph name="TABS_COUNT_MANY" /> раздела}}</translation>
 <translation id="8398929769197326728">Нова папка – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Искате ли да затворите раздела и да изтриете групата?</translation>
 <translation id="8714939927607906138">По-ниска цена</translation>
 <translation id="8730621377337864115">Готово</translation>
 <translation id="8730999928494395583">Активността ви в съответните раздели в режим „инкогнито“ ще бъде премахната от това устройство</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bn.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bn.xtb
index a84de5f..201de25 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bn.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bn.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">আপনার ট্যাব গ্রুপ এখানে সেভ করা হয়েছে এবং আপনার সবকটি সাইন-ইন করা ডিভাইসে আপডেট হয়ে যায়</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{বেছে নেওয়া ট্যাবের মধ্যে <ph name="TABS_COUNT_ONE" />টি ট্যাব বন্ধ আছে}one{বেছে নেওয়া ট্যাবের মধ্যে <ph name="TABS_COUNT_MANY" />টি ট্যাব বন্ধ আছে}other{বেছে নেওয়া ট্যাবের মধ্যে <ph name="TABS_COUNT_MANY" />টি ট্যাব বন্ধ আছে}}</translation>
 <translation id="8398929769197326728">নতুন ফোল্ডার - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ট্যাব বন্ধ করে গ্রুপ মুছে দেবেন?</translation>
 <translation id="8714939927607906138">খুব কম দামে</translation>
 <translation id="8730621377337864115">হয়ে গেছে</translation>
 <translation id="8730999928494395583">এইসব 'ছদ্মবেশী' ট্যাবে আপনার করা অ্যাক্টিভিটি এই ডিভাইস থেকে সরানো হবে</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bs.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bs.xtb
index bf73c68..538d6b0 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bs.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_bs.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Grupe kartica se pohranjuju ovdje i ažuriraju na svim uređajima na kojima ste prijavljeni</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Zatvaranje <ph name="TABS_COUNT_ONE" /> odabrane kartice}one{Zatvaranje <ph name="TABS_COUNT_MANY" /> odabrane kartice}few{Zatvaranje <ph name="TABS_COUNT_MANY" /> odabrane kartice}other{Zatvaranje <ph name="TABS_COUNT_MANY" /> odabranih kartica}}</translation>
 <translation id="8398929769197326728">Novi folder – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Zatvoriti karticu i izbrisati grupu?</translation>
 <translation id="8714939927607906138">Niža cijena</translation>
 <translation id="8730621377337864115">Gotovo</translation>
 <translation id="8730999928494395583">Vaša aktivnost na ovim anonimnim karticama će se ukloniti s ovog uređaja</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ca.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ca.xtb
index f8d079b..b61ba92 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ca.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ca.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Els teus grups de pestanyes es desen aquí i s'actualitzen en tots els dispositius en què tens la sessió iniciada</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Tanca <ph name="TABS_COUNT_ONE" /> pestanya seleccionada}other{Tanca les <ph name="TABS_COUNT_MANY" /> pestanyes seleccionades}}</translation>
 <translation id="8398929769197326728">Carpeta nova : <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Vols tancar la pestanya i suprimir el grup?</translation>
 <translation id="8714939927607906138">Preu més baix</translation>
 <translation id="8730621377337864115">Fet</translation>
 <translation id="8730999928494395583">La teva activitat en aquestes pestanyes d'incògnit se suprimirà del dispositiu</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cs.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cs.xtb
index 74b4c9d..6eb4ef54 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cs.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cs.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Vaše skupiny karet se ukládají sem a aktualizují se na všech zařízeních, ve kterých jste přihlášeni</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Zavřít <ph name="TABS_COUNT_ONE" /> vybranou kartu}few{Zavřít <ph name="TABS_COUNT_MANY" /> vybrané karty}many{Zavřít <ph name="TABS_COUNT_MANY" /> vybrané karty}other{Zavřít <ph name="TABS_COUNT_MANY" /> vybraných karet}}</translation>
 <translation id="8398929769197326728">Nová složka – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Zavřít kartu a smazat skupinu?</translation>
 <translation id="8714939927607906138">Nižší cena</translation>
 <translation id="8730621377337864115">Hotovo</translation>
 <translation id="8730999928494395583">Vaše aktivita na těchto anonymních kartách bude z tohoto zařízení vymazána</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cy.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cy.xtb
index c1009c4..4b0da79 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cy.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_cy.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Mae eich grwpiau tabiau yn cael eu cadw yma ac yn cael eu diweddaru ar draws pob un o'ch dyfeisiau sydd wedi mewngofnodi</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Cau'r <ph name="TABS_COUNT_ONE" /> tab a ddewisir}zero{Cau'r <ph name="TABS_COUNT_MANY" /> tab a ddewisir}two{Cau'r <ph name="TABS_COUNT_MANY" /> dab a ddewisir}few{Cau'r <ph name="TABS_COUNT_MANY" /> thab a ddewisir}many{Cau'r <ph name="TABS_COUNT_MANY" /> thab a ddewisir}other{Cau'r <ph name="TABS_COUNT_MANY" /> tab a ddewisir}}</translation>
 <translation id="8398929769197326728">Ffolder Newydd - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Cau'r tab a dileu'r grŵp?</translation>
 <translation id="8714939927607906138">Pris is</translation>
 <translation id="8730621377337864115">Wedi gorffen</translation>
 <translation id="8730999928494395583">Bydd eich gweithgarwch yn y tabiau Anhysbys hyn yn cael eu tynnu o'r ddyfais hon</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_da.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_da.xtb
index c515a0c..8e6a88b 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_da.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_da.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Dine fanegrupper gemmes her og opdateres på alle de enheder, hvor du er logget ind</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Luk <ph name="TABS_COUNT_ONE" /> valgt fane}one{Luk <ph name="TABS_COUNT_MANY" /> valgt fane}other{Luk de <ph name="TABS_COUNT_MANY" /> valgte faner}}</translation>
 <translation id="8398929769197326728">Ny mappe – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Vil du lukke fanen og slette gruppen?</translation>
 <translation id="8714939927607906138">Lavere pris</translation>
 <translation id="8730621377337864115">Udfør</translation>
 <translation id="8730999928494395583">Din aktivitet i disse inkognitofaner fjernes fra denne enhed</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_de.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_de.xtb
index 7d209ff..c8488b2 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_de.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_de.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Deine Tabgruppen werden hier gespeichert und auf allen deinen angemeldeten Geräten aktualisiert</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> ausgewählten Tab schließen}other{<ph name="TABS_COUNT_MANY" /> ausgewählte Tabs schließen}}</translation>
 <translation id="8398929769197326728">Neuer Ordner – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Tab schließen und Gruppe löschen?</translation>
 <translation id="8714939927607906138">Günstigerer Preis</translation>
 <translation id="8730621377337864115">Fertig</translation>
 <translation id="8730999928494395583">Deine Aktivitäten auf diesen Inkognitotabs werden von diesem Gerät gelöscht</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_el.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_el.xtb
index 09082f1a9..18eb72b 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_el.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_el.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Οι ομάδες καρτελών αποθηκεύονται εδώ και ενημερώνονται σε όλες τις συνδεδεμένες συσκευές σας</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Κλείσιμο <ph name="TABS_COUNT_ONE" /> επιλεγμένης καρτέλας}other{Κλείσιμο <ph name="TABS_COUNT_MANY" /> επιλεγμένων καρτελών}}</translation>
 <translation id="8398929769197326728">Νέος φάκελος - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Να κλείσει η καρτέλα και να διαγραφεί η ομάδα;</translation>
 <translation id="8714939927607906138">Χαμηλότερη τιμή</translation>
 <translation id="8730621377337864115">Ολοκληρώθηκε</translation>
 <translation id="8730999928494395583">Η δραστηριότητά σας σε αυτές τις καρτέλες ανώνυμης περιήγησης θα καταργηθεί από αυτήν τη συσκευή.</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_en-GB.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_en-GB.xtb
index cd42ee07..246b6876 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_en-GB.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_en-GB.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Your tab groups are saved here and get updated across all your signed-in devices</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Close <ph name="TABS_COUNT_ONE" /> selected tab}other{Close <ph name="TABS_COUNT_MANY" /> selected tabs}}</translation>
 <translation id="8398929769197326728">New folder – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Close tab and delete group?</translation>
 <translation id="8714939927607906138">Lower price</translation>
 <translation id="8730621377337864115">Done</translation>
 <translation id="8730999928494395583">Your activity in these Incognito tabs will be removed from this device</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es-419.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es-419.xtb
index b5cce15..46c08904 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es-419.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es-419.xtb
@@ -32,7 +32,7 @@
 <translation id="2330212241471632770">{TABS_COUNT,plural, =1{Agregar a favoritos}other{Agregar a favoritos}}</translation>
 <translation id="2359808026110333948">Continuar</translation>
 <translation id="2375257132547014176">{TABS_COUNT,plural, =1{Contraer el grupo de pestañas <ph name="TITLE_OF_GROUP" /> con <ph name="TABS_COUNT_ONE" /> pestaña.}other{Contraer el grupo de pestañas <ph name="TITLE_OF_GROUP" /> con <ph name="TABS_COUNT_MANY" /> pestañas.}}</translation>
-<translation id="2498435670446402865">Cambia el nombre</translation>
+<translation id="2498435670446402865">Cambiar nombre</translation>
 <translation id="2539705006853443997">{TABS_COUNT,plural, =1{Contraer <ph name="TABS_COUNT_ONE" /> pestaña}other{Contraer el grupo de pestañas, el cual tiene <ph name="TABS_COUNT_MANY" /> pestañas}}</translation>
 <translation id="2569352796411618312">Sugerencia: Últimamente no usaste <ph name="NUMBER_OF_TABS" /> de tus pestañas. ¿Quieres cerrarlas?</translation>
 <translation id="2662028055331606429">Calificación: <ph name="CURRENT_RATING" />/<ph name="RATING_BASELINE" /></translation>
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Tus grupos de pestañas se guardan aquí y se actualizan en todos los dispositivos en los que accediste a tu cuenta</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Cierra <ph name="TABS_COUNT_ONE" /> pestaña seleccionada}other{Cierra <ph name="TABS_COUNT_MANY" /> pestañas seleccionadas}}</translation>
 <translation id="8398929769197326728">Nueva carpeta - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">¿Quieres cerrar la pestaña y borrar el grupo?</translation>
 <translation id="8714939927607906138">Precio más bajo</translation>
 <translation id="8730621377337864115">Listo</translation>
 <translation id="8730999928494395583">Se quitará tu actividad en las pestañas de incógnito del dispositivo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es.xtb
index ff619ee..8f375662 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_es.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Tus grupos de pestañas se guardan aquí y se actualizan en todos los dispositivos en los que has iniciado sesión</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Cerrar <ph name="TABS_COUNT_ONE" /> pestaña seleccionada}other{Cerrar <ph name="TABS_COUNT_MANY" /> pestañas seleccionadas}}</translation>
 <translation id="8398929769197326728">Nueva carpeta - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">¿Cerrar pestaña y eliminar grupo?</translation>
 <translation id="8714939927607906138">Precio más bajo</translation>
 <translation id="8730621377337864115">Hecho</translation>
 <translation id="8730999928494395583">Tu actividad en estas pestañas de Incógnito se eliminará de este dispositivo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_et.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_et.xtb
index 9ee78aae..fcb21e3 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_et.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_et.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Teie vahelehegrupid salvestatakse siia ja neid värskendatakse kõikides teie sisselogitud seadmetes</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Sule <ph name="TABS_COUNT_ONE" /> valitud vaheleht}other{Sule <ph name="TABS_COUNT_MANY" /> valitud vahelehte}}</translation>
 <translation id="8398929769197326728">Uus kaust – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Kas sulgeda vaheleht ja kustutada grupp?</translation>
 <translation id="8714939927607906138">Soodsam hind</translation>
 <translation id="8730621377337864115">Valmis</translation>
 <translation id="8730999928494395583">Teie tegevused nendel inkognito vahelehtedel eemaldatakse sellest seadmest</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_eu.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_eu.xtb
index 17deca8..fbe8230 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_eu.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_eu.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Fitxa taldeak hemen gordetzen dira, eta zure kontuan saioa hasita daukaten gailu guztietan eguneratzen dira</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Itxi hautatutako <ph name="TABS_COUNT_ONE" /> fitxa}other{Itxi hautatutako <ph name="TABS_COUNT_MANY" /> fitxa}}</translation>
 <translation id="8398929769197326728">Karpeta berria (<ph name="CURRENT_TIMESTAMP_MS" />)</translation>
-<translation id="870736955561925754">Fitxa itxi eta taldea ezabatu nahi duzu?</translation>
 <translation id="8714939927607906138">Merkeagoa</translation>
 <translation id="8730621377337864115">Eginda</translation>
 <translation id="8730999928494395583">Ezkutuko moduko fitxa hauetan egin dituzun jarduerak kendu egingo dira gailu honetatik</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fa.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fa.xtb
index 3d0ff9a..0737589 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fa.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fa.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">گروه‌های برگه شما اینجا ذخیره می‌شود و در همه دستگاه‌های واردشده به حساب به‌روز می‌شود</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{بستن <ph name="TABS_COUNT_ONE" /> برگه انتخابی}one{بستن <ph name="TABS_COUNT_MANY" /> برگه انتخابی}other{بستن <ph name="TABS_COUNT_MANY" /> برگه انتخابی}}</translation>
 <translation id="8398929769197326728">پوشه جدید - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">برگه بسته و گروه حذف شود؟</translation>
 <translation id="8714939927607906138">قیمت کمتر</translation>
 <translation id="8730621377337864115">تمام</translation>
 <translation id="8730999928494395583">فعالیتتان در این «برگه‌های ناشناس» از این دستگاه حذف خواهد شد</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fi.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fi.xtb
index 0055f63ed..bd07163 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fi.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fi.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Välilehtiryhmäsi tallennetaan tänne, ja ne päivittyvät kaikilla sisäänkirjautuneilla laitteilla</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Sulje <ph name="TABS_COUNT_ONE" /> valittu välilehti}other{Sulje <ph name="TABS_COUNT_MANY" /> valittua välilehteä}}</translation>
 <translation id="8398929769197326728">Uusi kansio – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Suljetaanko välilehti ja poistetaanko ryhmä?</translation>
 <translation id="8714939927607906138">Edullisempi hinta</translation>
 <translation id="8730621377337864115">Valmis</translation>
 <translation id="8730999928494395583">Toimintasi näillä incognito-välilehdillä poistetaan laitteelta</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fil.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fil.xtb
index ff28d6a..b59d5746 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fil.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fil.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Nase-save dito ang iyong mga grupo ng tab at naa-update sa lahat ng iyong naka-sign in na device</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Isara ang <ph name="TABS_COUNT_ONE" /> napiling tab}one{Isara ang <ph name="TABS_COUNT_MANY" /> napiling tab}other{Isara ang <ph name="TABS_COUNT_MANY" /> na napiling tab}}</translation>
 <translation id="8398929769197326728">Bagong Folder - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Isara ang tab at i-delete ang grupo?</translation>
 <translation id="8714939927607906138">Mas mababang presyo</translation>
 <translation id="8730621377337864115">Tapos na</translation>
 <translation id="8730999928494395583">Maaalis sa device na ito ang iyong aktibidad sa mga tab na Incognito na ito</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr-CA.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr-CA.xtb
index 2e93578..e60779cc 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr-CA.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr-CA.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Vos groupes d'onglets sont enregistrés ici et sont mis à jour sur tous les appareils sur lesquels vous êtes connecté à votre compte</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Fermer <ph name="TABS_COUNT_ONE" /> onglet sélectionné}one{Fermer <ph name="TABS_COUNT_MANY" /> onglet sélectionné}other{Fermer <ph name="TABS_COUNT_MANY" /> onglets sélectionnés}}</translation>
 <translation id="8398929769197326728">Nouveau dossier - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Fermer l'onglet et supprimer le groupe?</translation>
 <translation id="8714939927607906138">Prix inférieur</translation>
 <translation id="8730621377337864115">Terminé</translation>
 <translation id="8730999928494395583">Votre activité dans ces onglets de navigation privée sera retirée de cet appareil</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr.xtb
index 6dc3215..bfa7db7 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_fr.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Vos groupes d'onglets sont enregistrés ici et mis à jour sur tous les appareils connectés à votre compte</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Fermer l'onglet sélectionné (<ph name="TABS_COUNT_ONE" />)}one{Fermer l'onglet sélectionné (<ph name="TABS_COUNT_MANY" />)}other{Fermer les onglets sélectionnés (<ph name="TABS_COUNT_MANY" />)}}</translation>
 <translation id="8398929769197326728">Nouveau dossier – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Fermer l'onglet et supprimer le groupe ?</translation>
 <translation id="8714939927607906138">Prix inférieur</translation>
 <translation id="8730621377337864115">OK</translation>
 <translation id="8730999928494395583">Votre activité dans ces onglets de navigation privée sera supprimée de cet appareil</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gl.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gl.xtb
index 0513159..2cfbe66 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gl.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gl.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Os grupos de pestanas gárdanse aquí e actualízanse en todos os dispositivos nos que teñas a sesión iniciada</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Pechar <ph name="TABS_COUNT_ONE" /> pestana seleccionada}other{Pechar <ph name="TABS_COUNT_MANY" /> pestanas seleccionadas}}</translation>
 <translation id="8398929769197326728">Cartafol novo: <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Queres pechar a pestana e eliminar o grupo?</translation>
 <translation id="8714939927607906138">Prezo máis baixo</translation>
 <translation id="8730621377337864115">Feito</translation>
 <translation id="8730999928494395583">A túa actividade nestas pestanas do modo de incógnito quitarase deste dispositivo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gu.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gu.xtb
index 9488d57..2de193a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gu.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_gu.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">તમારા ટૅબના ગ્રૂપ અહીં સાચવવામાં આવે છે અને તમારા સાઇન ઇન કરેલા બધા ડિવાઇસ પર અપડેટ કરવામાં આવે છે</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{પસંદ કરેલા <ph name="TABS_COUNT_ONE" /> ટૅબને બંધ કરો}one{પસંદ કરેલા <ph name="TABS_COUNT_MANY" /> ટૅબને બંધ કરો}other{પસંદ કરેલા <ph name="TABS_COUNT_MANY" /> ટૅબને બંધ કરો}}</translation>
 <translation id="8398929769197326728">નવું ફોલ્ડર - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">શું ટૅબ બંધ કરીને ગ્રૂપ ડિલીટ કરીએ?</translation>
 <translation id="8714939927607906138">ઓછી કિંમત</translation>
 <translation id="8730621377337864115">થઈ ગયું</translation>
 <translation id="8730999928494395583">આ ડિવાઇસમાંથી આ છૂપા ટૅબમાંની તમારી પ્રવૃત્તિ કાઢી નાખવામાં આવશે</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hi.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hi.xtb
index 15b2270..11e8147 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hi.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hi.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">आपके टैब ग्रुप यहां सेव किए जाते हैं. ये आपके साइन इन किए हुए सभी डिवाइसों में अपने-आप अपडेट हो जाते हैं</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> चुना गया टैब बंद करें}one{<ph name="TABS_COUNT_MANY" /> चुने गए टैब बंद करें}other{<ph name="TABS_COUNT_MANY" /> चुने गए टैब बंद करें}}</translation>
 <translation id="8398929769197326728">नया फ़ोल्डर - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">क्या टैब बंद करके ग्रुप मिटाना है?</translation>
 <translation id="8714939927607906138">कम कीमत</translation>
 <translation id="8730621377337864115">हो गया</translation>
 <translation id="8730999928494395583">इन गुप्त टैब में की गई आपकी गतिविधि को इस डिवाइस से हटा दिया जाएगा</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hr.xtb
index 827f2c8..0fae4db 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hr.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Vaše grupe kartica spremaju se ovdje i ažuriraju na svim uređajima na kojima ste prijavljeni</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Zatvori <ph name="TABS_COUNT_ONE" /> odabranu karticu}one{Zatvori <ph name="TABS_COUNT_MANY" /> odabranu karticu}few{Zatvori <ph name="TABS_COUNT_MANY" /> odabrane kartice}other{Zatvori <ph name="TABS_COUNT_MANY" /> odabranih kartica}}</translation>
 <translation id="8398929769197326728">Nova mapa – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Želite li zatvoriti karticu i izbrisati grupu?</translation>
 <translation id="8714939927607906138">Niža cijena</translation>
 <translation id="8730621377337864115">Gotovo</translation>
 <translation id="8730999928494395583">Vaša aktivnost na tim anonimnim karticama uklonit će se s ovog uređaja</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hu.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hu.xtb
index c7a3376..5f2f8a6 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hu.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hu.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">A lapcsoportokat ide menti a rendszer, és az összes bejelentkezett eszközén frissíti őket</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> kijelölt lap bezárása}other{<ph name="TABS_COUNT_MANY" /> kijelölt lap bezárása}}</translation>
 <translation id="8398929769197326728">Új mappa – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Bezárja a lapot, és törli a csoportot?</translation>
 <translation id="8714939927607906138">Alacsonyabb ár</translation>
 <translation id="8730621377337864115">Kész</translation>
 <translation id="8730999928494395583">Az ezeken az inkognitó lapokon végzett tevékenységei el lesznek távolítva erről az eszközről.</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hy.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hy.xtb
index 3cd51df0..6317531 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hy.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_hy.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Ձեր ներդիրների խմբերը պահվում են այստեղ և թարմացվում բոլոր սարքերում, որտեղ մտել եք հաշիվ</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Փակել ընտրված <ph name="TABS_COUNT_ONE" /> ներդիրը}one{Փակել ընտրված <ph name="TABS_COUNT_MANY" /> ներդիրը}other{Փակել ընտրված <ph name="TABS_COUNT_MANY" /> ներդիրները}}</translation>
 <translation id="8398929769197326728">Նոր պանակ – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Փակե՞լ ներդիրը և ջնջել խումբը</translation>
 <translation id="8714939927607906138">Ավելի ցածր գին</translation>
 <translation id="8730621377337864115">Պատրաստ է</translation>
 <translation id="8730999928494395583">Այս ինկոգնիտո ներդիրներում ձեր կատարած գործողությունները կհեռացվեն սարքից</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_id.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_id.xtb
index 5e6e3b3..9ad0b3a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_id.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_id.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Grup tab Anda disimpan di sini dan diperbarui di semua perangkat yang digunakan untuk login</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Tutup <ph name="TABS_COUNT_ONE" /> tab yang dipilih}other{Tutup <ph name="TABS_COUNT_MANY" /> tab yang dipilih}}</translation>
 <translation id="8398929769197326728">Folder Baru - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Tutup tab dan hapus grup?</translation>
 <translation id="8714939927607906138">Harga yang lebih rendah</translation>
 <translation id="8730621377337864115">Selesai</translation>
 <translation id="8730999928494395583">Aktivitas Anda di tab Samaran ini akan dihapus dari perangkat ini</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_is.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_is.xtb
index 1b8a594..37ac964 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_is.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_is.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Flipahóparnir þínir eru vistaðir hér og verða uppfærðir í öllum innskráðu tækjunum þínum</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Loka <ph name="TABS_COUNT_ONE" /> völdum flipa}one{Loka <ph name="TABS_COUNT_MANY" /> völdum flipa}other{Loka <ph name="TABS_COUNT_MANY" /> völdum flipum}}</translation>
 <translation id="8398929769197326728">Ný mappa – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Loka flipa og eyða hóp?</translation>
 <translation id="8714939927607906138">Lægra verð</translation>
 <translation id="8730621377337864115">Lokið</translation>
 <translation id="8730999928494395583">Virknin þín í þessum huliðsflipum verður fjarlægð úr þessu tæki</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_it.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_it.xtb
index 67702188..5059013 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_it.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_it.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">I tuoi gruppi di schede vengono salvati qui e vengono aggiornati su tutti i dispositivi su cui è stato eseguito l'accesso</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Chiudi <ph name="TABS_COUNT_ONE" /> scheda selezionata}other{Chiudi <ph name="TABS_COUNT_MANY" /> schede selezionate}}</translation>
 <translation id="8398929769197326728">Nuova cartella - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Chiudere la scheda ed eliminare il gruppo?</translation>
 <translation id="8714939927607906138">Prezzo più basso</translation>
 <translation id="8730621377337864115">Fine</translation>
 <translation id="8730999928494395583">La tua attività in queste schede di navigazione in incognito verrà rimossa da questo dispositivo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_iw.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_iw.xtb
index 7c7109b..26112dd5 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_iw.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_iw.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">קבוצות הכרטיסיות שלך נשמרות כאן ומתעדכנות בכל המכשירים שמחוברים לחשבון</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{סגירה של כרטיסייה אחת (<ph name="TABS_COUNT_ONE" />) שנבחרה}one{סגירה של <ph name="TABS_COUNT_MANY" /> כרטיסיות שנבחרו}two{סגירה של <ph name="TABS_COUNT_MANY" /> כרטיסיות שנבחרו}other{סגירה של <ph name="TABS_COUNT_MANY" /> כרטיסיות שנבחרו}}</translation>
 <translation id="8398929769197326728">תיקייה חדשה – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">לסגור את הכרטיסייה ולמחוק את הקבוצה?</translation>
 <translation id="8714939927607906138">מחיר נמוך יותר</translation>
 <translation id="8730621377337864115">בוצע</translation>
 <translation id="8730999928494395583">הפעילות שלך בכרטיסיות הפרטיות האלה תוסר מהמכשיר הזה</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ja.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ja.xtb
index fb299a4..74f8f54 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ja.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ja.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">タブグループはここに保存され、ログインしているすべてのデバイスで更新されます</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{選択した <ph name="TABS_COUNT_ONE" /> 個のタブを閉じます}other{選択した <ph name="TABS_COUNT_MANY" /> 個のタブを閉じます}}</translation>
 <translation id="8398929769197326728">新しいフォルダ - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">タブを閉じてグループを削除しますか?</translation>
 <translation id="8714939927607906138">値下げ</translation>
 <translation id="8730621377337864115">完了</translation>
 <translation id="8730999928494395583">これらのシークレット タブでのアクティビティはこのデバイスから削除されます</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ka.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ka.xtb
index e6a11503..fa6960be 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ka.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ka.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">თქვენი ჩანართების ჯგუფები აქ ინახება და განახლდება სისტემაში შესულ ყველა მოწყობილობაში</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> არჩეული ჩანართის დახურვა}other{<ph name="TABS_COUNT_MANY" /> არჩეული ჩანართის დახურვა}}</translation>
 <translation id="8398929769197326728">ახალი საქაღალდე — <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">დაიხუროს ჩანართი და წაიშალოს ჯგუფი?</translation>
 <translation id="8714939927607906138">უფრო დაბალი ფასი</translation>
 <translation id="8730621377337864115">მზადაა</translation>
 <translation id="8730999928494395583">ამ ინკოგნიტო ჩანართებში თქვენი აქტივობა წაიშლება ამ მოწყობილობიდან</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kk.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kk.xtb
index 97341d30..3b22f18 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kk.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kk.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Қойындылар топтары осы жерде сақталады және аккаунтқа кірген барлық құрылғыда жаңартылады.</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Таңдалған <ph name="TABS_COUNT_ONE" /> қойындыны жабу}other{Таңдалған <ph name="TABS_COUNT_MANY" /> қойындыны жабу}}</translation>
 <translation id="8398929769197326728">Жаңа қалта – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Қойындыны жауып, топты жою қажет пе?</translation>
 <translation id="8714939927607906138">Арзанырақ</translation>
 <translation id="8730621377337864115">Дайын</translation>
 <translation id="8730999928494395583">Бұл инкогнито қойындыларындағы әрекетіңіз осы құрылғыдан өшіріледі.</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_km.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_km.xtb
index 24a6f21..d379308 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_km.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_km.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">ក្រុមផ្ទាំងរបស់អ្នកត្រូវបានរក្សាទុកនៅទីនេះ និងទទួលបានការធ្វើបច្ចុប្បន្នភាពលើគ្រប់ឧបករណ៍ដែល​ចូលគណនីរបស់អ្នក</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{បិទ​ផ្ទាំង​ដែលបាន​ជ្រើសរើស <ph name="TABS_COUNT_ONE" />}other{បិទ​ផ្ទាំង​ដែលបាន​ជ្រើសរើស <ph name="TABS_COUNT_MANY" />}}</translation>
 <translation id="8398929769197326728">ថតថ្មី - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">បិទផ្ទាំង និងលុបក្រុមឬ?</translation>
 <translation id="8714939927607906138">តម្លៃ​ទាប​ជាង​មុន</translation>
 <translation id="8730621377337864115">រួចរាល់</translation>
 <translation id="8730999928494395583">សកម្មភាព​របស់អ្នក​នៅក្នុង​ផ្ទាំងឯកជន​ទាំងនេះ​នឹងត្រូវបាន​ដកចេញពី​ឧបករណ៍នេះ</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kn.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kn.xtb
index 5669bc61..95a5efbe 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kn.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_kn.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">ನಿಮ್ಮ ಟ್ಯಾಬ್ ಗುಂಪುಗಳನ್ನು ಇಲ್ಲಿ ಸೇವ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ನಿಮ್ಮ ಎಲ್ಲಾ ಸೈನ್‌ ಇನ್‌ ಮಾಡಿರುವ ಸಾಧನಗಳಲ್ಲಿ ಅಪ್‌ಡೇಟ್ ಆಗುತ್ತವೆ</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{ಆಯ್ಕೆಮಾಡಿದ <ph name="TABS_COUNT_ONE" /> ಟ್ಯಾಬ್ ಅನ್ನು ಮುಚ್ಚಿರಿ}one{ಆಯ್ಕೆಮಾಡಿದ <ph name="TABS_COUNT_MANY" /> ಟ್ಯಾಬ್‌ಗಳನ್ನು ಮುಚ್ಚಿರಿ}other{ಆಯ್ಕೆಮಾಡಿದ <ph name="TABS_COUNT_MANY" /> ಟ್ಯಾಬ್‌ಗಳನ್ನು ಮುಚ್ಚಿರಿ}}</translation>
 <translation id="8398929769197326728">ಹೊಸ ಫೋಲ್ಡರ್‌ - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ಟ್ಯಾಬ್ ಅನ್ನು ಮುಚ್ಚಬೇಕೆ ಹಾಗೂ ಗುಂಪನ್ನು ಅಳಿಸಬೇಕೆ?</translation>
 <translation id="8714939927607906138">ಕಡಿಮೆ ಬೆಲೆ</translation>
 <translation id="8730621377337864115">ಮುಗಿದಿದೆ</translation>
 <translation id="8730999928494395583">ಈ ಅಜ್ಞಾತ ಟ್ಯಾಬ್‌ಗಳಲ್ಲಿನ ನಿಮ್ಮ ಚಟುವಟಿಕೆಗಳನ್ನು ಈ ಸಾಧನದಿಂದ ತೆರವುಗೊಳಿಸಲಾಗುತ್ತದೆ</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ko.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ko.xtb
index 3c8dd2a..870e9355 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ko.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ko.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">탭 그룹이 여기에 저장되며 로그인된 모든 기기에서 업데이트됩니다.</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{선택된 탭 <ph name="TABS_COUNT_ONE" />개 닫기}other{선택된 탭 <ph name="TABS_COUNT_MANY" />개 닫기}}</translation>
 <translation id="8398929769197326728">새 폴더: <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">탭을 닫고 그룹을 삭제하시겠습니까?</translation>
 <translation id="8714939927607906138">더 낮은 가격</translation>
 <translation id="8730621377337864115">완료</translation>
 <translation id="8730999928494395583">시크릿 탭의 활동 내역이 이 기기에서 삭제됩니다.</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ky.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ky.xtb
index db50124..b282bd6 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ky.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ky.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Өтмөк топтору ушул жерде сакталып, аккаунтка кирип турган бардык түзмөктөрдө жаңыртылат</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Тандалган <ph name="TABS_COUNT_ONE" /> өтмөктү жабуу}other{Тандалган <ph name="TABS_COUNT_MANY" /> өтмөктү жабуу}}</translation>
 <translation id="8398929769197326728">Жаңы папка - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Өтмөк жабылып, топ өчүрүлсүнбү?</translation>
 <translation id="8714939927607906138">Арзаныраак баа</translation>
 <translation id="8730621377337864115">Бүттү</translation>
 <translation id="8730999928494395583">Ушул Жашыруун өтмөктөрдө издеген нерселериңиз бул түзмөктөн өчүрүлөт</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lo.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lo.xtb
index d59bc010f..f3a0a81 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lo.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lo.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">ລະບົບຈະບັນທຶກກຸ່ມແຖບຂອງທ່ານໄວ້ບ່ອນນີ້ ແລະ ອັບເດດໃນທຸກອຸປະກອນທີ່ເຂົ້າສູ່ລະບົບແລ້ວຂອງທ່ານ</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{ປິດ <ph name="TABS_COUNT_ONE" /> ແຖບທີ່ເລືອກ}other{ປິດ <ph name="TABS_COUNT_MANY" /> ແຖບທີ່ເລືອກ}}</translation>
 <translation id="8398929769197326728">ໂຟນເດີໃໝ່ - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ປິດແຖບ ແລະ ລຶບກຸ່ມບໍ?</translation>
 <translation id="8714939927607906138">ລາຄາຕໍ່າກວ່າ</translation>
 <translation id="8730621377337864115">ສໍາເລັດ</translation>
 <translation id="8730999928494395583">ການເຄື່ອນໄຫວຂອງທ່ານໃນແຖບບໍ່ເປີດເຜີຍຕົວຕົນເຫຼົ່ານີ້ຈະຖືກລຶບອອກຈາກອຸປະກອນນີ້</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lt.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lt.xtb
index 1bcd47d..2e823122 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lt.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lt.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Skirtukų grupės išsaugomos čia ir atnaujinamos visuose įrenginiuose, kuriuose esate prisijungę</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Uždaryti <ph name="TABS_COUNT_ONE" /> pasirinktą skirtuką}one{Uždaryti <ph name="TABS_COUNT_MANY" /> pasirinktą skirtuką}few{Uždaryti <ph name="TABS_COUNT_MANY" /> pasirinktus skirtukus}many{Uždaryti <ph name="TABS_COUNT_MANY" /> pasirinkto skirtuko}other{Uždaryti <ph name="TABS_COUNT_MANY" /> pasirinktų skirtukų}}</translation>
 <translation id="8398929769197326728">Naujas aplankas – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Uždaryti skirtuką ir ištrinti grupę?</translation>
 <translation id="8714939927607906138">Žemesnė kaina</translation>
 <translation id="8730621377337864115">Atlikta</translation>
 <translation id="8730999928494395583">Jūsų veikla šiuose inkognito skirtukuose bus pašalinta iš šio įrenginio</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lv.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lv.xtb
index c975cb7..7bbb8d0 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lv.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_lv.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Jūsu ciļņu grupas ir saglabātas šeit un tiek atjauninātas visās ierīcēs, kurās esat pierakstījies.</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Aizvērt atlasīto cilni (skaits: <ph name="TABS_COUNT_ONE" />)}zero{Aizvērt atlasītās cilnes (skaits: <ph name="TABS_COUNT_MANY" />)}one{Aizvērt atlasītās cilnes (skaits: <ph name="TABS_COUNT_MANY" />)}other{Aizvērt atlasītās cilnes (skaits: <ph name="TABS_COUNT_MANY" />)}}</translation>
 <translation id="8398929769197326728">Jauna mape — <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Vai aizvērt cilni un dzēst grupu?</translation>
 <translation id="8714939927607906138">Zemāka cena</translation>
 <translation id="8730621377337864115">Gatavs</translation>
 <translation id="8730999928494395583">Jūsu darbības šajās inkognito cilnēs tiks noņemtas no šīs ierīces</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mk.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mk.xtb
index ea62e942..c806af37 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mk.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mk.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Вашите групи картички се зачувани овде и се ажурираат на сите ваши најавени уреди</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Затвори <ph name="TABS_COUNT_ONE" /> избрана картичка}one{Затвори <ph name="TABS_COUNT_MANY" /> избрана картичка}other{Затвори <ph name="TABS_COUNT_MANY" /> избрани картички}}</translation>
 <translation id="8398929769197326728">Нова папка - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Да се затвори картичката и да се избрише групата?</translation>
 <translation id="8714939927607906138">Пониска цена</translation>
 <translation id="8730621377337864115">Готово</translation>
 <translation id="8730999928494395583">Вашата активност во картичкиве „Инкогнито“ ќе се отстрани од уредов</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ml.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ml.xtb
index 8ffad85..46f44749a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ml.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ml.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">നിങ്ങളുടെ ടാബ് ഗ്രൂപ്പുകൾ ഇവിടെ സംരക്ഷിക്കും, നിങ്ങൾ സൈൻ ഇൻ ചെയ്‌തിരിക്കുന്ന എല്ലാ ഉപകരണങ്ങളിലും അവ അപ്‌ഡേറ്റ് ചെയ്യും</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{തിരഞ്ഞെടുത്ത <ph name="TABS_COUNT_ONE" /> ടാബ് അടയ്‌ക്കുക}other{തിരഞ്ഞെടുത്ത <ph name="TABS_COUNT_MANY" /> ടാബുകൾ അടയ്‌ക്കുക}}</translation>
 <translation id="8398929769197326728">പുതിയ ഫോൾഡർ - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ടാബ് അടച്ച് ഗ്രൂപ്പ് ഇല്ലാതാക്കണോ?</translation>
 <translation id="8714939927607906138">കുറഞ്ഞ വില</translation>
 <translation id="8730621377337864115">പൂർത്തിയാക്കി</translation>
 <translation id="8730999928494395583">ഈ അദൃശ്യ ടാബുകളിൽ നിന്നുള്ള നിങ്ങളുടെ ആക്റ്റിവിറ്റി ഈ ഉപകരണത്തിൽ നിന്ന് നീക്കം ചെയ്യും</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mn.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mn.xtb
index d1471406..415f033 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mn.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mn.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Таны табын бүлгийг энд хадгалдаг ба таны нэвтэрсэн бүх төхөөрөмж дээр шинэчилдэг</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Сонгосон <ph name="TABS_COUNT_ONE" /> табыг хаах}other{Сонгосон <ph name="TABS_COUNT_MANY" /> табыг хаах}}</translation>
 <translation id="8398929769197326728">Шинэ фолдер - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Табыг хааж, бүлгийг устгах уу?</translation>
 <translation id="8714939927607906138">Илүү хямд үнэ</translation>
 <translation id="8730621377337864115">хийсэн</translation>
 <translation id="8730999928494395583">Эдгээр Нууцлалтай таб дахь таны үйл ажиллагааг энэ төхөөрөмжөөс хасна</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mr.xtb
index 58a268e..1e18d65b 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_mr.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">तुमचे टॅब गट इथे सेव्ह केलेले आहेत आणि ते तुमच्या सर्व साइन-इन केलेल्या डिव्हाइसवर अपडेट केले जातात</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{निवडलेला <ph name="TABS_COUNT_ONE" /> टॅब बंद करा}other{निवडलेले <ph name="TABS_COUNT_MANY" /> टॅब बंद करा}}</translation>
 <translation id="8398929769197326728">नवीन फोल्डर - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">टॅब बंद करून गट हटवायचा आहे का?</translation>
 <translation id="8714939927607906138">आणखी कमी किंमत</translation>
 <translation id="8730621377337864115">पूर्ण झाले</translation>
 <translation id="8730999928494395583">या गुप्त टॅबमधील तुमची अ‍ॅक्टिव्हिटी या डिव्हाइसवरून काढून टाकली जाईल</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ms.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ms.xtb
index 2b563e2c..848fc2c3 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ms.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ms.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Kumpulan tab anda disimpan di sini dan dikemaskinikan merentas semua peranti log masuk anda</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Tutup <ph name="TABS_COUNT_ONE" /> tab yang dipilih}other{Tutup <ph name="TABS_COUNT_MANY" /> tab yang dipilih}}</translation>
 <translation id="8398929769197326728">Folder Baharu - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Tutup tab dan padamkan kumpulan?</translation>
 <translation id="8714939927607906138">Lebih murah</translation>
 <translation id="8730621377337864115">Selesai</translation>
 <translation id="8730999928494395583">Aktiviti anda dalam tab Inkognito ini akan dialih keluar daripada peranti ini</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_my.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_my.xtb
index 47ebc91..8ee76f3 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_my.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_my.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">တဘ်အုပ်စုများကို ဤနေရာတွင် သိမ်းထားပြီး လက်မှတ်ထိုးဝင်ထားသည့် သင့်စက်အားလုံးတွင် အပ်ဒိတ်လုပ်ပါသည်</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{ရွေးထားသည့် တဘ် <ph name="TABS_COUNT_ONE" /> ခုကို ပိတ်ရန်}other{ရွေးထားသည့် တဘ် <ph name="TABS_COUNT_MANY" /> ခုကို ပိတ်ရန်}}</translation>
 <translation id="8398929769197326728">ဖိုင်တွဲအသစ် - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">တဘ်ပိတ်ပြီး အုပ်စုကို ဖျက်မလား။</translation>
 <translation id="8714939927607906138">ကျသွားသော ဈေးနှုန်း</translation>
 <translation id="8730621377337864115">ပြီးပါပြီ</translation>
 <translation id="8730999928494395583">ဤ ‘ရုပ်ဖျက်တဘ်များ’ ရှိ သင့်လုပ်ဆောင်ချက်ကို ဤစက်မှ ဖယ်ရှားပါမည်</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ne.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ne.xtb
index aa9ba3b..05a158a8 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ne.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ne.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">तपाईंका ट्याब समूहहरू यहाँ सेभ गरिएका छन् र तपाईंले साइन इन गरेका सबै डिभाइसमा ती समूह अपडेट हुन्छन्</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{चयन गरिएको <ph name="TABS_COUNT_ONE" /> ट्याब बन्द गर्नुहोस्}other{चयन गरिएका <ph name="TABS_COUNT_MANY" /> ट्याबहरू बन्द गर्नुहोस्}}</translation>
 <translation id="8398929769197326728">नयाँ फोल्डर - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ट्याब बन्द गर्ने र समूह मेटाउने हो?</translation>
 <translation id="8714939927607906138">अझ कम मूल्य</translation>
 <translation id="8730621377337864115">गरियो</translation>
 <translation id="8730999928494395583">तपाईंले यी इन्कोग्निटो ट्याबबाट गर्नुभएको क्रियाकलापको विवरण यो डिभाइसबाट हटाइने छ</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_nl.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_nl.xtb
index 0055d81..76c322e 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_nl.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_nl.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Je tabbladgroepen worden hier opgeslagen en worden geüpdatet op al je ingelogde apparaten</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> geselecteerd tabblad sluiten}other{<ph name="TABS_COUNT_MANY" /> geselecteerde tabbladen sluiten}}</translation>
 <translation id="8398929769197326728">Nieuwe map - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Tabblad sluiten en groep verwijderen?</translation>
 <translation id="8714939927607906138">Lagere prijs</translation>
 <translation id="8730621377337864115">Klaar</translation>
 <translation id="8730999928494395583">Je activiteit in deze incognitotabbladen wordt verwijderd van dit apparaat</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_no.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_no.xtb
index 134197b..0a4f6b4 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_no.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_no.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Fanegruppene dine lagres her og blir oppdatert på alle de påloggede enhetene dine</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Lukk <ph name="TABS_COUNT_ONE" /> valgt fane}other{Lukk <ph name="TABS_COUNT_MANY" /> valgte faner}}</translation>
 <translation id="8398929769197326728">Ny mappe – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Vil du lukke fanen og slette gruppen?</translation>
 <translation id="8714939927607906138">Lavere pris</translation>
 <translation id="8730621377337864115">Ferdig</translation>
 <translation id="8730999928494395583">Aktiviteten din på disse inkognitofanene blir fjernet fra denne enheten</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_or.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_or.xtb
index 602bdbc..0469f57 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_or.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_or.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">ଆପଣଙ୍କ ଟାବ ଗ୍ରୁପକୁ ଏଠାରେ ସେଭ କରାଯାଇଛି ଏବଂ ଆପଣ ସାଇନ-ଇନ କରିଥିବା ସମସ୍ତ ଡିଭାଇସରେ ଏହାକୁ ଅପଡେଟ କରାଯାଇଛି</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" />ଟି ଚୟନିତ ଟାବ୍ ବନ୍ଦ କରନ୍ତୁ}other{<ph name="TABS_COUNT_MANY" />ଟି ଚୟନିତ ଟାବ୍ ବନ୍ଦ କରନ୍ତୁ}}</translation>
 <translation id="8398929769197326728">ନୂଆ ଫୋଲ୍ଡର - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ଟାବକୁ ବନ୍ଦ କରି ଗ୍ରୁପକୁ ଡିଲିଟ କରିବେ?</translation>
 <translation id="8714939927607906138">କମ୍ ଦାମ୍</translation>
 <translation id="8730621377337864115">ସମାପ୍ତ ହୋଇଛି</translation>
 <translation id="8730999928494395583">ଏହି ଇନକଗ୍ନିଟୋ ଟାବଗୁଡ଼ିକରେ ଆପଣଙ୍କ କାର୍ଯ୍ୟକଳାପକୁ ଏହି ଡିଭାଇସରୁ କାଢ଼ି ଦିଆଯିବ</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pa.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pa.xtb
index 897ad5d..53cc3702 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pa.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pa.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">ਤੁਹਾਡੇ ਟੈਬ ਗਰੱਪ ਇੱਥੇ ਰੱਖਿਅਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਅਤੇ ਤੁਹਾਡੇ ਸਾਰੇ ਸਾਈਨ-ਇਨ ਕੀਤੇ ਡੀਵਾਈਸਾਂ 'ਤੇ ਅੱਪਡੇਟ ਹੋ ਜਾਂਦੇ ਹਨ</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{ਚੁਣੀ ਹੋਈ <ph name="TABS_COUNT_ONE" /> ਟੈਬ ਬੰਦ ਕਰੋ}one{ਚੁਣੀ ਹੋਈ <ph name="TABS_COUNT_MANY" /> ਟੈਬ ਬੰਦ ਕਰੋ}other{ਚੁਣੀਆਂ ਹੋਈਆਂ <ph name="TABS_COUNT_MANY" /> ਟੈਬਾਂ ਬੰਦ ਕਰੋ}}</translation>
 <translation id="8398929769197326728">ਨਵਾਂ ਫੋਲਡਰ - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ਕੀ ਟੈਬ ਬੰਦ ਕਰ ਕੇ ਗਰੁੱਪ ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ?</translation>
 <translation id="8714939927607906138">ਘੱਟ ਕੀਮਤ</translation>
 <translation id="8730621377337864115">ਹੋ ਗਿਆ</translation>
 <translation id="8730999928494395583">ਇਨ੍ਹਾਂ ਇਨਕੋਗਨਿਟੋ ਟੈਬਾਂ ਵਿਚਲੀ ਤੁਹਾਡੀ ਸਰਗਰਮੀ ਨੂੰ ਇਸ ਡੀਵਾਈਸ ਤੋਂ ਹਟਾ ਦਿੱਤਾ ਜਾਵੇਗਾ</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pl.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pl.xtb
index a3c701f..9f1d2c3d 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pl.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pl.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Tutaj są zapisywane grupy kart. Będą one aktualizowane na wszystkich urządzeniach, na których się zalogujesz</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Zamknij <ph name="TABS_COUNT_ONE" /> wybraną kartę}few{Zamknij <ph name="TABS_COUNT_MANY" /> wybrane karty}many{Zamknij <ph name="TABS_COUNT_MANY" /> wybranych kart}other{Zamknij <ph name="TABS_COUNT_MANY" /> wybranej karty}}</translation>
 <translation id="8398929769197326728">Nowy folder – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Zamknąć kartę i usunąć grupę?</translation>
 <translation id="8714939927607906138">Niższa cena</translation>
 <translation id="8730621377337864115">Gotowe</translation>
 <translation id="8730999928494395583">Twoja aktywność na tych kartach incognito zostanie usunięta z tego urządzenia</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-BR.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-BR.xtb
index 9c82bb3..b05e325 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-BR.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-BR.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Seus grupos de guias são salvos aqui e atualizados em todos os dispositivos conectados</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Fechar <ph name="TABS_COUNT_ONE" /> guia selecionada}one{Fechar <ph name="TABS_COUNT_MANY" /> guia selecionada}other{Fechar <ph name="TABS_COUNT_MANY" /> guias selecionadas}}</translation>
 <translation id="8398929769197326728">Nova pasta (<ph name="CURRENT_TIMESTAMP_MS" />)</translation>
-<translation id="870736955561925754">Fechar guia e excluir grupo?</translation>
 <translation id="8714939927607906138">Preço menor</translation>
 <translation id="8730621377337864115">Concluir</translation>
 <translation id="8730999928494395583">Sua atividade nessas guias anônimas será removida deste dispositivo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-PT.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-PT.xtb
index aaa1eea..9c66991 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-PT.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_pt-PT.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Os seus grupos de separadores são guardados aqui e atualizados em todos os dispositivos com sessão iniciada</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Fechar <ph name="TABS_COUNT_ONE" /> separador selecionado}other{Fechar <ph name="TABS_COUNT_MANY" /> separadores selecionados}}</translation>
 <translation id="8398929769197326728">Nova pasta – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Fechar o separador e eliminar o grupo?</translation>
 <translation id="8714939927607906138">Preço mais baixo</translation>
 <translation id="8730621377337864115">Concluído</translation>
 <translation id="8730999928494395583">A sua atividade nestes separadores de navegação anónima vai ser removida deste dispositivo</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ro.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ro.xtb
index 99e861e8..78d46f0 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ro.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ro.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Grupurile de file se salvează aici și sunt actualizate pe toate dispozitivele conectate</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Închide <ph name="TABS_COUNT_ONE" /> filă selectată}few{Închide <ph name="TABS_COUNT_MANY" /> file selectate}other{Închide <ph name="TABS_COUNT_MANY" /> de file selectate}}</translation>
 <translation id="8398929769197326728">Dosar nou – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Închizi fila și ștergi grupul?</translation>
 <translation id="8714939927607906138">Preț mai mic</translation>
 <translation id="8730621377337864115">Terminat</translation>
 <translation id="8730999928494395583">Activitatea ta în filele incognito va fi eliminată de pe acest dispozitiv</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ru.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ru.xtb
index 3f68457..f651421 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ru.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ru.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Здесь хранятся группы вкладок. Они обновляются на всех устройствах, на которых выполнен вход в аккаунт.</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Закрыть <ph name="TABS_COUNT_ONE" /> выбранную вкладку}one{Закрыть <ph name="TABS_COUNT_MANY" /> выбранную вкладку}few{Закрыть <ph name="TABS_COUNT_MANY" /> выбранные вкладки}many{Закрыть <ph name="TABS_COUNT_MANY" /> выбранных вкладок}other{Закрыть <ph name="TABS_COUNT_MANY" /> выбранной вкладки}}</translation>
 <translation id="8398929769197326728">Новая папка – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Закрыть вкладку и удалить группу?</translation>
 <translation id="8714939927607906138">Более низкая цена</translation>
 <translation id="8730621377337864115">Готово</translation>
 <translation id="8730999928494395583">Информация о действиях на этих вкладках инкогнито будет удалена с устройства.</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_si.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_si.xtb
index 8eb7beb..b53dc0a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_si.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_si.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">ඔබේ පටිති සමූහය මෙහි සුරකිනු ලබන අතර ඔබේ පුරන ලද සියලුම උපාංග පුරා යාවත්කාලීන කරනු ලබයි</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{තේරූ <ph name="TABS_COUNT_ONE" /> පටිත්ත වසන්න}one{තේරූ පටිති <ph name="TABS_COUNT_MANY" /> වසරන්න}other{තේරූ පටිති <ph name="TABS_COUNT_MANY" /> වසරන්න}}</translation>
 <translation id="8398929769197326728">නව ෆෝල්ඩරය - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">පටිත්ත වසා සමූහය මකන්නද?</translation>
 <translation id="8714939927607906138">අඩු මිල</translation>
 <translation id="8730621377337864115">අවසන්</translation>
 <translation id="8730999928494395583">මෙම අප්‍රකට පටිතිවල ඔබේ ක්‍රියාකාරකම් මෙම උපාංගයෙන් ඉවත් කරනු ලැබේ</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sk.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sk.xtb
index 1d9aeca..fb7c5a6 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sk.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sk.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Skupiny kariet sa ukladajú tu a aktualizujú sa vo všetkých vašich prihlásených zariadeniach</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Zavrieť <ph name="TABS_COUNT_ONE" /> vybranú kartu}few{Zavrieť <ph name="TABS_COUNT_MANY" /> vybrané karty}many{Close <ph name="TABS_COUNT_MANY" /> selected tabs}other{Zavrieť <ph name="TABS_COUNT_MANY" /> vybraných kariet}}</translation>
 <translation id="8398929769197326728">Nový priečinok – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Chcete zavrieť kartu a odstrániť skupinu?</translation>
 <translation id="8714939927607906138">Nižšia cena</translation>
 <translation id="8730621377337864115">Hotovo</translation>
 <translation id="8730999928494395583">Vaša aktivita v týchto kartách inkognito bude odstránená z tohto zariadenia</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sl.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sl.xtb
index e0df5d7..4c50cee 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sl.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sl.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Skupine zavihkov so shranjene tukaj in se posodabljajo v vseh napravah, v katerih ste prijavljeni</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Zapiranje <ph name="TABS_COUNT_ONE" /> izbranega zavihka}one{Zapiranje <ph name="TABS_COUNT_MANY" /> izbranega zavihka}two{Zapiranje <ph name="TABS_COUNT_MANY" /> izbranih zavihkov}few{Zapiranje <ph name="TABS_COUNT_MANY" /> izbranih zavihkov}other{Zapiranje <ph name="TABS_COUNT_MANY" /> izbranih zavihkov}}</translation>
 <translation id="8398929769197326728">Nova mapa – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Želite zapreti zavihek in izbrisati skupino?</translation>
 <translation id="8714939927607906138">Nižja cena</translation>
 <translation id="8730621377337864115">Končano</translation>
 <translation id="8730999928494395583">Vaša dejavnost na teh anonimnih zavihkih bo odstranjena iz te naprave</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sq.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sq.xtb
index 23c4f1b..12d75b0d 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sq.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sq.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Grupet e tua të skedave ruhen këtu dhe përditësohen në të gjitha pajisjet ku je identifikuar</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Mbyll <ph name="TABS_COUNT_ONE" /> skedë të zgjedhur}other{Mbyll <ph name="TABS_COUNT_MANY" /> skeda të zgjedhura}}</translation>
 <translation id="8398929769197326728">Dosje e re - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Të mbyllet skeda dhe të fshihet grupi?</translation>
 <translation id="8714939927607906138">Çmim më i ulët</translation>
 <translation id="8730621377337864115">U krye</translation>
 <translation id="8730999928494395583">Aktiviteti yt në këto skeda "të fshehta" do të hiqet nga kjo pajisje</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr-Latn.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr-Latn.xtb
index 9f6b4cb2..825019d 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr-Latn.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr-Latn.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Grupe kartica se čuvaju ovde i ažuriraju se na svim uređajima na kojima ste prijavljeni</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Zatvorite <ph name="TABS_COUNT_ONE" /> izabranu karticu}one{Zatvorite <ph name="TABS_COUNT_MANY" /> izabranu karticu}few{Zatvorite <ph name="TABS_COUNT_MANY" /> izabrane kartice}other{Zatvorite <ph name="TABS_COUNT_MANY" /> izabranih kartica}}</translation>
 <translation id="8398929769197326728">Novi folder – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Želite da zatvorite karticu i izbrišete grupu?</translation>
 <translation id="8714939927607906138">Niža cena</translation>
 <translation id="8730621377337864115">Gotovo</translation>
 <translation id="8730999928494395583">Vaše aktivnosti na ovim karticama bez arhiviranja će biti uklonjene sa ovog uređaja</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr.xtb
index 06a8ff4..9650025 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sr.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Групе картица се чувају овде и ажурирају се на свим уређајима на којима сте пријављени</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Затворите <ph name="TABS_COUNT_ONE" /> изабрану картицу}one{Затворите <ph name="TABS_COUNT_MANY" /> изабрану картицу}few{Затворите <ph name="TABS_COUNT_MANY" /> изабране картице}other{Затворите <ph name="TABS_COUNT_MANY" /> изабраних картица}}</translation>
 <translation id="8398929769197326728">Нови фолдер – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Желите да затворите картицу и избришете групу?</translation>
 <translation id="8714939927607906138">Нижа цена</translation>
 <translation id="8730621377337864115">Готово</translation>
 <translation id="8730999928494395583">Ваше активности на овим картицама без архивирања ће бити уклоњене са овог уређаја</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sv.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sv.xtb
index 7c6a0d1..33abbc23 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sv.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sv.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Dina flikgrupper sparas här och uppdateras på alla enheter där du är inloggad</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Stäng <ph name="TABS_COUNT_ONE" /> vald flik}other{Stäng <ph name="TABS_COUNT_MANY" /> valda flikar}}</translation>
 <translation id="8398929769197326728">Ny mapp – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Vill du stänga fliken och radera gruppen?</translation>
 <translation id="8714939927607906138">Lägre pris</translation>
 <translation id="8730621377337864115">Klart</translation>
 <translation id="8730999928494395583">Aktivitet på de här inkognitoflikarna tas bort från enheten</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sw.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sw.xtb
index 364a579..72220c7d 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sw.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_sw.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Vikundi vya vichupo vyako huhifadhiwa hapa na kusasishwa kwenye vifaa vyako vyote ulivyotumia kuingia katika akaunti</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Funga kichupo <ph name="TABS_COUNT_ONE" /> ulichochagua}other{Funga vichupo <ph name="TABS_COUNT_MANY" /> ulivyochagua}}</translation>
 <translation id="8398929769197326728">Folda Mpya - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Ungependa kufunga kichupo na ufute kikundi?</translation>
 <translation id="8714939927607906138">Bei nafuu</translation>
 <translation id="8730621377337864115">Nimemaliza</translation>
 <translation id="8730999928494395583">Shughuli yako katika vichupo fiche hivi itaondolewa kwenye kifaa hiki</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ta.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ta.xtb
index fa3325a..515649cf 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ta.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ta.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">உங்கள் பக்கக் குழுக்கள் இங்கே சேமிக்கப்படும், அத்துடன் நீங்கள் உள்நுழைந்துள்ள சாதனங்கள் அனைத்திலும் அவை சேர்க்கப்படும்.</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{தேர்ந்தெடுத்த <ph name="TABS_COUNT_ONE" /> தாவலை மூடும்}other{தேர்ந்தெடுத்த <ph name="TABS_COUNT_MANY" /> தாவல்களை மூடும்}}</translation>
 <translation id="8398929769197326728">புதிய ஃபோல்டர் - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">பக்கத்தை மூடிவிட்டு குழுவை நீக்க வேண்டுமா?</translation>
 <translation id="8714939927607906138">குறைவான விலை</translation>
 <translation id="8730621377337864115">முடிந்தது</translation>
 <translation id="8730999928494395583">இந்த மறைநிலைப் பக்கங்களில் நீங்கள் மேற்கொண்ட செயல்பாடுகள் குறித்த விவரங்கள் இந்தச் சாதனத்தில் இருந்து அகற்றப்படும்</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb
index b8f64d7b..ee144b3 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">మీ ట్యాబ్ గ్రూప్‌లు ఇక్కడ సేవ్ చేయబడతాయి, మీరు సైన్ ఇన్ చేసిన అన్ని పరికరాలలో అప్‌డేట్ చేయబడతాయి</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{ఎంపిక చేసిన <ph name="TABS_COUNT_ONE" /> ట్యాబ్‌ను మూసివేయండి}other{ఎంపిక చేసిన <ph name="TABS_COUNT_MANY" /> ట్యాబ్‌లను మూసివేయండి}}</translation>
 <translation id="8398929769197326728">కొత్త ఫోల్డర్ - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ట్యాబ్‌ను మూసివేసి, గ్రూప్‌ను తొలగించాలా?</translation>
 <translation id="8714939927607906138">తక్కువ ధర</translation>
 <translation id="8730621377337864115">పూర్తయింది</translation>
 <translation id="8730999928494395583">ఈ అజ్ఞాత ట్యాబ్‌లలో మీరు జరిపిన యాక్టివిటీ ఈ పరికరం నుండి తీసివేయబడుతుంది</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_th.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_th.xtb
index c618359a..e5c0d6c 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_th.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_th.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">ระบบจะบันทึกกลุ่มแท็บไว้ที่นี่และอัปเดตในอุปกรณ์ทั้งหมดที่ลงชื่อเข้าใช้</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{ปิดแท็บที่เลือก <ph name="TABS_COUNT_ONE" /> แท็บ}other{ปิดแท็บที่เลือก <ph name="TABS_COUNT_MANY" /> แท็บ}}</translation>
 <translation id="8398929769197326728">โฟลเดอร์ใหม่ - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ปิดแท็บและลบกลุ่มใช่ไหม</translation>
 <translation id="8714939927607906138">ราคาต่ำกว่า</translation>
 <translation id="8730621377337864115">เสร็จสิ้น</translation>
 <translation id="8730999928494395583">ระบบจะนำกิจกรรมในแท็บที่ไม่ระบุตัวตนเหล่านี้ออกจากอุปกรณ์นี้</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_tr.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_tr.xtb
index 5eb7b1d2..c7277f8c 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_tr.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_tr.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Sekme gruplarınız buraya kaydedilir ve oturum açılmış tüm cihazlarınızda güncellenir</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Seçilen <ph name="TABS_COUNT_ONE" /> sekmeyi kapat}other{Seçilen <ph name="TABS_COUNT_MANY" /> sekmeyi kapat}}</translation>
 <translation id="8398929769197326728">Yeni Klasör - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Sekme kapatılıp grup silinsin mi?</translation>
 <translation id="8714939927607906138">Daha düşük fiyat</translation>
 <translation id="8730621377337864115">Bitti</translation>
 <translation id="8730999928494395583">Bu gizli sekmelerdeki etkinliğiniz bu cihazdan silinecektir</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uk.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uk.xtb
index ddd58958..4fdb54b 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uk.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uk.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Тут групи вкладок зберігаються й синхронізуються з усіма пристроями, на яких ви ввійшли в обліковий запис</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Закрити <ph name="TABS_COUNT_ONE" /> вибрану вкладку}one{Закрити <ph name="TABS_COUNT_MANY" /> вибрану вкладку}few{Закрити <ph name="TABS_COUNT_MANY" /> вибрані вкладки}many{Закрити <ph name="TABS_COUNT_MANY" /> вибраних вкладок}other{Закрити <ph name="TABS_COUNT_MANY" /> вибраної вкладки}}</translation>
 <translation id="8398929769197326728">Нова папка – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Закрити вкладку й видалити групу?</translation>
 <translation id="8714939927607906138">Дешевше</translation>
 <translation id="8730621377337864115">Готово</translation>
 <translation id="8730999928494395583">Дані про ваші дії на цих анонімних вкладках буде вилучено з пристрою</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ur.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ur.xtb
index 0cd1ade7..87ff8feb 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ur.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_ur.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">آپ کے ٹیب گروپس یہاں محفوظ کیے جاتے ہیں اور آپ کے تمام سائن ان کردہ آلات پر اپ ڈیٹ ہوتے ہیں</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{<ph name="TABS_COUNT_ONE" /> منتخب کردہ ٹیب بند کریں}other{<ph name="TABS_COUNT_MANY" /> منتخب کردہ ٹیبز بند کریں}}</translation>
 <translation id="8398929769197326728">نیا فولڈر - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">ٹیب بند کریں اور گروپ کو حذف کریں؟</translation>
 <translation id="8714939927607906138">کم قیمت</translation>
 <translation id="8730621377337864115">ہوگیا</translation>
 <translation id="8730999928494395583">ان پوشیدگی ٹیبز میں موجود آپ کی سرگرمی اس آلے سے ہٹائی جائے گی</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uz.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uz.xtb
index aaacca9..478e572 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uz.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_uz.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Varaqlar guruhi shu yerda saqlanadi va hisobga kirilgan barcha qurilmalarda yangilanib turadi</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Tanlangan <ph name="TABS_COUNT_ONE" /> ta varaqni yopish}other{Tanlangan <ph name="TABS_COUNT_MANY" /> ta varaqni yopish}}</translation>
 <translation id="8398929769197326728">Yangi jild - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Varaq yopilib, guruh oʻchirilsinmi?</translation>
 <translation id="8714939927607906138">Past narxda</translation>
 <translation id="8730621377337864115">Tayyor</translation>
 <translation id="8730999928494395583">Bu inkognito varaqlardagi harakatlar tarixi ushbu qurilmadan olib tashlanadi</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_vi.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_vi.xtb
index 9633579..f3e329e2 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_vi.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_vi.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Các nhóm thẻ của bạn được lưu tại đây và cập nhật trên mọi thiết bị bạn đã đăng nhập</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Đóng <ph name="TABS_COUNT_ONE" /> thẻ đã chọn}other{Đóng <ph name="TABS_COUNT_MANY" /> thẻ đã chọn}}</translation>
 <translation id="8398929769197326728">Thư mục mới – <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Bạn muốn đóng thẻ và xoá nhóm?</translation>
 <translation id="8714939927607906138">Giá thấp hơn</translation>
 <translation id="8730621377337864115">Xong</translation>
 <translation id="8730999928494395583">Hoạt động của bạn trong các thẻ ẩn danh này sẽ bị xoá khỏi thiết bị này</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-CN.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-CN.xtb
index c33d05d..8d67282 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-CN.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-CN.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">您的标签页分组会保存在此处,并在您所有已登录账号的设备上更新。</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{关闭 <ph name="TABS_COUNT_ONE" /> 个所选标签页}other{关闭 <ph name="TABS_COUNT_MANY" /> 个所选标签页}}</translation>
 <translation id="8398929769197326728">新建文件夹 - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">要关闭标签页并删除分组吗?</translation>
 <translation id="8714939927607906138">降价了</translation>
 <translation id="8730621377337864115">完成</translation>
 <translation id="8730999928494395583">您在这些无痕式标签页中的活动记录将从此设备上移除</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-HK.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-HK.xtb
index 3a79f87..1cbf99a 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-HK.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-HK.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">分頁群組會儲存在這裡,並同步至你登入帳戶的所有裝置</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{閂 <ph name="TABS_COUNT_ONE" /> 個揀咗嘅分頁}other{閂 <ph name="TABS_COUNT_MANY" /> 個揀咗嘅分頁}}</translation>
 <translation id="8398929769197326728">新增資料夾 - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">要關閉分頁並刪除群組嗎?</translation>
 <translation id="8714939927607906138">較低價格</translation>
 <translation id="8730621377337864115">完成</translation>
 <translation id="8730999928494395583">系統將會從此裝置移除你在這些無痕式分頁中的活動</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-TW.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-TW.xtb
index 32aa1a9..4c97beef 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-TW.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zh-TW.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">分頁群組會儲存在這裡,並同步至你登入帳戶的所有裝置</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{關閉 <ph name="TABS_COUNT_ONE" /> 個所選分頁}other{關閉 <ph name="TABS_COUNT_MANY" /> 個所選分頁}}</translation>
 <translation id="8398929769197326728">新資料夾 - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">要關閉分頁並刪除群組嗎?</translation>
 <translation id="8714939927607906138">較低價格</translation>
 <translation id="8730621377337864115">完成</translation>
 <translation id="8730999928494395583">你在這些無痕分頁中的活動將從這部裝置上移除</translation>
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zu.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zu.xtb
index cc52d8ccc..c1f024d 100644
--- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zu.xtb
+++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_zu.xtb
@@ -146,7 +146,6 @@
 <translation id="8338427544764842461">Amaqembu wakho amathebhu alondolozwa lapha futhi abuyekezwa kuwo wonke amadivayisi wakho ongene kuwo ngemvume</translation>
 <translation id="83556505225171773">{TABS_COUNT,plural, =1{Vala ithebhu ekhethiwe engu-<ph name="TABS_COUNT_ONE" />}one{Vala amathebhu akhethiwe angu-<ph name="TABS_COUNT_MANY" />}other{Vala amathebhu akhethiwe angu-<ph name="TABS_COUNT_MANY" />}}</translation>
 <translation id="8398929769197326728">Ifolda Entsha - <ph name="CURRENT_TIMESTAMP_MS" /></translation>
-<translation id="870736955561925754">Vala ithebhu futhi usule iqembu?</translation>
 <translation id="8714939927607906138">Intengo ephansi</translation>
 <translation id="8730621377337864115">Kwenziwe</translation>
 <translation id="8730999928494395583">Umsebenzi wakho kula mathebhu we-Incognito uzosuswa kule divayisi</translation>
diff --git a/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardRenderTest.java b/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardRenderTest.java
new file mode 100644
index 0000000..3c008c58
--- /dev/null
+++ b/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardRenderTest.java
@@ -0,0 +1,153 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.tasks.tab_management;
+
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.ALL_KEYS;
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.ARCHIVE_TIME_DELTA_DAYS;
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.CLICK_HANDLER;
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.NUMBER_OF_ARCHIVED_TABS;
+
+import android.graphics.Color;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.FrameLayout;
+
+import androidx.test.filters.MediumTest;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import org.chromium.base.test.BaseActivityTestRule;
+import org.chromium.base.test.params.ParameterAnnotations;
+import org.chromium.base.test.params.ParameterSet;
+import org.chromium.base.test.params.ParameterizedRunner;
+import org.chromium.base.test.util.Batch;
+import org.chromium.base.test.util.CallbackHelper;
+import org.chromium.base.test.util.Feature;
+import org.chromium.chrome.test.ChromeJUnit4RunnerDelegate;
+import org.chromium.chrome.test.R;
+import org.chromium.chrome.test.util.ChromeRenderTestRule;
+import org.chromium.content_public.browser.test.util.TestThreadUtils;
+import org.chromium.ui.modelutil.PropertyModel;
+import org.chromium.ui.modelutil.PropertyModelChangeProcessor;
+import org.chromium.ui.test.util.BlankUiTestActivity;
+import org.chromium.ui.test.util.NightModeTestUtils;
+import org.chromium.ui.test.util.RenderTestRule;
+
+import java.io.IOException;
+import java.util.List;
+
+/** Render tests for archived tabs message card. */
+@RunWith(ParameterizedRunner.class)
+@ParameterAnnotations.UseRunnerDelegate(ChromeJUnit4RunnerDelegate.class)
+@Batch(Batch.PER_CLASS)
+public class ArchivedTabsCardRenderTest {
+    @ParameterAnnotations.ClassParameter
+    public static List<ParameterSet> sClassParams =
+            new NightModeTestUtils.NightModeParams().getParameters();
+
+    @Rule
+    public final ChromeRenderTestRule mRenderTestRule =
+            ChromeRenderTestRule.Builder.withPublicCorpus()
+                    .setBugComponent(RenderTestRule.Component.UI_BROWSER_MOBILE_TAB_SWITCHER_GRID)
+                    .setRevision(1)
+                    .build();
+
+    @Rule
+    public BaseActivityTestRule<BlankUiTestActivity> mActivityTestRule =
+            new BaseActivityTestRule<>(BlankUiTestActivity.class);
+
+    private final CallbackHelper mCallbackHelper = new CallbackHelper();
+
+    private FrameLayout mContentView;
+    private View mArchivedTabsCardView;
+    private PropertyModel mModel;
+    private PropertyModelChangeProcessor mPropertyModelChangeProcessor;
+
+    public ArchivedTabsCardRenderTest(boolean nightModeEnabled) {
+        NightModeTestUtils.setUpNightModeForBlankUiTestActivity(nightModeEnabled);
+        mRenderTestRule.setNightModeEnabled(nightModeEnabled);
+    }
+
+    @Before
+    public void setUp() {
+        mActivityTestRule.launchActivity(null);
+        mActivityTestRule.getActivity().setTheme(R.style.Theme_BrowserUI_DayNight);
+        TestThreadUtils.runOnUiThreadBlocking(
+                () -> {
+                    mContentView = new FrameLayout(mActivityTestRule.getActivity());
+                    mContentView.setBackgroundColor(Color.WHITE);
+
+                    mArchivedTabsCardView =
+                            LayoutInflater.from(mActivityTestRule.getActivity())
+                                    .inflate(
+                                            R.layout.archived_tabs_message_card_view, mContentView);
+
+                    mModel =
+                            new PropertyModel.Builder(ALL_KEYS)
+                                    .with(NUMBER_OF_ARCHIVED_TABS, 12)
+                                    .with(ARCHIVE_TIME_DELTA_DAYS, 14)
+                                    .with(
+                                            CLICK_HANDLER,
+                                            () -> {
+                                                mCallbackHelper.notifyCalled();
+                                            })
+                                    .build();
+
+                    mPropertyModelChangeProcessor =
+                            PropertyModelChangeProcessor.create(
+                                    mModel,
+                                    mArchivedTabsCardView,
+                                    ArchivedTabsCardViewBinder::bind);
+                    FrameLayout.LayoutParams params =
+                            new FrameLayout.LayoutParams(
+                                    ViewGroup.LayoutParams.MATCH_PARENT,
+                                    ViewGroup.LayoutParams.WRAP_CONTENT);
+                    mActivityTestRule.getActivity().setContentView(mContentView, params);
+                });
+    }
+
+    @After
+    public void tearDown() throws Exception {
+        TestThreadUtils.runOnUiThreadBlocking(
+                NightModeTestUtils::tearDownNightModeForBlankUiTestActivity);
+    }
+
+    @Test
+    @MediumTest
+    @Feature("RenderTest")
+    public void testPlural() throws IOException, InterruptedException {
+        mRenderTestRule.render(mArchivedTabsCardView, "plural");
+    }
+
+    @Test
+    @MediumTest
+    @Feature("RenderTest")
+    public void testPlural_VeryLargeNumbers() throws IOException, InterruptedException {
+        TestThreadUtils.runOnUiThreadBlocking(
+                () -> {
+                    mModel.set(NUMBER_OF_ARCHIVED_TABS, 99999999);
+                    mModel.set(ARCHIVE_TIME_DELTA_DAYS, 99999999);
+                });
+        mRenderTestRule.render(mArchivedTabsCardView, "plural_huge");
+    }
+
+    @Test
+    @MediumTest
+    @Feature("RenderTest")
+    public void testSingular() throws IOException, InterruptedException {
+        TestThreadUtils.runOnUiThreadBlocking(
+                () -> {
+                    mModel.set(NUMBER_OF_ARCHIVED_TABS, 1);
+                    mModel.set(ARCHIVE_TIME_DELTA_DAYS, 1);
+                });
+
+        mRenderTestRule.render(mArchivedTabsCardView, "singular");
+    }
+}
diff --git a/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIphTest.java b/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIphTest.java
index d37f2b9..9a72c0a 100644
--- a/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIphTest.java
+++ b/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIphTest.java
@@ -19,7 +19,6 @@
 import static org.hamcrest.CoreMatchers.allOf;
 import static org.hamcrest.Matchers.not;
 import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
 import static org.chromium.base.test.util.Restriction.RESTRICTION_TYPE_NON_LOW_END_DEVICE;
@@ -38,7 +37,6 @@
 import android.widget.TextView;
 
 import androidx.recyclerview.widget.RecyclerView;
-import androidx.test.espresso.NoMatchingRootException;
 import androidx.test.espresso.contrib.RecyclerViewActions;
 import androidx.test.filters.MediumTest;
 import androidx.test.platform.app.InstrumentationRegistry;
@@ -143,7 +141,7 @@
 
     @Test
     @MediumTest
-    @DisabledTest(message = "https://crbug.com/1472857")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testShowAndHideIphDialog() {
         final ChromeTabbedActivity cta = mActivityTestRule.getActivity();
 
@@ -168,10 +166,9 @@
         // Press back should dismiss the IPH dialog.
         pressBack();
         verifyIphDialogHiding(cta);
-        onViewWaiting(withId(R.id.tab_grid_message_item)).check(matches(isDisplayed()));
+        onView(withId(R.id.tab_grid_message_item)).check(matches(isDisplayed()));
 
         // Check the IPH message card is showing and open the IPH dialog.
-        onViewWaiting(withId(R.id.tab_grid_message_item)).check(matches(isDisplayed()));
         onView(allOf(withId(R.id.action_button), withParent(withId(R.id.tab_grid_message_item))))
                 .perform(click());
         verifyIphDialogShowing(cta);
@@ -192,7 +189,7 @@
 
     @Test
     @MediumTest
-    @DisabledTest(message = "crbug.com/1515080")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testIphItemShowingInIncognito() {
         final ChromeTabbedActivity cta = mActivityTestRule.getActivity();
 
@@ -205,7 +202,7 @@
 
     @Test
     @MediumTest
-    @DisabledTest(message = "crbug.com/1412394")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testDismissIphItem() throws Exception {
         ChromeTabbedActivity cta = mActivityTestRule.getActivity();
 
@@ -237,7 +234,7 @@
     @Test
     @MediumTest
     @Feature({"RenderTest"})
-    @DisabledTest(message = "https://crbug.com/1424103")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testRenderIph_Portrait() throws IOException {
         ChromeTabbedActivity cta = mActivityTestRule.getActivity();
 
@@ -253,7 +250,7 @@
     @Test
     @MediumTest
     @Feature({"RenderTest"})
-    @DisabledTest(message = "https://crbug.com/1504246")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testRenderIph_Landscape() throws IOException {
         ChromeTabbedActivity cta = mActivityTestRule.getActivity();
 
@@ -276,7 +273,7 @@
     @Test
     @MediumTest
     @Feature({"RenderTest"})
-    @DisabledTest(message = "crbug.com/1466485")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testRenderIphDialog_Portrait() throws IOException {
         ChromeTabbedActivity cta = mActivityTestRule.getActivity();
 
@@ -306,7 +303,7 @@
     @Test
     @MediumTest
     @Feature({"RenderTest"})
-    @DisabledTest(message = "crbug.com/1300743")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testRenderIphDialog_Landscape() throws IOException {
         ChromeTabbedActivity cta = mActivityTestRule.getActivity();
 
@@ -341,7 +338,7 @@
 
     @Test
     @MediumTest
-    @DisabledTest(message = "https://crbug.com/1424103")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testIphItemChangeWithLastTab() {
         ChromeTabbedActivity cta = mActivityTestRule.getActivity();
 
@@ -378,7 +375,7 @@
 
     @Test
     @MediumTest
-    @DisabledTest(message = "crbug.com/1245260")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testSwipeToDismiss_IPH() {
         ChromeTabbedActivity cta = mActivityTestRule.getActivity();
         enterTabSwitcher(cta);
@@ -402,7 +399,7 @@
 
     @Test
     @MediumTest
-    @DisabledTest(message = "https://crbug.com/1381298")
+    @DisabledTest(message = "Reviving b/341267765")
     public void testNotShowIPHInMultiWindowMode() {
         ChromeTabbedActivity cta = mActivityTestRule.getActivity();
         enterTabSwitcher(cta);
@@ -425,7 +422,6 @@
     private void verifyIphDialogShowing(ChromeTabbedActivity cta) {
         // Verify IPH dialog view.
         onViewWaiting(withId(R.id.iph_dialog))
-                .inRoot(withDecorView(not(cta.getWindow().getDecorView())))
                 .check(
                         (v, noMatchException) -> {
                             if (noMatchException != null) throw noMatchException;
@@ -445,22 +441,10 @@
     }
 
     private void verifyIphDialogHiding(ChromeTabbedActivity cta) {
-        boolean isShowing = true;
-        try {
-            onView(withId(R.id.iph_dialog))
-                    .inRoot(withDecorView(not(cta.getWindow().getDecorView())))
-                    .check(matches(isDisplayed()));
-        } catch (NoMatchingRootException e) {
-            isShowing = false;
-        } catch (Exception e) {
-            assert false : "error when inspecting iph dialog.";
-        }
-        assertFalse(isShowing);
+        onView(withId(R.id.iph_dialog)).check(doesNotExist());
     }
 
     private void exitIphDialogByClickingButton(ChromeTabbedActivity cta) {
-        onView(withId(R.id.positive_button))
-                .inRoot(withDecorView(not(cta.getWindow().getDecorView())))
-                .perform(click());
+        onView(withId(R.id.positive_button)).perform(click());
     }
 }
diff --git a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewBinderUnitTest.java b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewBinderUnitTest.java
new file mode 100644
index 0000000..7b48949
--- /dev/null
+++ b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewBinderUnitTest.java
@@ -0,0 +1,95 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.tasks.tab_management;
+
+import static org.junit.Assert.assertEquals;
+
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.ALL_KEYS;
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.ARCHIVE_TIME_DELTA_DAYS;
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.CLICK_HANDLER;
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.NUMBER_OF_ARCHIVED_TABS;
+
+import android.app.Activity;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.TextView;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.Robolectric;
+import org.robolectric.annotation.Config;
+
+import org.chromium.base.test.BaseRobolectricTestRunner;
+import org.chromium.base.test.util.CallbackHelper;
+import org.chromium.chrome.R;
+import org.chromium.ui.modelutil.PropertyModel;
+import org.chromium.ui.modelutil.PropertyModelChangeProcessor;
+
+import java.util.concurrent.TimeoutException;
+
+/** Tests for ArchivedTabsCardViewBinder. */
+@RunWith(BaseRobolectricTestRunner.class)
+@Config(manifest = Config.NONE)
+public class ArchivedTabsCardViewBinderUnitTest {
+    private static final int ARCHIVED_TABS = 10;
+    private static final int TIME_DELTA = 14;
+
+    private final CallbackHelper mCallbackHelper = new CallbackHelper();
+
+    private Activity mActivity;
+    private View mArchivedTabsCardView;
+    private PropertyModel mModel;
+    private PropertyModelChangeProcessor mPropertyModelChangeProcessor;
+
+    @Before
+    public void setUp() throws Exception {
+        MockitoAnnotations.initMocks(this);
+        mActivity = Robolectric.buildActivity(Activity.class).setup().get();
+        mArchivedTabsCardView =
+                LayoutInflater.from(mActivity)
+                        .inflate(R.layout.archived_tabs_message_card_view, /* root= */ null);
+
+        mModel =
+                new PropertyModel.Builder(ALL_KEYS)
+                        .with(NUMBER_OF_ARCHIVED_TABS, ARCHIVED_TABS)
+                        .with(ARCHIVE_TIME_DELTA_DAYS, TIME_DELTA)
+                        .with(
+                                CLICK_HANDLER,
+                                () -> {
+                                    mCallbackHelper.notifyCalled();
+                                })
+                        .build();
+
+        mPropertyModelChangeProcessor =
+                PropertyModelChangeProcessor.create(
+                        mModel, mArchivedTabsCardView, ArchivedTabsCardViewBinder::bind);
+    }
+
+    @Test
+    public void testSingular() {
+        mModel.set(NUMBER_OF_ARCHIVED_TABS, 1);
+        mModel.set(ARCHIVE_TIME_DELTA_DAYS, 1);
+
+        TextView titleView = mArchivedTabsCardView.findViewById(R.id.title);
+        assertEquals(titleView.getText(), "Inactive tab (1)");
+
+        TextView subtitleView = mArchivedTabsCardView.findViewById(R.id.subtitle);
+        assertEquals(subtitleView.getText(), "Not used for 1 day or more");
+    }
+
+    @Test
+    public void testPlural() throws TimeoutException {
+        TextView titleView = mArchivedTabsCardView.findViewById(R.id.title);
+        assertEquals(titleView.getText(), "Inactive tabs (10)");
+
+        TextView subtitleView = mArchivedTabsCardView.findViewById(R.id.subtitle);
+        assertEquals(subtitleView.getText(), "Not used for 14 days or more");
+
+        mArchivedTabsCardView.callOnClick();
+        mCallbackHelper.waitForFirst();
+    }
+}
diff --git a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsMessageServiceUnitTest.java b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsMessageServiceUnitTest.java
new file mode 100644
index 0000000..d890c68e
--- /dev/null
+++ b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsMessageServiceUnitTest.java
@@ -0,0 +1,127 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.tasks.tab_management;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.ARCHIVE_TIME_DELTA_DAYS;
+import static org.chromium.chrome.browser.tasks.tab_management.ArchivedTabsCardViewProperties.NUMBER_OF_ARCHIVED_TABS;
+
+import android.app.Activity;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.mockito.quality.Strictness;
+import org.robolectric.Robolectric;
+import org.robolectric.annotation.Config;
+
+import org.chromium.base.test.BaseRobolectricTestRunner;
+import org.chromium.chrome.browser.app.tabmodel.ArchivedTabModelOrchestrator;
+import org.chromium.chrome.browser.tab.TabArchiveSettings;
+import org.chromium.chrome.browser.tabmodel.TabModel;
+import org.chromium.chrome.browser.tasks.tab_management.MessageService.MessageType;
+import org.chromium.ui.modelutil.PropertyModel;
+
+import java.util.concurrent.TimeUnit;
+
+/** Tests for ArchivedTabsMessageService. */
+@RunWith(BaseRobolectricTestRunner.class)
+@Config(manifest = Config.NONE)
+public class ArchivedTabsMessageServiceUnitTest {
+    private static final int ARCHIVED_TABS = 12;
+    private static final int TIME_DELTA_HOURS = (int) TimeUnit.DAYS.toHours(10);
+
+    @Rule public MockitoRule mMockitoRule = MockitoJUnit.rule().strictness(Strictness.LENIENT);
+
+    @Mock private ArchivedTabModelOrchestrator mArchivedTabModelOrchestrator;
+    @Mock private TabArchiveSettings mTabArchiveSettings;
+    @Mock private TabModel mArchivedTabModel;
+    @Mock private MessageService.MessageObserver mMessageObserver;
+
+    private Activity mActivity;
+    private ArchivedTabsMessageService mArchivedTabsMessageService;
+
+    @Before
+    public void setUp() throws Exception {
+        mActivity = Robolectric.buildActivity(Activity.class).setup().get();
+
+        doReturn(TIME_DELTA_HOURS).when(mTabArchiveSettings).getArchiveTimeDeltaHours();
+        doReturn(mTabArchiveSettings).when(mArchivedTabModelOrchestrator).getTabArchiveSettings();
+
+        mArchivedTabsMessageService =
+                new ArchivedTabsMessageService(mActivity, mArchivedTabModelOrchestrator);
+        mArchivedTabsMessageService.addObserver(mMessageObserver);
+        mArchivedTabsMessageService
+                .getArchivedTabModelOrchestratorObserverForTesting()
+                .onTabModelCreated(mArchivedTabModel);
+    }
+
+    @Test
+    public void testTabAddedThenRemoved() {
+        PropertyModel customCardPropertyModel =
+                mArchivedTabsMessageService.getCustomCardModelForTesting();
+
+        doReturn(1).when(mArchivedTabModel).getCount();
+        // Note: The params don't matter here.
+        mArchivedTabsMessageService
+                .getArchivedTabModelObserverForTesting()
+                .didAddTab(null, 0, 0, false);
+        assertEquals(1, customCardPropertyModel.get(NUMBER_OF_ARCHIVED_TABS));
+        assertEquals(10, customCardPropertyModel.get(ARCHIVE_TIME_DELTA_DAYS));
+        verify(mMessageObserver, times(1))
+                .messageReady(eq(MessageType.ARCHIVED_TABS_MESSAGE), any());
+
+        doReturn(0).when(mArchivedTabModel).getCount();
+        // Note: The params don't matter here.
+        mArchivedTabsMessageService.getArchivedTabModelObserverForTesting().tabRemoved(null);
+        assertEquals(0, customCardPropertyModel.get(NUMBER_OF_ARCHIVED_TABS));
+        assertEquals(10, customCardPropertyModel.get(ARCHIVE_TIME_DELTA_DAYS));
+        verify(mMessageObserver, times(1)).messageInvalidate(MessageType.ARCHIVED_TABS_MESSAGE);
+    }
+
+    @Test
+    public void testSendDuplicateMessage() {
+        PropertyModel customCardPropertyModel =
+                mArchivedTabsMessageService.getCustomCardModelForTesting();
+
+        doReturn(12).when(mArchivedTabModel).getCount();
+        // Note: The params don't matter here.
+        mArchivedTabsMessageService
+                .getArchivedTabModelObserverForTesting()
+                .didAddTab(null, 0, 0, false);
+        assertEquals(12, customCardPropertyModel.get(NUMBER_OF_ARCHIVED_TABS));
+        assertEquals(10, customCardPropertyModel.get(ARCHIVE_TIME_DELTA_DAYS));
+
+        doReturn(8).when(mArchivedTabModel).getCount();
+        verify(mMessageObserver, times(1))
+                .messageReady(eq(MessageType.ARCHIVED_TABS_MESSAGE), any());
+        // Note: The params don't matter here.
+        mArchivedTabsMessageService
+                .getArchivedTabModelObserverForTesting()
+                .didAddTab(null, 0, 0, false);
+        assertEquals(8, customCardPropertyModel.get(NUMBER_OF_ARCHIVED_TABS));
+        assertEquals(10, customCardPropertyModel.get(ARCHIVE_TIME_DELTA_DAYS));
+        // Sending another message to the queue should exit early without sending a message.
+        verify(mMessageObserver, times(1))
+                .messageReady(eq(MessageType.ARCHIVED_TABS_MESSAGE), any());
+
+        // After invalidating the previous message, a new message should be sent.
+        mArchivedTabsMessageService.maybeInvalidatePreviouslySentMessage();
+        mArchivedTabsMessageService.maybeSendMessageToQueue();
+        verify(mMessageObserver, times(2))
+                .messageReady(eq(MessageType.ARCHIVED_TABS_MESSAGE), any());
+        verify(mMessageObserver, times(1)).messageInvalidate(MessageType.ARCHIVED_TABS_MESSAGE);
+    }
+}
diff --git a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinderUnitTest.java b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinderUnitTest.java
index 242e532..5d933fb 100644
--- a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinderUnitTest.java
+++ b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinderUnitTest.java
@@ -4,21 +4,15 @@
 
 package org.chromium.chrome.browser.tasks.tab_management;
 
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 
-import static org.chromium.chrome.browser.tasks.tab_management.CustomMessageCardViewProperties.ALL_KEYS;
-import static org.chromium.chrome.browser.tasks.tab_management.CustomMessageCardViewProperties.MESSAGE_CARD_VIEW;
-import static org.chromium.chrome.browser.tasks.tab_management.MessageCardViewProperties.IS_INCOGNITO;
-import static org.chromium.chrome.browser.tasks.tab_management.MessageCardViewProperties.MESSAGE_CARD_VISIBILITY_CONTROL_IN_REGULAR_AND_INCOGNITO_MODE;
-import static org.chromium.chrome.browser.tasks.tab_management.TabListModel.CardProperties.CARD_ALPHA;
-import static org.chromium.chrome.browser.tasks.tab_management.TabListModel.CardProperties.CARD_TYPE;
-
 import android.app.Activity;
 import android.view.LayoutInflater;
 import android.view.View;
 
-import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -49,42 +43,30 @@
         MockitoAnnotations.initMocks(this);
         mActivity = Robolectric.buildActivity(Activity.class).setup().get();
 
+        doReturn(mChildView).when(mProvider).getCustomView();
+        doReturn(MessageCardViewProperties.MessageCardScope.BOTH)
+                .when(mProvider)
+                .getMessageCardVisibilityControl();
+        doReturn(TabListModel.CardProperties.ModelType.MESSAGE).when(mProvider).getCardType();
+
         mCustomMessageCardView =
                 (CustomMessageCardView)
                         LayoutInflater.from(mActivity)
                                 .inflate(R.layout.custom_message_card_item, /* root= */ null);
 
-        mModel =
-                new PropertyModel.Builder(ALL_KEYS)
-                        .with(
-                                MESSAGE_CARD_VISIBILITY_CONTROL_IN_REGULAR_AND_INCOGNITO_MODE,
-                                MessageCardViewProperties.MessageCardScope.BOTH)
-                        .with(CARD_TYPE, TabListModel.CardProperties.ModelType.MESSAGE)
-                        .build();
+        mModel = CustomMessageCardViewModel.create(mProvider);
 
         mPropertyModelChangeProcessor =
                 PropertyModelChangeProcessor.create(
-                        mModel,
-                        new CustomMessageCardViewBinder.ViewHolder(
-                                mCustomMessageCardView, mProvider),
-                        CustomMessageCardViewBinder::bind);
+                        mModel, mCustomMessageCardView, CustomMessageCardViewBinder::bind);
     }
 
     @Test
-    public void testSetChildView() {
-        mModel.set(MESSAGE_CARD_VIEW, mChildView);
-        Assert.assertEquals(1, mCustomMessageCardView.getChildCount());
-    }
+    public void testSetup() {
+        assertEquals(1, mCustomMessageCardView.getChildCount());
+        assertEquals(1f, mCustomMessageCardView.getAlpha(), MathUtils.EPSILON);
 
-    @Test
-    public void testSetCardAlpha() {
-        mModel.set(CARD_ALPHA, 1f);
-        Assert.assertEquals(1f, mCustomMessageCardView.getAlpha(), MathUtils.EPSILON);
-    }
-
-    @Test
-    public void testSetIsIncognito() {
-        mModel.set(IS_INCOGNITO, true);
+        mModel.set(MessageCardViewProperties.IS_INCOGNITO, true);
         verify(mProvider, times(1)).setIsIncognito(true);
     }
 }
diff --git a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewBinderUnitTest.java b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewBinderUnitTest.java
deleted file mode 100644
index f6b6af8e..0000000
--- a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewBinderUnitTest.java
+++ /dev/null
@@ -1,93 +0,0 @@
-// Copyright 2024 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.chrome.browser.tasks.tab_management;
-
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.ALL_KEYS;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.ARCHIVED_TABS_EXPAND_CLICK_HANDLER;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.ARCHIVED_TAB_COUNT;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.DECLUTTER_INFO_TEXT;
-import static org.chromium.chrome.browser.tasks.tab_management.DeclutterMessageCardViewProperties.DECLUTTER_SETTINGS_CLICK_HANDLER;
-
-import android.app.Activity;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.TextView;
-
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.Robolectric;
-import org.robolectric.annotation.Config;
-
-import org.chromium.base.test.BaseRobolectricTestRunner;
-import org.chromium.ui.modelutil.PropertyModel;
-import org.chromium.ui.modelutil.PropertyModelChangeProcessor;
-
-/** Tests for DeclutterMessageCardViewBinder. */
-@RunWith(BaseRobolectricTestRunner.class)
-@Config(manifest = Config.NONE)
-public class DeclutterMessageCardViewBinderUnitTest {
-    private Activity mActivity;
-    private View mDeclutterMessageCardView;
-    private PropertyModel mModel;
-    private PropertyModelChangeProcessor mPropertyModelChangeProcessor;
-
-    @Before
-    public void setUp() throws Exception {
-        MockitoAnnotations.initMocks(this);
-        mActivity = Robolectric.buildActivity(Activity.class).setup().get();
-        mDeclutterMessageCardView =
-                LayoutInflater.from(mActivity)
-                        .inflate(R.layout.declutter_message_card_layout, /* root= */ null);
-
-        mModel =
-                new PropertyModel.Builder(ALL_KEYS)
-                        .with(DECLUTTER_INFO_TEXT, R.plurals.tab_declutter_message_card_text_info)
-                        .with(ARCHIVED_TAB_COUNT, 10)
-                        .with(ARCHIVED_TABS_EXPAND_CLICK_HANDLER, () -> {})
-                        .with(DECLUTTER_SETTINGS_CLICK_HANDLER, () -> {})
-                        .build();
-
-        mPropertyModelChangeProcessor =
-                PropertyModelChangeProcessor.create(
-                        mModel, mDeclutterMessageCardView, DeclutterMessageCardViewBinder::bind);
-    }
-
-    @Test
-    public void testInitialSetup() {
-        TextView descriptionView = mDeclutterMessageCardView.findViewById(R.id.declutter_info_text);
-        Assert.assertEquals(
-                mActivity
-                        .getResources()
-                        .getQuantityString(
-                                mModel.get(DECLUTTER_INFO_TEXT),
-                                mModel.get(ARCHIVED_TAB_COUNT),
-                                mModel.get(ARCHIVED_TAB_COUNT)),
-                descriptionView.getText());
-
-        View settingsButton = mDeclutterMessageCardView.findViewById(R.id.declutter_settings);
-        Assert.assertNotNull(settingsButton);
-
-        View expandButton = mDeclutterMessageCardView.findViewById(R.id.declutter_expand_button);
-        Assert.assertNotNull(expandButton);
-    }
-
-    @Test
-    public void testDeclutterTextInfoSingular() {
-        mModel.set(ARCHIVED_TAB_COUNT, 1);
-
-        TextView descriptionView = mDeclutterMessageCardView.findViewById(R.id.declutter_info_text);
-        Assert.assertEquals(
-                mActivity
-                        .getResources()
-                        .getQuantityString(
-                                mModel.get(DECLUTTER_INFO_TEXT),
-                                mModel.get(ARCHIVED_TAB_COUNT),
-                                mModel.get(ARCHIVED_TAB_COUNT)),
-                descriptionView.getText());
-    }
-}
diff --git a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/IphMessageServiceUnitTest.java b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/IphMessageServiceUnitTest.java
index bb24f65..ec60c4b 100644
--- a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/IphMessageServiceUnitTest.java
+++ b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/IphMessageServiceUnitTest.java
@@ -62,7 +62,8 @@
     }
 
     @Test
-    public void testAddObserver() {
+    public void testAddObserver_NotInitialized() {
+        doReturn(false).when(mTracker).isInitialized();
         mIphMessageService.addObserver(mMessageObserver);
         Assert.assertTrue(
                 mIphMessageService.getObserversForTesting().hasObserver(mMessageObserver));
@@ -71,12 +72,26 @@
     }
 
     @Test
-    public void testCallbackWouldTriggerDragDrop() {
+    public void testAddObserver_Initialized() {
         doReturn(true)
                 .when(mTracker)
                 .wouldTriggerHelpUI(eq(FeatureConstants.TAB_GROUPS_DRAG_AND_DROP_FEATURE));
         doReturn(true).when(mTracker).isInitialized();
         mIphMessageService.addObserver(mMessageObserver);
+        Assert.assertTrue(
+                mIphMessageService.getObserversForTesting().hasObserver(mMessageObserver));
+        verify(mMessageObserver, times(1))
+                .messageReady(eq(MessageType.IPH), any(IphMessageService.IphMessageData.class));
+    }
+
+    @Test
+    public void testCallbackWouldTriggerDragDrop() {
+        doReturn(true)
+                .when(mTracker)
+                .wouldTriggerHelpUI(eq(FeatureConstants.TAB_GROUPS_DRAG_AND_DROP_FEATURE));
+        doReturn(false).when(mTracker).isInitialized();
+        mIphMessageService.addObserver(mMessageObserver);
+        doReturn(true).when(mTracker).isInitialized();
         mIphMessageService.getInitializedCallbackForTesting().onResult(true);
         verify(mMessageObserver, times(1))
                 .messageReady(eq(MessageType.IPH), any(IphMessageService.IphMessageData.class));
diff --git a/chrome/android/features/tab_ui/tab_management_java_sources.gni b/chrome/android/features/tab_ui/tab_management_java_sources.gni
index f4d541e..f7dfb5d2 100644
--- a/chrome/android/features/tab_ui/tab_management_java_sources.gni
+++ b/chrome/android/features/tab_ui/tab_management_java_sources.gni
@@ -32,6 +32,9 @@
 # modularize this code at present due to a reliance on chrome_java.
 internal_tab_management_java_sources = [
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_groups/TabGroupUtils.java",
+  "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewBinder.java",
+  "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewProperties.java",
+  "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsMessageService.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ColorPickerCoordinator.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ColorPickerItemProperties.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/ColorPickerItemViewBinder.java",
@@ -41,10 +44,8 @@
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardProvider.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardView.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinder.java",
+  "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewModel.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewProperties.java",
-  "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardView.java",
-  "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewBinder.java",
-  "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewProperties.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoMessageService.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoViewModel.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoTabSwitcherPane.java",
@@ -161,6 +162,7 @@
 tab_management_test_java_sources = [
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupRowViewRenderTest.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherPanePublicTransitTest.java",
+  "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardRenderTest.java",
   "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/AssertsTest.java",
   "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/ClosableTabListEditorTest.java",
   "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/CloseAllTabsDialogTest.java",
@@ -209,12 +211,13 @@
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabsSettingsUnitTest.java",
   "//chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/WasPositiveControllerUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_groups/TabGroupUtilsUnitTest.java",
+  "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsCardViewBinderUnitTest.java",
+  "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ArchivedTabsMessageServiceUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/CloseAllTabsDialogUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ColorPickerItemViewBinderUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ColorPickerMediatorUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/ConditionalAnimationRunnerUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/CustomMessageCardViewBinderUnitTest.java",
-  "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/DeclutterMessageCardViewBinderUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoMessageServiceUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/IphMessageServiceUnitTest.java",
   "//chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardViewBinderUnitTest.java",
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java b/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java
index c214873..5fc54e04 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java
@@ -11,7 +11,6 @@
 import org.chromium.chrome.browser.customtabs.CustomTabsConnection;
 import org.chromium.chrome.browser.gsa.GSAHelper;
 import org.chromium.chrome.browser.historyreport.AppIndexingReporter;
-import org.chromium.chrome.browser.init.ChromeStartupDelegate;
 import org.chromium.chrome.browser.init.ProcessInitializationHandler;
 import org.chromium.chrome.browser.instantapps.InstantAppsHandler;
 import org.chromium.chrome.browser.metrics.VariationsSession;
@@ -189,10 +188,6 @@
         return new ChimeDelegate();
     }
 
-    public ChromeStartupDelegate createChromeStartupDelegate() {
-        return new ChromeStartupDelegate();
-    }
-
     public String getDefaultQueryTilesServerUrl() {
         return "";
     }
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/ArchivedTabModelOrchestrator.java b/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/ArchivedTabModelOrchestrator.java
index f217c2d..a1fbf76 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/ArchivedTabModelOrchestrator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/ArchivedTabModelOrchestrator.java
@@ -163,6 +163,11 @@
         mObservers.removeObserver(observer);
     }
 
+    /** Returns whether the archived tab model has been initialized. */
+    public boolean isTabModelInitialized() {
+        return mInitCalled;
+    }
+
     /**
      * Creates and initiailzes the class and fields, this must be called in the UI thread and can be
      * expensive therefore it should be called from DeferredStartupHandler. Although the lifecycle
@@ -175,7 +180,7 @@
      * <p>Calling this multiple times (e.g. from separate chrome windows) has no effect and is safe
      * to do.
      */
-    public void maybCreateAndInitTabModels(TabContentManager tabContentManager) {
+    public void maybeCreateAndInitTabModels(TabContentManager tabContentManager) {
         if (mInitCalled) return;
         ThreadUtils.assertOnUiThread();
         assert tabContentManager != null;
@@ -287,6 +292,12 @@
         assert false : "Not reached.";
     }
 
+    // Getter methods
+
+    public TabArchiveSettings getTabArchiveSettings() {
+        return mTabArchiveSettings;
+    }
+
     // Private methods
 
     /**
@@ -311,10 +322,6 @@
         mDeclutterInitializationCalled = false;
     }
 
-    public TabArchiveSettings getArchiveSettingsForTesting() {
-        return mTabArchiveSettings;
-    }
-
     public void setTaskRunnerForTesting(TaskRunner taskRunner) {
         mTaskRunner = taskRunner;
     }
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/TabbedModeTabModelOrchestrator.java b/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/TabbedModeTabModelOrchestrator.java
index 6da8ad0..e72920a 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/TabbedModeTabModelOrchestrator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/TabbedModeTabModelOrchestrator.java
@@ -194,7 +194,7 @@
         assert profile != null;
 
         mArchivedTabModelOrchestrator = ArchivedTabModelOrchestrator.getForProfile(profile);
-        mArchivedTabModelOrchestrator.maybCreateAndInitTabModels(tabContentManager);
+        mArchivedTabModelOrchestrator.maybeCreateAndInitTabModels(tabContentManager);
 
         // If the feature flag is enabled, then start the declutter process. Otherwise, rescue
         // tabs that may have been archived previously.
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/HistorySyncFirstRunFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/HistorySyncFirstRunFragment.java
index fc8b73c..e50eb26 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/HistorySyncFirstRunFragment.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/HistorySyncFirstRunFragment.java
@@ -62,7 +62,7 @@
         // Ignore calls before view is created.
         if (getView() == null) return;
 
-        final View title = getView().findViewById(R.id.sync_consent_title);
+        final View title = getView().findViewById(R.id.history_sync_title);
         title.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);
     }
 
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeStartupDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeStartupDelegate.java
deleted file mode 100644
index 43df4bf..0000000
--- a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeStartupDelegate.java
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2020 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.chrome.browser.init;
-
-/** Delegate for Chrome startup initialization, implemented downstream. */
-public class ChromeStartupDelegate {
-    public void initGlobals() {}
-
-    public void init() {}
-}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java
index 8627c70..8823023 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java
@@ -287,9 +287,6 @@
                         }
                     }
                 });
-
-        ChromeStartupDelegate startupDelegate = AppHooks.get().createChromeStartupDelegate();
-        startupDelegate.initGlobals();
     }
 
     /**
@@ -511,9 +508,6 @@
         ChromeCachedFlags.getInstance().cacheMinimalBrowserFlags();
 
         ModuleUtil.recordStartupTime();
-
-        ChromeStartupDelegate startupDelegate = AppHooks.get().createChromeStartupDelegate();
-        startupDelegate.init();
     }
 
     public final void initNetworkChangeNotifier() {
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/app/tabmodel/ArchivedTabModelOrchestratorTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/app/tabmodel/ArchivedTabModelOrchestratorTest.java
index 8fa33096..6fd64cab 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/app/tabmodel/ArchivedTabModelOrchestratorTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/app/tabmodel/ArchivedTabModelOrchestratorTest.java
@@ -125,7 +125,7 @@
                 () -> {
                     mDeferredStartupHandler.runAllTasks();
                     assert mOrchestrator.areTabModelsInitialized();
-                    mOrchestrator.getArchiveSettingsForTesting().resetSettingsForTesting();
+                    mOrchestrator.getTabArchiveSettings().resetSettingsForTesting();
                     mArchivedTabModel = mOrchestrator.getTabModelSelector().getModel(false);
                     mRegularTabModel = mActivityTestRule.getActivity().getCurrentTabModel();
                     mRegularTabCreator = mActivityTestRule.getActivity().getTabCreator(false);
@@ -171,7 +171,7 @@
     @MediumTest
     public void testScheduledDeclutter() {
         finishLoading();
-        mOrchestrator.getArchiveSettingsForTesting().setArchiveEnabled(false);
+        mOrchestrator.getTabArchiveSettings().setArchiveEnabled(false);
         mActivityTestRule.loadUrlInNewTab(
                 mActivityTestRule.getTestServer().getURL(TEST_PATH), /* incognito= */ false);
 
@@ -187,7 +187,7 @@
         assertEquals(2, mRegularTabModel.getCount());
         assertEquals(0, mArchivedTabModel.getCount());
 
-        mOrchestrator.getArchiveSettingsForTesting().setArchiveEnabled(true);
+        mOrchestrator.getTabArchiveSettings().setArchiveEnabled(true);
         // A task was scheduled to perform a scheduled declutter, get it and run it.
         runOnUiThreadBlocking(() -> mTaskRunner.mDelayedTasks.get(0).first.run());
 
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/ntp/NewTabPageColorWithFeedV2Test.java b/chrome/android/javatests/src/org/chromium/chrome/browser/ntp/NewTabPageColorWithFeedV2Test.java
index b41768b9..145761a 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/ntp/NewTabPageColorWithFeedV2Test.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/ntp/NewTabPageColorWithFeedV2Test.java
@@ -18,13 +18,10 @@
 
 import org.chromium.base.test.util.CommandLineFlags;
 import org.chromium.base.test.util.Feature;
-import org.chromium.base.test.util.Features.DisableFeatures;
-import org.chromium.base.test.util.Features.EnableFeatures;
 import org.chromium.base.test.util.Restriction;
 import org.chromium.chrome.browser.feed.v2.FeedV2TestHelper;
 import org.chromium.chrome.browser.feed.v2.TestFeedServer;
 import org.chromium.chrome.browser.firstrun.FirstRunUtils;
-import org.chromium.chrome.browser.flags.ChromeFeatureList;
 import org.chromium.chrome.browser.flags.ChromeSwitches;
 import org.chromium.chrome.browser.tab.Tab;
 import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
@@ -84,38 +81,8 @@
     @MediumTest
     @Restriction(UiRestriction.RESTRICTION_TYPE_PHONE)
     @Feature({"NewTabPage", "FeedNewTabPage"})
-    @DisableFeatures({ChromeFeatureList.SURFACE_POLISH})
-    public void testTextBoxBackgroundColorWithSurfacePolishDisabled() throws Exception {
-        RecyclerView recycleView = (RecyclerView) mNtp.getCoordinatorForTesting().getRecyclerView();
-
-        Context context = mActivityTestRule.getActivity();
-        Assert.assertEquals(
-                ChromeColors.getPrimaryBackgroundColor(context, false),
-                mNtp.getToolbarTextBoxBackgroundColor(Color.BLACK));
-
-        // Wait for the test feed items to be available in the feed.
-        FeedV2TestHelper.waitForRecyclerItems(
-                MIN_ITEMS_AFTER_LOAD,
-                (RecyclerView) mNtp.getCoordinatorForTesting().getRecyclerView());
-
-        // Scroll to the bottom.
-        RecyclerViewTestUtils.scrollToBottom(recycleView);
-        RecyclerViewTestUtils.waitForStableRecyclerView(recycleView);
-
-        Assert.assertTrue(mNtp.isLocationBarScrolledToTopInNtp());
-        final int expectedTextBoxBackground =
-                ChromeColors.getSurfaceColor(context, R.dimen.default_elevation_2);
-        Assert.assertEquals(
-                expectedTextBoxBackground, mNtp.getToolbarTextBoxBackgroundColor(Color.BLACK));
-    }
-
-    @Test
-    @MediumTest
-    @Restriction(UiRestriction.RESTRICTION_TYPE_PHONE)
-    @Feature({"NewTabPage", "FeedNewTabPage"})
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
-    public void testTextBoxBackgroundColor_SurfacePolishEnabled() throws Exception {
-        RecyclerView recycleView = (RecyclerView) mNtp.getCoordinatorForTesting().getRecyclerView();
+    public void testTextBoxBackgroundColor() throws Exception {
+        RecyclerView recycleView = mNtp.getCoordinatorForTesting().getRecyclerView();
 
         Context context = mActivityTestRule.getActivity();
         int expectedTextBoxBackground =
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/omnibox/LocationBarLayoutTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/omnibox/LocationBarLayoutTest.java
index 7d9810a..944ed048 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/omnibox/LocationBarLayoutTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/omnibox/LocationBarLayoutTest.java
@@ -41,7 +41,6 @@
 import org.chromium.base.test.util.Criteria;
 import org.chromium.base.test.util.CriteriaHelper;
 import org.chromium.base.test.util.Features.DisableFeatures;
-import org.chromium.base.test.util.Features.EnableFeatures;
 import org.chromium.base.test.util.Matchers;
 import org.chromium.base.test.util.Restriction;
 import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -410,13 +409,12 @@
 
     @Test
     @MediumTest
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
     @Restriction({UiRestriction.RESTRICTION_TYPE_PHONE})
-    public void testPhoneUrlBarAndStatusViewTranslation_SurfacePolishEnabled() {
+    public void testPhoneUrlBarAndStatusViewTranslation() {
         TestThreadUtils.runOnUiThreadBlocking(
                 () -> {
                     Activity activity = mActivityTestRule.getActivity();
-                    int statusIconAndUrlBarOffsetForSurfacePolish =
+                    int statusIconAndUrlBarOffset =
                             OmniboxResourceProvider.getToolbarSidePaddingForStartSurfaceOrNtp(
                                             activity)
                                     - OmniboxResourceProvider.getToolbarSidePadding(activity);
@@ -435,13 +433,12 @@
                             /* isUrlFocusChangeInProgress= */ true);
 
                     Assert.assertEquals(
-                            statusIconAndUrlBarOffsetForSurfacePolish * (1 - MathUtils.EPSILON),
+                            statusIconAndUrlBarOffset * (1 - MathUtils.EPSILON),
                             urlBar.getTranslationX(),
                             MathUtils.EPSILON);
                     Assert.assertEquals(
                             OmniboxResourceProvider.getFocusedStatusViewLeftSpacing(activity)
-                                    + statusIconAndUrlBarOffsetForSurfacePolish
-                                            * (1 - MathUtils.EPSILON),
+                                    + statusIconAndUrlBarOffset * (1 - MathUtils.EPSILON),
                             statusView.getTranslationX(),
                             MathUtils.EPSILON);
 
@@ -451,12 +448,12 @@
                             /* urlFocusChangeFraction= */ 0.5f,
                             /* isUrlFocusChangeInProgress= */ true);
                     Assert.assertEquals(
-                            statusIconAndUrlBarOffsetForSurfacePolish * 0.5,
+                            statusIconAndUrlBarOffset * 0.5,
                             urlBar.getTranslationX(),
                             MathUtils.EPSILON);
                     Assert.assertEquals(
                             OmniboxResourceProvider.getFocusedStatusViewLeftSpacing(activity)
-                                    + statusIconAndUrlBarOffsetForSurfacePolish * 0.5,
+                                    + statusIconAndUrlBarOffset * 0.5,
                             statusView.getTranslationX(),
                             MathUtils.EPSILON);
 
@@ -478,13 +475,12 @@
                             /* isUrlFocusChangeInProgress= */ true);
 
                     Assert.assertEquals(
-                            statusIconAndUrlBarOffsetForSurfacePolish * (1 - MathUtils.EPSILON),
+                            statusIconAndUrlBarOffset * (1 - MathUtils.EPSILON),
                             urlBar.getTranslationX(),
                             MathUtils.EPSILON);
                     Assert.assertEquals(
                             OmniboxResourceProvider.getFocusedStatusViewLeftSpacing(activity)
-                                    + statusIconAndUrlBarOffsetForSurfacePolish
-                                            * (1 - MathUtils.EPSILON),
+                                    + statusIconAndUrlBarOffset * (1 - MathUtils.EPSILON),
                             statusView.getTranslationX(),
                             MathUtils.EPSILON);
                 });
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninAndHistoryOptInIntegrationTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninAndHistoryOptInIntegrationTest.java
index 46fb53f..baa9b63 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninAndHistoryOptInIntegrationTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninAndHistoryOptInIntegrationTest.java
@@ -162,7 +162,7 @@
                 HistoryOptInMode.REQUIRED);
 
         // The footer should show the email of the signed in account.
-        onView(withId(R.id.sync_consent_details_description))
+        onView(withId(R.id.history_sync_footer))
                 .inRoot(isDialog())
                 .check(
                         matches(
@@ -193,7 +193,7 @@
         // Verify that the history opt-in dialog is shown and decline.
         onView(withId(R.id.history_sync_illustration)).check(matches(isDisplayed()));
         // The user has just signed in, so the footer shouldn't show the email.
-        onView(withId(R.id.sync_consent_details_description))
+        onView(withId(R.id.history_sync_footer))
                 .inRoot(isDialog())
                 .check(
                         matches(
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhoneTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhoneTest.java
index 9d8f735..3b570ee 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhoneTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhoneTest.java
@@ -809,11 +809,10 @@
 
     @Test
     @MediumTest
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
-    public void testToolbarBackgroundChanged() {
+    public void testToolbarBackgroundChange() {
         ColorDrawable toolbarBackgroundDrawable = mToolbar.getBackgroundDrawable();
         @ColorInt
-        int homeSurfaceToolbarBackgroundColorForSurfacePolish =
+        int homeSurfaceToolbarBackgroundColor =
                 ColorUtils.setAlphaComponent(
                         ChromeColors.getSurfaceColor(
                                 mToolbar.getContext(),
@@ -821,45 +820,38 @@
                         0);
 
         assertEquals(false, mToolbar.isLocationBarShownInNtp());
-        assertNotEquals(
-                homeSurfaceToolbarBackgroundColorForSurfacePolish,
-                toolbarBackgroundDrawable.getColor());
+        assertNotEquals(homeSurfaceToolbarBackgroundColor, toolbarBackgroundDrawable.getColor());
 
         // Load the new tab page.
         mActivityTestRule.loadUrl(UrlConstants.NTP_URL);
         Tab tab = mActivityTestRule.getActivity().getActivityTab();
         NewTabPageTestUtils.waitForNtpLoaded(tab);
         assertEquals(true, mToolbar.isLocationBarShownInNtp());
-        assertEquals(
-                homeSurfaceToolbarBackgroundColorForSurfacePolish,
-                toolbarBackgroundDrawable.getColor());
+        assertEquals(homeSurfaceToolbarBackgroundColor, toolbarBackgroundDrawable.getColor());
 
         // Focus on the Omnibox.
         mOmnibox.requestFocus();
-        assertNotEquals(
-                homeSurfaceToolbarBackgroundColorForSurfacePolish,
-                toolbarBackgroundDrawable.getColor());
+        assertNotEquals(homeSurfaceToolbarBackgroundColor, toolbarBackgroundDrawable.getColor());
     }
 
     @Test
     @MediumTest
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
     @ParameterAnnotations.UseMethodParameter(NightModeTestUtils.NightModeParams.class)
     public void testRealSearchBoxAppearanceChange(boolean nightModeEnabled) {
         LocationBarCoordinator locationBarCoordinator =
                 (LocationBarCoordinator) mToolbar.getLocationBar();
         View iconBackground = mToolbar.findViewById(R.id.location_bar_status_icon_bg);
-        int expectedEndMarginAfterPolish =
+        int expectedEndMarginForNtp =
                 mToolbar.getResources()
                         .getDimensionPixelSize(R.dimen.location_bar_url_action_offset_polish);
-        int expectedEndMarginBeforePolish =
+        int expectedEndMargin =
                 mToolbar.getResources()
                         .getDimensionPixelSize(R.dimen.location_bar_url_action_offset);
 
         assertEquals(false, mToolbar.isLocationBarShownInNtp());
         assertEquals(View.INVISIBLE, iconBackground.getVisibility());
         assertEquals(
-                expectedEndMarginBeforePolish,
+                expectedEndMargin,
                 locationBarCoordinator.getUrlActionContainerEndMarginForTesting());
 
         // Load the new tab page.
@@ -879,50 +871,43 @@
             assertEquals(View.VISIBLE, iconBackground.getVisibility());
         }
         assertEquals(
-                expectedEndMarginAfterPolish,
+                expectedEndMarginForNtp,
                 locationBarCoordinator.getUrlActionContainerEndMarginForTesting());
 
         // Focus on the Omnibox.
         mOmnibox.requestFocus();
         assertEquals(View.INVISIBLE, iconBackground.getVisibility());
         assertEquals(
-                expectedEndMarginBeforePolish,
+                expectedEndMargin,
                 locationBarCoordinator.getUrlActionContainerEndMarginForTesting());
     }
 
     @Test
     @MediumTest
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
     public void testToolbarBackgroundChangedWhenSearchEngineHasNoLogo() {
         when(mTemplateUrlService.doesDefaultSearchEngineHaveLogo()).thenReturn(false);
 
         ColorDrawable toolbarBackgroundDrawable = mToolbar.getBackgroundDrawable();
         @ColorInt
-        int homeSurfaceToolbarBackgroundColorForSurfacePolish =
+        int homeSurfaceToolbarBackgroundColor =
                 ChromeColors.getSurfaceColor(
                         mToolbar.getContext(),
                         org.chromium.chrome.browser.toolbar.R.dimen
                                 .home_surface_background_color_elevation);
 
         assertEquals(false, mToolbar.isLocationBarShownInGeneralNtp());
-        assertNotEquals(
-                homeSurfaceToolbarBackgroundColorForSurfacePolish,
-                toolbarBackgroundDrawable.getColor());
+        assertNotEquals(homeSurfaceToolbarBackgroundColor, toolbarBackgroundDrawable.getColor());
 
         // Load the new tab page.
         mActivityTestRule.loadUrl(UrlConstants.NTP_URL);
         Tab tab = mActivityTestRule.getActivity().getActivityTab();
         NewTabPageTestUtils.waitForNtpLoaded(tab);
         assertEquals(true, mToolbar.isLocationBarShownInGeneralNtp());
-        assertEquals(
-                homeSurfaceToolbarBackgroundColorForSurfacePolish,
-                toolbarBackgroundDrawable.getColor());
+        assertEquals(homeSurfaceToolbarBackgroundColor, toolbarBackgroundDrawable.getColor());
 
         // Focus the Omnibox.
         mOmnibox.requestFocus();
-        assertNotEquals(
-                homeSurfaceToolbarBackgroundColorForSurfacePolish,
-                toolbarBackgroundDrawable.getColor());
+        assertNotEquals(homeSurfaceToolbarBackgroundColor, toolbarBackgroundDrawable.getColor());
     }
 
     private static class TestControlsVisibilityDelegate
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/ui/system/StatusBarColorControllerTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/ui/system/StatusBarColorControllerTest.java
index 2be43285..ec6d06e 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/ui/system/StatusBarColorControllerTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/ui/system/StatusBarColorControllerTest.java
@@ -161,92 +161,47 @@
         waitForStatusBarColor(activity, expectedDefaultStandardColor);
     }
 
-    /** Test that the default color is used in Start surface without surface polish enabled. */
+    /** Test the color of status bar when used in NTP. */
     @Test
     @LargeTest
     @Feature({"StatusBar"})
-    @DisableFeatures({
-        ChromeFeatureList.SURFACE_POLISH,
-        ChromeFeatureList.SHOW_NTP_AT_STARTUP_ANDROID
-    })
-    @Restriction({UiRestriction.RESTRICTION_TYPE_PHONE}) // Status bar is always black on tablets
-    public void testBrandColorIgnoredInStartSurface() throws Exception {
-        ChromeTabbedActivity activity = sActivityTestRule.getActivity();
-        final int expectedDefaultStandardColor = ChromeColors.getDefaultThemeColor(activity, false);
-
-        TestThreadUtils.runOnUiThreadBlocking(
-                () -> {
-                    activity.getLayoutManager()
-                            .showLayout(LayoutType.START_SURFACE, /* animate= */ false);
-                });
-        StartSurfaceTestUtils.waitForStartSurfaceVisible(activity);
-        waitForStatusBarColor(activity, expectedDefaultStandardColor);
-    }
-
-    /** Test that a polished color is used in NTP with surface polish enabled. */
-    @Test
-    @LargeTest
-    @Feature({"StatusBar"})
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
-    @Restriction({UiRestriction.RESTRICTION_TYPE_PHONE}) // Status bar is always black on tablets
-    public void testPolishStatusBarColorNtp() throws Exception {
-        ChromeTabbedActivity activity = sActivityTestRule.getActivity();
-        final int expectedPolishedStandardColor =
-                ChromeColors.getSurfaceColor(
-                        activity, R.dimen.home_surface_background_color_elevation);
-
-        sActivityTestRule.loadUrlInNewTab(UrlConstants.NTP_URL, false);
-        NewTabPageTestUtils.waitForNtpLoaded(activity.getActivityTab());
-
-        // Scroll the toolbar up and let it pinned on top.
-        scrollUpToolbarUntilPinnedAtTop(activity);
-        waitForStatusBarColor(activity, expectedPolishedStandardColor);
-    }
-
-    /** Test that the default color is used in Start surface without surface polish enabled. */
-    @Test
-    @LargeTest
-    @Feature({"StatusBar"})
-    @DisableFeatures({ChromeFeatureList.SURFACE_POLISH})
     @Restriction({UiRestriction.RESTRICTION_TYPE_PHONE}) // Status bar is always black on tablets
     @DisabledTest(message = "https://issues.chromium.org/issues/341157444")
     public void testStatusBarColorNtp() throws Exception {
         ChromeTabbedActivity activity = sActivityTestRule.getActivity();
-        final int expectedStandardColor = ChromeColors.getDefaultThemeColor(activity, false);
+        final int expectedColor =
+                ChromeColors.getSurfaceColor(
+                        activity, R.dimen.home_surface_background_color_elevation);
 
         sActivityTestRule.loadUrlInNewTab(UrlConstants.NTP_URL, false);
         NewTabPageTestUtils.waitForNtpLoaded(activity.getActivityTab());
 
         // Scroll the toolbar up and let it pinned on top.
         scrollUpToolbarUntilPinnedAtTop(activity);
-        waitForStatusBarColor(activity, expectedStandardColor);
+        waitForStatusBarColor(activity, expectedColor);
     }
 
-    /**
-     * Test that a polished color is used in Start surface with surface polish enabled, but not on
-     * Tab switcher.
-     */
+    /** Test the color of status bar when used in Start surface and Tab switcher. */
     @Test
     @LargeTest
     @Feature({"StatusBar"})
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
     @DisableFeatures({ChromeFeatureList.SHOW_NTP_AT_STARTUP_ANDROID})
     @Restriction({UiRestriction.RESTRICTION_TYPE_PHONE}) // Status bar is always black on tablets
-    public void testBrandColorNotIgnoredInStartSurfaceWithSurfacePolishEnabled() throws Exception {
+    public void testBrandColorNotIgnoredInStartSurface() throws Exception {
         ChromeTabbedActivity activity = sActivityTestRule.getActivity();
-        final int expectedPolishedStandardColor =
+        final int expectedColor =
                 ChromeColors.getSurfaceColor(
                         activity, R.dimen.home_surface_background_color_elevation);
         final int expectedDefaultStandardColor = ChromeColors.getDefaultThemeColor(activity, false);
 
-        // Verifies that the status bar color uses a polished color for Start surface.
+        // Verifies that the status bar color uses a correct color for Start surface.
         TestThreadUtils.runOnUiThreadBlocking(
                 () -> {
                     activity.getLayoutManager()
                             .showLayout(LayoutType.START_SURFACE, /* animate= */ false);
                 });
         StartSurfaceTestUtils.waitForStartSurfaceVisible(activity);
-        waitForStatusBarColor(activity, expectedPolishedStandardColor);
+        waitForStatusBarColor(activity, expectedColor);
 
         // Verifies that the status bar color unchanged on Tab switcher.
         TestThreadUtils.runOnUiThreadBlocking(
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/PwaRestoreBottomSheetIntegrationTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/PwaRestoreBottomSheetIntegrationTest.java
index 99d911a..f909204 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/PwaRestoreBottomSheetIntegrationTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/PwaRestoreBottomSheetIntegrationTest.java
@@ -272,8 +272,9 @@
         assertIsComboCheckedAtIndex(1, true);
         assertIsComboCheckedAtIndex(2, true);
 
-        // Deselect button should start in enabled state.
+        // Deselect and Restore buttons should start in enabled state.
         onView(withId(R.id.deselect_button)).check(matches(isEnabled()));
+        onView(withId(R.id.restore_button)).check(matches(isEnabled()));
 
         // Now verify the Deselect function leaves everything in unchecked state.
         onView(withId(R.id.deselect_button)).check(matches(isDisplayed()));
@@ -282,23 +283,26 @@
         assertIsComboCheckedAtIndex(1, false);
         assertIsComboCheckedAtIndex(2, false);
 
-        // Deselect button should now be disabled (nothing left to disable).
+        // Deselect and Restore buttons should now be disabled (nothing to act on).
         onView(withId(R.id.deselect_button)).check(matches(isNotEnabled()));
+        onView(withId(R.id.restore_button)).check(matches(isNotEnabled()));
 
         // Ensure one entry gets checked.
         onView(withText("App 1")).check(matches(isDisplayed()));
         onView(withText("App 1")).perform(click());
         assertIsComboCheckedAtIndex(1, true);
 
-        // Deselect button becomes enabled since we have something to disable.
+        // Deselect and Restore buttons become enabled since we have something to act on.
         onView(withId(R.id.deselect_button)).check(matches(isEnabled()));
+        onView(withId(R.id.restore_button)).check(matches(isEnabled()));
 
         // Ensure same entry gets unchecked again.
         onView(withText("App 1")).perform(click());
         assertIsComboCheckedAtIndex(1, false);
 
-        // Deselect button becomes disabled since no item remains selected.
+        // Deselect and Restore buttons become disabled since no item remains selected.
         onView(withId(R.id.deselect_button)).check(matches(isNotEnabled()));
+        onView(withId(R.id.restore_button)).check(matches(isNotEnabled()));
     }
 
     @Test
diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/suggestions/tile/MostVisitedMediatorUnitTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/suggestions/tile/MostVisitedMediatorUnitTest.java
index a43ce3d..24212810 100644
--- a/chrome/android/junit/src/org/chromium/chrome/browser/suggestions/tile/MostVisitedMediatorUnitTest.java
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/suggestions/tile/MostVisitedMediatorUnitTest.java
@@ -18,7 +18,6 @@
 import static org.chromium.chrome.browser.suggestions.tile.MostVisitedTilesProperties.IS_CONTAINER_VISIBLE;
 import static org.chromium.chrome.browser.suggestions.tile.MostVisitedTilesProperties.IS_MVT_LAYOUT_VISIBLE;
 import static org.chromium.chrome.browser.suggestions.tile.MostVisitedTilesProperties.PLACEHOLDER_VIEW;
-import static org.chromium.chrome.browser.suggestions.tile.MostVisitedTilesProperties.UPDATE_INTERVAL_PADDINGS_TABLET;
 
 import android.content.res.Configuration;
 import android.content.res.Resources;
@@ -40,10 +39,7 @@
 
 import org.chromium.base.test.BaseRobolectricTestRunner;
 import org.chromium.base.test.util.Features;
-import org.chromium.base.test.util.Features.DisableFeatures;
-import org.chromium.base.test.util.Features.EnableFeatures;
 import org.chromium.chrome.R;
-import org.chromium.chrome.browser.flags.ChromeFeatureList;
 import org.chromium.chrome.browser.native_page.ContextMenuManager;
 import org.chromium.chrome.browser.offlinepages.OfflinePageBridge;
 import org.chromium.chrome.browser.profiles.Profile;
@@ -171,8 +167,7 @@
     }
 
     @Test
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
-    public void testOnTileCountChanged_SurfacePolished() {
+    public void testMvtContainerOnTileCountChanged() {
         ArrayList<SiteSuggestion> array = new ArrayList<>();
         array.add(mData);
         mMostVisitedSites.setTileSuggestions(array);
@@ -237,7 +232,7 @@
     }
 
     @Test
-    public void testSetPortraitPaddings_ScrollableMVT_NotSmallDevice() {
+    public void testSetPortraitPaddings_NotSmallDevice() {
         mConfiguration.orientation = Configuration.ORIENTATION_PORTRAIT;
         createMediator();
         mMediator.onTileDataChanged();
@@ -256,7 +251,7 @@
     }
 
     @Test
-    public void testSetPortraitPaddings_ScrollableMVT_SmallDevice() {
+    public void testSetPortraitPaddings_SmallDevice() {
         mConfiguration.orientation = Configuration.ORIENTATION_PORTRAIT;
         when(mUiConfig.getCurrentDisplayStyle())
                 .thenReturn(
@@ -280,15 +275,6 @@
     }
 
     @Test
-    public void testSetPortraitPaddings_NonScrollableMVT() {
-        mConfiguration.orientation = Configuration.ORIENTATION_PORTRAIT;
-        createMediator(/* isScrollableMVTEnabled= */ false, /* isTablet= */ false);
-        mMediator.onTileDataChanged();
-        Assert.assertNull(mModel.get(HORIZONTAL_EDGE_PADDINGS));
-        Assert.assertNull(mModel.get(HORIZONTAL_INTERVAL_PADDINGS));
-    }
-
-    @Test
     public void testSetLandscapePaddings() {
         mConfiguration.orientation = Configuration.ORIENTATION_LANDSCAPE;
         createMediator();
@@ -303,17 +289,7 @@
     }
 
     @Test
-    public void testSetLandscapePaddings_NonScrollableMVT() {
-        mConfiguration.orientation = Configuration.ORIENTATION_LANDSCAPE;
-        createMediator(/* isScrollableMVTEnabled= */ false, /* isTablet= */ false);
-        mMediator.onTileDataChanged();
-
-        Assert.assertNull(mModel.get(HORIZONTAL_EDGE_PADDINGS));
-        Assert.assertNull(mModel.get(HORIZONTAL_INTERVAL_PADDINGS));
-    }
-
-    @Test
-    public void testDestroy_ScrollableMVT() {
+    public void testDestroy() {
         createMediator();
 
         mMediator.destroy();
@@ -323,42 +299,13 @@
     }
 
     @Test
-    @DisableFeatures({ChromeFeatureList.SURFACE_POLISH})
-    public void testUpdateTilesViewForCarouselLayout_Tablet_WithSurfacePolishDisabled() {
-        mConfiguration.orientation = Configuration.ORIENTATION_PORTRAIT;
-        createMediator(/* isScrollableMVTEnabled= */ true, /* isTablet= */ true);
-        mMediator.onTileDataChanged();
-        Assert.assertEquals(
-                "The horizontal edge padding passed to the model is wrong",
-                0,
-                (int) mModel.get(HORIZONTAL_EDGE_PADDINGS));
-        Assert.assertFalse(
-                "The value of property UPDATE_INTERVAL_PADDINGS_TABLET passed "
-                        + "to the model is wrong",
-                mModel.get(UPDATE_INTERVAL_PADDINGS_TABLET));
-
-        mConfiguration.orientation = Configuration.ORIENTATION_LANDSCAPE;
-        createMediator(/* isScrollableMVTEnabled= */ true, /* isTablet= */ true);
-        mMediator.onTileDataChanged();
-        Assert.assertEquals(
-                "The horizontal edge padding passed to the model is wrong",
-                0,
-                (int) mModel.get(HORIZONTAL_EDGE_PADDINGS));
-        Assert.assertTrue(
-                "The value of property UPDATE_INTERVAL_PADDINGS_TABLET passed "
-                        + "to the model is wrong",
-                mModel.get(UPDATE_INTERVAL_PADDINGS_TABLET));
-    }
-
-    @Test
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
     public void testUpdateTilesViewForCarouselLayout_Tablet() {
         int expectedTileViewEdgePadding =
                 mResources.getDimensionPixelSize(R.dimen.tile_view_padding_edge_tablet_polish);
         int expectedTileViewIntervalPadding =
                 mResources.getDimensionPixelSize(R.dimen.tile_view_padding_interval_tablet_polish);
         mConfiguration.orientation = Configuration.ORIENTATION_PORTRAIT;
-        createMediator(/* isScrollableMVTEnabled= */ true, /* isTablet= */ true);
+        createMediator(/* isTablet= */ true);
         mMediator.onTileDataChanged();
         Assert.assertEquals(
                 "The horizontal edge padding passed to the model is wrong",
@@ -370,7 +317,7 @@
                 (int) mModel.get(HORIZONTAL_INTERVAL_PADDINGS));
 
         mConfiguration.orientation = Configuration.ORIENTATION_LANDSCAPE;
-        createMediator(/* isScrollableMVTEnabled= */ true, /* isTablet= */ true);
+        createMediator(/* isTablet= */ true);
         mMediator.onTileDataChanged();
         Assert.assertEquals(
                 "The horizontal edge padding passed to the model is wrong",
@@ -385,7 +332,7 @@
     @Test
     public void testUpdateTilesViewForCarouselLayout_Phone() {
         mConfiguration.orientation = Configuration.ORIENTATION_PORTRAIT;
-        createMediator(/* isScrollableMVTEnabled= */ true, /* isTablet= */ false);
+        createMediator(/* isTablet= */ false);
         mMediator.onTileDataChanged();
         // tile_view_padding_edge_portrait
         Assert.assertEquals(
@@ -394,7 +341,7 @@
                 (int) mModel.get(HORIZONTAL_EDGE_PADDINGS));
 
         mConfiguration.orientation = Configuration.ORIENTATION_LANDSCAPE;
-        createMediator(/* isScrollableMVTEnabled= */ true, /* isTablet= */ false);
+        createMediator(/* isTablet= */ false);
         mMediator.onTileDataChanged();
         Assert.assertEquals(
                 "The horizontal edge padding passed to the model is wrong",
@@ -403,15 +350,11 @@
     }
 
     private void createMediator() {
-        createMediator(true, false);
+        createMediator(/* isTablet= */ false);
     }
 
-    private void createMediator(boolean isScrollableMVTEnabled, boolean isTablet) {
-        if (!isScrollableMVTEnabled) {
-            mMvTilesLayout = Mockito.mock(MostVisitedTilesGridLayout.class);
-        } else {
-            mMvTilesLayout = Mockito.mock(MostVisitedTilesCarouselLayout.class);
-        }
+    private void createMediator(boolean isTablet) {
+        mMvTilesLayout = Mockito.mock(MostVisitedTilesCarouselLayout.class);
 
         mMvTilesLayout.addView(mTileView);
         when(mMvTilesLayout.getChildCount()).thenReturn(1);
@@ -426,7 +369,7 @@
                         mNoMvPlaceholderStub,
                         mTileRenderer,
                         mModel,
-                        isScrollableMVTEnabled,
+                        /* isScrollableMVTEnabled= */ true,
                         isTablet,
                         mSnapshotTileGridChangedRunnable,
                         mTileCountChangedRunnable);
diff --git a/chrome/android/profiles/arm.newest.txt b/chrome/android/profiles/arm.newest.txt
index 9e169d6..566dc4e49 100644
--- a/chrome/android/profiles/arm.newest.txt
+++ b/chrome/android/profiles/arm.newest.txt
@@ -1 +1 @@
-chromeos-chrome-arm-127.0.6483.0_rc-r1-merged.afdo.bz2
+chromeos-chrome-arm-127.0.6484.0_rc-r1-merged.afdo.bz2
diff --git a/chrome/android/profiles/newest.txt b/chrome/android/profiles/newest.txt
index f7f9935b..d5c7001 100644
--- a/chrome/android/profiles/newest.txt
+++ b/chrome/android/profiles/newest.txt
@@ -1 +1 @@
-chromeos-chrome-amd64-127.0.6483.0_rc-r1-merged.afdo.bz2
+chromeos-chrome-amd64-127.0.6484.0_rc-r1-merged.afdo.bz2
diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd
index 0910a2c..b5645c7 100644
--- a/chrome/app/generated_resources.grd
+++ b/chrome/app/generated_resources.grd
@@ -16848,19 +16848,7 @@
       Translate
     </message>
     <message name="IDS_LENS_OVERLAY_INITIAL_TOAST_MESSAGE" desc="Text that is shown in the Lens Overlay education bubble when starting the feature. Informs the user to tap an object or drag over the screen to select a region to search with Google Lens.">
-      Select anything to search with Google Lens
-    </message>
-    <message name="IDS_LENS_OVERLAY_CURSOR_TOOLTIP_DRAG_MESSAGE" desc="Text that is shown in the Lens Overlay tooltip that appears beneath the cursor. Informs the user to drag over the screen to select a region to search it.">
-      Drag to search
-    </message>
-    <message name="IDS_LENS_OVERLAY_CURSOR_TOOLTIP_TEXT_HIGHLIGHT_MESSAGE" desc="Text that is shown in the Lens Overlay tooltip that appears beneath the cursor. Informs the user to highlight text to search it.">
-      Select text to search
-    </message>
-    <message name="IDS_LENS_OVERLAY_CURSOR_TOOLTIP_CLICK_MESSAGE" desc="Text that is shown in the Lens Overlay tooltip that appears beneath the cursor. Informs the user to click on an object to search it.">
-      Click to search
-    </message>
-    <message name="IDS_LENS_OVERLAY_CURSOR_TOOLTIP_LIVE_PAGE_MESSAGE" desc="Text that is shown in the Lens Overlay tooltip that appears beneath the cursor. Informs the user to click to exit Google Lens.">
-      Click to exit Google Lens
+      Click or drag anywhere to search with Lens
     </message>
     <message name="IDS_LENS_SEND_FEEDBACK_LABEL" desc="Text that is shown in the tooltip of the send feedback button in the Lens Overlay.">
       Send feedback
diff --git a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_CLICK_MESSAGE.png.sha1 b/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_CLICK_MESSAGE.png.sha1
deleted file mode 100644
index 6647d5d3..0000000
--- a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_CLICK_MESSAGE.png.sha1
+++ /dev/null
@@ -1 +0,0 @@
-f4555a75f48aa45e3609481dda757a4ff4c5d6fb
\ No newline at end of file
diff --git a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_DRAG_MESSAGE.png.sha1 b/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_DRAG_MESSAGE.png.sha1
deleted file mode 100644
index 25b5a1c..0000000
--- a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_DRAG_MESSAGE.png.sha1
+++ /dev/null
@@ -1 +0,0 @@
-8c41b118fe2f65f6f91f53db13f0e468b9a1520f
\ No newline at end of file
diff --git a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_LIVE_PAGE_MESSAGE.png.sha1 b/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_LIVE_PAGE_MESSAGE.png.sha1
deleted file mode 100644
index 9538d39..0000000
--- a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_LIVE_PAGE_MESSAGE.png.sha1
+++ /dev/null
@@ -1 +0,0 @@
-d9b0f5759bfcdf6862b25134e5a60e6b066c7d7a
\ No newline at end of file
diff --git a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_TEXT_HIGHLIGHT_MESSAGE.png.sha1 b/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_TEXT_HIGHLIGHT_MESSAGE.png.sha1
deleted file mode 100644
index e63a7a9..0000000
--- a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_CURSOR_TOOLTIP_TEXT_HIGHLIGHT_MESSAGE.png.sha1
+++ /dev/null
@@ -1 +0,0 @@
-3fd947acc0f85406e226d076faa557ef044d2ed9
\ No newline at end of file
diff --git a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_INITIAL_TOAST_MESSAGE.png.sha1 b/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_INITIAL_TOAST_MESSAGE.png.sha1
index b1da652..e9fc2b4a 100644
--- a/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_INITIAL_TOAST_MESSAGE.png.sha1
+++ b/chrome/app/generated_resources_grd/IDS_LENS_OVERLAY_INITIAL_TOAST_MESSAGE.png.sha1
@@ -1 +1 @@
-ee89be82d467dd2c7d111efee22b554c2677ee1d
\ No newline at end of file
+76d31ebc86ffa71e51fdfdf25bf0350f00898574
\ No newline at end of file
diff --git a/chrome/app/os_settings_strings.grdp b/chrome/app/os_settings_strings.grdp
index 946d9d6..1d702e50 100644
--- a/chrome/app/os_settings_strings.grdp
+++ b/chrome/app/os_settings_strings.grdp
@@ -4262,6 +4262,15 @@
   <message name="IDS_SETTINGS_INTERNET_KNOWN_NETWORKS" desc="Name of the settings page which displays the list of known networks.">
     Known Networks
   </message>
+  <message name="IDS_SETTINGS_INTERNET_YOUR_DEVICE_HOTSPOTS" desc="Name of a settings page header displayed over a list of the user's devices available for Instant Hotspot.">
+    Your device hotspots
+  </message>
+  <message name="IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_TITLE" desc="Title of a control allowing users to disable notifications for Instant Hotspot.">
+    Show notification
+  </message>
+  <message name="IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_DESCRIPTION" desc="Description of a control allowing users to disable notifications for Instant Hotspot.">
+    When your Chromebook is offline and hotspots are available
+  </message>
   <message name="IDS_SETTINGS_INTERNET_NO_NETWORKS" desc="Entry when there are no preferred networks or no networks of a particular type.">
     None
   </message>
diff --git a/chrome/app/os_settings_strings_grdp/IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_DESCRIPTION.png.sha1 b/chrome/app/os_settings_strings_grdp/IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_DESCRIPTION.png.sha1
new file mode 100644
index 0000000..097323c
--- /dev/null
+++ b/chrome/app/os_settings_strings_grdp/IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_DESCRIPTION.png.sha1
@@ -0,0 +1 @@
+f1a9c55062097273ac184d117a1f6ce7f5df4c57
\ No newline at end of file
diff --git a/chrome/app/os_settings_strings_grdp/IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_TITLE.png.sha1 b/chrome/app/os_settings_strings_grdp/IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_TITLE.png.sha1
new file mode 100644
index 0000000..097323c
--- /dev/null
+++ b/chrome/app/os_settings_strings_grdp/IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_TITLE.png.sha1
@@ -0,0 +1 @@
+f1a9c55062097273ac184d117a1f6ce7f5df4c57
\ No newline at end of file
diff --git a/chrome/app/os_settings_strings_grdp/IDS_SETTINGS_INTERNET_YOUR_DEVICE_HOTSPOTS.png.sha1 b/chrome/app/os_settings_strings_grdp/IDS_SETTINGS_INTERNET_YOUR_DEVICE_HOTSPOTS.png.sha1
new file mode 100644
index 0000000..097323c
--- /dev/null
+++ b/chrome/app/os_settings_strings_grdp/IDS_SETTINGS_INTERNET_YOUR_DEVICE_HOTSPOTS.png.sha1
@@ -0,0 +1 @@
+f1a9c55062097273ac184d117a1f6ce7f5df4c57
\ No newline at end of file
diff --git a/chrome/app/resources/chromium_strings_af.xtb b/chrome/app/resources/chromium_strings_af.xtb
index 604dd9d..782824de 100644
--- a/chrome/app/resources/chromium_strings_af.xtb
+++ b/chrome/app/resources/chromium_strings_af.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Herbegin Chromium</translation>
 <translation id="3179665906251668410">Maak skakel in 'n incognitovenster in Chromium oop</translation>
 <translation id="3185330573522821672">Pasmaak jou nuwe Chromium-profiel</translation>
+<translation id="318879170965183683">Jy kan jou Google-rekening se wagwoorde in Chromium gebruik terwyl jy aangemeld is</translation>
 <translation id="3190315855212034486">Sjoe! Chromium het omgeval. Wil jy nou herbegin?</translation>
 <translation id="3224847870593914902">Meld in die Instellings-bladsy by Chromium af om jou Google-rekening uit Chromium te verwyder</translation>
 <translation id="3258596308407688501">Chromium kan nie sy datagids lees of daarheen skryf nie:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">Installasie het misluk omdat toegang in hierdie land beperk is.</translation>
 <translation id="4510853178268397146">Hierdie uitbreiding het nie privaatheidpraktyke gepubliseer nie, soos hoe dit data insamel en gebruik. Chromium beveel aan dat jy dit verwyder.</translation>
 <translation id="452711251841752011">Welkom by Chromium; nuwe blaaiervenster is oopgemaak</translation>
+<translation id="4531137820806573936">Chromium het toestemming nodig om jou omgewing te karteer en jou hande na te spoor</translation>
+<translation id="4536805923587466102">Jy het reeds in ’n ander Chromium-profiel as <ph name="USER_EMAIL_ADDRESS" /> aangemeld</translation>
 <translation id="4544142686420020088">Chromium het nie opgedateer nie; iets het skeefgeloop. <ph name="BEGIN_LINK" />Stel Chrome-opdateringprobleme en mislukte opdaterings reg.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Gaan voort in 'n nuwe Chromium-profiel?</translation>
 <translation id="4567424176335768812">Jy is as <ph name="USER_EMAIL_ADDRESS" /> aangemeld. Nou kan jy op al jou aangemelde toestelle by jou boekmerke, geskiedenis en ander instellings ingaan.</translation>
diff --git a/chrome/app/resources/chromium_strings_am.xtb b/chrome/app/resources/chromium_strings_am.xtb
index 013f38f..c6f28a26 100644
--- a/chrome/app/resources/chromium_strings_am.xtb
+++ b/chrome/app/resources/chromium_strings_am.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Chromiumን ዳግም አስጀምር</translation>
 <translation id="3179665906251668410">አገናኙን በChromium ማን&amp;ነትን በማያሳውቅ መስኮት ውስጥ ክፈት</translation>
 <translation id="3185330573522821672">አዲሱን የChromium መገለጫዎን ያብጁ</translation>
+<translation id="318879170965183683">በመለያዎ ውስጥ ሲገቡ ከGoogle መለያዎ ውስጥ የይለፍ ቃላትዎን በChromium ውስጥ መጠቀም ይችላሉ</translation>
 <translation id="3190315855212034486">ኧረ ገዳይ! Chromium ብልሽት አጋጥሞታል። አሁን ዳግም ይጀምር?</translation>
 <translation id="3224847870593914902">የGoogle መለያዎን ከChromium ለማስወገድ በቅንብሮች ገጽ ውስጥ ከChromium ዘግተው ይውጡ</translation>
 <translation id="3258596308407688501">Chromium የውሂብ አቃፊው ላይ ማንበብ እና መጻፍ አይችልም፦
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">በዚህ አገር መዳረሻ የተገደበ ስለሆነ ጭነት አልተሳካም።</translation>
 <translation id="4510853178268397146">ይህ ቅጥያ እንደ ውሂብን እንዴት እንደሚሰበስብ እና እንደሚጠቀም ያሉ የግላዊነት ተግባሮችን አላተመም። Chromium እንዲያስወግዱት ይመክራል።</translation>
 <translation id="452711251841752011">እንኳን ወደ Chromium በደህና መጡ፤ አዲስ የአሳሽ መስኮት ተከፍቷል</translation>
+<translation id="4531137820806573936">Chromium አካባቢዎን በካርታ ለመንደፍ እና የእጆችዎን እንቅስቃሴዎች ለመከታተል ፈቃድ ይፈልጋል</translation>
+<translation id="4536805923587466102">አስቀድመው በሌላ የChromium መገለጫ እንደ <ph name="USER_EMAIL_ADDRESS" /> ገብተዋል</translation>
 <translation id="4544142686420020088">Chromium አልተዘመነም፣ የሆነ ችግር ተፈጥሯል። <ph name="BEGIN_LINK" />የChrome ዝማኔ ችግሮችን እና ያልተሳኩ ዝማኔዎችን ያስተካክሉ።<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">በአዲሱ የChromium መገለጫ ውስጥ ይቀጥል?</translation>
 <translation id="4567424176335768812">እንደ <ph name="USER_EMAIL_ADDRESS" /> ሆነው ገብተዋል። አሁን የእርስዎን ዕልባቶች፣ ታሪክ እና ሌሎች ቅንብሮች በመለያ በገቡ ሁሉም መሣሪያዎችዎ ላይ መድረስ ይችላሉ።</translation>
diff --git a/chrome/app/resources/chromium_strings_ar.xtb b/chrome/app/resources/chromium_strings_ar.xtb
index c274d0e..1640108 100644
--- a/chrome/app/resources/chromium_strings_ar.xtb
+++ b/chrome/app/resources/chromium_strings_ar.xtb
@@ -122,6 +122,7 @@
 <translation id="3155163173539279776">‏إعادة تشغيل Chromium</translation>
 <translation id="3179665906251668410">‏فتح الرابط في نافذة تصفح متخفٍ في Chromium</translation>
 <translation id="3185330573522821672">‏يمكنك الآن تخصيص ملفك الشخصي الجديد على Chromium.</translation>
+<translation id="318879170965183683">‏يمكنك استخدام كلمات المرور من حسابك على Google بعد تسجيل دخولك إليه في Chromium</translation>
 <translation id="3190315855212034486">‏للأسف! تعطل Chromium. هل تريد إعادة التشغيل الآن؟</translation>
 <translation id="3224847870593914902">‏لإزالة حسابك على Google من Chromium، يجب تسجيل الخروج من Chromium في صفحة "الإعدادات"</translation>
 <translation id="3258596308407688501">‏يتعذر على Chromium القراءة والكتابة في دليل البيانات الخاص به:
@@ -203,6 +204,8 @@
 <translation id="4501471624619070934">تعذّر تثبيت التطبيق بسبب حظر الدخول المفروض في هذا البلد.</translation>
 <translation id="4510853178268397146">‏لم تنشر هذه الإضافة الممارسات المتعلقة بالخصوصية، مثل كيفية جمعها للبيانات واستخدامها. ينصح متصفِّح Chromium بإزالتها.</translation>
 <translation id="452711251841752011">‏مرحبًا بك في Chromium. تم فتح نافذة متصفّح جديدة.</translation>
+<translation id="4531137820806573936">‏يحتاج Chromium إلى إذن لتتبُّع اليدين وإنشاء خريطة للبيئة المحيطة بك</translation>
+<translation id="4536805923587466102">‏سبق أن سجّلت الدخول باستخدام الحساب <ph name="USER_EMAIL_ADDRESS" /> في ملف شخصي آخر على Chromium</translation>
 <translation id="4544142686420020088">‏تعذّر تحديث Chromium بسبب حدوث خطأ. <ph name="BEGIN_LINK" />حلّ مشاكل تحديث Chrome وتعذُّر التحديثات<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">‏هل تريد المتابعة باستخدام ملف شخصي جديد على Chromium؟</translation>
 <translation id="4567424176335768812">لقد سجلت دخولك باعتبارك <ph name="USER_EMAIL_ADDRESS" />. ويُمكنك الآن الاستمتاع بالدخول إلى الإشارات المرجعية، والسجلّ، والإعدادات الأخرى على جميع الأجهزة التي تسجّل الدخول إليها.</translation>
diff --git a/chrome/app/resources/chromium_strings_be.xtb b/chrome/app/resources/chromium_strings_be.xtb
index 6dfa80041..cd9ea11c0 100644
--- a/chrome/app/resources/chromium_strings_be.xtb
+++ b/chrome/app/resources/chromium_strings_be.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Перазапусціць Chromium</translation>
 <translation id="3179665906251668410">Адкрыць спасылку ў акне інко&amp;гніта ў Chromium</translation>
 <translation id="3185330573522821672">Наладзьце новы профіль Chromium</translation>
+<translation id="318879170965183683">Калі вы ўвайшлі ва Уліковы запіс Google, вы можаце выкарыстоўваць паролі з яго ў Chromium</translation>
 <translation id="3190315855212034486">Памылка! Збой Chromium. Перазапусціць?</translation>
 <translation id="3224847870593914902">Каб выдаліць свой Уліковы Google з Chromium, выйдзіце з Chromium на старонцы налад</translation>
 <translation id="3258596308407688501">Chromium не можа чытаць з каталога даных і запісваць у яго:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">Не ўдалося ўсталяваць з-за абмежавання доступу ў гэтай краіне.</translation>
 <translation id="4510853178268397146">Для гэтага пашырэння не апублікаваны меры забеспячэння прыватнасці, напрыклад звесткі пра тое, як яно збірае і выкарыстоўвае даныя. Chromium рэкамендуе выдаліць яго.</translation>
 <translation id="452711251841752011">Вітаем у Chromium! Адкрыта новае акно браўзера</translation>
+<translation id="4531137820806573936">Браўзеру Chromium патрабуецца дазвол на стварэнне карты вашага асяроддзя і адсочванне рук.</translation>
+<translation id="4536805923587466102">Вы ўжо ўвайшлі ў іншы профіль Chromium як <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="4544142686420020088">Chromium не абнавіўся. Нешта пайшло не так. <ph name="BEGIN_LINK" />Выправіце праблемы з абнаўленнем Chromium і памылкі абнаўлення.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Працягнуць працу ў новым профілі Chromium?</translation>
 <translation id="4567424176335768812">Вы ўвайшлі як <ph name="USER_EMAIL_ADDRESS" /> і цяпер маеце доступ да закладак, гісторыі і іншых налад на ўсіх прыладах, дзе выкананы ўваход.</translation>
diff --git a/chrome/app/resources/chromium_strings_bn.xtb b/chrome/app/resources/chromium_strings_bn.xtb
index 5cf84a9..ebd3906 100644
--- a/chrome/app/resources/chromium_strings_bn.xtb
+++ b/chrome/app/resources/chromium_strings_bn.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Chromium আবার লঞ্চ করুন</translation>
 <translation id="3179665906251668410">Chromium ছদ্মবেশী উইন্ডোতে লিঙ্ক খুলুন</translation>
 <translation id="3185330573522821672">আপনার নতুন Chromium প্রোফাইল কাস্টমাইজ করুন</translation>
+<translation id="318879170965183683">আপনি সাইন-ইন করে থাকাকালীন, Chromium-এ আপনার Google অ্যাকাউন্ট থেকে নিজের পাসওয়ার্ড ব্যবহার করতে পারবেন</translation>
 <translation id="3190315855212034486">ওহো! Chromium ক্র্যাশ করেছে৷ এখন আবার শুরু করবেন?</translation>
 <translation id="3224847870593914902">Chromium থেকে আপনার Google অ্যাকাউন্ট সরিয়ে দিতে, সেটিংস পৃষ্ঠায় গিয়ে Chromium থেকে সাইন-আউট করুন</translation>
 <translation id="3258596308407688501">Chromium তার ডেটা ডিরেক্টরিতে পড়তে এবং লিখতে পারে না:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">এই দেশে অ্যাক্সেস সীমিত হওয়ার কারণে ইনস্টলেশন করা যায়নি।</translation>
 <translation id="4510853178268397146">এই এক্সটেনশন গোপনীয়তা অনুশীলন প্রকাশ করেনি, যেমন কীভাবে এটি ডেটা সংগ্রহ ও ব্যবহার করে। Chromium আপনাকে এটি সরিয়ে দেওয়ার সাজেশন দেয়।</translation>
 <translation id="452711251841752011">Chromium-এ স্বাগতম; নতুন ব্রাউজার উইন্ডো খোলা হয়েছে</translation>
+<translation id="4531137820806573936">আপনার আশপাশ সম্পর্কে জানতে ও হাত ট্র্যাক করতে Chromium-এর অনুমতি প্রয়োজন</translation>
+<translation id="4536805923587466102">আপনি আগে থেকেই অন্য Chromium প্রোফাইলে <ph name="USER_EMAIL_ADDRESS" /> হিসেবে সাইন-ইন করেছেন</translation>
 <translation id="4544142686420020088">Chromium আপডেট করা যায়নি, কোনও সমস্যা হয়েছে। <ph name="BEGIN_LINK" />Chromium আপডেট করতে না পারার সমস্যা ও আপডেট করা যায়নি এমন সমস্যার সমাধান করুন।<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">এক্ষেত্রে নতুন Chromium প্রোফাইল তৈরি করতে চান?</translation>
 <translation id="4567424176335768812">আপনি <ph name="USER_EMAIL_ADDRESS" /> হিসেবে সাইন-ইন করেছেন৷ এখন আপনি আপনার সমস্ত সাইন-ইন করা ডিভাইসে আপনার বুকমার্ক, ইতিহাস এবং অন্যান্য সেটিংস অ্যাক্সেস করতে পারেন৷</translation>
diff --git a/chrome/app/resources/chromium_strings_de.xtb b/chrome/app/resources/chromium_strings_de.xtb
index eb3615ee..2b14fb1 100644
--- a/chrome/app/resources/chromium_strings_de.xtb
+++ b/chrome/app/resources/chromium_strings_de.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Chromium neu starten</translation>
 <translation id="3179665906251668410">Link in Chromium-Inkognitofenster öffnen</translation>
 <translation id="3185330573522821672">Personalisiere dein neues Chromium-Profil</translation>
+<translation id="318879170965183683">Du kannst die Passwörter aus deinem Google-Konto in Chromium verwenden, solange du angemeldet bist</translation>
 <translation id="3190315855212034486">Chromium ist abgestürzt. Jetzt neu starten?</translation>
 <translation id="3224847870593914902">Wenn du dein Google-Konto von Chromium entfernen möchtest, melde dich auf der Seite „Einstellungen“ von Chromium ab</translation>
 <translation id="3258596308407688501">Chromium kann im folgenden Datenverzeichnis weder lesen noch schreiben:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Fehler bei der Installation. Der Zugriff ist in diesem Land eingeschränkt.</translation>
 <translation id="4510853178268397146">Für diese Erweiterung wurden keine Informationen zum Umgang mit dem Datenschutz veröffentlicht, wie z. B. Informationen darüber, wie Daten erhoben und verwendet werden. Chromium empfiehlt daher, sie zu entfernen.</translation>
 <translation id="452711251841752011">Willkommen bei Chromium; neues Browserfenster geöffnet</translation>
+<translation id="4531137820806573936">Chromium benötigt eine Berechtigung für das Erstellen einer Karte deiner Umgebung und das Hand-Tracking</translation>
+<translation id="4536805923587466102">Du bist in einem anderen Chromium-Profil bereits als <ph name="USER_EMAIL_ADDRESS" /> angemeldet</translation>
 <translation id="4544142686420020088">Chrome wurde aufgrund eines Fehlers nicht aktualisiert. Wie du Updateprobleme und Fehler bei der Aktualisierung von Chromium behebst, <ph name="BEGIN_LINK" />erfährst du hier<ph name="END_LINK" />.</translation>
 <translation id="454579500955453258">Mit einem neuen Chromium-Profil fortfahren?</translation>
 <translation id="4567424176335768812">Du bist als <ph name="USER_EMAIL_ADDRESS" /> angemeldet. Auf allen Geräten, auf denen du angemeldet bist, sind nun deine Lesezeichen, dein Verlauf und andere Einstellungen verfügbar.</translation>
diff --git a/chrome/app/resources/chromium_strings_el.xtb b/chrome/app/resources/chromium_strings_el.xtb
index a516dd1..fbd7c2e 100644
--- a/chrome/app/resources/chromium_strings_el.xtb
+++ b/chrome/app/resources/chromium_strings_el.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Επανεκκίνηση Chromium</translation>
 <translation id="3179665906251668410">Άνοιγμα Συνδέσμου σε Παράθυρο ανών&amp;υμης περιήγησης Chromium</translation>
 <translation id="3185330573522821672">Προσαρμόστε το νέο σας προφίλ Chromium</translation>
+<translation id="318879170965183683">Μπορείτε να χρησιμοποιήσετε τους κωδικούς πρόσβασης από τον Λογαριασμό σας Google στο Chromium ενώ είστε συνδεδεμένοι</translation>
 <translation id="3190315855212034486">Το Chromium παρουσίασε σφάλμα. Να γίνει επανεκκίνηση τώρα;</translation>
 <translation id="3224847870593914902">Για να καταργήσετε τον Λογαριασμό σας Google από το Chromium, αποσυνδεθείτε από το Chromium στη σελίδα Ρυθμίσεις</translation>
 <translation id="3258596308407688501">Το Chromium δεν έχει δυνατότητα ανάγνωσης και εγγραφής στον κατάλογο δεδομένων του:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Η εγκατάσταση απέτυχε επειδή η πρόσβαση είναι περιορισμένη σε αυτήν τη χώρα.</translation>
 <translation id="4510853178268397146">Αυτή η επέκταση δεν έχει δημοσιεύσει πρακτικές απορρήτου, όπως τον τρόπο συλλογής και χρήσης δεδομένων. Το Chromium προτείνει να την καταργήσετε.</translation>
 <translation id="452711251841752011">Καλωσορίσατε στο Chromium. Ένα νέο παράθυρο προγράμματος περιήγησης έχει ανοίξει.</translation>
+<translation id="4531137820806573936">Το Chromium χρειάζεται άδεια για να χαρτογραφήσει τον περιβάλλοντα χώρο και να παρακολουθεί τα χέρια σας</translation>
+<translation id="4536805923587466102">Έχετε συνδεθεί ήδη ως <ph name="USER_EMAIL_ADDRESS" /> σε άλλο προφίλ Chromium</translation>
 <translation id="4544142686420020088">Δεν έγινε ενημέρωση του Chromium, παρουσιάστηκε κάποιο σφάλμα. <ph name="BEGIN_LINK" />Επιδιορθώστε τα προβλήματα ενημέρωσης και αποτυχημένων ενημερώσεων του Chromium.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Συνέχεια σε νέο προφίλ Chromium;</translation>
 <translation id="4567424176335768812">Έχετε συνδεθεί ως <ph name="USER_EMAIL_ADDRESS" />. Τώρα μπορείτε να αποκτήσετε πρόσβαση στους σελιδοδείκτες, το ιστορικό και σε άλλες ρυθμίσεις από όλες τις συσκευές στις οποίες έχετε συνδεθεί.</translation>
diff --git a/chrome/app/resources/chromium_strings_en-GB.xtb b/chrome/app/resources/chromium_strings_en-GB.xtb
index 719eaf9..1556ee8 100644
--- a/chrome/app/resources/chromium_strings_en-GB.xtb
+++ b/chrome/app/resources/chromium_strings_en-GB.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Relaunch Chromium</translation>
 <translation id="3179665906251668410">Open Link in Chromium Inco&amp;gnito Window</translation>
 <translation id="3185330573522821672">Customise your new Chromium profile</translation>
+<translation id="318879170965183683">You can use your passwords from your Google Account in Chromium while you're signed in</translation>
 <translation id="3190315855212034486">Whoa! Chromium has crashed. Relaunch now?</translation>
 <translation id="3224847870593914902">To remove your Google Account from Chromium, sign out of Chromium in the Settings page</translation>
 <translation id="3258596308407688501">Chromium cannot read and write to its data directory:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">Installation failed because access is restricted in this country.</translation>
 <translation id="4510853178268397146">This extension hasn't published privacy practices, such as how it collects and uses data. Chromium recommends that you remove it.</translation>
 <translation id="452711251841752011">Welcome to Chromium; new browser window opened</translation>
+<translation id="4531137820806573936">Chromium needs permission to map your surroundings and track your hands</translation>
+<translation id="4536805923587466102">You're already signed in as <ph name="USER_EMAIL_ADDRESS" /> in another Chromium profile</translation>
 <translation id="4544142686420020088">Chromium didn't update. Something went wrong. <ph name="BEGIN_LINK" />Fix Chromium update problems and failed updates.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Continue in a new Chromium profile?</translation>
 <translation id="4567424176335768812">You're signed in as <ph name="USER_EMAIL_ADDRESS" />. Now you can access your bookmarks, history and other settings on all your signed in devices.</translation>
diff --git a/chrome/app/resources/chromium_strings_et.xtb b/chrome/app/resources/chromium_strings_et.xtb
index a6a1726..1fc99b0c 100644
--- a/chrome/app/resources/chromium_strings_et.xtb
+++ b/chrome/app/resources/chromium_strings_et.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Chromiumi taaskäivitamine</translation>
 <translation id="3179665906251668410">Ava link Chromiumi inko&amp;gnito aknas</translation>
 <translation id="3185330573522821672">Kohandage oma uut Chromiumi profiili</translation>
+<translation id="318879170965183683">Kui olete sisse logitud, saate Chromiumis kasutada oma Google'i kontol olevaid paroole</translation>
 <translation id="3190315855212034486">Chromium jooksis kokku. Kas soovite kohe taaskäivitada?</translation>
 <translation id="3224847870593914902">Google'i konto Chromiumist eemaldamiseks logige lehel Seaded Chromiumist välja</translation>
 <translation id="3258596308407688501">Chromium ei saa andmekataloogi lugeda ega sellesse kirjutada:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Installimine nurjus selle riigi juurdepääsupiirangute tõttu.</translation>
 <translation id="4510853178268397146">See laiendus pole avaldanud privaatsuspõhimõtteid, milles kirjeldataks, kuidas laiendus andmeid kogub ja kasutab. Chromium soovitab selle eemaldada.</translation>
 <translation id="452711251841752011">Tere tulemast Chromiumi; avati uus brauseriaken</translation>
+<translation id="4531137820806573936">Chromium vajab teie ümbruse kaardistamiseks ja teie käte jälgimiseks luba</translation>
+<translation id="4536805923587466102">Olete juba ühel teisel Chromiumi profiilil kasutajana <ph name="USER_EMAIL_ADDRESS" /> sisse logitud</translation>
 <translation id="4544142686420020088">Chromiumit ei värskendatud, midagi läks valesti. <ph name="BEGIN_LINK" />Lahendage Chromiumi värskendamisprobleemid ja parandage ebaõnnestunud värskendused.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Kas jätkata uuel Chromiumi profiilil?</translation>
 <translation id="4567424176335768812">Olete sisse logitud aadressiga <ph name="USER_EMAIL_ADDRESS" />. Nüüd on teil juurdepääs oma järjehoidjatele, ajaloole ja muudele seadetele kõigis seadmetes, kuhu olete sisse logitud.</translation>
diff --git a/chrome/app/resources/chromium_strings_fa.xtb b/chrome/app/resources/chromium_strings_fa.xtb
index b9504c7..3259fa99 100644
--- a/chrome/app/resources/chromium_strings_fa.xtb
+++ b/chrome/app/resources/chromium_strings_fa.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">‏اجرای مجدد Chromium</translation>
 <translation id="3179665906251668410">‏باز کردن پیوند در پنجره &amp;ناشناس Chromium</translation>
 <translation id="3185330573522821672">‏سفارشی کردن نمایه جدید Chromium</translation>
+<translation id="318879170965183683">‏وقتی به سیستم وارد شده باشید می‌توانید از گذرواژه‌های «حساب Google» خود در Chromium استفاده کنید</translation>
 <translation id="3190315855212034486">‏اوه! Chromium خراب شده است. دوباره راه‌اندازی شود؟</translation>
 <translation id="3224847870593914902">‏برای برداشتن «حساب Google» خود از Chromium، در صفحه «تنظیمات» از سیستم Chromium خارج شوید</translation>
 <translation id="3258596308407688501">‏Chromium نمی‌تواند مسیر داده‌های خود را بخواند یا در آن بنویسد:
@@ -204,6 +205,8 @@
 <translation id="4501471624619070934">نصب انجام نشد زیرا دسترسی در این کشور محدود است.</translation>
 <translation id="4510853178268397146">‏این افزونه روش‌های اعمال حریم خصوصی، مثل نحوه جمع‌آوری و استفاده از داده‌ها را منتشر نکرده است. ‫Chromium توصیه می‌کند آن را حذف کنید.</translation>
 <translation id="452711251841752011">‏به Chromium خوش‌آمدید؛ پنجره مرورگر جدید راه‌اندازی شد</translation>
+<translation id="4531137820806573936">‏‫Chromium برای نقشه‌برداری از محیط اطراف و ردیابی دستان شما به اجازه نیاز دارد</translation>
+<translation id="4536805923587466102">‏قبلاً با <ph name="USER_EMAIL_ADDRESS" /> در نمایه Chromium دیگری به سیستم وارد شده‌اید</translation>
 <translation id="4544142686420020088">‏Chromium به‌روزرسانی نشد؛ مشکلی پیش آمد. <ph name="BEGIN_LINK" />مشکلات به‌روزرسانی Chromium و به‌روزرسانی‌های ناموفق را برطرف کنید.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">‏در نمایه جدید Chromium ادامه می‌دهید؟</translation>
 <translation id="4567424176335768812">با حساب <ph name="USER_EMAIL_ADDRESS" /> وارد سیستم شده‌اید. اکنون در همه دستگاه‌هایی که با آنها به سیستم وارد شده‌اید می‌توانید به نشانک‌ها، سابقه و دیگر تنظیماتتان دسترسی داشته باشید.</translation>
diff --git a/chrome/app/resources/chromium_strings_fi.xtb b/chrome/app/resources/chromium_strings_fi.xtb
index 5179876..8c72693 100644
--- a/chrome/app/resources/chromium_strings_fi.xtb
+++ b/chrome/app/resources/chromium_strings_fi.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Käynnistä Chromium uudelleen</translation>
 <translation id="3179665906251668410">Avaa linkki Chromiumin inco&amp;gnito-ikkunassa</translation>
 <translation id="3185330573522821672">Muokkaa uusi Chromium-profiili näköiseksesi</translation>
+<translation id="318879170965183683">Voit käyttää Google-tilisi salasanoja Chromiumissa, kun olet kirjautuneena sisään</translation>
 <translation id="3190315855212034486">Hups! Chromium kaatui. Käynnistetäänkö uudelleen?</translation>
 <translation id="3224847870593914902">Jos haluat poistaa Google-tilisi Chromiumista, kirjaudu ulos Chromiumista Asetukset-sivun kautta</translation>
 <translation id="3258596308407688501">Chromium ei voi lukea tietohakemistoaan ja kirjoittaa siihen:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Asentaminen epäonnistui, koska pääsyä on rajoitettu tässä maassa.</translation>
 <translation id="4510853178268397146">Tästä laajennuksesta ei ole julkaistu tietosuojakäytäntöjä koskien esimerkiksi datan keräämistä ja käyttöä. Chromium suosittelee sen poistamista.</translation>
 <translation id="452711251841752011">Tervetuloa Chromiumiin, uusi selainikkuna avattu</translation>
+<translation id="4531137820806573936">Chromium tarvitsee luvan ympäristösi kartoittamiseen ja käsiesi liikkeiden seuraamiseen</translation>
+<translation id="4536805923587466102">Olet jo kirjautunut sisään tilillä <ph name="USER_EMAIL_ADDRESS" /> toisessa Chromium-profiilissa</translation>
 <translation id="4544142686420020088">Chromiumia ei päivitetty, vaan jotain meni pieleen. <ph name="BEGIN_LINK" />Korjaa Chromiumin päivitysongelmat ja epäonnistuneet päivitykset<ph name="END_LINK" />.</translation>
 <translation id="454579500955453258">Jatketaanko uudessa Chromium-profiilissa?</translation>
 <translation id="4567424176335768812">Olet kirjautunut Chromeen tilillä <ph name="USER_EMAIL_ADDRESS" />. Nyt voit käyttää kirjanmerkkejäsi, historiaa ja muita asetuksia kaikilla laitteilla, joihin olet kirjautunut.</translation>
diff --git a/chrome/app/resources/chromium_strings_gl.xtb b/chrome/app/resources/chromium_strings_gl.xtb
index 833e554..9d117d72 100644
--- a/chrome/app/resources/chromium_strings_gl.xtb
+++ b/chrome/app/resources/chromium_strings_gl.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Reiniciar Chromium</translation>
 <translation id="3179665906251668410">Abrir ligazón nunha ventá do modo de incó&amp;gnito de Chromium</translation>
 <translation id="3185330573522821672">Personaliza o teu novo perfil de Chromium</translation>
+<translation id="318879170965183683">Poderás usar os contrasinais da túa Conta de Google en Chromium mentres teñas a sesión iniciada</translation>
 <translation id="3190315855212034486">Chromium deixou de funcionar. Queres reinicialo agora?</translation>
 <translation id="3224847870593914902">Para quitar a túa Conta de Google de Chromium, vai á páxina de configuración e pecha a sesión en Chromium</translation>
 <translation id="3258596308407688501">Chromium non pode ler e escribir no seu directorio de datos:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">Produciuse un erro durante a instalación porque o acceso está restrinxido neste país.</translation>
 <translation id="4510853178268397146">Esta extensión non ten publicada ningunha práctica de privacidade (como, por exemplo, o modo en que recompila e usa os datos). Chromium recomenda que a quites.</translation>
 <translation id="452711251841752011">Dámosche a benvida a Chromium. Abriuse unha nova ventá do navegador</translation>
+<translation id="4531137820806573936">Chromium necesita permiso para analizar o que te rodea e facer un seguimento das mans</translation>
+<translation id="4536805923587466102">Xa tes a sesión iniciada como <ph name="USER_EMAIL_ADDRESS" /> noutro perfil de Chromium</translation>
 <translation id="4544142686420020088">Chromium non se actualizou, xa que se produciu un erro. <ph name="BEGIN_LINK" />Soluciona os problemas de actualización de Chromium e as actualizacións que non se puidesen realizar<ph name="END_LINK" />.</translation>
 <translation id="454579500955453258">Queres continuar nun perfil de Chromium novo?</translation>
 <translation id="4567424176335768812">Iniciaches sesión como <ph name="USER_EMAIL_ADDRESS" />. Agora podes acceder aos teus marcadores, historial e outras configuracións en todos os dispositivos en que iniciaches sesión.</translation>
diff --git a/chrome/app/resources/chromium_strings_gu.xtb b/chrome/app/resources/chromium_strings_gu.xtb
index 5b4b580..56d7e809 100644
--- a/chrome/app/resources/chromium_strings_gu.xtb
+++ b/chrome/app/resources/chromium_strings_gu.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Chromium ને ફરીથી લોંચ કરો</translation>
 <translation id="3179665906251668410">Chromium છુ&amp;પી વિંડોમાં લિંક ખોલો</translation>
 <translation id="3185330573522821672">તમારી નવી Chromium પ્રોફાઇલ કસ્ટમાઇઝ કરો</translation>
+<translation id="318879170965183683">તમે સાઇન ઇન થયા હો એ દરમિયાન Chromiumમાં તમારા Google એકાઉન્ટમાંના તમારા પાસવર્ડનો ઉપયોગ તમે કરી શકો છો</translation>
 <translation id="3190315855212034486">ઓહ! Chromium ક્રેશ થઈ ગયું. હમણાં ફરીથી લોંચ કરીએ?</translation>
 <translation id="3224847870593914902">Chromiumમાંથી તમારા Google એકાઉન્ટને કાઢી નાખવા માટે, સેટિંગ પેજમાં જઈને Chromiumમાંથી સાઇન આઉટ કરો</translation>
 <translation id="3258596308407688501">Chromium એની ડેટા ડિરેક્ટરી વાંચી અથવા લખી શકતુંં નથી:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">ઇન્સ્ટૉલેશન નિષ્ફળ ગયું કારણ કે આ દેશમાં ઍક્સેસ પ્રતિબંધિત છે.</translation>
 <translation id="4510853178268397146">આ એક્સ્ટેન્શન દ્વારા તેની ડેટા એકત્રિત કરવાની અને તેનો ઉપયોગ કરવાની રીત જેવી પ્રાઇવસી પ્રૅક્ટિસ પબ્લિશ કરવામાં આવી નથી. Chromium તેને કાઢી નાખવાનો સુઝાવ તમને આપે છે.</translation>
 <translation id="452711251841752011">Chromium પર આપનું સ્વાગત છે; નવી બ્રાઉઝર વિન્ડો ખોલી છે</translation>
+<translation id="4531137820806573936">તમારી આસપાસના વિસ્તારો અને તમારા હાથને ટ્રૅક કરવા માટે, Chromiumને પરવાનગીની જરૂર છે</translation>
+<translation id="4536805923587466102">તમે પહેલેથી Chromiumની અન્ય પ્રોફાઇલમાં <ph name="USER_EMAIL_ADDRESS" /> તરીકે સાઇન ઇન થયા છો</translation>
 <translation id="4544142686420020088">કંઈક ખોટુ થયું હોવાને કારણે Chromium અપડેટ થયું નથી. <ph name="BEGIN_LINK" />Chromium અપડેટ કરવામાં આવતી સમસ્યાઓ અને નિષ્ફળ થયેલા અપડેટ સુધારો.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">નવી Chromium પ્રોફાઇલમાં બ્રાઉઝિંગ ચાલુ રાખીએ?</translation>
 <translation id="4567424176335768812">તમે <ph name="USER_EMAIL_ADDRESS" /> તરીકે સાઇન ઇન છો. હવે તમે તમારા બધા સાઇન ઇન કરેલા ડિવાઇસ પર તમારા બુકમાર્ક, ઇતિહાસ અને અન્ય સેટિંગને ઍક્સેસ કરી શકો છો.</translation>
diff --git a/chrome/app/resources/chromium_strings_hu.xtb b/chrome/app/resources/chromium_strings_hu.xtb
index 4c12653..a1d0825 100644
--- a/chrome/app/resources/chromium_strings_hu.xtb
+++ b/chrome/app/resources/chromium_strings_hu.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">A Chromium újraindítása</translation>
 <translation id="3179665906251668410">Link megnyitása Chromium-inko&amp;gnitóablakban</translation>
 <translation id="3185330573522821672">Szabja személyre az új Chromium-profilját</translation>
+<translation id="318879170965183683">Használhatja a Google-fiókjában tárolt jelszavait a Chromiumban, amikor be van jelentkezve.</translation>
 <translation id="3190315855212034486">Ó! A Chromium összeomlott. Újraindítja most?</translation>
 <translation id="3224847870593914902">Ha el szeretné távolítani Google-fiókját a Chromiumból, jelentkezzen ki a Chromiumból a Beállítások oldalon</translation>
 <translation id="3258596308407688501">A Chromium nem tudja olvasni és írni az adatkönyvtárát:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">A telepítés sikertelen volt, mivel a hozzáférés korlátozott ebben az országban.</translation>
 <translation id="4510853178268397146">Ez a bővítmény nem tett közzé adatvédelmi gyakorlatokat például arra vonatkozóan, hogy hogyan gyűjti és használja fel az adatokat. A Chromium az eltávolítását javasolja.</translation>
 <translation id="452711251841752011">Üdvözöljük a Chromiumban; új böngészőablak megnyitva</translation>
+<translation id="4531137820806573936">A Chromiumnak engedélyre van szüksége ahhoz, hogy feltérképezhesse az Ön környezetét, és nyomon követhesse a kezét</translation>
+<translation id="4536805923587466102">Már be van jelentkezve a(z) <ph name="USER_EMAIL_ADDRESS" /> fiókkal egy másik Chromium-profilban.</translation>
 <translation id="4544142686420020088">Ismeretlen hiba történt, ezért a Chromium nem frissült. <ph name="BEGIN_LINK" />A Chromium frissítési problémáinak megoldása.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Biztosan új Chromium-profilban folytatja?</translation>
 <translation id="4567424176335768812">A(z) <ph name="USER_EMAIL_ADDRESS" /> címmel van bejelentkezve. Elérheti könyvjelzőit, előzményeit és más beállításait minden olyan eszközön, amelyen bejelentkezett.</translation>
diff --git a/chrome/app/resources/chromium_strings_id.xtb b/chrome/app/resources/chromium_strings_id.xtb
index bc350065..2307e24 100644
--- a/chrome/app/resources/chromium_strings_id.xtb
+++ b/chrome/app/resources/chromium_strings_id.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Luncurkan ulang Chromium</translation>
 <translation id="3179665906251668410">Buka Link di Jendela Sa&amp;maran Chromium</translation>
 <translation id="3185330573522821672">Sesuaikan profil Chromium baru Anda</translation>
+<translation id="318879170965183683">Anda dapat menggunakan sandi dari Akun Google Anda di Chromium saat login</translation>
 <translation id="3190315855212034486">Aduh! Chromium ngadat. Luncurkan ulang sekarang?</translation>
 <translation id="3224847870593914902">Untuk menghapus Akun Google Anda dari Chromium, logout dari Chromium di halaman Setelan</translation>
 <translation id="3258596308407688501">Chromium tidak dapat membaca dan menulis ke direktori datanya:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Penginstalan gagal karena akses dibatasi untuk negara ini.</translation>
 <translation id="4510853178268397146">Ekstensi ini belum memublikasikan praktik privasi, seperti cara ekstensi mengumpulkan dan menggunakan data. Chromium merekomendasikan agar Anda menghapusnya.</translation>
 <translation id="452711251841752011">Selamat datang di Chromium; jendela browser baru terbuka</translation>
+<translation id="4531137820806573936">Chromium memerlukan izin untuk memetakan lingkungan dan melacak tangan Anda</translation>
+<translation id="4536805923587466102">Anda sudah login sebagai <ph name="USER_EMAIL_ADDRESS" /> di profil Chromium lain</translation>
 <translation id="4544142686420020088">Chromium tidak dapat diupdate, terjadi error. <ph name="BEGIN_LINK" />Perbaiki masalah update Chrome dan update yang gagal.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Lanjutkan di profil Chromium baru?</translation>
 <translation id="4567424176335768812">Anda login sebagai <ph name="USER_EMAIL_ADDRESS" />. Kini Anda dapat mengakses bookmark, histori, dan setelan lainnya pada seluruh perangkat yang Anda masuki.</translation>
diff --git a/chrome/app/resources/chromium_strings_it.xtb b/chrome/app/resources/chromium_strings_it.xtb
index f3e5737b..e271723 100644
--- a/chrome/app/resources/chromium_strings_it.xtb
+++ b/chrome/app/resources/chromium_strings_it.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Riavvia Chromium</translation>
 <translation id="3179665906251668410">Apri link in una finestra di navigazione in inco&amp;gnito di Chromium</translation>
 <translation id="3185330573522821672">Personalizza il tuo nuovo profilo Chromium</translation>
+<translation id="318879170965183683">Puoi usare le password presenti nel tuo Account Google in Chromium dopo aver eseguito l'accesso</translation>
 <translation id="3190315855212034486">Spiacenti, si è verificato un arresto anomalo di Chromium. Riavviarlo ora?</translation>
 <translation id="3224847870593914902">Per rimuovere il tuo Account Google da Chromium, esci da Chromium nella pagina Impostazioni</translation>
 <translation id="3258596308407688501">Chromium non è in grado di leggere e scrivere nella directory dei dati:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Installazione non riuscita perché l'accesso in questo paese è sottoposto a limitazioni.</translation>
 <translation id="4510853178268397146">Per questa estensione non sono state pubblicate Norme di tutela della privacy, ad esempio la modalità di raccolta e utilizzo dei dati. Chromium consiglia di rimuoverla.</translation>
 <translation id="452711251841752011">Ti diamo il benvenuto in Chromium; nuova finestra del browser aperta</translation>
+<translation id="4531137820806573936">Chromium deve avere l'autorizzazione per mappare l'ambiente circostante e monitorare le tue mani</translation>
+<translation id="4536805923587466102">Hai già eseguito l'accesso come <ph name="USER_EMAIL_ADDRESS" /> in un altro profilo Chromium</translation>
 <translation id="4544142686420020088">Si è verificato un errore: Chromium non si è aggiornato. <ph name="BEGIN_LINK" />Risolvi i problemi di aggiornamento e gli aggiornamenti non riusciti di Chromium.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Vuoi continuare con un nuovo profilo Chromium?</translation>
 <translation id="4567424176335768812">Hai eseguito l'accesso come <ph name="USER_EMAIL_ADDRESS" />. Ora puoi accedere ai tuoi Preferiti, alla tua cronologia e ad altre impostazioni su tutti i tuoi dispositivi su cui esegui l'accesso.</translation>
diff --git a/chrome/app/resources/chromium_strings_ja.xtb b/chrome/app/resources/chromium_strings_ja.xtb
index 38e6d50..f8353726 100644
--- a/chrome/app/resources/chromium_strings_ja.xtb
+++ b/chrome/app/resources/chromium_strings_ja.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Chromium を再起動します</translation>
 <translation id="3179665906251668410">Chromium のシークレット ウインドウでリンクを開く(&amp;G)</translation>
 <translation id="3185330573522821672">新しい Chromium プロフィールをカスタマイズ</translation>
+<translation id="318879170965183683">ログイン中は、Google アカウントに保存したパスワードを Chromium で使用できます</translation>
 <translation id="3190315855212034486">エラー: Chromium で問題が発生しました。今すぐ再起動しますか?</translation>
 <translation id="3224847870593914902">Chromium から Google アカウントを削除するには、[設定] ページで Chromium からログアウトしてください</translation>
 <translation id="3258596308407688501">Chromium はこのデータ ディレクトリへの読み書きを実行できません:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">お住まいの国ではアクセスが制限されているため、インストールに失敗しました。</translation>
 <translation id="4510853178268397146">この拡張機能は、データの収集方法や使用方法などのプライバシー保護の取り組みを公開していません。削除することをおすすめします。</translation>
 <translation id="452711251841752011">Chromium へようこそ。新しいブラウザ ウィンドウが開いています</translation>
+<translation id="4531137820806573936">Chromium にシーン認識とハンド トラッキングを許可する必要があります</translation>
+<translation id="4536805923587466102">別の Chromium プロフィールに <ph name="USER_EMAIL_ADDRESS" /> としてすでにログインしています</translation>
 <translation id="4544142686420020088">エラーが発生したため、Chromium が更新されませんでした。<ph name="BEGIN_LINK" />Chromium の更新に関する問題を解決してください。<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">新しい Chromium プロフィールで続行しますか?</translation>
 <translation id="4567424176335768812"><ph name="USER_EMAIL_ADDRESS" /> としてログインしています。ログインしているすべてのデバイスで、ブックマーク、履歴、その他の設定にアクセスできます。</translation>
diff --git a/chrome/app/resources/chromium_strings_ka.xtb b/chrome/app/resources/chromium_strings_ka.xtb
index b09aff9..24a3d5cb 100644
--- a/chrome/app/resources/chromium_strings_ka.xtb
+++ b/chrome/app/resources/chromium_strings_ka.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Chromium-ის ხელახლა გაშვება</translation>
 <translation id="3179665906251668410">ბმულის გახსნა Chromium-ის ინკო&amp;გნიტო ფანჯარაში</translation>
 <translation id="3185330573522821672">მოირგეთ თქვენი ახალი Chromium პროფილი</translation>
+<translation id="318879170965183683">სანამ შესული ხართ Chromium-ში შეძლებთ თქვენს Google ანგარიშში არსებული პაროლების გამოყენებას</translation>
 <translation id="3190315855212034486">ვაუ! Chromium-ში შეცდომაა. გადავტვირთოთ?</translation>
 <translation id="3224847870593914902">Chromium-იდან Google ანგარიში რომ ამოშალოთ, საჭიროა, სისტემიდან გახვიდეთ Chromium-ის პარამეტრების გვერდზე</translation>
 <translation id="3258596308407688501">Chromium ვერ ახერხებს თავის მონაცემთა დირექტორიაში წაკითხვას და ჩაწერის განხორციელებას:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">ინსტალაცია ვერ მოხერხდა, რადგან წვდომა შეზღუდულია ამ ქვეყანაში</translation>
 <translation id="4510853178268397146">ამ გაფართოებას არ გამოუქვეყნებია კონფიდენციალური ინფორმაციის გამოყენების პრაქტიკა, მაგალითად, მონაცემების შეგროვებისა და გამოყენების წესები. Chromium გირჩევთ მის ამოშლას.</translation>
 <translation id="452711251841752011">მოგესალმებით Chromium-ში; გახსნილია ბრაუზერის ახალი ფანჯარა</translation>
+<translation id="4531137820806573936">თქვენი გარემოს მოსანიშნად და თქვენი ხელებისთვის თვალის მიდევნებისთვის Chromium საჭრიროებს ნებართვას</translation>
+<translation id="4536805923587466102">თქვენ უკვე შესული ხართ Chromium-ის სხვა პროფილში როგორც <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="4544142686420020088">Chromium-ის განახლება ვერ მოხერხდა შეფერხების გამო. <ph name="BEGIN_LINK" />შეასწორეთ Chromium-ის განახლებასთან დაკავშირებული პრობლემები და განუხორციელებელი განახლებები.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">გსურთ ახალ Chromium პროფილში გაგრძელება?</translation>
 <translation id="4567424176335768812">თქვენ შესული ხართ, როგორც <ph name="USER_EMAIL_ADDRESS" />. ახლა შეგიძლიათ გახსნათ თქვენი სანიშნეები, ისტორია და სხვა პარამეტრები ყველა მოწყობილობიდან, რომელშიც შესული ხართ.</translation>
diff --git a/chrome/app/resources/chromium_strings_kk.xtb b/chrome/app/resources/chromium_strings_kk.xtb
index 38491114..267a95a 100644
--- a/chrome/app/resources/chromium_strings_kk.xtb
+++ b/chrome/app/resources/chromium_strings_kk.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Chromium қолданбасын қайта іске қосу</translation>
 <translation id="3179665906251668410">Сілтемені Chromium инкогнито терезесінде ашу</translation>
 <translation id="3185330573522821672">Жаңа Chromium профилін реттеңіз.</translation>
+<translation id="318879170965183683">Google аккаунтыңызға кіріп отырған кезде, Chromium-де аккаунттағы құпия сөздеріңізді пайдалана аласыз.</translation>
 <translation id="3190315855212034486">Chromium жаңылысты. Қазір қайта іске қосу керек пе?</translation>
 <translation id="3224847870593914902">Chromium-нен Google аккаунтын өшіру үшін Chromium-нен "Параметрлер" бетінде шығыңыз.</translation>
 <translation id="3258596308407688501">Chromium өзінің деректер каталогін оқи және оған жаза алмайды:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">Орнату мүмкін болмады, себебі бұл елде кіруге шектеу қойылған.</translation>
 <translation id="4510853178268397146">Бұл кеңейтім пайдаланушы деректерін қалай жинап, қолданатыны сияқты құпиялық шараларын жарияламаған. Chromium оны өшіруге кеңес береді.</translation>
 <translation id="452711251841752011">Chromium браузеріне қош келдіңіз! Жаңа браузер терезесі ашылды.</translation>
+<translation id="4531137820806573936">Chromium-ге айналаңызды картаға түсіруге және қолыңызды бақылауға рұқсат қажет.</translation>
+<translation id="4536805923587466102">Басқа Chromium профилінде әлдеқашан <ph name="USER_EMAIL_ADDRESS" /> ретінде кіргенсіз.</translation>
 <translation id="4544142686420020088">Chromium жаңартылған жоқ. Бірдеңе дұрыс болмады. <ph name="BEGIN_LINK" />Chromium браузеріндегі жаңартуға қатысты мәселелерді түзетіңіз.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Жаңа Chromium профилінде жалғастырылсын ба?</translation>
 <translation id="4567424176335768812"><ph name="USER_EMAIL_ADDRESS" /> ретінде кіргенсіз. Енді барлық кірген құрылғыларда бетбелгілеріңізді, журналыңызды және басқа параметрлерді көре аласыз.</translation>
diff --git a/chrome/app/resources/chromium_strings_kn.xtb b/chrome/app/resources/chromium_strings_kn.xtb
index d88c837..ffca544 100644
--- a/chrome/app/resources/chromium_strings_kn.xtb
+++ b/chrome/app/resources/chromium_strings_kn.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Chromium ಮರುಪ್ರಾರಂಭಿಸಿ</translation>
 <translation id="3179665906251668410">Chromium ಅ&amp;ದೃಶ್ಯ ವಿಂಡೋದಲ್ಲಿ ಲಿಂಕ್ ತೆರೆಯಿರಿ</translation>
 <translation id="3185330573522821672">ನಿಮ್ಮ ಹೊಸ Chromium ಪ್ರೊಫೈಲ್ ಅನ್ನು ಕಸ್ಟಮೈಸ್ ಮಾಡಿ</translation>
+<translation id="318879170965183683">ನೀವು ಸೈನ್ ಇನ್ ಆಗಿರುವಾಗ Chromium ನಲ್ಲಿ ನಿಮ್ಮ Google ಖಾತೆಯಿಂದ ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ನೀವು ಬಳಸಬಹುದು</translation>
 <translation id="3190315855212034486">ಓಹ್! Chromium ಕ್ರ್ಯಾಶ್ ಆಗಿದೆ. ಮತ್ತೊಮ್ಮೆ ಪ್ರಾರಂಭಿಸುವುದೇ?</translation>
 <translation id="3224847870593914902">Chromium ನಿಂದ ನಿಮ್ಮ Google ಖಾತೆಯನ್ನು ತೆಗೆದುಹಾಕಲು, ಸೆಟ್ಟಿಂಗ್‌ಗಳ ಪುಟದಲ್ಲಿ Chromium ನಿಂದ ಸೈನ್ ಔಟ್ ಮಾಡಿ</translation>
 <translation id="3258596308407688501">Chromium ಗೆ ಇದರ ಡೇಟಾ ಡೈರೆಕ್ಟರಿಯನ್ನು ಓದಲಾಗುವುದಿಲ್ಲ ಮತ್ತು ಬರೆಯಲಾಗುವುದಿಲ್ಲ: <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -203,6 +204,8 @@
 <translation id="4501471624619070934">ಈ ರಾಷ್ಟ್ರದಲ್ಲಿ ಆ್ಯಕ್ಸೆಸ್ ಅನ್ನು ನಿರ್ಬಂಧಿಸಿರುವುದರ ಕಾರಣ ಇನ್‌ಸ್ಟಾಲೇಶನ್ ವಿಫಲವಾಗಿದೆ.</translation>
 <translation id="4510853178268397146">ಈ ಎಕ್ಸ್‌ಟೆನ್ಶನ್ ಡೇಟಾವನ್ನು ಹೇಗೆ ಸಂಗ್ರಹಿಸುತ್ತದೆ ಮತ್ತು ಬಳಸುತ್ತದೆ ಎಂಬಂತಹ ಗೌಪ್ಯತೆಯ ರೂಢಿಗಳನ್ನು ಪ್ರಕಟಿಸಿಲ್ಲ. ನೀವು ಅದನ್ನು ತೆಗೆದುಹಾಕುವಂತೆ Chromium ಶಿಫಾರಸು ಮಾಡುತ್ತದೆ.</translation>
 <translation id="452711251841752011">Chromium ಗೆ ಸುಸ್ವಾಗತ; ಹೊಸ ಬ್ರೌಸರ್‌ನಲ್ಲಿ ಹೊಸ ವಿಂಡೋವನ್ನು ತೆರೆಯಲಾಗಿದೆ</translation>
+<translation id="4531137820806573936">ನಿಮ್ಮ ಸುತ್ತಲಿನ ಪರಿಸರವನ್ನು ನಕ್ಷೆ ಮಾಡಲು ಮತ್ತು ನಿಮ್ಮ ಕೈಗಳನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಲು Chromium ಗೆ ಅನುಮತಿಯ ಅಗತ್ಯವಿದೆ</translation>
+<translation id="4536805923587466102">ನೀವು ಈಗಾಗಲೇ ಮತ್ತೊಂದು Chromium ಪ್ರೊಫೈಲ್‌ನಲ್ಲಿ <ph name="USER_EMAIL_ADDRESS" /> ಮೂಲಕ ಸೈನ್ ಇನ್ ಮಾಡಿದ್ದೀರಿ</translation>
 <translation id="4544142686420020088">Chromium ಅಪ್‌ಡೇಟ್ ಆಗಲಿಲ್ಲ, ಏನೋ ಸಮಸ್ಯೆಯಾಗಿದೆ. <ph name="BEGIN_LINK" />Chromium ಅಪ್‌ಡೇಟ್ ಸಮಸ್ಯೆಗಳು ಹಾಗೂ ವಿಫಲವಾದ ಅಪ್‌ಡೇಟ್‌ಗಳನ್ನು ಸರಿಪಡಿಸಿ.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">ಹೊಸ Chromium ಪ್ರೊಫೈಲ್‌ನಲ್ಲಿ ಮುಂದುವರಿಯಬೇಕೆ?</translation>
 <translation id="4567424176335768812"><ph name="USER_EMAIL_ADDRESS" /> ನಂತೆ ಸೈನ್ ಇನ್ ಮಾಡಿರುವಿರಿ. ನೀವು ಇದೀಗ ನಿಮ್ಮ ಎಲ್ಲಾ ಸೈನ್ ಇನ್ ಮಾಡಿರುವ ಸಾಧನಗಳಲ್ಲಿ ನಿಮ್ಮ ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ ಮತ್ತು ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಪ್ರವೇಶಿಸಬಹುದು.</translation>
diff --git a/chrome/app/resources/chromium_strings_ko.xtb b/chrome/app/resources/chromium_strings_ko.xtb
index f80223ac..8c93689e 100644
--- a/chrome/app/resources/chromium_strings_ko.xtb
+++ b/chrome/app/resources/chromium_strings_ko.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Chromium 다시 시작</translation>
 <translation id="3179665906251668410">Chromium 시크릿 창에서 링크 열기(&amp;G)</translation>
 <translation id="3185330573522821672">새로운 Chromium 프로필 맞춤설정</translation>
+<translation id="318879170965183683">로그인한 상태로 Chromium에서 Google 계정의 비밀번호를 사용할 수 있습니다</translation>
 <translation id="3190315855212034486">Chromium이 다운되었습니다. 다시 시작하시겠습니까?</translation>
 <translation id="3224847870593914902">Chromium에서 Google 계정을 삭제하려면 설정 페이지를 통해 Chromium에서 로그아웃하세요</translation>
 <translation id="3258596308407688501">Chromium에서 데이터 디렉터리를 읽고 쓸 수 없습니다.
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">이 국가에서는 액세스가 제한되므로 설치할 수 없습니다.</translation>
 <translation id="4510853178268397146">이 확장 프로그램은 데이터 수집 및 사용 방식과 같은 개인 정보 보호 관행을 게시하지 않았습니다. Chromium에서 삭제할 것을 권장합니다.</translation>
 <translation id="452711251841752011">Chromium에 오신 것을 환영합니다. 새 브라우저 창이 열렸습니다</translation>
+<translation id="4531137820806573936">Chromium에서 주변 환경을 매핑하고 손을 추적하려면 권한이 필요합니다</translation>
+<translation id="4536805923587466102">이미 다른 Chromium 프로필에 <ph name="USER_EMAIL_ADDRESS" /> 계정으로 로그인되어 있습니다</translation>
 <translation id="4544142686420020088">문제가 발생하여 Chromium을 업데이트할 수 없습니다. <ph name="BEGIN_LINK" />Chromium 업데이트 문제 및 업데이트 실패 문제 해결하기<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">새 Chromium 프로필로 계속하시겠습니까?</translation>
 <translation id="4567424176335768812"><ph name="USER_EMAIL_ADDRESS" />(으)로 로그인되어 있습니다. 이제 로그인한 모든 기기에서 북마크, 방문 기록 및 기타 설정에 액세스할 수 있습니다.</translation>
diff --git a/chrome/app/resources/chromium_strings_ky.xtb b/chrome/app/resources/chromium_strings_ky.xtb
index b4962bc..0e330ab5 100644
--- a/chrome/app/resources/chromium_strings_ky.xtb
+++ b/chrome/app/resources/chromium_strings_ky.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Chromium'ду кайра ишке киргизүү</translation>
 <translation id="3179665906251668410">Шилтемени Chromium'дун жашы&amp;руун терезесинде ачуу</translation>
 <translation id="3185330573522821672">Жаңы Chromium профилиңизди жекелештириңиз</translation>
+<translation id="318879170965183683">Кирип турганыңызда Chromium'дагы Google аккаунтуңуздан сырсөздөрдү колдоно аласыз</translation>
 <translation id="3190315855212034486">Ой! Chromium кыйрады. Кайра ишке киргизилсинби?</translation>
 <translation id="3224847870593914902">Google аккаунтуңузду Chromium'дан өчүрүү үчүн Параметрлер барагынан Chromium'дан чыгыңыз</translation>
 <translation id="3258596308407688501">Chromium дайындар каталогун окуп, ага жаза албайт:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">Бул өлкөдөн кирүү мүмкүнчүлүгү чектелгендиктен, орнотулбай калды.</translation>
 <translation id="4510853178268397146">Бул кеңейтүү маалыматты кантип чогултуу жана колдонуу сыяктуу купуялыкты камсыз кылуу ыкмаларын жарыялаган эмес. Chromium аны өчүрүүнү сунуштайт.</translation>
 <translation id="452711251841752011">Chromium'га кош келиңиз; серепчиде жаңы терезе ачылды</translation>
+<translation id="4531137820806573936">Chromium'га айланаңызды картага түшүрүп, колго көз салууга уруксат керек</translation>
+<translation id="4536805923587466102">Мурунтан эле башка Chromium профилинен <ph name="USER_EMAIL_ADDRESS" /> катары киргенсиз</translation>
 <translation id="4544142686420020088">Chromium жаңырган жок. Бир жерден ката кетти. <ph name="BEGIN_LINK" />Chrome'догу жаңыртуу маселелерин оңдоңуз.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Жаңы Chromium профилинде улантасызбы?</translation>
 <translation id="4567424176335768812"><ph name="USER_EMAIL_ADDRESS" /> катары кирдиңиз. Эми кыстармаларды, таржымалды жана башка параметрлерди бардык катталган түзмөктөрүңүздөн колдоно аласыз.</translation>
diff --git a/chrome/app/resources/chromium_strings_lt.xtb b/chrome/app/resources/chromium_strings_lt.xtb
index cdabd6b..61d0c0f5 100644
--- a/chrome/app/resources/chromium_strings_lt.xtb
+++ b/chrome/app/resources/chromium_strings_lt.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Iš naujo paleisti „Chromium“</translation>
 <translation id="3179665906251668410">Atidaryti nuorodą „Chromium“ inko&amp;gnito lange</translation>
 <translation id="3185330573522821672">Tinkinkite naująjį „Chromium“ profilį</translation>
+<translation id="318879170965183683">Galite naudoti slaptažodžius iš „Google“ paskyros naršyklėje „Chromium“, kol esate prisijungę</translation>
 <translation id="3190315855212034486">Oi! „Chromium“ užstrigo. Paleisti iš naujo dabar?</translation>
 <translation id="3224847870593914902">Jei norite pašalinti „Google“ paskyrą iš „Chromium“, atsijunkite nuo „Chromium“ puslapyje „Nustatymai“</translation>
 <translation id="3258596308407688501">„Chromium“ negali skaityti ir rašyti į duomenų katalogą:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">Diegimas nepavyko, nes šioje šalyje prieiga ribojama.</translation>
 <translation id="4510853178268397146">Šis plėtinys nepaskelbė privatumo praktikos, pvz., kaip renka ir naudoja duomenis. „Chromium“ rekomenduoja jį pašalinti.</translation>
 <translation id="452711251841752011">Sveiki, tai – „Chromium“; atidarytas naujas naršyklės langas</translation>
+<translation id="4531137820806573936">„Chromium“ reikia leidimo susieti jūsų aplinką ir stebėti jūsų rankas</translation>
+<translation id="4536805923587466102">Jau esate prisijungę kaip <ph name="USER_EMAIL_ADDRESS" /> kitame „Chromium“ profilyje</translation>
 <translation id="4544142686420020088">Nepavyko atnaujinti „Chromium“, įvyko klaida. <ph name="BEGIN_LINK" />Pašalinkite „Chromium“ naujinimo problemas ir naujinių klaidas.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Tęsti naudojant naują „Chromium“ profilį?</translation>
 <translation id="4567424176335768812">Esate prisijungę kaip <ph name="USER_EMAIL_ADDRESS" />. Dabar galite pasiekti savo žymes, istoriją ir kitus nustatymus visuose įrenginiuose, kuriuose esate prisijungę.</translation>
diff --git a/chrome/app/resources/chromium_strings_lv.xtb b/chrome/app/resources/chromium_strings_lv.xtb
index 31fabc2..e95aa53 100644
--- a/chrome/app/resources/chromium_strings_lv.xtb
+++ b/chrome/app/resources/chromium_strings_lv.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Restartēt Chromium</translation>
 <translation id="3179665906251668410">Atvērt saiti inko&amp;gnito režīma logā</translation>
 <translation id="3185330573522821672">Pielāgojiet savu jauno Chromium profilu.</translation>
+<translation id="318879170965183683">Kad esat pierakstījies, pārlūkā Chromium varat izmantot paroles no sava Google konta</translation>
 <translation id="3190315855212034486">Eh! Chromium ir avarējis. Vai restartēt to tūlīt?</translation>
 <translation id="3224847870593914902">Lai noņemtu savu Google kontu no pārlūka Chromium, lapā “Iestatījumi” izrakstieties no pārlūka Chromium.</translation>
 <translation id="3258596308407688501">Chromium nevar nolasīt savu datu direktoriju un ierakstīt tajā:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Instalēšana neizdevās, jo šajā valstī piekļuve ir ierobežota.</translation>
 <translation id="4510853178268397146">Nav norādīta konfidencialitātes prakse šim paplašinājumam, piemēram, kā tas vāc un izmanto datus. Chromium iesaka to noņemt.</translation>
 <translation id="452711251841752011">Laipni lūdzam pārlūkā Chromium (tika atvērts jauns pārlūka logs)!</translation>
+<translation id="4531137820806573936">Pārlūkam Chromium ir nepieciešama atļauja jūsu apkārtnes kartēšanai un roku kustību izsekošanai</translation>
+<translation id="4536805923587466102">Ar kontu <ph name="USER_EMAIL_ADDRESS" /> jau esat pierakstījies citā Chromium profilā</translation>
 <translation id="4544142686420020088">Pārlūkprogramma Chromium netika atjaunināta. Radās problēma. <ph name="BEGIN_LINK" />Novērsiet Chromium atjaunināšanas problēmas.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Vai turpināt jaunā Chromium profilā?</translation>
 <translation id="4567424176335768812">Jūs esat pierakstījies kā <ph name="USER_EMAIL_ADDRESS" />. Tagad varat piekļūt savām grāmatzīmēm, vēsturei un citiem iestatījumiem visās ierīcēs, kurās esat pierakstījies.</translation>
diff --git a/chrome/app/resources/chromium_strings_mn.xtb b/chrome/app/resources/chromium_strings_mn.xtb
index 50f8200..59ba92e 100644
--- a/chrome/app/resources/chromium_strings_mn.xtb
+++ b/chrome/app/resources/chromium_strings_mn.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Chromium-г дахин эхлүүлэх</translation>
 <translation id="3179665906251668410">Холбоосыг Chromium-н нууцлалтай цонхонд нээх</translation>
 <translation id="3185330573522821672">Chromium-н шинэ профайлаа тохируулна уу</translation>
+<translation id="318879170965183683">Та Google Бүртгэлээрээ нэвтэрсэн үедээ нууц үгээ Chromium-д ашиглаж болно</translation>
 <translation id="3190315855212034486">Chromium-д гамтал гарлаа. Дахин эхлүүлэх үү?</translation>
 <translation id="3224847870593914902">Google Бүртгэлээ Chromium-с хасахын тулд Тохиргооны хуудсанд Chromium-с гарна уу</translation>
 <translation id="3258596308407688501">Chromium нь өөрийн өгөгдлийн сан руу уншуулж бас бичиж чадахгүй байна: <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Энэ улсад хандалтыг хязгаарласан тул суулгаж чадсангүй.</translation>
 <translation id="4510853178268397146">Энэ өргөтгөл өгөгдлийг хэрхэн цуглуулж, ашигладаг гэх мэт нууцлалын практикаа нийтлээгүй байна. Chromium танд үүнийг хасахыг зөвлөж байна.</translation>
 <translation id="452711251841752011">Chromium-д тавтай морилно уу; хөтчийн шинэ цонхыг нээсэн</translation>
+<translation id="4531137820806573936">Таны орчин тойрныг зураглаж, гарыг тань тандахад Chromium-д зөвшөөрөл шаардлагатай</translation>
+<translation id="4536805923587466102">Та <ph name="USER_EMAIL_ADDRESS" /> хаягаараа Chromium-н өөр профайлд аль хэдийн нэвтэрсэн байна</translation>
 <translation id="4544142686420020088">Chromium-г шинэчлээгүй, ямар нэг алдаа гарлаа. <ph name="BEGIN_LINK" />Chromium-г шинэчлэхтэй холбоотой асуудлууд болон амжилтгүй болсон шинэчлэлтүүдийг засна уу.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Chromium-н шинэ профайлд үргэлжлүүлэх үү?</translation>
 <translation id="4567424176335768812">Та <ph name="USER_EMAIL_ADDRESS" /> ингэж нэвтэрсэн байна. Одоо та өөрийн нэвтэрсэн бүх төхөөрөмжүүд дээрээ хайлтын жагсаалт, түүх болон бусад тохиргоонууд руугаа нэвтэрч болно.</translation>
diff --git a/chrome/app/resources/chromium_strings_ne.xtb b/chrome/app/resources/chromium_strings_ne.xtb
index 308ab8a..95b3e102 100644
--- a/chrome/app/resources/chromium_strings_ne.xtb
+++ b/chrome/app/resources/chromium_strings_ne.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Chromium पुनः सुरु गर्नुहोस्</translation>
 <translation id="3179665906251668410">लिंकलाई Chromium को इन्कोग्निटो विन्डोमा खोल्नुहोस्</translation>
 <translation id="3185330573522821672">आफ्नो नयाँ Chromium प्रोफाइल आफूले चाहे जस्तो बनाउनुहोस्</translation>
+<translation id="318879170965183683">तपाईं साइन इन भएका बेला Chromium मा आफ्नो Google खाताको पासवर्ड प्रयोग गर्न सक्नुहुन्छ</translation>
 <translation id="3190315855212034486">ओहो! Chromium क्र्यास भएको छ। अहिले पुन: लन्च गर्ने?</translation>
 <translation id="3224847870593914902">Chromium बाट आफ्नो Google खाता हटाउन "सेटिङ" पेजमा गई Chromium बाट साइन आउट गर्नुहोस्</translation>
 <translation id="3258596308407688501">क्रोमियमले यसको डाटा निर्देशिकामा पढ्न र लेख्न सक्दैन: <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">यो देशमा एक्सेसमाथि प्रतिबन्ध लगाइएको हुनाले इन्स्टल गर्न सकिएन।</translation>
 <translation id="4510853178268397146">यो एक्स्टेन्सनले गोपनीयतासम्बन्धी अभ्यासहरू (जस्तै, डेटा सङ्कलन तथा प्रयोग गर्ने तरिका) प्रकाशित गरेको छैन। Chromium ले तपाईंलाई यो एक्स्टेन्सन हटाउन सिफारिस गर्छ।</translation>
 <translation id="452711251841752011">Chromium मा तपाईंलाई स्वागत छ; ब्राउजरको नयाँ विन्डो खोलियो</translation>
+<translation id="4531137820806573936">Chromium लाई तपाईंका वरिपरिको नक्सा बनाउने र तपाईंका हातको चाल ट्र्याक गर्ने अनुमति दिनु पर्ने हुन्छ</translation>
+<translation id="4536805923587466102">तपाईंले <ph name="USER_EMAIL_ADDRESS" /> का रूपमा अर्को Chromium प्रोफाइलमा साइन इन गरिसक्नुभएको छ</translation>
 <translation id="4544142686420020088">Chromium अद्यावधिक भएन, कुनै समस्या आयो। <ph name="BEGIN_LINK" />Chromium अद्यावधिक गर्दा देखिएका समस्या तथा अद्यावधिक नहुने समस्याहरू समाधान गर्नुहोस्।<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">नयाँ Chromium प्रोफाइल प्रयोग गरी साइन इन गर्ने हो?</translation>
 <translation id="4567424176335768812">तपाइँ <ph name="USER_EMAIL_ADDRESS" /> को रूपमा साइन इन हुनुभएको छ। अब तपाइँले तपाइँका सबै साइन इन भएका यन्त्रहरूमा तपाइँका पृष्ठमञ्जूषाहरू, इतिहास, र अन्य सेटिङहरू पहुँच गर्न सक्नुहुन्छ।</translation>
diff --git a/chrome/app/resources/chromium_strings_no.xtb b/chrome/app/resources/chromium_strings_no.xtb
index 0fa7301..b039d5a 100644
--- a/chrome/app/resources/chromium_strings_no.xtb
+++ b/chrome/app/resources/chromium_strings_no.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Start Chromium på nytt</translation>
 <translation id="3179665906251668410">Åpne linken i et inkognitovindu i Chromium</translation>
 <translation id="3185330573522821672">Tilpass den nye Chromium-profilen din</translation>
+<translation id="318879170965183683">Du kan bruke passordene fra Google-kontoen din i Chromium mens du er logget på</translation>
 <translation id="3190315855212034486">Chromium har krasjet. Vil du starte den på nytt nå?</translation>
 <translation id="3224847870593914902">For å fjerne Google-kontoen din fra Chromium, logg av Chromium på Innstillinger-siden</translation>
 <translation id="3258596308407688501">Chromium kan ikke lese og skrive til egen datakatalog:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Installasjonen mislyktes fordi tilgangen er begrenset i dette landet.</translation>
 <translation id="4510853178268397146">Denne utvidelsen har ikke publisert retningslinjer for personvern, for eksempel hvordan den samler inn og bruker data. Chromium anbefaler at du fjerner den.</translation>
 <translation id="452711251841752011">Velkommen til Chromium – et nytt nettleservindu er åpnet</translation>
+<translation id="4531137820806573936">Chromium trenger tillatelse til å kartlegge omgivelsene dine og spore hendene dine</translation>
+<translation id="4536805923587466102">Du er allerede logget på som <ph name="USER_EMAIL_ADDRESS" /> i en annen Chromium-profil</translation>
 <translation id="4544142686420020088">Chromium ble ikke oppdatert. Noe gikk galt. <ph name="BEGIN_LINK" />Løs problemer med Chromium-oppdateringer og mislykkede oppdateringer.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Vil du fortsette i en ny Chromium-profil?</translation>
 <translation id="4567424176335768812">Du er logget på som <ph name="USER_EMAIL_ADDRESS" />. Nå kan du bruke bokmerkene, loggen og andre innstillinger på alle enhetene du er logget på.</translation>
diff --git a/chrome/app/resources/chromium_strings_pt-PT.xtb b/chrome/app/resources/chromium_strings_pt-PT.xtb
index e44b8c6..bde7610c 100644
--- a/chrome/app/resources/chromium_strings_pt-PT.xtb
+++ b/chrome/app/resources/chromium_strings_pt-PT.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Reiniciar o Chromium</translation>
 <translation id="3179665906251668410">Abrir link numa janela de nave&amp;gação anónima do Chromium</translation>
 <translation id="3185330573522821672">Personalize o seu novo perfil do Chromium</translation>
+<translation id="318879170965183683">Pode usar as palavras-passe da sua Conta Google no Chromium enquanto tem sessão iniciada</translation>
 <translation id="3190315855212034486">Ups! O Chromium falhou. Reiniciar agora?</translation>
 <translation id="3224847870593914902">Para remover a sua Conta Google do Chromium, termine sessão no Chromium na página Definições</translation>
 <translation id="3258596308407688501">O Chromium não consegue ler e escrever no respetivo diretório de dados:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">A instalação falhou porque o acesso é restrito neste país.</translation>
 <translation id="4510853178268397146">Esta extensão não publicou Práticas de Privacidade, por exemplo, a forma como recolhe e usa os dados. O Chromium recomenda que a remova.</translation>
 <translation id="452711251841752011">Damos-lhe as boas-vindas ao Chromium; nova janela do navegador aberta</translation>
+<translation id="4531137820806573936">O Chromium precisa de autorização para mapear o ambiente à sua volta e acompanhar as suas mãos</translation>
+<translation id="4536805923587466102">Já tem sessão iniciada como <ph name="USER_EMAIL_ADDRESS" /> noutro perfil do Chromium</translation>
 <translation id="4544142686420020088">O Chromium não foi atualizado. Ocorreu um erro. <ph name="BEGIN_LINK" />Corrija problemas de atualização do Chrome e falhas nas atualizações<ph name="END_LINK" />.</translation>
 <translation id="454579500955453258">Quer continuar num novo perfil do Chromium?</translation>
 <translation id="4567424176335768812">Tem sessão iniciada como <ph name="USER_EMAIL_ADDRESS" />. Agora, pode aceder aos seus marcadores, ao histórico e a outras definições em todos os dispositivos com sessão iniciada.</translation>
diff --git a/chrome/app/resources/chromium_strings_ro.xtb b/chrome/app/resources/chromium_strings_ro.xtb
index 752bac7..03f95eb 100644
--- a/chrome/app/resources/chromium_strings_ro.xtb
+++ b/chrome/app/resources/chromium_strings_ro.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Reporniți Chromium</translation>
 <translation id="3179665906251668410">Deschide linkul într-o fereastră Chromium inco&amp;gnito</translation>
 <translation id="3185330573522821672">Personalizează noul profil Chromium</translation>
+<translation id="318879170965183683">Poți folosi parolele din Contul Google în Chromium dacă ești conectat(ă)</translation>
 <translation id="3190315855212034486">Hopa! Chromium s-a închis cu eroare. Reporniți acum?</translation>
 <translation id="3224847870593914902">Pentru a elimina Contul Google din Chromium, deconectează-te de la Chromium din pagina Setări</translation>
 <translation id="3258596308407688501">Chromium nu poate citi și scrie în directorul propriu de date:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Instalarea nu a reușit deoarece accesul este restricționat în această țară.</translation>
 <translation id="4510853178268397146">Extensia nu a publicat practici de confidențialitate, cum ar fi modul în care colectează și folosește date. Chromium recomandă să o elimini.</translation>
 <translation id="452711251841752011">Bun venit la Chromium; fereastră de browser nouă deschisă</translation>
+<translation id="4531137820806573936">Chromium are nevoie de permisiune pentru a mapa împrejurimile și a-ți urmări mâinile</translation>
+<translation id="4536805923587466102">Te-ai conectat deja ca <ph name="USER_EMAIL_ADDRESS" /> în alt profil Chromium</translation>
 <translation id="4544142686420020088">Chromium nu s-a actualizat. A apărut o eroare. <ph name="BEGIN_LINK" />Remediază problemele de actualizare și actualizările nereușite în Chromium.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Continui cu un profil Chromium nou?</translation>
 <translation id="4567424176335768812">V-ați conectat ca <ph name="USER_EMAIL_ADDRESS" />. Acum vă puteți accesa marcajele, istoricul și alte setări de pe toate dispozitivele pe care v-ați conectat.</translation>
diff --git a/chrome/app/resources/chromium_strings_si.xtb b/chrome/app/resources/chromium_strings_si.xtb
index dd1f25cf..ae94c2f 100644
--- a/chrome/app/resources/chromium_strings_si.xtb
+++ b/chrome/app/resources/chromium_strings_si.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Chromium නැවත දියත් කරන්න</translation>
 <translation id="3179665906251668410">සබැඳිය Chromium අ&amp;ප්‍රසිද්ධ කවුළුව තුළ විවෘත කරන්න</translation>
 <translation id="3185330573522821672">ඔබගේ නව Chromium පැතිකඩ අභිරුචිකරණය කරන්න</translation>
+<translation id="318879170965183683">ඔබට ඔබ පුරනය වී ඇති විට Chromium තුළ ඔබේ Google ගිණුමෙන් ඔබේ මුරපද භාවිත කළ හැක</translation>
 <translation id="3190315855212034486">අපොයි! Chromium අවසන් විය. දැන් නැවත ආරම්භ කරනවාද?</translation>
 <translation id="3224847870593914902">Chromium වෙතින් ඔබේ Google ගිණුම ඉවත් කිරීමට, සැකසීම් පිටුව තුළින් Chromium වෙතින් වරන්න</translation>
 <translation id="3258596308407688501">Chromium හට එහි දත්ත නාමාවලිය කියවීම හෝ ලිවීම කළ නොහැක:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">මෙම රට තුළ ප්‍රවේශය සීමා කර ඇති නිසා ස්ථාපනය අසමත් විය.</translation>
 <translation id="4510853178268397146">මෙම දිගුව මෙය දත්ත රැස් කර භාවිත කරන ආකාරය වැනි පෞද්ගලිකත්ව පුරුදු ප්‍රකාශන කර නැත. Chromium ඔබ එය ඉවත් කිරීම නිර්දේශ කරයි.</translation>
 <translation id="452711251841752011">Chromium වෙත සාදරයෙන් පිළිගනිමු; නව බ්‍රවුසර කවුළුවක් විවෘත කරන ලදි</translation>
+<translation id="4531137820806573936">ඔබේ වටපිටාව සිතියම් කිරීමට සහ ඔබේ අත් හඹා යාමට Chromium හට අවසරය අවශ්‍ය ය</translation>
+<translation id="4536805923587466102">ඔබ දැනටමත් තව Chromium පැතිඩකක් තුළ <ph name="USER_EMAIL_ADDRESS" /> ලෙස පුරනය වී ඇත</translation>
 <translation id="4544142686420020088">Chromium යාවත්කාලීන නොවිය, යම් දෙයක් වැරදිණි. <ph name="BEGIN_LINK" />Chromium යාවත්කාලීන ගැටලු සහ අසමත් වූ යාවත්කාලීන නිරාකරණ කරන්න.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">නව Chromium පැතිකඩක ඉදිරියට යන්නද?</translation>
 <translation id="4567424176335768812">ඔබ <ph name="USER_EMAIL_ADDRESS" /> ලෙස සයින් ඉන් වී තිබේ. ඔබට දැන් ඔබේ පිටු සලකුණු, ඉතිහාසය, සහ අනෙක් පසුතල වෙත ඔබේ අත්සන් කළ උපාංගයෙන් පිවිසිය හැකිය.</translation>
diff --git a/chrome/app/resources/chromium_strings_sk.xtb b/chrome/app/resources/chromium_strings_sk.xtb
index bb68456..3e26948 100644
--- a/chrome/app/resources/chromium_strings_sk.xtb
+++ b/chrome/app/resources/chromium_strings_sk.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Znova spustiť prehliadač Chromium</translation>
 <translation id="3179665906251668410">Otvoriť odkaz v okne inko&amp;gnito prehliadača Chromium</translation>
 <translation id="3185330573522821672">Prispôsobte svoj nový profil prehliadača Chromium</translation>
+<translation id="318879170965183683">Kým máte aktívne prihlásenie, môžete používať heslá zo svojho účtu Google v prehliadači Chromium</translation>
 <translation id="3190315855212034486">Prehliadač Chromium zlyhal. Chcete ho spustiť znova?</translation>
 <translation id="3224847870593914902">Ak chcete odstrániť svoj účet Google z prehliadača Chromium, odhláste sa z prehliadača Chromium na stránke Nastavenia</translation>
 <translation id="3258596308407688501">Prehliadač Chromium nemôže čítať ani zapisovať do adresára s údajmi:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">Nepodarilo sa nainštalovať, pretože v tejto krajine je obmedzený prístup.</translation>
 <translation id="4510853178268397146">Toto rozšírenie nemá zverejnené spôsoby ochrany súkromia, napríklad to, ako zhromažďuje a používa údaje. Chromium odporúča, aby ste ho odstránili.</translation>
 <translation id="452711251841752011">Vitajte v prehliadači Chromium, otvorilo sa nové okno prehliadača</translation>
+<translation id="4531137820806573936">Chromium potrebuje povolenie mapovať vaše okolie a sledovať vaše ruky</translation>
+<translation id="4536805923587466102">Ako <ph name="USER_EMAIL_ADDRESS" /> ste sa už prihlásili v inom profile prehliadača Chromium</translation>
 <translation id="4544142686420020088">Chromium sa neaktualizoval. Vyskytol sa problém. <ph name="BEGIN_LINK" />Vyriešiť problémy so sťahovaním aktualizácií prehliadača Chromium a neúspešnými aktualizáciami<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Chcete pokračovať v novom profile prehliadača Chromium?</translation>
 <translation id="4567424176335768812">Ste prihlásený/-á ako <ph name="USER_EMAIL_ADDRESS" />. Teraz môžete na všetkých zariadeniach, kde ste prihlásený/-á, pristupovať k svojim záložkám, histórii a ďalším nastaveniam.</translation>
diff --git a/chrome/app/resources/chromium_strings_sl.xtb b/chrome/app/resources/chromium_strings_sl.xtb
index 64ddc2b..6fb3494 100644
--- a/chrome/app/resources/chromium_strings_sl.xtb
+++ b/chrome/app/resources/chromium_strings_sl.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">Znova zaženite Chromium</translation>
 <translation id="3179665906251668410">Odpri povezavo v Chromiumovem oknu brez bele&amp;ženja zgodovine</translation>
 <translation id="3185330573522821672">Prilagajanje novega profila v Chromiumu</translation>
+<translation id="318879170965183683">Gesla iz računa Google lahko uporabljate v Chromiumu, ko ste prijavljeni</translation>
 <translation id="3190315855212034486">Opa! Chromium se je zrušil. Ga želite znova zagnati?</translation>
 <translation id="3224847870593914902">Če želite račun Google odstraniti iz Chromiuma, se na strani z nastavitvami odjavite iz Chromiuma</translation>
 <translation id="3258596308407688501">Chromium ne more brati svojega imenika s podatki ali pisati vanj:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">Namestitev ni bila uspešna, ker je dostop v tej državi omejen.</translation>
 <translation id="4510853178268397146">Ta razširitev še ni objavila postopkov zagotavljanja zasebnosti, na primer kako zbira in uporablja podatke. Chromium priporoča, da jo odstranite.</translation>
 <translation id="452711251841752011">Pozdravljeni v Chromiumu; odprlo se je novo okno brskalnika</translation>
+<translation id="4531137820806573936">Chromium potrebuje dovoljenje za ustvarjanje zemljevida vašega okolja in sledenje rokam</translation>
+<translation id="4536805923587466102">V drugem profilu za Chromium ste že prijavljeni kot <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="4544142686420020088">Chromium se ni posodobil, prišlo je do napake. <ph name="BEGIN_LINK" />Odpravite težave s posodobitvijo Chromiuma in neuspelimi posodobitvami Chromiuma.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Ali želite nadaljevati v novem profilu v Chromiumu?</translation>
 <translation id="4567424176335768812">Prijavljeni ste kot <ph name="USER_EMAIL_ADDRESS" />. Zdaj imate dostop do zaznamkov, zgodovine in drugih nastavitev v vseh napravah, v katerih ste prijavljeni.</translation>
diff --git a/chrome/app/resources/chromium_strings_te.xtb b/chrome/app/resources/chromium_strings_te.xtb
index 0fda2e8..d8407e5 100644
--- a/chrome/app/resources/chromium_strings_te.xtb
+++ b/chrome/app/resources/chromium_strings_te.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Chromiumను పునఃప్రారంభించండి</translation>
 <translation id="3179665906251668410">Chromium అజ్ఞా&amp;త విండోలో లింక్‌ను తెరువు</translation>
 <translation id="3185330573522821672">మీ కొత్త Chromium ప్రొఫైల్‌ను అనుకూలంగా మార్చుకోండి</translation>
+<translation id="318879170965183683">మీరు సైన్ ఇన్ చేసినప్పుడు Chromiumలో మీ Google ఖాతా నుండి మీ పాస్‌వర్డ్‌లను ఉపయోగించవచ్చు</translation>
 <translation id="3190315855212034486">అయ్యో! Chromium క్రాష్ అయ్యింది. ఇప్పుడే మళ్లీ ప్రారంభించాలా?</translation>
 <translation id="3224847870593914902">Chromium నుండి మీ Google ఖాతాను తీసివేయడానికి, సెట్టింగ్‌ల పేజీలోని Chromium నుండి సైన్ అవుట్ చేయండి</translation>
 <translation id="3258596308407688501">Chromium దీని డేటా డైరెక్టరీని చదవలేదు మరియు దీనిలో రాయ‌లేదు: <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -203,6 +204,8 @@
 <translation id="4501471624619070934">ఈ దేశంలో యాక్సెస్ పరిమితం చేయబడినందున ఇన్‌స్టలేషన్ విఫలమైంది.</translation>
 <translation id="4510853178268397146">ఈ ఎక్స్‌టెన్షన్ అది డేటాను ఎలా సేకరిస్తుంది, దాన్ని ఎలా ఉపయోగిస్తుంది వంటి గోప్యతా పద్ధతులను పబ్లిష్ చేయలేదు. మీరు దాన్ని తీసివేయవలసిందిగా Chromium సిఫార్సు చేస్తోంది.</translation>
 <translation id="452711251841752011">Chromiumకు స్వాగతం; కొత్త బ్రౌజర్ విండో తెరవబడింది</translation>
+<translation id="4531137820806573936">మీ పరిసరాలను మ్యాప్ చేయడానికి, మీ చేతి సంజ్ఞలు అలాగే కదలికలను ట్రాక్ చేయడానికి Chromiumకి అనుమతి అవసరం</translation>
+<translation id="4536805923587466102">మీరు ఇప్పటికే మరొక Chromium ప్రొఫైల్‌లో <ph name="USER_EMAIL_ADDRESS" />‌గా సైన్ ఇన్ చేశారు</translation>
 <translation id="4544142686420020088">Chromium అప్‌డేట్ అవ్వలేదు, ఏదో తప్పు జరిగింది. <ph name="BEGIN_LINK" />Chromium అప్‌డేట్ సమస్యలు, విఫలమైన అప్‌డేట్‌లను పరిష్కరించండి.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">కొత్త Chromium ప్రొఫైల్‌లో కొనసాగించాలా?</translation>
 <translation id="4567424176335768812">మీరు <ph name="USER_EMAIL_ADDRESS" />గా సైన్ ఇన్ చేశారు. ఇప్పుడు మీరు సైన్ ఇన్ చేసిన అన్ని పరికరాల్లో మీ బుక్‌మార్క్‌లు, హిస్టరీ మరియు ఇతర సెట్టింగ్‌లను యాక్సెస్ చేయవచ్చు.</translation>
diff --git a/chrome/app/resources/chromium_strings_uk.xtb b/chrome/app/resources/chromium_strings_uk.xtb
index ba98601..7bfc8e7 100644
--- a/chrome/app/resources/chromium_strings_uk.xtb
+++ b/chrome/app/resources/chromium_strings_uk.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Перезапустити Chromium</translation>
 <translation id="3179665906251668410">Відкрити посилання в аноні&amp;мному вікні Chromium</translation>
 <translation id="3185330573522821672">Налаштуйте свій новий профіль Chromium</translation>
+<translation id="318879170965183683">Увійшовши в Chromium, ви можете використовувати паролі з облікового запису Google</translation>
 <translation id="3190315855212034486">Помилка. Chromium аварійно завершив роботу. Перезапустити зараз?</translation>
 <translation id="3224847870593914902">Щоб вилучити обліковий запис Google, вийдіть із Chromium на сторінці налаштувань</translation>
 <translation id="3258596308407688501">Chromium не може читати та писати дані у свій каталог даних:
@@ -205,6 +206,8 @@
 <translation id="4501471624619070934">Помилка встановлення через обмеження доступу в цій країні.</translation>
 <translation id="4510853178268397146">Немає відомостей про конфіденційність цього розширення, зокрема про те, як воно збирає і використовує дані. Chromium радить вилучити його.</translation>
 <translation id="452711251841752011">Вітаємо в Chromium! Відкрито нове вікно веб-переглядача</translation>
+<translation id="4531137820806573936">Вебпереглядачу Chromium потрібен дозвіл, щоб створити карту оточення й відстежувати ваші руки</translation>
+<translation id="4536805923587466102">Ви вже ввійшли як <ph name="USER_EMAIL_ADDRESS" /> в іншому профілі Chromium</translation>
 <translation id="4544142686420020088">Не вдалось оновити веб-переглядач Chromium. <ph name="BEGIN_LINK" />Вирішіть проблеми з оновленням Chrome.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Продовжити в новому профілі Chromium?</translation>
 <translation id="4567424176335768812">Ви ввійшли як <ph name="USER_EMAIL_ADDRESS" />. Ваші закладки, історія й інші налаштування будуть доступні на всіх пристроях, на яких ви ввійдете в цей обліковий запис.</translation>
diff --git a/chrome/app/resources/chromium_strings_ur.xtb b/chrome/app/resources/chromium_strings_ur.xtb
index 88aa33dc..5b28f2e 100644
--- a/chrome/app/resources/chromium_strings_ur.xtb
+++ b/chrome/app/resources/chromium_strings_ur.xtb
@@ -126,6 +126,7 @@
 <translation id="3155163173539279776">‏Chromium کو دوبارہ شروع کریں</translation>
 <translation id="3179665906251668410">‏لنک کو Chromium &amp;پوشیدگی ونڈو میں کھولیں</translation>
 <translation id="3185330573522821672">‏اپنی نئی Chromium پروفائل کو حسب ضرورت بنائیں</translation>
+<translation id="318879170965183683">‏سائن ان ہونے کے دوران، آپ Chromium میں اپنے Google اکاؤنٹ کے اپنے پاس ورڈز کا استعمال کر سکتے ہیں</translation>
 <translation id="3190315855212034486">‏افوہ! Chromium کریش ہوگیا ہے۔ دوبارہ شروع کریں؟</translation>
 <translation id="3224847870593914902">‏اپنے Google اکاؤنٹ کو Chromium سے ہٹانے کے لیے، ترتیبات کے صفحے میں Chromium سے سائن آؤٹ کریں</translation>
 <translation id="3258596308407688501">‏Chromium اپنی ڈیٹا ڈائریکٹری میں پڑھ اور لکھ نہیں سکتا ہے:
@@ -207,6 +208,8 @@
 <translation id="4501471624619070934">انسٹالیشن ناکام ہوگئی کیونکہ اس ملک میں رسائی محدود ہے۔</translation>
 <translation id="4510853178268397146">‏اس ایکسٹینشن نے رازداری کے ضوابط کو شائع نہیں کیا ہے، جیسے کہ اس کا ڈیٹا کو اکٹھا اور استعمال کرنے کا طریقہ۔ Chromium تجویز کرتا ہے کہ آپ اسے ہٹا دیں۔</translation>
 <translation id="452711251841752011">‏Chromium میں آپ کا استقبال ہے، براؤزر کی نئی ونڈو کھلی</translation>
+<translation id="4531137820806573936">‏آپ کے اطراف کا نقشہ بنانے اور آپ کے ہاتھوں کو ٹریک کرنے کیلئے، Chromium کو اجازت درکار ہے</translation>
+<translation id="4536805923587466102">‏آپ دوسری Chromium پروفائل میں پہلے ہی سے بطور <ph name="USER_EMAIL_ADDRESS" /> سائن ان ہیں</translation>
 <translation id="4544142686420020088">‏Chromium اپ ڈیٹ نہیں ہوا، کچھ غلط ہو گیا۔ <ph name="BEGIN_LINK" />Chrome اپ ڈیٹ کی دشواریوں اور ناکام اپ ڈیٹس کو درست کریں۔<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">‏ایک نئی Chromium پروفائل میں جاری رکھیں؟</translation>
 <translation id="4567424176335768812">آپ <ph name="USER_EMAIL_ADDRESS" /> کے بطور سائن ان کردہ ہیں۔ اب آپ اپنے سبھی سائن ان کردہ آلات پر اپنے بُک مارکس، سرگزشت اور دیگر ترتیبات تک رسائی حاصل کر سکتے ہیں۔</translation>
diff --git a/chrome/app/resources/chromium_strings_uz.xtb b/chrome/app/resources/chromium_strings_uz.xtb
index 0d3c5e42e..c16b44e 100644
--- a/chrome/app/resources/chromium_strings_uz.xtb
+++ b/chrome/app/resources/chromium_strings_uz.xtb
@@ -124,6 +124,7 @@
 <translation id="3155163173539279776">Chromium’ni qayta ishga tushiring</translation>
 <translation id="3179665906251668410">Havolani Chromium &amp;inkognito oynasida ochish</translation>
 <translation id="3185330573522821672">Yangi Chromium profilini moslash</translation>
+<translation id="318879170965183683">Chromiumga Google hisobidan kirilganda hisobdagi parollardan foydalanish mumkin</translation>
 <translation id="3190315855212034486">Voy! Chromium ishdan chiqdi. Qaytadan ishga tushirilsinmi?</translation>
 <translation id="3224847870593914902">Chromiumdan Google hisobini olib tashlash uchun Sozlamalar orqali hisobdan chiqing</translation>
 <translation id="3258596308407688501">Chromium o‘z jildidan ma’lumotlarni o‘qib yoki yozib ololmadi: <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -203,6 +204,8 @@
 <translation id="4501471624619070934">Oʻrnatilmadi, chunki bu mamlakatda kirish cheklangan.</translation>
 <translation id="4510853178268397146">Bu kengaytma axborot jamlashi va ishlatishi kabi maxfiylikka oid ochiqlama joylamagan. Chromium uni olib tashlashni tavsiya qiladi.</translation>
 <translation id="452711251841752011">Chromium brauzeriga xush kelibsiz, yangi oyna ochildi</translation>
+<translation id="4531137820806573936">Chromium atrofingiz xaritasini yaratish va qoʻllaringiz holatini kuzatishga ruxsat olmoqchi</translation>
+<translation id="4536805923587466102">Siz allaqachon boshqa Chromium profilidan (<ph name="USER_EMAIL_ADDRESS" />) kirgansiz</translation>
 <translation id="4544142686420020088">Notanish xatolik tufayli Chromium yangilanmadi. <ph name="BEGIN_LINK" />Chromiumdagi yangilanish muammolari va xatoliklarni tuzatish.<ph name="END_LINK" /></translation>
 <translation id="454579500955453258">Yangi Chromium profilida davom etasizmi?</translation>
 <translation id="4567424176335768812">Siz <ph name="USER_EMAIL_ADDRESS" /> hisobidan kirtingiz. Barcha xatcho‘plar, brauzer tarixi va boshqa sozlamalaringiz endi bu hisobdan foydalanadigan barcha qurilmalaringizda mavjud.</translation>
diff --git a/chrome/app/resources/generated_resources_af.xtb b/chrome/app/resources/generated_resources_af.xtb
index 82ff7a9..97a52af 100644
--- a/chrome/app/resources/generated_resources_af.xtb
+++ b/chrome/app/resources/generated_resources_af.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux het dalk nie genoeg skyfspasie beskikbaar nie. Jy kan jou Linux-skyfspasie vergroot en weer probeer terugstel in <ph name="LINK_START" />Instellings<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Matig</translation>
 <translation id="126156426083987769">Iets was fout met demonstrasiemodus-toestellisensies.</translation>
+<translation id="1261885284931493480">Verwyder oortjie(s) en vee groep uit?</translation>
 <translation id="1263231323834454256">Leeslys</translation>
 <translation id="1263733306853729545">Gebruik die <ph name="MINUS" />- en <ph name="EQUAL" />-sleutel om deur 'n kandidatelys te blaai</translation>
 <translation id="126387934568812801">Sluit hierdie skermkiekie en titels van oop oortjies in</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">Wi-fi-netwerk gekry</translation>
 <translation id="1634783886312010422">Het jy hierdie wagwoord reeds op <ph name="WEBSITE" /> verander?</translation>
 <translation id="1636212173818785548">Goed</translation>
+<translation id="1636542522761359943">Welkom, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Programdata kan enige data wees wat 'n program gestoor het (gegrond op ontwikkelaarinstellings), insluitend data soos kontakte, boodskappe en foto's. Rugsteundata sal nie deel vorm van jou Drive-bergingkwota nie.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Jy kan hierdie diens in Instellings afskakel.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Kry hierdie boekmerk op jou iPhone</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">Herbegin Chromium en laat Keychain-toegang toe om Wagwoordbestuurder met macOS Keychain te gebruik. Jou oortjies sal weer oopmaak nadat jy herbegin het.</translation>
 <translation id="1653958716132599769">Groepverwante oortjies</translation>
 <translation id="1654580009054503925">Nie toegelaat om versoeke te wys nie</translation>
+<translation id="1654713139320245449">Geen uitsaaibestemmings gevind nie. Het jy hulp nodig?</translation>
 <translation id="1656528038316521561">Agtergrondondeursigtigheid</translation>
 <translation id="1657406563541664238">Help om <ph name="PRODUCT_NAME" /> te verbeter deur gebruikstatistiek en omvalverslae outomaties na Google te stuur</translation>
 <translation id="1657937299377480641">Vra jou ouer om jou toestemming te gee om weer aan te meld vir toegang tot opvoedkundige hulpbronne</translation>
@@ -1641,12 +1644,14 @@
 <translation id="2187895286714876935">Bedienersertifikaat-invoerfout</translation>
 <translation id="2187906491731510095">Uitbreidings is opgedateer</translation>
 <translation id="2188881192257509750">Maak <ph name="APPLICATION" /> oop</translation>
+<translation id="2188919919468240749">Vee oortjiegroep uit?</translation>
 <translation id="2190069059097339078">Wi-Fi-eiebewyshaler</translation>
 <translation id="219008588003277019">Plaaslike kliënt-module: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(leeg)</translation>
 <translation id="2190967441465539539">Kan nie toegang tot kamera en mikrofoon verkry nie</translation>
 <translation id="2191754378957563929">Aan</translation>
 <translation id="2192505247865591433">Van:</translation>
+<translation id="219283042927675668">Oortjies in groep</translation>
 <translation id="2193365732679659387">Vertrou instellings</translation>
 <translation id="2194856509914051091">Dinge om in ag te neem</translation>
 <translation id="2195331105963583686">Jy sal hierdie <ph name="DEVICE_TYPE" /> ná daardie tyd steeds kan gebruik, maar dit sal nie meer outomaties sagteware- en sekuriteitopdaterings kry nie</translation>
@@ -1668,6 +1673,7 @@
 <translation id="2211043920024403606">Profielinligting</translation>
 <translation id="2211245494465528624">Bestuur sinkroniseringopsies</translation>
 <translation id="221297410904507041">Vee geskiedenis, webkoekies, kasgeheue en meer uit</translation>
+<translation id="2213410656650624348">Matig</translation>
 <translation id="2214018885812055163">Gedeelde vouers</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 reël word nie gewys nie&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> reëls word nie gewys nie&gt;}}</translation>
 <translation id="2215070081105889450">Deel eerder ’n oortjie of skerm as jy oudio wil deel</translation>
@@ -1869,6 +1875,7 @@
 <translation id="2350133097354918058">Is herlaai</translation>
 <translation id="2350182423316644347">Begin tans program …</translation>
 <translation id="235028206512346451">Jou skerm sal outomaties sluit wanneer jy van jou skerm af wegbeweeg. Jou skerm sal langer wakker bly wanneer jy voor jou toestel is. Jou skerm sal slaap pleks van sluit as jy nie ’n sluitskerm gebruik nie.</translation>
+<translation id="2352305801620974284">Jy kry jou wagwoorde en meer van jou Google-rekening af wanneer jy op hierdie toestel aanmeld.</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Sluitskermnotas word outomaties in <ph name="LOCK_SCREEN_APP_NAME" /> gestoor. Jou mees onlangse nota sal op die sluitskerm bly.</translation>
 <translation id="2353297238722298836">Kamera en mikrofoon word toegelaat</translation>
@@ -2050,6 +2057,7 @@
 <translation id="2473195200299095979">Vertaal hierdie bladsy</translation>
 <translation id="2475982808118771221">'n Fout het voorgekom</translation>
 <translation id="247616523300581745">Versteek hierdie lêers</translation>
+<translation id="2476435723907345463">Toegang tot toegangsleutels is verwyder</translation>
 <translation id="2476901513051581836">Kan nie berging skoonmaak voordat grootte van vanlyn berging bekend is nie.</translation>
 <translation id="2476974672882258506">Skakel Windows af om <ph name="PARALLELS_DESKTOP" /> te deïnstalleer.</translation>
 <translation id="2477065602824695373">Outoskandeer is afgeskakel aangesien jy veelvuldige skakelaars opgestel het.</translation>
@@ -2078,6 +2086,7 @@
 <translation id="249113932447298600">Jammer, die toestel <ph name="DEVICE_LABEL" /> word nie op hierdie tydstip gesteun nie.</translation>
 <translation id="2491587035099903063">voorbeskou stem vir <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Berei tans sertifikaatondertekeningversoek voor</translation>
+<translation id="2492964937550251173">Maak oortjie(s) toe en vee groep uit?</translation>
 <translation id="249330843868392562">Maak teks-na-spraak-instellings oop</translation>
 <translation id="2494555621641843783">Kan nie Steam installeer nie</translation>
 <translation id="2495141202137516054">Vanaf jou Drive</translation>
@@ -2244,8 +2253,10 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> kan nie veilig afgelaai word nie.</translation>
 <translation id="2620245777360407679">Toestelle wat tans aan warmkol gekoppel is</translation>
 <translation id="2620436844016719705">Stelsel</translation>
+<translation id="262087792756666314">Jy kan hierdie kenmerk vasspeld vir maklike toegang; klik boaan die kantpaneel op die Speld Vas-knoppie</translation>
 <translation id="2620900772667816510">Bluetooth-superresolusie</translation>
 <translation id="262154978979441594">Lei Google Assistent-stemmodel op</translation>
+<translation id="2622280935687585828">Verwyder <ph name="SITE_NAME" /> van gedeaktiveerde webwerwe af</translation>
 <translation id="26224892172169984">Moenie enige werf toelaat om protokolle te hanteer nie</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Beheer en herprogrammering van MIDI-toestelle word toegelaat</translation>
@@ -2419,6 +2430,7 @@
 <translation id="2743387203779672305">Kopieer na knipbord</translation>
 <translation id="274362947316498129">’n Program probeer om toegang tot <ph name="DEVICE_NAME" /> kry. Skakel <ph name="DEVICE_NAME" /> se privaatheidskakelaar af om toegang te gee.</translation>
 <translation id="2745080116229976798">Microsoft se gekwalifiseerde ondergeskiktheid</translation>
+<translation id="2747853844543618313">Maak seker jy aanvaar die uitsaaiversoek op jou <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Meld by <ph name="PRODUCT_NAME" /> aan</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Gaan grammatika saam met spelling na</translation>
@@ -2789,6 +2801,7 @@
 <translation id="3021066826692793094">Skoenlapper</translation>
 <translation id="3021678814754966447">Bekyk raambron</translation>
 <translation id="3021902017511220299">Skandering het misluk. Hierdie handeling is deur jou administrateur geblokkeer.</translation>
+<translation id="3022068420678496307">Dit sal die groep uitvee op alle toestelle wat met hierdie Google-rekening by Chrome aangemeld is.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> sal van hierdie Chromebook verwyder word en sal nie in <ph name="PRIMARY_EMAIL" /> gestoor word nie.</translation>
 <translation id="3022978424994383087">Kon dit nie hoor nie.</translation>
 <translation id="3023464535986383522">Hardoplees</translation>
@@ -3019,6 +3032,7 @@
 <translation id="3222066309010235055">Lewer vooraf: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Koppel aan <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Soek enigiets op hierdie bladsy met Google Lens</translation>
+<translation id="3223109931751684474">Verwyder toegang tot jou toegangsleutels op hierdie toestel</translation>
 <translation id="3223531857777746191">Stel knoppie terug</translation>
 <translation id="3225084153129302039">Verstek- pers avatar</translation>
 <translation id="3225319735946384299">Kode-ondertekening</translation>
@@ -3343,6 +3357,7 @@
 <translation id="3473479545200714844">Skermvergrootglas</translation>
 <translation id="3474218480460386727">Gebruik 99 letters of minder vir nuwe woorde</translation>
 <translation id="3474624961160222204">Gaan voort as <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Kry matige geheuebesparings Jou oortjies word ná ’n langer tydperk onaktief.</translation>
 <translation id="347785443197175480">Hou aan om <ph name="HOST" /> toegang tot jou kamera en mikrofoon te gee</translation>
 <translation id="3479357084663933762">Deuteranomalie</translation>
 <translation id="3479552764303398839">Nie nou nie</translation>
@@ -4066,7 +4081,6 @@
 <translation id="3983586614702900908">toestelle van 'n onbekende verskaffer</translation>
 <translation id="3983764759749072418">Play Winkel-programme het toegang tot hierdie toestel.</translation>
 <translation id="3983769721878416534">Vertraging voor klik</translation>
-<translation id="3983793589497399077">Klik of sleep enige plek om met Lens te soek</translation>
 <translation id="3984135167056005094">Moenie e-posadres insluit nie</translation>
 <translation id="3984159763196946143">Kon nie demonstrasiemodus begin nie</translation>
 <translation id="3984431586879874039">Laat hierdie werf toe om jou sekuriteitsleutel te sien?</translation>
@@ -4103,6 +4117,7 @@
 <translation id="4010036441048359843">Skakel merk aan</translation>
 <translation id="4010746393007464819">'n Opgradering na Debian 12 (Bookworm) is beskikbaar</translation>
 <translation id="4010917659463429001"><ph name="GET_IOS_APP_LINK" /> om jou boekmerke op jou mobiele toestel te kry.</translation>
+<translation id="4012268176861210196">Jy kan hierdie kenmerk vasspeld vir maklike toegang</translation>
 <translation id="4014432863917027322">Herstel "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="4015163439792426608">Het jy uitbreidings? <ph name="BEGIN_LINK" />Bestuur jou uitbtreidings<ph name="END_LINK" /> in een maklike plek.</translation>
 <translation id="4016762287427926315">Toestemmings wat jy vir <ph name="APP_NAME" /> toelaat, sal ook vir hierdie app toegelaat word. <ph name="BEGIN_LINK" />Bestuur<ph name="END_LINK" /></translation>
@@ -4188,6 +4203,7 @@
 <translation id="4078903002989614318">Sorteer- en lysopsies</translation>
 <translation id="4079140982534148664">Gebruik verbeterde speltoets</translation>
 <translation id="4082333918978320301">Geen webwerwe word toegelaat om jou mikrofoon te gebruik nie</translation>
+<translation id="4083735423615351075">Die oortjies sal op hierdie toestel oop bly, maar die groep sal uitgevee word op alle toestelle wat met hierdie Google-rekening by Chrome aangemeld is.</translation>
 <translation id="4084682180776658562">Boekmerk</translation>
 <translation id="4084835346725913160">Maak <ph name="TAB_NAME" /> toe</translation>
 <translation id="4085298594534903246">JavaScript is op hierdie bladsy geblokkeer.</translation>
@@ -4197,6 +4213,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Wys aan regterkant</translation>
+<translation id="4088879333319441249">Ongroepeer oortjiegroep?</translation>
 <translation id="4089235344645910861">Instellings is gestoor. Sinkronisering het begin.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Aktiveer geverifieerde toegang</translation>
@@ -4406,6 +4423,7 @@
 <translation id="4261429981378979799">Uitbreidingtoestemmings</translation>
 <translation id="4262004481148703251">Maak waarskuwing toe</translation>
 <translation id="4263223596040212967">Geen jou sleutelborduitleg na en probeer weer.</translation>
+<translation id="4263470758446311292">Kry maksimum geheuebesparings Jou oortjies word ná ’n korter tydperk onaktief.</translation>
 <translation id="4265096510956307240">Verifieer dat dit jy is</translation>
 <translation id="4265301768135164545">Jy kan ook ’n e-SIM-profiel <ph name="BEGIN_LINK" />handmatig<ph name="END_LINK" /> opstel</translation>
 <translation id="426564820080660648">Gebruik Ethernet, WiFi of mobiele data om te kyk of daar opdaterings is.</translation>
@@ -4725,6 +4743,7 @@
 <translation id="4503748371388753124">Jou rekenaar bevat ’n Vertroude Platform-module- (TPM-) sekuriteitstoestel, wat gebruik word om baie kritieke sekuriteitskenmerke in Chrome OS Flex te implementeer. Besoek die Chromebook-hulpsentrum om meer te wete te kom: http://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Webkoekies word toegelaat}=1{Webkoekies word toegelaat; 1 uitsondering}other{Webkoekies word toegelaat; {COUNT} uitsonderings}}</translation>
 <translation id="4504940961672722399">Gebruik hierdie uitbreiding deur op hierdie ikoon te klik of <ph name="EXTENSION_SHORTCUT" /> te druk.</translation>
+<translation id="4505469832694348179">Laai Chrome met hierdie QR-kode af en meld aan by jou Google-rekening.</translation>
 <translation id="450552327874992444">Woord reeds bygevoeg</translation>
 <translation id="4507373251891673233">Jy het alle uitbreidings van <ph name="HOST" /> af geblokkeer</translation>
 <translation id="4507401683427517298">Klik “Voeg kortpad by”</translation>
@@ -5060,6 +5079,7 @@
 <translation id="4768332406694066911">Jy het sertifikate van hierdie organisasies af wat jou identifiseer</translation>
 <translation id="4769632191812288342">Jy kry tans standaardbeskerming</translation>
 <translation id="4770119228883592393">Toestemming is versoek; druk ⌘ + Option + afpyl om te antwoord</translation>
+<translation id="4770755495532014179">Gebruik hierdie wagwoord op jou iPhone</translation>
 <translation id="4773112038801431077">Gradeer Linux op</translation>
 <translation id="477548766361111120">Laat uitbreiding toe om hierdie werf te lees en te verander</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> is gekoppel</translation>
@@ -5229,6 +5249,7 @@
 <translation id="4890399733764921729">Kan nie koppel nie. Gesluit deur ’n ander mobielediensverskaffer.</translation>
 <translation id="4890773143211625964">Wys gevorderde drukkeropsies</translation>
 <translation id="4891089016822695758">Beta-forum</translation>
+<translation id="4891795846939730995">Meld by ’n werf of app aan met ’n gestoorde toegangsleutel om hierdie toestel weer toegang tot jou toegangsleutels te gee.</translation>
 <translation id="4892229439761351791">Werf kan Bluetooth gebruik</translation>
 <translation id="4892328231620815052">Kry jou leeslys in “Boekmerke en lyste” wanneer jy gereed is</translation>
 <translation id="489258173289528622">Rushandeling terwyl dit battery gebruik</translation>
@@ -5674,6 +5695,7 @@
 <translation id="5242724311594467048">Aktiveer "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="5243522832766285132">Probeer asseblief oor 'n paar oomblikke weer</translation>
 <translation id="5244234799035360187">OneDrive sal nou in die Lêers-app verskyn</translation>
+<translation id="5244466461749935369">Hou dit vir eers</translation>
 <translation id="5244474230056479698">Sinkroniseer tans na <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Begin met 'n skoolrekening</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> het omgeval. Klik hierdie ballon om die program te herbegin.</translation>
@@ -5942,6 +5964,7 @@
 <translation id="5453829744223920473">Jou kind kan al hul skoolapps, boekmerke en hulpbronne net soos in die klas gebruik. Die skool stel die grondreëls.</translation>
 <translation id="5454166040603940656">met <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Sien meer soekresultate</translation>
+<translation id="5457082343331641453">Voeg by jou soektog</translation>
 <translation id="5457113250005438886">Ongeldig</translation>
 <translation id="5457459357461771897">Lees en vee foto's, musiek en ander media van jou rekenaar af uit</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6420,6 +6443,7 @@
 <translation id="5816434091619127343">Die drukkerveranderinge wat versoek is, sal die drukker onbruikbaar maak.</translation>
 <translation id="581659025233126501">Skakel sinkronisering aan</translation>
 <translation id="5817918615728894473">Bind saam</translation>
+<translation id="5817963443108180228">Welkom terug, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">alle apps</translation>
 <translation id="5821565227679781414">Skep kortpad</translation>
 <translation id="5824976764713185207">Lees bladsy outomaties nadat dit klaar gelaai het</translation>
@@ -6459,6 +6483,7 @@
 <translation id="5846504156837627898">Bestuur werftoestemmings</translation>
 <translation id="5846749317653566506">Verstel die kleurregstellinginstellings om seker te maak kleure is onderskeibaar</translation>
 <translation id="5846807460505171493">Installeer opdaterings en programme. As jy voortgaan, stem jy in dat hierdie toestel ook outomaties opdaterings en programme vanaf Google, jou diensverskaffer en jou toestel se vervaardiger kan aflaai en installeer, moontlik met gebruik van sellulêre data. Sommige van hierdie programme sal dalk inprogramaankope aanbied.</translation>
+<translation id="5848054741303781539">Handmatig gestel, gebruik nie ligging nie</translation>
 <translation id="5848319660029558352">Hardoplees en teksformatering</translation>
 <translation id="5849212445710944278">Reeds bygevoeg</translation>
 <translation id="584945105664698226">Stemspoed</translation>
@@ -7019,6 +7044,7 @@
 <translation id="6265159465845424232">Vra voordat jy Microsoft-lêers na Microsoft OneDrive kopieer of skuif</translation>
 <translation id="6265687851677020761">Verwyder poort</translation>
 <translation id="6266532094411434237">Koppel tans aan <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Pasmaak profiel</translation>
 <translation id="6267166720438879315">Kies 'n sertifikaat om jouself vir <ph name="HOST_NAME" /> te staaf</translation>
 <translation id="6268252012308737255">Maak met <ph name="APP" /> oop</translation>
 <translation id="6270309713620950855">Demp por</translation>
@@ -7157,7 +7183,6 @@
 <translation id="6383382161803538830">Leesmodus is nie op hierdie bladsy beskikbaar nie</translation>
 <translation id="638418309848716977">Gesteunde skakels</translation>
 <translation id="6384275966486438344">Verander jou soektoginstellings na: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Naamlose groep – 1 oortjie}other{Naamlose groep – # oortjies}}</translation>
 <translation id="6385149369087767061">Koppel aan die internet en probeer weer</translation>
 <translation id="6385382178401976503">Kaart: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Waarskuwing – Gedetailleerde logvaslegging is geaktiveer; loglêers hieronder kan URL'e en ander sensitiewe inligting insluit. Gaan dit asseblief na en sorg dat jy gemaklik daarmee voel om hierdie inligting in te dien.</translation>
@@ -7236,6 +7261,7 @@
 <translation id="6445450263907939268">As jy nie hierdie veranderings wil hê nie, kan jy jou vorige instellings terugstel.</translation>
 <translation id="6446213738085045933">Skep 'n werkskermkortpad</translation>
 <translation id="6447842834002726250">Webkoekies</translation>
+<translation id="6449554712554071184">Dit sal die groep permanent van jou toestel af uitvee</translation>
 <translation id="6450876761651513209">Verander jou privaatheidverwante instellings</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> en 1 ander oortjie}other{<ph name="PAGE_TITLE" /> en # ander oortjies}}</translation>
 <translation id="6451689256222386810">As jy jou wagfrase vergeet het of hierdie instelling wil verander, <ph name="BEGIN_LINK" />stel sinkronisering terug<ph name="END_LINK" />.</translation>
@@ -7382,6 +7408,7 @@
 <translation id="6556866813142980365">Herdoen</translation>
 <translation id="6556903358015358733">Tema en muurpapier</translation>
 <translation id="6557290421156335491">My kortpaaie</translation>
+<translation id="6560061709899140565">Wys ander uitsaaisessies</translation>
 <translation id="6560151649238390891">Voorstel ingevoeg</translation>
 <translation id="6561726789132298588">voer in</translation>
 <translation id="6562117348069327379">Berg stelselloglêers in die Aflaaie-gids.</translation>
@@ -7471,6 +7498,7 @@
 <translation id="6635674640674343739">Netwerkverbinding kan nie gevestig word nie. Gaan jou netwerkverbinding na en probeer weer.</translation>
 <translation id="663569763553406962">Sien watter uitbreidings ’n werf kan lees of verander</translation>
 <translation id="6635944431854494329">Die eienaar kan hierdie kenmerk beheer vanaf Instellings &gt; Gevorderd &gt; Stuur diagnostiese en gebruiksdata outomaties na Google toe.</translation>
+<translation id="6636572589916466933">Aanvaar uitsaaiversoek op jou <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Verken meer instellings hieronder of maak nou klaar</translation>
 <translation id="6639554308659482635">SQLite-geheue</translation>
 <translation id="6640268266988685324">Oop oortjie</translation>
@@ -7489,6 +7517,7 @@
 <translation id="6648911618876616409">'n Noodsaaklike opdatering is gereed om geïnstalleer te word. Meld aan om te begin.</translation>
 <translation id="6649018507441623493">Net 'n oomblik …</translation>
 <translation id="6650206238642452078">Teken in op ChromeOS-stelselgebeure</translation>
+<translation id="6650584564768559994">Kry gebalanseerde geheuebesparings. Jou oortjies word ná ’n optimale tydperk onaktief.</translation>
 <translation id="665061930738760572">Maak in nuwe venster oop</translation>
 <translation id="6651237644330755633">Vertrou hierdie sertifikaat om webwerwe te identifiseer</translation>
 <translation id="6651495917527016072">Sinkroniseer wi-fi-netwerke met jou foon. <ph name="LINK_BEGIN" />Kom meer te wete<ph name="LINK_END" /></translation>
@@ -7746,6 +7775,7 @@
 <translation id="6831043979455480757">Vertaal</translation>
 <translation id="6832218595502288407">Belyn links</translation>
 <translation id="6833479554815567477">Oortjie is verwyder uit groep <ph name="GROUP_NAME" /> – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Gebalanseerd (aanbeveel)</translation>
 <translation id="6835762382653651563">Koppel aan die internet om jou <ph name="DEVICE_TYPE" /> op te dateer.</translation>
 <translation id="683630338945552556">Gebruik en stoor wagwoorde in jou Google-rekening</translation>
 <translation id="6839225236531462745">Sertifikaat-uitveefout</translation>
@@ -8153,6 +8183,7 @@
 <translation id="715396040729904728">lanseerder + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Deel jou terugvoer of beskryf jou kwessie. Sluit indien moontlik stappe in om jou kwessie te herproduseer.</translation>
 <translation id="7154130902455071009">Verander jou beginblad na: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Kry video van beter gehalte en bespaar batterylewe. Video sal net op jou uitsaaigeaktiveerde skerm speel.</translation>
 <translation id="7159953856712257647">By verstel geïnstalleer</translation>
 <translation id="7160182524506337403">Jy kan nou jou foon se kennisgewings bekyk</translation>
 <translation id="7165263843655074092">Jy kry tans standaardsekuriteitbeskerming op hierdie toestel</translation>
@@ -9011,6 +9042,7 @@
 <translation id="7788948939674438635">Moenie werwe toelaat om jou sleutelbord te sluit nie</translation>
 <translation id="7789963078219276159">Beginbladsyagtergrond is verander na <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Lêers op hierdie Chromebook</translation>
 <translation id="7791269138074599214">Invoermetode</translation>
 <translation id="7791429245559955092">Hierdie app sal op jou tans gebruikte Chrome-profiel geïnstalleer word</translation>
 <translation id="7791436592012979144">Omgekeerde rollees is geaktiveer</translation>
@@ -9040,6 +9072,7 @@
 <translation id="7810202088502699111">Opspringers is op hierdie bladsy geblokkeer.</translation>
 <translation id="7810367892333449285">Jou inskrywing se formaat moet <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ adres<ph name="LPA_2" />$<ph name="LPA_3" />opsionele passende ID<ph name="LPA_4" /> wees</translation>
 <translation id="7811263553491007091">Probeer weer of kies uit een van die voorheen gegenereerde temas hier onder.</translation>
+<translation id="7814090115158024843">Moet nooit skryfhulp op hierdie webwerwe aanbied nie</translation>
 <translation id="7814458197256864873">Kopieer</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Wysig kortpad <ph name="SHORTCUT" /> vir <ph name="EXTENSION_NAME" /></translation>
@@ -9271,8 +9304,10 @@
 <translation id="7974936243149753750">Oorskandeer</translation>
 <translation id="7975504106303186033">Jy moet hierdie Chrome Education-toestel by 'n Education-rekening inskryf. Besoek g.co/workspace/edusignup om vir 'n nuwe rekening aan te sluit.</translation>
 <translation id="7977451675950311423">Waarsku jou as jy ’n wagwoord gebruik wat in ’n dataskending gekompromitteer is.</translation>
+<translation id="797824194429476746">Die oortjies sal op hierdie toestel oop bly, maar die groep sal permanent uitgevee word.</translation>
 <translation id="7978412674231730200">Private sleutel</translation>
 <translation id="7978450511781612192">Dit sal jou by al jou Google-rekeninge afmeld. Jou boekmerke, geskiedenis, wagwoorde en meer sal nie meer gesinkroniseer word nie.</translation>
+<translation id="7980066177668669492">Base64-geënkodeerde ASCII, veelvuldige sertifikate</translation>
 <translation id="7980084013673500153">Bate-ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Gebruik ’n gestoorde toegangsleutel vir <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Wys toestel-EID en QR-kodeopspringer</translation>
@@ -9395,6 +9430,7 @@
 <translation id="8066444921260601116">Verbindingdialoog</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" />-liggingtoestemming</translation>
 <translation id="8070662218171013510">Fisiese terugvoer</translation>
+<translation id="8071033114691184017">Gebruik hierdie wagwoord op jou iPhone</translation>
 <translation id="8071432093239591881">Druk as prent</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Programdata kan enige data wees wat 'n program gestoor het (op grond van ontwikkelaarinstellings), insluitend data soos kontakte, boodskappe en foto's.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Rugsteundata sal nie deel vorm van jou kind se Drive-berging nie.<ph name="END_PARAGRAPH2" />
@@ -9683,6 +9719,7 @@
 <translation id="8276242035951017580">Geen apps word toegelaat om jou kamera te gebruik nie</translation>
 <translation id="8276560076771292512">Maak kas leeg en dwing herlaai af</translation>
 <translation id="8276850948802942358">Kom meer te wete oor hoe om ’n werf tydelike toestemming te gee om derdepartywebkoekies te gebruik</translation>
+<translation id="8277907305629781277">Jy het hierdie toegangsleutel op <ph name="DATE" /> geskep</translation>
 <translation id="8280267190418431666">Webwerwe in jou tale</translation>
 <translation id="828180235270931531">Ander beskikbare drukkers</translation>
 <translation id="8281886186245836920">Slaan Oor</translation>
@@ -9962,6 +9999,7 @@
 <translation id="8482077254400484047">Bestuur hier die voorkoms van onaktiewe oortjies</translation>
 <translation id="8483248364096924578">IP-adres</translation>
 <translation id="8486666913807228950">Rede: Die omgekeerde reël <ph name="REVERT_RULE" /> is op die "Verplig oopmaak in"-lys gevind.</translation>
+<translation id="8487303289354211861">Vasgespeld! Jy kan weer toegang tot hierdie kenmerk kry vanaf die nuwe knoppie op die nutsbalk</translation>
 <translation id="8487678622945914333">Zoem in</translation>
 <translation id="8487699605742506766">Warmkol</translation>
 <translation id="8489156414266187072">Persoonlike voorstelle word net in jou rekening gewys</translation>
@@ -10360,7 +10398,6 @@
 <translation id="8784626084144195648">Geklasseerde gemiddeld</translation>
 <translation id="8785622406424941542">Stilus</translation>
 <translation id="8786824282808281903">Wanneer jou kind hierdie ikoon sien, kan 'n vingerafdruk gebruik word vir identifisering of om aankope goed te keur.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Naamlose groep – 1 oortjie}other{Naamlose groep – # oortjies}}</translation>
 <translation id="8787752878731558379">Help ons om Chrome te verbeter deur ons te vertel hoekom jy derdepartywebkoekies toegelaat het</translation>
 <translation id="8789898473175677810">Chrome is deel van ’n <ph name="LINK_BEGIN" />samewerkingspoging<ph name="LINK_END" /> om kruiswerfnasporing te verminder en die gebruik van derdepartywebkoekies uit te faseer. Ons probeer dit egter op ’n verantwoordelike manier doen omdat baie werwe van derdepartywebkoekies afhanklik is om te werk soos dit ontwerp is. Baie werwe gebruik byvoorbeeld derdepartywebkoekies om aanmelding te vereenvoudig, om ingebedde klets- en kommentaarstelsels te steun en vir betalingsdienste. En adverteerders gebruik dikwels derdepartywebkoekies om advertensies beter te personaliseer. Dit maak saak omdat werwe dikwels op advertensies staatmaak om hulle uitgawes te help dek en hulle aanlyn inhoud kosteloos te hou.</translation>
 <translation id="8791157330927639737">Kom meer te wete oor opdatering</translation>
@@ -10595,6 +10632,7 @@
 <translation id="8962863356073277855">URL-formaat moet https://www.example.com wees</translation>
 <translation id="8962918469425892674">Hierdie werf gebruik beweging- of ligsensors.</translation>
 <translation id="8963117664422609631">Gaan na werfinstellings</translation>
+<translation id="8964795217937248330">Maak oortjie(s) toe en vee groep uit?</translation>
 <translation id="8965037249707889821">Voeg ou wagwoord in</translation>
 <translation id="8966809848145604011">Ander profiele</translation>
 <translation id="8967427617812342790">Voeg by leeslys</translation>
@@ -10674,6 +10712,7 @@
 <translation id="9014674417732091912">Geskuif na ry <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Rugsteun in Google Drive</translation>
 <translation id="9016827136585652292">privaatheidskermwisselaar</translation>
+<translation id="9017055559700464094">Vasgespeld! Gebruik hierdie kenmerk weer vanaf die nutsbalk</translation>
 <translation id="90181708067259747">Vervaldatum: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Installering is voltooi</translation>
 <translation id="901876615920222131">Klik op die groep om die groep weer oop te maak</translation>
@@ -10832,6 +10871,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Installeer <ph name="DEVICE_OS" /> op jou interne skyf vir die beste ervaring. Jy kan dit ook later van die aanmeldskerm af installeer.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />As jy nie gereed is om dit te installeer nie, kan jy dit van USB af laat loop om dit te probeer. Dit sal jou bestaande bedryfstelsel en data behou, maar jy sal dalk berging- en werkverrigtingbeperkings sien.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Maak as 'n vasgespelde oortjie oop</translation>
+<translation id="9122788874051694311">Stoor hierdie toegangsleutel buite Incognito?</translation>
 <translation id="9123287046453017203">Jou toestel is nie bygewerk nie</translation>
 <translation id="9125910124977405374">Verwyder <ph name="LANGUAGE_NAME" /> uit tale wat outomaties vertaal word</translation>
 <translation id="9126149354162942022">Skermpyltjie se kleur</translation>
@@ -11026,6 +11066,7 @@
 <translation id="979345485590886759">Werwe kan vra om jou muiswyser te sluit</translation>
 <translation id="980731642137034229">Handelingkieslysknoppie</translation>
 <translation id="981121421437150478">Vanlyn</translation>
+<translation id="98235653036850093">Hallo <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Maak alle oortjies toe</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – Kamera- en mikrofoonopname</translation>
 <translation id="984275831282074731">Betaalmetodes</translation>
diff --git a/chrome/app/resources/generated_resources_am.xtb b/chrome/app/resources/generated_resources_am.xtb
index 1185967..6b22c1b3 100644
--- a/chrome/app/resources/generated_resources_am.xtb
+++ b/chrome/app/resources/generated_resources_am.xtb
@@ -366,6 +366,7 @@
 <translation id="1260810365552581339">Linux በቂ የዲስክ ቦታ ላይኖረው ይችላል። የLinux ዲስክ ቦታን መጨመር እና በ<ph name="LINK_START" />ቅንብሮች<ph name="LINK_END" /> ውስጥ እንደገና ወደነበረበት ለመመለስ መሞከር ይችላሉ።</translation>
 <translation id="1261380933454402672">መለስተኛ</translation>
 <translation id="126156426083987769">በቅንጭብ ማሳያ ሁነታ ፈቃዶች ችግር አጋጥሟል።</translation>
+<translation id="1261885284931493480">ትር(ሮች) ይወገድ/ዱ እና ቡድን ይሰረዝ?</translation>
 <translation id="1263231323834454256">የንባብ ዝርዝር</translation>
 <translation id="1263733306853729545">የዕጩ ዝርዝር ላይ ገፅ ለመፍጠር የ<ph name="MINUS" /> እና <ph name="EQUAL" /> ቁልፎችን ይጠቀሙ</translation>
 <translation id="126387934568812801">የተከፈቱ ትሮችን ቅጽበታዊ ገፅ ዕይታዎችን እና አርዕስቶችን አካትት</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">የWi-Fi አውታረ መረብ ተገኝቷል</translation>
 <translation id="1634783886312010422">ይህን የይለፍ ቃል በ<ph name="WEBSITE" /> ላይ አስቀድመው ለውጠውታል?</translation>
 <translation id="1636212173818785548">እሺ</translation>
+<translation id="1636542522761359943">እንኳን በደህና መጡ <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />የመተግበሪያ ውሂብ እንደ እውቂያዎች፣ መልዕክቶች እና ፎቶዎች ያለ ውሂብ ጨምሮ አንድ መተግበሪያ ያስቀመጠው ማንኛውም ውሂብ (በገንቢ ቅንብሮች የሚወሰን) ሊሆን ይችላል። የምትኬ ውሂብ በእርስዎ የDrive ማከማቻ ኮታ ላይ አይቆጠርም።<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ይህን አገልግሎት በቅንብሮች ውስጥ ማጥፋት ይችላሉ።<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">ይህን ዕልባት በእርስዎ iPhone ላይ ያግኙት</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">የሚስጥር ቁልፍ አስተዳዳሪን ከ macOS Keychain ጋር ለመጠቀም Chromium ን እንደገና ያስጀምሩ እና የ Keychain መዳረሻን ይፍቀዱ። ዳግም ከጀመረ በኋላ ትሮችዎ እንደገና ይከፈታሉ።</translation>
 <translation id="1653958716132599769">ቡድን ተዛማች ትሮች</translation>
 <translation id="1654580009054503925">ጥያቄዎችን ለማሳየት አልተፈቀደም</translation>
+<translation id="1654713139320245449">ምንም የcast መድረሻዎች አልተገኙም። እገዛ ይፈልጋሉ?</translation>
 <translation id="1656528038316521561">የበስተጀርባ ብርሃን-ከልነት</translation>
 <translation id="1657406563541664238">የአጠቃቀም ስታቲክሶችን እና የስንኩል ሪፖርቶችን ወደ Google በቀጥታ በመላክ <ph name="PRODUCT_NAME" />ን የተሻለ ለማድረግ እገዛ ያድርጉ።</translation>
 <translation id="1657937299377480641">የለትምህርታዊ ግብዓቶች መዳረሻን እንዲያገኙ እንደገና ወደ መለያ ለመግባት ወላጅ ፈቃድ እንዲሰጠዎት ይጠይቋቸው</translation>
@@ -1639,12 +1642,14 @@
 <translation id="2187895286714876935">የአገልጋይ ዕውቅና ማረጋገጫ ስህተት</translation>
 <translation id="2187906491731510095">ቅጥያዎች ተዘምነዋል</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> ክፈት</translation>
+<translation id="2188919919468240749">የትር ቡድን ይሰረዝ?</translation>
 <translation id="2190069059097339078">WiFi አሳማኝ ምስክርነቶችን አግኝ</translation>
 <translation id="219008588003277019">የውስጥ ተገልጋይ ሞዱል፦ <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(ባዶ)</translation>
 <translation id="2190967441465539539">ካሜራ እና ማይክሮፎን መድረስ አይቻልም</translation>
 <translation id="2191754378957563929">አብራ</translation>
 <translation id="2192505247865591433">ከ፦</translation>
+<translation id="219283042927675668">በቡድን ውስጥ ያሉ ትሮች</translation>
 <translation id="2193365732679659387">የእምነት ቅንብሮች</translation>
 <translation id="2194856509914051091">ከግምት ውስጥ መግባት ያለባቸው ነገሮች</translation>
 <translation id="2195331105963583686">ከዚያ ጊዜ በኋላ አሁንም ይህን <ph name="DEVICE_TYPE" /> መጠቀም ይችላሉ፣ ነገር ግን ከእንግዲህ ራስ-ሰር የሶፍትዌር እና የደህንነት ዝማኔዎችን አያገኝም</translation>
@@ -1866,6 +1871,7 @@
 <translation id="2350133097354918058">ዳግም ተጭኗል</translation>
 <translation id="2350182423316644347">መተግበሪያን በማስጀመር ላይ...</translation>
 <translation id="235028206512346451">ከመሳሪያዎ ከወጡ ማያዎ በራስ-ሰር ይቆለፋል። ከመሳሪያዎ ፊት ለፊት ሲሆኑ ማያዎ ይበልጥ ረጅም ለሆነ ጊዜ ንቁ ይሆናል። ማያ ገፅ ቆልፍን እየተጠቀሙ ካልሆኑ መሣሪያዎ ከመቆለፍ ይልቅ ይተኛል።</translation>
+<translation id="2352305801620974284">በዚህ መሣሪያ ላይ ሲገቡ የይለፍ ቃላትዎን እና ከGoogle መለያዎ ተጨማሪ ያገኛሉ</translation>
 <translation id="2352662711729498748">&lt; 1 ሜባ</translation>
 <translation id="2352810082280059586">የማያ ገፅ ቁልፍ ማስታወሻዎች በራስ-ሰር ወደ <ph name="LOCK_SCREEN_APP_NAME" /> ይቀመጣሉ። የእርስዎ በጣም የቅርብ ጊዜው ማስታወሻ በማያ ገፅ ቁልፍ ላይ ይቀራል።</translation>
 <translation id="2353297238722298836">ካሜራ እና ማይክሮፎን ይፈቀዳሉ</translation>
@@ -2075,6 +2081,7 @@
 <translation id="249113932447298600">ይቅርታ፣ መሣሪያ <ph name="DEVICE_LABEL" /> በአሁኑ ጊዜ አይደገፍም።</translation>
 <translation id="2491587035099903063">የ<ph name="LANGUAGE" /> ድምጽ ቅድመ እይታ</translation>
 <translation id="2492461744635776704">የዕውቅና ማረጋገጫ ፊርማ ጥያቄን በማዘጋጀት ላይ</translation>
+<translation id="2492964937550251173">ትር(ሮች) ይዘጋ/ጉ እና ቡድን ይሰረዝ?</translation>
 <translation id="249330843868392562">የጽሑፍ-ወደ-ንግግር ቅንብሮችን ክፈት</translation>
 <translation id="2494555621641843783">Steamን መጫን አልተቻለም</translation>
 <translation id="2495141202137516054">ከእርስዎ Drive</translation>
@@ -2244,6 +2251,7 @@
 <translation id="262087792756666314">ይህንን ባህሪ በቀላሉ ለመድረስ ሊሰኩት ይችላሉ፣ በጎን ፓነሉ አናት ላይ የሚገኘውን የሰካ አዝራርን ጠቅ ያድርጉ</translation>
 <translation id="2620900772667816510">የብሉቱዝ እጅግ የላቀ ጥራት</translation>
 <translation id="262154978979441594">የGoogle ረዳት የድምፅ ሞዴልን ያሠለጥኑ</translation>
+<translation id="2622280935687585828"><ph name="SITE_NAME" />የሚለውን ከተሰናከሉ ጣቢያዎች አስወግድ</translation>
 <translation id="26224892172169984">ማንኛውም ጣቢያ ፕሮቶኮሎችን እንዲቆጣጣር አትፍቀድ</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">የMIDI መሣሪያዎችን መቆጣጠር እና ዳግም ፕሮግራም ማድረግ ተፈቅዷል</translation>
@@ -2417,6 +2425,7 @@
 <translation id="2743387203779672305">ወደ ቅንጥብ ሰሌዳ ገልብጥ</translation>
 <translation id="274362947316498129">አንድ መተግበሪያ <ph name="DEVICE_NAME" />ን ለመድረስ እየሞከረ ነው። መዳረሻን ለመፍቀድ የ<ph name="DEVICE_NAME" /> የግላዊነት መቀያየሪያን ያጥፉ።</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313">በእርስዎ <ph name="DEVICE_NAME" /> ላይ ያለውን የcast ጥያቄ መቀበልዎን ያረጋግጡ።</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> ውስጥ ይግቡ</translation>
 <translation id="2749836841884031656">ሲም</translation>
 <translation id="2749881179542288782">ሰዋሰው እና ሆሄ አርም</translation>
@@ -2787,6 +2796,7 @@
 <translation id="3021066826692793094">ቢራቢሮ</translation>
 <translation id="3021678814754966447">የፍሬም መነሻ &amp;አሳይ</translation>
 <translation id="3021902017511220299">ቅኝት አልተሳካም። ይህ እርምጃ በአስተዳዳሪዎ ታግዷል።</translation>
+<translation id="3022068420678496307">ይህ ቡድኑን በዚህ Google መለያ ወደ Chrome ከገቡ ሁሉም መሣሪያዎች ይሰርዘዋል።</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> ከዚህ Chromebook ይወገዳል እና ወደ <ph name="PRIMARY_EMAIL" /> አይቀመጥም።</translation>
 <translation id="3022978424994383087">አልሰማሁትም።</translation>
 <translation id="3023464535986383522">ለመናገር-ይምረጡ</translation>
@@ -4066,7 +4076,6 @@
 <translation id="3983586614702900908">ያልታወቀ አቅራቢ መሣሪያዎች</translation>
 <translation id="3983764759749072418">የPlay መደብር መተግበሪያዎች የዚህ መሣሪያ መዳረሻ አላቸው።</translation>
 <translation id="3983769721878416534">ጠቅ ከማድረግ በፊት መዘግየት</translation>
-<translation id="3983793589497399077">በሌንስ ለመፈለግ ጠቅ ያድርጉ ወይም ወደ የትኛውም ቦታ ይጎትቱ</translation>
 <translation id="3984135167056005094">የኢሜይል አድራሻን አያካትቱ</translation>
 <translation id="3984159763196946143">የማሳያ ሁነታውን መጀመር አልተቻለም</translation>
 <translation id="3984431586879874039">ይህ ጣቢያ የደህንነት ቁልፍዎ እንዲመለከት ይፈቀድለት?</translation>
@@ -4189,6 +4198,7 @@
 <translation id="4078903002989614318">የመደርደር እና የዝርዝር አማራጮች</translation>
 <translation id="4079140982534148664">የበለጸገ ፊደል አራሚን ተጠቀም</translation>
 <translation id="4082333918978320301">ምንም ድር ጣቢያዎች ማይክሮፎንዎን እንዲጠቀሙ አልተፈቀደላቸውም</translation>
+<translation id="4083735423615351075">ትሮቹ በዚህ መሣሪያ ላይ ክፍት እንደሆኑ ይቆያሉ ነገር ግን ቡድኑ በዚህ Google መለያ ወደ Chrome ከገቡ ሁሉም መሣሪያዎች ይሰረዛል።</translation>
 <translation id="4084682180776658562">ዕልባት</translation>
 <translation id="4084835346725913160">ዝጋ <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">በዚህ ገፅ ላይ ጃቫስክሪፕት ታግዷል።</translation>
@@ -4196,6 +4206,7 @@
 <translation id="4085620044235559093">የ<ph name="FILE_TYPE" /> ፋይሎችን ለመክፈት መተግበሪያ ይምረጡ</translation>
 <translation id="4087089424473531098">ቅጥያውን ፈጥሯል፦ <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">በቀኝ በኩል አሳይ</translation>
+<translation id="4088879333319441249">የትር ቡድን ይበተን?</translation>
 <translation id="4089235344645910861">ቅንብሮች ተቀምጠዋል። ስምረት ጀምሯል።</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">የተረጋገጠ መዳረሻ ያንቁ</translation>
@@ -5677,6 +5688,7 @@
 <translation id="5242724311594467048">«<ph name="EXTENSION_NAME" />» ይንቃ?</translation>
 <translation id="5243522832766285132">እባክዎ ከጥቂት ጊዜ በኋላ እንደገና ይሞክሩ</translation>
 <translation id="5244234799035360187">OneDrive አሁን በፋይሎች መተግበሪያ ውስጥ ይታያል</translation>
+<translation id="5244466461749935369">ለአሁን አቆይ</translation>
 <translation id="5244474230056479698">ከ<ph name="EMAIL" /> ጋር በማስመር ላይ</translation>
 <translation id="5245610266855777041">በትምህርት ቤት መለያ ይጀምሩ</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> ተሰናክሏል። መተግበሪያውን ዳግም ለማስጀመር ይህን ፊኛ ጠቅ ያድርጉት።</translation>
@@ -5945,6 +5957,7 @@
 <translation id="5453829744223920473">ልጅዎ ልክ ክፍል ውስጥ እንደሚያደርጉት ሁሉንም የእነሱን የትምህርት ቤት መተግበሪያዎች፣ እልባቶች እና ግብዓቶች መጠቀም ይችላሉ። ትምህርት ቤቱ የመመሪያ ሕጎቹን ያወጣል።</translation>
 <translation id="5454166040603940656">ከ<ph name="PROVIDER" /> ጋር</translation>
 <translation id="545484289444831485">ተጨማሪ የፍለጋ ውጤቶችን ይመልከቱ</translation>
+<translation id="5457082343331641453">ወደ ፍለጋዎ ያክሉ</translation>
 <translation id="5457113250005438886">ልክ ያልሆነ</translation>
 <translation id="5457459357461771897">በኮምፒውተርዎ ላይ ፎቶዎችን፣ ሙዚቃ እና ሌላ ማህደረ መረጃን ያነብባል</translation>
 <translation id="5458214261780477893">ድቮራክ</translation>
@@ -6422,6 +6435,7 @@
 <translation id="5816434091619127343">የተጠየቁት የአታሚ ለውጦች አታሚው ጥቅም እንዳይሰጥ ያደርጉታል።</translation>
 <translation id="581659025233126501">አስምርን ያብሩ</translation>
 <translation id="5817918615728894473">አጣምር</translation>
+<translation id="5817963443108180228">እንኳን በደህና ተመልሰው መጡ፣ <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">ሁሉም መተግበሪያዎች</translation>
 <translation id="5821565227679781414">አቋራጭ ፍጠር</translation>
 <translation id="5824976764713185207">ገጹ ጭኖ ከጨረሰ በኋላ በራስ-ሰር አንብብ</translation>
@@ -7022,6 +7036,7 @@
 <translation id="6265159465845424232">የMicrosoft ፋይሎችን ወደ Microsoft OneDrive ከመቅዳትዎ ወይም ከማንቀሳቀስዎ በፊት ይጠይቁ</translation>
 <translation id="6265687851677020761">ወደብን አስወግድ</translation>
 <translation id="6266532094411434237">ወደ <ph name="DEVICE" /> በመገናኘት ላይ</translation>
+<translation id="6266984048393265562">መገለጫን አብጅ</translation>
 <translation id="6267166720438879315">ራስዎን ለ<ph name="HOST_NAME" /> ለማረጋገጥ  ሰርቲፊኬት ይምረጡ</translation>
 <translation id="6268252012308737255">በ<ph name="APP" /> ክፈት</translation>
 <translation id="6270309713620950855">የድምጸ-ከል ገፋ ማድረጊያ</translation>
@@ -7160,7 +7175,6 @@
 <translation id="6383382161803538830">የንባብ ሁነታ በዚህ ገጽ ላይ አይገኝም</translation>
 <translation id="638418309848716977">የሚደገፉ አገናኞች</translation>
 <translation id="6384275966486438344">የፍለጋ ቅንብሮችዎን ወደሚከተለው ይለውጡ፦ <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{ያልተሰየመ ቡድን - 1 ትር}one{ያልተሰየመ ቡድን - # ትሮች}other{ያልተሰየመ ቡድን - # ትሮች}}</translation>
 <translation id="6385149369087767061">ከበይነመረቡ ጋር ይገናኙና እንደገና ይሞክሩ</translation>
 <translation id="6385382178401976503">ካርድ፦ <ph name="CARD" /></translation>
 <translation id="6385994920693662133">ማስጠንቀቂያ - ዝርዝር ምዝግብ ማስታወሻ መያዝ ነቅቷል፤ ከታች ያሉት ምዝግብ ማስታወሻዎች ዩአርኤሎችን ወይም ሌላ ሚስጥራዊነት ያለው መረጃ ሊይዙ ይችላሉ። እባክዎ ይከልሱና ይህን መረጃ ማስገባትዎ ምቾት እንደማይነሳዎ ያረጋግጡ።</translation>
@@ -7239,6 +7253,7 @@
 <translation id="6445450263907939268">እነዚህን ለውጦች ካልፈለጓቸው ቀዳሚዎቹ ቅንብሮችዎን ወደነበሩበት መመለስ ይችላሉ።</translation>
 <translation id="6446213738085045933">የዴስክቶፕ አቋራጭ ፍጠር</translation>
 <translation id="6447842834002726250">ኩኪዎች</translation>
+<translation id="6449554712554071184">ይህ ቡድኑን ከመሣሪያዎ እስከመጨረሻው ይሰርዘዋል።</translation>
 <translation id="6450876761651513209">ከግላዊነት ጋር የሚዛመዱ ቅንብሮችዎን ይቀይራል</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> እና 1 ሌላ ትር}one{<ph name="PAGE_TITLE" /> እና # ሌሎች ትሮች}other{<ph name="PAGE_TITLE" /> እና # ሌሎች ትሮች}}</translation>
 <translation id="6451689256222386810">የእርስዎን የይለፍ ሐረግ ከረሱት ወይም ይህን ቅንብር መለወጥ ከፈለጉ <ph name="BEGIN_LINK" />ስምረትን ዳግም ያስጀምሩ<ph name="END_LINK" /></translation>
@@ -7385,6 +7400,7 @@
 <translation id="6556866813142980365">ድገም</translation>
 <translation id="6556903358015358733">ገጽታ እና ልጣፍ</translation>
 <translation id="6557290421156335491">የእኔ አቋራጮች</translation>
+<translation id="6560061709899140565">ሌላ የcast ክፍለ-ጊዜዎችን አሳይ</translation>
 <translation id="6560151649238390891">የአስተያየት ጥቆማ ገብቷል</translation>
 <translation id="6561726789132298588">ያስገቡ</translation>
 <translation id="6562117348069327379">የስርዓት ምዝግብ ማስታወሻዎችን ወደ የውርዶች ማውጫ ያከማቹ።</translation>
@@ -7476,6 +7492,7 @@
 <translation id="6635674640674343739">የአውታረ መረብ ግንኙነት ሊመሰረት አልቻለም። የአውታረ መረብ ግንኙነትዎን ይፈትሹ እና እንደገና ይሞክሩ።</translation>
 <translation id="663569763553406962">ምን ቅጥያዎች ጣቢያን ማንበብ ወይም መለወጥ እንደሚችሉ ይመልከቱ</translation>
 <translation id="6635944431854494329">ባለቤቱ ከቅንብሮች &gt; የላቀ &gt; የምርመራ እና የአጠቃቀም ውሂብ በራስ-ሰር ወደ Google ላክ ሆነው ይህን ባሕሪ መቆጣጠር ይችላሉ።</translation>
+<translation id="6636572589916466933">በእርስዎ <ph name="DEVICE_NAME" /> ላይ የCast ጥያቄን ይቀበሉ።</translation>
 <translation id="6636623428211296678">ተጨማሪ ቅንብሮችን ከታች ያስሱ ወይም አሁን ይጨርሱ</translation>
 <translation id="6639554308659482635">ኤስኪውላይት ማህደረ ትውስታ</translation>
 <translation id="6640268266988685324">ትር ክፈት</translation>
@@ -8161,6 +8178,7 @@
 <translation id="715396040729904728">launcher + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">የእርስዎን ግብረመልስ ያጋሩ ወይም የእርስዎን ችግር ይግለጹ። ከተቻለ የእርስዎን ችግር ዳግም ለመስራት እርምጃዎችን ያካትቱ።</translation>
 <translation id="7154130902455071009">የመጀመሪያ ገጽዎን ወደሚከተለው ይቀይሩ፦ <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">የተሻለ ጥራት ያለውን ቪዲዮ ያግኙ እና የባትሪ ዕድሜ ይቆጥቡ። ቪዲዮ በእርስዎ የCast-የነቃ ማያ ገጽ ላይ ብቻ ይጫወታል።</translation>
 <translation id="7159953856712257647">በነባሪነት የተጫነ</translation>
 <translation id="7160182524506337403">አሁን የስልክዎን ማሳወቂያዎች መመልከት ይችላሉ</translation>
 <translation id="7165263843655074092">በዚህ መሣሪያ ላይ መደበኛ የደህንነት ጥበቃ እያገኙ ነው</translation>
@@ -9019,6 +9037,7 @@
 <translation id="7788948939674438635">ጣቢያዎች ቁልፍ ሰሌዳዎን እንዲቆልፉ አይፍቀዱ</translation>
 <translation id="7789963078219276159">የጅምር ገፅ ጀርባው ወደ <ph name="CATEGORY" /> ተቀይሯል።</translation>
 <translation id="7790689625219600437">የPDF OCR</translation>
+<translation id="7790737481627460475">በዚህ Chromebook ላይ ያሉ ፋይሎች</translation>
 <translation id="7791269138074599214">የግቤት ስልት</translation>
 <translation id="7791429245559955092">ይህ መተግበሪያ አሁን ጥቅም ላይ በሚውልበት የChrome መገለጫዎ ላይ ይጫናል</translation>
 <translation id="7791436592012979144">የተገላቢጦሽ ማሸብለል ነቅቷል</translation>
@@ -9048,6 +9067,7 @@
 <translation id="7810202088502699111">በዚህ ገፅ ብቅ-ባዮች ታግደዋል።</translation>
 <translation id="7810367892333449285">የእርስዎ ግቤት የ<ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ address<ph name="LPA_2" />$<ph name="LPA_3" />optional matching id<ph name="LPA_4" /> ቅርጸት ሊኖረው ይገባል</translation>
 <translation id="7811263553491007091">እንደገና ይሞክሩ ወይም ከዚህ በታች ካሉት ቀደም ሲል ከተፈጠሩ ገጽታዎች ውስጥ አንዱን ይምረጡ።</translation>
+<translation id="7814090115158024843">በእነዚህ ጣቢያዎች ላይ የጽሁፍ እገዛን በፍጹም አያቅርቡ</translation>
 <translation id="7814458197256864873">&amp;ቅዳ</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">ለ<ph name="EXTENSION_NAME" /> <ph name="SHORTCUT" /> አቋራጭን አርትዕ</translation>
@@ -9279,8 +9299,10 @@
 <translation id="7974936243149753750">ትርፍ ቅኝት</translation>
 <translation id="7975504106303186033">ይህን የChrome ትምህርት መሣሪያ ወደ የትምህርት መለያ ማስመዝገብ አለብዎት። ለአዲስ መለያ ለመመዝገብ እባክዎ g.co/workspace/edusignup ይጎብኙ።</translation>
 <translation id="7977451675950311423">በውሂብ ጥሰት ውስጥ የተጠለፈ የይለፍ ቃል ከተጠቀሙ ያስጠነቅቅዎታል።</translation>
+<translation id="797824194429476746">ትሮች በዚህ መሣሪያ ላይ ክፍት እንደሆኑ ይቆያሉ፣ ነገር ግን ቡድኑ እስከመጨረሻው ይሰረዛል።</translation>
 <translation id="7978412674231730200">የግል ቁልፍ</translation>
 <translation id="7978450511781612192">ይህ ከእርስዎ የGoogle መለያዎች ዘግተው እንዲወጡ ያደርግዎታል። የእርስዎ እልባቶች፣ ታሪክ፣ የይለፍ ቃላት እና ተጨማሪ ነገሮች ከእንግዲህ አይሰምሩም።</translation>
+<translation id="7980066177668669492">Base64-encoded ASCII፣ በርካታየዕውቅና ማረጋገጫዎች</translation>
 <translation id="7980084013673500153">የእሴት መታወቂያ፦ <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">ለ<ph name="APP_NAME" /> የተቀመጠ የይለፍ ቁልፍ ይጠቀሙ</translation>
 <translation id="7981662863948574132">የመሣሪያ EID እና QR ኮድ ብቅ-ባይን አሳይ</translation>
@@ -9698,6 +9720,7 @@
 <translation id="8276242035951017580">ምንም መተግበሪያዎች ካሜራዎን እንዲጠቀሙ አልተፈቀደላቸውም</translation>
 <translation id="8276560076771292512">ባዶ መሸጎጫ እና ደረቅ ዳግም መጫን</translation>
 <translation id="8276850948802942358">አንድ ጣቢያ የሦስተኛ ወገን ኩኪዎችን እንዲጠቀም ጊዜያዊ ፈቃድ ስለመስጠት የበለጠ ይወቁ</translation>
+<translation id="8277907305629781277">ይህን የይለፍ ቁልፍ የፈጠሩት በ<ph name="DATE" /> ነው</translation>
 <translation id="8280267190418431666">በእርስዎ ቋንቋዎች የሚገኙ ድር ጣቢያዎች</translation>
 <translation id="828180235270931531">ሌሎች ተገኚ ማተሚያዎች</translation>
 <translation id="8281886186245836920">ዝለል</translation>
@@ -10377,7 +10400,6 @@
 <translation id="8784626084144195648">የቢን አማካኝ</translation>
 <translation id="8785622406424941542">ስቲለስ</translation>
 <translation id="8786824282808281903">ልጅዎ ይህንን አዶ ሲያይ የጣት አሻራ ለመለየት ወይም ግዢዎችን ለማጽደቅ ጥቅም ላይ ሊውል ይችላል።</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{ያልተሰየመ ቡድን - 1 ትር}one{ያልተሰየመ ቡድን - # ትሮች}other{ያልተሰየመ ቡድን - # ትሮች}}</translation>
 <translation id="8787752878731558379">የሦስተኛ ወገን ኩኪዎችን ለምን እንደፈቀዱ ለእኛ በመንገር Chromeን እንድናሻሽል ያግዙን</translation>
 <translation id="8789898473175677810">Chrome ጣቢያ-ተሻጋሪ ክትትልን ለመቀነስ እና የሶስተኛ ወገን ኩኪዎችን አጠቃቀም ለማስወገድ <ph name="LINK_BEGIN" />የትብብር ጥረት<ph name="LINK_END" /> አካል ነው። ነገር ግን ብዙ ጣቢያዎች እንደተነደፉት እንዲሰሩ በሶስተኛ ወገን ኩኪዎች ላይ ስለሚተማመኑ በኃላፊነት ለመስራት እየሞከርን ነው። ለምሳሌ፣ ብዙ ጣቢያዎች የሶስተኛ ወገን ኩኪዎችን በመጠቀም መግቢያቸውን ቀላል ለማድረግ፣ የተካተቱ የውይይት እና የአስተያየት ስርዓቶችን ለመደገፍ እና ለክፍያ አገልግሎቶች ይጠቀማሉ። እንዲሁም አስተዋዋቂዎች ብዙውን ጊዜ ማስታወቂያዎችን በተሻለ ሁኔታ ግላዊ ለማድረግ የሶስተኛ ወገን ኩኪዎችን ይጠቀማሉ። ይሄ አስፈላጊ ነው ምክንያቱም ጣቢያዎች ወጪዎችን ለመክፈል እና የመስመር ላይ ይዘታቸውን ከክፍያ ነፃ ለማድረግ እንዲረዳቸው በማስታወቂያ ላይ ስለሚተማመኑ ነው።</translation>
 <translation id="8791157330927639737">ስለማዘመን የበለጠ ይወቁ</translation>
@@ -10612,6 +10634,7 @@
 <translation id="8962863356073277855">የዩአርኤል ቅርጸት https://www.example.com መሆን አለበት</translation>
 <translation id="8962918469425892674">ይህ ጣቢያ የእንቅስቃሴ ወይም የብርሃን ዳሳሾችን እየተጠቀመ ነው።</translation>
 <translation id="8963117664422609631">ወደ የጣቢያ ቅንብሮች ይሂዱ</translation>
+<translation id="8964795217937248330">ትር(ሮች) ይዘጋ/ጉ እና ቡድን ይሰረዝ?</translation>
 <translation id="8965037249707889821">የድሮ ይለፍ ቃል ያስገቡ</translation>
 <translation id="8966809848145604011">ሌሎች መገለጫዎች</translation>
 <translation id="8967427617812342790">ወደ የንባብ ዝርዝር አክል</translation>
@@ -11045,6 +11068,7 @@
 <translation id="979345485590886759">ጣቢያዎች የመዳፊት ጠቋሚዎን እንዲቆልፉ መጠየቅ ይችላሉ</translation>
 <translation id="980731642137034229">የእርምጃ ምናሌ አዝራር</translation>
 <translation id="981121421437150478">ከመስመር ውጭ</translation>
+<translation id="98235653036850093">ሠላም፣ <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">ሁሉንም ትሮች ይዝጉ</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - ካሜራዎ እና ማይክሮፎንዎ እየቀዱ ነው</translation>
 <translation id="984275831282074731">የመክፈያ ዘዴዎች</translation>
diff --git a/chrome/app/resources/generated_resources_ar.xtb b/chrome/app/resources/generated_resources_ar.xtb
index e38d3ac..aab5c4f3 100644
--- a/chrome/app/resources/generated_resources_ar.xtb
+++ b/chrome/app/resources/generated_resources_ar.xtb
@@ -369,6 +369,7 @@
 <translation id="1260810365552581339">‏قد لا تتوفّر مساحة تخزين كافية على القرص في نظام التشغيل Linux. يمكنك زيادة مساحة التخزين على القرص في نظام التشغيل Linux ومحاولة الاستعادة مرة أخرى من خلال <ph name="LINK_START" />الإعدادات<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">معتدل</translation>
 <translation id="126156426083987769">حدثت مشكلة متعلِّقة بتراخيص الجهاز في الوضع التجريبي</translation>
+<translation id="1261885284931493480">هل تريد إزالة علامات التبويب وحذف المجموعة؟</translation>
 <translation id="1263231323834454256">قائمة القراءة</translation>
 <translation id="1263733306853729545">استخدام مفتاحَي <ph name="MINUS" /> و<ph name="EQUAL" /> لتصفّح قائمة خيارات</translation>
 <translation id="126387934568812801">يُرجى إدراج لقطة الشاشة هذه وعناوين علامات التبويب المفتوحة.</translation>
@@ -879,6 +880,7 @@
 <translation id="1634224622052500893">‏تم العثور على شبكة Wi-Fi</translation>
 <translation id="1634783886312010422">هل سبق وغيرت كلمة المرور هذه على <ph name="WEBSITE" />؟</translation>
 <translation id="1636212173818785548">حسنًا</translation>
+<translation id="1636542522761359943">مرحبًا <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760">‏<ph name="BEGIN_PARAGRAPH1" />يمكن أن تشمل بيانات التطبيق أيّ بيانات حفظها التطبيق (بناءً على إعدادات مطوّر البرامج)، بما في ذلك بيانات مثل جهات الاتصال والرسائل والصور. لن يتم احتساب بيانات النُسخ الاحتياطية ضمن مساحة التخزين المتوفّرة في Drive لحسابك.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />يمكنك إيقاف هذه الخدمة من خلال الإعدادات.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">‏الحصول على هذه الإشارة المرجعية على جهاز iPhone</translation>
@@ -915,6 +917,7 @@
 <translation id="1652862280638399816">‏لاستخدام "مدير كلمات المرور" مع تطبيق macOS Keychain، يُرجى إعادة تشغيل Chromium والسماح بالوصول إلى التطبيق. وستتم إعادة فتح علامات التبويب بعد إعادة التشغيل.</translation>
 <translation id="1653958716132599769">تجميع علامات التبويب ذات الصلة</translation>
 <translation id="1654580009054503925">غير مسموح للإضافة بعرض الطلبات</translation>
+<translation id="1654713139320245449">لم يتم العثور على وجهات بثّ. هل تحتاج إلى مساعدة؟</translation>
 <translation id="1656528038316521561">درجة تعتيم الخلفية</translation>
 <translation id="1657406563541664238">‏المساعدة في تحسين <ph name="PRODUCT_NAME" /> بإرسال إحصاءات الاستخدام وتقارير الأعطال إلى Google تلقائيًا</translation>
 <translation id="1657937299377480641">لإعادة تسجيل الدخول من أجل الوصول إلى موارد تعليمية، عليك طلب الإذن من أحد الوالدَين.</translation>
@@ -1636,12 +1639,14 @@
 <translation id="2187895286714876935">خط استيراد شهادة الخادم</translation>
 <translation id="2187906491731510095">تم تحديث الإضافات.</translation>
 <translation id="2188881192257509750">فتح <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">هل تريد حذف مجموعة علامات التبويب؟</translation>
 <translation id="2190069059097339078">‏أداة الحصول على بيانات اعتماد WiFi</translation>
 <translation id="219008588003277019">وحدة البرنامج العميل الأصلي: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(فارغ)</translation>
 <translation id="2190967441465539539">يتعذّر الوصول إلى الكاميرا والميكروفون</translation>
 <translation id="2191754378957563929">مفعّل</translation>
 <translation id="2192505247865591433">من:</translation>
+<translation id="219283042927675668">علامات التبويب في المجموعة</translation>
 <translation id="2193365732679659387">إعدادات الثقة</translation>
 <translation id="2194856509914051091">ملاحظات مهمّة</translation>
 <translation id="2195331105963583686">سيظل بإمكانك استخدام هذا الجهاز <ph name="DEVICE_TYPE" /> بعد تلك الفترة، ولكن لن يتلقى الجهاز تحديثات تلقائية للبرامج والأمان بعد ذلك.</translation>
@@ -1862,6 +1867,7 @@
 <translation id="2350133097354918058">إعادة التحميل</translation>
 <translation id="2350182423316644347">جارٍ إعداد التطبيق...</translation>
 <translation id="235028206512346451">سيتم قفل الشاشة تلقائيًا عندما تكون بعيدًا عن الجهاز. وعند استخدامك للجهاز، ستظل الشاشة في الوضع النشط لفترة أطول. وفي حال عدم استخدام شاشة القفل، ينتقل الجهاز إلى وضع السكون بدلاً من قفل الشاشة.</translation>
+<translation id="2352305801620974284">‏عند تسجيل الدخول على هذا الجهاز، يمكنك الحصول على كلمات المرور وغيرها من حسابك على Google</translation>
 <translation id="2352662711729498748">&lt; 1 ميغابايت</translation>
 <translation id="2352810082280059586">يتم حفظ ملاحظات شاشة القفل تلقائيًا إلى <ph name="LOCK_SCREEN_APP_NAME" />. ستظل أحدث ملاحظة في شاشة القفل.</translation>
 <translation id="2353297238722298836">تم السماح باستخدام الكاميرا والميكروفون</translation>
@@ -2072,6 +2078,7 @@
 <translation id="249113932447298600">عذرًا، لا يتوفر الجهاز <ph name="DEVICE_LABEL" /> في الوقت الحالي.</translation>
 <translation id="2491587035099903063">معاينة الصوت باللغة <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">جارٍ تحضير طلب توقيع الشهادة</translation>
+<translation id="2492964937550251173">هل تريد إغلاق علامات التبويب وحذف المجموعة؟</translation>
 <translation id="249330843868392562">فتح إعدادات تحويل النص إلى كلام</translation>
 <translation id="2494555621641843783">‏يتعذّر تثبيت تطبيق Steam</translation>
 <translation id="2495141202137516054">‏من Drive</translation>
@@ -2241,6 +2248,7 @@
 <translation id="262087792756666314">يمكنك تثبيت هذه الميزة للوصول إليها بسهولة من خلال النقر على زر التثبيت في أعلى اللوحة الجانبية</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">‏تمرين النموذج الصوتي الخاص بـ "مساعد Google"</translation>
+<translation id="2622280935687585828">إزالة "<ph name="SITE_NAME" />" من المواقع الإلكترونية التي تم إيقاف الميزة عليها</translation>
 <translation id="26224892172169984">عدم السماح لأي موقع إلكتروني بمعالجة البروتوكولات</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">‏تم السماح بالتحكّم في أجهزة MIDI وإعادة برمجتها</translation>
@@ -2414,6 +2422,7 @@
 <translation id="2743387203779672305">نسخ إلى الحافظة</translation>
 <translation id="274362947316498129">هناك تطبيق يحاول الوصول إلى <ph name="DEVICE_NAME" />. يُرجى إيقاف إعدادات الخصوصية للسماح للتطبيق بالوصول إلى <ph name="DEVICE_NAME" />.</translation>
 <translation id="2745080116229976798">‏إخضاع مؤهل لـ Microsoft</translation>
+<translation id="2747853844543618313">تأكَّد من قبول طلب البثّ على "<ph name="DEVICE_NAME" />".</translation>
 <translation id="2749756011735116528">تسجيل الدخول إلى <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">‏شريحة SIM</translation>
 <translation id="2749881179542288782">تحقق من التدقيق النحوي مع التدقيق الإملائي</translation>
@@ -2784,6 +2793,7 @@
 <translation id="3021066826692793094">فراشة</translation>
 <translation id="3021678814754966447">عرض م&amp;صدر الإطار</translation>
 <translation id="3021902017511220299">تعذَّر إجراء عملية الفحص. حظرَ المشرف هذا الإجراء.</translation>
+<translation id="3022068420678496307">‏سيؤدي هذا الإجراء إلى حذف المجموعة من جميع الأجهزة التي تم تسجيل الدخول إلى Chrome عليها باستخدام حساب Google هذا.</translation>
 <translation id="3022361196600037287">‏ستتم إزالة <ph name="DEVICE" /> من جهاز Chromebook هذا ولن يتم حفظه في حساب <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">لم يتم استيعاب هذا.</translation>
 <translation id="3023464535986383522">الاستماع والاختيار</translation>
@@ -4061,7 +4071,6 @@
 <translation id="3983586614702900908">أجهزة من مورد غير معروف</translation>
 <translation id="3983764759749072418">‏يمكن لتطبيقات "متجر Play" الوصول إلى هذا الجهاز.</translation>
 <translation id="3983769721878416534">مهلة قبل النقر</translation>
-<translation id="3983793589497399077">‏انقر على أي عنصر أو اسحبه للبحث عنه باستخدام "عدسة Google"</translation>
 <translation id="3984135167056005094">عدم تضمين عنوان البريد الإلكتروني</translation>
 <translation id="3984159763196946143">تعذَّر بدء الوضع التجريبي</translation>
 <translation id="3984431586879874039">هل تريد السماح لهذا الموقع الإلكتروني بالاطّلاع على مفتاح الأمان؟</translation>
@@ -4184,6 +4193,7 @@
 <translation id="4078903002989614318">خيارات الترتيب والقوائم</translation>
 <translation id="4079140982534148664">استخدام التدقيق الإملائي المُحسَّن</translation>
 <translation id="4082333918978320301">لا يُسمح لأي مواقع إلكترونية باستخدام الميكروفون.</translation>
+<translation id="4083735423615351075">‏ستظل علامات التبويب مفتوحة على هذا الجهاز، ولكن سيتم حذف المجموعة من جميع الأجهزة التي تم تسجيل الدخول إلى Chrome عليها باستخدام حساب Google هذا.</translation>
 <translation id="4084682180776658562">إشارة</translation>
 <translation id="4084835346725913160">غلق <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">‏تم منع تشغيل JavaScript في هذه الصفحة.</translation>
@@ -4193,6 +4203,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">عرض على الجانب الأيمن</translation>
+<translation id="4088879333319441249">هل تريد إلغاء تجميع مجموعة علامات التبويب؟</translation>
 <translation id="4089235344645910861">تم حفظ الإعدادات، وبدأت عملية المزامنة.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">تفعيل الدخول الذي تم التحقق منه</translation>
@@ -5674,6 +5685,7 @@
 <translation id="5242724311594467048">تفعيل "<ph name="EXTENSION_NAME" />"؟</translation>
 <translation id="5243522832766285132">يُرجى إعادة المحاولة بعد بضع لحظات</translation>
 <translation id="5244234799035360187">‏ستظهر مساحة تخزين OneDrive الآن في تطبيق "الملفات".</translation>
+<translation id="5244466461749935369">عدم إلغاء تثبيت الإضافة حاليًا</translation>
 <translation id="5244474230056479698">المزامنة مع <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">بدء استخدام حساب مدرسة</translation>
 <translation id="5246282308050205996">لقد تعطل <ph name="APP_NAME" />. انقر على هذا البالون لإعادة تشغيل التطبيق.</translation>
@@ -5942,6 +5954,7 @@
 <translation id="5453829744223920473">يمكن لطفلك استخدام جميع التطبيقات والإشارات المرجعية والموارد الخاصة بكل مؤسسة تعليمية تمامًا كما يستخدمها في الصف. وتضع المؤسسة التعليمية القواعد الأساسية لاستخدامها.</translation>
 <translation id="5454166040603940656">مع <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">الاطّلاع على المزيد من نتائج البحث</translation>
+<translation id="5457082343331641453">إضافة نص إلى طلب البحث</translation>
 <translation id="5457113250005438886">غير صالحة</translation>
 <translation id="5457459357461771897">التعرّف على الصور، والموسيقى، والوسائط الأخرى من الكمبيوتر وحذفها</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6419,6 +6432,7 @@
 <translation id="5816434091619127343">تغييرات الطابعة المطلوبة تجعل الطابعة غير قابلة للاستخدام.</translation>
 <translation id="581659025233126501">تفعيل المزامنة</translation>
 <translation id="5817918615728894473">إقران</translation>
+<translation id="5817963443108180228">مرحبًا بك من جديد، <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">جميع التطبيقات</translation>
 <translation id="5821565227679781414">إنشاء اختصار</translation>
 <translation id="5824976764713185207">قراءة الصفحة تلقائيًا بعد انتهاء التحميل</translation>
@@ -7019,6 +7033,7 @@
 <translation id="6265159465845424232">‏طلب الإذن قبل نسخ ملفات Microsoft أو نقلها إلى Microsoft OneDrive</translation>
 <translation id="6265687851677020761">إزالة المنفذ</translation>
 <translation id="6266532094411434237">جارٍ الربط بجهاز <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">تخصيص الملف الشخصي</translation>
 <translation id="6267166720438879315">اختَر شهادة للمصادقة مع <ph name="HOST_NAME" />.</translation>
 <translation id="6268252012308737255">فتح باستخدام <ph name="APP" /></translation>
 <translation id="6270309713620950855">تذكير تلقائي بأنّ الصوت مكتوم</translation>
@@ -7157,7 +7172,6 @@
 <translation id="6383382161803538830">وضع القراءة غير متاح على هذه الصفحة</translation>
 <translation id="638418309848716977">الروابط المتوافقة</translation>
 <translation id="6384275966486438344">تغيير إعدادات البحث لـ: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{مجموعة لم تتم تسميتها تحتوي على علامة تبويب واحدة}zero{مجموعة لم تتم تسميتها تحتوي على # علامة تبويب}two{مجموعة لم تتم تسميتها تحتوي على علامتَي تبويب}few{مجموعة لم تتم تسميتها تحتوي على # علامات تبويب}many{مجموعة لم تتم تسميتها تحتوي على # علامة تبويب}other{مجموعة لم تتم تسميتها تحتوي على # علامة تبويب}}</translation>
 <translation id="6385149369087767061">يُرجى الاتصال بالإنترنت والمحاولة مرة أخرى.</translation>
 <translation id="6385382178401976503">البطاقة: ‫<ph name="CARD" /></translation>
 <translation id="6385994920693662133">‏تحذير: تم تفعيل تسجيل البيانات بالتفصيل، وقد تتضمن السجلات أدناه عناوين URL أو معلومات أخرى حساسة. يُرجى مراجعتها والتأكد من رغبتك في إرسال هذه المعلومات.</translation>
@@ -7236,6 +7250,7 @@
 <translation id="6445450263907939268">إذا كنت لا تريد هذه التغييرات، فيمكنك استعادة الإعدادات السابقة.</translation>
 <translation id="6446213738085045933">إنشاء اختصار على سطح المكتب</translation>
 <translation id="6447842834002726250">ملفّات تعريف الارتباط</translation>
+<translation id="6449554712554071184">سيؤدي هذا الإجراء إلى حذف المجموعة نهائيًا من جهازك.</translation>
 <translation id="6450876761651513209">تغيير الإعدادات المتعلقة بالخصوصية</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> وعلامة تبويب واحدة إضافية}two{<ph name="PAGE_TITLE" /> وعلامَتا تبويب إضافيتان}few{<ph name="PAGE_TITLE" /> و# علامات تبويب إضافية}many{<ph name="PAGE_TITLE" /> و# علامة تبويب إضافية}other{<ph name="PAGE_TITLE" /> و# علامة تبويب إضافية}}</translation>
 <translation id="6451689256222386810">إذا نسيت عبارة المرور أو رغبت في تغيير هذا الإعداد، يمكنك <ph name="BEGIN_LINK" />إعادة ضبط المزامنة<ph name="END_LINK" />.</translation>
@@ -7382,6 +7397,7 @@
 <translation id="6556866813142980365">إعادة</translation>
 <translation id="6556903358015358733">المظهر والخلفية</translation>
 <translation id="6557290421156335491">اختصاراتي</translation>
+<translation id="6560061709899140565">عرض جلسات البثّ الأخرى</translation>
 <translation id="6560151649238390891">تم إدراج الاقتراح.</translation>
 <translation id="6561726789132298588">إدخال</translation>
 <translation id="6562117348069327379">يمكنك تخزين سجلّات النظام في دليل "عمليات التنزيل".</translation>
@@ -7479,6 +7495,7 @@
 <translation id="6635674640674343739">تعذَّر إنشاء اتصال بالشبكة. يُرجى التحقُّق من اتصال الشبكة ثم إعادة المحاولة.</translation>
 <translation id="663569763553406962">الاطّلاع على الإضافات التي يمكنها قراءة محتوى موقع إلكتروني أو تغييره</translation>
 <translation id="6635944431854494329">‏يمكن للمالك التحكّم بهذه الميزة من الإعدادات &gt; الإعدادات المتقدّمة &gt; إرسال بيانات التشخيص والاستخدام إلى Google تلقائيًا.</translation>
+<translation id="6636572589916466933">عليك قبول طلب البث على "<ph name="DEVICE_NAME" />".</translation>
 <translation id="6636623428211296678">يمكنك التعرّف على المزيد من الإعدادات أدناه أو إنهاء المراجعة الآن.</translation>
 <translation id="6639554308659482635">‏ذاكرة SQLite</translation>
 <translation id="6640268266988685324">فتح علامة التبويب</translation>
@@ -8165,6 +8182,7 @@
 <translation id="715396040729904728">‏مشغّل التطبيقات + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">يُرجى إخبارنا بملاحظاتك وآرائك أو توضيح مشكلتك. يُرجى تضمين خطوات إعادة إظهار المشكلة، إن أمكن.</translation>
 <translation id="7154130902455071009">تغيير الصفحة الرئيسية إلى: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">‏يمكنك الحصول على فيديو بجودة أفضل والحفاظ على عمر البطارية. ولن يتم تشغيل الفيديو إلا على شاشة تعمل بتكنولوجيا Google Cast.</translation>
 <translation id="7159953856712257647">مُثبَّتة تلقائيًا</translation>
 <translation id="7160182524506337403">يمكنك الآن الاطّلاع على إشعارات هاتفك</translation>
 <translation id="7165263843655074092">يتم توفير حماية أمنية عادية على هذا الجهاز.</translation>
@@ -9022,6 +9040,7 @@
 <translation id="7788948939674438635">عدم السماح للمواقع الإلكترونية بقفل لوحة المفاتيح</translation>
 <translation id="7789963078219276159">تم تغيير خلفية الصفحة الرئيسية إلى <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">‏التعرّف البصري على الأحرف (OCR) في ملفات PDF</translation>
+<translation id="7790737481627460475">‏الملفات على جهاز Chromebook هذا</translation>
 <translation id="7791269138074599214">أسلوب الإدخال</translation>
 <translation id="7791429245559955092">‏سيتم تثبيت هذا التطبيق على ملفك الشخصي المستخدَم حاليًا على Chrome.</translation>
 <translation id="7791436592012979144">التمرير العكسي مفعَّل</translation>
@@ -9051,6 +9070,7 @@
 <translation id="7810202088502699111">تم منع عرض النوافذ المنبثقة في هذه الصفحة.</translation>
 <translation id="7810367892333449285">‏يجب أن يكون الإدخال بالتنسيق <ph name="LPA_0" />$<ph name="LPA_1" />عنوان SM-DP+‎<ph name="LPA_2" />$<ph name="LPA_3" />رقم تعريف مطابق اختياري<ph name="LPA_4" />.</translation>
 <translation id="7811263553491007091">بإمكانك إعادة المحاولة أو اختيار أحد المظاهر أدناه المُنشأة سابقًا.</translation>
+<translation id="7814090115158024843">عدم عرض مساعدة في الكتابة على هذه المواقع الإلكترونية مطلقًا</translation>
 <translation id="7814458197256864873">&amp;نسخ</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">تعديل الاختصار <ph name="SHORTCUT" /> للإضافة <ph name="EXTENSION_NAME" /></translation>
@@ -9282,8 +9302,10 @@
 <translation id="7974936243149753750">الخروج عن إطار الشاشة</translation>
 <translation id="7975504106303186033">‏يجب تسجيل جهاز Chrome Education هذا باستخدام حساب تعليم. للاشتراك في حساب جديد، يُرجى زيارة g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">ستتلقّى تحذيرًا إذا كنت تستخدم كلمة مرور تم اختراقها في عملية اختراق للبيانات.</translation>
+<translation id="797824194429476746">ستظل علامات التبويب مفتوحة على هذا الجهاز، ولكن سيتم حذف المجموعة نهائيًا.</translation>
 <translation id="7978412674231730200">مفتاح خاص</translation>
 <translation id="7978450511781612192">‏سيؤدي ذلك إلى تسجيل خروجك من حساباتك على Google. ولن تتم بعد ذلك مزامنة الإشارات المرجعية والسجلّ وكلمات المرور والمزيد.</translation>
+<translation id="7980066177668669492">‏حفظ عدة شهادات باستخدام ترميز ASCII عبر Base64</translation>
 <translation id="7980084013673500153">رقم تعريف مادة العرض: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">استخدام مفتاح مرور محفوظ لتطبيق "<ph name="APP_NAME" />"</translation>
 <translation id="7981662863948574132">‏عرض رقم EID للجهاز ورمز الاستجابة السريعة في نافذة منبثقة</translation>
@@ -9697,6 +9719,7 @@
 <translation id="8276242035951017580">لا يُسمح لأي تطبيقات باستخدام الكاميرا.</translation>
 <translation id="8276560076771292512">إفراغ ذاكرة التخزين المؤقت وإعادة التحميل بشكل كامل</translation>
 <translation id="8276850948802942358">مزيد من المعلومات حول منح الموقع الإلكتروني إذنًا مؤقتًا باستخدام ملفات تعريف الارتباط التابعة لجهات خارجية.</translation>
+<translation id="8277907305629781277">‏لقد أنشأت مفتاح المرور هذا في ‎<ph name="DATE" /></translation>
 <translation id="8280267190418431666">عرض محتوى المواقع الإلكترونية باللغات المفضّلة</translation>
 <translation id="828180235270931531">الطابعات الأخرى المتاحة</translation>
 <translation id="8281886186245836920">التخطّي</translation>
@@ -10379,7 +10402,6 @@
 <translation id="8784626084144195648">تم تثبيت المعدل</translation>
 <translation id="8785622406424941542">قلم الشاشة</translation>
 <translation id="8786824282808281903">عندما يظهر هذا الرمز لطفلك، يمكن استخدام بصمة الإصبع لتحديد الهوية أو الموافقة على عمليات الشراء.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{مجموعة لم تتم تسميتها تحتوي على علامة تبويب واحدة}zero{مجموعة لم تتم تسميتها تحتوي على # علامة تبويب}two{مجموعة لم تتم تسميتها تحتوي على علامتَي تبويب}few{مجموعة لم تتم تسميتها تحتوي على # علامات تبويب}many{مجموعة لم تتم تسميتها تحتوي على # علامة تبويب}other{مجموعة لم تتم تسميتها تحتوي على # علامة تبويب}}</translation>
 <translation id="8787752878731558379">‏ساعِدنا على تحسين Chrome وأخبِرنا لماذا سمحت باستخدام ملفات تعريف الارتباط التابعة لجهات خارجية.</translation>
 <translation id="8789898473175677810">‏يشكِّل Chrome جزءًا من <ph name="LINK_BEGIN" />جهود تعاونية<ph name="LINK_END" /> للحدّ من تتبُّع إجراءات المستخدم على مواقع إلكترونية متعددة وإيقاف استخدام "ملفات تعريف الارتباط التابعة لجهات خارجية" تدريجيًا. ونسعى لتنفيذ ذلك بشكل مسؤول لأنّ العديد من المواقع الإلكترونية تعتمد على "ملفات تعريف الارتباط التابعة لجهات خارجية" للعمل على النحو المطلوب، مثلاً لتسهيل عملية تسجيل الدخول، وإتاحة أنظمة المحادثة والتعليقات المضمّنة، وتقديم خدمات الدفع. بالإضافة إلى ذلك، غالبًا ما يستخدِم المعلِنون "ملفات تعريف الارتباط التابعة لجهات خارجية" هذه لتخصيص الإعلانات بشكل أفضل. وهو أمر مُهم لأنّ المواقع الإلكترونية غالبًا ما تعتمد على الإعلانات للمساعدة في دفع النفقات والاستمرار في تقديم المحتوى على الإنترنت بدون تحصيل أي تكلفة من المستخدمِين.</translation>
 <translation id="8791157330927639737">مزيد من المعلومات حول عملية التحديث</translation>
@@ -10614,6 +10636,7 @@
 <translation id="8962863356073277855">‏يجب أن يكون تنسيق عنوان URL كالتالي: https://www.example.com.</translation>
 <translation id="8962918469425892674">تم السماح لهذا الموقع باستخدام أجهزة استشعار الإضاءة أو الحركة.</translation>
 <translation id="8963117664422609631">الانتقال إلى إعدادات الموقع الإلكتروني</translation>
+<translation id="8964795217937248330">هل تريد إغلاق علامات التبويب وحذف المجموعة؟</translation>
 <translation id="8965037249707889821">إدخال كلمة المرور القديمة</translation>
 <translation id="8966809848145604011">الملفات الشخصية الأخرى</translation>
 <translation id="8967427617812342790">الإضافة إلى قائمة القراءة</translation>
@@ -11047,6 +11070,7 @@
 <translation id="979345485590886759">السماح للمواقع الإلكترونية بطلب قفل مؤشر الماوس</translation>
 <translation id="980731642137034229">زر قائمة الإجراءات</translation>
 <translation id="981121421437150478">بلا اتصال</translation>
+<translation id="98235653036850093">مرحبًا <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">إغلاق جميع علامات التبويب</translation>
 <translation id="983531994960412650">‫<ph name="WINDOW_TITLE" /> - يتم التسجيل من الكاميرا والميكروفون.</translation>
 <translation id="984275831282074731">طرق الدفع</translation>
diff --git a/chrome/app/resources/generated_resources_as.xtb b/chrome/app/resources/generated_resources_as.xtb
index 22da092b8..05dff24a 100644
--- a/chrome/app/resources/generated_resources_as.xtb
+++ b/chrome/app/resources/generated_resources_as.xtb
@@ -4078,7 +4078,6 @@
 <translation id="3983586614702900908">কোনো অজ্ঞাত বিক্ৰেতাৰ পৰা পোৱা ডিভাইচ</translation>
 <translation id="3983764759749072418">Play Storeৰ এপ্লিকেশ্বনবোৰৰ এই ডিভাইচটোৰ এক্সেছ আছে।</translation>
 <translation id="3983769721878416534">ক্লিক কৰাৰ আগত বিলম্ব</translation>
-<translation id="3983793589497399077">Lensৰ জৰিয়তে সন্ধান কৰিবলৈ ক্লিক কৰক বা টানি আনি এৰক</translation>
 <translation id="3984135167056005094">ইমেইল ঠিকনা অন্তৰ্ভুক্ত নকৰিব</translation>
 <translation id="3984159763196946143">ডেম' ম'ড আৰম্ভ কৰিব পৰা নগ'ল</translation>
 <translation id="3984431586879874039">এই ছাইটটোক আপোনাৰ সুৰক্ষা সম্পৰ্কীয় চাবিটো চাবলৈ অনুমতি দিবনে?</translation>
@@ -7180,7 +7179,6 @@
 <translation id="6383382161803538830">এই পৃষ্ঠাখনত পঢ়াৰ ম’ড উপলব্ধ নহয়</translation>
 <translation id="638418309848716977">সমৰ্থিত লিংক</translation>
 <translation id="6384275966486438344">আপোনাৰ সন্ধানৰ ছেটিংসমূহ ইয়ালৈ সলনি কৰক: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{নামবিহীন গোট - ১ টা টেব}one{নামবিহীন গোট - # টা টেব}other{নামবিহীন গোট - # টা টেব}}</translation>
 <translation id="6385149369087767061">ইণ্টাৰনেটৰ লগত সংযোগ কৰি আকৌ চেষ্টা কৰক</translation>
 <translation id="6385382178401976503">কাৰ্ড: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">সকীয়নি - সবিশেষ লগিং সক্ষম কৰা হৈছে; তলত দিয়া লগসমূহত URL অথবা অন্য সংবেদনশীল তথ্য থাকিব পাৰে। এই তথ্যখিনি দাখিল কৰাক লৈ আপোনাৰ একো অসুবিধা নথকাটো অনুগ্ৰহ কৰি পৰ্যালোচনা কৰি নিশ্চিত কৰক।</translation>
@@ -10399,7 +10397,6 @@
 <translation id="8784626084144195648">বিন কৰা গড়</translation>
 <translation id="8785622406424941542">ষ্টাইলাছ</translation>
 <translation id="8786824282808281903">আপোনাৰ শিশুৱে এই চিহ্নটো দেখিলে চিনাক্তকৰণৰ বাবে অথবা ক্ৰয়ৰ অনুমোদন জনাবলৈ ফিংগাৰপ্ৰিণ্ট ব্যৱহাৰ কৰিব পাৰি।</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{নামবিহীন গোট - ১ টা টেব}one{নামবিহীন গোট - # টা টেব}other{নামবিহীন গোট - # টা টেব}}</translation>
 <translation id="8787752878731558379">আপুনি তৃতীয় পক্ষৰ কুকিসমূহক কিয় অনুমতি দিছে সেয়া আমাক জনাই আমি Chrome উন্নত কৰাত সহায় কৰক</translation>
 <translation id="8789898473175677810">ক্ৰছ-ছাইট ট্ৰেকিং হ্ৰাস কৰা আৰু তৃতীয়-পক্ষৰ কুকিৰ ব্যৱহাৰ পৰ্যায়ক্ৰমে বন্ধ কৰাৰ বাবে Chrome এক <ph name="LINK_BEGIN" />সহযোগিতামূলক প্ৰচেষ্টা<ph name="LINK_END" />ৰ অংশ। কিন্তু আমি এইটো দায়িত্বশীলভাৱে কৰিবলৈ চেষ্টা কৰিছোঁ কাৰণ বহুতো ছাইটে ডিজাইন কৰা ধৰণে কাম কৰিবলৈ তৃতীয় পক্ষৰ কুকিৰ ওপৰত নিৰ্ভৰ কৰে। উদাহৰণস্বৰূপে, বহুতো ছাইটে ছাইন ইন কৰাটো সৰল কৰিবলৈ, এম্বেড কৰা চাট আৰু মন্তব্যৰ ব্যৱস্থা সমৰ্থন কৰিবলৈ আৰু পৰিশোধ সেৱাসমূহৰ বাবে তৃতীয়-পক্ষৰ কুকি ব্যৱহাৰ কৰে। আৰু বিজ্ঞাপনদাতাসকলে বিজ্ঞাপনসমূহ ভালদৰে ব্যক্তিগতকৰণ কৰিবলৈ প্ৰায়ে তৃতীয়-পক্ষৰ কুকি ব্যৱহাৰ কৰে। সেইটো গুৰুত্বপূৰ্ণ কাৰণ ছাইটসমূহে ব্যয় পৰিশোধ কৰাত সহায় কৰিবলৈ আৰু তেওঁলোকৰ অনলাইনৰ সমল বিনামূলীয়া কৰি ৰাখিবলৈ প্ৰায়ে বিজ্ঞাপনৰ ওপৰত নিৰ্ভৰ কৰে।</translation>
 <translation id="8791157330927639737">আপডে’ট কৰাৰ বিষয়ে অধিক জানক</translation>
diff --git a/chrome/app/resources/generated_resources_az.xtb b/chrome/app/resources/generated_resources_az.xtb
index 4ddb611..2a69973 100644
--- a/chrome/app/resources/generated_resources_az.xtb
+++ b/chrome/app/resources/generated_resources_az.xtb
@@ -4067,7 +4067,6 @@
 <translation id="3983586614702900908">naməlum vendordan cihazlar</translation>
 <translation id="3983764759749072418">Play Market tətbiqlərinin bu cihaza girişi var.</translation>
 <translation id="3983769721878416534">Klikləmədən öncə gecikmə</translation>
-<translation id="3983793589497399077">Linza ilə axtarmaq üçün istənilən yerə klikləyin və ya sürükləyin</translation>
 <translation id="3984135167056005094">E-poçt ünvanını daxil etməyin</translation>
 <translation id="3984159763196946143">Demo rejimini başlatmaq mümkün olmadı</translation>
 <translation id="3984431586879874039">Bu saytın təhlüksizlik açarınıza baxmasına icazə verilsin?</translation>
@@ -7165,7 +7164,6 @@
 <translation id="6383382161803538830">Oxu rejimi bu səhifədə əlçatan deyil</translation>
 <translation id="638418309848716977">Dəstəklənən keçidlər</translation>
 <translation id="6384275966486438344">Axtarış parametrlərini dəyişdirmək: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Adsız qrup - 1 tab}other{Adsız qrup - # tab}}</translation>
 <translation id="6385149369087767061">İnternetə qoşulun və yenidən cəhd edin</translation>
 <translation id="6385382178401976503">Kart: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Xəbərdarlıq - Təfsilatlı qeydiyyat aktivləşdirilib; aşağıdakı qeydlərə URL-lər və ya digər həssas məlumat daxil ola bilər. Nəzərdən keçirin və əmin olun ki, bu məlumatı göndərməkdə rahatsınız.</translation>
@@ -10379,7 +10377,6 @@
 <translation id="8784626084144195648">Səbətə atılmış ortalama</translation>
 <translation id="8785622406424941542">Stylus</translation>
 <translation id="8786824282808281903">Övladınız bu ikonanı gördükdə kimliyi doğrulamaq və ya alışı təsdiqləmək üçün barmaq izindən istifadə edə bilər.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Adsız Qrup - 1 Tab}other{Adsız Qrup - # Tab}}</translation>
 <translation id="8787752878731558379">Üçüncü tərəf kukilərinə icazə vermə səbəbinizi bildirərək Chrome-u təkmilləşdirməyə kömək edin</translation>
 <translation id="8789898473175677810">Chrome saytlararası izləməni azaltmaq və üçüncü tərəf kukilərinin istifadəsini mərhələli şəkildə dayandırmaq üçün <ph name="LINK_BEGIN" />birgə səy<ph name="LINK_END" /> göstərir. Bir çox saytlar nəzərdə tutduğu kimi işləmək üçün üçüncü tərəf kukilərindən istifadə etdiyinə görə bunu məsuliyyətlə etməyə çalışırıq. Məsələn, bir çox saytlar girişi asanlaşdırmaq, daxil edilmiş söhbət və şərh sistemlərini dəstəkləmək, habelə ödəniş xidmətləri üçün üçüncü tərəf kukilərindən istifadə edir. Reklamçılar da reklamları daha yaxşı fərdiləşdirmək üçün tez-tez üçüncü tərəf kukilərindən istifadə edirlər. Saytlar xərcləri ödəmək və onlayn kontenti pulsuz təmin etmək üçün tez-tez reklamlardan istifadə etdiyinə görə bu məsələ vacibdir.</translation>
 <translation id="8791157330927639737">Güncəlləmə haqqında ətraflı məlumat</translation>
diff --git a/chrome/app/resources/generated_resources_be.xtb b/chrome/app/resources/generated_resources_be.xtb
index 67a2ef80..cf09237 100644
--- a/chrome/app/resources/generated_resources_be.xtb
+++ b/chrome/app/resources/generated_resources_be.xtb
@@ -368,6 +368,7 @@
 <translation id="1260810365552581339">Магчыма ў Linux недастаткова месца на дыску. Вы можаце павялічыць месца на дыску Linux і паўтарыць спробу аднаўлення ў <ph name="LINK_START" />наладах<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Умераная</translation>
 <translation id="126156426083987769">Праблема з ліцэнзіямі прылад у дэманстрацыйным рэжыме.</translation>
+<translation id="1261885284931493480">Выдаліць укладкі і групу?</translation>
 <translation id="1263231323834454256">Спіс чытання</translation>
 <translation id="1263733306853729545">Выкарыстоўваць клавішы <ph name="MINUS" /> і <ph name="EQUAL" /> для пераходу паміж старонкамі спіса кандыдатаў</translation>
 <translation id="126387934568812801">Уключыць гэты здымак экрана і загалоўкі адкрытых укладак</translation>
@@ -879,6 +880,7 @@
 <translation id="1634224622052500893">Знойдзена сетка Wi-Fi</translation>
 <translation id="1634783886312010422">Вы ўжо змянілі гэты пароль на сайце <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">ОК</translation>
+<translation id="1636542522761359943">Вітаем, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Даныя праграм – гэта любыя даныя, якія захоўваюцца праграмай (у залежнасці ад налад распрацоўшчыка), у тым ліку кантакты, паведамленні і фота. Рэзервовыя копіі даных не будуць улічвацца ў квоце сховішча на Дыску.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Гэты сэрвіс можна выключыць у Наладах.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Выкарыстоўвайце гэту закладку на сваім iPhone</translation>
@@ -915,6 +917,7 @@
 <translation id="1652862280638399816">Каб выкарыстоўваць Менеджар пароляў са звязкам ключоў macOS, перазапусціце Chromium і дайце адпаведны доступ. Пасля перазапуску ўкладкі будуць адкрыты паўторна.</translation>
 <translation id="1653958716132599769">Згрупаваць звязаныя ўкладкі</translation>
 <translation id="1654580009054503925">Пашырэнню не дазволена паказваць запыты</translation>
+<translation id="1654713139320245449">Аб’екты прызначэння для трансляцыі не знойдзены. Патрабуецца дапамога?</translation>
 <translation id="1656528038316521561">Непразрыстасць фону</translation>
 <translation id="1657406563541664238">Дапамажыце палепшыць <ph name="PRODUCT_NAME" />, дазволіўшы аўтаматычна адпраўляць у Google статыстыку выкарыстання і справаздачы аб збоях</translation>
 <translation id="1657937299377480641">Каб зноў увайсці ва ўліковы запіс для доступу да адукацыйных рэсурсаў, папрасіце бацькоў даць вам дазвол</translation>
@@ -1632,12 +1635,14 @@
 <translation id="2187895286714876935">Памылка імпарту сертыфіката сервера</translation>
 <translation id="2187906491731510095">Пашырэнні абноўлены</translation>
 <translation id="2188881192257509750">Адкрыць <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Выдаліць групу ўкладак?</translation>
 <translation id="2190069059097339078">Сродак атрымання ўліковых даных Wi-Fi</translation>
 <translation id="219008588003277019">Модуль Native Client: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(пуста)</translation>
 <translation id="2190967441465539539">Не ўдалося атрымаць доступ да камеры і мікрафона</translation>
 <translation id="2191754378957563929">Уключана</translation>
 <translation id="2192505247865591433">Адкуль:</translation>
+<translation id="219283042927675668">Укладкі ў групе</translation>
 <translation id="2193365732679659387">Налады надзейнасці</translation>
 <translation id="2194856509914051091">Інфармацыя для разгляду</translation>
 <translation id="2195331105963583686">Вы зможаце працягваць карыстацца гэтай прыладай <ph name="DEVICE_TYPE" />, але яна больш не будзе атрымліваць аўтаматычныя абнаўленні праграмнага забеспячэння і сістэмы бяспекі</translation>
@@ -1659,6 +1664,7 @@
 <translation id="2211043920024403606">Інфармацыя профілю</translation>
 <translation id="2211245494465528624">Кіраваць параметрамі сінхранізацыі</translation>
 <translation id="221297410904507041">Выдаліць гісторыю прагляду сайтаў, файлы cookie, кэш і іншыя даныя</translation>
+<translation id="2213410656650624348">Умераны рэжым</translation>
 <translation id="2214018885812055163">Абагуленыя папкі</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 радок не паказваецца&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> радок не паказваецца&gt;}few{&lt;<ph name="NUMBER_OF_LINES" /> радкі не паказваецца&gt;}many{&lt;<ph name="NUMBER_OF_LINES" /> радкоў не паказваецца&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> радка не паказваецца&gt;}}</translation>
 <translation id="2215070081105889450">Каб абагуліць аўдыя, абагульце ўкладку ці экран</translation>
@@ -1857,6 +1863,7 @@
 <translation id="2350133097354918058">Перазагружана</translation>
 <translation id="2350182423316644347">Ідзе ініцыялізацыя праграмы...</translation>
 <translation id="235028206512346451">Калі вы аддаліцеся ад прылады, яе экран будзе аўтаматычна заблакіраваны. Калі вы будзеце знаходзіцца перад прыладай, экран будзе даўжэй заставацца актыўным. Калі вы не выкарыстоўваеце экран блакіроўкі, ваша прылада не будзе заблакіравана, а пяройдзе ў рэжым сну.</translation>
+<translation id="2352305801620974284">Калі вы ўваходзіце ва Уліковы запіс Google на гэтай прыладзе, вы атрымліваеце доступ да пароляў і іншага змесціва ў ім</translation>
 <translation id="2352662711729498748">&lt; 1 МБ</translation>
 <translation id="2352810082280059586">Нататкі на заблакіраваным экране аўтаматычна захоўваюцца ў праграме <ph name="LOCK_SCREEN_APP_NAME" />. Апошняя нататка будзе заставацца на экране блакіроўкі.</translation>
 <translation id="2353297238722298836">Камера і мікрафон дазволены</translation>
@@ -2038,6 +2045,7 @@
 <translation id="2473195200299095979">Перакласці гэту старонку</translation>
 <translation id="2475982808118771221">Адбылася памылка</translation>
 <translation id="247616523300581745">Схаваць гэтыя файлы</translation>
+<translation id="2476435723907345463">Доступ да ключоў доступу выдалены</translation>
 <translation id="2476901513051581836">Ачысціць пазасеткавае сховішча нельга, пакуль не стане вядомы яго памер.</translation>
 <translation id="2476974672882258506">Каб выдаліць <ph name="PARALLELS_DESKTOP" />, завяршыце працу Windows.</translation>
 <translation id="2477065602824695373">Аўтаматычнае сканіраванне было выключана, бо вы наладзілі некалькі пераключальнікаў.</translation>
@@ -2066,6 +2074,7 @@
 <translation id="249113932447298600">На жаль, прылада <ph name="DEVICE_LABEL" /> зараз не падтрымліваецца.</translation>
 <translation id="2491587035099903063">праслухаць голас для наступнай мовы: <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Рыхтуецца запыт на подпіс сертыфіката</translation>
+<translation id="2492964937550251173">Закрыць укладкі і выдаліць групу?</translation>
 <translation id="249330843868392562">Адкрыць налады сінтэзу маўлення</translation>
 <translation id="2494555621641843783">Не ўдалося ўсталяваць Steam</translation>
 <translation id="2495141202137516054">З вашага Дыска</translation>
@@ -2232,8 +2241,10 @@
 <translation id="2620215283731032047">Бяспечна спампаваць файл "<ph name="FILE_NAME" />" нельга.</translation>
 <translation id="2620245777360407679">Прылады, падключаныя да хот-спота</translation>
 <translation id="2620436844016719705">Сістэма</translation>
+<translation id="262087792756666314">Для лёгкага доступу функцыю можна замацаваць: націсніце кнопку "Замацаваць" уверсе бакавой панэлі</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Навучыце Памочніка Google распазнаваць узор голасу</translation>
+<translation id="2622280935687585828">Выдаліць сайт "<ph name="SITE_NAME" />" з адключаных сайтаў</translation>
 <translation id="26224892172169984">Не дазваляць ніякім сайтам кіраваць пратаколамі</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Кіраванне прыладамі MIDI і іх перапраграмаванне дазволена</translation>
@@ -2407,6 +2418,7 @@
 <translation id="2743387203779672305">Скапіраваць у буфер абмену</translation>
 <translation id="274362947316498129">Праграма спрабуе атрымаць доступ да камеры "<ph name="DEVICE_NAME" />". Каб даць праграме доступ, перавядзіце пераключальнік, які рэгулюе налады прыватнасці камеры "<ph name="DEVICE_NAME" />", у становішча "выключана".</translation>
 <translation id="2745080116229976798">Кваліфікаваная падпарадкаванасць Microsoft</translation>
+<translation id="2747853844543618313">Пераканайцеся, што прынялі запыт на трансляцыю на прыладу "<ph name="DEVICE_NAME" />".</translation>
 <translation id="2749756011735116528">Увайсці ва ўліковы запіс <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM-карта</translation>
 <translation id="2749881179542288782">Праверыць граматыку і правапіс</translation>
@@ -2777,6 +2789,7 @@
 <translation id="3021066826692793094">Матылёк</translation>
 <translation id="3021678814754966447">&amp;Прагляд крыніцы фрэйма</translation>
 <translation id="3021902017511220299">Не ўдалося выканаць сканіраванне. Гэта дзеянне заблакіравана адміністратарам.</translation>
+<translation id="3022068420678496307">Група будзе выдалена з усіх прылад, на якіх выкананы ўваход у Chrome з гэтага Уліковага запісу Google.</translation>
 <translation id="3022361196600037287">Прылада "<ph name="DEVICE" />" будзе выдалена з гэтага Chromebook і не захаваецца ва ўліковым запісе <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Незразумела.</translation>
 <translation id="3023464535986383522">Чытаць уголас</translation>
@@ -3007,6 +3020,7 @@
 <translation id="3222066309010235055">Папярэдняя візуалізацыя: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Падключыцца да віртуальнай машыны "<ph name="USB_VM_NAME" />"</translation>
 <translation id="3222857603094643834">Пошук па любым фрагменце на гэтай старонцы з дапамогай Google Аб’ектыва</translation>
+<translation id="3223109931751684474">Выдаліць доступ да ключоў доступу на гэтай прыладзе</translation>
 <translation id="3223531857777746191">Кнопка "Скінуць"</translation>
 <translation id="3225084153129302039">Стандартны фіялетавы аватар</translation>
 <translation id="3225319735946384299">Падпісванне кода</translation>
@@ -3331,6 +3345,7 @@
 <translation id="3473479545200714844">Экранная лупа</translation>
 <translation id="3474218480460386727">Новыя словы павінны складацца з не больш чым 99 літар</translation>
 <translation id="3474624961160222204">Працягнуць як <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Умераная эканомія памяці. Укладкі становяцца неактыўнымі праз даўжэйшы перыяд часу.</translation>
 <translation id="347785443197175480">І далей даваць <ph name="HOST" /> доступ да камеры і мікрафона</translation>
 <translation id="3479357084663933762">Дэйтаранамалія</translation>
 <translation id="3479552764303398839">Не зараз</translation>
@@ -4052,7 +4067,6 @@
 <translation id="3983586614702900908">прылады ад невядомага пастаўшчыка</translation>
 <translation id="3983764759749072418">Праграмы з Крамы Play маюць доступ да гэтай прылады.</translation>
 <translation id="3983769721878416534">Затрымка перад націсканнем</translation>
-<translation id="3983793589497399077">Націсніце на аб’ект або вылучыце вобласць для пошуку з дапамогай Аб’ектыва</translation>
 <translation id="3984135167056005094">Не ўключаць адрас электроннай пошты</translation>
 <translation id="3984159763196946143">Не ўдалося запусціць дэманстрацыйны рэжым</translation>
 <translation id="3984431586879874039">Дазволіць гэтаму сайту бачыць ключ бяспекі?</translation>
@@ -4089,6 +4103,7 @@
 <translation id="4010036441048359843">Уключыць вылучэнне</translation>
 <translation id="4010746393007464819">Даступнае абнаўленне да версіі Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">Каб карыстацца сваімі закладкамі на мабільнай прыладзе, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Для лёгкага доступу функцыю можна замацаваць</translation>
 <translation id="4014432863917027322">Выправіць "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="4015163439792426608">У вас ёсць пашырэнні? <ph name="BEGIN_LINK" />Кіруйце пашырэннямі<ph name="END_LINK" /> з лёгкасцю з аднаго месца.</translation>
 <translation id="4016762287427926315">Дазволы, якія вы даяце праграме "<ph name="APP_NAME" />", таксама будуць дадзены гэтай праграме. <ph name="BEGIN_LINK" />Кіраваць<ph name="END_LINK" /></translation>
@@ -4174,6 +4189,7 @@
 <translation id="4078903002989614318">Параметры сартавання і спісу</translation>
 <translation id="4079140982534148664">Выкарыстоўваць палепшаную праверку правапісу</translation>
 <translation id="4082333918978320301">Няма вэб-сайтаў з дазволам на выкарыстанне мікрафона</translation>
+<translation id="4083735423615351075">Укладкі застануцца адкрытымі на гэтай прыладзе, але група будзе выдалена з усіх прылад, на якіх выкананы ўваход у Chrome з гэтага Уліковага запісу Google.</translation>
 <translation id="4084682180776658562">Дадаць у закладкі</translation>
 <translation id="4084835346725913160">Закрыць укладку "<ph name="TAB_NAME" />"</translation>
 <translation id="4085298594534903246">JavaScript заблакіраваны на гэтай старонцы.</translation>
@@ -4183,6 +4199,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Паказваць справа</translation>
+<translation id="4088879333319441249">Разгрупаваць групу ўкладак?</translation>
 <translation id="4089235344645910861">Налады захаваныя. Сінхранізацыя пачалася.</translation>
 <translation id="4089817585533500276">Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Уключыць спраўджаны доступ</translation>
@@ -4392,6 +4409,7 @@
 <translation id="4261429981378979799">Дазволы пашырэння</translation>
 <translation id="4262004481148703251">Адхіліць заўвагу</translation>
 <translation id="4263223596040212967">Праверце раскладку клавіятуры і паўтарыце спробу.</translation>
+<translation id="4263470758446311292">Максімальная эканомія памяці. Укладкі становяцца неактыўнымі праз карацейшы прамежак часу.</translation>
 <translation id="4265096510956307240">Прайсці спраўджанне асобы</translation>
 <translation id="4265301768135164545">Вы можаце таксама наладзіць профіль eSIM-карты <ph name="BEGIN_LINK" />ўручную<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Каб праверыць наяўнасць абнаўленняў, падключыцеся да сеткі Ethernet, Wi-Fi або мабільнай перадачы даных.</translation>
@@ -4711,6 +4729,7 @@
 <translation id="4503748371388753124">У вашым камп'ютары ўсталявана прылада бяспекі Trusted Platform Module (TPM), якая выкарыстоўваецца для рэалізацыі многіх крытычна важных функцый бяспекі ў Chrome OS Flex. Каб даведацца больш, адкрыйце Даведачны цэнтр Chromebook: https://support.google.com/chromebook/?p=tpm.</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Файлы cookie дазволены}=1{Файлы cookie дазволены, 1 выключэнне}one{Файлы cookie дазволены, {COUNT} выключэнне}few{Файлы cookie дазволены, {COUNT} выключэнні}many{Файлы cookie дазволены, {COUNT} выключэнняў}other{Файлы cookie дазволены, {COUNT} выключэння}}</translation>
 <translation id="4504940961672722399">Каб выкарыстаць гэта пашырэнне, націсніце на гэты значок або націсніце клавішы <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Спампуйце Chrome з дапамогай QR-кода і ўвайдзіце ва Уліковы запіс Google.</translation>
 <translation id="450552327874992444">Слова ўжо дададзена</translation>
 <translation id="4507373251891673233">Вы заблакіравалі ўсім пашырэнням доступ да сайта <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Націсніце "Дадаць ярлык"</translation>
@@ -5046,6 +5065,7 @@
 <translation id="4768332406694066911">У вас ёсць сертыфікаты ад гэтых арганізацый, якія ідэнтыфікуюць вас</translation>
 <translation id="4769632191812288342">Выбрана стандартная абарона</translation>
 <translation id="4770119228883592393">Запытаны дазвол. Каб адказаць, націсніце ⌘ + Option + стрэлка ўніз</translation>
+<translation id="4770755495532014179">Выкарыстоўвайце гэты пароль на iPhone</translation>
 <translation id="4773112038801431077">Абнаўленне Linux</translation>
 <translation id="477548766361111120">Дазволіць пашырэнню чытаць і змяняць гэты сайт</translation>
 <translation id="4776311127346151860">Прылада (<ph name="DEVICE_NAME" />) падключана</translation>
@@ -5215,6 +5235,7 @@
 <translation id="4890399733764921729">Не ўдалося падключыцца. Заблакіравана іншым аператарам мабільнай сувязі.</translation>
 <translation id="4890773143211625964">Паказаць пашыраныя параметры друку</translation>
 <translation id="4891089016822695758">Форум бэта-версіі</translation>
+<translation id="4891795846939730995">Каб даць гэтай прыладзе доступ да ключоў доступу зноў, увайдзіце на сайт або ў праграму з захаваным ключом доступу</translation>
 <translation id="4892229439761351791">Сайт можа выкарыстоўваць Bluetooth</translation>
 <translation id="4892328231620815052">Калі захочаце пабачыць свой спіс на прагляд, яго можна знайсці ў раздзеле "Закладкі і спісы"</translation>
 <translation id="489258173289528622">Пры бяздзейнасці падчас працы ад акумулятара</translation>
@@ -5660,6 +5681,7 @@
 <translation id="5242724311594467048">Уключыць пашырэнне "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="5243522832766285132">Паўтарыце спробу праз некалькі секунд</translation>
 <translation id="5244234799035360187">Цяпер OneDrive будзе паказвацца ў праграме "Файлы"</translation>
+<translation id="5244466461749935369">Пакінуць</translation>
 <translation id="5244474230056479698">Сінхранізуецца з <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Пачатак працы з навучальным уліковым запісам</translation>
 <translation id="5246282308050205996">Збой праграмы "<ph name="APP_NAME" />". Націсніце на гэта ўсплывальнае папярэджанне, каб перазапусціць праграму.</translation>
@@ -5928,6 +5950,7 @@
 <translation id="5453829744223920473">Дзіця можа выкарыстоўваць усе навучальныя праграмы, закладкі і рэсурсы так сама, як у класе. Асноўныя правілы задаюцца навучальнай установай.</translation>
 <translation id="5454166040603940656">крыніца: <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Паказаць больш вынікаў пошуку</translation>
+<translation id="5457082343331641453">Дадайце да пошукавага запыту</translation>
 <translation id="5457113250005438886">Несапраўдная</translation>
 <translation id="5457459357461771897">Прагляд і выдаленне з камп'ютара фота, музыкі і іншых файлаў мультымедыя</translation>
 <translation id="5458214261780477893">Раскладка Дворака</translation>
@@ -6404,6 +6427,7 @@
 <translation id="5816434091619127343">Запытаныя змены прынтара зробяць немагчымым яго выкарыстанне.</translation>
 <translation id="581659025233126501">Уключыць сінхранізацыю</translation>
 <translation id="5817918615728894473">Спалучыць</translation>
+<translation id="5817963443108180228">З вяртаннем, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">усе праграмы</translation>
 <translation id="5821565227679781414">Стварыць ярлык</translation>
 <translation id="5824976764713185207">Аўтаматычна чытаць старонку пасля яе загрузкі</translation>
@@ -6443,6 +6467,7 @@
 <translation id="5846504156837627898">Кіраваць дазволамі сайтаў</translation>
 <translation id="5846749317653566506">Каб адценні на экране былі больш распазнавальнымі, адрэгулюйце налады карэкцыі колераў</translation>
 <translation id="5846807460505171493">Усталяванне абнаўленняў і праграм. Працягваючы, вы дазваляеце гэтай прыладзе аўтаматычна спампоўваць і ўсталёўваць абнаўленні і праграмы ад Google, вашага аператара і вытворцы прылады, у тым ліку праз сотавую перадачу даных. Некаторыя з гэтых праграм могуць прапаноўваць куплі з праграм.</translation>
+<translation id="5848054741303781539">Зададзена ўручную, геалакацыя не выкарыстоўваецца</translation>
 <translation id="5848319660029558352">Чытанне ўголас і фармаціраванне тэксту</translation>
 <translation id="5849212445710944278">Слова ўжо дададзена</translation>
 <translation id="584945105664698226">Хуткасць маўлення</translation>
@@ -7003,6 +7028,7 @@
 <translation id="6265159465845424232">Запытваць перад капіраваннем або перамяшчэннем файлаў Microsoft на Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Выдаліць порт</translation>
 <translation id="6266532094411434237">Ідзе падключэнне да прылады "<ph name="DEVICE" />"</translation>
+<translation id="6266984048393265562">Наладзіць профіль</translation>
 <translation id="6267166720438879315">Выберыце сертыфікат для аўтэнтыфікацыі сябе на хосце <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Адкрыць у праграме <ph name="APP" /></translation>
 <translation id="6270309713620950855">Выключыць гук напамінаў</translation>
@@ -7141,7 +7167,6 @@
 <translation id="6383382161803538830">Рэжым чытання недаступны на гэтай старонцы</translation>
 <translation id="638418309848716977">Спасылкі, якія падтрымліваюцца</translation>
 <translation id="6384275966486438344">Змяніць налады пошуку і выкарыстоўваць <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Група без назвы – 1 укладка}one{Група без назвы – # укладка}few{Група без назвы – # укладкі}many{Група без назвы – # укладак}other{Група без назвы – # укладкі}}</translation>
 <translation id="6385149369087767061">Падключыцеся да інтэрнэту і паўтарыце спробу</translation>
 <translation id="6385382178401976503">Картка: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Увага! Уключана падрабязнае вядзенне журнала; журналы ніжэй могуць змяшчаць URL-адрасы або іншую канфідэнцыяльную інфармацыю. Праглядзіце журналы і пераканайцеся, што вы не супраць адпраўкі гэтых даных.</translation>
@@ -7220,6 +7245,7 @@
 <translation id="6445450263907939268">Калі вам гэтыя змены непатрэбныя, можна аднавіць папярэднія налады.</translation>
 <translation id="6446213738085045933">Стварыць ярлык на працоўным стале</translation>
 <translation id="6447842834002726250">Файлы cookie</translation>
+<translation id="6449554712554071184">Гэта дзеянне незваротна выдаліць групу з прылады.</translation>
 <translation id="6450876761651513209">Змяніць налады, звязаныя з прыватнасцю</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> і яшчэ адна ўкладка}one{<ph name="PAGE_TITLE" /> і яшчэ # укладка}few{<ph name="PAGE_TITLE" /> і яшчэ # укладкі}many{<ph name="PAGE_TITLE" /> і яшчэ # укладак}other{<ph name="PAGE_TITLE" /> і яшчэ # укладкі}}</translation>
 <translation id="6451689256222386810">Калі вы забылі фразу-пароль або хочаце змяніць гэту наладу, <ph name="BEGIN_LINK" />скіньце сінхранізацыю<ph name="END_LINK" />.</translation>
@@ -7366,6 +7392,7 @@
 <translation id="6556866813142980365">Узнавіць</translation>
 <translation id="6556903358015358733">Тэма і шпалеры</translation>
 <translation id="6557290421156335491">Мае ярлыкі</translation>
+<translation id="6560061709899140565">Паказаць іншыя прылады, якія ажыццяўляюць трансляцыю</translation>
 <translation id="6560151649238390891">Прапанаваны варыянт устаўлены</translation>
 <translation id="6561726789132298588">Enter</translation>
 <translation id="6562117348069327379">Захоўванне сістэмных журналаў у каталозе "Спампоўкі".</translation>
@@ -7461,6 +7488,7 @@
 <translation id="6635674640674343739">Не ўдалося ўстанавіць падключэнне да сеткі. Праверце падключэнне да сеткі і паўтарыце спробу.</translation>
 <translation id="663569763553406962">Якія пашырэнні могуць праглядаць і мяняць даныя сайта</translation>
 <translation id="6635944431854494329">Уладальнік можа кіраваць гэтай функцыяй у меню "Налады &gt; Пашыраныя &gt; Аўтаматычна адпраўляць даныя пра выкарыстанне і дыягностыку ў Google".</translation>
+<translation id="6636572589916466933">Прыміце запыт на трансляцыю на прыладу "<ph name="DEVICE_NAME" />".</translation>
 <translation id="6636623428211296678">Вы можаце азнаёміцца з іншымі наладамі ніжэй або завяршыць праверку</translation>
 <translation id="6639554308659482635">Памяць SQLite</translation>
 <translation id="6640268266988685324">Адкрытая ўкладка</translation>
@@ -7479,6 +7507,7 @@
 <translation id="6648911618876616409">Крытычнае абнаўленне гатовае да ўсталявання. Каб усталяваць яго, увайдзіце ва ўліковы запіс.</translation>
 <translation id="6649018507441623493">Секунду…</translation>
 <translation id="6650206238642452078">Падпісацца на падзеі сістэмы ChromeOS</translation>
+<translation id="6650584564768559994">Збалансаваная эканомія памяці. Укладкі становяцца неактыўнымі праз аптымальны перыяд часу.</translation>
 <translation id="665061930738760572">Адкрыць у &amp;новым акне</translation>
 <translation id="6651237644330755633">Давяраць гэтаму сертыфікату пры ідэнтыфікацыі вэб-сайтаў</translation>
 <translation id="6651495917527016072">Сінхранізуйце параметры сетак Wi-Fi са сваім тэлефонам. <ph name="LINK_BEGIN" />Даведацца больш<ph name="LINK_END" /></translation>
@@ -7736,6 +7765,7 @@
 <translation id="6831043979455480757">Перакласці</translation>
 <translation id="6832218595502288407">Выраўнаваць па левым краі</translation>
 <translation id="6833479554815567477">Укладка выдалена з групы "<ph name="GROUP_NAME" />" – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Збалансаваны рэжым (рэкамендуецца)</translation>
 <translation id="6835762382653651563">Каб абнавіць <ph name="DEVICE_TYPE" />, падключыцеся да інтэрнэту.</translation>
 <translation id="683630338945552556">Захоўваць і выкарыстоўваць паролі ва Уліковым запісе Google</translation>
 <translation id="6839225236531462745">Памылка пры выдаленні сертыфіката</translation>
@@ -8143,6 +8173,7 @@
 <translation id="715396040729904728">Клавіша панэлі запуску + Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Напішыце водгук або апішыце праблему. Па магчымасці ўкажыце, якія дзеянні да яе прыводзяць.</translation>
 <translation id="7154130902455071009">Змяніць пачатковую старонку на наступную: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Гэта функцыя дазваляе павысіць якасць відэа і падоўжыць час працы ад акумулятара. Відэа будуць прайгравацца толькі на экранах з падтрымкай Cast.</translation>
 <translation id="7159953856712257647">Усталявана стандартна</translation>
 <translation id="7160182524506337403">Цяпер вы можаце праглядаць нядаўнія апавяшчэнні з тэлефона</translation>
 <translation id="7165263843655074092">Вы атрымліваеце стандартную абарону бяспекі на гэтай прыладзе</translation>
@@ -9001,6 +9032,7 @@
 <translation id="7788948939674438635">Забараніць сайтам блакіраваць клавіятуру</translation>
 <translation id="7789963078219276159">Фон пачатковай старонкі зменены. Цяпер гэта <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">Аптычнае распазнаванне сімвалаў (OCR) у файлах PDF</translation>
+<translation id="7790737481627460475">Файлы на гэтай прыладзе Chromebook</translation>
 <translation id="7791269138074599214">Спосаб уводу</translation>
 <translation id="7791429245559955092">Гэта праграма будзе ўсталявана ў бягучым профілі Chrome</translation>
 <translation id="7791436592012979144">Прагортка ў адваротным кірунку ўключана</translation>
@@ -9030,6 +9062,7 @@
 <translation id="7810202088502699111">Усплывальныя вокны на гэтай старонцы заблакіраваны.</translation>
 <translation id="7810367892333449285">Запіс павінен мець фармат <ph name="LPA_0" />$<ph name="LPA_1" />адрас SM-DP+<ph name="LPA_2" />$<ph name="LPA_3" />неабавязковы ідэнтыфікатар для супастаўлення<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Паўтарыце спробу або выберыце адну з раней згенерыраваных тэм ніжэй.</translation>
+<translation id="7814090115158024843">Ніколі не прапаноўваць дапамогу з напісаннем на гэтых сайтах</translation>
 <translation id="7814458197256864873">&amp;Капіраваць</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Змяніць спалучэнне клавіш <ph name="SHORTCUT" /> для пашырэння "<ph name="EXTENSION_NAME" />"</translation>
@@ -9261,8 +9294,10 @@
 <translation id="7974936243149753750">Вылет разгорткі</translation>
 <translation id="7975504106303186033">Вы павінны зарэгістраваць гэту прыладу Chrome Education у навучальным уліковым запісе. Каб стварыць новы ўліковы запіс, наведайце старонку g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Папярэджвае, калі вы выкарыстоўваеце пароль, які быў раскрыты ў выніку ўцечкі даных.</translation>
+<translation id="797824194429476746">Укладкі застануцца адкрытымі на гэтай прыладзе, але група будзе выдалена назаўсёды.</translation>
 <translation id="7978412674231730200">Закрыты ключ</translation>
 <translation id="7978450511781612192">Вы выйдзеце з Уліковых запісаў Google. Вашы закладкі, гісторыя, паролі і г. д. больш не будуць сінхранізавацца.</translation>
+<translation id="7980066177668669492">ASCII з кадаваннем Base64, некалькі сертыфікатаў</translation>
 <translation id="7980084013673500153">Ідэнтыфікатар аб'екта ўласнасці: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Выкарыстайце захаваны ключ доступу для праграмы "<ph name="APP_NAME" />"</translation>
 <translation id="7981662863948574132">Паказаць усплывальнае акно з электронным ідэнтыфікатарам прылады і QR-кодам</translation>
@@ -9385,6 +9420,7 @@
 <translation id="8066444921260601116">Дыялогавае акно падключэння</translation>
 <translation id="8070572887926783747">Дазвол на доступ да геаданых для праграмы "<ph name="APP_NAME" />"</translation>
 <translation id="8070662218171013510">Тактыльны водгук</translation>
+<translation id="8071033114691184017">Выкарыстоўвайце гэты пароль на iPhone</translation>
 <translation id="8071432093239591881">Друкаваць як відарыс</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Даныя праграм – гэта любыя даныя, якія захоўваюцца праграмай (у залежнасці ад налад распрацоўшчыка), у тым ліку кантакты, паведамленні і фота.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Даныя рэзервовай копіі не будуць улічвацца ў квоце сховішча вашага дзіцяці на Дыску.<ph name="END_PARAGRAPH2" />
@@ -9673,6 +9709,7 @@
 <translation id="8276242035951017580">Няма праграм з дазволам на выкарыстанне камеры</translation>
 <translation id="8276560076771292512">Ачыстка кэша і халодная перазагрузка</translation>
 <translation id="8276850948802942358">Даведацца больш пра тое, як даць сайту часовы дазвол на выкарыстанне старонніх файлаў cookie</translation>
+<translation id="8277907305629781277">Вы стварылі гэты ключ доступу <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Вэб-сайты на вашых мовах</translation>
 <translation id="828180235270931531">Іншыя даступныя прынтары</translation>
 <translation id="8281886186245836920">Прапусціць</translation>
@@ -9952,6 +9989,7 @@
 <translation id="8482077254400484047">Кіраванне выглядам неактыўных укладак</translation>
 <translation id="8483248364096924578">IP-адрас</translation>
 <translation id="8486666913807228950">Прычына: у спісе "Прымусова адкрыць у:" знойдзена інвертаванае правіла <ph name="REVERT_RULE" />.</translation>
+<translation id="8487303289354211861">Функцыя замацавана! Атрымаць доступ да яе можна з дапамогай новай кнопкі на панэлі інструментаў.</translation>
 <translation id="8487678622945914333">Павялічыць</translation>
 <translation id="8487699605742506766">Хот-спот</translation>
 <translation id="8489156414266187072">Персанальныя прапановы паказваюцца толькі ў вашым уліковым запісе</translation>
@@ -10353,7 +10391,6 @@
 <translation id="8784626084144195648">Сярэдняе па аб'яднаных даных</translation>
 <translation id="8785622406424941542">Пяро</translation>
 <translation id="8786824282808281903">Гэты значок будзе паказвацца дзіцяці, каб паведаміць яму, што пры дапамозе адбітка пальца яно можа спраўдзіць сваю асобу або ўхваліць куплю.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Група без назвы – 1 укладка}one{Група без назвы – # укладка}few{Група без назвы – # укладкі}many{Група без назвы – # укладак}other{Група без назвы – # укладкі}}</translation>
 <translation id="8787752878731558379">Дапамажыце нам палепшыць Chrome – раскажыце, чаму вы дазволілі староннія файлы cookie</translation>
 <translation id="8789898473175677810">Chrome удзельнічае ў <ph name="LINK_BEGIN" />праграме<ph name="LINK_END" /> па абмежаванні міжсайтавага адсочвання і адмове ад выкарыстання старонніх файлаў cookie. Але мы стараемся падыходзіць да гэта адказна, бо многім сайтам староннія файлы cookie патрэбныя для правільнай работы. Напрыклад, многія сайты выкарыстоўваюць староннія файлы cookie для спрашчэння ўваходу ў сістэму, падтрымкі ўбудаваных сістэм чата і каментарыяў, а таксама для плацежных сэрвісаў. Рэкламадаўцы часта выкарыстоўваюць староннія файлы cookie для больш эфектыўнай персаналізацыі рэкламы. Гэта важна, бо рэклама дапамагае сайтам пакрываць расходы і прапаноўваць бясплатнае змесціва.</translation>
 <translation id="8791157330927639737">Даведацца больш пра абнаўленне</translation>
@@ -10588,6 +10625,7 @@
 <translation id="8962863356073277855">URL-адрас павінен мець фармат https://www.example.com</translation>
 <translation id="8962918469425892674">Гэты сайт выкарыстоўвае датчыкі руху або святла.</translation>
 <translation id="8963117664422609631">Перайсці ў налады сайта</translation>
+<translation id="8964795217937248330">Закрыць укладкі і выдаліць групу?</translation>
 <translation id="8965037249707889821">Увядзіце стары пароль</translation>
 <translation id="8966809848145604011">Іншыя профілі</translation>
 <translation id="8967427617812342790">Дадаць у спіс чытання</translation>
@@ -10667,6 +10705,7 @@
 <translation id="9014674417732091912">Перамешчана на радок <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Рэзервовае капіраванне на Google Дыск</translation>
 <translation id="9016827136585652292">уключыць/выключыць Экран прыватнасці</translation>
+<translation id="9017055559700464094">Функцыя замацавана! Карыстацца ёй можна з панэлі інструментаў.</translation>
 <translation id="90181708067259747">Тэрмін дзеяння: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Усталяванне завершана</translation>
 <translation id="901876615920222131">Націсніце на групу, каб адкрыць яе зноў</translation>
@@ -10822,6 +10861,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Каб выкарыстоўваць усе магчымасці аперацыйнай сістэмы <ph name="DEVICE_OS" />, усталюйце яе на ўнутраны дыск. Гэта можна зрабіць і пазней з экрана ўваходу.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Калі вы пакуль што не хочаце ўсталёўваць гэту АС, можаце запусціць яе з USB, каб спачатку апрабаваць. Бягучая АС і вашы даныя на прыладзе захаваюцца, але даступны аб'ём сховішча і прадукцыйнасць могуць знізіцца.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Адкрыць у замацаванай укладцы</translation>
+<translation id="9122788874051694311">Захаваць ключ доступу не ў рэжыме інкогніта?</translation>
 <translation id="9123287046453017203">Версія АС на вашай прыладзе з'яўляецца неактуальнай</translation>
 <translation id="9125910124977405374">Выдаліць гэту мову (<ph name="LANGUAGE_NAME" />) са спіса моў, з якіх трэба ажыццяўляць пераклад аўтаматычна</translation>
 <translation id="9126149354162942022">Колер курсора</translation>
@@ -11016,6 +11056,7 @@
 <translation id="979345485590886759">Сайты могуць запытваць дазвол на блакіроўку паказальніка мышы</translation>
 <translation id="980731642137034229">Кнопка меню дзеянняў</translation>
 <translation id="981121421437150478">Па-за сеткай</translation>
+<translation id="98235653036850093">Вітаем, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Закрыць усе ўкладкі</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – ідзе запіс на камеру і мікрафон</translation>
 <translation id="984275831282074731">Спосабы аплаты</translation>
diff --git a/chrome/app/resources/generated_resources_bg.xtb b/chrome/app/resources/generated_resources_bg.xtb
index 3a8ac1c..6a8aae1 100644
--- a/chrome/app/resources/generated_resources_bg.xtb
+++ b/chrome/app/resources/generated_resources_bg.xtb
@@ -1664,6 +1664,7 @@
 <translation id="2211043920024403606">Информация за потребителския профил</translation>
 <translation id="2211245494465528624">Управление на опциите за синхронизиране</translation>
 <translation id="221297410904507041">Изтриване на историята, „бисквитките“, кеша и др.</translation>
+<translation id="2213410656650624348">Средно</translation>
 <translation id="2214018885812055163">Споделени папки</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 ред не е показан&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> реда не са показани&gt;}}</translation>
 <translation id="2215070081105889450">За да споделите звук, трябва да споделите раздел или екран</translation>
@@ -2046,6 +2047,7 @@
 <translation id="2473195200299095979">Превод на тази страница</translation>
 <translation id="2475982808118771221">Възникна грешка</translation>
 <translation id="247616523300581745">Скриване на тези файлове</translation>
+<translation id="2476435723907345463">Достъпът до ключовете за достъп е премахнат</translation>
 <translation id="2476901513051581836">Изчистването на хранилището не е възможно, докато размерът на офлайн хранилището не бъде известен.</translation>
 <translation id="2476974672882258506">Изключете Windows, за да деинсталирате <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">Тъй като настроихте няколко превключвателя, автоматичното сканиране бе изключено.</translation>
@@ -2240,6 +2242,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> не може да се изтегли по сигурен начин.</translation>
 <translation id="2620245777360407679">Устройства, свързани понастоящем с точката за достъп</translation>
 <translation id="2620436844016719705">Система</translation>
+<translation id="262087792756666314">Можете да фиксирате тази функция за лесен достъп – кликнете върху бутона „Фиксиране“ в горната част на страничния панел</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Обучаване на гласовия модел на Google Асистент</translation>
 <translation id="26224892172169984">Забраняване на сайтовете да обработват протоколи</translation>
@@ -3015,6 +3018,7 @@
 <translation id="3222066309010235055">Предварително изобразяване: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Свързване с(ъс) <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Търсене в цялото съдържание на тази страница посредством Google Обектив</translation>
+<translation id="3223109931751684474">Премахване на достъпа до ключовете ви за достъп на това устройство</translation>
 <translation id="3223531857777746191">Бутон за възстановяване на фабричните настройки</translation>
 <translation id="3225084153129302039">Стандартен виолетов аватар</translation>
 <translation id="3225319735946384299">Подписване на код</translation>
@@ -3339,6 +3343,7 @@
 <translation id="3473479545200714844">Екранна лупа</translation>
 <translation id="3474218480460386727">Използвайте до 99 букви за новите думи</translation>
 <translation id="3474624961160222204">Продължаване като <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Възползвайте се от средна икономия на памет. Разделите ви стават неактивни след по-дълъг период от време.</translation>
 <translation id="347785443197175480">Достъпът на <ph name="HOST" /> до камерата и микрофона ви да продължава да е разрешен</translation>
 <translation id="3479357084663933762">Деутераномалия</translation>
 <translation id="3479552764303398839">Не сега</translation>
@@ -4063,7 +4068,6 @@
 <translation id="3983586614702900908">устройства от неизвестен доставчик</translation>
 <translation id="3983764759749072418">Приложенията от Google Play Магазин имат достъп до това устройство.</translation>
 <translation id="3983769721878416534">Забавяне преди кликване</translation>
-<translation id="3983793589497399077">Кликнете или плъзнете на произволно място, за да търсите с Обектив</translation>
 <translation id="3984135167056005094">Без включване на имейл адреса</translation>
 <translation id="3984159763196946143">Демонстрационният режим не можа да стартира</translation>
 <translation id="3984431586879874039">Да се разреши ли на сайта достъп до данни за ключа ви за сигурност?</translation>
@@ -4100,6 +4104,7 @@
 <translation id="4010036441048359843">Включване на открояването</translation>
 <translation id="4010746393007464819">Налице е надстройка до Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001"><ph name="GET_IOS_APP_LINK" />, за да получите отметките си на мобилното си устройство.</translation>
+<translation id="4012268176861210196">Можете да фиксирате тази функция за лесен достъп</translation>
 <translation id="4014432863917027322">Да се поправи ли <ph name="EXTENSION_NAME" />?</translation>
 <translation id="4015163439792426608">Използвате разширения? <ph name="BEGIN_LINK" />Управлявайте ги<ph name="END_LINK" /> от едно лесно място.</translation>
 <translation id="4016762287427926315">Разрешенията, които дадете на <ph name="APP_NAME" />, ще бъдат предоставени и на това приложение. <ph name="BEGIN_LINK" />Управление<ph name="END_LINK" /></translation>
@@ -4403,6 +4408,7 @@
 <translation id="4261429981378979799">Разрешения за приложението</translation>
 <translation id="4262004481148703251">Отхвърляне на предупреждението</translation>
 <translation id="4263223596040212967">Проверете клавиатурната си подредба и опитайте отново.</translation>
+<translation id="4263470758446311292">Възползвайте се от максимална икономия на памет. Разделите ви стават неактивни след по-кратък период от време.</translation>
 <translation id="4265096510956307240">Потвърждаване, че сте вие</translation>
 <translation id="4265301768135164545">Можете също <ph name="BEGIN_LINK" />ръчно<ph name="END_LINK" /> да настроите потребителски профил за електронна SIM карта</translation>
 <translation id="426564820080660648">За проверка за актуализации, моля, използвайте Ethernet, Wi-Fi или мобилни данни.</translation>
@@ -4722,6 +4728,7 @@
 <translation id="4503748371388753124">Компютърът ви съдържа устройство за сигурност от типа „модул за надеждна платформа (TPM)“, което служи за реализиране на множество критични защитни функции в ChromeOS Flex. За да научите повече, посетете Помощния център на Chromebook: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{„Бисквитките“·са разрешени}=1{„Бисквитките“ са разрешени – 1 изключение}other{„Бисквитките“ са разрешени – {COUNT} изключения}}</translation>
 <translation id="4504940961672722399">Използвайте това разширение, като кликнете върху съответната икона или натиснете „<ph name="EXTENSION_SHORTCUT" />“.</translation>
+<translation id="4505469832694348179">Изтеглете Chrome с този QR код и влезте в профила си в Google.</translation>
 <translation id="450552327874992444">Думата вече е добавена</translation>
 <translation id="4507373251891673233">Блокирахте всички разширения от <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Кликнете върху „Добавяне на пряк път“</translation>
@@ -5057,6 +5064,7 @@
 <translation id="4768332406694066911">Имате идентифициращи ви сертификати от тези организации</translation>
 <translation id="4769632191812288342">Получавате стандартната защита</translation>
 <translation id="4770119228883592393">Изисква се разрешение. Натиснете ⌘ + Option + стрелката за надолу, за да отговорите</translation>
+<translation id="4770755495532014179">Използвайте тази парола на своя iPhone</translation>
 <translation id="4773112038801431077">Надстройване на Linux</translation>
 <translation id="477548766361111120">Разрешаване на разширението да чете и променя този сайт</translation>
 <translation id="4776311127346151860">Свързахте <ph name="DEVICE_NAME" /></translation>
@@ -5226,6 +5234,7 @@
 <translation id="4890399733764921729">Не бе установена връзка. Заключено от друг мобилен оператор.</translation>
 <translation id="4890773143211625964">Показване на разширените опции за принтера</translation>
 <translation id="4891089016822695758">Форум за бета версията</translation>
+<translation id="4891795846939730995">За да възстановите достъпа на това устройство до ключовете си за достъп, влезте в сайт или приложение със запазен ключ за достъп</translation>
 <translation id="4892229439761351791">Сайтът може да използва Bluetooth</translation>
 <translation id="4892328231620815052">Когато имате готовност, ще намерите списъка си за четене в „Отметки и списъци“</translation>
 <translation id="489258173289528622">Действие при неактивност, когато устройството работи на батерия</translation>
@@ -6456,6 +6465,7 @@
 <translation id="5846504156837627898">Управление на разрешенията за сайтовете</translation>
 <translation id="5846749317653566506">Променете настройките за корекция на цветове, така че цветовете да се различават</translation>
 <translation id="5846807460505171493">Инсталиране на актуализации и приложения. С продължаването си приемате, че това устройство може също автоматично да изтегля и инсталира актуализации и приложения от Google, оператора ви и производителя си, при което е възможно да използва мобилни данни. В някои от тези приложения може да се предлагат покупки.</translation>
+<translation id="5848054741303781539">Ръчно зададено, не се използва местоположение</translation>
 <translation id="5848319660029558352">Четене на глас и форматиране на текст</translation>
 <translation id="5849212445710944278">Вече е добавено</translation>
 <translation id="584945105664698226">Скорост на гласа</translation>
@@ -7154,7 +7164,6 @@
 <translation id="6383382161803538830">Режимът на четене не е налице за тази страница</translation>
 <translation id="638418309848716977">Поддържани връзки</translation>
 <translation id="6384275966486438344">Променете настройките си за търсене на: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Група без име – 1 раздел}other{Група без име – # раздела}}</translation>
 <translation id="6385149369087767061">Свържете се с интернет и опитайте отново</translation>
 <translation id="6385382178401976503">Карта: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Предупреждение: Подробното записване в регистрационни файлове е активирано. Файловете по-долу може да съдържат URL адреси или друга поверителна информация. Моля, прегледайте тези данни и се уверете, че изпращането им не ви притеснява.</translation>
@@ -7486,6 +7495,7 @@
 <translation id="6648911618876616409">Критична актуализация е готова за инсталиране. Влезте в профила си, за да започнете.</translation>
 <translation id="6649018507441623493">Една секунда...</translation>
 <translation id="6650206238642452078">Абониране за събития, свързани със системата ChromeOS</translation>
+<translation id="6650584564768559994">Възползвайте се от балансирана икономия на памет. Разделите ви стават неактивни след оптимален период от време.</translation>
 <translation id="665061930738760572">Отваряне в &amp;нов прозорец</translation>
 <translation id="6651237644330755633">Да се има доверие на този сертификат за идентифициране на уебсайтове</translation>
 <translation id="6651495917527016072">Синхронизирайте Wi-Fi мрежите с телефона си. <ph name="LINK_BEGIN" />Научете повече<ph name="LINK_END" /></translation>
@@ -7743,6 +7753,7 @@
 <translation id="6831043979455480757">Превод</translation>
 <translation id="6832218595502288407">Подравняване вляво</translation>
 <translation id="6833479554815567477">Разделът бе премахнат от групата „<ph name="GROUP_NAME" />“ – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Балансирано (препоръчително)</translation>
 <translation id="6835762382653651563">Моля, свържете се с интернет, за да актуализирате устройството си <ph name="DEVICE_TYPE" />.</translation>
 <translation id="683630338945552556">Използване и запазване на пароли в профила ви в Google</translation>
 <translation id="6839225236531462745">Грешка при изтриване на сертификат</translation>
@@ -9394,6 +9405,7 @@
 <translation id="8066444921260601116">Диалогов прозорец за връзка</translation>
 <translation id="8070572887926783747">Разрешение на <ph name="APP_NAME" /> за достъп до местоположението</translation>
 <translation id="8070662218171013510">Осезателна обратна връзка</translation>
+<translation id="8071033114691184017">Използвайте тази парола на своя iPhone</translation>
 <translation id="8071432093239591881">Отпечатване като изображение</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Данните на приложенията могат да бъдат всяка запазена от тях информация (въз основа на настройките за програмисти), включително контакти, съобщения и снимки.<ph name="END_PARAGRAPH1" />
 <ph name="BEGIN_PARAGRAPH2" />Данните в резервното копие не заемат от квотата на използваното от детето ви хранилище на Диск.<ph name="END_PARAGRAPH2" />
@@ -9961,6 +9973,7 @@
 <translation id="8482077254400484047">Управлявайте облика на неактивните раздели оттук</translation>
 <translation id="8483248364096924578">IP адрес</translation>
 <translation id="8486666913807228950">Причина: Инвертираното правило <ph name="REVERT_RULE" /> бе намерено в списъка „Задължително отваряне във“.</translation>
+<translation id="8487303289354211861">Функцията е фиксирана. Можете да осъществявате достъп до нея чрез новия бутон в лентата с инструменти</translation>
 <translation id="8487678622945914333">Увеличаване</translation>
 <translation id="8487699605742506766">Точка за достъп</translation>
 <translation id="8489156414266187072">Личните предложения се показват само в профила ви</translation>
@@ -10359,7 +10372,6 @@
 <translation id="8784626084144195648">Средна стойност при групирани данни</translation>
 <translation id="8785622406424941542">Писалка</translation>
 <translation id="8786824282808281903">Когато детето ви види тази икона, то може да използва отпечатъка си за идентификация или за одобряване на покупки.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Група без име – 1 раздел}other{Група без име – # раздела}}</translation>
 <translation id="8787752878731558379">Помогнете ни да подобрим Chrome, като ни кажете защо разрешихте „бисквитките“ на трети страни</translation>
 <translation id="8789898473175677810">Chrome е част от <ph name="LINK_BEGIN" />съвместна инициатива<ph name="LINK_END" /> за намаляване на проследяването в различни сайтове и поетапно оттегляне на „бисквитките“ на трети страни. Стремим се обаче да правим това отговорно, тъй като много сайтове разчитат на „бисквитките“ на трети страни, за да работят правилно. Например немалко сайтове използват такива „бисквитки“, за да улеснят влизането в профил, да поддържат вградени системи за чат и коментари и да осигуряват платежни услуги. Рекламодателите често използват „бисквитки“ на трети страни за по-добро персонализиране на рекламите. Това е от значение, тъй като сайтовете често разчитат на реклами, за да покриват разходите си и да осигуряват достъп без парично заплащане до онлайн съдържанието си.</translation>
 <translation id="8791157330927639737">Научете повече за актуализирането</translation>
@@ -10673,6 +10685,7 @@
 <translation id="9014674417732091912">Преместено на ред <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Създаване на резервно копие в Google Диск</translation>
 <translation id="9016827136585652292">превключване на екрана за поверителност</translation>
+<translation id="9017055559700464094">Функцията е фиксирана. Използвайте я отново от лентата с инструменти</translation>
 <translation id="90181708067259747">Дата на валидност: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Инсталирането завърши</translation>
 <translation id="901876615920222131">За да отворите отново групата, кликнете върху нея</translation>
@@ -10831,6 +10844,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />За най-добра практическа работа инсталирайте <ph name="DEVICE_OS" /> на вътрешния си диск. Можете да направите това и по-късно от екрана за вход.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Ако нямате готовност да инсталирате операционната система, можете да я изпробвате, като я стартирате от USB. По този начин ще запазите съществуващите си операционна система и данни, но може да забележите ограничения по отношение на хранилището и производителността.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Отваряне като фиксиран раздел</translation>
+<translation id="9122788874051694311">Този ключ за достъп да се запази ли извън режим „инкогнито“?</translation>
 <translation id="9123287046453017203">Устройството ви не е актуално</translation>
 <translation id="9125910124977405374">Премахване на <ph name="LANGUAGE_NAME" /> от списъка с езици, които се превеждат автоматично</translation>
 <translation id="9126149354162942022">Цвят на курсора</translation>
diff --git a/chrome/app/resources/generated_resources_bn.xtb b/chrome/app/resources/generated_resources_bn.xtb
index d635478d..ffeeed2 100644
--- a/chrome/app/resources/generated_resources_bn.xtb
+++ b/chrome/app/resources/generated_resources_bn.xtb
@@ -366,6 +366,7 @@
 <translation id="1260810365552581339">Linux-এ ডিস্ক স্টোরেজে হয়ত পর্যাপ্ত খালি জায়গা নেই। Linux ডিস্ক স্টোরেজে খালি জায়গা বাড়িয়ে, <ph name="LINK_START" />সেটিংস<ph name="LINK_END" /> থেকে আবার ফিরিয়ে আনার চেষ্টা করুন।</translation>
 <translation id="1261380933454402672">মাঝারি রকমের</translation>
 <translation id="126156426083987769">ডেমো মোড ডিভাইস লাইসেন্স নিয়ে সমস্যা হয়েছে।</translation>
+<translation id="1261885284931493480">ট্যাব সরাবেন ও গ্রুপ মুছবেন?</translation>
 <translation id="1263231323834454256">পড়ার তালিকা</translation>
 <translation id="1263733306853729545">প্রার্থী তালিকা পৃষ্ঠাতে সূচীবদ্ধ করার জন্য <ph name="MINUS" /> এবং <ph name="EQUAL" /> কী ব্যবহার করুন</translation>
 <translation id="126387934568812801">এই স্ক্রিনশট এবং খোলা ট্যাবের শীর্ষক অন্তর্ভুক্ত করুন</translation>
@@ -878,6 +879,7 @@
 <translation id="1634224622052500893">ওয়াই-ফাই নেটওয়ার্ক পাওয়া গেছে</translation>
 <translation id="1634783886312010422">আপনি কি <ph name="WEBSITE" />-এ আগে থেকেই এই পাসওয়ার্ড পরিবর্তন করেছেন?</translation>
 <translation id="1636212173818785548">ঠিক আছে</translation>
+<translation id="1636542522761359943">স্বাগতম, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />অ্যাপের সেভ করা (ডেভেলপার সেটিংসের উপর নির্ভর করে) পরিচিতি, মেসেজ ও ফটোর মতো যেকোনও ডেটাকে অ্যাপ ডেটা বলা হয়। আপনার Drive স্টোরেজ কোটার মধ্যে ব্যাক-আপ ডেটা ধরা হবে না।<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />আপনি সেটিংস থেকে এই পরিষেবা বন্ধ করে দিতে পারেন।<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">এই বুকমার্কটি আপনার iPhone এ পান</translation>
@@ -914,6 +916,7 @@
 <translation id="1652862280638399816">MacOS Keychain-এর মাধ্যমে Password Manager ব্যবহার করতে, Chromium আবার লঞ্চ করুন ও Keychain অ্যাক্সেস করার অনুমতি দিন। আবার চালু করার পরে আপনার ট্যাব আবার খোলা হবে।</translation>
 <translation id="1653958716132599769">গ্রুপ সংক্রান্ত ট্যাব</translation>
 <translation id="1654580009054503925">অনুরোধ দেখানোর অনুমতি নেই</translation>
+<translation id="1654713139320245449">কাস্ট করার মত কোনও জায়গা পাওয়া যায়নি। সাহায্য প্রয়োজন?</translation>
 <translation id="1656528038316521561">ব্যাকগ্রাউন্ডের অস্বচ্ছতা</translation>
 <translation id="1657406563541664238">Google-এ ব্যবহারের পরিসংখ্যান এবং ক্র্যাশ রিপোর্ট অটোমেটিক পাঠিয়ে <ph name="PRODUCT_NAME" />কে আরও ভালো করে তুলতে সাহায্য করুন</translation>
 <translation id="1657937299377480641">শিক্ষাগত রিসোর্স অ্যাক্সেস করার জন্য আবার সাইন-ইন করতে, অভিভাবকের কাছ থেকে অনুমতি চান</translation>
@@ -1642,12 +1645,14 @@
 <translation id="2187895286714876935">সার্ভার সার্টিফিকেট আমদানি করতে সমস্যা</translation>
 <translation id="2187906491731510095">এক্সটেনশনগুলি আপডেট করা হয়েছে</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> খুলুন</translation>
+<translation id="2188919919468240749">ট্যাব গ্রুপ মুছবেন?</translation>
 <translation id="2190069059097339078">ওয়াই-ফাই সার্টিফিকেট সংগ্রহকারী</translation>
 <translation id="219008588003277019">স্থানীয় গ্রাহক মডিউল: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(খালি)</translation>
 <translation id="2190967441465539539">ক্যামেরা ও মাইক্রোফোন অ্যাক্সেস করা যাবে না</translation>
 <translation id="2191754378957563929">চালু করা আছে</translation>
 <translation id="2192505247865591433">এর থেকে:</translation>
+<translation id="219283042927675668">গ্রুপে থাকা ট্যাব</translation>
 <translation id="2193365732679659387">বিশ্বস্ততার সেটিংস</translation>
 <translation id="2194856509914051091">যা যা দেখে নেওয়া প্রয়োজন</translation>
 <translation id="2195331105963583686">সেই সময়ের পরে এখনও আপনি এই <ph name="DEVICE_TYPE" /> ব্যবহার করতে পারবেন, কিন্তু এখানে সফ্টওয়্যার এবং নিরাপত্তা সংক্রান্ত অটোমেটিক আপডেট আর পাবেন না</translation>
@@ -1669,6 +1674,7 @@
 <translation id="2211043920024403606">প্রোফাইলের তথ্য</translation>
 <translation id="2211245494465528624">সিঙ্ক সংক্রান্ত বিকল্পগুলি ম্যানেজ করুন</translation>
 <translation id="221297410904507041">ইতিহাস, কুকি, ক্যাশে ও আরও অনেক কিছু মুছুন</translation>
+<translation id="2213410656650624348">মাঝারি</translation>
 <translation id="2214018885812055163">শেয়ার করা ফোল্ডার</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;১টি লাইন দেখানো হয়নি&gt;}one{&lt;<ph name="NUMBER_OF_LINES" />টি লাইন দেখানো হয়নি&gt;}other{&lt;<ph name="NUMBER_OF_LINES" />টি লাইন দেখানো হয়নি&gt;}}</translation>
 <translation id="2215070081105889450">অডিও শেয়ার করতে, পরিবর্তে ট্যাব বা স্ক্রিন শেয়ার করুন</translation>
@@ -1870,6 +1876,7 @@
 <translation id="2350133097354918058">আবার লোড করা হয়েছে</translation>
 <translation id="2350182423316644347">অ্যাপ্লিকেশান শুরু করা হচ্ছে...</translation>
 <translation id="235028206512346451">আপনি ডিভাইসের সামনে থেকে সরে গেলে, অটোমেটিক আপনার স্ক্রিন লক হয়ে যাবে। আপনি ডিভাইসের সামনে আবার ফিরে এলে, আপনার স্ক্রিন দীর্ঘসময়ের জন্য চালু হয়ে যাবে। আপনি যদি লক স্ক্রিন ব্যবহার না করেন, তাহলে আপনার ডিভাইসটি লকের পরিবর্তে বন্ধ হয়ে যাবে।</translation>
+<translation id="2352305801620974284">এই ডিভাইসে আপনি সাইন-ইন করার সময়, নিজের Google অ্যাকাউন্ট থেকে পাসওয়ার্ড ও আরও অনেক কিছু পান</translation>
 <translation id="2352662711729498748">&lt; ১ এমবি</translation>
 <translation id="2352810082280059586">লক স্ক্রিন নোটগুলি নিজে থেকেই <ph name="LOCK_SCREEN_APP_NAME" /> এ সেভ হয়ে যায়। সবথেকে সাম্প্রতিক নোটটি লক স্ক্রিনে রয়ে যায়।</translation>
 <translation id="2353297238722298836">ক্যামেরা এবং মাইক্রোফোন ব্যবহারে অনুমতি দেওয়া হয়েছে</translation>
@@ -2051,6 +2058,7 @@
 <translation id="2473195200299095979">এই পৃষ্ঠাটি অনুবাদ করুন</translation>
 <translation id="2475982808118771221">একটি ত্রুটি ঘটেছে</translation>
 <translation id="247616523300581745">এইসব ফাইল লুকান</translation>
+<translation id="2476435723907345463">পাসকীয়ের অ্যাক্সেস সরানো হয়েছে</translation>
 <translation id="2476901513051581836">অফলাইন স্টোরেজের সাইজ না জানা পর্যন্ত স্টোরেজ মোছা যাচ্ছে না।</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" /> আনইনস্টল করার জন্য Windows বন্ধ করুন।</translation>
 <translation id="2477065602824695373">আপনি একাধিক সুইচ সেট আপ করার জন্য, অটো-স্ক্যান বন্ধ হয়ে গেছে।</translation>
@@ -2079,6 +2087,7 @@
 <translation id="249113932447298600">দুঃখিত, <ph name="DEVICE_LABEL" /> ডিভাইসটি এই মুহুর্তে সমর্থিত নয়৷</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" />-এর জন্য ভয়েসের প্রিভিউ দেখুন</translation>
 <translation id="2492461744635776704">সার্টিফিকেট স্বাক্ষর করার অনুরোধ তৈরি করা হচ্ছে</translation>
+<translation id="2492964937550251173">ট্যাব বন্ধ করবেন ও গ্রুপ মুছবেন?</translation>
 <translation id="249330843868392562">টেক্সট টু স্পিচ সেটিংস খুলুন</translation>
 <translation id="2494555621641843783">Steam ইনস্টল করা যাচ্ছে না</translation>
 <translation id="2495141202137516054">আপনার Drive থেকে</translation>
@@ -2245,8 +2254,10 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> ফাইলটি নিরাপদে ডাউনলোড করা যাচ্ছে না।</translation>
 <translation id="2620245777360407679">ডিভাইস বর্তমানে হটস্পটের সাথে কানেক্ট করা রয়েছে</translation>
 <translation id="2620436844016719705">সিস্টেম</translation>
+<translation id="262087792756666314">সহজে অ্যাক্সেসের জন্য এই ফিচার পিন করা যেতে পারে। এটি করতে, পাশের প্যানেলের একদম উপরে 'পিন' বোতামে ক্লিক করুন</translation>
 <translation id="2620900772667816510">ব্লুটুথ সুপার রেজোলিউশন</translation>
 <translation id="262154978979441594">Google Assistant-এর ভয়েস মডেলকে প্রশিক্ষণ দিন</translation>
+<translation id="2622280935687585828">বন্ধ করা সাইট থেকে <ph name="SITE_NAME" /> সরান</translation>
 <translation id="26224892172169984">প্রোটোকল পরিচালনার জন্য কোনও সাইটকে মঞ্জুরি দেবেন না</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI ডিভাইস কন্ট্রোল ও রিপ্রোগ্রাম করা যায়</translation>
@@ -2420,6 +2431,7 @@
 <translation id="2743387203779672305">ক্লিপবোর্ডে কপি করুন</translation>
 <translation id="274362947316498129">কোনও অ্যাপ <ph name="DEVICE_NAME" /> অ্যাক্সেস করা চেষ্টা করছে। অ্যাক্সেস করার অনুমতি দিতে, <ph name="DEVICE_NAME" />-এর প্রাইভেসি সুইচ বন্ধ করে দিন।</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313">আপনার <ph name="DEVICE_NAME" />-এ কাস্ট সংক্রান্ত অনুরোধ গ্রহণ করছেন কিনা তা নিশ্চিত করুন।</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" />এ সাইন-ইন করুন</translation>
 <translation id="2749836841884031656">সিম (SIM)</translation>
 <translation id="2749881179542288782">বানান সহ ব্যাকরণ চেক করুন</translation>
@@ -2790,6 +2802,7 @@
 <translation id="3021066826692793094">প্রজাপতি</translation>
 <translation id="3021678814754966447">ফ্রেম উৎস &amp;দেখুন</translation>
 <translation id="3021902017511220299">স্ক্যান করা যায়নি। আপনার অ্যাডমিনিস্ট্রেটর এই অ্যাকশন ব্লক করে দিয়েছেন।</translation>
+<translation id="3022068420678496307">এর ফলে, এই Google অ্যাকাউন্ট ব্যবহার করে Chrome-এ সাইন-ইন করা আছে, এমন সব ডিভাইস থেকে গ্রুপ মুছে দেওয়া হবে।</translation>
 <translation id="3022361196600037287">Chromebook থেকে <ph name="DEVICE" /> সরিয়ে দেওয়া হবে এবং <ph name="PRIMARY_EMAIL" />-এ সেভ করা হবে না।</translation>
 <translation id="3022978424994383087">বুঝতে পারিনি।</translation>
 <translation id="3023464535986383522">বাছুন ও শুনুন</translation>
@@ -3020,6 +3033,7 @@
 <translation id="3222066309010235055">পূর্বউপস্থাপন: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989"><ph name="USB_VM_NAME" />-এর সাথে কানেক্ট করুন</translation>
 <translation id="3222857603094643834">Google Lens ব্যবহার করে এই পৃষ্ঠায় যেকোনও কিছু সার্চ করুন</translation>
+<translation id="3223109931751684474">এই ডিভাইসের জন্য আপনার পাসকী থেকে অ্যক্সেস সরান</translation>
 <translation id="3223531857777746191">রিসেট করার বোতাম</translation>
 <translation id="3225084153129302039">ডিফল্ট রক্তবর্ণ অবতার</translation>
 <translation id="3225319735946384299">Code Signing</translation>
@@ -3344,6 +3358,7 @@
 <translation id="3473479545200714844">স্ক্রিন ম্যাগনিফায়ার</translation>
 <translation id="3474218480460386727">নতুন শব্দের জন্য ৯৯টি অথবা তার চেয়ে কম বর্ণ ব্যবহার করুন</translation>
 <translation id="3474624961160222204"><ph name="NAME" /> হিসাবে চালিয়ে যান</translation>
+<translation id="3477772589943384839">মডারেট মেমরি সেভ করার সুবিধা পান। দীর্ঘ সময় ব্যবহার না করলে, আপনার ট্যাব অ্যাক্টিভ থাকবে না।</translation>
 <translation id="347785443197175480">আপনার ক্যামেরা এবং মাইক্রোফোন অ্যাক্সেস করতে <ph name="HOST" /> এর মঞ্জুরি অবিরত রাখুন</translation>
 <translation id="3479357084663933762">ডিউটারনোম্যালি</translation>
 <translation id="3479552764303398839">এখনই নয়</translation>
@@ -4066,7 +4081,6 @@
 <translation id="3983586614702900908">একটি অজানা বিক্রেতা থেকে ডিভাইসগুলি</translation>
 <translation id="3983764759749072418">Play Store অ্যাপ্লিকেশন এই ডিভাইস অ্যাক্সেস করতে পারে।</translation>
 <translation id="3983769721878416534">ক্লিক করার আগে বিলম্ব</translation>
-<translation id="3983793589497399077">Lens ব্যবহার করে সার্চ করার জন্য যেকোনও জায়গাতে ক্লিক করুন অথবা টেনে আনুন</translation>
 <translation id="3984135167056005094">ইমেল আইডি দেবেন না</translation>
 <translation id="3984159763196946143">ডেমো মোড শুরু করা যায়নি</translation>
 <translation id="3984431586879874039">এই সাইটকে আপনার নিরাপত্তা কী দেখতে দিতে চান?</translation>
@@ -4103,6 +4117,7 @@
 <translation id="4010036441048359843">হাইলাইট চালু করুন</translation>
 <translation id="4010746393007464819">Debian 12 (Bookworm)-এর আপগ্রেড উপলভ্য আছে</translation>
 <translation id="4010917659463429001">আপনার মোবাইল ডিভাইসে আপনার বুকমার্কগুলি পেতে, <ph name="GET_IOS_APP_LINK" />।</translation>
+<translation id="4012268176861210196">সহজে অ্যাক্সেসের জন্য এই ফিচার আপনি পিন করতে পারবেন</translation>
 <translation id="4014432863917027322">"<ph name="EXTENSION_NAME" />" মেরামত করবেন?</translation>
 <translation id="4015163439792426608">ব্রাউজারে এক্সটেনশন ব্যবহার করছেন? একটি জায়গা থেকে সহজেই <ph name="BEGIN_LINK" />আপনার এক্সটেনশন ম্যানেজ করুন<ph name="END_LINK" />।</translation>
 <translation id="4016762287427926315"><ph name="APP_NAME" />-এর জন্য আপনি যেসব অনুমতি দেন সেইসব অনুমতি এই অ্যাপও পেয়ে যাবে। <ph name="BEGIN_LINK" />ম্যানেজ করুন<ph name="END_LINK" /></translation>
@@ -4188,6 +4203,7 @@
 <translation id="4078903002989614318">সাজানো এবং তালিকা বিকল্প</translation>
 <translation id="4079140982534148664">উন্নত বানান পরীক্ষা ব্যবহার করুন</translation>
 <translation id="4082333918978320301">কোনও ওয়েবসাইটকে আপনার মাইক্রোফোন ব্যবহার করার অনুমতি দেওয়া হয়নি</translation>
+<translation id="4083735423615351075">এই ডিভাইসে ট্যাবটি খোলা থাকবে, তবে এই Google অ্যাকাউন্ট ব্যবহার করে Chrome-এ সাইন-ইন করা আছে, এমন সব ডিভাইস থেকে গ্রুপ মুছে দেওয়া হবে।</translation>
 <translation id="4084682180776658562">বুকমার্ক</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> বন্ধ করুন</translation>
 <translation id="4085298594534903246">এই পৃষ্ঠাতে জাভাস্ক্রিপ্ট ব্লক করা হয়েছে৷</translation>
@@ -4197,6 +4213,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">ডানদিকে দেখান</translation>
+<translation id="4088879333319441249">ট্যাব গ্রুপ, গ্রুপ থেকে সরিয়ে দেবেন?</translation>
 <translation id="4089235344645910861">সেটিংস সেভ করা হয়েছে। সিঙ্ক শুরু করা হয়েছে।</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">যাচাইকৃত অ্যাক্সেস সক্ষম করুন</translation>
@@ -4407,6 +4424,7 @@
 <translation id="4261429981378979799">এক্সটেনশনকে দেওয়া অনুমতি</translation>
 <translation id="4262004481148703251">সতর্কতা বাতিল করুন</translation>
 <translation id="4263223596040212967">আপনার কীবোর্ড লে-আউট ভাল করে দেখে নিয়ে আবার চেষ্টা করুন।</translation>
+<translation id="4263470758446311292">সর্বোচ্চ মেমরি সেভ করার সুবিধা পান। অল্প সময় ব্যবহার না করলে আপনার ট্যাব অ্যাক্টিভ থাকবে না।</translation>
 <translation id="4265096510956307240">নিজের পরিচয় যাচাই করিয়ে নিন</translation>
 <translation id="4265301768135164545">তাছাড়া, আপনি <ph name="BEGIN_LINK" />ম্যানুয়ালি<ph name="END_LINK" /> ই-সিম প্রোফাইলও সেট-আপ করতে পারবেন</translation>
 <translation id="426564820080660648">আপডেটগুলি পরীক্ষা করার জন্য, অনুগ্রহ করে Ethernet, ওয়াই-ফাই বা মোবাইল ডেটা ব্যবহার করুন৷</translation>
@@ -4726,6 +4744,7 @@
 <translation id="4503748371388753124">আপনার কম্পিউটারে একটি বিশ্বস্ত প্ল্যাটফর্ম মডিউল (TPM) নিরাপত্তা ডিভাইস রয়েছে, যা ChromeOS Flex-এ অনেকগুলি জটিল সুরক্ষা ফিচার প্রয়োগ করতে ব্যবহৃত হয়। আরও জানতে Chromebook সহায়তা কেন্দ্রে যান: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{কুকি ব্যবহার করার অনুমতি দেওয়া আছে}=1{১টি ছাড়া বাকি সব সাইটকে কুকি ব্যবহার করার অনুমতি দেওয়া আছে}one{{COUNT}টি ছাড়া বাকি সব সাইটকে কুকি ব্যবহার করার অনুমতি দেওয়া আছে}other{{COUNT}টি ছাড়া বাকি সব সাইটকে কুকি ব্যবহার করার অনুমতি দেওয়া আছে}}</translation>
 <translation id="4504940961672722399">এই আইকনে ক্লিক করে বা <ph name="EXTENSION_SHORTCUT" /> টিপে এই এক্সটেনশনটি ব্যবহার করুন৷</translation>
+<translation id="4505469832694348179">এই QR কোডের সাহায্যে Chrome ডাউনলোড করুন এবং আপনর Google অ্যাকাউন্টে সাইন-ইন করুন।</translation>
 <translation id="450552327874992444">শব্দটি আগে থেকে যোগ করা হয়েছে</translation>
 <translation id="4507373251891673233"><ph name="HOST" />-এর সব এক্সটেনশন আপনি ব্লক করেছেন</translation>
 <translation id="4507401683427517298">“শর্টকাট যোগ করুন” বিকল্পে ক্লিক করুন</translation>
@@ -5062,6 +5081,7 @@
 <translation id="4768332406694066911">আপনার পরিচয় শনাক্ত করে এমন সংস্থাগুলি থেকে শংসাপত্র আপনার কাছে আছে</translation>
 <translation id="4769632191812288342">আপনি স্ট্যান্ডার্ড সুরক্ষা পাচ্ছেন</translation>
 <translation id="4770119228883592393">অনুমতি চাওয়া হয়েছে, উত্তর দিতে ⌘ + 'বিকল্প' বোতাম + 'নিম্নমুখী তীরচিহ্ন' বোতাম প্রেস করুন</translation>
+<translation id="4770755495532014179">আপনার iPhone-এ এই পাসওয়ার্ড ব্যবহার করুন</translation>
 <translation id="4773112038801431077">Linux আপগ্রেড করুন</translation>
 <translation id="477548766361111120">এই সাইট দেখতে ও পরিবর্তন করার জন্য এক্সটেনশনকে অনুমতি দিন</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> কানেক্ট করা হয়েছে</translation>
@@ -5231,6 +5251,7 @@
 <translation id="4890399733764921729">কানেক্ট করা যায়নি। অন্য কোনও মোবাইল পরিষেবা প্রদানকারী লক করেছে।</translation>
 <translation id="4890773143211625964">উন্নত প্রিন্ট বিকল্পগুলি দেখান</translation>
 <translation id="4891089016822695758">বিটা ফোরাম</translation>
+<translation id="4891795846939730995">এই ডিভাইসকে আপনার পাসকীতে অ্যাক্সেস দেওয়ার জন্য, সেভ করা পাসকী ব্যবহার করে কোনও অ্যাপ বা সাইটে সাইন-ইন করুন</translation>
 <translation id="4892229439761351791">সাইট ব্লুটুথ ব্যবহার করতে পারে</translation>
 <translation id="4892328231620815052">আপনি রেডি থাকলে, আপনার বুকমার্ক ও তালিকায় নিজের পড়ার তালিকা খুঁজুন</translation>
 <translation id="489258173289528622">অ্যাক্টিভ না থাকা অবস্থায় ব্যাটারি ব্যবহার করার সময়</translation>
@@ -5676,6 +5697,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />" সক্ষম করবেন?</translation>
 <translation id="5243522832766285132">কয়েক মুহূর্তের মধ্যে আবার চেষ্টা করুন</translation>
 <translation id="5244234799035360187">এখন Files অ্যাপে OneDrive দেখা যাবে</translation>
+<translation id="5244466461749935369">এখনকার মতো রেখে দিন</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> এ সিঙ্ক হচ্ছে</translation>
 <translation id="5245610266855777041">একটি স্কুল অ্যাকাউন্ট দিয়ে কাজ শুরু করা যাক</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> ক্র্যাশ করেছে৷ অ্যাপ পুনঃসূচনা করতে এই বেলুনটি ক্লিক করুন৷</translation>
@@ -5944,6 +5966,7 @@
 <translation id="5453829744223920473">আপনার সন্তান ক্লাসে যেভাবে তাদের সবকটি স্কুলের অ্যাপ, বুকমার্ক ও রিসোর্স ব্যবহার করে, সেভাবেই ব্যবহার করতে পারবে। এক্ষেত্রে স্কুল সাধারণ নিয়মাবলী ঠিক করে দেবে।</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> সহ</translation>
 <translation id="545484289444831485">আরও সার্চ ফলাফল দেখুন</translation>
+<translation id="5457082343331641453">আপনার সার্চে যোগ করুন</translation>
 <translation id="5457113250005438886">ভুল</translation>
 <translation id="5457459357461771897">আপনার কম্পিউটার থেকে ফটো, সঙ্গীত ও অন্যান্য মিডিয়া পড়ুন এবং মুছুন</translation>
 <translation id="5458214261780477893">ডিভোরাক</translation>
@@ -6422,6 +6445,7 @@
 <translation id="5816434091619127343">অনুরোধ করা প্রিন্টার পরিবর্তন করলে তা প্রিন্টার ব্যবহারের সুবিধা অব্যবহারযোগ্য করে তুলবে।</translation>
 <translation id="581659025233126501">সিঙ্ক চালু করুন</translation>
 <translation id="5817918615728894473">যুক্ত করুন</translation>
+<translation id="5817963443108180228"><ph name="PROFILE_NAME" />, আপনাকে আবার স্বাগত জানাই</translation>
 <translation id="581911254119283028">সব অ্যাপ্লিকেশন</translation>
 <translation id="5821565227679781414">শর্টকাট তৈরি করুন</translation>
 <translation id="5824976764713185207">পৃষ্ঠা লোড হওয়ার পর সেটি অটোমেটিক পড়ে</translation>
@@ -6461,6 +6485,7 @@
 <translation id="5846504156837627898">সাইট সংক্রান্ত অনুমতি ম্যানেজ করুন</translation>
 <translation id="5846749317653566506">রঙ সংশোধন করার সেটিংস অ্যাডজাস্ট করুন যাতে নিশ্চিত করা যায় যে রঙ স্বতন্ত্র</translation>
 <translation id="5846807460505171493">আপডেট এবং অ্যাপ ইনস্টল করুন। চালিয়ে যাওয়ার অর্থ, আপনি সম্মতি দিচ্ছেন যে, এই ডিভাইসটি অটোমেটিক Google, আপনার পরিষেবা প্রদানকারী এবং আপনার ডিভাইসের প্রস্তুতকারকের থেকে হয়ত মোবাইল ডেটা ব্যবহার করে অ্যাপ এবং আপডেট ডাউনলোড করে ইনস্টল করতে পারে। এই অ্যাপগুলির মধ্যে কয়েকটিতে অ্যাপ-মধ্যস্থ কেনাকাটার সুবিধা থাকতে পারে।</translation>
+<translation id="5848054741303781539">ম্যানুয়ালি সেট করা হয়েছে, লোকেশনের তথ্য ব্যবহার করা হয়নি</translation>
 <translation id="5848319660029558352">জোরে পড়ার এবং টেক্সট ফরম্যাট করার সুবিধা</translation>
 <translation id="5849212445710944278">আগেই যোগ করা হয়েছে</translation>
 <translation id="584945105664698226">ভয়েস স্পিড</translation>
@@ -7022,6 +7047,7 @@
 <translation id="6265159465845424232">Microsoft OneDrive-এ Microsoft-এর ফাইল কপি করা বা সরানোর আগে জিজ্ঞেস করুন</translation>
 <translation id="6265687851677020761">পোর্ট সরান</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" />-এর সাথে কানেক্ট করা হচ্ছে</translation>
+<translation id="6266984048393265562">প্রোফাইল কাস্টমাইজ করুন</translation>
 <translation id="6267166720438879315">নিজেকে <ph name="HOST_NAME" /> এ প্রমাণীকৃত করতে একটি সার্টিফিকেট বেছে নিন</translation>
 <translation id="6268252012308737255"><ph name="APP" /> দিয়ে খুলুন</translation>
 <translation id="6270309713620950855">মিউট নাজ</translation>
@@ -7160,7 +7186,6 @@
 <translation id="6383382161803538830">পড়ার মোড এই পৃষ্ঠায় উপলভ্য নেই</translation>
 <translation id="638418309848716977">কাজ করে এমন লিঙ্ক</translation>
 <translation id="6384275966486438344">আপনার সার্চের সেটিংস এ পরিবর্তন করুন: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{নামবিহীন গ্রুপ - ১টি ট্যাব}one{নামবিহীন গ্রুপ - #টি ট্যাব}other{নামবিহীন গ্রুপ - #টি ট্যাব}}</translation>
 <translation id="6385149369087767061">ইন্টারনেটে কানেক্ট করে আবার চেষ্টা করুন</translation>
 <translation id="6385382178401976503">কার্ড: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">সতর্কতা - বিস্তারিত লগিং চালু করা হয়েছে; নিচের লগে ইউআরএল ও অন্যান্য সংবেদনশীল তথ্য থাকতে পারে। তাই সেটি ভালভাবে পর্যালোচনা করুন এবং জমা করতে চান কিনা তা ভেবে দেখুন।</translation>
@@ -7239,6 +7264,7 @@
 <translation id="6445450263907939268">এই পরিবর্তনগুলি না চাইলে আপনি আপনার পূর্ববর্তী সেটিংস পুনরুদ্ধার করতে পারেন।</translation>
 <translation id="6446213738085045933">ডেস্কটপ শর্টকাট তৈরি করুন</translation>
 <translation id="6447842834002726250">কুকিজ</translation>
+<translation id="6449554712554071184">এর ফলে আপনার ডিভাইস থেকে গ্রুপ স্থায়ীভাবে মুছে যাবে।</translation>
 <translation id="6450876761651513209">আপনার গোপনীয়তা-সংক্রান্ত সেটিংস পরিবর্তন করুন</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> এবং অন্য ১টি ট্যাব}one{<ph name="PAGE_TITLE" /> এবং অন্য #টি ট্যাব}other{<ph name="PAGE_TITLE" /> এবং অন্য #টি ট্যাব}}</translation>
 <translation id="6451689256222386810">আপনি যদি আপনার পাসফ্রেজ ভুলে যান বা এই সেটিং পরিবর্তন করতে চান, তাহলে <ph name="BEGIN_LINK" />সিঙ্ক রিসেট করুন<ph name="END_LINK" />।</translation>
@@ -7385,6 +7411,7 @@
 <translation id="6556866813142980365">আবার করুন</translation>
 <translation id="6556903358015358733">থিম এবং ওয়ালপেপার</translation>
 <translation id="6557290421156335491">আমার শর্টকাট</translation>
+<translation id="6560061709899140565">অন্যান্য কাস্ট সেশন দেখুন</translation>
 <translation id="6560151649238390891">সাজেশন যোগ করা হয়েছে</translation>
 <translation id="6561726789132298588">লিখুন</translation>
 <translation id="6562117348069327379">ডাউনলোড ডিরেক্টরিতে সিস্টেম লগ সেভ করুন।</translation>
@@ -7476,6 +7503,7 @@
 <translation id="6635674640674343739">নেটওয়ার্ক কানেকশন সেট-আপ করা যাচ্ছে না। আপনার নেটওয়ার্ক কানেকশন চেক করে আবার চেষ্টা করুন।</translation>
 <translation id="663569763553406962">কোন কোন এক্সটেনশন, একটি সাইট দেখতে বা পরিবর্তন করতে পারবে তা দেখুন</translation>
 <translation id="6635944431854494329">সেটিংস &gt; অ্যাডভান্সড &gt; নিজে থেকে Google-এ ডায়গনস্টিক ও ব্যবহারের ডেটা পাঠান বিকল্পে গিয়ে মালিক এই ফিচারটি নিয়ন্ত্রণ করতে পারেন।</translation>
+<translation id="6636572589916466933">আপনার <ph name="DEVICE_NAME" />-এ কাস্ট সংক্রান্ত অনুরোধ গ্রহণ করুন।</translation>
 <translation id="6636623428211296678">নিচে দেওয়া আরও সেটিংস দেখুন অথবা এখনই শেষ করুন</translation>
 <translation id="6639554308659482635">SQLite স্মৃতি</translation>
 <translation id="6640268266988685324">ট্যাব খুলুন</translation>
@@ -7494,6 +7522,7 @@
 <translation id="6648911618876616409">একটি গুরুত্বপূর্ণ আপডেট ইনস্টল করার জন্য তৈরি। শুরু করতে সাইন-ইন করুন।</translation>
 <translation id="6649018507441623493">একটু অপেক্ষা করুন…</translation>
 <translation id="6650206238642452078">ChromeOS সিস্টেম ইভেন্টে সাবস্ক্রাইব করুন</translation>
+<translation id="6650584564768559994">ব্যালেন্স মেমরি সেভ করুন। কিছু সময় পর্যন্ত ব্যবহার না করলে আপনার ট্যাব অ্যাক্টিভ থাকে না।</translation>
 <translation id="665061930738760572">&amp;নতুন উইন্ডোতে খুলুন</translation>
 <translation id="6651237644330755633">ওয়েবসাইটগুলিকে শনাক্ত করার জন্য এই শংসপত্রটিকে বিশ্বাস করুন</translation>
 <translation id="6651495917527016072">আপনার ফোনের সাথে ওয়াই-ফাই নেটওয়ার্ক সিঙ্ক করুন। <ph name="LINK_BEGIN" />আরও জানুন<ph name="LINK_END" /></translation>
@@ -7751,6 +7780,7 @@
 <translation id="6831043979455480757">অনুবাদ</translation>
 <translation id="6832218595502288407">বাঁদিকে সারিবদ্ধ করুন</translation>
 <translation id="6833479554815567477">এই গ্রুপ থেকে ট্যাব সরানো হয়েছে: <ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">ব্য়ালেন্স (সাজেস্ট করা হয়েছে)</translation>
 <translation id="6835762382653651563">আপনার <ph name="DEVICE_TYPE" /> আপডেট করার জন্য দয়া করে ইন্টারনেটে সংযুক্ত হোন।</translation>
 <translation id="683630338945552556">আপনার Google অ্যাকাউন্টে পাসওয়ার্ড ব্যবহার ও সেভ করুন</translation>
 <translation id="6839225236531462745">সার্টিফিকেট মুছতে সমস্যা</translation>
@@ -8159,6 +8189,7 @@
 <translation id="715396040729904728">লঞ্চার + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">আপনার মতামত শেয়ার করুন বা সমস্যা বর্ণনা করুন। সম্ভব হলে, আপনার সমস্য়া শুরু থেকে পর্যায়ক্রমে বোঝার জন্য প্রয়োজনীয় ধাপগুলি এখানে লিখুন।</translation>
 <translation id="7154130902455071009">আপনার সূচনা পৃষ্ঠাকে এতে পরিবর্তন করুন: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">আরও ভালো কোয়ালিটির ভিডিও পান এবং ব্যাটারির আয়ু সাশ্রয় করুন। শুধুমাত্র আপনার Cast চালু আছে এমন স্ক্রিনে ভিডিও চলবে।</translation>
 <translation id="7159953856712257647">ডিফল্ট হিসেবে ইনস্টল করা হয়েছে</translation>
 <translation id="7160182524506337403">আপনি এখন আপনার ফোনের বিজ্ঞপ্তি দেখতে পারেন</translation>
 <translation id="7165263843655074092">এই ডিভাইসে আপনি স্টান্ডার্ড নিরাপত্তামূলক সুরক্ষা পাচ্ছেন</translation>
@@ -9016,6 +9047,7 @@
 <translation id="7788948939674438635">সাইটকে আপনার কীবোর্ড লক করার অনুমতি দেবেন না</translation>
 <translation id="7789963078219276159">স্টার্ট পেজের ব্যাকগ্রাউন্ড পরিবর্তন করে <ph name="CATEGORY" /> করা হয়েছে।</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">এই Chromebook-এর ফাইল</translation>
 <translation id="7791269138074599214">ইনপুট পদ্ধতি</translation>
 <translation id="7791429245559955092">এই অ্যাপ্লিকেশন আপনার বর্তমানে ব্যবহার করা Chrome প্রোফাইলে ইনস্টল করা হবে</translation>
 <translation id="7791436592012979144">রিভার্স স্ক্রলিং চালু করা হয়েছে</translation>
@@ -9045,6 +9077,7 @@
 <translation id="7810202088502699111">এই পৃষ্ঠাতে পপ-আপগুলি ব্লক করা হয়েছে৷</translation>
 <translation id="7810367892333449285">আপনার এন্ট্রির ফর্ম্যাট হতে হবে <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ ঠিকানা<ph name="LPA_2" />$<ph name="LPA_3" />ঐচ্ছিক মিল থাকা আইডি<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">আবার চেষ্টা করুন বা আগে তৈরি হওয়া নিচের থিম থেকে বেছে নিন।</translation>
+<translation id="7814090115158024843">এইসব সাইটে কখনও লেখার জন্য সহায়তা অফার করবেন না</translation>
 <translation id="7814458197256864873">&amp;কপি করুন</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" />-এর জন্য শর্টকাট <ph name="SHORTCUT" /> এডিট করুন</translation>
@@ -9276,8 +9309,10 @@
 <translation id="7974936243149753750">ওভারস্ক্যান</translation>
 <translation id="7975504106303186033">আপনাকে এই Chrome Education ডিভাইসটি একটি এডুকেশন অ্যাকাউন্টে এনরোল করতে হবে। নতুন অ্যাকাউন্টে সাইন-আপ করতে, g.co/workspace/edusignup লিঙ্কে যান।</translation>
 <translation id="7977451675950311423">আপনি যদি এমন কোনও পাসওয়ার্ড ব্যবহার করেন যা ডেটার নিরাপত্তা লঙ্ঘনের কারণে সুরক্ষিত নয়, সেক্ষেত্রে এটি আপনাকে সতর্ক করে।</translation>
+<translation id="797824194429476746">এই ডিভাইসে ট্যাব খোলা থাকবে কিন্তু গ্রুপ স্থায়ীভাবে মুছে ফেলা হবে।</translation>
 <translation id="7978412674231730200">ব্যক্তিগত কী</translation>
 <translation id="7978450511781612192">এটি আপনাকে আপনার Google অ্যাকাউন্ট থেকে সাইন-আউট করিয়ে দেবে। আপনার বুকমার্ক, ইতিহাস, পাসওয়ার্ড এবং আরও অনেক কিছু আর সিঙ্ক করা হবে না।</translation>
+<translation id="7980066177668669492">Base64-এনকোড করা ASCII, একাধিক সার্টিফিকেট</translation>
 <translation id="7980084013673500153">সম্পত্তি আইডি: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" />-এর জন্য সেভ করা পাসকী ব্যবহার করুন</translation>
 <translation id="7981662863948574132">ডিভাইস EID ও QR কোডের পপ-আপ দেখুন</translation>
@@ -9401,6 +9436,7 @@
 <translation id="8066444921260601116">কানেকশন ডায়ালগ</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> লোকেশন অ্যাক্সেস করার অনুমতি</translation>
 <translation id="8070662218171013510">হ্যাপটিক প্রতিক্রিয়া</translation>
+<translation id="8071033114691184017">আপনার iPhone-এ এই পাসওয়ার্ড ব্যবহার করুন</translation>
 <translation id="8071432093239591881">ছবি হিসেবে প্রিন্ট করুন</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />অ্যাপ ডেটা এমন যেকোনও ডেটা যা কোনও অ্যাপ (ডেভেলপারের সেটিংসের উপর ভিত্তি করে) সেভ করে রাখে যেমন - পরিচিতি, মেসেজ এবং ফটোর মতো ডেটা।<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ব্যাক-আপ ডেটা আপনার সন্তানের ড্রাইভ স্টোরেজের কোটার মধ্যে ধরা হবে না।<ph name="END_PARAGRAPH2" />
@@ -9689,6 +9725,7 @@
 <translation id="8276242035951017580">কোনও অ্যাপকেই আপনার ক্যামেরা ব্যবহার করার অনুমতি দেওয়া হয়নি</translation>
 <translation id="8276560076771292512">ক্যাশে খালি করুন ও কঠিন রলোড</translation>
 <translation id="8276850948802942358">কোনও সাইটকে থার্ড-পার্টি কুকি ব্যবহার করার জন্য সাময়িক অনুমতি দেওয়া সম্পর্কে আরও জানুন</translation>
+<translation id="8277907305629781277">আপনি <ph name="DATE" />-এ এই পাসকী তৈরি করেছেন</translation>
 <translation id="8280267190418431666">আপনার ভাষায় ওয়েবসাইট</translation>
 <translation id="828180235270931531">উপলভ্য অন্যান্য প্রিন্টার</translation>
 <translation id="8281886186245836920">এড়িয়ে যান</translation>
@@ -9968,6 +10005,7 @@
 <translation id="8482077254400484047">এখান থেকে বন্ধ ট্যাবের লুক ম্যানেজ করুন</translation>
 <translation id="8483248364096924578">আইপি অ্যাড্রেস</translation>
 <translation id="8486666913807228950">কারণ: "জোর করে খোলা" সংক্রান্ত তালিকায় বিপরীত নিয়ম <ph name="REVERT_RULE" /> পাওয়া গেছে।</translation>
+<translation id="8487303289354211861">পিন করা হয়েছে! টুলবারে নতুন বোতাম থেকে আপনি এই ফিচার আবার অ্যাক্সেস করতে পারবেন</translation>
 <translation id="8487678622945914333">জুম বাড়ান</translation>
 <translation id="8487699605742506766">হটস্পট</translation>
 <translation id="8489156414266187072">ব্যক্তিগত সাজেশন কেবলমাত্র আপনার অ্যাকাউন্টেই দেখানো হয়</translation>
@@ -10367,7 +10405,6 @@
 <translation id="8784626084144195648">হাজার প্রতি গড়</translation>
 <translation id="8785622406424941542">স্টাইলাস</translation>
 <translation id="8786824282808281903">আপনার সন্তান এই আইকনটি দেখার সময়, যাচাইকরণ বা কেনাকাটা অনুমোদন করার জন্য আঙ্গুলের ছাপ ব্যবহার করতে পারে।</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{নামবিহীন গ্রুপ - ১টি ট্যাব}one{নামবিহীন গ্রুপ - #টি ট্যাব}other{নামবিহীন গ্রুপ - #টি ট্যাব}}</translation>
 <translation id="8787752878731558379">আপনি থার্ড-পার্টি কুকিকে কেন অনুমতি দিয়েছেন তা আমাদের জানিয়ে Chrome উন্নত করতে সাহায্য় করুন</translation>
 <translation id="8789898473175677810">ক্রস-সাইট ট্র্যাকিং কমানো ও থার্ড-পার্টি কুকি ব্যবহার বন্ধ করার জন্য Chrome হল <ph name="LINK_BEGIN" />সহযোগী প্রচেষ্টার<ph name="LINK_END" /> একটি অংশ। তবে আমরা এটি দায়িত্বের সাথে করার চেষ্টা করছি কারণ অনেক কুকি, যেভাবে তৈরি করা হয়েছে সেই অনুযায়ী কাজ করার জন্য থার্ড-পার্টি কুকির উপর ভরসা করে। যেমন অনেক সাইট, সাইন-ইন করার প্রসেস সহজ করতে, এম্বেড করা চ্যাট ও মন্তব্য করার সিস্টেমকে সহায়তা করতে ও পেমেন্ট পরিষেবার জন্য থার্ড-পার্টি কুকি ব্যবহার করে। এবং বিজ্ঞাপনদাতারা প্রায়শই আরও ভালো পছন্দসই বিজ্ঞাপন তৈরি করার জন্য থার্ড-পার্টি কুকি ব্যবহার করেন। এই বিষয়টি এই কারণেই গুরুত্বপূর্ণ যে, সাইট প্রায়শই পেমেন্ট করা এবং নিজের কন্টেন্ট কোনও চার্জ ছাড়াই উপলভ্য করে তোলার জন্য বিজ্ঞাপনের উপর ভরসা করে।</translation>
 <translation id="8791157330927639737">আপডেট সম্পর্কে আরও জানুন</translation>
@@ -10602,6 +10639,7 @@
 <translation id="8962863356073277855">URL ফর্ম্যাটটি https://www.example.com হতে হবে</translation>
 <translation id="8962918469425892674">এই সাইটটি মোশন এবং লাইট সেন্সর ব্যবহার করছে।</translation>
 <translation id="8963117664422609631">সাইট সেটিংসে যান</translation>
+<translation id="8964795217937248330">ট্যাব বন্ধ করবেন ও গ্রুপ মুছবেন?</translation>
 <translation id="8965037249707889821">পুরানো পাসওয়ার্ড লিখুন</translation>
 <translation id="8966809848145604011">অন্যান্য প্রোফাইল</translation>
 <translation id="8967427617812342790">পড়ার তালিকায় যোগ করুন</translation>
@@ -10681,6 +10719,7 @@
 <translation id="9014674417732091912"><ph name="ROW_NUMBER" /> নম্বর রোতে সরান</translation>
 <translation id="901668144954885282">Google Drive-এ ব্যাক-আপ নিন</translation>
 <translation id="9016827136585652292">প্রাইভেসি স্ক্রিন টগল করা</translation>
+<translation id="9017055559700464094">পিন করা হয়েছে! টুলবার থেকে এই ফিচার আবার ব্যবহার করুন</translation>
 <translation id="90181708067259747">মেয়াদ সমাপ্তির তারিখ: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">ইনস্টল হয়ে গেছে</translation>
 <translation id="901876615920222131">গ্রুপ আবার খুলতে, গ্রুপের নামে ক্লিক করুন</translation>
@@ -10839,6 +10878,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />সেরা অভিজ্ঞতা পেতে, আপনার ইন্টার্নাল ডিস্কে <ph name="DEVICE_OS" /> ইনস্টল করুন। এছাড়াও, পরে এটি লগ-ইন স্ক্রিন থেকে ইনস্টল করতে পারবেন।<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ইনস্টল করার জন্য প্রস্তুত না থাকলে, এটা করে দেখতে, ইউএসবি ব্যবহার করে চালিয়ে দেখতে পারেন। এটি আপনার বর্তমান OS ও ডেটা রাখবে তবে হয়ত দেখবেন যে, স্টোরেজ ও পারফর্ম্যান্সের সীমা কমে গেছে।<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">পিন করা ট্যাব হিসেবে খুলুন</translation>
+<translation id="9122788874051694311">ছদ্মবেশী মোডের বাইরে এই পাসকী সেভ করতে চান?</translation>
 <translation id="9123287046453017203">আপনার ডিভাইস আপ-টু-ডেট নেই</translation>
 <translation id="9125910124977405374">অটোমেটিক অনুবাদ হওয়া ভাষা থেকে <ph name="LANGUAGE_NAME" /> সরান</translation>
 <translation id="9126149354162942022">কার্সরের রঙ</translation>
@@ -11033,6 +11073,7 @@
 <translation id="979345485590886759">সাইট আপনার মাউস পয়েন্টার লক করার অনুমতি চাইতে পারে</translation>
 <translation id="980731642137034229">অ্যাকশন মেনু বোতাম</translation>
 <translation id="981121421437150478">অফলাইন</translation>
+<translation id="98235653036850093">হ্যালো, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">সমস্ত ট্যাবগুলি বন্ধ করুন</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - ক্যামেরা এবং মাইক্রোফোন রেকর্ড করছে</translation>
 <translation id="984275831282074731">পেমেন্ট পদ্ধতি</translation>
diff --git a/chrome/app/resources/generated_resources_bs.xtb b/chrome/app/resources/generated_resources_bs.xtb
index fd471bf..adf8607 100644
--- a/chrome/app/resources/generated_resources_bs.xtb
+++ b/chrome/app/resources/generated_resources_bs.xtb
@@ -4080,7 +4080,6 @@
 <translation id="3983586614702900908">uređaji nepoznatog dobavljača</translation>
 <translation id="3983764759749072418">Aplikacije iz Play trgovine imaju pristup ovom uređaju.</translation>
 <translation id="3983769721878416534">Odgoda prije klika</translation>
-<translation id="3983793589497399077">Kliknite ili prevucite bilo gdje da pretražite putem Objektiva</translation>
 <translation id="3984135167056005094">Nemoj uključiti adresu e-pošte</translation>
 <translation id="3984159763196946143">Pokretanje demo načina rada nije uspjelo</translation>
 <translation id="3984431586879874039">Dozvoliti ovoj web lokaciji da vidi vaš sigurnosni ključ?</translation>
@@ -7182,7 +7181,6 @@
 <translation id="6383382161803538830">Način rada za čitanje nije dostupan na ovoj stranici</translation>
 <translation id="638418309848716977">Podržani linkovi</translation>
 <translation id="6384275966486438344">Promijenite svoje postavke pretraživanja na: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Neimenovana grupa – 1 kartica}one{Neimenovana grupa – # kartica}few{Neimenovana grupa – # kartice}other{Neimenovana grupa – # kartica}}</translation>
 <translation id="6385149369087767061">Povežite se s internetom i pokušajte ponovo</translation>
 <translation id="6385382178401976503">Kartica: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Upozorenje – omogućeno je detaljno zapisivanje. Zapisi ispod mogu obuhvatati URL-ove ili druge osjetljive informacije. Pregledajte i budite sigurni da vam ne smeta poslati ove informacije.</translation>
@@ -10406,7 +10404,6 @@
 <translation id="8784626084144195648">Zbirni prosjek</translation>
 <translation id="8785622406424941542">Digitalna olovka</translation>
 <translation id="8786824282808281903">Kada vaše dijete vidi ovu ikonu, moguće je koristiti otisak prsta za identifikaciju ili odobravanje kupovina.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Neimenovana grupa – 1 kartica}one{Neimenovana grupa – # kartica}few{Neimenovana grupa – # kartice}other{Neimenovana grupa – # kartica}}</translation>
 <translation id="8787752878731558379">Pomozite nam da poboljšamo Chrome slanjem razloga o dozvoljavanju kolačića treće strane</translation>
 <translation id="8789898473175677810">Chrome je dio <ph name="LINK_BEGIN" />zajedničkih napora<ph name="LINK_END" /> da se smanji unakrsno praćenje web lokacija i postepeno ukine korištenje kolačića trećih strana. Ali to pokušavamo učiniti na odgovoran način jer se mnoge web lokacije oslanjaju na funkcioniranje kolačića trećih strana na predviđeni način. Naprimjer, mnoge web lokacije koriste kolačiće trećih strana da pojednostave prijavu, podrže sisteme ugrađenog chata i ugrađenih komentara te za usluge plaćanja. Osim toga, oglašivači često koriste kolačiće trećih strana da bolje personaliziraju oglase. To je važno jer se web lokacije često oslanjaju na oglase za plaćanje troškova i da njihov online sadržaj ostane besplatan.</translation>
 <translation id="8791157330927639737">Saznajte više o ažuriranju</translation>
diff --git a/chrome/app/resources/generated_resources_ca.xtb b/chrome/app/resources/generated_resources_ca.xtb
index 432706837..04d1eead 100644
--- a/chrome/app/resources/generated_resources_ca.xtb
+++ b/chrome/app/resources/generated_resources_ca.xtb
@@ -847,7 +847,7 @@
 <translation id="1617765145568323981">{NUM_FILES,plural, =0{S'està comprovant si aquestes dades compleixen les polítiques de seguretat de la teva organització...}=1{S'està comprovant si aquest fitxer compleix les polítiques de seguretat de la teva organització...}other{S'està comprovant si aquests fitxers compleixen les polítiques de seguretat de la teva organització...}}</translation>
 <translation id="1618102204889321535"><ph name="CURRENT_CHARACTER_COUNT" />/<ph name="MAX_CHARACTER_COUNT" /></translation>
 <translation id="1618268899808219593">Centre d'ajuda</translation>
-<translation id="1619879934359211038">No s'ha pogut connectar a Google Play. Comprova la connexió a la xarxa i torna-ho a provar. Codi d'error: <ph name="ERROR_CODE" />.</translation>
+<translation id="1619879934359211038">No s'ha pogut connectar a Google Play. Comprova la connexió de xarxa i torna-ho a provar. Codi d'error: <ph name="ERROR_CODE" />.</translation>
 <translation id="1620307519959413822">La contrasenya no és correcta. Torna-ho a provar o fes clic a l'opció Has oblidat la contrasenya? per restablir-la.</translation>
 <translation id="1620510694547887537">Càmera</translation>
 <translation id="1621382140075772850">Eina de text</translation>
@@ -1847,7 +1847,7 @@
 <translation id="2342180549977909852">El teu fill pot utilitzar un número (PIN) en lloc d'una contrasenya per desbloquejar aquest dispositiu. Per definir el PIN més endavant, ves a Configuració.</translation>
 <translation id="2342740338116612727">Les adreces d'interès s'han afegit</translation>
 <translation id="2343747224442182863">Posa el focus en aquesta pestanya</translation>
-<translation id="2344032937402519675">No s'ha pogut connectar amb el servidor. Comprova la connexió a la xarxa i torna-ho a provar. Si encara tens problemes, prova de reiniciar el Chromebook.</translation>
+<translation id="2344032937402519675">No s'ha pogut connectar amb el servidor. Comprova la connexió de xarxa i torna-ho a provar. Si encara tens problemes, prova de reiniciar el Chromebook.</translation>
 <translation id="234559068082989648">Passat desembre de 2022, les versions anteriors d'Aplicacions de Chrome no s'obriran. Contacta amb l'administrador perquè actualitzi l'aplicació a una versió nova o perquè la suprimeixi.</translation>
 <translation id="2348176352564285430">Aplicació: <ph name="ARC_PROCESS_NAME" /></translation>
 <translation id="2348729153658512593"><ph name="WINDOW_TITLE" />. S'ha sol·licitat permís, prem Ctrl+Endavant per respondre</translation>
@@ -1957,7 +1957,7 @@
 <translation id="2428510569851653187">Descriu què feies quan la pestanya s'ha bloquejat</translation>
 <translation id="2428939361789119025">Desactiva la Wi‑Fi</translation>
 <translation id="2428978615149723410">aquests carretons</translation>
-<translation id="2431027948063157455">L'Assistent de Google no s'ha pogut carregar. Comprova la connexió a la xarxa i tornar-ho a provar.</translation>
+<translation id="2431027948063157455">L'Assistent de Google no s'ha pogut carregar. Comprova la connexió de xarxa i tornar-ho a provar.</translation>
 <translation id="243179355394256322">La teva organització limita la inscripció de dispositius només als usuaris autoritzats. Aquest usuari no té autorització per inscriure dispositius. Assegura't que l'usuari tingui el privilegi d'administrador "Inscriure maquinari de Google Meet" a la secció de la consola d'administració Usuaris.</translation>
 <translation id="243275146591958220">Cancel·la la baixada</translation>
 <translation id="2433452467737464329">Afegiu un paràmetre de consulta a l'URL per actualitzar la pàgina automàticament: chrome://network/?refresh=&lt;seg.&gt;</translation>
@@ -2140,7 +2140,7 @@
 <translation id="2541002089857695151">Vols optimitzar l'emissió en pantalla completa?</translation>
 <translation id="2541343621592284735">La càmera i el micròfon no es permeten</translation>
 <translation id="2541706104884128042">S'ha establert l'hora de dormir nova</translation>
-<translation id="2542050502251273923">Estableix el nivell de depuració del gestor de connexions a la xarxa i altres serveis mitjançant ff_debug.</translation>
+<translation id="2542050502251273923">Estableix el nivell de depuració del gestor de connexions de xarxa i altres serveis mitjançant ff_debug.</translation>
 <translation id="2543780089903485983">{NUM_SUB_APP_INSTALLS,plural, =1{Els permisos que concedeixis a <ph name="APP_NAME" /> també es concediran a aquesta aplicació. <ph name="MANAGE_LINK" />}other{Els permisos que concedeixis a <ph name="APP_NAME" /> també es concediran a aquestes aplicacions. <ph name="MANAGE_LINK" />}}</translation>
 <translation id="2544352060595557290">Aquesta pestanya</translation>
 <translation id="2545743249923338554">Pestanyes noves</translation>
@@ -2626,7 +2626,7 @@
 <translation id="2908122561561557160">Obre fitxers de Word, d'Excel i de PowerPoint</translation>
 <translation id="2908162660801918428">Addició d'una galeria multimèdia per directori</translation>
 <translation id="2908358077082926882">Torna a prémer <ph name="CURRENTKEY" /> per suprimir l'assignació i <ph name="RESPONSE" /></translation>
-<translation id="2909506265808101667">No s'ha pogut connectar amb els serveis de Google. Comprova la connexió a la xarxa i torna-ho a provar. Codi d'error: <ph name="ERROR_CODE" />.</translation>
+<translation id="2909506265808101667">No s'ha pogut connectar amb els serveis de Google. Comprova la connexió de xarxa i torna-ho a provar. Codi d'error: <ph name="ERROR_CODE" />.</translation>
 <translation id="2910318910161511225">Connecta't a una xarxa i torna-ho a provar</translation>
 <translation id="2910718431259223434">S'ha produït un error. Torna-ho a provar o contacta amb el propietari o l'administrador del dispositiu. Codi d'error: <ph name="ERROR_CODE" />.</translation>
 <translation id="2912247081180973411">Tanca les finestres</translation>
@@ -4057,7 +4057,6 @@
 <translation id="3983586614702900908">dispositius d'un proveïdor desconegut</translation>
 <translation id="3983764759749072418">Les aplicacions de Play Store tenen accés a aquest dispositiu.</translation>
 <translation id="3983769721878416534">Retard abans del clic</translation>
-<translation id="3983793589497399077">Fes clic en qualsevol lloc o arrossega contingut per fer cerques amb Lens</translation>
 <translation id="3984135167056005094">No incloguis l'adreça electrònica</translation>
 <translation id="3984159763196946143">No s'ha pogut iniciar el mode de demostració</translation>
 <translation id="3984431586879874039">Vols permetre que aquest lloc web vegi la teva clau de seguretat?</translation>
@@ -4376,7 +4375,7 @@
 <translation id="424726838611654458">Obre sempre a Adobe Reader</translation>
 <translation id="4248401726442101648">No hi ha cap càmera connectada</translation>
 <translation id="4249116869350613769">Estalvi de bateria</translation>
-<translation id="4249248555939881673">S'està esperant la connexió a la xarxa...</translation>
+<translation id="4249248555939881673">S'està esperant la connexió de xarxa...</translation>
 <translation id="4249373718504745892">S'ha bloquejat l'accés d'aquesta pàgina a la càmera i al micròfon</translation>
 <translation id="424963718355121712">Les aplicacions s'han de distribuir des de l'amfitrió que afecten</translation>
 <translation id="4250229828105606438">Captura de pantalla</translation>
@@ -5442,7 +5441,7 @@
 <translation id="5071892329440114717">Mostra els detalls de la protecció estàndard</translation>
 <translation id="5072500507106264618">Només els serveis del sistema poden utilitzar la teva ubicació</translation>
 <translation id="5072836811783999860">Mostra les adreces d'interès gestionades</translation>
-<translation id="5072900412896857127">Les condicions del servei de Google Play no es poden carregar. Comprova la connexió a la xarxa i torna-ho a provar.</translation>
+<translation id="5072900412896857127">Les condicions del servei de Google Play no es poden carregar. Comprova la connexió de xarxa i torna-ho a provar.</translation>
 <translation id="5073956501367595100">{0,plural,offset:2 =1{<ph name="FILE1" />}=2{<ph name="FILE1" /> i <ph name="FILE2" />}other{<ph name="FILE1" />, <ph name="FILE2" /> i # més}}</translation>
 <translation id="5074318175948309511">És possible que hàgiu de tornar a carregar aquesta pàgina perquè s'apliqui la configuració nova.</translation>
 <translation id="5074761966806028321">Es continua necessitant permís per completar la configuració</translation>
@@ -5933,7 +5932,7 @@
 <translation id="5449588825071916739">Afegeix totes les pestanyes a les adreces d'interès</translation>
 <translation id="5449716055534515760">Tanca la &amp;finestra</translation>
 <translation id="5450469615146335984">Selecciona una drecera per a cada acció</translation>
-<translation id="545133051331995777">No hi ha connexió a la xarxa</translation>
+<translation id="545133051331995777">No hi ha connexió de xarxa</translation>
 <translation id="5452446625764825792">Ara pots consultar les aplicacions, els fitxers multimèdia i les fotos recents del telèfon</translation>
 <translation id="5452976525201205853"><ph name="LANGUAGE" /> (funciona sense connexió)</translation>
 <translation id="5453829744223920473">El teu fill o filla pot utilitzar totes les aplicacions, les adreces d'interès i els recursos del centre educatiu tal com ho fa a classe. El centre educatiu estableix les regles bàsiques.</translation>
@@ -7152,7 +7151,6 @@
 <translation id="6383382161803538830">El mode de lectura no està disponible en aquesta pàgina</translation>
 <translation id="638418309848716977">Enllaços admesos</translation>
 <translation id="6384275966486438344">Canviar la configuració de la cerca a: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grup sense nom (1 pestanya)}other{Grup sense nom (# pestanyes)}}</translation>
 <translation id="6385149369087767061">Connecta't a Internet i torna-ho a provar</translation>
 <translation id="6385382178401976503">Targeta: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Advertiment: el registre detallat està activat; els informes que s'indiquen a continuació poden incloure URL o una altra informació sensible. Consulta aquesta informació i mira si no et fa res que s'enviïn aquestes dades.</translation>
@@ -7324,7 +7322,7 @@
 <translation id="6520876759015997832">Resultat de cerca <ph name="LIST_POSITION" /> de <ph name="LIST_SIZE" />: <ph name="SEARCH_RESULT_TEXT" />. Prem Retorn per navegar a la secció.</translation>
 <translation id="6521214596282732365">Els llocs web solen utilitzar els teus tipus de lletra perquè puguis crear continguts d'alta fidelitat amb eines de disseny i de gràfics en línia</translation>
 <translation id="6523574494641144162">El gestor de contrasenyes de Google no ha pogut desar aquestes contrasenyes al teu Compte de Google. Pots desar-les en aquest dispositiu.</translation>
-<translation id="652492607360843641">Tens connexió a una xarxa <ph name="NETWORK_TYPE" />.</translation>
+<translation id="652492607360843641">Tens connexió de xarxa <ph name="NETWORK_TYPE" />.</translation>
 <translation id="6525767484449074555">Fes clic a Instal·la</translation>
 <translation id="6527303717912515753">Comparteix</translation>
 <translation id="6527574156657772563">No hi ha cap dispositiu disponible. Afegeix el teu Compte de Google al telèfon per connectar-lo a aquest dispositiu (<ph name="DEVICE_TYPE" />). <ph name="LINK_BEGIN" />Més informació<ph name="LINK_END" /></translation>
@@ -7336,7 +7334,7 @@
 <translation id="6532101170117367231">Desa a Google Drive</translation>
 <translation id="6532106788206463496">Desa els canvis</translation>
 <translation id="6532206849875187177">Seguretat i inici de sessió</translation>
-<translation id="6532527800157340614">L'inici de sessió ha fallat perquè no s'ha pogut recuperar el testimoni d'accés. Comprova la connexió a la xarxa i torna-ho a provar.</translation>
+<translation id="6532527800157340614">L'inici de sessió ha fallat perquè no s'ha pogut recuperar el testimoni d'accés. Comprova la connexió de xarxa i torna-ho a provar.</translation>
 <translation id="6532663472409656417">Inscrit en una empresa</translation>
 <translation id="6533315466883598769">Utilitza el Traductor de Google</translation>
 <translation id="65334502113648172">Prem les tecles de fletxa per reduir o ampliar l'àrea de visualització. Per moure l'àrea de visualització, prem Maj i +. Després, fes servir les tecles de fletxa.</translation>
@@ -7463,7 +7461,7 @@
 <translation id="6630117778953264026">Més seguretat</translation>
 <translation id="6630752851777525409">L'extensió <ph name="EXTENSION_NAME" /> vol tenir accés permanent a un certificat per autenticar-se en nom vostre.</translation>
 <translation id="6635362468090274700">Ningú no pot compartir contingut amb tu fins que no et facis visible.<ph name="BR" /><ph name="BR" />Per fer-te visible temporalment, obre l'àrea d'estat i, després, activa Visibilitat Nearby.</translation>
-<translation id="6635674640674343739">No es pot establir cap connexió a la xarxa. Comprova la connexió a la xarxa i torna-ho a provar.</translation>
+<translation id="6635674640674343739">No es pot establir cap connexió de xarxa. Comprova la connexió de xarxa i torna-ho a provar.</translation>
 <translation id="663569763553406962">Consulta quines extensions poden llegir un lloc web o fer-hi modificacions</translation>
 <translation id="6635944431854494329">El propietari pot controlar aquesta funció des de Configuració &gt; Configuració avançada &gt; Envia automàticament dades de diagnòstic i d'ús a Google.</translation>
 <translation id="6636623428211296678">Explora més opcions de configuració a continuació o acaba ara</translation>
@@ -7571,7 +7569,7 @@
 <translation id="6713668088933662563">No ofereixis mai traduir d'aquests idiomes</translation>
 <translation id="6715803357256707211">S'ha produït un error en instal·lar l'aplicació per a Linux. Fes clic a la notificació per veure'n els detalls.</translation>
 <translation id="6716049856796700977">Res no pot utilitzar la teva ubicació. Tanmateix, és possible que la teva ubicació continuï sent visible per a les aplicacions i per als llocs web a través de l'adreça IP. <ph name="LINK_BEGIN" />Més informació<ph name="LINK_END" /></translation>
-<translation id="6716798148881908873">S'ha perdut la connexió a la xarxa. Comprova la connexió o prova una altra xarxa Wi-Fi.</translation>
+<translation id="6716798148881908873">S'ha perdut la connexió de xarxa. Comprova la connexió o prova una altra xarxa Wi-Fi.</translation>
 <translation id="6718849325281682232">Els colors del tema de Chrome s'han actualitzat per funcionar millor per a tothom, tant en mode fosc com en mode clar</translation>
 <translation id="671928215901716392">Pantalla de bloqueig</translation>
 <translation id="6721744718589119342">També pot ser que et demanem més informació o t'enviem novetats per correu electrònic</translation>
@@ -8484,7 +8482,7 @@
 <translation id="7415454883318062233">Configuració completada</translation>
 <translation id="7415997299997664304">Reconeix la semàntica del disseny visual</translation>
 <translation id="7416091793702109803">Escriu una ressenya sobre <ph name="FILE_NAME" /></translation>
-<translation id="7416263748877373774">Les condicions del servei no es poden carregar. Comprova la connexió a la xarxa i torna-ho a provar.</translation>
+<translation id="7416263748877373774">Les condicions del servei no es poden carregar. Comprova la connexió de xarxa i torna-ho a provar.</translation>
 <translation id="7416362041876611053">Error de la xarxa desconegut.</translation>
 <translation id="741906494724992817">Aquesta aplicació no requereix cap permís especial.</translation>
 <translation id="7419142833919893307">No s'ha afegit cap nom d'usuari</translation>
@@ -8655,7 +8653,7 @@
 <translation id="7543104066686362383">Activa les funcions de depuració en aquest dispositiu <ph name="IDS_SHORT_PRODUCT_NAME" /></translation>
 <translation id="7544227555407951270">Inscriu el dispositiu</translation>
 <translation id="7544977292347272434">Demana al teu pare o mare que permeti una extensió</translation>
-<translation id="7545466883021407599">No s'ha pogut connectar amb el servidor. Comprova la connexió a la xarxa i torna-ho a provar. Si encara tens problemes, prova de reiniciar el Chromebook. Codi d'error: <ph name="ERROR_CODE" />.</translation>
+<translation id="7545466883021407599">No s'ha pogut connectar amb el servidor. Comprova la connexió de xarxa i torna-ho a provar. Si encara tens problemes, prova de reiniciar el Chromebook. Codi d'error: <ph name="ERROR_CODE" />.</translation>
 <translation id="7547317915858803630">Advertiment: la vostra configuració de <ph name="PRODUCT_NAME" /> s'emmagatzema en una unitat de xarxa. Això pot provocar alentiments, bloquejos o fins i tot la pèrdua de dades.</translation>
 <translation id="754836352246153944">Les extensions no es permeten en aquest lloc web. Selecciona per obrir el menú.</translation>
 <translation id="7548856833046333824">Còctel</translation>
@@ -9440,7 +9438,7 @@
 <translation id="809792523045608178"><ph name="IDS_SHORT_PRODUCT_NAME" /> està fent servir la connexió del servidor intermediari d'una extensió</translation>
 <translation id="8097959162767603171">Primer, l'administrador ha d'acceptar les condicions del servei de la llista de dispositius Chrome que hi ha a la consola d'administració.</translation>
 <translation id="8098156986344908134">Vols instal·lar <ph name="DEVICE_OS" /> i esborrar les dades de la unitat de disc dur?</translation>
-<translation id="8098616321286360457">Cal una connexió a la xarxa</translation>
+<translation id="8098616321286360457">Cal una connexió de xarxa</translation>
 <translation id="8100230553590752325">Utilitza les contrasenyes desades en qualsevol dispositiu</translation>
 <translation id="810068641062493918">S'ha seleccionat <ph name="LANGUAGE" />. Prem Cerca+Espai per desseleccionar-lo.</translation>
 <translation id="8101409298456377967">Crea, desa i gestiona les teves contrasenyes de manera que puguis iniciar la sessió fàcilment en llocs web i aplicacions. <ph name="BEGIN_LINK" />Més informació<ph name="END_LINK" /></translation>
@@ -9733,7 +9731,7 @@
 <translation id="8315018673856831477">Opcions d'Estalvi de memòria</translation>
 <translation id="8315044115695361734">D'iCloud Keychain</translation>
 <translation id="8315514906653279104">S'està activant...</translation>
-<translation id="8317671367883557781">Afegeix una connexió a la xarxa</translation>
+<translation id="8317671367883557781">Afegeix una connexió de xarxa</translation>
 <translation id="8317965619823678157">copiar les contrasenyes</translation>
 <translation id="8318266828739827371">Utilitza la visualització de pantalla dividida per veure l'àrea ampliada de la pantalla. Fes servir Cerca+Ctrl+D per activar i desactivar la lupa acoblada.</translation>
 <translation id="8319414634934645341">Ús ampliat de claus</translation>
@@ -10362,7 +10360,6 @@
 <translation id="8784626084144195648">Mitjana descartada</translation>
 <translation id="8785622406424941542">Llapis òptic</translation>
 <translation id="8786824282808281903">Quan el teu fill vegi aquesta icona, podrà utilitzar una empremta digital per identificar-se o aprovar compres.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grup sense nom (1 pestanya)}other{Grup sense nom (# pestanyes)}}</translation>
 <translation id="8787752878731558379">Ajuda'ns a millorar Chrome explicant-nos per què has permès les galetes de tercers</translation>
 <translation id="8789898473175677810">Chrome forma part d'una <ph name="LINK_BEGIN" />iniciativa col·laborativa<ph name="LINK_END" /> per reduir el seguiment entre llocs web i eliminar gradualment l'ús de galetes de tercers. Tanmateix, provem de fer-ho de manera responsable, perquè molts llocs web utilitzen galetes de tercers per funcionar de la manera prevista. Per exemple, molts llocs web utilitzen galetes de tercers per simplificar l'inici de sessió, per admetre sistemes de xat i comentaris inserits, i per als serveis de pagament. A més, els anunciants sovint utilitzen galetes de tercers per personalitzar millor els anuncis. Això és important perquè els llocs web solen comptar amb els anuncis per poder pagar les despeses i mantenir el contingut en línia sense cost econòmic.</translation>
 <translation id="8791157330927639737">Més informació sobre les actualitzacions</translation>
@@ -10489,7 +10486,7 @@
 <translation id="8879284080359814990">&amp;Mostra com a pestanya</translation>
 <translation id="8879921471468674457">Recorda la informació d'inici de sessió</translation>
 <translation id="8880009256105053174">Cerc&amp;a aquesta pàgina amb Google...</translation>
-<translation id="8880054210564666174">No es pot baixar la llista de contactes. Comprova la connexió a la xarxa o <ph name="LINK_BEGIN" />torna-ho a provar<ph name="LINK_END" />.</translation>
+<translation id="8880054210564666174">No es pot baixar la llista de contactes. Comprova la connexió de xarxa o <ph name="LINK_BEGIN" />torna-ho a provar<ph name="LINK_END" />.</translation>
 <translation id="8881020143150461183">Torna-ho a provar. Per obtenir assistència tècnica, contacta amb <ph name="CARRIER_NAME" />.</translation>
 <translation id="888256071122006425">Configuració del ratolí i del ratolí tàctil</translation>
 <translation id="8883273463630735858">Activa l'acceleració del ratolí tàctil</translation>
@@ -10880,7 +10877,7 @@
 <translation id="9157096865782046368">0,8 segons</translation>
 <translation id="9157697743260533322">No s'han pogut configurar les actualitzacions automàtiques per a tots els usuaris (error de comprovació preliminar: <ph name="ERROR_NUMBER" />)</translation>
 <translation id="9157915340203975005">La impressora té la porta oberta</translation>
-<translation id="9158715103698450907">S'ha produït un problema de comunicació de xarxa durant l'autenticació. Comproveu la connexió a la xarxa i torneu-ho a provar.</translation>
+<translation id="9158715103698450907">S'ha produït un problema de comunicació de xarxa durant l'autenticació. Comproveu la connexió de xarxa i torneu-ho a provar.</translation>
 <translation id="9159458465299853289">La &amp;sincronització està activada</translation>
 <translation id="9159643062839240276">Prova de fer el següent:
     <ph name="BEGIN_LIST" />
diff --git a/chrome/app/resources/generated_resources_cs.xtb b/chrome/app/resources/generated_resources_cs.xtb
index a789310..40e3df27 100644
--- a/chrome/app/resources/generated_resources_cs.xtb
+++ b/chrome/app/resources/generated_resources_cs.xtb
@@ -1660,6 +1660,7 @@
 <translation id="2211043920024403606">Profilové údaje</translation>
 <translation id="2211245494465528624">Správa možností synchronizace</translation>
 <translation id="221297410904507041">Vymažte historii, soubory cookie, mezipaměť a další obsah</translation>
+<translation id="2213410656650624348">Mírné</translation>
 <translation id="2214018885812055163">Sdílené složky</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 řádek není zobrazen&gt;}few{&lt;<ph name="NUMBER_OF_LINES" /> řádky nejsou zobrazeny&gt;}many{&lt;<ph name="NUMBER_OF_LINES" /> řádku není zobrazeno&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> řádků není zobrazeno&gt;}}</translation>
 <translation id="2215070081105889450">Pokud chcete sdílet zvuk, sdílejte místo toho kartu nebo obrazovku</translation>
@@ -2039,6 +2040,7 @@
 <translation id="2473195200299095979">Přeložit tuto stránku</translation>
 <translation id="2475982808118771221">Došlo k chybě</translation>
 <translation id="247616523300581745">Skrýt tyto soubory</translation>
+<translation id="2476435723907345463">Přístup k přístupovým klíčům odebrán</translation>
 <translation id="2476901513051581836">Úložiště nelze vyčistit, dokud nebude známa velikost úložiště offline.</translation>
 <translation id="2476974672882258506">Pokud chcete odinstalovat <ph name="PARALLELS_DESKTOP" />, ukončete Windows.</translation>
 <translation id="2477065602824695373">Protože jste nastavili několik přepínačů, automatické prohledávání bylo vypnuto.</translation>
@@ -2233,6 +2235,7 @@
 <translation id="2620215283731032047">Soubor <ph name="FILE_NAME" /> nelze bezpečně stáhnout.</translation>
 <translation id="2620245777360407679">Zařízení aktuálně připojená k hotspotu</translation>
 <translation id="2620436844016719705">Systém</translation>
+<translation id="262087792756666314">Tuto funkci si můžete pro snadný přístup připnout. Stačí v horní části postranního panelu kliknout na tlačítko Připnout.</translation>
 <translation id="2620900772667816510">Bluetooth se super rozlišením</translation>
 <translation id="262154978979441594">Nastavit hlasový model Asistenta Google</translation>
 <translation id="26224892172169984">Nepovolovat žádným stránkám zpracovávat protokoly</translation>
@@ -3008,6 +3011,7 @@
 <translation id="3222066309010235055">Předběžně vykreslit: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Připojit k síti <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Vyhledejte cokoliv z této stránky pomocí Google Lens</translation>
+<translation id="3223109931751684474">Odebrat přístup k vašim přístupovým klíčům na tomto zařízení</translation>
 <translation id="3223531857777746191">Tlačítko Resetovat</translation>
 <translation id="3225084153129302039">Výchozí nachový avatar</translation>
 <translation id="3225319735946384299">Podepisování kódu</translation>
@@ -3332,6 +3336,7 @@
 <translation id="3473479545200714844">Lupa obrazovky</translation>
 <translation id="3474218480460386727">Nová slova smí mít maximálně 99 písmen</translation>
 <translation id="3474624961160222204">Pokračovat jako <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Získáte malou úsporu paměti. Karty přestanou být aktivní po delší době.</translation>
 <translation id="347785443197175480">Povolit webu <ph name="HOST" /> přístup k webové kameře a mikrofonu i nadále</translation>
 <translation id="3479357084663933762">Deuteranomálie</translation>
 <translation id="3479552764303398839">Teď ne</translation>
@@ -4054,7 +4059,6 @@
 <translation id="3983586614702900908">zařízení od neznámého dodavatele</translation>
 <translation id="3983764759749072418">K tomuto zařízení mají přístup aplikace z Obchodu Play.</translation>
 <translation id="3983769721878416534">Prodleva před kliknutím</translation>
-<translation id="3983793589497399077">Pokud chcete hledat pomocí Lens, někam klikněte nebo něco vyberte tažením</translation>
 <translation id="3984135167056005094">E-mailovou adresu neuvádět</translation>
 <translation id="3984159763196946143">Ukázkový režim nelze spustit</translation>
 <translation id="3984431586879874039">Povolit tomuto webu přístup k vašemu bezpečnostnímu klíči?</translation>
@@ -4091,6 +4095,7 @@
 <translation id="4010036441048359843">Zapnout zvýraznění</translation>
 <translation id="4010746393007464819">Je k dispozici upgrade na Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">Chcete-li své záložky mít na mobilním zařízení, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Tuto funkci si můžete pro snadný přístup připnout</translation>
 <translation id="4014432863917027322">Opravit rozšíření <ph name="EXTENSION_NAME" />?</translation>
 <translation id="4015163439792426608">Používáte rozšíření? <ph name="BEGIN_LINK" />Spravujte rozšíření<ph name="END_LINK" /> snadno na jednom místě.</translation>
 <translation id="4016762287427926315">Oprávnění, která povolíte pro aplikaci <ph name="APP_NAME" />, budou povolena i pro tuto aplikaci. <ph name="BEGIN_LINK" />Spravovat<ph name="END_LINK" /></translation>
@@ -4394,6 +4399,7 @@
 <translation id="4261429981378979799">Oprávnění rozšíření</translation>
 <translation id="4262004481148703251">Zavřít upozornění</translation>
 <translation id="4263223596040212967">Zkontrolujte rozložení klávesnice a zkuste to znovu.</translation>
+<translation id="4263470758446311292">Získáte maximální úsporu paměti. Karty přestanou být aktivní po kratší době.</translation>
 <translation id="4265096510956307240">Ověřte svou totožnost</translation>
 <translation id="4265301768135164545">Profil eSIM můžete také nastavit <ph name="BEGIN_LINK" />ručně<ph name="END_LINK" />.</translation>
 <translation id="426564820080660648">Chcete-li zkontrolovat dostupnost aktualizací, použijte síť Ethernet, Wi-Fi nebo mobilní datové připojení.</translation>
@@ -4713,6 +4719,7 @@
 <translation id="4503748371388753124">Váš počítač obsahuje bezpečnostní zařízení TPM (Trusted Platform Module), jehož pomocí je do systému ChromeOS Flex implementováno mnoho důležitých funkcí zabezpečení. Další informace najdete v centru nápovědy k Chromebookům: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Soubory cookie jsou povoleny}=1{Soubory cookie jsou povoleny, jedna výjimka}few{Soubory cookie jsou povoleny, {COUNT} výjimky}many{Soubory cookie jsou povoleny, {COUNT} výjimky}other{Soubory cookie jsou povoleny, {COUNT} výjimek}}</translation>
 <translation id="4504940961672722399">Toto rozšíření aktivujete kliknutím na tuto ikonu nebo klávesovou zkratkou <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Pomocí tohoto QR kódu si stáhněte Chrome a přihlaste se ke svému účtu Google.</translation>
 <translation id="450552327874992444">Slovo už bylo přidáno</translation>
 <translation id="4507373251891673233">Zablokovali jste všechna rozšíření ze zdroje <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Klikněte na Přidat zástupce</translation>
@@ -5048,6 +5055,7 @@
 <translation id="4768332406694066911">Od následujících organizací máte certifikáty, které vás identifikují</translation>
 <translation id="4769632191812288342">Používáte standardní ochranu</translation>
 <translation id="4770119228883592393">Odpovězte na žádost o oprávnění stisknutím kláves ⌘ + Option + šipka dolů</translation>
+<translation id="4770755495532014179">Používejte tohle heslo na svém iPhonu</translation>
 <translation id="4773112038801431077">Aktualizovat Linux</translation>
 <translation id="477548766361111120">Povolit rozšíření číst a měnit tento web</translation>
 <translation id="4776311127346151860">Zařízení <ph name="DEVICE_NAME" /> bylo připojeno</translation>
@@ -5217,6 +5225,7 @@
 <translation id="4890399733764921729">Nelze se připojit. Uzamknuto jiným mobilním operátorem.</translation>
 <translation id="4890773143211625964">Zobrazit rozšířené možnosti tiskárny</translation>
 <translation id="4891089016822695758">Fórum beta</translation>
+<translation id="4891795846939730995">Pokud tomuto zařízení budete chtít přístup k přístupovým klíčům opět udělit, přihlaste se k webu nebo aplikaci pomocí uloženého klíče</translation>
 <translation id="4892229439761351791">Web může používat Bluetooth</translation>
 <translation id="4892328231620815052">Až budete připraveni, najdete svůj seznam četby v sekci Záložky a seznamy</translation>
 <translation id="489258173289528622">Akce nečinnosti při provozu na baterii</translation>
@@ -6444,6 +6453,7 @@
 <translation id="5846504156837627898">Správa oprávnění webu</translation>
 <translation id="5846749317653566506">Upravte nastavení korekce barev a zajistěte, aby byly barvy zřetelné</translation>
 <translation id="5846807460505171493">Instalace aktualizací a aplikací. Pokračováním vyjadřujete souhlas s tím, že toto zařízení může také automaticky stahovat a instalovat aktualizace a aplikace od společnosti Google, operátora a výrobce zařízení a v případě potřeby k tomu smí používat mobilní datové připojení. Některé z těchto aplikací mohou nabízet nákupy v aplikaci.</translation>
+<translation id="5848054741303781539">Nastaveno ručně, bez použití polohy</translation>
 <translation id="5848319660029558352">Čtení nahlas a formátování textu</translation>
 <translation id="5849212445710944278">Již přidáno</translation>
 <translation id="584945105664698226">Rychlost hlasu</translation>
@@ -7141,7 +7151,6 @@
 <translation id="6383382161803538830">Režim čtení není na této stránce k dispozici</translation>
 <translation id="638418309848716977">Podporované odkazy</translation>
 <translation id="6384275966486438344">Změnit nastavení vyhledávání na: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Skupina bez názvu – 1 karta}few{Skupina bez názvu – # karty}many{Skupina bez názvu – # karty}other{Skupina bez názvu – # karet}}</translation>
 <translation id="6385149369087767061">Připojte se k internetu a zkuste to znovu</translation>
 <translation id="6385382178401976503">Karta: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Upozornění: Je aktivováno podrobné protokolování. Níže uvedené protokoly mohou obsahovat adresy URL a další citlivé údaje. Uvedené údaje si prohlédněte a ujistěte se, zda s jejich odesláním souhlasíte.</translation>
@@ -7477,6 +7486,7 @@
 <translation id="6648911618876616409">K instalaci je připravena kritická aktualizace. Začněte tím, že se přihlásíte.</translation>
 <translation id="6649018507441623493">Chviličku…</translation>
 <translation id="6650206238642452078">Odebírat události systému ChromeOS</translation>
+<translation id="6650584564768559994">Získáte vyváženou úsporu paměti. Karty přestanou být aktivní po optimální době.</translation>
 <translation id="665061930738760572">Otevřít v &amp;novém okně</translation>
 <translation id="6651237644330755633">Důvěřovat tomuto certifikátu k identifikaci webových stránek</translation>
 <translation id="6651495917527016072">Synchronizace sítí Wi-Fi s vaším telefonem. <ph name="LINK_BEGIN" />Další informace<ph name="LINK_END" /></translation>
@@ -7734,6 +7744,7 @@
 <translation id="6831043979455480757">Přeložit</translation>
 <translation id="6832218595502288407">Zarovnat vlevo</translation>
 <translation id="6833479554815567477">Karta byla odstraněna ze skupiny <ph name="GROUP_NAME" /> – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Vyvážené (doporučeno)</translation>
 <translation id="6835762382653651563">Chcete-li zařízení <ph name="DEVICE_TYPE" /> aktualizovat, připojte se k internetu.</translation>
 <translation id="683630338945552556">Používat a ukládat hesla v účtu Google</translation>
 <translation id="6839225236531462745">Chyba při mazání certifikátu</translation>
@@ -9384,6 +9395,7 @@
 <translation id="8066444921260601116">Dialogové okno připojení</translation>
 <translation id="8070572887926783747">Oprávnění pro přístup k poloze aplikace <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Hmatová odezva</translation>
+<translation id="8071033114691184017">Používejte tohle heslo na svém iPhonu</translation>
 <translation id="8071432093239591881">Vytisknout jako obrázek</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Data aplikací mohou zahrnovat jakákoliv data, která uložila aplikace (v závislosti na nastavení vývojáře), včetně dat, jako jsou kontakty, zprávy a fotky.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Zálohovaná data se nezapočítávají do kvóty úložiště na Disku dítěte.<ph name="END_PARAGRAPH2" />
@@ -9951,6 +9963,7 @@
 <translation id="8482077254400484047">Tady můžete spravovat vzhled neaktivních karet</translation>
 <translation id="8483248364096924578">IP adresa</translation>
 <translation id="8486666913807228950">Důvod: V seznamu Vynutit otevření v bylo nalezeno převrácené pravidlo <ph name="REVERT_RULE" />.</translation>
+<translation id="8487303289354211861">Připnuto! Příště můžete tuto funkci použít pomocí nového tlačítka na liště</translation>
 <translation id="8487678622945914333">Přiblížit</translation>
 <translation id="8487699605742506766">Hotspot</translation>
 <translation id="8489156414266187072">Osobní návrhy jsou zobrazovány jen ve vašem účtu</translation>
@@ -10350,7 +10363,6 @@
 <translation id="8784626084144195648">Vyhlazený průměr</translation>
 <translation id="8785622406424941542">Dotykové pero</translation>
 <translation id="8786824282808281903">Když dítě uvidí tuto ikonu, k identifikaci nebo schválení nákupu lze použít otisk prstu.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Skupina bez názvu – 1 karta}few{Skupina bez názvu – # karty}many{Skupina bez názvu – # karty}other{Skupina bez názvu – # karet}}</translation>
 <translation id="8787752878731558379">Pomozte nám vylepšit Chrome tím, že nám sdělíte, proč jste povolili soubory cookie třetích stran</translation>
 <translation id="8789898473175677810">Tým prohlížeče Chrome se <ph name="LINK_BEGIN" />ve spolupráci s dalšími subjekty<ph name="LINK_END" /> snaží omezit sledování napříč weby a používání souborů cookie třetích stran postupně ukončit. Snažíme se to ale dělat zodpovědně, protože mnoho webů v současné době soubory cookie třetích stran ke správnému fungování potřebuje. Mnoho webů například používá soubory cookie třetích stran ke zjednodušení přihlašování, k podpoře vložených systému pro chat a přidávání komentářů a pro platební služby. A inzerenti často používají soubory cookie třetích stran k lepší personalizaci reklam. To je důležité, protože weby často spoléhají na uhrazení části výdajů prostřednictvím reklam, aby mohly obsah nabízet bez dalších poplatků.</translation>
 <translation id="8791157330927639737">Další informace o aktualizaci</translation>
@@ -10664,6 +10676,7 @@
 <translation id="9014674417732091912">Přesunuto na řádek <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Zálohovat na Disk Google</translation>
 <translation id="9016827136585652292">přepínač obrazovky s ochranou soukromí</translation>
+<translation id="9017055559700464094">Připnuto! Příště tuto funkci použijte z lišty</translation>
 <translation id="90181708067259747">Datum vypršení platnosti: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Instalace byla dokončena</translation>
 <translation id="901876615920222131">Pokud skupinu chcete znovu otevřít, klikněte na ni</translation>
@@ -10822,6 +10835,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Nejlepších výsledků dosáhnete, když systém <ph name="DEVICE_OS" /> nainstalujete na interní disk. Můžete ho také nainstalovat později z přihlašovací obrazovky.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Pokud na instalaci nejste připraveni, můžete ho za účelem vyzkoušení spustit z USB. Váš existující operační systém a data zůstanou zachovány, ale úložiště a výkon mohou být omezeny.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Otevřít jako připnutou kartu</translation>
+<translation id="9122788874051694311">Uložit tento přístupový klíč mimo anonymní režim?</translation>
 <translation id="9123287046453017203">Zařízení není aktualizováno</translation>
 <translation id="9125910124977405374">Odstranit jazyk <ph name="LANGUAGE_NAME" /> z automaticky překládaných jazyků</translation>
 <translation id="9126149354162942022">Barva kurzoru</translation>
diff --git a/chrome/app/resources/generated_resources_cy.xtb b/chrome/app/resources/generated_resources_cy.xtb
index 0f19c48..dcef1d0 100644
--- a/chrome/app/resources/generated_resources_cy.xtb
+++ b/chrome/app/resources/generated_resources_cy.xtb
@@ -4074,7 +4074,6 @@
 <translation id="3983586614702900908">dyfeisiau gan werthwr anhysbys</translation>
 <translation id="3983764759749072418">Mae gan apiau o Play Store fynediad at y ddyfais hon.</translation>
 <translation id="3983769721878416534">Oedi cyn clicio</translation>
-<translation id="3983793589497399077">Cliciwch neu llusgwch unrhyw le i chwilio gyda Lens</translation>
 <translation id="3984135167056005094">Peidio â chynnwys cyfeiriadau e-bost</translation>
 <translation id="3984159763196946143">Methu â dechrau'r modd demo</translation>
 <translation id="3984431586879874039">Ydych chi am ganiatáu i'r wefan hon weld eich allwedd ddiogelwch?</translation>
@@ -7170,7 +7169,6 @@
 <translation id="6383382161803538830">Nid yw'r modd darllen ar gael ar y dudalen hon</translation>
 <translation id="638418309848716977">Dolenni a gefnogir</translation>
 <translation id="6384275966486438344">Newid eich gosodiadau chwilio i: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grŵp dienw - 1 tab}zero{Grŵp dienw - # tab}two{Grŵp dienw - # tab}few{Grŵp dienw - # tab}many{Grŵp dienw - # tab}other{Grŵp dienw - # tab}}</translation>
 <translation id="6385149369087767061">Cysylltwch â'r rhyngrwyd a rhowch gynnig arall arni</translation>
 <translation id="6385382178401976503">Cerdyn: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Rhybudd - Mae logio manwl wedi'i alluogi; gall y logiau isod gynnwys URL neu wybodaeth sensitif arall. Darllenwch y wybodaeth hon a sicrhewch eich bod yn gyffyrddus i'w chyflwyno.</translation>
@@ -10389,7 +10387,6 @@
 <translation id="8784626084144195648">Cyfartaledd ar ôl Grwpio</translation>
 <translation id="8785622406424941542">Pwyntil</translation>
 <translation id="8786824282808281903">Pan fydd eich plentyn yn gweld yr eicon hwn, gellir defnyddio olion bysedd ar gyfer ei adnabod neu i gymeradwyo pryniannau.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grŵp Dienw - 1 Tab}zero{Grŵp Dienw - # Tab}two{Grŵp Dienw - # Tab}few{Grŵp Dienw - # Tab}many{Grŵp Dienw - # Tab}other{Grŵp Dienw - # Tab}}</translation>
 <translation id="8787752878731558379">Helpwch ni i wella Chrome trwy ddweud wrthym pam eich bod wedi caniatáu cwcis trydydd parti</translation>
 <translation id="8789898473175677810">Mae Chrome yn rhan o <ph name="LINK_BEGIN" />ymdrech gydweithredol<ph name="LINK_END" /> i leihau olrhain traws-wefan a stopio defnyddio cwcis trydydd parti yn raddol. Ond rydym yn ceisio ei wneud yn gyfrifol oherwydd bod llawer o wefannau'n dibynnu ar gwcis trydydd parti i weithio fel y'i dyluniwyd. Er enghraifft, mae llawer o wefannau yn defnyddio cwcis trydydd parti i symleiddio mewngofnodi, i gefnogi systemau sgwrsio a sylwadau sydd wedi'u mewnosod, ac ar gyfer gwasanaethau talu. Ac mae hysbysebwyr yn aml yn defnyddio cwcis trydydd parti i bersonoleiddio hysbysebion yn well. Mae hynny'n bwysig oherwydd bod gwefannau'n aml yn dibynnu ar hysbysebion i helpu i dalu treuliau a chadw eu cynnwys ar-lein yn ddi-dâl.</translation>
 <translation id="8791157330927639737">Dysgu rhagor am ddiweddaru</translation>
diff --git a/chrome/app/resources/generated_resources_da.xtb b/chrome/app/resources/generated_resources_da.xtb
index 0ae5e122..66237bb 100644
--- a/chrome/app/resources/generated_resources_da.xtb
+++ b/chrome/app/resources/generated_resources_da.xtb
@@ -1669,6 +1669,7 @@
 <translation id="2211043920024403606">Profiloplysninger</translation>
 <translation id="2211245494465528624">Administrer indstillinger for synkronisering</translation>
 <translation id="221297410904507041">Slet historik, cookies, cache m.m.</translation>
+<translation id="2213410656650624348">Moderat</translation>
 <translation id="2214018885812055163">Delte mapper</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 linje vises ikke&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> linje vise ikke&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> linjer vises ikke&gt;}}</translation>
 <translation id="2215070081105889450">Hvis du vil dele lyd, skal du dele en fane eller skærm i stedet</translation>
@@ -2051,6 +2052,7 @@
 <translation id="2473195200299095979">Oversæt denne side</translation>
 <translation id="2475982808118771221">Der opstod en fejl</translation>
 <translation id="247616523300581745">Skjul disse filer</translation>
+<translation id="2476435723907345463">Adgangen til adgangsnøglerne er fjernet</translation>
 <translation id="2476901513051581836">Der kan ikke frigøres lagerplads, før størrelsen på offlinelagerpladsen er kendt.</translation>
 <translation id="2476974672882258506">Luk Windows ned for at afinstallere <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">Automatisk scanning er blevet deaktiveret, da du har konfigureret flere kontakter.</translation>
@@ -2245,6 +2247,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> kan ikke downloades sikkert.</translation>
 <translation id="2620245777360407679">Enheder, der i øjeblikket er forbundet til et hotspot</translation>
 <translation id="2620436844016719705">System</translation>
+<translation id="262087792756666314">Hvis du vil fastgøre denne funktion, så du nemt kan tilgå den, skal du klikke på knappen Fastgør øverst i sidepanelet</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Anvend en stemmemodel i Google Assistent</translation>
 <translation id="26224892172169984">Tillad ingen websites at håndtere protokoller</translation>
@@ -3020,6 +3023,7 @@
 <translation id="3222066309010235055">Forhåndsgengivelse: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Slut til <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Søg efter hvad som helst på denne side via Google Lens</translation>
+<translation id="3223109931751684474">Fjern adgangen til dine adgangsnøgler på denne enhed</translation>
 <translation id="3223531857777746191">Knappen Nulstil</translation>
 <translation id="3225084153129302039">Lilla standardavatar</translation>
 <translation id="3225319735946384299">Kodesignering</translation>
@@ -3344,6 +3348,7 @@
 <translation id="3473479545200714844">Skærmforstørrer</translation>
 <translation id="3474218480460386727">Nye ord må højst være på 99 bogstaver</translation>
 <translation id="3474624961160222204">Fortsæt som <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Få moderate hukommelsesbesparelser. Dine faner bliver inaktive efter en længere periode.</translation>
 <translation id="347785443197175480">Tillad fortsat, at <ph name="HOST" /> har adgang til dit kamera og din mikrofon</translation>
 <translation id="3479357084663933762">Deuteranomali</translation>
 <translation id="3479552764303398839">Ikke nu</translation>
@@ -4067,7 +4072,6 @@
 <translation id="3983586614702900908">enheder fra en ukendt leverandør</translation>
 <translation id="3983764759749072418">Apps i Play Butik har adgang til denne enhed.</translation>
 <translation id="3983769721878416534">Forsinkelse forud for klik</translation>
-<translation id="3983793589497399077">Klik eller træk et vilkårligt sted for at søge med Lens</translation>
 <translation id="3984135167056005094">Angiv ikke mailadresse</translation>
 <translation id="3984159763196946143">Demotilstand kunne ikke startes</translation>
 <translation id="3984431586879874039">Vil du tillade, at dette website ser din sikkerhedsnøgle?</translation>
@@ -4104,6 +4108,7 @@
 <translation id="4010036441048359843">Aktivér fremhævning</translation>
 <translation id="4010746393007464819">Der er en tilgængelig opgradering til Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001"><ph name="GET_IOS_APP_LINK" /> for at få dine bogmærker på alle dine mobilenheder.</translation>
+<translation id="4012268176861210196">Du kan fastgøre denne funktion, så du nemt kan tilgå den</translation>
 <translation id="4014432863917027322">Vil du reparere "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="4015163439792426608">Har du nogen udvidelser? <ph name="BEGIN_LINK" />Administrer nemt dine udvidelser<ph name="END_LINK" /> fra ét sted.</translation>
 <translation id="4016762287427926315">De tilladelser, du giver <ph name="APP_NAME" />, gives også til denne app. <ph name="BEGIN_LINK" />Administrer<ph name="END_LINK" /></translation>
@@ -4407,6 +4412,7 @@
 <translation id="4261429981378979799">Tilladelser for udvidelser</translation>
 <translation id="4262004481148703251">Luk advarsel</translation>
 <translation id="4263223596040212967">Tjek dit tastaturlayout, og prøv igen.</translation>
+<translation id="4263470758446311292">Få maksimale hukommelsesbesparelser. Dine faner bliver inaktive efter en kortere periode.</translation>
 <translation id="4265096510956307240">Verificer din identitet</translation>
 <translation id="4265301768135164545">Du kan også konfigurere en eSIM-profil <ph name="BEGIN_LINK" />manuelt<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Du kan søge efter opdateringer via Ethernet, Wi-Fi eller mobildata.</translation>
@@ -4726,6 +4732,7 @@
 <translation id="4503748371388753124">Computeren indeholder en sikkerhedsenhed for TPM (Trusted Platform Module), som bruges til at implementere mange vigtige sikkerhedsfunktioner i ChromeOS Flex. Du kan få flere oplysninger i Hjælp til Chromebook: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Cookies er tilladt}=1{Cookies er tilladt, 1 undtagelse}one{Cookies er tilladt, {COUNT} undtagelse}other{Cookies er tilladt, {COUNT} undtagelser}}</translation>
 <translation id="4504940961672722399">Brug denne udvidelse ved at klikke på dette ikon eller ved at trykke på <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Download Chrome via denne QR-kode, og log ind på din Google-konto.</translation>
 <translation id="450552327874992444">Ordet er allerede tilføjet</translation>
 <translation id="4507373251891673233">Du har blokeret alle udvidelser fra <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Klik på "Tilføj genvej"</translation>
@@ -5061,6 +5068,7 @@
 <translation id="4768332406694066911">Du har certifikater fra disse organisationer, der identificerer dig</translation>
 <translation id="4769632191812288342">Du har Standardbeskyttelse</translation>
 <translation id="4770119228883592393">Der er anmodet om tilladelse. Tryk på ⌘ + Option + pil ned for at svare</translation>
+<translation id="4770755495532014179">Brug denne adgangskode på din iPhone</translation>
 <translation id="4773112038801431077">Opgrader Linux</translation>
 <translation id="477548766361111120">Giv udvidelsen tilladelse til at læse og ændre dette website</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> er blevet forbundet</translation>
@@ -5230,6 +5238,7 @@
 <translation id="4890399733764921729">Der kan ikke oprettes forbindelse. Låst af et andet mobilselskab.</translation>
 <translation id="4890773143211625964">Vis avancerede printerindstillinger</translation>
 <translation id="4891089016822695758">Betaforum</translation>
+<translation id="4891795846939730995">Hvis du vil give denne enhed adgang til dine adgangsnøgler igen, skal du logge ind på et website eller i en app med en gemt adgangsnøgle</translation>
 <translation id="4892229439761351791">Websitet kan anvende Bluetooth</translation>
 <translation id="4892328231620815052">Når du er klar, kan du finde din læseliste under Bogmærker og lister</translation>
 <translation id="489258173289528622">Handling for inaktivitet, når batteriet bruges</translation>
@@ -6459,6 +6468,7 @@
 <translation id="5846504156837627898">Administrer websitetilladelser</translation>
 <translation id="5846749317653566506">Juster indstillingerne for farvekorrigering for at sikre, at farverne er forskellige</translation>
 <translation id="5846807460505171493">Installer opdateringer og apps. Ved at fortsætte accepterer du, at denne enhed også automatisk kan downloade og installere opdateringer og apps fra Google, dit mobilselskab og enhedsproducenten, muligvis ved hjælp af mobildata. Nogle af disse apps tilbyder køb i appen.</translation>
+<translation id="5848054741303781539">Manuelt indstillet uden brug af lokation</translation>
 <translation id="5848319660029558352">Læs højt og tekstformatering</translation>
 <translation id="5849212445710944278">Allerede tilføjet</translation>
 <translation id="584945105664698226">Talehastighed</translation>
@@ -7157,7 +7167,6 @@
 <translation id="6383382161803538830">Læsetilstand er ikke tilgængelig på denne side</translation>
 <translation id="638418309848716977">Understøttede links</translation>
 <translation id="6384275966486438344">Skifte dine søgeindstillinger til: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Unavngivet gruppe – 1 fane}one{Unavngivet gruppe – # fane}other{Unavngivet gruppe – # faner}}</translation>
 <translation id="6385149369087767061">Opret forbindelse til internettet, og prøv igen</translation>
 <translation id="6385382178401976503">Betalingskort: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Advarsel! Detaljeret logging er aktiveret. Loggerne nedenfor indeholder muligvis webadresser eller andre følsomme oplysninger. Gennemse loggerne, så du er sikker på, at du gerne vil indsende disse oplysninger.</translation>
@@ -7491,6 +7500,7 @@
 <translation id="6648911618876616409">En vigtig opdatering er klar til at blive installeret. Log ind for at komme godt i gang.</translation>
 <translation id="6649018507441623493">Vent et øjeblik…</translation>
 <translation id="6650206238642452078">Abonner på ChromeOS-systemhændelser</translation>
+<translation id="6650584564768559994">Få balanceret hukommelsesbesparelse. Dine faner bliver inaktive efter en optimal periode.</translation>
 <translation id="665061930738760572">Åbn i &amp;nyt vindue</translation>
 <translation id="6651237644330755633">Hav tillid til dette certifikat i forbindelse med identificering af websites</translation>
 <translation id="6651495917527016072">Synkroniser Wi-Fi-netværk med din telefon. <ph name="LINK_BEGIN" />Få flere oplysninger<ph name="LINK_END" /></translation>
@@ -7748,6 +7758,7 @@
 <translation id="6831043979455480757">Oversæt</translation>
 <translation id="6832218595502288407">Venstrejusteret</translation>
 <translation id="6833479554815567477">Fanen blev fjernet fra gruppen <ph name="GROUP_NAME" /> – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Balanceret (anbefales)</translation>
 <translation id="6835762382653651563">Opret forbindelse til internettet for at opdatere din <ph name="DEVICE_TYPE" />.</translation>
 <translation id="683630338945552556">Brug og gem adgangskoder på din Google-konto</translation>
 <translation id="6839225236531462745">Fejl under sletning af certifikat</translation>
@@ -9398,6 +9409,7 @@
 <translation id="8066444921260601116">Dialogboks for forbindelse</translation>
 <translation id="8070572887926783747">Lokationstilladelse for <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Haptisk feedback</translation>
+<translation id="8071033114691184017">Brug denne adgangskode på din iPhone</translation>
 <translation id="8071432093239591881">Udskriv i billedformat</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Appdata kan være alle former for data, som en app har gemt (baseret på udviklerens indstillinger), f.eks. kontakter, beskeder og billeder.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Sikkerhedskopierede data tæller ikke med i din kvote for Drev-lagerplads.<ph name="END_PARAGRAPH2" />
@@ -9965,6 +9977,7 @@
 <translation id="8482077254400484047">Administrer visningen af inaktive faner her</translation>
 <translation id="8483248364096924578">IP-adresse</translation>
 <translation id="8486666913807228950">Årsag: Den omvendte regel <ph name="REVERT_RULE" /> blev fundet på listen "Gennemtving åbning i".</translation>
+<translation id="8487303289354211861">Funktionen er fastgjort. Fremover kan du få adgang til funktionen via den nye knap i værktøjslinjen</translation>
 <translation id="8487678622945914333">Zoom ind</translation>
 <translation id="8487699605742506766">Hotspot</translation>
 <translation id="8489156414266187072">Personlige forslag vises kun på din konto</translation>
@@ -10365,7 +10378,6 @@
 <translation id="8784626084144195648">Kasseret gennemsnit</translation>
 <translation id="8785622406424941542">Styluspen</translation>
 <translation id="8786824282808281903">Når dit barn ser dette ikon, kan fingeraftrykket bruges til at identificere barnet eller godkende køb.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Unavngivet gruppe – 1 fane}one{Unavngivet gruppe – # fane}other{Unavngivet gruppe – # faner}}</translation>
 <translation id="8787752878731558379">Hjælp os med at forbedre Chrome ved at fortælle os, hvorfor du har tilladt tredjepartscookies</translation>
 <translation id="8789898473175677810">Chrome indgår i et <ph name="LINK_BEGIN" />samarbejde<ph name="LINK_END" /> om at reducere sporing på tværs af websites og udfase brugen af tredjepartscookies. Men vi prøver at gøre det på en ansvarlig måde, da mange websites er afhængige af tredjepartscookies for at kunne fungere efter hensigten. Mange websites anvender f.eks. tredjepartscookies til at forenkle loginprocessen, understøtte indlejrede chat- og kommentarsystemer og tilbyde betalingstjenester. Og annoncører bruger ofte tredjepartscookies for bedre at kunne vise brugerne personligt tilpassede annoncer. Dette er vigtigt, da websites ofte er afhængige af annoncer for at kunne betale udgifter og fortsætte med at tilbyde onlineindhold uden beregning.</translation>
 <translation id="8791157330927639737">Få flere oplysninger om opdatering</translation>
@@ -10679,6 +10691,7 @@
 <translation id="9014674417732091912">Flyttet til række <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Sikkerhedskopiér til Google Drev</translation>
 <translation id="9016827136585652292">slå Privatlivsskærm til/fra</translation>
+<translation id="9017055559700464094">Funktionen er fastgjort. Fremover kan du bruge denne funktion via værktøjslinjen</translation>
 <translation id="90181708067259747">Udløbsdato: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Installationen er fuldført</translation>
 <translation id="901876615920222131">Hvis du vil åbne gruppen igen, skal du klikke på gruppen</translation>
@@ -10837,6 +10850,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Du får den bedst mulige oplevelse ved at installere <ph name="DEVICE_OS" /> på din interne disk. Du kan også installere det senere via loginskærmen.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Hvis du ikke er klar til at installere, kan du prøvekøre det via USB. På denne måde vil du beholde dit eksisterende OS og dine data, men lagerpladsen og ydeevnen kan være begrænset.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Åbn som fastgjort fane</translation>
+<translation id="9122788874051694311">Vil du gemme denne adgangsnøgle uden for inkognito?</translation>
 <translation id="9123287046453017203">Din enhed er ikke opdateret</translation>
 <translation id="9125910124977405374">Fjern <ph name="LANGUAGE_NAME" /> fra listen over sprog, der oversættes automatisk</translation>
 <translation id="9126149354162942022">Markørfarve</translation>
diff --git a/chrome/app/resources/generated_resources_de.xtb b/chrome/app/resources/generated_resources_de.xtb
index 867e509..922a256a 100644
--- a/chrome/app/resources/generated_resources_de.xtb
+++ b/chrome/app/resources/generated_resources_de.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux steht eventuell nicht ausreichend Speicherplatz zur Verfügung. Du kannst deinen Speicherplatz für Linux erweitern und die Wiederherstellung über die <ph name="LINK_START" />Einstellungen<ph name="LINK_END" /> noch einmal versuchen.</translation>
 <translation id="1261380933454402672">Moderat</translation>
 <translation id="126156426083987769">Ein Problem mit den Gerätelizenzen für den Demomodus ist aufgetreten.</translation>
+<translation id="1261885284931493480">Tab(s) entfernen und Gruppe löschen?</translation>
 <translation id="1263231323834454256">Leseliste</translation>
 <translation id="1263733306853729545">Kandidatenliste mit den Tasten "<ph name="MINUS" />" und "<ph name="EQUAL" />" paginieren</translation>
 <translation id="126387934568812801">Diesen Screenshot und Titel der offenen Tabs mitsenden</translation>
@@ -873,6 +874,7 @@
 <translation id="1634224622052500893">WLAN gefunden</translation>
 <translation id="1634783886312010422">Hast du dieses Passwort schon auf <ph name="WEBSITE" /> geändert?</translation>
 <translation id="1636212173818785548">Ok</translation>
+<translation id="1636542522761359943">Willkommen, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />App-Daten können alle Daten sein, die eine App aufgrund der Einstellungen des Entwicklers gespeichert hat, z. B. Kontakte, Nachrichten und Fotos. Sicherungsdaten werden nicht auf dein Google Drive-Speicherkontingent angerechnet.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Du kannst diesen Dienst in den Einstellungen deaktivieren.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Dieses Lesezeichen auf dem iPhone abrufen</translation>
@@ -909,6 +911,7 @@
 <translation id="1652862280638399816">Wenn du den Passwortmanager mit dem macOS-Schlüsselbund verwenden möchtest, starte Chromium neu und erlaube den Zugriff auf den Schlüsselbund. Deine Tabs werden nach dem Neustart wieder geöffnet.</translation>
 <translation id="1653958716132599769">Zusammengehörende Tabs gruppieren</translation>
 <translation id="1654580009054503925">Dürfen keine Anfragen anzeigen</translation>
+<translation id="1654713139320245449">Keine Streamingziele gefunden. Benötigst du Hilfe?</translation>
 <translation id="1656528038316521561">Deckkraft des Hintergrunds</translation>
 <translation id="1657406563541664238">Zur Verbesserung von <ph name="PRODUCT_NAME" /> Nutzungsstatistiken und Absturzberichte automatisch an Google senden</translation>
 <translation id="1657937299377480641">Wenn du dich noch einmal anmelden möchtest, um auf Bildungsressourcen zuzugreifen, brauchst du die Erlaubnis deiner Eltern</translation>
@@ -974,7 +977,7 @@
 <translation id="1708713382908678956"><ph name="NAME_PH" /> (ID: <ph name="ID_PH" />)</translation>
 <translation id="1708839673480942471">App-Benachrichtigungen, „Bitte nicht stören“ und App-Kennzeichen verwalten</translation>
 <translation id="1708979186656821319">Nicht anzeigen, wenn Downloads abgeschlossen sind</translation>
-<translation id="1709085899471866534">Du kannst auf einen Blick sehen, wenn Tabs inaktiv sind. Dieses neue Design lässt sich jederzeit in den Einstellungen deaktivieren.</translation>
+<translation id="1709085899471866534">Du siehst auf einen Blick, wenn Tabs inaktiv sind. Dieses neue Design lässt sich jederzeit in den Einstellungen deaktivieren.</translation>
 <translation id="1709106626015023981"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (nativ)</translation>
 <translation id="1709217939274742847">Wähle ein Ticket für die Authentifizierung aus. <ph name="LINK_BEGIN" />Weitere Informationen<ph name="LINK_END" /></translation>
 <translation id="1709762881904163296">Netzwerkeinstellungen</translation>
@@ -1628,12 +1631,14 @@
 <translation id="2187895286714876935">Fehler beim Importieren des Serverzertifikats</translation>
 <translation id="2187906491731510095">Erweiterungen wurden aktualisiert</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> öffnen</translation>
+<translation id="2188919919468240749">Tabgruppe löschen?</translation>
 <translation id="2190069059097339078">WLAN-Anmeldedaten-Abruf</translation>
 <translation id="219008588003277019">Natives Client-Modul: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(leer)</translation>
 <translation id="2190967441465539539">Zugriff auf Kamera und Mikrofon nicht möglich</translation>
 <translation id="2191754378957563929">An</translation>
 <translation id="2192505247865591433">von</translation>
+<translation id="219283042927675668">Tabs in Gruppe</translation>
 <translation id="2193365732679659387">Vertrauenseinstellungen</translation>
 <translation id="2194856509914051091">Wichtige Punkte</translation>
 <translation id="2195331105963583686">Du kannst dieses Gerät (<ph name="DEVICE_TYPE" />) auch danach verwenden, erhältst jedoch keine automatischen Software- und Sicherheitsupdates mehr</translation>
@@ -1854,6 +1859,7 @@
 <translation id="2350133097354918058">Neu geladen</translation>
 <translation id="2350182423316644347">App wird gestartet...</translation>
 <translation id="235028206512346451">Wenn du dich von deinem Gerät entfernst, wird der Bildschirm automatisch gesperrt. Solange du dich vor deinem Gerät befindest, bleibt er länger aktiv. Wenn du keinen Sperrbildschirm verwendest, wird dein Gerät stattdessen in den Ruhemodus versetzt.</translation>
+<translation id="2352305801620974284">Wenn du dich auf diesem Gerät anmeldest, werden deine Passwörter und weitere Daten aus deinem Google-Konto abgerufen</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Notizen auf dem Sperrbildschirm werden automatisch in <ph name="LOCK_SCREEN_APP_NAME" /> gespeichert. Deine letzte Notiz wird weiterhin auf dem Sperrbildschirm angezeigt.</translation>
 <translation id="2353297238722298836">Kamera- und Mikrofonnutzung zulässig</translation>
@@ -2064,6 +2070,7 @@
 <translation id="249113932447298600">Das Gerät <ph name="DEVICE_LABEL" /> wird derzeit nicht unterstützt.</translation>
 <translation id="2491587035099903063">Vorschau der Stimme für <ph name="LANGUAGE" /> anhören</translation>
 <translation id="2492461744635776704">Zertifikatssignaturanfrage wird vorbereitet</translation>
+<translation id="2492964937550251173">Tab(s) schließen und Gruppe löschen?</translation>
 <translation id="249330843868392562">Einstellungen für Sprachausgabe öffnen</translation>
 <translation id="2494555621641843783">Steam kann nicht installiert werden</translation>
 <translation id="2495141202137516054">Aus deiner Ablage</translation>
@@ -2233,6 +2240,7 @@
 <translation id="262087792756666314">Du kannst diese Funktion anpinnen, um leichter darauf zuzugreifen. Klicke dazu oben in der Seitenleiste auf die Schaltfläche „Anpinnen“.</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Sprachmodell von Google Assistant trainieren</translation>
+<translation id="2622280935687585828"><ph name="SITE_NAME" /> aus deaktivierten Websites entfernen</translation>
 <translation id="26224892172169984">Verarbeitung von Protokollen für keine Website zulassen</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI-Geräte dürfen gesteuert und neu programmiert werden</translation>
@@ -2406,6 +2414,7 @@
 <translation id="2743387203779672305">In Zwischenablage kopieren</translation>
 <translation id="274362947316498129">Eine App versucht, auf <ph name="DEVICE_NAME" /> zuzugreifen. Deaktivieren Sie den Datenschutzschalter von <ph name="DEVICE_NAME" />, um den Zugriff zu erlauben.</translation>
 <translation id="2745080116229976798">Microsoft - Qualifizierte Unterordnung</translation>
+<translation id="2747853844543618313">Du musst die Streaminganfrage auf deinem „<ph name="DEVICE_NAME" />“ akzeptieren.</translation>
 <translation id="2749756011735116528">In <ph name="PRODUCT_NAME" /> anmelden</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Grammatik zusammen mit Rechtschreibung prüfen</translation>
@@ -2776,6 +2785,7 @@
 <translation id="3021066826692793094">Schmetterling</translation>
 <translation id="3021678814754966447">Frame-Quelltext &amp;anzeigen</translation>
 <translation id="3021902017511220299">Fehler beim Scannen. Diese Aktion wird von deinem Administrator blockiert.</translation>
+<translation id="3022068420678496307">Dadurch wird die Gruppe auf allen Geräten gelöscht, die mit diesem Google-Konto in Chrome angemeldet sind.</translation>
 <translation id="3022361196600037287">„<ph name="DEVICE" />“ wird von diesem Chromebook entfernt und nicht in „<ph name="PRIMARY_EMAIL" />“ gespeichert.</translation>
 <translation id="3022978424994383087">Nicht verstanden.</translation>
 <translation id="3023464535986383522">Vorlesen</translation>
@@ -3690,7 +3700,7 @@
 <translation id="3730076362938942381">Schreib-App für Eingabestift</translation>
 <translation id="3730298295914858769">WiFi Direct-Funktionen:</translation>
 <translation id="3732078975418297900">Fehler in Zeile <ph name="ERROR_LINE" /></translation>
-<translation id="3732108843630241049">Dieses Gerät erhält keine automatischen Softwareupdates mehr. Aktiviere erweiterte Sicherheitsupdates, um weiter Sicherheits-, Stabilitäts- und Leistungsverbesserungen zu erhalten. Einige Funktionen sind eingeschränkt. <ph name="LINK_BEGIN" />Weitere Informationen<ph name="LINK_END" /></translation>
+<translation id="3732108843630241049">Dieses Gerät erhält keine automatischen Softwareupdates mehr. Aktiviere erweiterte Sicherheitsupdates, um weiterhin Sicherheits-, Stabilitäts- und Leistungsupdates zu erhalten. Einige Funktionen werden eingeschränkt. <ph name="LINK_BEGIN" />Weitere Informationen<ph name="LINK_END" /></translation>
 <translation id="3732414796052961578">Als „<ph name="ACCOUNT_NAME" />“ fortfahren</translation>
 <translation id="3732530910372558017">PIN darf maximal 63 Zeichen lang sein</translation>
 <translation id="3732857534841813090">Informationen zu Google Assistant</translation>
@@ -4055,7 +4065,6 @@
 <translation id="3983586614702900908">Geräte von einem unbekannten Anbieter</translation>
 <translation id="3983764759749072418">Play Store-Apps haben Zugriff auf dieses Gerät.</translation>
 <translation id="3983769721878416534">Verzögerung vor Klick</translation>
-<translation id="3983793589497399077">Wähle durch Klicken oder Ziehen einen Bereich aus, um mit Lens zu suchen</translation>
 <translation id="3984135167056005094">E-Mail-Adresse nicht angeben</translation>
 <translation id="3984159763196946143">Demomodus konnte nicht gestartet werden</translation>
 <translation id="3984431586879874039">Zulassen, dass diese Website deinen Sicherheitsschlüssel ausliest?</translation>
@@ -4178,6 +4187,7 @@
 <translation id="4078903002989614318">Sortier- und Listenoptionen</translation>
 <translation id="4079140982534148664">Erweiterte Rechtschreibprüfung verwenden</translation>
 <translation id="4082333918978320301">Keine Website darf dein Mikrofon verwenden</translation>
+<translation id="4083735423615351075">Die Tabs bleiben auf diesem Gerät geöffnet, aber die Gruppe wird auf allen Geräten gelöscht, die mit diesem Google-Konto in Chrome angemeldet sind.</translation>
 <translation id="4084682180776658562">Lesezeichen</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> schließen</translation>
 <translation id="4085298594534903246">JavaScript wurde auf dieser Seite blockiert.</translation>
@@ -4187,6 +4197,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Rechts anzeigen</translation>
+<translation id="4088879333319441249">Gruppierung der Tabs aufheben?</translation>
 <translation id="4089235344645910861">Einstellungen gespeichert. Synchronisation gestartet.</translation>
 <translation id="4089817585533500276">Umschalttaste + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Bestätigten Zugriff aktivieren</translation>
@@ -5668,6 +5679,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />" aktivieren?</translation>
 <translation id="5243522832766285132">Bitte versuche es in einigen Minuten noch einmal</translation>
 <translation id="5244234799035360187">OneDrive wird jetzt in der App „Dateien“ angezeigt</translation>
+<translation id="5244466461749935369">Vorerst behalten</translation>
 <translation id="5244474230056479698">Wird mit <ph name="EMAIL" /> synchronisiert</translation>
 <translation id="5245610266855777041">Erste Schritte mit Konten von Bildungseinrichtungen</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> ist abgestürzt. Klicke auf dieses Fenster, um die App erneut zu laden.</translation>
@@ -5936,6 +5948,7 @@
 <translation id="5453829744223920473">Das Kind kann wie im Unterricht alle Apps, Lesezeichen und Ressourcen der Bildungseinrichtung nutzen. Die Schule legt die Grundregeln fest.</translation>
 <translation id="5454166040603940656">mit <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Weitere Suchergebnisse einblenden</translation>
+<translation id="5457082343331641453">Deiner Suche hinzufügen</translation>
 <translation id="5457113250005438886">Ungültig</translation>
 <translation id="5457459357461771897">Fotos, Musik und andere Medien auf deinem Computer lesen und löschen</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6411,6 +6424,7 @@
 <translation id="5816434091619127343">Die angeforderten Änderungen würden den Drucker unbrauchbar machen.</translation>
 <translation id="581659025233126501">Synchronisierung aktivieren</translation>
 <translation id="5817918615728894473">Koppeln</translation>
+<translation id="5817963443108180228">Willkommen zurück, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">alle Apps</translation>
 <translation id="5821565227679781414">Verknüpfung erstellen</translation>
 <translation id="5824976764713185207">Seite automatisch lesen, wenn sie vollständig geladen ist</translation>
@@ -7010,6 +7024,7 @@
 <translation id="6265159465845424232">Vor dem Kopieren oder Verschieben von Microsoft-Dateien in bzw. nach Microsoft OneDrive fragen</translation>
 <translation id="6265687851677020761">Port entfernen</translation>
 <translation id="6266532094411434237">Verbindung zu <ph name="DEVICE" /> wird hergestellt</translation>
+<translation id="6266984048393265562">Profil anpassen</translation>
 <translation id="6267166720438879315">Wähle ein Zertifikat für die Authentifizierung bei <ph name="HOST_NAME" /> aus.</translation>
 <translation id="6268252012308737255">Öffnen mit <ph name="APP" /></translation>
 <translation id="6270309713620950855">Automatische Erinnerung bei Stummschaltung</translation>
@@ -7148,7 +7163,6 @@
 <translation id="6383382161803538830">Lesemodus auf dieser Seite nicht verfügbar</translation>
 <translation id="638418309848716977">Unterstützte Links</translation>
 <translation id="6384275966486438344">Sucheinstellungen in <ph name="SEARCH_HOST" /> ändern</translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Unbenannte Gruppe – 1 Tab}other{Unbenannte Gruppe – # Tab}}</translation>
 <translation id="6385149369087767061">Stelle eine Internetverbindung her und versuche es noch einmal</translation>
 <translation id="6385382178401976503">Karte: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Achtung: Die detaillierte Protokollierung ist aktiviert. Die Protokolle können URLs oder andere vertrauliche Informationen enthalten. Bitte überprüfe diese und bestätige, dass du mit dem Senden dieser Informationen einverstanden bist.</translation>
@@ -7227,6 +7241,7 @@
 <translation id="6445450263907939268">Wenn du diese Änderungen nicht beabsichtigt hattest, kannst du deine vorherigen Einstellungen wiederherstellen.</translation>
 <translation id="6446213738085045933">Desktopverknüpfung erstellen</translation>
 <translation id="6447842834002726250">Cookies</translation>
+<translation id="6449554712554071184">Dadurch wird die Gruppe endgültig von deinem Gerät gelöscht.</translation>
 <translation id="6450876761651513209">Datenschutzeinstellungen ändern</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> und 1 weiterer Tab}other{<ph name="PAGE_TITLE" /> und # weitere Tabs}}</translation>
 <translation id="6451689256222386810">Wenn du deine Passphrase vergessen hast oder diese Einstellung ändern möchtest, <ph name="BEGIN_LINK" />setze die Synchronisierung zurück<ph name="END_LINK" />.</translation>
@@ -7373,6 +7388,7 @@
 <translation id="6556866813142980365">Wiederholen</translation>
 <translation id="6556903358015358733">Design und Hintergrund</translation>
 <translation id="6557290421156335491">Meine Verknüpfungen</translation>
+<translation id="6560061709899140565">Andere Streamingsitzungen einblenden</translation>
 <translation id="6560151649238390891">Vorschlag eingefügt</translation>
 <translation id="6561726789132298588">Eingabe</translation>
 <translation id="6562117348069327379">Systemprotokolle im Downloadverzeichnis speichern.</translation>
@@ -7462,6 +7478,7 @@
 <translation id="6635674640674343739">Netzwerkverbindung kann nicht hergestellt werden. Prüfe deine Netzwerkverbindung und versuche es noch einmal.</translation>
 <translation id="663569763553406962">Erweiterungen, die eine Website lesen oder ändern können</translation>
 <translation id="6635944431854494329">Diese Funktion kann vom Inhaber über "Einstellungen" &gt; "Erweitert" &gt; "Diagnose- und Nutzungsdaten automatisch an Google senden" gesteuert werden.</translation>
+<translation id="6636572589916466933">Akzeptiere die Streaminganfrage auf „<ph name="DEVICE_NAME" />“.</translation>
 <translation id="6636623428211296678">Weitere Einstellungen ansehen oder jetzt beenden</translation>
 <translation id="6639554308659482635">SQLite-Speicher</translation>
 <translation id="6640268266988685324">Geöffneter Tab</translation>
@@ -8147,6 +8164,7 @@
 <translation id="715396040729904728">Launcher-Taste + Umschalttaste + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Gib uns Feedback oder beschreibe das Problem. Teile uns nach Möglichkeit auch mit, wie wir das Problem reproduzieren können.</translation>
 <translation id="7154130902455071009">Startseite in <ph name="START_PAGE" /> ändern</translation>
+<translation id="7155161204362351654">Bessere Videoqualität und längere Akkulaufzeit. Videos werden nur auf deinem für Google Cast optimierten Bildschirm abgespielt.</translation>
 <translation id="7159953856712257647">Standardmäßig installiert</translation>
 <translation id="7160182524506337403">Du kannst jetzt die Benachrichtigungen von deinem Smartphone aufrufen</translation>
 <translation id="7165263843655074092">Dieses Gerät wird durch die standardmäßigen Sicherheitsfunktionen geschützt</translation>
@@ -9005,6 +9023,7 @@
 <translation id="7788948939674438635">Websites dürfen meine Tastatur nicht sperren</translation>
 <translation id="7789963078219276159">Der Hintergrund der Startseite wurde zu <ph name="CATEGORY" /> geändert.</translation>
 <translation id="7790689625219600437">Optische Zeichenerkennung für PDFs</translation>
+<translation id="7790737481627460475">Dateien auf diesem Chromebook</translation>
 <translation id="7791269138074599214">Eingabemethode</translation>
 <translation id="7791429245559955092">Diese Anwendung wird im aktuell verwendeten Chrome-Profil installiert</translation>
 <translation id="7791436592012979144">Umgekehrtes Scrollen aktiviert</translation>
@@ -9034,6 +9053,7 @@
 <translation id="7810202088502699111">Pop-ups wurden auf dieser Seite blockiert.</translation>
 <translation id="7810367892333449285">Deine Eingabe muss dieses Format haben: <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+-Adresse<ph name="LPA_2" />$<ph name="LPA_3" />optionale ID zum Abgleich<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Versuche es noch einmal oder wähle unten eines der zuvor generierten Designs aus.</translation>
+<translation id="7814090115158024843">Auf diesen Websites nie Hilfe beim Formulieren anbieten</translation>
 <translation id="7814458197256864873">&amp;Kopieren</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Tastenkombination <ph name="SHORTCUT" /> für <ph name="EXTENSION_NAME" /> bearbeiten</translation>
@@ -9265,8 +9285,10 @@
 <translation id="7974936243149753750">Overscan</translation>
 <translation id="7975504106303186033">Du musst dieses Chrome Education-Gerät im Konto einer Bildungseinrichtung anmelden. Unter g.co/workspace/edusignup kannst du dich für ein neues Konto registrieren.</translation>
 <translation id="7977451675950311423">Warnt dich, wenn du ein Passwort verwendest, das bei einer Datenpanne gehackt wurde.</translation>
+<translation id="797824194429476746">Die Tabs bleiben auf diesem Gerät geöffnet, aber die Gruppe wird endgültig gelöscht.</translation>
 <translation id="7978412674231730200">Privater Schlüssel</translation>
 <translation id="7978450511781612192">Dadurch wirst du aus deinen Google-Konten abgemeldet. Deine Lesezeichen, der Verlauf, deine Passwörter usw. werden nicht mehr synchronisiert.</translation>
+<translation id="7980066177668669492">Base64-verschlüsselter ASCII-Code, mehrere Zertifikate</translation>
 <translation id="7980084013673500153">Asset-ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Gespeicherten Passkey für <ph name="APP_NAME" /> verwenden</translation>
 <translation id="7981662863948574132">Pop-up mit Geräte-EID und QR-Code anzeigen</translation>
@@ -9376,7 +9398,7 @@
 <translation id="8058986560951482265">Ruckeln</translation>
 <translation id="8059417245945632445">&amp;Geräte untersuchen</translation>
 <translation id="8059456211585183827">Es sind keine Drucker verfügbar, die gespeichert werden können.</translation>
-<translation id="8059656205925725023">Dieses Gerät erhält keine automatischen Softwareupdates mehr, aber Sicherheits-, Stabilitäts- und Leistungsverbesserungen sind weiterhin möglich. Einige Funktionen sind eingeschränkt.</translation>
+<translation id="8059656205925725023">Dieses Gerät erhält keine automatischen Softwareupdates mehr, aber Sicherheits-, Stabilitäts- und Leistungsupdates sind weiterhin möglich. Einige Funktionen werden eingeschränkt.</translation>
 <translation id="8061091456562007989">Änderung rückgängig machen</translation>
 <translation id="8061244502316511332">Dieser Tab verwendet dein Mikrofon</translation>
 <translation id="8061970399284390013">Rechtschreib- und Grammatikprüfung</translation>
@@ -9679,6 +9701,7 @@
 <translation id="8276242035951017580">Keine App darf deine Kamera verwenden</translation>
 <translation id="8276560076771292512">Cache leeren und vollständig aktualisieren</translation>
 <translation id="8276850948802942358">Weitere Informationen, wie du einer Website vorübergehend die Berechtigung gibst, Drittanbieter-Cookies zu verwenden</translation>
+<translation id="8277907305629781277">Du hast diesen Passkey am <ph name="DATE" /> erstellt</translation>
 <translation id="8280267190418431666">Websites in meinen Sprachen</translation>
 <translation id="828180235270931531">Weitere verfügbare Drucker</translation>
 <translation id="8281886186245836920">Überspringen</translation>
@@ -10357,7 +10380,6 @@
 <translation id="8784626084144195648">Gruppendurchschnitt</translation>
 <translation id="8785622406424941542">Eingabestift</translation>
 <translation id="8786824282808281903">Wenn dein Kind dieses Symbol sieht, kann es mit einem Fingerabdruck seine Identität bestätigen oder Käufe genehmigen.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Unbenannte Gruppe – 1 Tab}other{Unbenannte Gruppe – # Tab}}</translation>
 <translation id="8787752878731558379">Hilf uns, Chrome zu verbessern, indem du uns mitteilst, warum du Drittanbieter-Cookies zulässt</translation>
 <translation id="8789898473175677810">Chrome ist Teil einer <ph name="LINK_BEGIN" />gemeinsamen Initiative<ph name="LINK_END" /> mit dem Ziel, das websiteübergreifende Tracking zu reduzieren und die Verwendung von Drittanbieter-Cookies schrittweise einzustellen. Wir möchten das aber verantwortungsvoll umsetzen, da viele Websites auf Drittanbieter-Cookies angewiesen sind, damit sie wie vorgesehen funktionieren. So verwenden viele Websites Drittanbieter-Cookies, um die Anmeldung zu vereinfachen, eingebettete Chat- und Kommentarsysteme zu unterstützen und Zahlungsdienste anzubieten. Werbetreibende verwenden oft Drittanbieter-Cookies, um Werbung besser zu personalisieren. Das ist wichtig, weil Websites oft auf Werbung angewiesen sind, um ihre Ausgaben decken und ihre Onlineinhalte weiterhin kostenlos anbieten zu können.</translation>
 <translation id="8791157330927639737">Weitere Informationen zum Aktualisieren</translation>
@@ -10592,6 +10614,7 @@
 <translation id="8962863356073277855">Die URL muss das Format „https://www.beispiel.de“ haben</translation>
 <translation id="8962918469425892674">Diese Website nutzt Bewegungs- oder Lichtsensoren.</translation>
 <translation id="8963117664422609631">Website-Einstellungen aufrufen</translation>
+<translation id="8964795217937248330">Tab(s) schließen und Gruppe löschen?</translation>
 <translation id="8965037249707889821">Altes Passwort eingeben</translation>
 <translation id="8966809848145604011">Weitere Profile</translation>
 <translation id="8967427617812342790">Zur Leseliste hinzufügen</translation>
@@ -11025,6 +11048,7 @@
 <translation id="979345485590886759">Websites dürfen nachfragen, ob mein Mauszeiger gesperrt werden darf</translation>
 <translation id="980731642137034229">Dreipunkt-Menü-Schaltfläche</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Hallo <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Alle Tabs schließen</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – Kamera und Mikrofon zeichnen auf</translation>
 <translation id="984275831282074731">Zahlungsmethoden</translation>
diff --git a/chrome/app/resources/generated_resources_el.xtb b/chrome/app/resources/generated_resources_el.xtb
index 0394267..6818dc3b 100644
--- a/chrome/app/resources/generated_resources_el.xtb
+++ b/chrome/app/resources/generated_resources_el.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Το Linux μπορεί να μην έχει αρκετό χώρο δίσκου. Μπορείτε να αυξήσετε τον χώρο δίσκου του Linux και να δοκιμάσετε να επαναλάβετε την επαναφορά στις <ph name="LINK_START" />Ρυθμίσεις<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Μέτρια</translation>
 <translation id="126156426083987769">Παρουσιάστηκε ένα πρόβλημα με τις άδειες των συσκευών λειτουργίας επίδειξης.</translation>
+<translation id="1261885284931493480">Να καταργηθούν οι καρτέλες και να διαγραφεί η ομάδα;</translation>
 <translation id="1263231323834454256">Λίστα ανάγνωσης</translation>
 <translation id="1263733306853729545">Χρησιμοποιήστε τα πλήκτρα <ph name="MINUS" /> και <ph name="EQUAL" /> για αλλαγή σελίδας σε μια λίστα υποψηφίων</translation>
 <translation id="126387934568812801">Συμπερίληψη αυτού του στιγμιότυπου οθόνης και των τίτλων ανοικτών καρτελών</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">Βρέθηκε δίκτυο Wi-Fi</translation>
 <translation id="1634783886312010422">Αλλάξατε ήδη αυτόν τον κωδικό πρόσβασης στον ιστότοπο <ph name="WEBSITE" />;</translation>
 <translation id="1636212173818785548">ΟΚ</translation>
+<translation id="1636542522761359943">Καλώς ορίσατε, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Τα δεδομένα εφαρμογών μπορούν να είναι οποιαδήποτε δεδομένα έχει αποθηκεύσει κάποια εφαρμογή (με βάση τις ρυθμίσεις του προγραμματιστή), συμπεριλαμβανομένων δεδομένων όπως είναι οι επαφές, τα μηνύματα και οι φωτογραφίες. Τα δεδομένα αντιγράφων ασφαλείας δεν θα υπολογίζονται στο όριο του αποθηκευτικού χώρου σας στο Drive.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Μπορείτε να απενεργοποιήσετε αυτή την υπηρεσία από τις Ρυθμίσεις.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Λάβετε αυτόν τον σελιδοδείκτη στο iPhone</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">Για να χρησιμοποιήσετε τον Διαχειριστή κωδικών πρόσβασης με την Κλειδοθήκη macOS, επανεκκινήστε το Chromium και επιτρέψτε την πρόσβαση στην Κλειδοθήκη. Οι καρτέλες σας θα ανοίξουν ξανά μετά την επανεκκίνηση.</translation>
 <translation id="1653958716132599769">Ομαδοποίηση σχετικών καρτελών</translation>
 <translation id="1654580009054503925">Δεν επιτρέπεται η εμφάνιση αιτημάτων</translation>
+<translation id="1654713139320245449">Δεν βρέθηκαν προορισμοί μετάδοσης. Χρειάζεστε βοήθεια;</translation>
 <translation id="1656528038316521561">Αδιαφάνεια φόντου</translation>
 <translation id="1657406563541664238">Συμβάλετε στη βελτίωση του <ph name="PRODUCT_NAME" /> στέλνοντας αυτόματα στην Google στατιστικά στοιχεία χρήσης και αναφορές σφαλμάτων</translation>
 <translation id="1657937299377480641">Για να συνδεθείτε ξανά για πρόσβαση σε εκπαιδευτικούς πόρους, ζητήστε από έναν γονέα να σας δώσει άδεια.</translation>
@@ -1641,12 +1644,14 @@
 <translation id="2187895286714876935">Σφάλμα εισαγωγής του πιστοποιητικού διακομιστή  </translation>
 <translation id="2187906491731510095">Οι επεκτάσεις ενημερώθηκαν</translation>
 <translation id="2188881192257509750">Άνοιγμα <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Να διαγραφεί η ομάδα καρτελών;</translation>
 <translation id="2190069059097339078">Εργαλείο λήψης διαπιστευτηρίων Wi-Fi</translation>
 <translation id="219008588003277019">Λειτουργική μονάδα Native Client: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(κενό)</translation>
 <translation id="2190967441465539539">Δεν είναι δυνατή η πρόσβαση στην κάμερα και στο μικρόφωνο</translation>
 <translation id="2191754378957563929">Ενεργοποιημένο</translation>
 <translation id="2192505247865591433">Από:</translation>
+<translation id="219283042927675668">Καρτέλες στην ομάδα</translation>
 <translation id="2193365732679659387">Ρυθμίσεις αξιοπιστίας</translation>
 <translation id="2194856509914051091">Λάβετε υπόψη τα εξής</translation>
 <translation id="2195331105963583686">Θα μπορείτε ακόμη να χρησιμοποιήσετε τη συσκευή <ph name="DEVICE_TYPE" /> μετά από αυτό το χρονικό διάστημα, αλλά δεν θα λαμβάνει πλέον αυτόματες ενημερώσεις λογισμικού και ασφαλείας.</translation>
@@ -1870,6 +1875,7 @@
 <translation id="2350133097354918058">Έγινε επανάληψη φόρτωσης</translation>
 <translation id="2350182423316644347">Προετοιμασία εφαρμογής…</translation>
 <translation id="235028206512346451">Εάν απομακρυνθείτε από τη συσκευή, η οθόνη σας θα κλειδώσει αυτόματα. Όταν είστε μπροστά στη συσκευή, η οθόνη θα παραμείνει σε κανονική κατάσταση λειτουργίας για μεγαλύτερο χρονικό διάστημα. Εάν δεν χρησιμοποιείτε κλείδωμα οθόνης, η συσκευή δεν θα κλειδωθεί αλλά θα μπει σε λειτουργία αδράνειας.</translation>
+<translation id="2352305801620974284">Όταν συνδέεστε σε αυτή τη συσκευή, λαμβάνετε τους κωδικούς πρόσβασης και πολλά άλλα από τον Λογαριασμό σας Google</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Οι σημειώσεις στην οθόνη κλειδώματος αποθηκεύονται αυτόματα στο <ph name="LOCK_SCREEN_APP_NAME" />. Η πιο πρόσφατη σημείωση θα παραμείνει στην οθόνη κλειδώματος.</translation>
 <translation id="2353297238722298836">Η κάμερα και το μικρόφωνο επιτρέπονται</translation>
@@ -2080,6 +2086,7 @@
 <translation id="249113932447298600">Λυπούμαστε, η συσκευή <ph name="DEVICE_LABEL" /> δεν υποστηρίζεται προς το παρόν.</translation>
 <translation id="2491587035099903063">προεπισκόπηση φωνής για <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Προετοιμασία αιτήματος για υπογραφή πιστοποιητικού</translation>
+<translation id="2492964937550251173">Κλείσιμο καρτελών και διαγραφή ομάδας;</translation>
 <translation id="249330843868392562">Άνοιγμα ρυθμίσεων μετατροπής κειμένου σε ομιλία</translation>
 <translation id="2494555621641843783">Δεν είναι δυνατή η εγκατάσταση του Steam</translation>
 <translation id="2495141202137516054">Από το Drive σας</translation>
@@ -2249,6 +2256,7 @@
 <translation id="262087792756666314">Μπορείτε να καρφιτσώσετε αυτή τη λειτουργία για εύκολη πρόσβαση. Κάντε κλικ στο κουμπί Καρφίτσωμα στο επάνω μέρος του πλαϊνού πλαισίου</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Εκπαίδευση φωνητικού μοντέλου Βοηθού Google</translation>
+<translation id="2622280935687585828">Κατάργηση <ph name="SITE_NAME" /> από τους απενεργοποιημένους ιστοτόπους</translation>
 <translation id="26224892172169984">Να μην επιτρέπεται σε κανέναν ιστότοπο ο χειρισμός πρωτοκόλλων</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Επιτρέπεται ο έλεγχος και ο επαναπρογραμματισμός των συσκευών MIDI</translation>
@@ -2422,6 +2430,7 @@
 <translation id="2743387203779672305">Αντιγραφή στο πρόχειρο</translation>
 <translation id="274362947316498129">Μια εφαρμογή προσπαθεί να αποκτήσει πρόσβαση στη συσκευή <ph name="DEVICE_NAME" />. Απενεργοποιήστε τον διακόπτη απορρήτου της συσκευής <ph name="DEVICE_NAME" /> για να επιτρέψετε την πρόσβαση.</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313">Φροντίστε να αποδεχτείτε το αίτημα μετάδοσης στη συσκευή <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Συνδεθείτε στο <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Γραμματικός Έλεγχος Μαζί με τον Ορθογραφικό</translation>
@@ -2792,6 +2801,7 @@
 <translation id="3021066826692793094">Πεταλούδα</translation>
 <translation id="3021678814754966447">&amp;Προβολή Πηγαίου Κώδικα Πλαισίου</translation>
 <translation id="3021902017511220299">Η σάρωση απέτυχε. Αυτή η ενέργεια έχει αποκλειστεί από τον διαχειριστή σας.</translation>
+<translation id="3022068420678496307">Αυτή η ενέργεια θα διαγράψει την ομάδα από όλες τις συσκευές που είναι συνδεδεμένες στο Chrome με αυτόν τον Λογαριασμό Google.</translation>
 <translation id="3022361196600037287">Η συσκευή <ph name="DEVICE" /> θα καταργηθεί από αυτό το Chromebook και δεν θα αποθηκευτεί στον λογαριασμό <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Δεν έγινε κατανοητό.</translation>
 <translation id="3023464535986383522">Επιλέξτε για αυτόματη ανάγνωση</translation>
@@ -4071,7 +4081,6 @@
 <translation id="3983586614702900908">συσκευές από έναν άγνωστο πάροχο υπηρεσιών</translation>
 <translation id="3983764759749072418">Οι εφαρμογές του Play Store έχουν πρόσβαση σε αυτήν τη συσκευή.</translation>
 <translation id="3983769721878416534">Καθυστέρηση πριν από το κλικ</translation>
-<translation id="3983793589497399077">Κάντε κλικ ή σύρετε οπουδήποτε για αναζήτηση με το Lens</translation>
 <translation id="3984135167056005094">Να μην συμπεριληφθεί διεύθυνση ηλεκτρονικού ταχυδρομείου</translation>
 <translation id="3984159763196946143">Δεν ήταν δυνατή η έναρξη της λειτουργίας επίδειξης</translation>
 <translation id="3984431586879874039">Να επιτραπεί σε αυτόν τον ιστότοπο να δει το κλειδί ασφαλείας σας;</translation>
@@ -4194,6 +4203,7 @@
 <translation id="4078903002989614318">Επιλογές ταξινόμησης και λίστας</translation>
 <translation id="4079140982534148664">Χρήση βελτιωμένου ορθογραφικού ελέγχου</translation>
 <translation id="4082333918978320301">Δεν επιτρέπεται σε κανέναν ιστότοπο η χρήση του μικροφώνου</translation>
+<translation id="4083735423615351075">Οι καρτέλες θα παραμείνουν ανοιχτές σε αυτή τη συσκευή, αλλά η ομάδα θα διαγραφεί από όλες τις συσκευές που είναι συνδεδεμένες στο Chrome με αυτόν τον Λογαριασμό Google.</translation>
 <translation id="4084682180776658562">Σελιδοδείκτης</translation>
 <translation id="4084835346725913160">Κλείσιμο <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">Έγινε αποκλεισμός του JavaScript σε αυτήν τη σελίδα.</translation>
@@ -4203,6 +4213,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Εμφάνιση στα δεξιά</translation>
+<translation id="4088879333319441249">Να καταργηθεί η ομαδοποίηση της ομάδας καρτελών;</translation>
 <translation id="4089235344645910861">Οι ρυθμίσεις αποθηκεύτηκαν. Ο συγχρονισμός ξεκίνησε.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Ενεργοποίηση επαληθευμένης πρόσβασης</translation>
@@ -5684,6 +5695,7 @@
 <translation id="5242724311594467048">Ενεργοποίηση "<ph name="EXTENSION_NAME" />";</translation>
 <translation id="5243522832766285132">Δοκιμάστε ξανά σε λίγο</translation>
 <translation id="5244234799035360187">Το OneDrive θα εμφανίζεται πλέον στην εφαρμογή Αρχεία</translation>
+<translation id="5244466461749935369">Διατήρηση προς το παρόν</translation>
 <translation id="5244474230056479698">Συγχρονισμός με <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Ξεκινήστε με σχολικό λογαριασμό</translation>
 <translation id="5246282308050205996">Το <ph name="APP_NAME" /> παρουσίασε σφάλμα. Κάντε κλικ σε αυτό το πλαίσιο για να επανεκκινήσετε την εφαρμογή.</translation>
@@ -5952,6 +5964,7 @@
 <translation id="5453829744223920473">Το παιδί σας μπορεί να χρησιμοποιήσει όλες τις σχολικές εφαρμογές, τους σελιδοδείκτες και τους πόρους, όπως κάνει στην τάξη. Το σχολείο ορίζει τους βασικούς κανόνες.</translation>
 <translation id="5454166040603940656">με <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Δείτε περισσότερα αποτελέσματα αναζήτησης</translation>
+<translation id="5457082343331641453">Προσθήκη στην αναζήτηση</translation>
 <translation id="5457113250005438886">Μη έγκυρο</translation>
 <translation id="5457459357461771897">Ανάγνωση και διαγραφή φωτογραφιών, μουσικής και άλλων μέσων από τον υπολογιστή σας</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6430,6 +6443,7 @@
 <translation id="5816434091619127343">Οι ζητούμενες αλλαγές στον εκτυπωτή θα τον καθιστούσαν ακατάλληλο για χρήση.</translation>
 <translation id="581659025233126501">Ενεργοποίηση συγχρονισμού</translation>
 <translation id="5817918615728894473">Σύζευξη</translation>
+<translation id="5817963443108180228">Καλώς ορίσατε και πάλι, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">όλες οι εφαρμογές</translation>
 <translation id="5821565227679781414">Δημιουργία συντόμευσης</translation>
 <translation id="5824976764713185207">Αυτόματη ανάγνωση σελίδας μόλις ολοκληρωθεί η φόρτωσή της.</translation>
@@ -7030,6 +7044,7 @@
 <translation id="6265159465845424232">Να γίνεται ερώτηση πριν από την αντιγραφή ή τη μετακίνηση αρχείων Microsoft στο Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Κατάργηση θύρας</translation>
 <translation id="6266532094411434237">Σύνδεση με τη συσκευή <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Εξατομίκευση προφίλ</translation>
 <translation id="6267166720438879315">Επιλέξτε ένα πιστοποιητικό για την επαλήθευση της ταυτότητάς σας στον κεντρικό υπολογιστή <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Άνοιγμα με <ph name="APP" /></translation>
 <translation id="6270309713620950855">Υπενθύμιση σίγασης</translation>
@@ -7168,7 +7183,6 @@
 <translation id="6383382161803538830">Η λειτουργία ανάγνωσης δεν είναι διαθέσιμη σε αυτήν τη σελίδα</translation>
 <translation id="638418309848716977">Υποστηριζόμενοι σύνδεσμοι</translation>
 <translation id="6384275966486438344">Αλλαγή των ρυθμίσεων αναζήτησης σε: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Ομάδα χωρίς όνομα - 1 καρτέλα}other{Ομάδα χωρίς όνομα - # καρτέλες}}</translation>
 <translation id="6385149369087767061">Συνδεθείτε στο διαδίκτυο και δοκιμάστε ξανά</translation>
 <translation id="6385382178401976503">Κάρτα: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Προειδοποίηση: Έχει ενεργοποιηθεί η λεπτομερής καταγραφή. Τα παρακάτω αρχεία καταγραφής ενδέχεται να περιλαμβάνουν URL ή άλλες ευαίσθητες πληροφορίες. Ελέγξτε τα και βεβαιωθείτε ότι δεν υπάρχει πρόβλημα με την υποβολή αυτών των πληροφοριών.</translation>
@@ -7247,6 +7261,7 @@
 <translation id="6445450263907939268">Αν δεν επιθυμείτε να γίνουν αυτές οι αλλαγές, μπορείτε να επαναφέρετε τις προηγούμενες ρυθμίσεις σας.</translation>
 <translation id="6446213738085045933">Δημιουργία συντόμευσης επιφάνειας εργασίας</translation>
 <translation id="6447842834002726250">Cookie</translation>
+<translation id="6449554712554071184">Με αυτή την ενέργεια θα διαγραφεί οριστικά η ομάδα από τη συσκευή σας.</translation>
 <translation id="6450876761651513209">Αλλάξτε τις ρυθμίσεις απορρήτου σας</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> και μία ακόμη καρτέλα}other{<ph name="PAGE_TITLE" /> και # ακόμη καρτέλες}}</translation>
 <translation id="6451689256222386810">Εάν ξεχάσετε τη φράση πρόσβασης ή θέλετε να αλλάξετε αυτήν τη ρύθμιση, <ph name="BEGIN_LINK" />επαναφέρετε τον συγχρονισμό<ph name="END_LINK" />.</translation>
@@ -7393,6 +7408,7 @@
 <translation id="6556866813142980365">Επανάληψη ενέργειας</translation>
 <translation id="6556903358015358733">Θέμα και ταπετσαρία</translation>
 <translation id="6557290421156335491">Οι συντομεύσεις μου</translation>
+<translation id="6560061709899140565">Εμφάνιση άλλων περιόδων λειτουργίας μετάδοσης</translation>
 <translation id="6560151649238390891">Έγινε εισαγωγή της πρότασης.</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Αποθήκευση αρχείων καταγραφής συστήματος στον κατάλογο Λήψεις.</translation>
@@ -7482,6 +7498,7 @@
 <translation id="6635674640674343739">Δεν είναι δυνατή η δημιουργία σύνδεσης δικτύου. Ελέγξτε τη σύνδεση δικτύου και δοκιμάστε ξανά.</translation>
 <translation id="663569763553406962">Δείτε ποιες επεκτάσεις μπορούν να διαβάσουν ή να αλλάξουν έναν ιστότοπο</translation>
 <translation id="6635944431854494329">Ο κάτοχος μπορεί να ελέγξει αυτήν τη λειτουργία από την ενότητα Ρυθμίσεις &gt; Σύνθετες &gt; Αυτόματη αποστολή διαγνωστικών και δεδομένων χρήσης στην Google.</translation>
+<translation id="6636572589916466933">Αποδοχή αιτήματος μετάδοσης στη συσκευή <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Εξερευνήστε περισσότερες ρυθμίσεις παρακάτω ή ολοκληρώστε τώρα τη διαδικασία</translation>
 <translation id="6639554308659482635">Μνήμη SQLite</translation>
 <translation id="6640268266988685324">Άνοιγμα καρτέλας</translation>
@@ -8167,6 +8184,7 @@
 <translation id="715396040729904728">λειτουργία εκκίνησης εφαρμογών + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Μοιραστείτε τα σχόλιά σας ή περιγράψτε το πρόβλημά σας. Εάν είναι δυνατόν, συμπεριλάβετε βήματα για την αναπαραγωγή του προβλήματός σας.</translation>
 <translation id="7154130902455071009">Αλλαγή της σελίδας έναρξης σε: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Απολαύστε βίντεο καλύτερης ποιότητας και εξοικονομήστε μπαταρία. Το βίντεο θα αναπαράγεται μόνο στην οθόνη σας με δυνατότητα Cast.</translation>
 <translation id="7159953856712257647">Εγκαταστάθηκε από προεπιλογή</translation>
 <translation id="7160182524506337403">Μπορείτε πλέον να βλέπετε τις ειδοποιήσεις του τηλεφώνου σας</translation>
 <translation id="7165263843655074092">Λαμβάνετε βασική προστασία ασφαλείας σε αυτήν τη συσκευή</translation>
@@ -9025,6 +9043,7 @@
 <translation id="7788948939674438635">Να μην επιτρέπεται στους ιστοτόπους το κλείδωμα του πληκτρολογίου σας</translation>
 <translation id="7789963078219276159">Το φόντο της αρχικής σελίδας άλλαξε σε <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">OCR PDF</translation>
+<translation id="7790737481627460475">Αρχεία σε αυτό το Chromebook</translation>
 <translation id="7791269138074599214">Μέθοδος εισαγωγής</translation>
 <translation id="7791429245559955092">Αυτή η εφαρμογή θα εγκατασταθεί στο προφίλ Chrome που χρησιμοποιείτε αυτή τη στιγμή.</translation>
 <translation id="7791436592012979144">Η αντίστροφη κύλιση ενεργοποιήθηκε</translation>
@@ -9054,6 +9073,7 @@
 <translation id="7810202088502699111">Έγινε αποκλεισμός των αναδυόμενων παραθύρων σε αυτήν τη σελίδα.</translation>
 <translation id="7810367892333449285">Η καταχώρισή σας θα πρέπει να έχει τη μορφή <ph name="LPA_0" />$<ph name="LPA_1" />Διεύθυνση SM-DP+<ph name="LPA_2" />$<ph name="LPA_3" />προαιρετικό αναγνωριστικό αντιστοίχισης<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Δοκιμάστε ξανά ή επιλέξτε ένα από τα παρακάτω θέματα που δημιουργήθηκαν προηγουμένως.</translation>
+<translation id="7814090115158024843">Να μην παρέχεται ποτέ βοήθεια για τη σύνταξη σε αυτούς τους ιστοτόπους</translation>
 <translation id="7814458197256864873">&amp;Αντιγραφή</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Επεξεργασία συντόμευσης <ph name="SHORTCUT" /> για την εφαρμογή <ph name="EXTENSION_NAME" /></translation>
@@ -9285,8 +9305,10 @@
 <translation id="7974936243149753750">Υπερσάρωση</translation>
 <translation id="7975504106303186033">Θα πρέπει να εγγράψετε αυτήν τη συσκευή Chrome για εκπαιδευτικά ιδρύματα σε έναν λογαριασμό εκπαιδευτικού ιδρύματος. Για να εγγραφείτε για έναν νέο λογαριασμό, επισκεφτείτε τη διεύθυνση g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Σας προειδοποιεί εάν χρησιμοποιήσετε έναν κωδικό πρόσβασης που έχει παραβιαστεί μέσω παραβίασης δεδομένων.</translation>
+<translation id="797824194429476746">Οι καρτέλες θα παραμείνουν ανοιχτές σε αυτή τη συσκευή, αλλά η ομάδα θα διαγραφεί οριστικά.</translation>
 <translation id="7978412674231730200">Ιδιωτικό κλειδί</translation>
 <translation id="7978450511781612192">Με αυτή την ενέργεια, θα αποσυνδεθείτε από τους Λογαριασμούς σας Google. Οι σελιδοδείκτες, το ιστορικό, οι κωδικοί πρόσβασης και άλλες ρυθμίσεις δεν θα συγχρονίζονται πλέον.</translation>
+<translation id="7980066177668669492">ASCII με κωδικοποίηση Base64, πολλά πιστοποιητικά</translation>
 <translation id="7980084013673500153">Αναγνωριστικό στοιχείου: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Χρήση αποθηκευμένου κλειδιού πρόσβασης για την εφαρμογή <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Εμφάνιση αναδυόμενου παραθύρου αριθμού EID συσκευής και κωδικού QR</translation>
@@ -9699,6 +9721,7 @@
 <translation id="8276242035951017580">Δεν επιτρέπεται σε καμία εφαρμογή η χρήση της κάμερας</translation>
 <translation id="8276560076771292512">Άδειασμα προσωρινής μνήμης και υποχρεωτική επανάληψη φόρτωσης</translation>
 <translation id="8276850948802942358">Μάθετε περισσότερα σχετικά με την παραχώρηση προσωρινής άδειας σε έναν ιστότοπο για τη χρήση cookie τρίτου μέρους</translation>
+<translation id="8277907305629781277">Δημιουργήσατε αυτό το κλειδί πρόσβασης στις <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Ιστότοποι στις γλώσσες σας</translation>
 <translation id="828180235270931531">Άλλοι διαθέσιμοι εκτυπωτές</translation>
 <translation id="8281886186245836920">Παράβλεψη</translation>
@@ -10375,7 +10398,6 @@
 <translation id="8784626084144195648">Μέσος όρος στον Κάδο απορριμάτων</translation>
 <translation id="8785622406424941542">Γραφίδα</translation>
 <translation id="8786824282808281903">Όταν το παιδί σας βλέπει αυτό το εικονίδιο, θα μπορεί να χρησιμοποιηθεί δακτυλικό αποτύπωμα για ταυτοποίηση ή εγκρίσεις αγορών.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Ομάδα χωρίς όνομα - 1 καρτέλα}other{Ομάδα χωρίς όνομα - # καρτέλες}}</translation>
 <translation id="8787752878731558379">Βοηθήστε μας να βελτιώσουμε το Chrome εξηγώντας μας τους λόγους για τους οποίους επιτρέψατε τα cookie τρίτου μέρους</translation>
 <translation id="8789898473175677810">Το Chrome συμμετέχει σε μια <ph name="LINK_BEGIN" />συνεργατική προσπάθεια<ph name="LINK_END" /> για τη μείωση της παρακολούθησης μεταξύ ιστοτόπων και τη σταδιακή κατάργηση της χρήσης των cookie τρίτου μέρους. Ωστόσο, αυτό προσπαθούμε να το κάνουμε υπεύθυνα, επειδή πολλοί ιστότοποι βασίζονται σε cookie τρίτου μέρους για να λειτουργούν με τον αναμενόμενο τρόπο. Για παράδειγμα, πολλοί ιστότοποι χρησιμοποιούν cookie τρίτου μέρους για απλοποίηση της σύνδεσης, υποστήριξη ενσωματωμένων συστημάτων συζήτησης και σχολίων και υπηρεσίες πληρωμής. Επίσης, οι διαφημιζόμενοι χρησιμοποιούν συχνά cookie τρίτου μέρους, για να εξατομικεύουν καλύτερα τις διαφημίσεις. Αυτό έχει σημασία, επειδή οι ιστότοποι συχνά βασίζονται στις διαφημίσεις για την πληρωμή των εξόδων και τη διατήρηση του περιεχομένου τους στο διαδίκτυο χωρίς χρέωση.</translation>
 <translation id="8791157330927639737">Μάθετε περισσότερα σχετικά με τις ενημερώσεις</translation>
@@ -10610,6 +10632,7 @@
 <translation id="8962863356073277855">Η μορφή του URL πρέπει να είναι https://www.example.com</translation>
 <translation id="8962918469425892674">Αυτός ο ιστότοπος χρησιμοποιεί αισθητήρες κίνησης και φωτός.</translation>
 <translation id="8963117664422609631">Μετάβαση στις ρυθμίσεις ιστοτόπου</translation>
+<translation id="8964795217937248330">Κλείσιμο καρτελών και διαγραφή ομάδας;</translation>
 <translation id="8965037249707889821">Εισαγάγετε τον προηγούμενο κωδικό πρόσβασης</translation>
 <translation id="8966809848145604011">Άλλα προφίλ</translation>
 <translation id="8967427617812342790">Προσθήκη στη λίστα ανάγνωσης</translation>
@@ -11043,6 +11066,7 @@
 <translation id="979345485590886759">Οι ιστότοποι μπορούν να ζητούν το κλείδωμα του δείκτη του ποντικιού σας</translation>
 <translation id="980731642137034229">Κουμπί μενού ενεργειών</translation>
 <translation id="981121421437150478">Εκτός σύνδεσης</translation>
+<translation id="98235653036850093">Γεια σας <ph name="PROFILE_NAME" />,</translation>
 <translation id="983192555821071799">Κλείσιμο όλων των καρτελών</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – Εγγραφή από την κάμερα και το μικρόφωνο</translation>
 <translation id="984275831282074731">Τρόποι πληρωμής</translation>
diff --git a/chrome/app/resources/generated_resources_en-GB.xtb b/chrome/app/resources/generated_resources_en-GB.xtb
index f2cee077..2697ce39 100644
--- a/chrome/app/resources/generated_resources_en-GB.xtb
+++ b/chrome/app/resources/generated_resources_en-GB.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux may not have enough disk space. You can increase your Linux disk space and try to restore again in <ph name="LINK_START" />Settings<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Modest</translation>
 <translation id="126156426083987769">A problem with demo mode device licences occurred.</translation>
+<translation id="1261885284931493480">Remove tab(s) and delete group?</translation>
 <translation id="1263231323834454256">Reading list</translation>
 <translation id="1263733306853729545">Use <ph name="MINUS" /> and <ph name="EQUAL" /> keys to page a candidate list</translation>
 <translation id="126387934568812801">Include this screenshot and titles of open tabs</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">Wi-Fi network found</translation>
 <translation id="1634783886312010422">Have you already changed this password on <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Welcome, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />App data can be any data that an app has saved (based on developer settings), including data such as contacts, messages and photos. Backup data will not count towards your Drive storage quota.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />You can turn this service off in Settings.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Get this bookmark on your iPhone</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">To use Password Manager with macOS Keychain, relaunch Chromium and allow Keychain access. Your tabs will reopen after relaunching.</translation>
 <translation id="1653958716132599769">Group related tabs</translation>
 <translation id="1654580009054503925">Not allowed to show requests</translation>
+<translation id="1654713139320245449">No cast destinations found. Need any help?</translation>
 <translation id="1656528038316521561">Background opacity</translation>
 <translation id="1657406563541664238">Help make <ph name="PRODUCT_NAME" /> better by automatically sending usage statistics and crash reports to Google.</translation>
 <translation id="1657937299377480641">To sign in again for access to educational resources, ask a parent to give you permission</translation>
@@ -1641,12 +1644,14 @@
 <translation id="2187895286714876935">Server Certificate Import Error</translation>
 <translation id="2187906491731510095">Extensions updated</translation>
 <translation id="2188881192257509750">Open <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Delete tab group?</translation>
 <translation id="2190069059097339078">Wi-Fi Credentials Getter</translation>
 <translation id="219008588003277019">Native Client module: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(empty)</translation>
 <translation id="2190967441465539539">Can't access camera and microphone</translation>
 <translation id="2191754378957563929">On</translation>
 <translation id="2192505247865591433">From:</translation>
+<translation id="219283042927675668">Tabs in group</translation>
 <translation id="2193365732679659387">Trust settings</translation>
 <translation id="2194856509914051091">Things to consider</translation>
 <translation id="2195331105963583686">You'll still be able to use this <ph name="DEVICE_TYPE" /> after that time, but it will no longer get automatic software and security updates</translation>
@@ -1870,6 +1875,7 @@
 <translation id="2350133097354918058">Reloaded</translation>
 <translation id="2350182423316644347">Initialising application...</translation>
 <translation id="235028206512346451">If you move away from your device, your screen will lock automatically. When you're in front of your device, your screen will stay awake longer. If you aren't using a lock screen, your device will sleep instead of lock.</translation>
+<translation id="2352305801620974284">When you sign in on this device, you get your passwords and more from your Google Account</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Lock screen notes are automatically saved to <ph name="LOCK_SCREEN_APP_NAME" />. Your most recent note will remain on the lock screen.</translation>
 <translation id="2353297238722298836">Camera and microphone allowed</translation>
@@ -2080,6 +2086,7 @@
 <translation id="249113932447298600">Sorry, the device <ph name="DEVICE_LABEL" /> is not supported at this time.</translation>
 <translation id="2491587035099903063">preview voice for <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Preparing certificate signing request</translation>
+<translation id="2492964937550251173">Close tab(s) and delete group?</translation>
 <translation id="249330843868392562">Open text-to-speech settings</translation>
 <translation id="2494555621641843783">Can't install Steam</translation>
 <translation id="2495141202137516054">From your Drive</translation>
@@ -2249,6 +2256,7 @@
 <translation id="262087792756666314">You can pin this feature for easy access; click the Pin button at the top of the side panel</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Train Google Assistant voice model</translation>
+<translation id="2622280935687585828">Remove <ph name="SITE_NAME" /> from disabled sites</translation>
 <translation id="26224892172169984">Do not allow any site to handle protocols</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Control and reprogramming of MIDI devices allowed</translation>
@@ -2422,6 +2430,7 @@
 <translation id="2743387203779672305">Copy to clipboard</translation>
 <translation id="274362947316498129">An app is trying to access <ph name="DEVICE_NAME" />. Turn off <ph name="DEVICE_NAME" /> privacy switch to allow access.</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313">Make sure that you accept the cast request on your <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Sign in to <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Check Grammar With Spelling</translation>
@@ -2792,6 +2801,7 @@
 <translation id="3021066826692793094">Butterfly</translation>
 <translation id="3021678814754966447">&amp;View Frame Source</translation>
 <translation id="3021902017511220299">Scan failed. This action is blocked by your administrator.</translation>
+<translation id="3022068420678496307">This will delete the group from all devices signed in to Chrome with this Google Account.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> will be removed from this Chromebook and won’t be saved to <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Didn't get that.</translation>
 <translation id="3023464535986383522">Select to speak</translation>
@@ -4071,7 +4081,6 @@
 <translation id="3983586614702900908">devices from an unknown vendor</translation>
 <translation id="3983764759749072418">Play Store applications have access to this device.</translation>
 <translation id="3983769721878416534">Delay before click</translation>
-<translation id="3983793589497399077">Click or drag anywhere to search with Lens</translation>
 <translation id="3984135167056005094">Do not include email address</translation>
 <translation id="3984159763196946143">Couldn't start demo mode</translation>
 <translation id="3984431586879874039">Allow this site to see your security key?</translation>
@@ -4194,6 +4203,7 @@
 <translation id="4078903002989614318">Sorting and list options</translation>
 <translation id="4079140982534148664">Use Enhanced Spell Check</translation>
 <translation id="4082333918978320301">No websites are allowed to use your microphone</translation>
+<translation id="4083735423615351075">The tabs will remain open on this device but the group will be deleted from all devices signed in to Chrome with this Google Account.</translation>
 <translation id="4084682180776658562">Bookmark</translation>
 <translation id="4084835346725913160">Close <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">JavaScript was blocked on this page.</translation>
@@ -4203,6 +4213,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Show on right</translation>
+<translation id="4088879333319441249">Ungroup tab group?</translation>
 <translation id="4089235344645910861">Settings saved. Sync started.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Enable Verified Access</translation>
@@ -5684,6 +5695,7 @@
 <translation id="5242724311594467048">Enable "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="5243522832766285132">Please try again in a few moments</translation>
 <translation id="5244234799035360187">OneDrive will now appear in the Files app</translation>
+<translation id="5244466461749935369">Keep for now</translation>
 <translation id="5244474230056479698">Syncing to <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Get started with a school account</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> has crashed. Click this balloon to restart the app.</translation>
@@ -5952,6 +5964,7 @@
 <translation id="5453829744223920473">Your child can use all of their school apps, bookmarks and resources just like they do in class. The school sets the ground rules.</translation>
 <translation id="5454166040603940656">with <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">See more search results</translation>
+<translation id="5457082343331641453">Add to your search</translation>
 <translation id="5457113250005438886">Invalid</translation>
 <translation id="5457459357461771897">Read and delete photos, music and other media from your computer</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6429,6 +6442,7 @@
 <translation id="5816434091619127343">Requested printer changes would make the printer unusable.</translation>
 <translation id="581659025233126501">Turn On Sync</translation>
 <translation id="5817918615728894473">Pair</translation>
+<translation id="5817963443108180228">Welcome back, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">All applications</translation>
 <translation id="5821565227679781414">Create Shortcut</translation>
 <translation id="5824976764713185207">Automatically read page after it finishes loading</translation>
@@ -7029,6 +7043,7 @@
 <translation id="6265159465845424232">Ask before copying or moving Microsoft files to Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Remove port</translation>
 <translation id="6266532094411434237">Connecting to <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Customise profile</translation>
 <translation id="6267166720438879315">Select a certificate to which you want to authenticate <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Open with <ph name="APP" /></translation>
 <translation id="6270309713620950855">Mute nudge</translation>
@@ -7167,7 +7182,6 @@
 <translation id="6383382161803538830">Reading mode isn’t available on this page</translation>
 <translation id="638418309848716977">Supported links</translation>
 <translation id="6384275966486438344">Change your search settings to: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Unnamed group – 1 tab}other{Unnamed group – # tabs}}</translation>
 <translation id="6385149369087767061">Connect to the Internet and try again</translation>
 <translation id="6385382178401976503">Card: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Warning – detailed logging is enabled; logs below may include URLs or other sensitive information. Please review and ensure that you are comfortable submitting this information.</translation>
@@ -7246,6 +7260,7 @@
 <translation id="6445450263907939268">If you didn't want these changes, you can restore your previous settings.</translation>
 <translation id="6446213738085045933">Create desktop shortcut</translation>
 <translation id="6447842834002726250">Cookies</translation>
+<translation id="6449554712554071184">This will permanently delete the group from your device.</translation>
 <translation id="6450876761651513209">Change your privacy-related settings</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> and 1 other tab}other{<ph name="PAGE_TITLE" /> and # other tabs}}</translation>
 <translation id="6451689256222386810">If you forget your passphrase or want to change this setting, <ph name="BEGIN_LINK" />reset sync<ph name="END_LINK" />.</translation>
@@ -7392,6 +7407,7 @@
 <translation id="6556866813142980365">Redo</translation>
 <translation id="6556903358015358733">Theme and wallpaper</translation>
 <translation id="6557290421156335491">My shortcuts</translation>
+<translation id="6560061709899140565">Show other cast sessions</translation>
 <translation id="6560151649238390891">Suggestion inserted</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Store system logs to the downloads directory.</translation>
@@ -7481,6 +7497,7 @@
 <translation id="6635674640674343739">Network connection cannot be established. Check your network connection and try again.</translation>
 <translation id="663569763553406962">See what extensions can read or change a site</translation>
 <translation id="6635944431854494329">The owner can control this feature from Settings &gt; Advanced &gt; Automatically send diagnostic and usage data to Google.</translation>
+<translation id="6636572589916466933">Accept cast request on your <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Explore more settings below or finish now</translation>
 <translation id="6639554308659482635">SQLite memory</translation>
 <translation id="6640268266988685324">Open tab</translation>
@@ -8166,6 +8183,7 @@
 <translation id="715396040729904728">launcher + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Share your feedback or describe your issue. If possible, include steps to reproduce your issue.</translation>
 <translation id="7154130902455071009">Change your start page to: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Get better quality video and save battery life. Video will play only on your Cast-enabled screen.</translation>
 <translation id="7159953856712257647">Installed by default</translation>
 <translation id="7160182524506337403">You can now view your phone's notifications</translation>
 <translation id="7165263843655074092">You’re getting standard security protection on this device</translation>
@@ -9024,6 +9042,7 @@
 <translation id="7788948939674438635">Don't allow sites to lock your keyboard</translation>
 <translation id="7789963078219276159">Start page background has been changed to <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Files on this Chromebook</translation>
 <translation id="7791269138074599214">Input method</translation>
 <translation id="7791429245559955092">This application will be installed on your currently-used Chrome profile</translation>
 <translation id="7791436592012979144">Reverse scrolling enabled</translation>
@@ -9053,6 +9072,7 @@
 <translation id="7810202088502699111">Pop-ups were blocked on this page.</translation>
 <translation id="7810367892333449285">Your entry should have the format <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ address<ph name="LPA_2" />$<ph name="LPA_3" />optional matching id<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Try again or select from one of the previously generated themes below.</translation>
+<translation id="7814090115158024843">Never offer writing help on these sites</translation>
 <translation id="7814458197256864873">&amp;Copy</translation>
 <translation id="7814857791038398352">Microsoft® OneDrive</translation>
 <translation id="7815583197273433531">Edit shortcut <ph name="SHORTCUT" /> for <ph name="EXTENSION_NAME" /></translation>
@@ -9284,8 +9304,10 @@
 <translation id="7974936243149753750">Overscan</translation>
 <translation id="7975504106303186033">You must enrol this Chrome Education device into an education account. To sign up for a new account, please visit g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Warns you if you use a password that has been compromised in a data breach.</translation>
+<translation id="797824194429476746">The tabs will remain open on this device but the group will be permanently deleted.</translation>
 <translation id="7978412674231730200">Private key</translation>
 <translation id="7978450511781612192">This will sign you out of your Google accounts. Your bookmarks, history, passwords and more will no longer be synced.</translation>
+<translation id="7980066177668669492">Base64-encoded ASCII, multiple certificates</translation>
 <translation id="7980084013673500153">Asset ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Use a saved passkey for <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Show device EID and QR code pop-up</translation>
@@ -9698,6 +9720,7 @@
 <translation id="8276242035951017580">No apps are allowed use your camera</translation>
 <translation id="8276560076771292512">Empty cache and hard reload</translation>
 <translation id="8276850948802942358">Learn more about giving a site temporary permission to use third-party cookies</translation>
+<translation id="8277907305629781277">You created this passkey on <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Websites in your languages</translation>
 <translation id="828180235270931531">Other available printers</translation>
 <translation id="8281886186245836920">Skip</translation>
@@ -10376,7 +10399,6 @@
 <translation id="8784626084144195648">Binned Average</translation>
 <translation id="8785622406424941542">Stylus</translation>
 <translation id="8786824282808281903">When your child sees this icon, a fingerprint can be used for identification or to approve purchases.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Unnamed Group – 1 Tab}other{Unnamed Group – # Tabs}}</translation>
 <translation id="8787752878731558379">Help us improve Chrome by telling us why you allowed third-party cookies</translation>
 <translation id="8789898473175677810">Chrome is part of a <ph name="LINK_BEGIN" />collaborative effort<ph name="LINK_END" /> to reduce cross-site tracking and phase out the use of third-party cookies. But, we're trying to do it responsibly because many sites rely on third-party cookies to work as designed. For example, many sites use third-party cookies to simplify signing in, to support embedded chat and comment systems, and for payment services. And advertisers often use third-party cookies to better personalise ads. That matters because sites often count on ads to help pay expenses and keep their online content free of charge.</translation>
 <translation id="8791157330927639737">Learn more about updating</translation>
@@ -10611,6 +10633,7 @@
 <translation id="8962863356073277855">URL format should be https://www.example.com</translation>
 <translation id="8962918469425892674">This site is using motion or light sensors.</translation>
 <translation id="8963117664422609631">Go to site settings</translation>
+<translation id="8964795217937248330">Close tab(s) and delete group?</translation>
 <translation id="8965037249707889821">Enter old password</translation>
 <translation id="8966809848145604011">Other profiles</translation>
 <translation id="8967427617812342790">Add to reading list</translation>
@@ -11044,6 +11067,7 @@
 <translation id="979345485590886759">Sites can ask to lock your mouse pointer</translation>
 <translation id="980731642137034229">Action menu button</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Hi, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Close all tabs</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – Camera and microphone recording</translation>
 <translation id="984275831282074731">Payment methods</translation>
diff --git a/chrome/app/resources/generated_resources_es-419.xtb b/chrome/app/resources/generated_resources_es-419.xtb
index 08b03df..c430f47 100644
--- a/chrome/app/resources/generated_resources_es-419.xtb
+++ b/chrome/app/resources/generated_resources_es-419.xtb
@@ -1655,6 +1655,7 @@
 <translation id="2211043920024403606">Información del perfil</translation>
 <translation id="2211245494465528624">Administrar opciones de sincronización</translation>
 <translation id="221297410904507041">Borra el historial, las cookies, la memoria caché y más</translation>
+<translation id="2213410656650624348">Moderado</translation>
 <translation id="2214018885812055163">Carpetas compartidas</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;No se muestra una línea&gt;}other{&lt;No se muestran <ph name="NUMBER_OF_LINES" /> líneas&gt;}}</translation>
 <translation id="2215070081105889450">Para compartir audio, comparte una pestaña o pantalla</translation>
@@ -2034,6 +2035,7 @@
 <translation id="2473195200299095979">Traducir esta página</translation>
 <translation id="2475982808118771221">Se ha producido un error</translation>
 <translation id="247616523300581745">Ocultar estos archivos</translation>
+<translation id="2476435723907345463">Se quitó el acceso a las llaves de acceso</translation>
 <translation id="2476901513051581836">No se puede liberar espacio hasta que se conozca el tamaño del almacenamiento sin conexión.</translation>
 <translation id="2476974672882258506">Para desinstalar <ph name="PARALLELS_DESKTOP" />, debes cerrar Windows.</translation>
 <translation id="2477065602824695373">Dado que configuraste varios interruptores, se desactivó el escaneo automático.</translation>
@@ -2228,6 +2230,7 @@
 <translation id="2620215283731032047">No se puede descargar el archivo <ph name="FILE_NAME" /> de forma segura.</translation>
 <translation id="2620245777360407679">Dispositivos conectados actualmente al hotspot</translation>
 <translation id="2620436844016719705">Sistema</translation>
+<translation id="262087792756666314">Puedes fijar esta función para acceder a ella fácilmente; haz clic en el botón Fijar en la parte superior del panel lateral</translation>
 <translation id="2620900772667816510">Alta resolución de Bluetooth</translation>
 <translation id="262154978979441594">Entrenar el modelo de voz del Asistente de Google</translation>
 <translation id="26224892172169984">No permitir que los sitios web procesen protocolos</translation>
@@ -3003,6 +3006,7 @@
 <translation id="3222066309010235055">Renderizar previamente: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Conectarse a <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Busca lo que quieras en esta página con Google Lens</translation>
+<translation id="3223109931751684474">Quitar el acceso a tus llaves de acceso en este dispositivo</translation>
 <translation id="3223531857777746191">Botón de restablecimiento</translation>
 <translation id="3225084153129302039">Avatar púrpura predeterminado</translation>
 <translation id="3225319735946384299">Firma de código</translation>
@@ -3327,6 +3331,7 @@
 <translation id="3473479545200714844">Lupa</translation>
 <translation id="3474218480460386727">Las palabras nuevas pueden tener un máximo de 99 letras.</translation>
 <translation id="3474624961160222204">Continuar como <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Obtén un ahorro de memoria moderado. Las pestañas se vuelven inactivas después de un período más largo.</translation>
 <translation id="347785443197175480">Continuar permitiendo que <ph name="HOST" /> acceda a la cámara y al micrófono</translation>
 <translation id="3479357084663933762">Deuteronomalía</translation>
 <translation id="3479552764303398839">Ahora no</translation>
@@ -4050,7 +4055,6 @@
 <translation id="3983586614702900908">dispositivos de un proveedor desconocido</translation>
 <translation id="3983764759749072418">Las apps de Play Store tienen acceso a este dispositivo.</translation>
 <translation id="3983769721878416534">Tiempo de espera antes del clic</translation>
-<translation id="3983793589497399077">Haz clic o arrastra en cualquier parte para buscar con Lens</translation>
 <translation id="3984135167056005094">No incluir direcciones de correo electrónico</translation>
 <translation id="3984159763196946143">No se pudo iniciar el modo de demostración</translation>
 <translation id="3984431586879874039">¿Quieres permitir que este sitio vea tu llave de seguridad?</translation>
@@ -4087,6 +4091,7 @@
 <translation id="4010036441048359843">Activar la función destacar</translation>
 <translation id="4010746393007464819">Hay una actualización a Debian 12 (Bookworm) disponible</translation>
 <translation id="4010917659463429001">Para obtener tus favoritos en el dispositivo móvil, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Si quieres acceder a esta función fácilmente, puedes fijarla</translation>
 <translation id="4014432863917027322">¿Reparar "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="4015163439792426608">¿Tienes extensiones? <ph name="BEGIN_LINK" />Administra tus extensiones<ph name="END_LINK" /> en un solo lugar.</translation>
 <translation id="4016762287427926315">Los permisos que otorgues para <ph name="APP_NAME" /> también se otorgarán para esta app. <ph name="BEGIN_LINK" />Administrar<ph name="END_LINK" /></translation>
@@ -4390,6 +4395,7 @@
 <translation id="4261429981378979799">Permisos de extensiones</translation>
 <translation id="4262004481148703251">Descartar advertencia</translation>
 <translation id="4263223596040212967">Comprueba el diseño de tu teclado y vuelve a intentarlo.</translation>
+<translation id="4263470758446311292">Obtén el máximo ahorro de memoria. Las pestañas se vuelven inactivas después de un período más corto.</translation>
 <translation id="4265096510956307240">Verifica que eres tú</translation>
 <translation id="4265301768135164545">También puedes configurar un perfil de eSIM <ph name="BEGIN_LINK" />manualmente<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Para comprobar si hay actualizaciones, utiliza una conexión Ethernet, Wi-Fi o de datos móviles.</translation>
@@ -4709,6 +4715,7 @@
 <translation id="4503748371388753124">La computadora contiene un dispositivo de seguridad del Módulo de plataforma segura (TPM) que se usa para implementar varias funciones clave de seguridad en ChromeOS Flex. Para obtener más información, visita el Centro de ayuda de Chromebook: https://support.google.com/chromebook/?p=tpm.</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Se permiten las cookies}=1{Se permiten las cookies; 1 excepción}other{Se permiten las cookies; {COUNT} excepciones}}</translation>
 <translation id="4504940961672722399">Para usar esta extensión, haz clic en este ícono o presiona <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Descarga Chrome con este código QR y accede a tu Cuenta de Google.</translation>
 <translation id="450552327874992444">Ya se agregó esta palabra</translation>
 <translation id="4507373251891673233">Bloqueaste todas las extensiones de <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Haz clic en "Agregar acceso directo"</translation>
@@ -5044,6 +5051,7 @@
 <translation id="4768332406694066911">Tienes certificados de esas organizaciones que te identifican</translation>
 <translation id="4769632191812288342">Recibes protección estándar</translation>
 <translation id="4770119228883592393">Se solicitó un permiso; para responder, presiona ⌘ + Opción + flecha hacia abajo</translation>
+<translation id="4770755495532014179">Usa esta contraseña en tu iPhone</translation>
 <translation id="4773112038801431077">Actualiza Linux</translation>
 <translation id="477548766361111120">Permitir que la extensión lea y modifique este sitio</translation>
 <translation id="4776311127346151860">Se conectó <ph name="DEVICE_NAME" /></translation>
@@ -5213,6 +5221,7 @@
 <translation id="4890399733764921729">No se pudo establecer conexión. Otro proveedor de telefonía celular la bloqueó.</translation>
 <translation id="4890773143211625964">Mostrar opciones de impresión avanzadas</translation>
 <translation id="4891089016822695758">Foro de la versión Beta</translation>
+<translation id="4891795846939730995">Para volver a usar tus llaves de acceso en este dispositivo, ingresa a un sitio o app con una llave de acceso guardada</translation>
 <translation id="4892229439761351791">El sitio puede usar la conexión Bluetooth</translation>
 <translation id="4892328231620815052">Cuando todo esté listo, busca tu lista de lectura en Favoritos y Listas</translation>
 <translation id="489258173289528622">Acción de inactividad mientras se usa la batería</translation>
@@ -6442,6 +6451,7 @@
 <translation id="5846504156837627898">Administrar los permisos de sitios</translation>
 <translation id="5846749317653566506">Ajusta la configuración de corrección de colores para asegurarte de que se distingan los colores</translation>
 <translation id="5846807460505171493">Instala actualizaciones y apps. Si continúas, aceptas que este dispositivo también descargue e instale automáticamente actualizaciones y apps de Google, tu proveedor y el fabricante del dispositivo usando datos móviles. Es posible que algunas de estas apps ofrezcan compras directas desde la aplicación.</translation>
+<translation id="5848054741303781539">Se establece de forma manual, no se usa la ubicación</translation>
 <translation id="5848319660029558352">Leer en voz alta y formato de texto</translation>
 <translation id="5849212445710944278">Ya se agregó</translation>
 <translation id="584945105664698226">Velocidad de la voz</translation>
@@ -7140,7 +7150,6 @@
 <translation id="6383382161803538830">El modo de lectura no está disponible en esta página</translation>
 <translation id="638418309848716977">Vínculos compatibles</translation>
 <translation id="6384275966486438344">Cambiar la configuración de búsqueda por <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupo sin nombre - 1 pestaña}other{Grupo sin nombre - # pestañas}}</translation>
 <translation id="6385149369087767061">Conéctate a Internet y vuelve a intentarlo</translation>
 <translation id="6385382178401976503">Tarjeta: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Advertencia: Se habilitó el registro detallado. Es posible que los registros que aparecen a continuación incluyan URL o información confidencial. Revísalos y asegúrate de no tener inconvenientes con enviar esta información.</translation>
@@ -7472,6 +7481,7 @@
 <translation id="6648911618876616409">Hay una actualización fundamental lista para instalarse. Accede a tu cuenta para comenzar.</translation>
 <translation id="6649018507441623493">Un segundo…</translation>
 <translation id="6650206238642452078">Suscribirse a eventos del sistema de ChromeOS</translation>
+<translation id="6650584564768559994">Obtén un ahorro de memoria equilibrado. Las pestañas se vuelven inactivas después de un período óptimo.</translation>
 <translation id="665061930738760572">Abrir en una &amp;nueva ventana</translation>
 <translation id="6651237644330755633">Confía en este certificado para identificar sitios web</translation>
 <translation id="6651495917527016072">Sincroniza las redes Wi-Fi con tu teléfono. <ph name="LINK_BEGIN" />Más información<ph name="LINK_END" /></translation>
@@ -7729,6 +7739,7 @@
 <translation id="6831043979455480757">Traducir</translation>
 <translation id="6832218595502288407">Alinear a la izquierda</translation>
 <translation id="6833479554815567477">Se quitó la pestaña del grupo <ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Equilibrado (recomendado)</translation>
 <translation id="6835762382653651563">Conéctate a Internet para actualizar tu <ph name="DEVICE_TYPE" />.</translation>
 <translation id="683630338945552556">Usar y guardar contraseñas en tu Cuenta de Google</translation>
 <translation id="6839225236531462745">Error en la eliminación del certificado</translation>
@@ -9380,6 +9391,7 @@
 <translation id="8066444921260601116">Diálogo de conexión</translation>
 <translation id="8070572887926783747">Permiso de ubicación de <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Respuesta táctil</translation>
+<translation id="8071033114691184017">Usa esta contraseña en tu iPhone</translation>
 <translation id="8071432093239591881">Imprimir como imagen</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Los datos de las apps pueden incluir cualquier información que haya guardado una app (en función de la configuración del desarrollador), incluso datos como contactos, mensajes y fotos.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Los datos de la copia de seguridad no inciden en la cuota de almacenamiento en Drive de tu hijo.<ph name="END_PARAGRAPH2" />
@@ -9947,6 +9959,7 @@
 <translation id="8482077254400484047">Administra el aspecto de las pestañas inactivas aquí</translation>
 <translation id="8483248364096924578">Dirección IP</translation>
 <translation id="8486666913807228950">Motivo: Se encontró la regla invertida <ph name="REVERT_RULE" /> en la lista "Forzar la apertura en".</translation>
+<translation id="8487303289354211861">Se fijó. Puedes volver a acceder a esta función desde el nuevo botón en la barra de herramientas</translation>
 <translation id="8487678622945914333">Acercar</translation>
 <translation id="8487699605742506766">Hotspot</translation>
 <translation id="8489156414266187072">Las sugerencias personales solo se muestran en tu cuenta</translation>
@@ -10345,7 +10358,6 @@
 <translation id="8784626084144195648">Promedio de datos agrupados</translation>
 <translation id="8785622406424941542">Pluma stylus</translation>
 <translation id="8786824282808281903">Cuando vea este ícono, tu hijo podrá identificarse o aprobar compras con su huella dactilar.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupo sin nombre - 1 pestaña}other{Grupo sin nombre - # pestañas}}</translation>
 <translation id="8787752878731558379">Cuéntanos por qué habilitaste las cookies de terceros para ayudarnos a mejorar Chrome</translation>
 <translation id="8789898473175677810">Chrome forma parte de un <ph name="LINK_BEGIN" />esfuerzo colaborativo<ph name="LINK_END" /> para reducir el seguimiento entre sitios y eliminar gradualmente el uso de cookies de terceros. Sin embargo, intentamos hacerlo con responsabilidad porque muchos sitios (debido a su diseño) dependen de cookies de terceros para funcionar. Por ejemplo, muchos sitios usan cookies de terceros para simplificar el acceso, admitir sistemas de chat y de comentarios incorporados, y para permitir servicios de pago. Además, los anunciantes suelen usar cookies de terceros para personalizar mejor los anuncios. Esto es importante porque los sitios, a menudo, cuentan con anuncios para pagar los gastos y mantener su contenido en línea sin costo.</translation>
 <translation id="8791157330927639737">Más información sobre la actualización</translation>
@@ -10659,6 +10671,7 @@
 <translation id="9014674417732091912">Se movió a la fila <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Crear una copia de seguridad en Google Drive</translation>
 <translation id="9016827136585652292">botón de activación de la pantalla de privacidad</translation>
+<translation id="9017055559700464094">Se fijó. Vuelve a usar esta función desde la barra de herramientas</translation>
 <translation id="90181708067259747">Fecha de vencimiento: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Se completó la instalación</translation>
 <translation id="901876615920222131">Para volver a abrir el grupo, haz clic en él</translation>
@@ -10817,6 +10830,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Para obtener la mejor experiencia, instala <ph name="DEVICE_OS" /> en el disco interno. También puedes instalarlo más tarde desde la pantalla de acceso.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Si aún no tienes todo listo para instalarlo y quieres probarlo, puedes ejecutarlo desde una unidad USB. De esta manera, conservarás tus datos y el SO existente, aunque posiblemente tengas limitaciones de almacenamiento y rendimiento.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Abrir como pestaña anclada</translation>
+<translation id="9122788874051694311">¿Quieres guardar esta llave de acceso fuera de Incógnito?</translation>
 <translation id="9123287046453017203">Tu dispositivo no está actualizado</translation>
 <translation id="9125910124977405374">Quitar el idioma <ph name="LANGUAGE_NAME" /> de los idiomas que se traducen automáticamente</translation>
 <translation id="9126149354162942022">Color del cursor</translation>
diff --git a/chrome/app/resources/generated_resources_es.xtb b/chrome/app/resources/generated_resources_es.xtb
index 6704364..d81a6a9 100644
--- a/chrome/app/resources/generated_resources_es.xtb
+++ b/chrome/app/resources/generated_resources_es.xtb
@@ -4057,7 +4057,6 @@
 <translation id="3983586614702900908">dispositivos de un proveedor desconocido</translation>
 <translation id="3983764759749072418">Las aplicaciones de Play Store tienen acceso a este dispositivo.</translation>
 <translation id="3983769721878416534">Retraso antes del clic</translation>
-<translation id="3983793589497399077">Haz clic o arrastra el dedo para buscar con Lens</translation>
 <translation id="3984135167056005094">No incluir dirección de correo electrónico</translation>
 <translation id="3984159763196946143">No se ha podido iniciar el modo Demo</translation>
 <translation id="3984431586879874039">¿Permitir que este sitio web vea tu llave de seguridad?</translation>
@@ -7153,7 +7152,6 @@
 <translation id="6383382161803538830">El modo Lectura no está disponible en esta página</translation>
 <translation id="638418309848716977">Enlaces compatibles</translation>
 <translation id="6384275966486438344">Cambiar configuración de búsqueda por: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupo sin nombre - 1 pestaña}other{Grupo sin nombre - # pestañas}}</translation>
 <translation id="6385149369087767061">Conéctate a Internet y vuelve a intentarlo</translation>
 <translation id="6385382178401976503">Tarjeta: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Advertencia: La función de registros detallados está habilitada, así que los registros que se muestran a continuación podrían incluir URLs u otra información sensible. Revísalos y decide si quieres enviar esta información.</translation>
@@ -10362,7 +10360,6 @@
 <translation id="8784626084144195648">Media de datos agrupados</translation>
 <translation id="8785622406424941542">Lápiz óptico</translation>
 <translation id="8786824282808281903">Cuando se muestre este icono a tu hijo/a, se podrá usar una huella digital para identificar al usuario o para aprobar compras.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupo sin nombre - 1 pestaña}other{Grupo sin nombre - # pestañas}}</translation>
 <translation id="8787752878731558379">Ayúdanos a mejorar Chrome indicándonos por qué has permitido el uso de cookies de terceros</translation>
 <translation id="8789898473175677810">Chrome forma parte de una <ph name="LINK_BEGIN" />iniciativa colaborativa<ph name="LINK_END" /> para reducir el seguimiento entre sitios y eliminar gradualmente el uso de cookies de terceros. Sin embargo, estamos tratando hacerlo de forma responsable porque muchos sitios dependen de cookies de terceros para funcionar según lo previsto. Por ejemplo, muchos sitios usan cookies de terceros para simplificar el proceso de inicio de sesión, proporcionar sistemas de comentarios y chat insertados, y ofrecer servicios de pagos. Además, los anunciantes suelen usar cookies de terceros para personalizar mejor los anuncios. Esto es importante porque los sitios suelen contar con anuncios para ayudar a pagar los gastos y mantener su contenido online sin coste económico para los usuarios.</translation>
 <translation id="8791157330927639737">Más información sobre actualizaciones</translation>
diff --git a/chrome/app/resources/generated_resources_et.xtb b/chrome/app/resources/generated_resources_et.xtb
index 1a4f3bd..e7b754a 100644
--- a/chrome/app/resources/generated_resources_et.xtb
+++ b/chrome/app/resources/generated_resources_et.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linuxis ei pruugi olla piisavalt kettaruumi. Saate Linuxi kettaruumi suurendada ja proovida uuesti taastada menüüs <ph name="LINK_START" />Seaded<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Mõõdukas</translation>
 <translation id="126156426083987769">Ilmnes demorežiimis seadmete litsentsidega seotud probleem.</translation>
+<translation id="1261885284931493480">Kas eemaldada vahelehed ja kustutada grupp?</translation>
 <translation id="1263231323834454256">Lugemisloend</translation>
 <translation id="1263733306853729545">Kasuta klahve <ph name="MINUS" /> ja <ph name="EQUAL" /> kandidaatide loendi lehitsemiseks</translation>
 <translation id="126387934568812801">Kaasa see ekraanipilt ja avatud vahelehtede pealkirjad</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">Leiti WiFi-võrk</translation>
 <translation id="1634783886312010422">Kas muutsite juba seda parooli saidil <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Tere tulemast, <ph name="PROFILE_NAME" />!</translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Rakenduse andmed võivad olla mis tahes andmed, mille rakendus on salvestanud (arendaja seadete põhjal), sh näiteks kontaktid, sõnumid ja fotod. Varundatud andmeid ei arvestata teie Drive'i salvestuskvoodi hulka.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Selle teenuse saab välja lülitada menüüs Seaded.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Hankige see järjehoidja oma iPhone'i</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">Paroolihalduri kasutamiseks koos macOS Keychainiga taaskäivitage Chromium ja lubage juurdepääs Keychainile. Teie vahelehed avanevad pärast taaskäivitamist uuesti.</translation>
 <translation id="1653958716132599769">Grupeeri seotud vahelehed</translation>
 <translation id="1654580009054503925">Pole lubatud taotlusi kuvada</translation>
+<translation id="1654713139320245449">Ühtegi ülekandmise sihtkohta ei leitud. Kas vajate abi?</translation>
 <translation id="1656528038316521561">Tausta läbipaistvus</translation>
 <translation id="1657406563541664238">Aidake muuta rakendus <ph name="PRODUCT_NAME" /> paremaks, saates Google'ile automaatselt kasutusstatistikat ja veaaruandeid</translation>
 <translation id="1657937299377480641">Selleks et õppematerjalidele juurdepääsemiseks uuesti sisse logida, palu vanemalt luba</translation>
@@ -1632,12 +1635,14 @@
 <translation id="2187895286714876935">Serveri sertifikaadi impordi viga</translation>
 <translation id="2187906491731510095">Laiendused on värskendatud</translation>
 <translation id="2188881192257509750">Ava <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Kas kustutada vahelehegrupp?</translation>
 <translation id="2190069059097339078">WiFi mandaadi hankija</translation>
 <translation id="219008588003277019">Omakliendi moodul: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(tühi)</translation>
 <translation id="2190967441465539539">Kaamerale ja mikrofonile ei pääse juurde</translation>
 <translation id="2191754378957563929">Sees</translation>
 <translation id="2192505247865591433">Allikas:</translation>
+<translation id="219283042927675668">Grupi vahelehed</translation>
 <translation id="2193365732679659387">Usaldusväärsuse seaded</translation>
 <translation id="2194856509914051091">Olulised aspektid</translation>
 <translation id="2195331105963583686">Saate seadet <ph name="DEVICE_TYPE" /> pärast seda siiski kasutada, kuid see ei saa enam automaatseid tarkvara- ja turvavärskendusi</translation>
@@ -1861,6 +1866,7 @@
 <translation id="2350133097354918058">Uuesti laaditud</translation>
 <translation id="2350182423316644347">Rakenduse lähtestamine ...</translation>
 <translation id="235028206512346451">Kui lähete oma seadmest eemale, lukustub ekraanikuva automaatselt. Kui olete oma seadme ees, jääb ekraanikuva kauemaks avatuks. Kui te ekraanilukku ei kasuta, lülitub seade lukustumise asemel unerežiimi.</translation>
+<translation id="2352305801620974284">Selles seadmes sisse logides saate kasutada oma Google'i kontol olevaid paroole ja muid andmeid</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Lukustuskuva märkmed salvestatakse automaatselt rakendusse <ph name="LOCK_SCREEN_APP_NAME" />. Teie kõige viimane märge jääb lukustuskuvale.</translation>
 <translation id="2353297238722298836">Kaamera ja mikrofon on lubatud</translation>
@@ -2071,6 +2077,7 @@
 <translation id="249113932447298600">Kahjuks praegu seadet <ph name="DEVICE_LABEL" /> ei toetata.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> keele eelvaatehääl</translation>
 <translation id="2492461744635776704">Sertifikaadi allkirjastamise taotluse ettevalmistamine</translation>
+<translation id="2492964937550251173">Kas sulgeda vahelehed ja kustutada grupp?</translation>
 <translation id="249330843868392562">Ava kõnesünteesi seaded</translation>
 <translation id="2494555621641843783">Steami ei saa installida</translation>
 <translation id="2495141202137516054">Teie kettalt</translation>
@@ -2240,6 +2247,7 @@
 <translation id="262087792756666314">Saate selle funktsiooni hõlpsaks juurdepääsuks kinnitada; klõpsake külgpaneeli ülaosas nupul Kinnita</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Google'i assistendi häälemudeli treenimine</translation>
+<translation id="2622280935687585828">Eemalda <ph name="SITE_NAME" /> keelatud saitide hulgast</translation>
 <translation id="26224892172169984">Ära luba ühelgi saidil protokolle töödelda</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI-seadmete juhtimine ja ümberprogrammeerimine on lubatud</translation>
@@ -2413,6 +2421,7 @@
 <translation id="2743387203779672305">Kopeeri lõikelauale</translation>
 <translation id="274362947316498129">Rakendus üritab seadmele <ph name="DEVICE_NAME" /> juurde pääseda. Juurdepääsu lubamiseks lülitage seadme <ph name="DEVICE_NAME" /> privaatsuse lüliti välja.</translation>
 <translation id="2745080116229976798">Microsofti piiratud subordinatsioon</translation>
+<translation id="2747853844543618313">Võtke seadmes <ph name="DEVICE_NAME" /> ülekandmise taotlus kindlasti vastu.</translation>
 <translation id="2749756011735116528">Logi sisse teenusesse <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Kontrolli grammatikat õigekirjakontrolliga</translation>
@@ -2783,6 +2792,7 @@
 <translation id="3021066826692793094">Liblikas</translation>
 <translation id="3021678814754966447">&amp;Vaata raami allikat</translation>
 <translation id="3021902017511220299">Skannimine nurjus. Seda toimingut blokeerib administraator.</translation>
+<translation id="3022068420678496307">See kustutab grupi kõikidest seadmetest, mis on selle Google'i kontoga Chrome'i sisse logitud.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> eemaldatakse sellest Chromebookist ja seda ei salvestata kontole <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Ei saanud aru.</translation>
 <translation id="3023464535986383522">Vali ja kuula</translation>
@@ -4062,7 +4072,6 @@
 <translation id="3983586614702900908">tundmatu müüja seadmed</translation>
 <translation id="3983764759749072418">Play poe rakendustel on juurdepääs sellele seadmele.</translation>
 <translation id="3983769721878416534">Viide enne klikki</translation>
-<translation id="3983793589497399077">Lensiga otsimiseks klõpsake või lohistage kus tahes</translation>
 <translation id="3984135167056005094">Ära lisa meiliaadressi</translation>
 <translation id="3984159763196946143">Demorežiimi ei saanud käivitada</translation>
 <translation id="3984431586879874039">Kas lubada saidil teie turvavõtit näha?</translation>
@@ -4185,6 +4194,7 @@
 <translation id="4078903002989614318">Sortimis- ja loendivalikud</translation>
 <translation id="4079140982534148664">Kasuta täiustatud õigekirjakontrolli</translation>
 <translation id="4082333918978320301">Ühelgi veebisaidil pole õigust kasutada teie mikrofoni</translation>
+<translation id="4083735423615351075">Vahelehed jäävad selles seadmes avatuks, aga grupp kustutatakse kõikidest teistest seadmetest, mis on selle Google'i kontoga Chrome'is sisse logitud</translation>
 <translation id="4084682180776658562">Järjehoidja</translation>
 <translation id="4084835346725913160">Sule <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">JavaScript blokeeriti sellel lehel.</translation>
@@ -4194,6 +4204,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Kuva paremal</translation>
+<translation id="4088879333319441249">Kas tühistada vahelehegrupi grupeerimine?</translation>
 <translation id="4089235344645910861">Seaded on salvestatud. Sünkroonimine algas.</translation>
 <translation id="4089817585533500276">tõstuklahv + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Luba kinnitatud juurdepääs</translation>
@@ -5675,6 +5686,7 @@
 <translation id="5242724311594467048">Kas lubada laiendus „<ph name="EXTENSION_NAME" />”?</translation>
 <translation id="5243522832766285132">Proovige mõne aja pärast uuesti</translation>
 <translation id="5244234799035360187">OneDrive ilmub nüüd rakenduses Failid</translation>
+<translation id="5244466461749935369">Jäta praegu alles</translation>
 <translation id="5244474230056479698">Sünkroonimine aadressiga <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Alustage koolikonto kasutamist</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> läks krahhi. Rakenduse taaskäivitamiseks klõpsake sellel jutumullil.</translation>
@@ -5943,6 +5955,7 @@
 <translation id="5453829744223920473">Teie laps võib kasutada kõiki oma kooli rakendusi, järjehoidjaid ja ressursse täpselt nii, nagu ta teeb seda tunnis. Põhireeglid määrab kool.</translation>
 <translation id="5454166040603940656">teenusepakkujaga <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Kuva rohkem otsingutulemusi</translation>
+<translation id="5457082343331641453">Täiendage otsingut</translation>
 <translation id="5457113250005438886">Kehtetu</translation>
 <translation id="5457459357461771897">Arvutis olevate fotode, muusika ja muu meedia lugemine ja kustutamine</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6420,6 +6433,7 @@
 <translation id="5816434091619127343">Nõutud printeri muudatuste korral ei saaks printerit kasutada.</translation>
 <translation id="581659025233126501">Lülita sünkroonimine sisse</translation>
 <translation id="5817918615728894473">Seo</translation>
+<translation id="5817963443108180228">Tere tulemast tagasi, <ph name="PROFILE_NAME" />!</translation>
 <translation id="581911254119283028">kõik rakendused</translation>
 <translation id="5821565227679781414">Loo otsetee</translation>
 <translation id="5824976764713185207">Lehte loetakse pärast laadimise lõpetamist automaatselt</translation>
@@ -7020,6 +7034,7 @@
 <translation id="6265159465845424232">Küsi enne Microsofti failide kopeerimist või teisaldamist Microsoft OneDrive'i</translation>
 <translation id="6265687851677020761">Eemalda port</translation>
 <translation id="6266532094411434237">Ühendamine seadmega <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Profiili kohandamine</translation>
 <translation id="6267166720438879315">Valige sertifikaat, et tuvastada ennast hostile <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Ava rakendusega <ph name="APP" /></translation>
 <translation id="6270309713620950855">Müksamise tühistamine</translation>
@@ -7158,7 +7173,6 @@
 <translation id="6383382161803538830">Lugemisrežiim pole sellel lehel saadaval</translation>
 <translation id="638418309848716977">Toetatud lingid</translation>
 <translation id="6384275966486438344">Muutke oma otsinguseadeid: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Nimeta grupp – 1 vaheleht}other{Nimeta grupp – # vahelehte}}</translation>
 <translation id="6385149369087767061">Looge ühendus internetiga ja proovige uuesti</translation>
 <translation id="6385382178401976503">Kaart: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Hoiatus – üksikasjalik logimine on lubatud. Allolevad logid võivad sisaldada URL-e või muud delikaatset teavet. Vaadake teave üle, et veenduda, kas olete nõus seda esitama.</translation>
@@ -7237,6 +7251,7 @@
 <translation id="6445450263907939268">Kui need on soovimatud muudatused, saate taastada eelmised seaded.</translation>
 <translation id="6446213738085045933">Töölaua otsetee loomine</translation>
 <translation id="6447842834002726250">Küpsised</translation>
+<translation id="6449554712554071184">See kustutab grupi teie seadmest jäädavalt.</translation>
 <translation id="6450876761651513209">Privaatsusega seotud seadete muutmine</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> ja veel 1 vaheleht}other{<ph name="PAGE_TITLE" /> ja veel # vahelehte}}</translation>
 <translation id="6451689256222386810">Kui unustasite parooli või soovite seda seadet muuta, <ph name="BEGIN_LINK" />lähtestage sünkroonimine<ph name="END_LINK" />.</translation>
@@ -7383,6 +7398,7 @@
 <translation id="6556866813142980365">Tee uuesti</translation>
 <translation id="6556903358015358733">Teema ja taustapilt</translation>
 <translation id="6557290421156335491">Minu otseteed</translation>
+<translation id="6560061709899140565">Kuva muud ülekandeseansid</translation>
 <translation id="6560151649238390891">Soovitus on sisestatud</translation>
 <translation id="6561726789132298588">sisestusklahv</translation>
 <translation id="6562117348069327379">Süsteemilogid salvestatakse kataloogi Allalaadimised.</translation>
@@ -7472,6 +7488,7 @@
 <translation id="6635674640674343739">Võrguühendust ei saa luua. Kontrollige võrguühendust ja proovige uuesti.</translation>
 <translation id="663569763553406962">Vaadake, millised laiendused saavad saiti lugeda või muuta</translation>
 <translation id="6635944431854494329">Omanik saab seda funktsiooni juhtida jaotises Seaded &gt; Täpsem &gt; Saada diagnostika- ja kasutusandmed automaatselt Google'ile.</translation>
+<translation id="6636572589916466933">Võtke ülekandmise taotlus seadmes <ph name="DEVICE_NAME" /> vastu.</translation>
 <translation id="6636623428211296678">Avastage allpool rohkem seadeid või lõpetage kohe</translation>
 <translation id="6639554308659482635">SQLite'i mälu</translation>
 <translation id="6640268266988685324">Avatud vaheleht</translation>
@@ -8157,6 +8174,7 @@
 <translation id="715396040729904728">käivitaja + tõstuklahv + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Jagage tagasisidet või kirjeldage oma probleem. Võimaluse korral lisage juhised probleemi uuesti esile kutsumiseks.</translation>
 <translation id="7154130902455071009">Määrake avaleheks <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Vaadake parema kvaliteediga videoid ja säästke aku tööiga. Videot esitatakse ainult Casti toega ekraanil.</translation>
 <translation id="7159953856712257647">Installitud vaikimisi</translation>
 <translation id="7160182524506337403">Saate nüüd vaadata oma telefoni märguandeid</translation>
 <translation id="7165263843655074092">Saate selles seadmes standardse turvakaitse</translation>
@@ -9015,6 +9033,7 @@
 <translation id="7788948939674438635">Ärge lubage saitidel oma klaviatuuri lukustada</translation>
 <translation id="7789963078219276159">Avalehe taustaks määrati <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">PDF-ide optiline märgituvastus</translation>
+<translation id="7790737481627460475">Selles Chromebookis olevad failid</translation>
 <translation id="7791269138074599214">Sisestusmeetod</translation>
 <translation id="7791429245559955092">See rakendus installitakse Chrome'i profiilile, mida praegu kasutate.</translation>
 <translation id="7791436592012979144">Tagurpidi kerimine on lubatud</translation>
@@ -9044,6 +9063,7 @@
 <translation id="7810202088502699111">Hüpikaknad blokeeriti sellel lehel.</translation>
 <translation id="7810367892333449285">Sisestus peab olema järgmises vormingus: <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ address<ph name="LPA_2" />$<ph name="LPA_3" />optional matching id<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Proovige uuesti või valige mõni allolevatest varem loodud teemadest.</translation>
+<translation id="7814090115158024843">Ära kunagi paku kirjutamisabi nendel saitidel</translation>
 <translation id="7814458197256864873">&amp;Kopeeri</translation>
 <translation id="7814857791038398352">Microsoft® OneDrive</translation>
 <translation id="7815583197273433531">Muuda laienduse <ph name="EXTENSION_NAME" /> otseteed <ph name="SHORTCUT" /></translation>
@@ -9275,8 +9295,10 @@
 <translation id="7974936243149753750">Üleskannimine</translation>
 <translation id="7975504106303186033">Peate selle Chrome Educationi seadme registreerima haridusalasel kontol. Uue konto registreerimiseks minge saidile g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Hoiatab teid, kui kasutate parooli, mis on andmetega seotud rikkumise tõttu ohtu sattunud.</translation>
+<translation id="797824194429476746">Vahelehed jäävad selles seadmes avatuks, aga grupp kustutatakse jäädavalt.</translation>
 <translation id="7978412674231730200">Privaatvõti</translation>
 <translation id="7978450511781612192">See logib teid teie Google'i kontodelt välja. Teie järjehoidjaid, ajalugu, paroole ja muud ei sünkroonita enam.</translation>
+<translation id="7980066177668669492">Base64 kodeeritud ASCII, mitu sertifikaati</translation>
 <translation id="7980084013673500153">Vara ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Kasutage rakenduse <ph name="APP_NAME" /> jaoks salvestatud pääsuvõtit</translation>
 <translation id="7981662863948574132">Kuva seadme EID või QR-koodiga hüpikaken</translation>
@@ -9689,6 +9711,7 @@
 <translation id="8276242035951017580">Ühelgi rakendusel pole lubatud kasutada teie kaamerat</translation>
 <translation id="8276560076771292512">Tühjenda vahemälu ja tee põhjalik uuestilaadimine</translation>
 <translation id="8276850948802942358">Vaadake lisateavet saidile ajutise loa andmise kohta kolmandate osapoolte küpsiste kasutamiseks</translation>
+<translation id="8277907305629781277">Lõite selle pääsuvõtme kuupäeval <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Veebisaidid teie keeltes</translation>
 <translation id="828180235270931531">Muud saadaolevad printerid</translation>
 <translation id="8281886186245836920">Jäta vahele</translation>
@@ -10367,7 +10390,6 @@
 <translation id="8784626084144195648">Rühmitatud keskmine</translation>
 <translation id="8785622406424941542">Elektronpliiats</translation>
 <translation id="8786824282808281903">Kui teie laps näeb seda ikooni, saab sõrmejälge kasutada tuvastamiseks või ostude kinnitamiseks.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Nimeta grupp – 1 vaheleht}other{Nimeta grupp – # vahelehte}}</translation>
 <translation id="8787752878731558379">Aidake meil Chrome'i täiustada, öeldes, miks kolmanda osapoole küpsisefailid lubasite</translation>
 <translation id="8789898473175677810">Chrome osaleb <ph name="LINK_BEGIN" />koostööprojektis<ph name="LINK_END" />, mille eesmärk on vähendada saitidevahelist jälgimist ja lõpetada järk-järgult kolmanda osapoole küpsisefailide kasutamine. Üritame seda teha aga vastutustundlikult, sest paljude saitide tegevus tugineb kolmanda osapoole küpsisefailidele. Näiteks kasutavad paljud saidid sisselogimise lihtsustamiseks, manustatud vestlus- ja kommentaarisüsteemide toetamiseks ning makseteenusteks kolmanda osapoole küpsisefaile. Reklaamijad kasutavad reklaamide paremaks isikupärastamiseks sageli kolmanda osapoole küpsisefaile. See on oluline, kuna saidid toetuvad sageli reklaamidele, mis aitavad kulude eest tasuda ja nende veebisisu maksekohustuseta hoida.</translation>
 <translation id="8791157330927639737">Lugege lisateavet värskendamise kohta</translation>
@@ -10602,6 +10624,7 @@
 <translation id="8962863356073277855">URL-i vorming peab olema https://www.example.com</translation>
 <translation id="8962918469425892674">Sait kasutab liikumis- või valgusandureid.</translation>
 <translation id="8963117664422609631">Saidi seadete avamine</translation>
+<translation id="8964795217937248330">Kas sulgeda vahelehed ja kustutada grupp?</translation>
 <translation id="8965037249707889821">Sisestage vana parool</translation>
 <translation id="8966809848145604011">Muud profiilid</translation>
 <translation id="8967427617812342790">Lisa lugemisloendisse</translation>
@@ -11035,6 +11058,7 @@
 <translation id="979345485590886759">Saidid võivad küsida luba teie hiirekursori lukustamiseks</translation>
 <translation id="980731642137034229">Toimingumenüü nupp</translation>
 <translation id="981121421437150478">Võrguühenduseta</translation>
+<translation id="98235653036850093">Tere, <ph name="PROFILE_NAME" />!</translation>
 <translation id="983192555821071799">Sule kõik vahelehed</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – kaamera ja mikrofon salvestavad</translation>
 <translation id="984275831282074731">Makseviisid</translation>
diff --git a/chrome/app/resources/generated_resources_eu.xtb b/chrome/app/resources/generated_resources_eu.xtb
index 7dd4518..5d6cdc3 100644
--- a/chrome/app/resources/generated_resources_eu.xtb
+++ b/chrome/app/resources/generated_resources_eu.xtb
@@ -1658,6 +1658,7 @@
 <translation id="2211043920024403606">Profileko informazioa</translation>
 <translation id="2211245494465528624">Kudeatu sinkronizazio-aukerak</translation>
 <translation id="221297410904507041">Ezabatu historia, cookieak, cachea eta beste</translation>
+<translation id="2213410656650624348">Ertaina</translation>
 <translation id="2214018885812055163">Karpeta partekatuak</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 lerro ez dago ikusgai&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> lerro ez daude ikusgai&gt;}}</translation>
 <translation id="2215070081105889450">Audioa partekatzeko, partekatu fitxa bat edo pantaila</translation>
@@ -2037,6 +2038,7 @@
 <translation id="2473195200299095979">Itzuli orria</translation>
 <translation id="2475982808118771221">Errore bat gertatu da</translation>
 <translation id="247616523300581745">Ezkutatu fitxategi hauek</translation>
+<translation id="2476435723907345463">Kendu da sarbide-gakoak erabiltzeko baimena</translation>
 <translation id="2476901513051581836">Konexiorik gabeko biltegiaren tamaina jakin arte, ezin da garbitu biltegia.</translation>
 <translation id="2476974672882258506">Itxi Windows <ph name="PARALLELS_DESKTOP" /> desinstalatzeko.</translation>
 <translation id="2477065602824695373">Erabilerraztasun-etengailu bat baino gehiago konfiguratu dituzunez, desaktibatu egin da pantailan automatikoki mugitzeko eginbidea.</translation>
@@ -2231,6 +2233,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> ezin da segurtasunez deskargatu.</translation>
 <translation id="2620245777360407679">Une honetan wifi-gunera konektatuta dauden gailuak</translation>
 <translation id="2620436844016719705">Sistema</translation>
+<translation id="262087792756666314">Eginbidea erraz erabiltzeko, aingura ezazu. Horretarako, sakatu ainguratzeko botoia alboko panelaren goialdean.</translation>
 <translation id="2620900772667816510">Bluetootharen superbereizmena</translation>
 <translation id="262154978979441594">Trebatu Google-ren Laguntzailea zerbitzuaren ahots-eredua</translation>
 <translation id="26224892172169984">Ez baimendu inongo webguneri protokoloak kudeatzea</translation>
@@ -3006,6 +3009,7 @@
 <translation id="3222066309010235055">Aurrerrendatzea: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Konektatu <ph name="USB_VM_NAME" />-era</translation>
 <translation id="3222857603094643834">Bilatu orriko edozein atal Google Lens-ekin</translation>
+<translation id="3223109931751684474">Kendu gailu honetan sarbide-gakoak erabiltzeko baimena</translation>
 <translation id="3223531857777746191">Berrezartzeko botoia</translation>
 <translation id="3225084153129302039">Abatar more lehenetsia</translation>
 <translation id="3225319735946384299">Kode-sinadura</translation>
@@ -3330,6 +3334,7 @@
 <translation id="3473479545200714844">Lupa</translation>
 <translation id="3474218480460386727">Erabili 99 letra edo gutxiago beste hitz bat gehitzeko</translation>
 <translation id="3474624961160222204">Erabili <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Lortu memoria-aurrezte ertaina. Tarte luzeago baten ondoren ezartzen dira inaktibo fitxak.</translation>
 <translation id="347785443197175480">Jarraitu <ph name="HOST" /> webguneari kamera eta mikrofonoa atzitzea baimentzen</translation>
 <translation id="3479357084663933762">Deuteranomalia</translation>
 <translation id="3479552764303398839">Orain ez</translation>
@@ -4053,7 +4058,6 @@
 <translation id="3983586614702900908">saltzaile ezezagunaren gailuak</translation>
 <translation id="3983764759749072418">Play Store-ko aplikazioek gailu hau erabiltzeko baimena dute.</translation>
 <translation id="3983769721878416534">Klik egin aurretiko atzerapena</translation>
-<translation id="3983793589497399077">Sakatu edo arrastatu edozein tokitan Lens-ekin bilatzeko</translation>
 <translation id="3984135167056005094">Ez adierazi helbide elektronikoa</translation>
 <translation id="3984159763196946143">Ezin izan da abiarazi demo modua</translation>
 <translation id="3984431586879874039">Zure segurtasun-giltza ikusteko baimena eman nahi diozu webgune honi?</translation>
@@ -4090,6 +4094,7 @@
 <translation id="4010036441048359843">Aktibatu nabarmentzea</translation>
 <translation id="4010746393007464819">Debian 12 bertsiora berri daiteke (Bookworm)</translation>
 <translation id="4010917659463429001">Laster-markak gailu mugikorrean izateko, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Errazago atzitzeko, ainguratu eginbidea</translation>
 <translation id="4014432863917027322">"<ph name="EXTENSION_NAME" />" konpondu nahi duzu?</translation>
 <translation id="4015163439792426608">Luzapenak dituzu? <ph name="BEGIN_LINK" />Kudeatu luzapen guztiak<ph name="END_LINK" /> toki berean.</translation>
 <translation id="4016762287427926315"><ph name="APP_NAME" /> aplikazioari ematen dizkiozun baimenak aplikazio honi ere emango zaizkio. <ph name="BEGIN_LINK" />Kudeatu<ph name="END_LINK" /></translation>
@@ -4393,6 +4398,7 @@
 <translation id="4261429981378979799">Luzapenen baimenak</translation>
 <translation id="4262004481148703251">Baztertu abisua</translation>
 <translation id="4263223596040212967">Egiaztatu teklatuaren diseinua egokia dela eta saiatu berriro.</translation>
+<translation id="4263470758446311292">Lortu memoria-aurrezte ahalik eta handiena. Tarte laburrago baten ondoren ezartzen dira inaktibo fitxak.</translation>
 <translation id="4265096510956307240">Egiaztatu zeu zarela</translation>
 <translation id="4265301768135164545">Era berean, <ph name="BEGIN_LINK" />eskuz<ph name="END_LINK" /> konfigura dezakezu eSIMaren profil bat</translation>
 <translation id="426564820080660648">Eguneratzeak bilatzeko, erabili Ethernet-, wifi- edo datu-konexioa.</translation>
@@ -4712,6 +4718,7 @@
 <translation id="4503748371388753124">Ordenagailuak Trusted Platform Module (TPM) segurtasun-gailu bat du; ChromeOS Flex-en ezinbesteko segurtasun-eginbideak inplementatzeko erabiltzen da gailu hori. Informazio gehiago lortzeko, joan Chromebook-en laguntza-zentrora: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Cookieak onartzen dira}=1{Cookieak onartzen dira, salbuespen batekin}other{Cookieak onartzen dira, {COUNT} salbuespenekin}}</translation>
 <translation id="4504940961672722399">Luzapena erabiltzeko, sakatu ikonoa edo <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Deskargatu Chrome QR kode honekin, eta hasi saioa Google-ko kontuarekin.</translation>
 <translation id="450552327874992444">Dagoeneko gehitu da hitza</translation>
 <translation id="4507373251891673233"><ph name="HOST" /> ostalariaren luzapen guztiak blokeatu dituzu</translation>
 <translation id="4507401683427517298">Sakatu Gehitu lasterbide bat</translation>
@@ -5047,6 +5054,7 @@
 <translation id="4768332406694066911">Identifikatzen zaituzten erakunde hauen ziurtagiriak dituzu</translation>
 <translation id="4769632191812288342">Babes estandarra ari zara jasotzen</translation>
 <translation id="4770119228883592393">Baimena eskatu da. Erantzuteko, sakatu ⌘, Aukera eta behera egiteko gezi-tekla.</translation>
+<translation id="4770755495532014179">Erabili pasahitz hau iPhone-an</translation>
 <translation id="4773112038801431077">Bertsio-berritu Linux</translation>
 <translation id="477548766361111120">Eman webgunea irakurri eta aldatzeko baimena luzapenari</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> konektatu da</translation>
@@ -5216,6 +5224,7 @@
 <translation id="4890399733764921729">Ezin da konektatu. Beste operadore batek blokeatuta dauka.</translation>
 <translation id="4890773143211625964">Erakutsi inprimagailuaren aukera aurreratuak</translation>
 <translation id="4891089016822695758">Beta foroa</translation>
+<translation id="4891795846939730995">Gailu honetan sarbide-gakoak erabiltzeko baimena berriro emateko, hasi saioa webgune edo aplikazio batean gordetako sarbide-gako batekin</translation>
 <translation id="4892229439761351791">Webguneak Bluetootha erabil dezake</translation>
 <translation id="4892328231620815052">Prest zaudenean, bilatu irakurketa-zerrenda Laster-markak eta zerrendak atalean</translation>
 <translation id="489258173289528622">Gailua kargatzen ari ez denean inaktibo geratuz gero gauzatu beharreko ekintza</translation>
@@ -6443,6 +6452,7 @@
 <translation id="5846504156837627898">Kudeatu webgunearen baimenak</translation>
 <translation id="5846749317653566506">Doitu koloreen zuzenketaren ezarpenak koloreak ezberdintzen direla ziurtatzeko</translation>
 <translation id="5846807460505171493">Instalatu eguneratzeak eta aplikazioak. Halaber, aurrera eginez gero, onartu egingo duzu Google-ren, operadorearen edo fabrikatzailearen eguneratzeak eta aplikazioak automatikoki deskargatu eta instalatuko direla agian, beharbada datu-konexioa erabilita. Baliteke aplikazio horietako batzuetan erosketak egin ahal izatea.</translation>
+<translation id="5848054741303781539">Eskuz ezartzen da, ez da erabiltzen kokapena</translation>
 <translation id="5848319660029558352">Ozen irakurtzeko eginbidea eta testuaren formatua</translation>
 <translation id="5849212445710944278">Gehitu da jada</translation>
 <translation id="584945105664698226">Ahotsaren abiadura</translation>
@@ -7140,7 +7150,6 @@
 <translation id="6383382161803538830">Irakurtzeko modua ez dago erabilgarri orri honetan</translation>
 <translation id="638418309848716977">Onartzen diren estekak</translation>
 <translation id="6384275966486438344">Ezarri bilaketa-ezarpen hau: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Talde izengabea: 1 fitxa}other{Talde izengabea: # fitxa}}</translation>
 <translation id="6385149369087767061">Konektatu Internetera eta saiatu berriro</translation>
 <translation id="6385382178401976503">Txartela: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Abisua: erregistro xehatuak gaituta daude. Baliteke beheko erregistroek URLak edo bestelako kontuzko informazioa izatea. Berrikusi eta ziurtatu informazio hori bidali nahi duzula.</translation>
@@ -7472,6 +7481,7 @@
 <translation id="6648911618876616409">Ezinbesteko eguneratze bat instalatzeko prest dago. Hasi saioa instalatzen hasteko.</translation>
 <translation id="6649018507441623493">Itxaron unetxo batean…</translation>
 <translation id="6650206238642452078">Harpidetu ChromeOS-eko sistemaren gertaeretara</translation>
+<translation id="6650584564768559994">Lortu memoria-aurrezte orekatua. Tarte optimo baten ondoren ezartzen dira inaktibo fitxak.</translation>
 <translation id="665061930738760572">Ireki leiho &amp;berrian</translation>
 <translation id="6651237644330755633">Jo fidagarritzat webguneak identifikatzeko ziurtagiri hau</translation>
 <translation id="6651495917527016072">Sinkronizatu wifi-sareak telefonoarekin. <ph name="LINK_BEGIN" />Lortu informazio gehiago<ph name="LINK_END" /></translation>
@@ -7729,6 +7739,7 @@
 <translation id="6831043979455480757">Itzuli</translation>
 <translation id="6832218595502288407">Lerrokatu ezkerrean</translation>
 <translation id="6833479554815567477"><ph name="GROUP_NAME" /> taldetik kendu da fitxa (<ph name="GROUP_CONTENTS" />)</translation>
+<translation id="6833753236242482566">Orekatua (gomendatua)</translation>
 <translation id="6835762382653651563"><ph name="DEVICE_TYPE" /> eguneratzeko, konektatu Internetera.</translation>
 <translation id="683630338945552556">Erabili eta gorde pasahitzak Google-ko kontuan</translation>
 <translation id="6839225236531462745">Errore bat gertatu da ziurtagiria ezabatzean</translation>
@@ -9377,6 +9388,7 @@
 <translation id="8066444921260601116">Konexioaren leihoa</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> aplikazioaren kokapena erabiltzeko baimena</translation>
 <translation id="8070662218171013510">Interakzio haptikoa</translation>
+<translation id="8071033114691184017">Erabili pasahitz hau iPhone-an</translation>
 <translation id="8071432093239591881">Inprimatu irudi gisa</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Aplikazioek gordetako datu guztiak sartzen dira aplikazioetako datuetan (garatzaileen ezarpenen arabera), kontaktuak, mezuak eta argazkiak barne.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Babeskopiek ez dute hartzen tokirik zure haurraren Drive-n.<ph name="END_PARAGRAPH2" />
@@ -9944,6 +9956,7 @@
 <translation id="8482077254400484047">Kudeatu inaktibo dauden fitxen itxura hemen</translation>
 <translation id="8483248364096924578">IP helbidea</translation>
 <translation id="8486666913807228950">Arrazoia: <ph name="REVERT_RULE" /> alderantzizko araua "Behartu hemen irekitzera:" zerrendan aurkitu da.</translation>
+<translation id="8487303289354211861">Ainguratu da! Tresna-barrako botoi berriaren bidez atzi dezakezu berriro eginbidea.</translation>
 <translation id="8487678622945914333">Handitu</translation>
 <translation id="8487699605742506766">Wifi-gunea</translation>
 <translation id="8489156414266187072">Iradokizun pertsonalak zure kontuan soilik agertzen dira</translation>
@@ -10342,7 +10355,6 @@
 <translation id="8784626084144195648">Denbora-tartetan adierazitako batezbestekoa</translation>
 <translation id="8785622406424941542">Arkatza</translation>
 <translation id="8786824282808281903">Haurrak ikono hau ikusten duenean, hatz-marka bat erabil daiteke identitatea identifikatzeko edo erosketak onartzeko.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Talde izengabea: 1 fitxa}other{Talde izengabea: # fitxa}}</translation>
 <translation id="8787752878731558379">Lagun iezaguzu Chrome hobetzen: esan iezaguzu zergatik eman duzun hirugarrenen cookieak erabiltzeko baimena</translation>
 <translation id="8789898473175677810">Webgunearteko jarraipena murrizteko eta hirugarrenen cookieen erabilera gutxitzeko <ph name="LINK_BEGIN" />ahalegin bateratu<ph name="LINK_END" /> batean hartzen du parte Chrome-k. Hala eta guztiz ere, erantzukizunez jokatu nahi dugu; izan ere, webgune askok, oraindik ere, hirugarrenen cookieak erabili behar dituzte behar bezala funtzionatzeko. Adibidez, webgune askok hirugarrenen cookieak erabiltzen dituzte saio-hasiera sinplifikatzeko, kapsulatutako txat- eta iruzkin-sistemak erabiltzeko aukera emateko eta ordainpeko zerbitzuetarako. Iragarleek maiz erabiltzen dituzte hirugarrenen cookieak iragarkiak hobeto pertsonalizatzeko. Hori garrantzitsua da, webguneek askotan iragarkiak behar dituztelako gastuak ordaintzeko eta sareko edukia gasturik gabe guztientzat erabilgarri mantentzeko.</translation>
 <translation id="8791157330927639737">Lortu eguneratzeari buruzko informazio gehiago</translation>
@@ -10656,6 +10668,7 @@
 <translation id="9014674417732091912"><ph name="ROW_NUMBER" />. errenkadara mugitu da</translation>
 <translation id="901668144954885282">Egin babeskopia Google Drive-n</translation>
 <translation id="9016827136585652292">pribatutasun-pantaila aldatzeko etengailua</translation>
+<translation id="9017055559700464094">Ainguratu da! Tresna-barraren bidez atzi dezakezu berriro eginbidea.</translation>
 <translation id="90181708067259747">Iraungitze-data: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Instalatu da</translation>
 <translation id="901876615920222131">Taldea berriro irekitzeko, saka ezazu</translation>
@@ -10814,6 +10827,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Zerbitzurik onena izateko, instalatu <ph name="DEVICE_OS" /> barneko diskoan. Saioa hasteko pantailan ere instala dezakezu geroago.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Alabaina, instalatzeko prest ez bazaude, USB bidezko flash unitate baten bidez exekuta dezakezu, probatu ahal izateko. Aukera hori hautatuz gero, lehendik dauden sistema eragilea eta datuak mantenduko dira, baina baliteke memoria eta errendimendua murriztea.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Ireki fitxa ainguratu gisa</translation>
+<translation id="9122788874051694311">Sarbide-gakoa ezkutuko modutik kanpo gorde nahi duzu?</translation>
 <translation id="9123287046453017203">Gailua ez dago eguneratuta</translation>
 <translation id="9125910124977405374">Kendu <ph name="LANGUAGE_NAME" /> automatikoki itzultzen diren hizkuntzetatik</translation>
 <translation id="9126149354162942022">Kurtsorearen kolorea</translation>
diff --git a/chrome/app/resources/generated_resources_fa.xtb b/chrome/app/resources/generated_resources_fa.xtb
index 02a5ae06..3904890 100644
--- a/chrome/app/resources/generated_resources_fa.xtb
+++ b/chrome/app/resources/generated_resources_fa.xtb
@@ -366,6 +366,7 @@
 <translation id="1260810365552581339">‏Linux ممکن است فضای دیسک کافی نداشته باشد. می‌توانید در <ph name="LINK_START" />تنظیمات<ph name="LINK_END" /> فضای دیسک Linux را افزایش دهید و بازیابی را دوباره امتحان کنید.</translation>
 <translation id="1261380933454402672">متوسط</translation>
 <translation id="126156426083987769">مشکلی در رابطه با مجوزهای حالت نمایشی دستگاه پیش آمد.</translation>
+<translation id="1261885284931493480">برگه(ها) برداشته و گروه حذف شود؟</translation>
 <translation id="1263231323834454256">فهرست خواندن</translation>
 <translation id="1263733306853729545">استفاده از کلیدهای <ph name="MINUS" /> و <ph name="EQUAL" /> برای پی‌جویی فهرست کاندیداها</translation>
 <translation id="126387934568812801">این نماگرفت و عنوان برگه‌های باز اضافه شوند</translation>
@@ -875,6 +876,7 @@
 <translation id="1634224622052500893">‏شبکه Wi-Fi پیدا شد</translation>
 <translation id="1634783886312010422">آیا قبلاً این گذرواژه را در <ph name="WEBSITE" /> تغییر داده‌اید؟</translation>
 <translation id="1636212173818785548">تأیید</translation>
+<translation id="1636542522761359943">خوش آمدید <ph name="PROFILE_NAME" />،</translation>
 <translation id="163712950892155760">‏<ph name="BEGIN_PARAGRAPH1" />داده‌های برنامه می‌تواند هر داده‌ای باشد که برنامه (براساس تنظیمات توسعه‌دهنده) ذخیره کرده است، ازجمله داده‌هایی مانند مخاطبین، پیام‌ها، و عکس‌ها. داده‌های پشتیبان‌گیری‌شده جزو سهمیه ذخیره‌سازی Drive شما حساب نمی‌شود.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />می‌توانید این سرویس را در «تنظیمات خاموش» کنید.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">‏این نشانک را در iPhone خود دریافت کنید</translation>
@@ -911,6 +913,7 @@
 <translation id="1652862280638399816">‏برای استفاده از «مدیر گذرواژه» با macOS Keychain، برنامه Chromium را مجدداً راه‌اندازی کنید و دسترسی به Keychain را مجاز کنید. پس‌از راه‌اندازی مجدد، برگه‌هایتان دوباره باز می‌شوند.</translation>
 <translation id="1653958716132599769">برگه‌های مرتبط با گروه</translation>
 <translation id="1654580009054503925">مجاز به نمایش درخواست‌ها نیست</translation>
+<translation id="1654713139320245449">مقصدی برای پخش محتوا پیدا نشد. راهنمایی می‌خواهید؟</translation>
 <translation id="1656528038316521561">ماتی پس‌زمینه</translation>
 <translation id="1657406563541664238">‏با ارسال خودکار آمار استفاده و گزارش‌های خرابی به Google، به بهتر شدن <ph name="PRODUCT_NAME" /> کمک کنید.</translation>
 <translation id="1657937299377480641">برای ورود دوباره به سیستم برای دسترسی به منابع آموزشی، از ولی‌تان بخواهید به شما اجازه بدهد</translation>
@@ -1638,12 +1641,14 @@
 <translation id="2187895286714876935">خطای وارد کردن مجوز سرور</translation>
 <translation id="2187906491731510095">افزونه‌ها به‌روزرسانی شدند</translation>
 <translation id="2188881192257509750">باز کردن <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">گروه برگه حذف شود؟</translation>
 <translation id="2190069059097339078">‏گیرنده اعتبارنامه‌های WiFi</translation>
 <translation id="219008588003277019">‏ماژول Native Client: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(خالی)</translation>
 <translation id="2190967441465539539">دسترسی به دوربین و میکروفون امکان‌پذیر نیست</translation>
 <translation id="2191754378957563929">روشن</translation>
 <translation id="2192505247865591433">از:</translation>
+<translation id="219283042927675668">برگه‌های موجود در گروه</translation>
 <translation id="2193365732679659387">تنظیمات اطمینان</translation>
 <translation id="2194856509914051091">مواردی که باید درنظر داشت</translation>
 <translation id="2195331105963583686">همچنان می‌توانید بعد از اتمام زمان مشخص‌شده، از این <ph name="DEVICE_TYPE" /> استفاده کنید، اما دیگر به‌روزرسانی‌های نرم‌افزار و امنیتی خودکار را دریافت نخواهید کرد</translation>
@@ -1867,6 +1872,7 @@
 <translation id="2350133097354918058">بار کردن مجدد شد</translation>
 <translation id="2350182423316644347">راه‌اندازی برنامه کاربردی...</translation>
 <translation id="235028206512346451">اگر از دستگاهتان دور شوید، صفحه‌نمایش به‌طور خودکار قفل می‌شود. وقتی مقابل دستگاهتان هستید، صفحه‌نمایش به‌مدت طولانی‌تری بیدار می‌ماند. اگر از صفحه قفل استفاده نمی‌کنید، دستگاه به‌جای قفل شدن به خواب می‌رود.</translation>
+<translation id="2352305801620974284">‏وقتی در این دستگاه به سیستم وارد می‌شوید، گذرواژه‌ها و موارد دیگر را از «حساب Google» خود دریافت می‌کنید</translation>
 <translation id="2352662711729498748">کمتر از ۱ مگابایت</translation>
 <translation id="2352810082280059586">یادداشت‌های صفحه درحالت قفل به‌طور خودکار در <ph name="LOCK_SCREEN_APP_NAME" /> ذخیره می‌شوند. جدیدترین یادداشت روی صفحه قفل باقی می‌ماند.</translation>
 <translation id="2353297238722298836">دوربین و میکروفون مجاز هستند</translation>
@@ -2077,6 +2083,7 @@
 <translation id="249113932447298600">متأسفیم، دستگاه <ph name="DEVICE_LABEL" /> در حال حاضر پشتیبانی نمی‌شود.</translation>
 <translation id="2491587035099903063">پیش‌دید کردن صدای <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">درحال آماده‌سازی درخواست امضای گواهینامه</translation>
+<translation id="2492964937550251173">برگه(ها) بسته شود و گروه حذف شود؟</translation>
 <translation id="249330843868392562">باز کردن تنظیمات نوشتار به گفتار</translation>
 <translation id="2494555621641843783">‏Steam نصب نشد</translation>
 <translation id="2495141202137516054">‏از Drive شما</translation>
@@ -2246,6 +2253,7 @@
 <translation id="262087792756666314">می‌توانید این ویژگی را برای دسترسی آسان سنجاق کنید؛ روی دکمه «سنجاق کردن» در بالای پانل کناری کلیک کنید</translation>
 <translation id="2620900772667816510">وضوح فوق‌العاده با بلوتوث</translation>
 <translation id="262154978979441594">‏آموزش مدل صوتی «دستیار Google»</translation>
+<translation id="2622280935687585828">برداشتن <ph name="SITE_NAME" /> از سایت‌های غیرفعال</translation>
 <translation id="26224892172169984">به هیچ سایتی برای کنترل پروتکل ها اجازه داده نشود</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">‏کنترل و برنامه‌ریزی مجدد دستگاه‌های MIDI مجاز است</translation>
@@ -2419,6 +2427,7 @@
 <translation id="2743387203779672305">کپی در بریده‌دان</translation>
 <translation id="274362947316498129">برنامه‌ای می‌خواهد به <ph name="DEVICE_NAME" /> دسترسی داشته باشد. برای موافقت با دسترسی، کلید حریم خصوصی <ph name="DEVICE_NAME" /> را خاموش کنید.</translation>
 <translation id="2745080116229976798">‏وابستگی مشروط Microsoft</translation>
+<translation id="2747853844543618313">حتماً درخواست پخش محتوا را در <ph name="DEVICE_NAME" /> بپذیرید.</translation>
 <translation id="2749756011735116528">ورود به سیستم <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">سیم‌کارت</translation>
 <translation id="2749881179542288782">بررسی گرامر با املا</translation>
@@ -2789,6 +2798,7 @@
 <translation id="3021066826692793094">پروانه</translation>
 <translation id="3021678814754966447">&amp;نمای منبع قاب</translation>
 <translation id="3021902017511220299">اسکن انجام نشد. سرپرست این کنش را مسدود کرده است.</translation>
+<translation id="3022068420678496307">‏با این کار، گروه از همه دستگاه‌هایی که با این «حساب Google» به سیستم Chrome وارد شده‌اند حذف می‌شود.</translation>
 <translation id="3022361196600037287">‏<ph name="DEVICE" /> از این Chromebook برداشته خواهد شد و در <ph name="PRIMARY_EMAIL" /> ذخیره نخواهد شد.</translation>
 <translation id="3022978424994383087">متوجه نشدم.</translation>
 <translation id="3023464535986383522">انتخاب برای شنیدن</translation>
@@ -4068,7 +4078,6 @@
 <translation id="3983586614702900908">دستگاه‌های ارائه‌دهنده ناشناس</translation>
 <translation id="3983764759749072418">‏برنامه‌های «فروشگاه Play» به این دستگاه دسترسی دارند.</translation>
 <translation id="3983769721878416534">تأخیر قبل از کلیک</translation>
-<translation id="3983793589497399077">برای جستجو با «لنز»، روی هر جایی از صفحه کلیک کنید یا بکشید</translation>
 <translation id="3984135167056005094">بدون درج نشانی ایمیل</translation>
 <translation id="3984159763196946143">حالت نمایشی شروع نشد</translation>
 <translation id="3984431586879874039">به این سایت اجازه می‌دهید کلید امنیتی‌تان را ببیند؟</translation>
@@ -4191,6 +4200,7 @@
 <translation id="4078903002989614318">گزینه‌های مرتب‌سازی و فهرست</translation>
 <translation id="4079140982534148664">استفاده از غلط‌گیر املای بهبودیافته</translation>
 <translation id="4082333918978320301">هیچ وب‌سایتی اجازه ندارد از میکروفون استفاده کند</translation>
+<translation id="4083735423615351075">‏برگه‌ها در این دستگاه باز می‌مانند اما گروه از همه دستگاه‌هایی که با این «حساب Google» به سیستم Chrome وارد شده‌اند حذف می‌شود.</translation>
 <translation id="4084682180776658562">نشانک</translation>
 <translation id="4084835346725913160">بستن <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">جاوا اسکریپت در این صفحه مسدود شده است.</translation>
@@ -4200,6 +4210,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">نمایش در راست</translation>
+<translation id="4088879333319441249">گروه‌بندی برگه‌ها لغو شود؟</translation>
 <translation id="4089235344645910861">تنظیمات ذخیره شد. همگام‌سازی شروع شد.</translation>
 <translation id="4089817585533500276">تبدیل + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">فعال کردن دسترسی تأییدشده</translation>
@@ -5681,6 +5692,7 @@
 <translation id="5242724311594467048">«<ph name="EXTENSION_NAME" />» فعال شود؟</translation>
 <translation id="5243522832766285132">چند لحظه دیگر دوباره امتحان کنید</translation>
 <translation id="5244234799035360187">‏ازاین‌پس OneDrive در برنامه Files نشان داده خواهد شد</translation>
+<translation id="5244466461749935369">فعلاً نگه داشته شود</translation>
 <translation id="5244474230056479698">درحال همگام‌سازی در <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">شروع‌به‌کار با حساب مدرسه</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> خراب شده است. برای راه‌اندازی مجدد برنامه بر روی این بالون کلیک کنید.</translation>
@@ -5949,6 +5961,7 @@
 <translation id="5453829744223920473">فرزندتان می‌تواند از همه برنامه‌ها، نشانک‌ها، و منابع مدرسه‌اش درست مثل زمانی‌که در کلاس است استفاده کند. مدرسه قوانین پایه را تعیین می‌کند.</translation>
 <translation id="5454166040603940656">با <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">دیدن نتایج جستجوی بیشتر</translation>
+<translation id="5457082343331641453">افزودن به جستجو</translation>
 <translation id="5457113250005438886">نامعتبر</translation>
 <translation id="5457459357461771897">خواندن و حذف عکس‌ها، موسیقی، و سایر رسانه‌ها از رایانه‌تان</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6426,6 +6439,7 @@
 <translation id="5816434091619127343">تغییرات درخواستی باعث می‌شود چاپگر غیرقابل استفاده شود.</translation>
 <translation id="581659025233126501">روشن کردن همگام‌سازی</translation>
 <translation id="5817918615728894473">مرتبط‌سازی</translation>
+<translation id="5817963443108180228"><ph name="PROFILE_NAME" />، دوباره خوش آمدید</translation>
 <translation id="581911254119283028">همه برنامه‌ها</translation>
 <translation id="5821565227679781414">ایجاد میان‌بر</translation>
 <translation id="5824976764713185207">خواندن صفحه به‌طور خودکار بعد از اتمام بارگیری</translation>
@@ -7026,6 +7040,7 @@
 <translation id="6265159465845424232">‏پیش‌از کپی یا منتقل کردن فایل‌های Microsoft به Microsoft OneDrive سؤال شود</translation>
 <translation id="6265687851677020761">برداشتن درگاه</translation>
 <translation id="6266532094411434237">درحال اتصال به <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">سفارشی‌سازی نمایه</translation>
 <translation id="6267166720438879315">انتخاب گواهی برای راستی‌آزمایی خودتان در <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">باز کردن با <ph name="APP" /></translation>
 <translation id="6270309713620950855">تذکر میکروفون خاموش</translation>
@@ -7164,7 +7179,6 @@
 <translation id="6383382161803538830">حالت خواندن در این صفحه دردسترس نیست</translation>
 <translation id="638418309848716977">پیوندهای پشتیبانی‌شده</translation>
 <translation id="6384275966486438344">تغییر تنظیمات جستجویتان به: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{گروه بدون نام - ۱ برگه}one{گروه بدون نام - # برگه}other{گروه بدون نام - # برگه}}</translation>
 <translation id="6385149369087767061">به اینترنت متصل شوید و دوباره امتحان کنید</translation>
 <translation id="6385382178401976503">کارت: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">هشدار - گزارش‌گیری با جزئیات فعال است؛ ممکن است گزارش‌های زیر شامل نشانی‌های وب یا اطلاعات حساس دیگر باشند. لطفاً این اطلاعات را مرور کنید و مطمئن شوید مشکلی برای ارسال آن‌ها ندارید.</translation>
@@ -7243,6 +7257,7 @@
 <translation id="6445450263907939268">اگر این تغییرات مدنظر شما نبود، می‌توانید تنظیمات قبلی‌تان را بازیابی کنید.</translation>
 <translation id="6446213738085045933">ایجاد میان‌بر دسک تاپ</translation>
 <translation id="6447842834002726250">کوکی‌ها</translation>
+<translation id="6449554712554071184">با این کار، گروه برای همیشه از دستگاهتان حذف خواهد شد.</translation>
 <translation id="6450876761651513209">تغییر تنظیمات مربوط به حریم خصوصی شما</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> و ۱ برگه دیگر}one{<ph name="PAGE_TITLE" /> و # برگه دیگر}other{<ph name="PAGE_TITLE" /> و # برگه دیگر}}</translation>
 <translation id="6451689256222386810">اگر عبارت عبورتان را فراموش کرده‌اید یا می‌خواهید این تنظیم را تغییر دهید، <ph name="BEGIN_LINK" />همگام‌سازی را بازنشانی کنید<ph name="END_LINK" />.</translation>
@@ -7389,6 +7404,7 @@
 <translation id="6556866813142980365">انجام مجدد</translation>
 <translation id="6556903358015358733">زمینه و کاغذدیواری</translation>
 <translation id="6557290421156335491">میان‌برهای من</translation>
+<translation id="6560061709899140565">نمایش جلسه‌های دیگر پخش محتوا</translation>
 <translation id="6560151649238390891">پیشنهاد درج شد</translation>
 <translation id="6561726789132298588">Enter</translation>
 <translation id="6562117348069327379">گزارش‌های سیستم را در فهرست راهنمای «بارگیری‌ها» ذخیره کنید.</translation>
@@ -7480,6 +7496,7 @@
 <translation id="6635674640674343739">برقراری اتصال شبکه امکان‌پذیر نیست. اتصال شبکه‌تان را بررسی و دوباره امتحان کنید.</translation>
 <translation id="663569763553406962">ببینید چه افزونه‌هایی می‌توانند سایت‌ها را بخوانند و تغییر دهند</translation>
 <translation id="6635944431854494329">‏مالک می‌تواند این ویژگی را در «تنظیمات &gt; پیشرفته &gt; ارسال خودکار داده‌های تشخیصی و میزان استفاده به Google» کنترل کند.</translation>
+<translation id="6636572589916466933">درخواست پخش را در <ph name="DEVICE_NAME" /> بپذیرید.</translation>
 <translation id="6636623428211296678">در بخش زیر تنظیمات بیشتری را کاوش کنید یا همین‌حالا کارتان را به‌پایان برسانید</translation>
 <translation id="6639554308659482635">‏حافظه SQLite</translation>
 <translation id="6640268266988685324">برگه باز</translation>
@@ -8165,6 +8182,7 @@
 <translation id="715396040729904728">راه‌انداز + تبدیل + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">بازخوردتان را با ما درمیان بگذارید یا مشکلتان را شرح دهید. درصورت امکان، مراحل لازم برای بازسازی مشکل را اضافه کنید.</translation>
 <translation id="7154130902455071009">تغییر صفحه شروعتان به: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">‏کیفیت ویدیو بهتری دریافت کنید و در مصرف باتری صرفه‌جویی کنید. ویدیو فقط در صفحه‌نمایش سازگار با Cast پخش خواهد شد.</translation>
 <translation id="7159953856712257647">نصب‌شده به‌طور پیش‌فرض</translation>
 <translation id="7160182524506337403">اکنون می‌توانید اعلان‌های تلفنتان را مشاهده کنید</translation>
 <translation id="7165263843655074092">محافظت امنیتی استاندارد را در این دستگاه دریافت می‌کنید</translation>
@@ -9022,6 +9040,7 @@
 <translation id="7788948939674438635">به سایت‌ها اجازه داده نشود صفحه‌کلید را قفل کنند</translation>
 <translation id="7789963078219276159">پس‌زمینه صفحه شروع به <ph name="CATEGORY" /> تغییر کرد.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">‏فایل‌های موجود در این Chromebook</translation>
 <translation id="7791269138074599214">روش ورودی</translation>
 <translation id="7791429245559955092">‏این برنامه در نمایه Chrome که اکنون استفاده می‌کنید نصب خواهد شد</translation>
 <translation id="7791436592012979144">پیمایش معکوس فعال است</translation>
@@ -9051,6 +9070,7 @@
 <translation id="7810202088502699111">پنجره‌های بازشو در این صفحه مسدود شده‌اند.</translation>
 <translation id="7810367892333449285">‏ورودی باید در قالب <ph name="LPA_0" />$<ph name="LPA_1" />SM-‏DP+ نشانی<ph name="LPA_2" />$<ph name="LPA_3" />شناسه انطباق اختیاری<ph name="LPA_4" /> باشد</translation>
 <translation id="7811263553491007091">دوباره امتحان کنید یا یکی از زمینه‌های قبلاً تولیدشده را در زیر انتخاب کنید.</translation>
+<translation id="7814090115158024843">هرگز در این سایت‌ها کمک برای نوشتن پیشنهاد نمی‌شود</translation>
 <translation id="7814458197256864873">&amp;کپی</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">ویرایش <ph name="SHORTCUT" /> برای <ph name="EXTENSION_NAME" /></translation>
@@ -9282,8 +9302,10 @@
 <translation id="7974936243149753750">تصویر بزرگ‌تر از صفحه</translation>
 <translation id="7975504106303186033">‏باید این دستگاه Chrome Education را در «حساب آموزشی» ثبت‌نام کنید. برای ساخت حساب جدید، لطفاً به g.co/workspace/edusignup بروید.</translation>
 <translation id="7977451675950311423">اگر از گذرواژه‌ای استفاده کنید که در سرقت اطلاعات شبکه لو رفته باشد، به شما هشدار می‌دهد.</translation>
+<translation id="797824194429476746">برگه‌ها در این دستگاه باز می‌مانند اما گروه برای همیشه حذف خواهد شد.</translation>
 <translation id="7978412674231730200">کلید خصوصی</translation>
 <translation id="7978450511781612192">‏با این کار از سیستم حساب Google خود خارج می‌شوید. نشانک‌ها، سابقه، گذرواژه‌ها و سایر موارد دیگر همگام‌سازی نمی‌شوند.</translation>
+<translation id="7980066177668669492">‏‫Base64-encoded ASCII،‏ چند گواهی</translation>
 <translation id="7980084013673500153">شناسه دارایی: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">از یکی از گذرکلیدهای ذخیره‌شده برای <ph name="APP_NAME" /> استفاده کنید</translation>
 <translation id="7981662863948574132">‏نمایش بالاپر رمزینه پاسخ‌سریع و «سند شناسه جاسازی‌شده» (EID) دستگاه</translation>
@@ -9696,6 +9718,7 @@
 <translation id="8276242035951017580">هیچ برنامه‌ای اجازه ندارد از دوربین استفاده کند</translation>
 <translation id="8276560076771292512">خالی کردن حافظه پنهان و بار کردن مجدد سخت</translation>
 <translation id="8276850948802942358">درباره دادن اجازه موقت به سایت برای استفاده از کوکی شخص ثالث بیشتر بدانید</translation>
+<translation id="8277907305629781277">این گذرکلید را در <ph name="DATE" /> ایجاد کردید</translation>
 <translation id="8280267190418431666">نمایش وب‌سایت‌ها به زبان شما</translation>
 <translation id="828180235270931531">دیگر چاپگرهای موجود</translation>
 <translation id="8281886186245836920">رد شدن</translation>
@@ -10375,7 +10398,6 @@
 <translation id="8784626084144195648">میانگین حذف‌شده‌ها</translation>
 <translation id="8785622406424941542">قلم</translation>
 <translation id="8786824282808281903">وقتی فرزندتان این نماد را ببیند، می‌تواند برای تشخیص هویت یا تأیید خرید از اثر انگشت استفاده کند.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{گروه بدون نام - ۱ برگه}one{گروه بدون نام - # برگه}other{گروه بدون نام - # برگه}}</translation>
 <translation id="8787752878731558379">‏با گفتن دلیل خودتان برای مجاز کردن کوکی‌های شخص ثالث، به ما در بهبود Chrome کمک کنید</translation>
 <translation id="8789898473175677810">‏‫Chrome عضو یک <ph name="LINK_BEGIN" />تلاش مشارکتی<ph name="LINK_END" /> برای کاهش ردیابی بین‌سایتی و حذف تدریجی استفاده از کوکی‌های شخص ثالث است. اما در تلاش هستیم تا این کار را مسئولانه انجام دهیم، زیرا بسیاری از سایت‌ها به کوکی‌های شخص ثالث متکی هستند تا طبق طراحی کار کنند. برای مثال، بسیاری از سایت‌ها برای ساده کردن فرایند ورود به سیستم، پشتیبانی از سیستم‌های نظر و گپ جاسازی‌شده، و سرویس‌های پرداخت از کوکی‌های شخص ثالث استفاده می‌کنند. تبلیغ‌کنندگان هم اغلب برای بهبود شخصی‌سازی آگهی‌ها از کوکی‌های شخص ثالث استفاده می‌کنند. این مسئله مهمی است چون سایت‌ها اغلب برای کمک به پرداخت هزینه‌ها و رایگان نگه داشتن محتوای آنلاین خود روی آگهی‌ها حساب می‌کنند.</translation>
 <translation id="8791157330927639737">درباره به‌روزرسانی بیشتر بدانید</translation>
@@ -10610,6 +10632,7 @@
 <translation id="8962863356073277855">‏قالب نشانی وب باید به این صورت باشد: https://www.example.com</translation>
 <translation id="8962918469425892674">این سایت از حسگرهای نور یا حرکت استفاده می‌کند.</translation>
 <translation id="8963117664422609631">رفتن به تنظیمات سایت</translation>
+<translation id="8964795217937248330">برگه(ها) بسته شود و گروه حذف شود؟</translation>
 <translation id="8965037249707889821">گذرواژه قدیمی را وارد کنید</translation>
 <translation id="8966809848145604011">نمایه‌های دیگر</translation>
 <translation id="8967427617812342790">افزودن به فهرست خواندن</translation>
@@ -11043,6 +11066,7 @@
 <translation id="979345485590886759">سایت‌ها بتوانند برای قفل کردن اشاره‌گر موشواره درخواست دهند</translation>
 <translation id="980731642137034229">دکمه منوی کنش‌ها</translation>
 <translation id="981121421437150478">آفلاین</translation>
+<translation id="98235653036850093">سلام، <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">بستن همه برگه‌ها</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - دوربین و میکروفون درحال ضبط هستند</translation>
 <translation id="984275831282074731">روش‌های پرداخت</translation>
diff --git a/chrome/app/resources/generated_resources_fi.xtb b/chrome/app/resources/generated_resources_fi.xtb
index 3c3fa6b0..65f7bc1b 100644
--- a/chrome/app/resources/generated_resources_fi.xtb
+++ b/chrome/app/resources/generated_resources_fi.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linuxilla ei välttämättä ole riittävästi levytilaa. Voit lisätä Linuxin levytilaa ja kokeilla palautusta uudelleen <ph name="LINK_START" />Asetuksista<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Maltillinen</translation>
 <translation id="126156426083987769">Esittelytilan laitelisenssien kanssa tapahtui ongelma.</translation>
+<translation id="1261885284931493480">Poistetaanko välilehdet ja ryhmä?</translation>
 <translation id="1263231323834454256">Lukulista</translation>
 <translation id="1263733306853729545">Selaa vaihtoehtolistaa näppäimillä <ph name="MINUS" /> ja <ph name="EQUAL" /></translation>
 <translation id="126387934568812801">Liitä mukaan tämä kuvakaappaus ja avoimien välilehtien nimet</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">Wi-Fi-verkko löydetty</translation>
 <translation id="1634783886312010422">Vaihdoitko tämän salasanan jo muualla (<ph name="WEBSITE" />)?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Tervetuloa, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Sovellusdata voi olla mitä tahansa dataa, jota sovellus on tallentanut (kehittäjäasetusten perusteella), esim. yhteystietoja, viestejä ja kuvia. Varmuuskopioidut tiedot eivät vaikuta Drive-tallennustilaasi.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Voit poistaa tämän palvelun käytöstä asetuksissa.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Käytä tätä kirjanmerkkiä iPhonessa</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">Jos haluat käyttää Salasanoja macOS-avainnipun kanssa, käynnistä Chromium uudelleen ja salli pääsy avainnippuun. Välilehdet avataan uudelleen uudelleenkäynnistyksen jälkeen.</translation>
 <translation id="1653958716132599769">Ryhmittele toisiinsa liittyvät välilehdet</translation>
 <translation id="1654580009054503925">Pyyntöjen näyttäminen kielletty</translation>
+<translation id="1654713139320245449">Striimauksen kohdelaitteita ei löytynyt. Tarvitsetko apua?</translation>
 <translation id="1656528038316521561">Taustan läpinäkyvyys</translation>
 <translation id="1657406563541664238">Auta parantamaan tuotetta <ph name="PRODUCT_NAME" /> lähettämällä automaattisesti käyttötilastoja ja virheraportteja Googlelle.</translation>
 <translation id="1657937299377480641">Pyydä vanhemmalta lupaa, jotta voit kirjautua uudelleen ja päästä käsiksi oppimateriaaliin.</translation>
@@ -1640,12 +1643,14 @@
 <translation id="2187895286714876935">Palvelimen varmenteen tuontivirhe</translation>
 <translation id="2187906491731510095">Laajennukset päivitetty</translation>
 <translation id="2188881192257509750">Avaa <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Poistetaanko välilehtiryhmä?</translation>
 <translation id="2190069059097339078">Wi-Fi-tunnuksien hakija</translation>
 <translation id="219008588003277019">Asiakasmoduuli: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(tyhjä)</translation>
 <translation id="2190967441465539539">Kameran ja mikrofonin käyttö ei onnistu</translation>
 <translation id="2191754378957563929">Päällä</translation>
 <translation id="2192505247865591433">Lähettäjä:</translation>
+<translation id="219283042927675668">Ryhmän välilehdet</translation>
 <translation id="2193365732679659387">Luottamusasetukset</translation>
 <translation id="2194856509914051091">Huomioitavaa</translation>
 <translation id="2195331105963583686"><ph name="DEVICE_TYPE" /> on käytettävissä jatkossakin, mutta se ei enää saa automaattisia ohjelmisto- ja tietoturvapäivityksiä</translation>
@@ -1667,6 +1672,7 @@
 <translation id="2211043920024403606">Profiilin tiedot</translation>
 <translation id="2211245494465528624">Muuta synkronointiasetuksia</translation>
 <translation id="221297410904507041">Tyhjennä historia, evästeet, välimuisti ja muita tietoja</translation>
+<translation id="2213410656650624348">Kohtalainen</translation>
 <translation id="2214018885812055163">Jaetut kansiot</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 riviä ei näytetä&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> riviä ei näytetä&gt;}}</translation>
 <translation id="2215070081105889450">Jos haluat jakaa audiota, jaa välilehti tai näyttö</translation>
@@ -1868,6 +1874,7 @@
 <translation id="2350133097354918058">Päivitetty</translation>
 <translation id="2350182423316644347">Käynnistetään sovellusta…</translation>
 <translation id="235028206512346451">Jos poistut laitteen läheltä, näyttö lukittuu automaattisesti. Kun pysyt laitteen edessä, näyttö pysyy päällä pidempään. Jos et käytä lukitusnäyttöä, laite siirtyy virransäästötilaan lukittumisen sijaan.</translation>
+<translation id="2352305801620974284">Kun kirjaudut sisään tällä laitteella, saat salasanat ja muita tietoja Google-tililtäsi</translation>
 <translation id="2352662711729498748">&lt; 1 Mt</translation>
 <translation id="2352810082280059586">Lukitusnäytön ilmoitukset tallennetaan automaattisesti sovellukseen <ph name="LOCK_SCREEN_APP_NAME" />. Viimeisin ilmoitus pysyy lukitusnäytöllä.</translation>
 <translation id="2353297238722298836">Kamera ja mikrofoni sallittu</translation>
@@ -2049,6 +2056,7 @@
 <translation id="2473195200299095979">Käännä tämä sivu</translation>
 <translation id="2475982808118771221">Tapahtui virhe</translation>
 <translation id="247616523300581745">Piilota nämä tiedostot</translation>
+<translation id="2476435723907345463">Avainkoodien pääsy poistettu</translation>
 <translation id="2476901513051581836">Tallennustilaa ei voi vapauttaa, ennen kuin offline-tallennustilan koko on tiedossa.</translation>
 <translation id="2476974672882258506">Sammuta Windows, jotta <ph name="PARALLELS_DESKTOP" /> voidaan poistaa.</translation>
 <translation id="2477065602824695373">Koska olet ottanut käyttöön useita kytkimiä, automaattinen skannaus on laitettu pois päältä.</translation>
@@ -2077,6 +2085,7 @@
 <translation id="249113932447298600">Laitetta <ph name="DEVICE_LABEL" /> ei tueta tällä hetkellä.</translation>
 <translation id="2491587035099903063">esikuuntele ääni: <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Varmenteen allekirjoituspyyntöä valmistellaan</translation>
+<translation id="2492964937550251173">Suljetaanko välilehdet ja poistetaanko ryhmä?</translation>
 <translation id="249330843868392562">Avaa Tekstistä puheeksi ‑asetukset</translation>
 <translation id="2494555621641843783">Steamia ei voi asentaa</translation>
 <translation id="2495141202137516054">Drivesta</translation>
@@ -2243,8 +2252,10 @@
 <translation id="2620215283731032047">Tiedostoa (<ph name="FILE_NAME" />) ei voi ladata turvallisesti.</translation>
 <translation id="2620245777360407679">Hotspotiin yhdistetyt laitteet</translation>
 <translation id="2620436844016719705">Järjestelmä</translation>
+<translation id="262087792756666314">Kiinnitä ominaisuus, niin se on saatavilla helposti. Klikkaa sivupaneelin yläreunan Kiinnitä-painiketta</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Kouluta Google Assistantin äänimalli</translation>
+<translation id="2622280935687585828">Poista <ph name="SITE_NAME" /> käytöstä poistetuilta sivustoilta</translation>
 <translation id="26224892172169984">Älä anna sivustojen määrittää protokollien käsittelypalveluita</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI-laitteiden ohjaus ja uudelleenohjelmointi sallittu</translation>
@@ -2418,6 +2429,7 @@
 <translation id="2743387203779672305">Kopioi leikepöydälle</translation>
 <translation id="274362947316498129">Sovellus yrittää käyttää tätä: <ph name="DEVICE_NAME" />. Jotta <ph name="DEVICE_NAME" /> on käytettävissä, laita sen yksityisyysvalinta pois päältä.</translation>
 <translation id="2745080116229976798">Microsoftin kelpaava alistaminen</translation>
+<translation id="2747853844543618313">Varmista, että hyväksyt striimauspyynnön laitteella <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Kirjaudu sisään tuotteeseen <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Tarkista kielioppi oikeinkirjoituksen yhteydessä</translation>
@@ -2788,6 +2800,7 @@
 <translation id="3021066826692793094">Perhonen</translation>
 <translation id="3021678814754966447">&amp;Näytä kehyksen lähdekoodi</translation>
 <translation id="3021902017511220299">Skannaus epäonnistui. Järjestelmänvalvoja on estänyt tämän toiminnon.</translation>
+<translation id="3022068420678496307">Ryhmä poistetaan kaikilta laitteilta, joilla olet kirjautuneena Chromeen tällä Google-tilillä.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> poistetaan Chromebookilta, eikä sitä tallenneta tilille <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">En ymmärtänyt.</translation>
 <translation id="3023464535986383522">Teksti puhuttuna</translation>
@@ -3018,6 +3031,7 @@
 <translation id="3222066309010235055">Esihahmonna: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Yhdistä <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Hae mitä tahansa tältä sivulta Google Lensilla</translation>
+<translation id="3223109931751684474">Poista pääsy avainkoodeihin tältä laitteelta</translation>
 <translation id="3223531857777746191">Palautuspainike</translation>
 <translation id="3225084153129302039">Violetti oletusavatar</translation>
 <translation id="3225319735946384299">Koodin allekirjoitus</translation>
@@ -3342,6 +3356,7 @@
 <translation id="3473479545200714844">Ruudun suurentaminen</translation>
 <translation id="3474218480460386727">Käytä uudessa sanassa korkeintaan 99 kirjainta</translation>
 <translation id="3474624961160222204">Jatka käyttäjänä <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Saat kohtuullisen muistinsäästön. Välilehdet muuttuvat epäaktiivisiksi pidemmän ajan kuluttua.</translation>
 <translation id="347785443197175480">Anna sivuston <ph name="HOST" /> käyttää edelleen kameraasi ja mikrofoniasi</translation>
 <translation id="3479357084663933762">Deuteranomalia</translation>
 <translation id="3479552764303398839">Ei nyt</translation>
@@ -4062,7 +4077,6 @@
 <translation id="3983586614702900908">tuntemattoman myyjän laitteet</translation>
 <translation id="3983764759749072418">Play Kaupan sovellukset voivat käyttää tätä laitetta.</translation>
 <translation id="3983769721878416534">Viive ennen klikkausta</translation>
-<translation id="3983793589497399077">Hae Lensillä klikkaamalla tai vetämällä</translation>
 <translation id="3984135167056005094">Älä lisää sähköpostiosoitteita</translation>
 <translation id="3984159763196946143">Demotilan käynnistys epäonnistui</translation>
 <translation id="3984431586879874039">Saako tämä sivusto nähdä suojausavaimesi?</translation>
@@ -4099,6 +4113,7 @@
 <translation id="4010036441048359843">Laita korostus päälle</translation>
 <translation id="4010746393007464819">Päivitys Debian 12:een (Bookworm) on saatavilla</translation>
 <translation id="4010917659463429001"><ph name="GET_IOS_APP_LINK" />, niin voit käyttää kirjanmerkkejäsi mobiililaitteella.</translation>
+<translation id="4012268176861210196">Kiinnitä ominaisuus, niin voit käyttää sitä helposti</translation>
 <translation id="4014432863917027322">Korjataanko <ph name="EXTENSION_NAME" />?</translation>
 <translation id="4015163439792426608">Onko sinulla laajennuksia? <ph name="BEGIN_LINK" />Ylläpidä laajennuksiasi<ph name="END_LINK" /> helposti yhdestä paikasta.</translation>
 <translation id="4016762287427926315">Sovellukselle (<ph name="APP_NAME" />) myönnetyt luvat myönnetään myös tälle sovellukselle. <ph name="BEGIN_LINK" />Ylläpidä<ph name="END_LINK" /></translation>
@@ -4184,6 +4199,7 @@
 <translation id="4078903002989614318">Lajittelu- ja listavaihtoehdot</translation>
 <translation id="4079140982534148664">Käytä parannettua oikeinkirjoituksen tarkistusta</translation>
 <translation id="4082333918978320301">Mikään verkkosivusto ei saa käyttää mikrofonia</translation>
+<translation id="4083735423615351075">Välilehdet pysyvät auki tällä laitteella, mutta ryhmä poistetaan kaikilta laitteilta, joilla olet kirjautuneena Chromeen tällä Google-tilillä.</translation>
 <translation id="4084682180776658562">Kirjanmerkki</translation>
 <translation id="4084835346725913160">Sulje <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">JavaScript estettiin tällä sivulla.</translation>
@@ -4193,6 +4209,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Näytä oikealla</translation>
+<translation id="4088879333319441249">Poistetaanko välilehtiryhmän ryhmittely?</translation>
 <translation id="4089235344645910861">Asetukset tallennettiin. Synkronointi aloitettiin.</translation>
 <translation id="4089817585533500276">vaihto + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Ota käyttöön vahvistettu käyttö</translation>
@@ -4402,6 +4419,7 @@
 <translation id="4261429981378979799">Laajennusluvat</translation>
 <translation id="4262004481148703251">Hylkää varoitus</translation>
 <translation id="4263223596040212967">Tarkista näppäimistöasettelu ja yritä uudelleen.</translation>
+<translation id="4263470758446311292">Saat enimmäismäärän muistinsäästöä. Välilehdet muuttuvat epäaktiivisiksi lyhyemmän ajan kuluttua.</translation>
 <translation id="4265096510956307240">Vahvista henkilöllisyytesi</translation>
 <translation id="4265301768135164545">Voit luoda eSIM-profiilin myös <ph name="BEGIN_LINK" />manuaalisesti<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Tarkista päivitykset Ethernetin, Wi-Fin tai mobiilitiedonsiirron kautta.</translation>
@@ -4721,6 +4739,7 @@
 <translation id="4503748371388753124">Tietokoneesi sisältää Trusted Platform Module (TPM) -turvalaitteen, jonka avulla otetaan käyttöön monia tärkeitä turvallisuusominaisuuksia ChromeOS Flexissä. Lisätietoja on Chromebook-ohjekeskuksessa: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Evästeet on sallittu}=1{Evästeet on sallittu, 1 poikkeus}other{Evästeet on sallittu, {COUNT} poikkeusta}}</translation>
 <translation id="4504940961672722399">Käytä laajennusta klikkaamalla tätä kuvaketta tai painamalla <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Lataa Chrome tällä QR-koodilla ja kirjaudu Google-tilillesi.</translation>
 <translation id="450552327874992444">Sana on jo lisätty</translation>
 <translation id="4507373251891673233">Olet estänyt kaikki laajennukset, joiden lähteenä on <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Valitse "Lisää pikakuvake"</translation>
@@ -5056,6 +5075,7 @@
 <translation id="4768332406694066911">Sinulla on varmenteita seuraavilta sinut tunnistavilta organisaatioilta</translation>
 <translation id="4769632191812288342">Suojauksesi on perustasolla</translation>
 <translation id="4770119228883592393">Lupaa pyydetty, vastaa painamalla ⌘ + Option + alanuoli</translation>
+<translation id="4770755495532014179">Käytä tätä salasanaa iPhonella</translation>
 <translation id="4773112038801431077">Päivitä Linux</translation>
 <translation id="477548766361111120">Salli laajennuksen lukea sivustoa ja tehdä siihen muutoksia</translation>
 <translation id="4776311127346151860">Yhdistetty (<ph name="DEVICE_NAME" />)</translation>
@@ -5225,6 +5245,7 @@
 <translation id="4890399733764921729">Ei yhteyttä. Toisen mobiilioperaattorin lukitsema.</translation>
 <translation id="4890773143211625964">Näytä tulostimen lisäasetukset</translation>
 <translation id="4891089016822695758">Beta-keskusteluryhmä</translation>
+<translation id="4891795846939730995">Jos haluat antaa tälle laitteelle taas pääsyn avainkoodeihin, kirjaudu sivustolle tai sovellukseen tallennetulla avainkoodilla</translation>
 <translation id="4892229439761351791">Sivusto voi käyttää Bluetoothia</translation>
 <translation id="4892328231620815052">Kun olet valmis, lukulista löytyy kohdasta Kirjanmerkit ja listat</translation>
 <translation id="489258173289528622">Epäaktiivisuustoiminto akkuvirralla</translation>
@@ -5670,6 +5691,7 @@
 <translation id="5242724311594467048">Otetaanko <ph name="EXTENSION_NAME" /> käyttöön?</translation>
 <translation id="5243522832766285132">Yritä uudelleen hetken kuluttua</translation>
 <translation id="5244234799035360187">OneDrive näkyy nyt Tiedostot-sovelluksessa</translation>
+<translation id="5244466461749935369">Säilytä toistaiseksi</translation>
 <translation id="5244474230056479698">Synkronoidaan osoitteeseen <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Aloita oppilaitoksen tilin käyttö</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> on kaatunut. Käynnistä sovellus uudelleen klikkaamalla tätä kuplaa.</translation>
@@ -5938,6 +5960,7 @@
 <translation id="5453829744223920473">Lapsesi voi käyttää kaikkia oppilaitoksen sovelluksia, kirjanmerkkejä ja materiaaleja. Koulu asettaa pelisäännöt.</translation>
 <translation id="5454166040603940656">palvelulla <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Katso lisää hakutuloksia</translation>
+<translation id="5457082343331641453">Lisää hakuun</translation>
 <translation id="5457113250005438886">Virheellinen</translation>
 <translation id="5457459357461771897">Käyttää ja poistaa kuvia, musiikkia ja muuta tietokoneesi mediaa</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6415,6 +6438,7 @@
 <translation id="5816434091619127343">Tulostimeen pyydetyt muutokset estäisivät sen käytön.</translation>
 <translation id="581659025233126501">Laita synkronointi päälle</translation>
 <translation id="5817918615728894473">Muodosta laitepari</translation>
+<translation id="5817963443108180228">Tervetuloa takaisin, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">kaikki sovellukset</translation>
 <translation id="5821565227679781414">Luo pikakuvake</translation>
 <translation id="5824976764713185207">Lue sivu automaattisesti, kun se on latautunut</translation>
@@ -6454,6 +6478,7 @@
 <translation id="5846504156837627898">Muuta sivustolupia</translation>
 <translation id="5846749317653566506">Säädä värinkorjausasetuksia niin, että värit ovat erottuvia</translation>
 <translation id="5846807460505171493">Asenna ja päivitä sovelluksia. Jatkamalla hyväksyt, että laite voi automaattisesti ladata ja asentaa Googlen, operaattorisi tai laitevalmistajan päivityksiä ja sovelluksia, mahdollisesti mobiilidatayhteyden välityksellä. Jotkin näistä sovelluksista tarjoavat sovelluksensisäisiä ostoksia.</translation>
+<translation id="5848054741303781539">Määritetty manuaalisesti, sijaintia ei käytetä</translation>
 <translation id="5848319660029558352">Lue ääneen ja tekstin muotoilu</translation>
 <translation id="5849212445710944278">Lisätty aiemmin</translation>
 <translation id="584945105664698226">Puhenopeus</translation>
@@ -7014,6 +7039,7 @@
 <translation id="6265159465845424232">Kysy ennen Microsoft-tiedostojen kopioimista tai siirtämistä Microsoft OneDriveen</translation>
 <translation id="6265687851677020761">Poista portti</translation>
 <translation id="6266532094411434237">Yhdistetään: <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Muokkaa profiilia</translation>
 <translation id="6267166720438879315">Valitse varmenne, jolla todennat itsesi kohteelle <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Avaa sovelluksella <ph name="APP" /></translation>
 <translation id="6270309713620950855">Muistutus mykistyksestä</translation>
@@ -7152,7 +7178,6 @@
 <translation id="6383382161803538830">Lukutila ei ole käytettävissä tällä sivulla</translation>
 <translation id="638418309848716977">Tuetut linkit</translation>
 <translation id="6384275966486438344">Ota käyttöön seuraava hakukone: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Nimetön ryhmä – 1 välilehti}other{Nimetön ryhmä – # välilehteä}}</translation>
 <translation id="6385149369087767061">Muodosta internetyhteys ja yritä uudelleen</translation>
 <translation id="6385382178401976503">Kortti: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Varoitus: Yksityiskohtaiset lokit ovat käytössä. Alla olevat lokit voivat sisältää URL-osoitteita tai muita arkaluontoisia tietoja. Tarkista tiedot ja varmista, että haluat lähettää ne.</translation>
@@ -7231,6 +7256,7 @@
 <translation id="6445450263907939268">Jos et pidä muutoksista, voit palauttaa aiemmat asetuksesi.</translation>
 <translation id="6446213738085045933">Luo työpöydän pikakuvake</translation>
 <translation id="6447842834002726250">Evästeet</translation>
+<translation id="6449554712554071184">Ryhmä poistetaan laitteelta pysyvästi.</translation>
 <translation id="6450876761651513209">Muuta tietosuoja-asetuksia</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> ja 1 muu välilehti}other{<ph name="PAGE_TITLE" /> ja # muuta välilehteä}}</translation>
 <translation id="6451689256222386810">Jos unohdat tunnuslauseesi tai haluat muuttaa tätä asetusta, <ph name="BEGIN_LINK" />nollaa synkronointi<ph name="END_LINK" />.</translation>
@@ -7377,6 +7403,7 @@
 <translation id="6556866813142980365">Tee uudelleen</translation>
 <translation id="6556903358015358733">Teema ja taustakuva</translation>
 <translation id="6557290421156335491">Omat pikakuvakkeet</translation>
+<translation id="6560061709899140565">Näytä muut striimausistunnot</translation>
 <translation id="6560151649238390891">Ehdotus lisättiin</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Tallenna järjestelmälokit Lataukset-hakemistoon.</translation>
@@ -7466,6 +7493,7 @@
 <translation id="6635674640674343739">Verkkoyhteyttä ei voi muodostaa. Tarkista verkkoyhteys ja yritä uudelleen.</translation>
 <translation id="663569763553406962">Katso, mitkä laajennukset voivat lukea tai muuttaa sivustoa</translation>
 <translation id="6635944431854494329">Omistaja voi muuttaa tämän ominaisuuden asetuksia kohdasta Asetukset &gt; Lisäasetukset &gt; Lähetä automaattisesti diagnostiikka- ja käyttötietoja Googlelle.</translation>
+<translation id="6636572589916466933">Hyväksy striimauspyyntö tällä laitteella: <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Katso muita asetuksia alla tai lopeta nyt</translation>
 <translation id="6639554308659482635">SQLiten käyttämä muisti</translation>
 <translation id="6640268266988685324">Avaa välilehti</translation>
@@ -7484,6 +7512,7 @@
 <translation id="6648911618876616409">Tärkeä päivitys on valmis asennettavaksi. Aloita kirjautumalla sisään.</translation>
 <translation id="6649018507441623493">Hetki vain…</translation>
 <translation id="6650206238642452078">Tilaa ChromeOS:n järjestelmätapahtumat</translation>
+<translation id="6650584564768559994">Saat tasapainoisen muistinsäästön. Välilehdet muuttuvat epäaktiivisiksi optimaalisen ajanjakson jälkeen.</translation>
 <translation id="665061930738760572">Avaa uudessa ikkunassa</translation>
 <translation id="6651237644330755633">Luota tähän varmenteeseen tunnistettaessa verkkosivustoja.</translation>
 <translation id="6651495917527016072">Synkronoi Wi-Fi-verkot puhelimesi kanssa. <ph name="LINK_BEGIN" />Lue lisää<ph name="LINK_END" /></translation>
@@ -7741,6 +7770,7 @@
 <translation id="6831043979455480757">Käännä</translation>
 <translation id="6832218595502288407">Tasaa vasemmalle</translation>
 <translation id="6833479554815567477">Välilehti poistettu ryhmästä <ph name="GROUP_NAME" /> – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Tasapainoinen (suositus)</translation>
 <translation id="6835762382653651563">Muodosta internetyhteys, niin voit päivittää laitteen <ph name="DEVICE_TYPE" />.</translation>
 <translation id="683630338945552556">Käytä ja tallenna Google-tilisi salasanoja</translation>
 <translation id="6839225236531462745">Varmenteen poistovirhe</translation>
@@ -8149,6 +8179,7 @@
 <translation id="715396040729904728">käynnistysohjelma + vaihto + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Jaa palautteesi tai kerro ongelmastasi. Lisää mahdollisuuksien mukaan vaiheet, jotta ongelma voidaan toistaa.</translation>
 <translation id="7154130902455071009">Vaihda aloitussivuksi <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Katso laadukkaampia videoita ja säästä akkua. Videoita toistetaan vain Cast-yhteensopivalla näytöllä.</translation>
 <translation id="7159953856712257647">Asennettu oletuksena</translation>
 <translation id="7160182524506337403">Voit nyt nähdä puhelimen ilmoitukset</translation>
 <translation id="7165263843655074092">Tällä laitteella on perustason suojaus</translation>
@@ -9006,6 +9037,7 @@
 <translation id="7788948939674438635">Älä salli sivustojen lukita näppäimistöä</translation>
 <translation id="7789963078219276159">Aloitussivun taustakuvaksi on vaihdettu <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">PDF-tekstintunnistus</translation>
+<translation id="7790737481627460475">Tiedostot tällä Chromebookilla</translation>
 <translation id="7791269138074599214">Syöttötapa</translation>
 <translation id="7791429245559955092">Sovellus asennetaan tällä hetkellä käyttämääsi Chrome-profiiliin</translation>
 <translation id="7791436592012979144">Käänteinen vieritys käytössä</translation>
@@ -9035,6 +9067,7 @@
 <translation id="7810202088502699111">Ponnahdusikkunat estettiin tällä sivulla.</translation>
 <translation id="7810367892333449285">Muodon pitää olla tällainen: <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ osoite<ph name="LPA_2" />$<ph name="LPA_3" />valinnainen vastaavuustunnus<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Yritä uudelleen tai valitse jokin aiemmin luoduista teemoista alta.</translation>
+<translation id="7814090115158024843">Älä koskaan tarjoa kirjoitusapua näillä sivustoilla</translation>
 <translation id="7814458197256864873">K&amp;opioi</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Muokkaa pikanäppäintä <ph name="SHORTCUT" />, jota <ph name="EXTENSION_NAME" /> käyttää</translation>
@@ -9266,8 +9299,10 @@
 <translation id="7974936243149753750">Yliskannaus</translation>
 <translation id="7975504106303186033">Sinun on lisättävä tämä Chrome Education ‑laite oppilaitostilille. Voit luoda uuden tilin osoitteessa g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Varoittaa, jos käytät salasanaa, joka on vaarantunut tietosuojaloukkauksen yhteydessä.</translation>
+<translation id="797824194429476746">Välilehdet pysyvät auki tällä laitteella, mutta ryhmä poistetaan pysyvästi.</translation>
 <translation id="7978412674231730200">Yksityinen avain</translation>
 <translation id="7978450511781612192">Tämä kirjaa sinut ulos Google-tileiltäsi. Kirjanmerkkejä, historiaa, salasanoja tai muita ei enää synkronoida.</translation>
+<translation id="7980066177668669492">Base64-koodattu ASCII, useita varmenteita</translation>
 <translation id="7980084013673500153">Sisältötunnus: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Käytä tallennettua avainkoodia: <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Näytä ponnahdusikkuna, jossa on laitteen EID ja QR-koodi</translation>
@@ -9391,6 +9426,7 @@
 <translation id="8066444921260601116">Yhteyden valintaikkuna</translation>
 <translation id="8070572887926783747">Sijaintilupa (<ph name="APP_NAME" />)</translation>
 <translation id="8070662218171013510">Haptinen palaute</translation>
+<translation id="8071033114691184017">Käytä tätä salasanaa iPhonella</translation>
 <translation id="8071432093239591881">Tulosta kuvana</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Sovellustiedot voivat olla mitä tahansa tietoja, joita sovellus on tallentanut (kehittäjän asetusten perusteella), mukaan lukien yhteystietoja, viestejä ja kuvia.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Varmuuskopioidut tiedot eivät kuluta lapsesi tallennustilaa Drivessa.<ph name="END_PARAGRAPH2" />
@@ -9679,6 +9715,7 @@
 <translation id="8276242035951017580">Mitkään sovellukset eivät saa käyttää kameraa</translation>
 <translation id="8276560076771292512">Tyhjennä välimuisti ja pakota päivitys</translation>
 <translation id="8276850948802942358">Lue, miten voit antaa sivustolle väliaikaisen luvan käyttää kolmannen osapuolen evästeitä</translation>
+<translation id="8277907305629781277">Loit tämän avainkoodin <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Verkkosivustot kielilläsi</translation>
 <translation id="828180235270931531">Muut käytettävissä olevat tulostimet</translation>
 <translation id="8281886186245836920">Ohita</translation>
@@ -9958,6 +9995,7 @@
 <translation id="8482077254400484047">Hallitse ei-aktiivisten välilehtien ulkoasua täällä</translation>
 <translation id="8483248364096924578">IP-osoite</translation>
 <translation id="8486666913807228950">Syy: Käänteinen sääntö <ph name="REVERT_RULE" /> löytyi "Pakota avaaminen täällä:" ‑luettelosta.</translation>
+<translation id="8487303289354211861">Kiinnitetty Voit käyttää ominaisuutta uudelleen yläpalkin uudesta painikkeesta</translation>
 <translation id="8487678622945914333">Lähennä</translation>
 <translation id="8487699605742506766">Hotspot</translation>
 <translation id="8489156414266187072">Henkilökohtaisia ehdotuksia näytetään vain sinun tililläsi</translation>
@@ -10356,7 +10394,6 @@
 <translation id="8784626084144195648">Rajoitetun joukon keskiarvo</translation>
 <translation id="8785622406424941542">Näyttökynä</translation>
 <translation id="8786824282808281903">Kun lapsi näkee tämän kuvakkeen, sormenjälkeä voi käyttää tunnistamiseen tai ostosten hyväksymiseen.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Nimetön ryhmä – 1 välilehti}other{Nimetön ryhmä – # välilehteä}}</translation>
 <translation id="8787752878731558379">Auta meitä parantamaan Chromea kertomalla, miksi sallit kolmannen osapuolen evästeet</translation>
 <translation id="8789898473175677810">Chrome on osa <ph name="LINK_BEGIN" />yhteistyöhanketta<ph name="LINK_END" />, jolla vähennetään eri sivustot huomioivaa seurantaa ja luovutaan kolmannen osapuolen evästeiden käytöstä. Pyrimme kuitenkin tekemään tämän vastuullisesti, sillä kolmannen osapuolen evästeitä käytetään monilla sivustoilla, jotta ne toimivat suunnitellusti. Monet sivustot käyttävät kolmannen osapuolen evästeitä esimerkiksi kirjautumisen yksinkertaistamiseen, upotettujen chat- ja kommenttijärjestelmien tukemiseen sekä maksupalveluihin. Mainostajat käyttävät usein kolmannen osapuolen evästeitä personoidakseen mainoksia paremmin. Tämä on tärkeää, sillä mainosten avulla sivustot usein maksavat kuluja ja pitävät verkkosisällön maksuttomana.</translation>
 <translation id="8791157330927639737">Lue lisää päivittämisestä</translation>
@@ -10591,6 +10628,7 @@
 <translation id="8962863356073277855">URL-osoitteen muodon pitäisi olla https://www.example.com</translation>
 <translation id="8962918469425892674">Tämä sivusto käyttää liikkeen- tai valontunnistimia.</translation>
 <translation id="8963117664422609631">Avaa sivustoasetukset</translation>
+<translation id="8964795217937248330">Suljetaanko välilehdet ja poistetaanko ryhmä?</translation>
 <translation id="8965037249707889821">Syötä vanha salasana</translation>
 <translation id="8966809848145604011">Muut profiilit</translation>
 <translation id="8967427617812342790">Lisää lukulistalle</translation>
@@ -10670,6 +10708,7 @@
 <translation id="9014674417732091912">Siirretty riville <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Varmuuskopioi Google Driveen</translation>
 <translation id="9016827136585652292">yksityinen näkyvyys päälle/pois</translation>
+<translation id="9017055559700464094">Kiinnitetty Käytä ominaisuutta uudelleen työkalupalkista</translation>
 <translation id="90181708067259747">Viimeinen voimassaolopäivä: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Asennus valmis</translation>
 <translation id="901876615920222131">Avaa ryhmä uudelleen klikkaamalla sitä</translation>
@@ -10828,6 +10867,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Asenna <ph name="DEVICE_OS" /> sisäiselle levylle, jotta saat parhaan käyttökokemuksen. Voit myös asentaa sen myöhemmin kirjautumisnäytöltä.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Jos et ole valmis asentamaan, voit kokeilla sitä USB:n kautta. Tämä säilyttää nykyisen käyttöjärjestelmäsi ja datasi, mutta tallennustila ja suorituskyky voivat olla rajallisia.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Avaa kiinnitetyllä välilehdellä</translation>
+<translation id="9122788874051694311">Tallennetaanko tämä avainkoodi incognito-tilan ulkopuolella?</translation>
 <translation id="9123287046453017203">Laite ei ole ajan tasalla</translation>
 <translation id="9125910124977405374">Poista <ph name="LANGUAGE_NAME" /> automaattisesti käännetyistä kielistä</translation>
 <translation id="9126149354162942022">Kohdistimen väri</translation>
@@ -11022,6 +11062,7 @@
 <translation id="979345485590886759">Sivustot voivat pyytää hiiren osoittimen lukitsemista</translation>
 <translation id="980731642137034229">Toimintovalikon painike</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Hei <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Sulje kaikki välilehdet</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – kameran ja mikrofonin tallennus</translation>
 <translation id="984275831282074731">Maksutavat</translation>
diff --git a/chrome/app/resources/generated_resources_fil.xtb b/chrome/app/resources/generated_resources_fil.xtb
index 61a360d5..67aeff69 100644
--- a/chrome/app/resources/generated_resources_fil.xtb
+++ b/chrome/app/resources/generated_resources_fil.xtb
@@ -4082,7 +4082,6 @@
 <translation id="3983586614702900908">mga device mula sa isang hindi kilalang vendor</translation>
 <translation id="3983764759749072418">May access sa device na ito ang mga application sa Play Store.</translation>
 <translation id="3983769721878416534">Pagkaantala bago ang pag-click</translation>
-<translation id="3983793589497399077">Mag-click o mag-drag sa kahit saan para maghanap gamit ang Lens</translation>
 <translation id="3984135167056005094">Huwag isama ang email address</translation>
 <translation id="3984159763196946143">Hindi masimulan ang demo mode</translation>
 <translation id="3984431586879874039">Payagan ang site na ito na makita ang iyong security key?</translation>
@@ -7184,7 +7183,6 @@
 <translation id="6383382161803538830">Hindi available ang reading mode sa page na ito</translation>
 <translation id="638418309848716977">Mga sinusuportahang link</translation>
 <translation id="6384275966486438344">Gawing ito ang iyong mga setting ng paghahanap: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupong walang pangalan - 1 tab}one{Grupong walang pangalan - # tab}other{Grupong walang pangalan - # na tab}}</translation>
 <translation id="6385149369087767061">Kumonekta sa internet at subukan ulit</translation>
 <translation id="6385382178401976503">Card: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Babala - Naka-enable ang detalyadong pag-log; posibleng maglaman ang mga log sa ibaba ng mga URL o iba pang sensitibong impormasyon. Pakitingnan ulit at tiyaking kumportable kang isumite ang impormasyong ito.</translation>
@@ -10406,7 +10404,6 @@
 <translation id="8784626084144195648">Binned na Average</translation>
 <translation id="8785622406424941542">Stylus</translation>
 <translation id="8786824282808281903">Kapag nakita ng iyong anak ang icon na ito, puwedeng gumamit ng fingerprint para sa pagtukoy o para aprubahan ang mga pagbili.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupong Walang Pangalan - 1 Tab}one{Grupong Walang Pangalan - # Tab}other{Grupong Walang Pangalan - # na Tab}}</translation>
 <translation id="8787752878731558379">Tulungan kaming pahusayin ang Chrome sa pamamagitan ng pagsasabi sa amin kung bakit mo pinayagan ang third-party na cookies</translation>
 <translation id="8789898473175677810">Ang Chrome ay bahagi ng <ph name="LINK_BEGIN" />collaborative na pagsisikap<ph name="LINK_END" /> para mabawasan ang cross-site na pag-track at maalis ang paggamit ng third-party na cookies. Pero sinusubukan naming gawin ito sa responsableng paraan dahil maraming site ang umaasa sa third-party na cookies para gumana ayon sa pagkadisenyo ang mga ito. Halimbawa, maraming site ang gumagamit ng third-party na cookies para mapasimple ang pag-sign in, para suportahan ang mga naka-embed na system ng chat at komento, at para sa mga serbisyo sa pagbabayad. At madalas na gumagamit ang mga advertiser ng third-party na cookies para mas mahusay na makapag-personalize ng mga ad. Mahalaga iyon dahil madalas na umaasa ang mga site sa mga ad para makatulong sa pagbabayad ng mga gastos at mapanatiling libre ang online na content ng mga ito.</translation>
 <translation id="8791157330927639737">Matuto pa tungkol sa pag-update</translation>
diff --git a/chrome/app/resources/generated_resources_fr-CA.xtb b/chrome/app/resources/generated_resources_fr-CA.xtb
index c10a32f7..d8d5c40 100644
--- a/chrome/app/resources/generated_resources_fr-CA.xtb
+++ b/chrome/app/resources/generated_resources_fr-CA.xtb
@@ -4061,7 +4061,6 @@
 <translation id="3983586614702900908">appareils d'un fournisseur inconnu</translation>
 <translation id="3983764759749072418">Les applications provenant de la boutique Play Store ont accès à cet appareil.</translation>
 <translation id="3983769721878416534">Délai précédant le clic</translation>
-<translation id="3983793589497399077">Glissez-déposez des éléments à n'importe quel endroit pour effectuer une recherche avec Lentille</translation>
 <translation id="3984135167056005094">Ne pas inclure l'adresse de courriel</translation>
 <translation id="3984159763196946143">Impossible de démarrer le mode Démo</translation>
 <translation id="3984431586879874039">Autoriser ce site à voir votre clé de sécurité?</translation>
@@ -7157,7 +7156,6 @@
 <translation id="6383382161803538830">Le mode lecture n'est pas accessible sur cette page</translation>
 <translation id="638418309848716977">Liens compatibles</translation>
 <translation id="6384275966486438344">Changer vos paramètres de recherche à : <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Groupe sans nom : 1 onglet}one{Groupe sans nom : # onglet}other{Groupe sans nom : # onglets}}</translation>
 <translation id="6385149369087767061">Connectez-vous à Internet et réessayez</translation>
 <translation id="6385382178401976503">Carte : <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Avertissement : La création de journaux détaillés est activée. Les journaux ci-dessous peuvent contenir des URL ou d'autres éléments d'information confidentielle. Veuillez examiner les données incluses et confirmer que vous consentez à leur envoi.</translation>
@@ -10366,7 +10364,6 @@
 <translation id="8784626084144195648">Moyenne de l'intervalle</translation>
 <translation id="8785622406424941542">Stylet</translation>
 <translation id="8786824282808281903">Lorsque votre enfant voit cette icône, il peut utiliser son empreinte digitale pour s'identifier ou pour autoriser des achats.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Groupe sans nom : 1 onglet}one{Groupe sans nom : # onglet}other{Groupe sans nom : # onglets}}</translation>
 <translation id="8787752878731558379">Aidez-nous à améliorer Chrome en nous indiquant pourquoi vous avez autorisé les témoins tiers</translation>
 <translation id="8789898473175677810">Chrome fait partie d'un <ph name="LINK_BEGIN" />effort de collaboration<ph name="LINK_END" /> visant à réduire le suivi intersite et à éliminer progressivement l'utilisation de témoins tiers. Toutefois, nous essayons de le faire de manière responsable, car de nombreux sites s'appuient sur des témoins tiers pour fonctionner comme prévu. Par exemple, de nombreux sites utilisent des témoins tiers pour simplifier la connexion, pour prendre en charge les systèmes de clavardage et de commentaires intégrés et pour les services de paiement. De plus, les annonceurs utilisent souvent des témoins tiers pour mieux personnaliser les annonces. Cela est important, car les sites comptent souvent sur les annonces pour payer leurs dépenses et maintenir leur contenu en ligne gratuit.</translation>
 <translation id="8791157330927639737">En savoir plus sur la mise à jour</translation>
diff --git a/chrome/app/resources/generated_resources_fr.xtb b/chrome/app/resources/generated_resources_fr.xtb
index 805bc3c3..b8bb67b9 100644
--- a/chrome/app/resources/generated_resources_fr.xtb
+++ b/chrome/app/resources/generated_resources_fr.xtb
@@ -1659,6 +1659,7 @@
 <translation id="2211043920024403606">Informations sur le profil</translation>
 <translation id="2211245494465528624">Gérer les options de synchronisation</translation>
 <translation id="221297410904507041">Supprimer l'historique et les cookies, vider le cache, etc.</translation>
+<translation id="2213410656650624348">Modéré</translation>
 <translation id="2214018885812055163">Dossiers partagés</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 ligne non affichée&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> ligne non affichée&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> lignes non affichées&gt;}}</translation>
 <translation id="2215070081105889450">Pour partager l'audio, partagez plutôt un onglet ou un écran</translation>
@@ -2038,6 +2039,7 @@
 <translation id="2473195200299095979">Traduire cette page</translation>
 <translation id="2475982808118771221">Une erreur s'est produite.</translation>
 <translation id="247616523300581745">Masquer ces fichiers</translation>
+<translation id="2476435723907345463">Accès aux clés d'accès supprimé</translation>
 <translation id="2476901513051581836">Impossible de nettoyer l'espace de stockage tant que la taille de l'espace de stockage hors connexion n'est pas connue.</translation>
 <translation id="2476974672882258506">Arrêtez la VM Windows pour désinstaller <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">L'exploration automatique a été désactivée, car vous avez configuré plusieurs contacteurs.</translation>
@@ -2232,6 +2234,7 @@
 <translation id="2620215283731032047">Impossible de télécharger <ph name="FILE_NAME" /> de manière sécurisée.</translation>
 <translation id="2620245777360407679">Appareils actuellement connectés au point d'accès</translation>
 <translation id="2620436844016719705">Système</translation>
+<translation id="262087792756666314">Vous pouvez épingler cette fonctionnalité pour y accéder facilement. Pour cela, cliquez sur le bouton "Épingler" en haut du panneau latéral</translation>
 <translation id="2620900772667816510">Bluetooth Super Résolution</translation>
 <translation id="262154978979441594">Entraîner l'empreinte vocale de l'Assistant Google</translation>
 <translation id="26224892172169984">Interdire à tous les sites de gérer les protocoles</translation>
@@ -3007,6 +3010,7 @@
 <translation id="3222066309010235055">Prérendu : <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Se connecter à <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Rechercher ce que vous voulez sur cette page avec Google Lens</translation>
+<translation id="3223109931751684474">Supprimer l'accès à vos clés d'accès sur cet appareil</translation>
 <translation id="3223531857777746191">Bouton de réinitialisation</translation>
 <translation id="3225084153129302039">Avatar violet par défaut</translation>
 <translation id="3225319735946384299">Signature du code</translation>
@@ -3331,6 +3335,7 @@
 <translation id="3473479545200714844">Loupe</translation>
 <translation id="3474218480460386727">Les nouveaux termes ne doivent pas contenir plus de 99 lettres</translation>
 <translation id="3474624961160222204">Continuer en tant que <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Économies de mémoire modérées. Les onglets deviennent inactifs après une longue période.</translation>
 <translation id="347785443197175480">Continuer à autoriser <ph name="HOST" /> à accéder à votre caméra et à votre micro</translation>
 <translation id="3479357084663933762">Deutéranomalie</translation>
 <translation id="3479552764303398839">Pas maintenant</translation>
@@ -4054,7 +4059,6 @@
 <translation id="3983586614702900908">appareils d'un fournisseur inconnu</translation>
 <translation id="3983764759749072418">Les applications Play Store ont accès à cet appareil.</translation>
 <translation id="3983769721878416534">Délai précédant le clic</translation>
-<translation id="3983793589497399077">Cliquez ou faites glisser le pointeur n'importe où pour rechercher avec Lens</translation>
 <translation id="3984135167056005094">Ne pas inclure l'adresse e-mail</translation>
 <translation id="3984159763196946143">Impossible de démarrer le mode démonstration</translation>
 <translation id="3984431586879874039">Autoriser ce site à lire les informations de votre clé de sécurité ?</translation>
@@ -4091,6 +4095,7 @@
 <translation id="4010036441048359843">Activer la mise en surbrillance</translation>
 <translation id="4010746393007464819">Une mise à niveau vers Debian 12 (Bookworm) est disponible</translation>
 <translation id="4010917659463429001">Pour synchroniser vos favoris avec votre appareil mobile, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Vous pouvez épingler cette fonctionnalité pour y accéder facilement</translation>
 <translation id="4014432863917027322">Réparer "<ph name="EXTENSION_NAME" />" ?</translation>
 <translation id="4015163439792426608">Vous avez des extensions ? <ph name="BEGIN_LINK" />Gérez-les<ph name="END_LINK" /> facilement depuis une seule et même interface.</translation>
 <translation id="4016762287427926315">Les autorisations que vous accordez à <ph name="APP_NAME" /> le seront aussi pour cette appli. <ph name="BEGIN_LINK" />Gérer<ph name="END_LINK" /></translation>
@@ -4394,6 +4399,7 @@
 <translation id="4261429981378979799">Autorisations de l'extension</translation>
 <translation id="4262004481148703251">Ignorer l'avertissement</translation>
 <translation id="4263223596040212967">Vérifiez la disposition de votre clavier et réessayez.</translation>
+<translation id="4263470758446311292">Économies de mémoire maximales. Les onglets deviennent inactifs après une courte période.</translation>
 <translation id="4265096510956307240">Confirmer votre identité</translation>
 <translation id="4265301768135164545">Vous pouvez également configurer un profil eSIM <ph name="BEGIN_LINK" />manuellement<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Pour rechercher des mises à jour, veuillez utiliser une connexion Ethernet, Wi-Fi ou de données mobiles.</translation>
@@ -4713,6 +4719,7 @@
 <translation id="4503748371388753124">Votre ordinateur comprend un dispositif de sécurité avec module de plate-forme sécurisée (TPM, Trusted Platform Module) qui permet d'implémenter plusieurs fonctionnalités de sécurité critiques dans ChromeOS Flex. Consultez le centre d'aide Chromebook pour en savoir plus : https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Les cookies sont autorisés}=1{Les cookies sont autorisés, 1 exception}one{Les cookies sont autorisés, {COUNT} exception}other{Les cookies sont autorisés, {COUNT} exceptions}}</translation>
 <translation id="4504940961672722399">Utilisez cette extension en cliquant sur cette icône ou en appuyant sur <ph name="EXTENSION_SHORTCUT" /></translation>
+<translation id="4505469832694348179">Téléchargez Chrome à l'aide de ce code QR, puis connectez-vous à votre compte Google.</translation>
 <translation id="450552327874992444">Terme déjà ajouté</translation>
 <translation id="4507373251891673233">Vous avez bloqué toutes les extensions pour <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Cliquez sur "Ajouter un raccourci"</translation>
@@ -5048,6 +5055,7 @@
 <translation id="4768332406694066911">Certains certificats provenant de ces organisations vous identifient.</translation>
 <translation id="4769632191812288342">Vous bénéficiez de la protection standard</translation>
 <translation id="4770119228883592393">Autorisation demandée, appuyez sur ⌘+Option+Flèche vers le bas pour répondre</translation>
+<translation id="4770755495532014179">Utiliser ce mot de passe sur votre iPhone</translation>
 <translation id="4773112038801431077">Mettre à niveau Linux</translation>
 <translation id="477548766361111120">Autoriser l'extension à lire et modifier ce site</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> a été connecté(e)</translation>
@@ -5217,6 +5225,7 @@
 <translation id="4890399733764921729">Connexion impossible. Verrouillé par un autre opérateur mobile.</translation>
 <translation id="4890773143211625964">Afficher les paramètres d'imprimante avancés</translation>
 <translation id="4891089016822695758">Forum bêta</translation>
+<translation id="4891795846939730995">Pour accorder de nouveau l'accès, connectez-vous à un site ou à une appli à l'aide d'une clé d'accès enregistrée</translation>
 <translation id="4892229439761351791">Le site peut utiliser le Bluetooth</translation>
 <translation id="4892328231620815052">Lorsque vous serez prêt, retrouvez votre liste de lecture dans "Favoris et listes"</translation>
 <translation id="489258173289528622">Lorsque l'appareil est inactif et fonctionne sur batterie</translation>
@@ -6447,6 +6456,7 @@
 <translation id="5846504156837627898">Gérer les autorisations des sites</translation>
 <translation id="5846749317653566506">Ajustez les paramètres de correction des couleurs pour vous assurer que les couleurs sont distinctes</translation>
 <translation id="5846807460505171493">Installez des mises à jour et des applications. En continuant, vous acceptez que cet appareil télécharge et installe automatiquement des mises à jour et des applications de Google, de votre opérateur et du fabricant de votre appareil, éventuellement via des données mobiles. Certaines de ces applications permettent d'y effectuer des achats.</translation>
+<translation id="5848054741303781539">Configuré manuellement, sans utiliser la position</translation>
 <translation id="5848319660029558352">Lecture à voix haute et mise en forme du texte</translation>
 <translation id="5849212445710944278">Déjà ajouté</translation>
 <translation id="584945105664698226">Vitesse de lecture</translation>
@@ -7145,7 +7155,6 @@
 <translation id="6383382161803538830">Mode Lecture non disponible sur cette page</translation>
 <translation id="638418309848716977">Liens compatibles</translation>
 <translation id="6384275966486438344">Modifier les paramètres de la recherche pour utiliser l'adresse <ph name="SEARCH_HOST" />.</translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Groupe sans nom - 1 onglet}one{Groupe sans nom - # onglet}other{Groupe sans nom - # onglets}}</translation>
 <translation id="6385149369087767061">Connectez-vous à Internet et réessayez</translation>
 <translation id="6385382178401976503">Carte : <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Avertissement : La création de journaux détaillés est activée. Les journaux ci-dessous peuvent contenir des URL ou d'autres informations sensibles. Veuillez examiner les informations incluses et vous assurer que cela ne vous dérange pas de nous les envoyer.</translation>
@@ -7479,6 +7488,7 @@
 <translation id="6648911618876616409">Une mise à jour critique est disponible. Connectez-vous pour lancer l'installation.</translation>
 <translation id="6649018507441623493">Un instant…</translation>
 <translation id="6650206238642452078">Abonnez-vous aux événements système ChromeOS</translation>
+<translation id="6650584564768559994">Économies de mémoire équilibrées. Les onglets deviennent inactifs après une période optimale.</translation>
 <translation id="665061930738760572">Ouvrir dans une &amp;nouvelle fenêtre</translation>
 <translation id="6651237644330755633">Considérer ce certificat comme fiable pour identifier les sites Web</translation>
 <translation id="6651495917527016072">Synchronisez les réseaux Wi-Fi avec votre téléphone. <ph name="LINK_BEGIN" />En savoir plus<ph name="LINK_END" /></translation>
@@ -7736,6 +7746,7 @@
 <translation id="6831043979455480757">Traduire</translation>
 <translation id="6832218595502288407">Aligner à gauche</translation>
 <translation id="6833479554815567477">Onglet supprimé du groupe <ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Équilibré (recommandé)</translation>
 <translation id="6835762382653651563">Connectez-vous à Internet pour mettre à jour votre <ph name="DEVICE_TYPE" />.</translation>
 <translation id="683630338945552556">Utiliser et enregistrer les mots de passe dans votre compte Google</translation>
 <translation id="6839225236531462745">Erreur de suppression de certificat</translation>
@@ -9387,6 +9398,7 @@
 <translation id="8066444921260601116">Boîte de dialogue de connexion</translation>
 <translation id="8070572887926783747">Autorisation d'accéder à la position de <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Retour haptique</translation>
+<translation id="8071033114691184017">Utiliser ce mot de passe sur votre iPhone</translation>
 <translation id="8071432093239591881">Imprimer en tant qu'image</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Les données d'applications correspondent aux données de tous types enregistrées par des applications en fonction des paramètres définis par le développeur. Elles incluent potentiellement des données sensibles comme des contacts, des messages et des photos.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Les données sauvegardées ne sont pas prises en compte dans le calcul du quota de stockage Drive de votre enfant.<ph name="END_PARAGRAPH2" />
@@ -9954,6 +9966,7 @@
 <translation id="8482077254400484047">Gérez l'apparence des onglets inactifs ici</translation>
 <translation id="8483248364096924578">Adresse IP</translation>
 <translation id="8486666913807228950">Motif : la règle inversée <ph name="REVERT_RULE" /> a été trouvée dans la liste "Forcer l'ouverture dans".</translation>
+<translation id="8487303289354211861">Fonctionnalité épinglée. Vous pouvez de nouveau y accéder à l'aide du nouveau bouton de la barre d'outils.</translation>
 <translation id="8487678622945914333">Zoom avant</translation>
 <translation id="8487699605742506766">Point d'accès</translation>
 <translation id="8489156414266187072">Les suggestions personnelles ne sont affichées que sur votre compte</translation>
@@ -10353,7 +10366,6 @@
 <translation id="8784626084144195648">Moyenne par intervalle</translation>
 <translation id="8785622406424941542">Stylet</translation>
 <translation id="8786824282808281903">Quand votre enfant voit cette icône, il peut utiliser l'empreinte pour s'identifier ou approuver des achats.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Groupe sans nom - 1 onglet}one{Groupe sans nom - # onglet}other{Groupe sans nom - # onglets}}</translation>
 <translation id="8787752878731558379">Aidez-nous à améliorer Chrome en nous expliquant pourquoi vous avez autorisé les cookies tiers</translation>
 <translation id="8789898473175677810">Chrome s'inscrit dans une <ph name="LINK_BEGIN" />initiative collaborative<ph name="LINK_END" /> visant à réduire le suivi intersites et à abandonner l'utilisation des cookies tiers. Toutefois, nous tentons de le faire de manière responsable, car de nombreux sites s'appuient sur des cookies tiers pour fonctionner comme prévu. Par exemple, ils utilisent ces cookies pour simplifier la connexion, et prendre en charge les systèmes intégrés de chat et de commentaires, ainsi que les services de paiement. De plus, les annonceurs utilisent souvent des cookies tiers pour mieux personnaliser les annonces. C'est important, car les sites comptent souvent sur les annonces pour payer leurs dépenses et proposer leur contenu en ligne sans frais.</translation>
 <translation id="8791157330927639737">En savoir plus sur la mise à jour</translation>
@@ -10667,6 +10679,7 @@
 <translation id="9014674417732091912">Déplacé à la ligne <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Sauvegarder dans Google Drive</translation>
 <translation id="9016827136585652292">activer/désactiver l'écran Confidentialité</translation>
+<translation id="9017055559700464094">Fonctionnalité épinglée. Réutilisez-la à partir de la barre d'outils.</translation>
 <translation id="90181708067259747">Date d'expiration : <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Installation terminée</translation>
 <translation id="901876615920222131">Pour rouvrir le groupe, cliquez dessus</translation>
@@ -10825,6 +10838,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Pour une expérience optimale, installez <ph name="DEVICE_OS" /> sur votre disque interne. Vous pouvez aussi le faire plus tard depuis l'écran de connexion.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Si vous ne voulez pas l'installer maintenant, vous pouvez l'exécuter depuis une clé USB pour l'essayer. Vous conserverez ainsi votre OS et vos données, mais vous serez peut-être limité en termes de stockage et de performances.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Ouvrir dans un onglet épinglé</translation>
+<translation id="9122788874051694311">Enregistrer cette clé d'accès en dehors de la navigation privée ?</translation>
 <translation id="9123287046453017203">Votre appareil n'est pas à jour</translation>
 <translation id="9125910124977405374">Supprimer "<ph name="LANGUAGE_NAME" />" des langues traduites automatiquement</translation>
 <translation id="9126149354162942022">Couleur du curseur</translation>
diff --git a/chrome/app/resources/generated_resources_gl.xtb b/chrome/app/resources/generated_resources_gl.xtb
index f37f03fed..43f6475 100644
--- a/chrome/app/resources/generated_resources_gl.xtb
+++ b/chrome/app/resources/generated_resources_gl.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">É posible que Linux non teña suficiente espazo no disco. Podes aumentar o espazo e tentar a restauración de novo en <ph name="LINK_START" />Configuración<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Moderada</translation>
 <translation id="126156426083987769">Produciuse un problema coas licenzas do dispositivo do modo de demostración.</translation>
+<translation id="1261885284931493480">Queres quitar as pestanas e eliminar o grupo?</translation>
 <translation id="1263231323834454256">Lista de lectura</translation>
 <translation id="1263733306853729545">Utilizar teclas <ph name="MINUS" /> e <ph name="EQUAL" /> para mostrar unha lista de suxestións</translation>
 <translation id="126387934568812801">Incluír esta captura de pantalla e os títulos das pestanas abertas</translation>
@@ -875,6 +876,7 @@
 <translation id="1634224622052500893">Atopouse unha rede wifi</translation>
 <translation id="1634783886312010422">Xa cambiaches este contrasinal en <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">Aceptar</translation>
+<translation id="1636542522761359943">Dámosche a benvida, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Os datos das aplicacións poden incluír calquera tipo de información que gardase unha aplicación (baseándose na configuración do programador), como os contactos, as mensaxes e as fotos. Os datos das copias de seguranza non contarán na cota de almacenamento de Drive.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Podes desactivar este servizo en Configuración.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Accede a este marcador no iPhone</translation>
@@ -911,6 +913,7 @@
 <translation id="1652862280638399816">Para poder usar o xestor de contrasinais con MacOS Keychain, reinicia Chromium e dálle acceso a Keychain. Despois do reinicio volverán abrirse as pestanas.</translation>
 <translation id="1653958716132599769">Agrupar pestanas relacionadas</translation>
 <translation id="1654580009054503925">Non se permite mostrar solicitudes</translation>
+<translation id="1654713139320245449">Non se encontrou ningún dispositivo receptor de emisión. Precisas axuda?</translation>
 <translation id="1656528038316521561">Opacidade do fondo</translation>
 <translation id="1657406563541664238">Axúdanos a mellorar <ph name="PRODUCT_NAME" /> enviando automaticamente estatísticas de uso e informes de erros a Google</translation>
 <translation id="1657937299377480641">Se queres iniciar sesión de novo para acceder a recursos educativos, pídelle a teu pai ou a túa nai que che dea permiso</translation>
@@ -1630,12 +1633,14 @@
 <translation id="2187895286714876935">Erro de importación do certificado do servidor</translation>
 <translation id="2187906491731510095">Actualizáronse as extensións</translation>
 <translation id="2188881192257509750">Abrir <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Queres eliminar o grupo de pestanas?</translation>
 <translation id="2190069059097339078">Método de obtención de credenciais de wifi</translation>
 <translation id="219008588003277019">Módulo de cliente nativo: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(baleiro)</translation>
 <translation id="2190967441465539539">Non se pode acceder á cámara nin ao micrófono</translation>
 <translation id="2191754378957563929">Activado</translation>
 <translation id="2192505247865591433">De:</translation>
+<translation id="219283042927675668">Pestanas no grupo</translation>
 <translation id="2193365732679659387">Configuración de confianza</translation>
 <translation id="2194856509914051091">Cuestións que se deben ter en conta</translation>
 <translation id="2195331105963583686">Seguirás podendo utilizar este <ph name="DEVICE_TYPE" /> despois desta data, pero deixará de recibir actualizacións de software e seguranza automáticas</translation>
@@ -1856,6 +1861,7 @@
 <translation id="2350133097354918058">Volveuse cargar a extensión</translation>
 <translation id="2350182423316644347">Iniciando aplicación...</translation>
 <translation id="235028206512346451">Se te apartas do dispositivo, a pantalla bloquearase de maneira automática. Mentres esteas diante do dispositivo, a pantalla manterase activa máis tempo. Se non usas pantalla de bloqueo, o teu dispositivo poñerase en suspensión en vez de bloquearse.</translation>
+<translation id="2352305801620974284">Cando inicias sesión neste dispositivo, obtés o teu contrasinal, entre outras cousas, da túa Conta de Google.</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">As notas da pantalla de bloqueo gárdanse automaticamente na aplicación <ph name="LOCK_SCREEN_APP_NAME" />. A túa nota máis recente permanecerá na pantalla de bloqueo.</translation>
 <translation id="2353297238722298836">Permítense a cámara e o micrófono</translation>
@@ -2066,6 +2072,7 @@
 <translation id="249113932447298600">O dispositivo <ph name="DEVICE_LABEL" /> non é compatible neste momento.</translation>
 <translation id="2491587035099903063">mostra de voz en <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Preparando solicitude de sinatura do certificado</translation>
+<translation id="2492964937550251173">Queres pechar as pestanas e eliminar o grupo?</translation>
 <translation id="249330843868392562">Abre a configuración da conversión de texto a voz</translation>
 <translation id="2494555621641843783">Non se pode instalar Steam</translation>
 <translation id="2495141202137516054">Da túa unidade</translation>
@@ -2235,6 +2242,7 @@
 <translation id="262087792756666314">Podes fixar esta función para acceder facilmente. Fai clic no botón Fixar que está na parte superior do panel lateral</translation>
 <translation id="2620900772667816510">Bluetooth de alta resolución</translation>
 <translation id="262154978979441594">Crear modelo de voz do Asistente de Google</translation>
+<translation id="2622280935687585828">Quitar <ph name="SITE_NAME" /> dos sitios desactivados</translation>
 <translation id="26224892172169984">Non permitir que ningún sitio xestione protocolos</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Permítese o control e a reprogramación dos dispositivos MIDI</translation>
@@ -2408,6 +2416,7 @@
 <translation id="2743387203779672305">Copiar no portapapeis</translation>
 <translation id="274362947316498129">Hai unha aplicación que está tentando acceder ao dispositivo <ph name="DEVICE_NAME" />. Para darlle acceso, desactiva o interruptor de privacidade do dispositivo <ph name="DEVICE_NAME" />.</translation>
 <translation id="2745080116229976798">Subordinación certificada de Microsoft</translation>
+<translation id="2747853844543618313">Cómpre que aceptes a solicitude de emisión no dispositivo (<ph name="DEVICE_NAME" />).</translation>
 <translation id="2749756011735116528">Iniciar sesión en <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Comprobar a gramática e a ortografía</translation>
@@ -2778,6 +2787,7 @@
 <translation id="3021066826692793094">Bolboreta</translation>
 <translation id="3021678814754966447">&amp;Ver fonte do marco</translation>
 <translation id="3021902017511220299">Produciuse un erro durante a análise. A persoa que che administra a conta bloqueou esta acción.</translation>
+<translation id="3022068420678496307">Eliminarase o grupo de todos os dispositivos nos que teñas a sesión iniciada en Chrome con esta Conta de Google.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> quitarase deste Chromebook e non se gardará en <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Non se entendeu a mensaxe.</translation>
 <translation id="3023464535986383522">Escoitar selección</translation>
@@ -4060,7 +4070,6 @@
 <translation id="3983586614702900908">dispositivos dun provedor descoñecido</translation>
 <translation id="3983764759749072418">As aplicacións de Play Store teñen acceso a este dispositivo.</translation>
 <translation id="3983769721878416534">Atraso antes de facer clic</translation>
-<translation id="3983793589497399077">Fai clic onde queiras ou arrastra o recadro para facer buscas con Lens</translation>
 <translation id="3984135167056005094">Non incluír enderezo de correo electrónico</translation>
 <translation id="3984159763196946143">Non se puido iniciar o modo de demostración</translation>
 <translation id="3984431586879874039">Queres permitir que este sitio vexa a túa chave de seguranza?</translation>
@@ -4183,6 +4192,7 @@
 <translation id="4078903002989614318">Opcións de ordenación e de lista</translation>
 <translation id="4079140982534148664">Utilizar corrector ortográfico mellorado</translation>
 <translation id="4082333918978320301">Ningún sitio ten permiso para usar o micrófono</translation>
+<translation id="4083735423615351075">As pestanas permanecerán abertas neste dispositivo, pero o grupo eliminarase de todos os aparellos nos que teñas a sesión iniciada en Chrome con esta Conta de Google.</translation>
 <translation id="4084682180776658562">Marcador</translation>
 <translation id="4084835346725913160">Pechar <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">JavaScript bloqueouse nesta páxina.</translation>
@@ -4192,6 +4202,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Mostrar na parte dereita</translation>
+<translation id="4088879333319441249">Queres desagrupar as pestanas?</translation>
 <translation id="4089235344645910861">Gardouse a configuración e iniciouse a sincronización.</translation>
 <translation id="4089817585533500276">maiúsculas + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Activar acceso verificado</translation>
@@ -5673,6 +5684,7 @@
 <translation id="5242724311594467048">Queres activar <ph name="EXTENSION_NAME" />?</translation>
 <translation id="5243522832766285132">Téntao de novo nuns minutos</translation>
 <translation id="5244234799035360187">OneDrive agora mostrarase na aplicación Ficheiros</translation>
+<translation id="5244466461749935369">Manter por agoara</translation>
 <translation id="5244474230056479698">Sincronizando en <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Comeza a utilizar unha conta de centro educativo</translation>
 <translation id="5246282308050205996">Produciuse un erro en <ph name="APP_NAME" />. Fai clic neste globo para reiniciar a aplicación.</translation>
@@ -5941,6 +5953,7 @@
 <translation id="5453829744223920473">O teu fillo ou filla pode usar todas as aplicacións escolares, marcadores e recursos, tal e como o fai en clase. A escola define as normas básicas.</translation>
 <translation id="5454166040603940656">con <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Ver máis resultados da busca</translation>
+<translation id="5457082343331641453">Engade unha consulta á busca</translation>
 <translation id="5457113250005438886">Non válidos</translation>
 <translation id="5457459357461771897">Ler e eliminar fotos, música e outros ficheiros multimedia do teu ordenador</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6416,6 +6429,7 @@
 <translation id="5816434091619127343">Se se aplicasen os cambios solicitados na impresora, esta non se podería usar.</translation>
 <translation id="581659025233126501">Activar sincronización</translation>
 <translation id="5817918615728894473">Sincronizar</translation>
+<translation id="5817963443108180228">Dámosche a benvida de novo, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">todas as aplicacións</translation>
 <translation id="5821565227679781414">Crear atallo</translation>
 <translation id="5824976764713185207">Ler páxina automaticamente cando remate de cargar</translation>
@@ -7015,6 +7029,7 @@
 <translation id="6265159465845424232">Preguntar antes de copiar ficheiros de Microsoft e movelos a Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Quitar porto</translation>
 <translation id="6266532094411434237">Conectando co dispositivo (<ph name="DEVICE" />)</translation>
+<translation id="6266984048393265562">Personalizar perfil</translation>
 <translation id="6267166720438879315">Selecciona un certificado para autenticarte en <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Abrir con <ph name="APP" /></translation>
 <translation id="6270309713620950855">Aviso de micrófono silenciado</translation>
@@ -7153,7 +7168,6 @@
 <translation id="6383382161803538830">O modo de lectura non se pode usar nesta páxina</translation>
 <translation id="638418309848716977">Ligazóns compatibles</translation>
 <translation id="6384275966486438344">Cambiar a túa configuración de busca a: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupo sen nome (1 pestana)}other{Grupo sen nome (# pestanas)}}</translation>
 <translation id="6385149369087767061">Conéctate a Internet e téntao de novo</translation>
 <translation id="6385382178401976503">Tarxeta: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Advertencia: O rexistro detallado está activado. É posible que entre os rexistros seguintes se inclúan URL ou outra información confidencial. Revisa a información e asegúrate de que queres enviala.</translation>
@@ -7232,6 +7246,7 @@
 <translation id="6445450263907939268">Se non querías realizar estes cambios, podes restaurar a túa configuración anterior.</translation>
 <translation id="6446213738085045933">Crear acceso directo do escritorio</translation>
 <translation id="6447842834002726250">Cookies</translation>
+<translation id="6449554712554071184">Eliminarase permanentemente o grupo do teu dispositivo.</translation>
 <translation id="6450876761651513209">Cambia a túa configuración relacionada coa privacidade</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> e 1 pestana máis}other{<ph name="PAGE_TITLE" /> e # pestanas máis}}</translation>
 <translation id="6451689256222386810">Se esqueciches o teu contrasinal ou queres cambiar esta configuración, deberás <ph name="BEGIN_LINK" />restablecer a sincronización<ph name="END_LINK" />.</translation>
@@ -7378,6 +7393,7 @@
 <translation id="6556866813142980365">Refacer</translation>
 <translation id="6556903358015358733">Tema e fondo de pantalla</translation>
 <translation id="6557290421156335491">Os meus atallos</translation>
+<translation id="6560061709899140565">Mostrar outras sesións de emisión de contido</translation>
 <translation id="6560151649238390891">Púxose a suxestión</translation>
 <translation id="6561726789132298588">intro</translation>
 <translation id="6562117348069327379">Almacena os rexistros do sistema no directorio Descargas.</translation>
@@ -7467,6 +7483,7 @@
 <translation id="6635674640674343739">Non se puido establecer a conexión de rede. Comproba a conexión de rede e téntao de novo.</translation>
 <translation id="663569763553406962">Consulta que extensións poden ler ou modificar un sitio</translation>
 <translation id="6635944431854494329">O propietario pode controlar esta función en Configuración &gt; Avanzada &gt; Enviar de forma automática datos de uso e diagnóstico a Google.</translation>
+<translation id="6636572589916466933">Acepta a solicitude de emisión no dispositivo (<ph name="DEVICE_NAME" />).</translation>
 <translation id="6636623428211296678">Explora máis opcións de configuración a continuación ou remata agora</translation>
 <translation id="6639554308659482635">Memoria SQLite</translation>
 <translation id="6640268266988685324">Pestana aberta</translation>
@@ -8151,6 +8168,7 @@
 <translation id="715396040729904728">menú de aplicacións + maiúsculas + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Comparte os teus comentarios ou describe o problema. Se é posible, inclúe os pasos para reproducilo.</translation>
 <translation id="7154130902455071009">Cambiar a páxina de inicio a: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Desfruta dunha mellor calidade de vídeo e aforra batería. O vídeo só se reproducirá na túa pantalla compatible con Cast.</translation>
 <translation id="7159953856712257647">Instalada de forma predeterminada</translation>
 <translation id="7160182524506337403">Xa podes acceder ás notificacións do teu teléfono</translation>
 <translation id="7165263843655074092">Contas con protección de seguranza estándar neste dispositivo</translation>
@@ -9009,6 +9027,7 @@
 <translation id="7788948939674438635">Non permitir que os sitios bloqueen o teclado</translation>
 <translation id="7789963078219276159">O fondo da páxina de inicio cambiouse por <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">OCR para PDF</translation>
+<translation id="7790737481627460475">Ficheiros neste Chromebook</translation>
 <translation id="7791269138074599214">Método de introdución de texto</translation>
 <translation id="7791429245559955092">Esta aplicación instalarase no perfil de Chrome que usas actualmente</translation>
 <translation id="7791436592012979144">Activouse o desprazamento inverso</translation>
@@ -9038,6 +9057,7 @@
 <translation id="7810202088502699111">Bloqueáronse as ventás emerxentes nesta páxina.</translation>
 <translation id="7810367892333449285">Os datos introducidos deberían ter o formato <ph name="LPA_0" />$<ph name="LPA_1" />enderezo de SM-DP+<ph name="LPA_2" />$<ph name="LPA_3" />código de coincidencia opcional<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Téntao de novo ou selecciona máis abaixo un dos temas xerados anteriormente.</translation>
+<translation id="7814090115158024843">Non ofrecer nunca axuda para escribir nestes sitios</translation>
 <translation id="7814458197256864873">&amp;Copiar</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Editar atallo <ph name="SHORTCUT" /> para <ph name="EXTENSION_NAME" /></translation>
@@ -9269,8 +9289,10 @@
 <translation id="7974936243149753750">Sobrevarrido</translation>
 <translation id="7975504106303186033">Debes inscribir este dispositivo de Chrome Education nunha conta de centro educativo. Se queres rexistrarte para conseguir unha nova conta, visita g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Avísate cando usas un contrasinal vulnerado nunha violación da seguranza dos datos.</translation>
+<translation id="797824194429476746">As pestanas permanecerán abertas neste dispositivo, pero o grupo eliminarase de maneira permanente.</translation>
 <translation id="7978412674231730200">Clave privada</translation>
 <translation id="7978450511781612192">Desta forma pecharase sesión nas túas Contas de Google. Deixarán de sincronizarse os marcadores, o historial, os contrasinais e outros datos.</translation>
+<translation id="7980066177668669492">ASCII codificado en Base64, varios certificados</translation>
 <translation id="7980084013673500153">Código de identificación do recurso: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Usa unha clave de acceso gardada para <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Mostrar ventá emerxente co EID do dispositivo e co código QR correspondente</translation>
@@ -9682,6 +9704,7 @@
 <translation id="8276242035951017580">Ningunha aplicación ten permiso para usar a túa cámara</translation>
 <translation id="8276560076771292512">Baleirar a caché e cargar de novo desde cero</translation>
 <translation id="8276850948802942358">Máis información sobre como conceder permiso temporal a un sitio para que use cookies de terceiros</translation>
+<translation id="8277907305629781277">Creaches esta clave de acceso o <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Sitios web nos teus idiomas</translation>
 <translation id="828180235270931531">Outras impresoras dispoñibles</translation>
 <translation id="8281886186245836920">Omitir</translation>
@@ -10360,7 +10383,6 @@
 <translation id="8784626084144195648">Media agrupada</translation>
 <translation id="8785622406424941542">Lapis óptico</translation>
 <translation id="8786824282808281903">Cando o teu fillo ou filla vexa esta icona, poderase usar unha impresión dixital para identificarse ou autorizar compras.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupo sen nome (1 pestana)}other{Grupo sen nome (# pestanas)}}</translation>
 <translation id="8787752878731558379">Para axudarnos a mellorar Chrome, cóntanos por que permitiches as cookies de terceiros</translation>
 <translation id="8789898473175677810">Chrome participa <ph name="LINK_BEGIN" />nunha iniciativa conxunta<ph name="LINK_END" /> para reducir o seguimento en varios sitios e eliminar gradualmente o uso de cookies de terceiros. Pero tentamos facelo de maneira responsable porque moitos sitios confían nas cookies de terceiros para funcionar segundo o previsto. Por exemplo, moitos úsanas para simplificar o inicio de sesión e ofrecer un chat inserido, sistemas de comentarios e servizos de pago. Ademais os anunciantes adoitan usalas para personalizar mellor os anuncios. E iso é importante porque, grazas aos anuncios, os sitios a miúdo pagan gastos e poden fornecer o seu contido en liña sen custo económico.</translation>
 <translation id="8791157330927639737">Máis información sobre a actualización</translation>
@@ -10595,6 +10617,7 @@
 <translation id="8962863356073277855">O URL debería ter o seguinte formato: https://www.example.com</translation>
 <translation id="8962918469425892674">Este sitio usa sensores de movemento ou de luz.</translation>
 <translation id="8963117664422609631">Ir á configuración do sitio</translation>
+<translation id="8964795217937248330">Queres pechar as pestanas e eliminar o grupo?</translation>
 <translation id="8965037249707889821">Introduce o contrasinal anterior</translation>
 <translation id="8966809848145604011">Outros perfís</translation>
 <translation id="8967427617812342790">Engadir á lista de lectura</translation>
@@ -11028,6 +11051,7 @@
 <translation id="979345485590886759">Os sitios poden pedirche permiso para bloquear o punteiro do rato</translation>
 <translation id="980731642137034229">Botón de menú de accións</translation>
 <translation id="981121421437150478">Sen conexión</translation>
+<translation id="98235653036850093">Ola, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Pechar todas as pestanas</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" />, cámara e micrófono gravando</translation>
 <translation id="984275831282074731">Métodos de pago</translation>
diff --git a/chrome/app/resources/generated_resources_gu.xtb b/chrome/app/resources/generated_resources_gu.xtb
index a2c726e..e0f7cb14 100644
--- a/chrome/app/resources/generated_resources_gu.xtb
+++ b/chrome/app/resources/generated_resources_gu.xtb
@@ -366,6 +366,7 @@
 <translation id="1260810365552581339">Linuxમાં કદાચ પર્યાપ્ત ડિસ્ક સ્પેસ નથી. તમે તમારા Linuxમાં ડિસ્ક સ્પેસ વધારી શકો છો અને <ph name="LINK_START" />સેટિંગ<ph name="LINK_END" />માં જઈને ફરી રિસ્ટોર કરવાનો પ્રયાસ કરી શકો છો.</translation>
 <translation id="1261380933454402672">વિનમ્ર</translation>
 <translation id="126156426083987769">ડેમો મોડ ડિવાઇસ લાઇસન્સમાં સમસ્યા આવી.</translation>
+<translation id="1261885284931493480">શું ટૅબ કાઢી નાખીને ગ્રૂપ ડિલીટ કરીએ?</translation>
 <translation id="1263231323834454256">વાચન સૂચિ</translation>
 <translation id="1263733306853729545">ઉમેદવારોની સૂચિનું પેજ બનાવવા માટે <ph name="MINUS" /> અને <ph name="EQUAL" /> કીનો ઉપયોગ કરો</translation>
 <translation id="126387934568812801">ખુલ્લી ટૅબના આ સ્ક્રીનશૉટ અને શીર્ષકો શામેલ કરો</translation>
@@ -873,6 +874,7 @@
 <translation id="1634224622052500893">વાઇ-ફાઇ નેટવર્ક મળ્યું</translation>
 <translation id="1634783886312010422">શું તમે પહેલેથી <ph name="WEBSITE" /> પર પાસવર્ડ બદલી નાખ્યો હતો?</translation>
 <translation id="1636212173818785548">ઓકે</translation>
+<translation id="1636542522761359943">સ્વાગત છે, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />ઍપનો ડેટા, ઍપમાં સાચવેલો (ડેવલપર સેટિંગના આધારે) કોઈપણ ડેટા હોઈ શકે છે, જેમાં સંપર્કો, મેસેજ અને ફોટા જેવા ડેટાનો સમાવેશ થાય છે. બૅકઅપ ડેટાની ગણતરી તમારા Driveના સ્ટોરેજ ક્વોટામાં કરવામાં આવશે નહીં.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />તમે આ સેવાને સેટિંગમાંથી બંધ કરી શકો છો.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">આ બુકમાર્ક તમારા iPhone પર મેળવો</translation>
@@ -909,6 +911,7 @@
 <translation id="1652862280638399816">macOS કીચેન સાથે Password Managerનો ઉપયોગ કરવા માટે, Chromiumને ફરીથી લૉન્ચ કરો અને કીચેનના ઍક્સેસની મંજૂરી આપો. ફરીથી લૉન્ચ થયા પછી, તમારા ટૅબ ફરીથી ખૂલશે.</translation>
 <translation id="1653958716132599769">ગ્રૂપ સંબંધિત ટૅબ</translation>
 <translation id="1654580009054503925">વિનંતીઓ બતાવવાની મંજૂરી આપી નથી</translation>
+<translation id="1654713139320245449">કાસ્ટ કરવાની કોઈ નિર્ધારિત જગ્યા મળી નથી. શું સહાયની જરૂર છે?</translation>
 <translation id="1656528038316521561">બૅકગ્રાઉન્ડની અપારદર્શકતા</translation>
 <translation id="1657406563541664238">ઉપયોગનાં આંકડાઓ અને ક્રૅશ રિપોર્ટ ઑટોમૅટિક રીતે Googleને મોકલીને <ph name="PRODUCT_NAME" />ને વધુ સારું બનાવવામાં મદદ કરો</translation>
 <translation id="1657937299377480641">શૈક્ષણિક સંસાધનોના ઍક્સેસ માટે ફરી સાઇન ઇન કરવા, તમને પરવાનગી આપવાનું માતાપિતાને કહો</translation>
@@ -1628,12 +1631,14 @@
 <translation id="2187895286714876935">સર્વર પ્રમાણપત્ર આયાત કરવામાં ભૂલ</translation>
 <translation id="2187906491731510095">એક્સ્ટેંશન અપડેટ કર્યા</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> ખોલો</translation>
+<translation id="2188919919468240749">શું ટૅબના ગ્રૂપને ડિલીટ કરીએ?</translation>
 <translation id="2190069059097339078">WiFi ઓળખપત્રો બનાવનાર</translation>
 <translation id="219008588003277019">મૂળ ક્લાયંટ મોડ્યુલ: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(ખાલી)</translation>
 <translation id="2190967441465539539">કૅમેરા અને માઇક્રોફોન ઍક્સેસ કરી શકતા નથી</translation>
 <translation id="2191754378957563929">ચાલુ</translation>
 <translation id="2192505247865591433">તરફથી:</translation>
+<translation id="219283042927675668">ગ્રૂપમાંના ટૅબ</translation>
 <translation id="2193365732679659387">ટ્રસ્ટ સેટિંગ</translation>
 <translation id="2194856509914051091">ધ્યાનમાં લેવા જેવી બાબતો</translation>
 <translation id="2195331105963583686">તેમ તે સમય પછી પણ આ <ph name="DEVICE_TYPE" />નો ઉપયોગ કરી શકશો પણ હવેથી ઑટોમૅટિક સૉફ્ટવેર અને સુરક્ષા અપડેટ મળશે નહીં</translation>
@@ -1855,6 +1860,7 @@
 <translation id="2350133097354918058">ફરીથી લોડ કર્યું</translation>
 <translation id="2350182423316644347">ઍપ્લિકેશન શરૂ કરી રહ્યું છે...</translation>
 <translation id="235028206512346451">જો તમે તમારા ડિવાઇસથી દૂર હટી જાઓ, તો તમારી સ્ક્રીન ઑટોમૅટિક રીતે લૉક થઈ જશે. જ્યારે તમે તમારા ડિવાઇસની સામે હાજર રહો, ત્યારે તમારી સ્ક્રીન વધુ સમય માટે સક્રિય રહેશે. જો તમે કોઈ લૉક સ્ક્રીનનો ઉપયોગ કરતા ન હો, તો તમારું ડિવાઇસ લૉક થવાને બદલે નિષ્ક્રિય થઈ જશે.</translation>
+<translation id="2352305801620974284">જ્યારે તમે આ ડિવાઇસમાં સાઇન ઇન કરો, ત્યારે તમે તમારા Google એકાઉન્ટમાંથી તમારા પાસવર્ડ જેવી બીજી ઘણી બાબતો મેળવી શકશો</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">લૉક સ્ક્રીન નોંધ ઑટોમૅટિક રીતે <ph name="LOCK_SCREEN_APP_NAME" /> પર સાચવવામાં આવે છે. તમારી સૌથી તાજેતરની નોંધ લૉક સ્ક્રીન પર રહેશે.</translation>
 <translation id="2353297238722298836">કૅમેરા અને માઇક્રોફોનની મંજૂરી</translation>
@@ -2065,6 +2071,7 @@
 <translation id="249113932447298600">માફ કરશો, આ સમયે ઉપકરણ <ph name="DEVICE_LABEL" /> ને સપોર્ટ નથી.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> માટે વૉઇસનો પ્રીવ્યૂ કરો</translation>
 <translation id="2492461744635776704">પ્રમાણપત્ર પર સહી કરવાની વિનંતીની પ્રક્રિયા ચાલુ છે</translation>
+<translation id="2492964937550251173">શું ટૅબ બંધ કરીને ગ્રૂપ ડિલીટ કરીએ?</translation>
 <translation id="249330843868392562">ટેક્સ્ટ-ટૂ-સ્પીચ સેટિંગ ખોલો</translation>
 <translation id="2494555621641843783">Steam ઇન્સ્ટૉલ કરી શકતા નથી</translation>
 <translation id="2495141202137516054">તમારી ડ્રાઇવમાંથી</translation>
@@ -2234,6 +2241,7 @@
 <translation id="262087792756666314">તમે સરળ ઍક્સેસ માટે આ સુવિધાને પિન કરી શકો છો; બાજુની પૅનલમાં સૌથી ઉપર પિન કરો બટન પર ક્લિક કરો</translation>
 <translation id="2620900772667816510">બ્લૂટૂથ સુપર રિઝોલ્યુશન</translation>
 <translation id="262154978979441594">Google Assistant વૉઇસ મૉડલને તાલિમ આપો</translation>
+<translation id="2622280935687585828"><ph name="SITE_NAME" />ને બંધ કરેલી સાઇટમાંથી કાઢી નાખો</translation>
 <translation id="26224892172169984">કોઈ પણ સાઇટને પ્રોટોકૉલ્સ હેન્ડલ કરવાની મંજૂરી આપશો નહીં</translation>
 <translation id="262373406453641243">કોલેમાક</translation>
 <translation id="2624045385113367716">MIDI ડિવાઇસને નિયંત્રિત અને ફરીથી પ્રોગ્રામ કરવાની મંજૂરી છે</translation>
@@ -2407,6 +2415,7 @@
 <translation id="2743387203779672305">ક્લિપબોર્ડ પર કૉપિ કરો</translation>
 <translation id="274362947316498129">કોઈ ઍપ <ph name="DEVICE_NAME" /> ઍક્સેસ કરવાનો પ્રયાસ કરી રહી છે. ઍક્સેસની મંજૂરી આપવા માટે, <ph name="DEVICE_NAME" />ની પ્રાઇવસીનું સ્વિચ બંધ કરો.</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313">તમારા <ph name="DEVICE_NAME" /> પર કાસ્ટની વિનંતી સ્વીકારવાની ખાતરી કરો.</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> પર સાઇન ઇન કરો</translation>
 <translation id="2749836841884031656">સિમ</translation>
 <translation id="2749881179542288782">જોડણી સાથે વ્યાકરણ તપાસો</translation>
@@ -2777,6 +2786,7 @@
 <translation id="3021066826692793094">પતંગિયું</translation>
 <translation id="3021678814754966447">ફ્રેમ સ્રોત &amp;જુઓ</translation>
 <translation id="3021902017511220299">સ્કૅન કરવાનું નિષ્ફળ રહ્યું. આ ક્રિયાને તમારા ઍડમિનિસ્ટ્રેટર દ્વારા બ્લૉક કરવામાં આવી છે.</translation>
+<translation id="3022068420678496307">આમ કરવાથી આ Google એકાઉન્ટ વડે Chromeમાં સાઇન ઇન કરેલા બધા ડિવાઇસમાંથી ગ્રૂપ ડિલીટ કરવામાં આવશે.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" />ને આ Chromebookમાંથી કાઢી નાખવામાં આવશે અને તેને <ph name="PRIMARY_EMAIL" />માં સાચવવામાં આવશે નહીં.</translation>
 <translation id="3022978424994383087">તે મળ્યો નથી.</translation>
 <translation id="3023464535986383522">સાંભળવા માટે પસંદ કરો</translation>
@@ -4056,7 +4066,6 @@
 <translation id="3983586614702900908">અજાણ્યા વિક્રેતા પાસેથી ઉપકરણો</translation>
 <translation id="3983764759749072418">Play Store ઍપ્લિકેશનોને આ ડિવાઇસ માટે ઍક્સેસ છે.</translation>
 <translation id="3983769721878416534">ક્લિક કરતાં પહેલાં વિલંબ</translation>
-<translation id="3983793589497399077">લેન્સ વડે શોધવા માટે ગમે ત્યાં ક્લિક કરો અને ખેંચો</translation>
 <translation id="3984135167056005094">ઇમેઇલ ઍડ્રેસનો સમાવેશ કરશો નહીં</translation>
 <translation id="3984159763196946143">ડેમો મોડ શરૂ કરી શકાયો નથી</translation>
 <translation id="3984431586879874039">આ સાઇટને તમારો સુરક્ષા કોડ જોવાની મંજૂરી આપીએ?</translation>
@@ -4179,6 +4188,7 @@
 <translation id="4078903002989614318">સૉર્ટિંગ અને સૂચિના વિકલ્પો</translation>
 <translation id="4079140982534148664">વધુ સારી બનાવાયેલી જોડણીની તપાસનો ઉપયોગ કરો</translation>
 <translation id="4082333918978320301">કોઈપણ વેબસાઇટને તમારા માઇક્રોફોનનો ઉપયોગ કરવાની મંજૂરી નથી</translation>
+<translation id="4083735423615351075">આ ડિવાઇસ પર ટૅબ ખુલ્લા રહેશે, પરંતુ આ Google એકાઉન્ટ વડે Chromeમાં સાઇન ઇન કરેલા બધા ડિવાઇસમાંથી ગ્રૂપ ડિલીટ કરવામાં આવશે.</translation>
 <translation id="4084682180776658562">બુકમાર્ક</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> બંધ કરો</translation>
 <translation id="4085298594534903246">આ પેજ પર JavaScript બ્લૉક હતું.</translation>
@@ -4188,6 +4198,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">જમણી બાજુએ બતાવો</translation>
+<translation id="4088879333319441249">શું ટૅબના ગ્રૂપને અનગ્રૂપ કરીએ?</translation>
 <translation id="4089235344645910861">સેટિંગ સાચવી. સિંક શરૂ થયું.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">ચકાસાયેલો ઍક્સેસ ચાલુ કરો</translation>
@@ -5669,6 +5680,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />"ને ચાલુ કરીએ?</translation>
 <translation id="5243522832766285132">કૃપા કરીને થોડીવારમાં ફરી પ્રયાસ કરો</translation>
 <translation id="5244234799035360187">Files ઍપમાં હવે OneDrive દેખાશે</translation>
+<translation id="5244466461749935369">હાલ પૂરતું જાળવો</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> પર સમન્વયિત કરી રહ્યાં છે</translation>
 <translation id="5245610266855777041">સ્કૂલ એકાઉન્ટ વડે શરૂઆત કરો</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> ક્રેશ થયું છે. એપ્લિકેશનને ફરીથી પ્રારંભ કરવા માટે આ બલૂન ક્લિક કરો.</translation>
@@ -5937,6 +5949,7 @@
 <translation id="5453829744223920473">તમારું બાળક તેની સ્કૂલની તમામ ઍપ, બુકમાર્ક તેમજ સંસાધનોનો ઉપયોગ એવી જ રીતે કરી શકે છે જે રીતે તેઓ ક્લાસમાં કરે છે. પાયાના નિયમો સ્કૂલ સેટ કરે છે.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> સાથે</translation>
 <translation id="545484289444831485">વધુ શોધ પરિણામો જુઓ</translation>
+<translation id="5457082343331641453">તમારી શોધમાં ઉમેરો</translation>
 <translation id="5457113250005438886">અમાન્ય</translation>
 <translation id="5457459357461771897">વાંચો અને તમારા કમ્પ્યુટરમાંથી ફોટો, મ્યુઝિક અને બીજું મીડિયા ડિલીટ કરો</translation>
 <translation id="5458214261780477893">ડ્વોરેક</translation>
@@ -6415,6 +6428,7 @@
 <translation id="5816434091619127343">પ્રિન્ટર માટે વિનંતી કરેલ ફેરફારોને લીધે પ્રિન્ટર વાપરી શકાશે નહીં.</translation>
 <translation id="581659025233126501">સિંક કરવાનું ચાલુ કરો</translation>
 <translation id="5817918615728894473">જોડી કરો</translation>
+<translation id="5817963443108180228">આપનું ફરી સ્વાગત છે, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">બધી ઍપ્લિકેશનો</translation>
 <translation id="5821565227679781414">શૉર્ટકટ બનાવો</translation>
 <translation id="5824976764713185207">પેજ લોડ થવાનું પૂર્ણ થાય એ પછી તેને ઑટોમૅટિક રીતે વાંચો</translation>
@@ -7016,6 +7030,7 @@
 <translation id="6265159465845424232">Microsoft ફાઇલોને Microsoft OneDriveમાં કૉપિ કરતા કે ખસેડતા પહેલાં પૂછો</translation>
 <translation id="6265687851677020761">પોર્ટ કાઢી નાખો</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" />થી કનેક્ટ કરી રહ્યાં છીએ</translation>
+<translation id="6266984048393265562">પ્રોફાઇલ કસ્ટમાઇઝ કરો</translation>
 <translation id="6267166720438879315"><ph name="HOST_NAME" /> પર પોતાને પ્રમાણિત કરવા માટે એક પ્રમાણપત્ર પસંદ કરો</translation>
 <translation id="6268252012308737255"><ph name="APP" /> સાથે ખોલો</translation>
 <translation id="6270309713620950855">સંકેત મ્યૂટ કરો</translation>
@@ -7154,7 +7169,6 @@
 <translation id="6383382161803538830">આ પેજ પર વાંચન મોડ ઉપલબ્ધ નથી</translation>
 <translation id="638418309848716977">સપોર્ટ કરવામાં આવતી લિંક</translation>
 <translation id="6384275966486438344">આના પર તમારા શોધ સેટિંગ બદલો: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{અનામાંકિત ગ્રૂપ - 1 ટૅબ}one{અનામાંકિત ગ્રૂપ - # ટૅબ}other{અનામાંકિત ગ્રૂપ - # ટૅબ}}</translation>
 <translation id="6385149369087767061">ઇન્ટરનેટથી કનેક્ટ કરો અને ફરી પ્રયાસ કરો</translation>
 <translation id="6385382178401976503">કાર્ડ: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">ચેતવણી - વિગતવાર લૉગિંગ ચાલુ છે; નીચેના લૉગમાં URL અથવા અન્ય સંવેદનશીલ માહિતી શામેલ હોઈ શકે છે. કૃપા કરીને રિવ્યૂ કરી અને ખાતરી કરો કે તમે આ માહિતી સબમિટ કરવામાં તમને કોઈ મુશ્કેલી નથી.</translation>
@@ -7233,6 +7247,7 @@
 <translation id="6445450263907939268">જો તમે આ ફેરફારો ઇચ્છતા ન હોય, તો તમે તમારા પાછલાં સેટિંગને પહેલાંના જેવું કરો.</translation>
 <translation id="6446213738085045933">ડેસ્કટૉપ શોર્ટકટ બનાવો</translation>
 <translation id="6447842834002726250">કૂકીઝ</translation>
+<translation id="6449554712554071184">આમ કરવાથી તમારા ડિવાઇસમાંથી ગ્રૂપ કાયમ માટે ડિલીટ થઈ જશે.</translation>
 <translation id="6450876761651513209">તમારા પ્રાઇવસી સંબંધિત સેટિંગ બદલો</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> અને અન્ય 1 ટૅબ}one{<ph name="PAGE_TITLE" /> અને અન્ય # ટૅબ}other{<ph name="PAGE_TITLE" /> અને અન્ય # ટૅબ}}</translation>
 <translation id="6451689256222386810">જો તમે તમારો પાસફ્રેઝ ભૂલી ગયાં હોવ અથવા આ સેટિંગ બદલવા માગતા હોવ, તો <ph name="BEGIN_LINK" />સમન્વયનને ફરીથી સેટ કરો<ph name="END_LINK" />.</translation>
@@ -7379,6 +7394,7 @@
 <translation id="6556866813142980365">ફરી કરો</translation>
 <translation id="6556903358015358733">થીમ અને વૉલપેપર</translation>
 <translation id="6557290421156335491">મારા શૉર્ટકટ</translation>
+<translation id="6560061709899140565">Castના અન્ય સત્રો બતાવો</translation>
 <translation id="6560151649238390891">સૂચન ઉમેર્યું</translation>
 <translation id="6561726789132298588">Enter</translation>
 <translation id="6562117348069327379">સિસ્ટમના લૉગને ડાઉનલોડ ડિરેક્ટરીમાં સ્ટોર કરો.</translation>
@@ -7470,6 +7486,7 @@
 <translation id="6635674640674343739">નેટવર્ક કનેક્શન સ્થાપિત કરી શકાતું નથી. તમારું નેટવર્ક કનેક્શન ચેક કરો અને ફરી પ્રયાસ કરો.</translation>
 <translation id="663569763553406962">જુઓ કે કયા એક્સ્ટેન્શન કોઈ સાઇટ વાંચી કે બદલી શકે છે</translation>
 <translation id="6635944431854494329">માલિક સેટિંગ &gt; વિગતવાર &gt; Googleને ઑટોમૅટિક રીતે નિદાન અને વપરાશનો ડેટા મોકલો પર જઈને આ સુવિધાને નિયંત્રિત કરી શકે છે.</translation>
+<translation id="6636572589916466933">તમારા <ph name="DEVICE_NAME" /> પર કાસ્ટની વિનંતી સ્વીકારો.</translation>
 <translation id="6636623428211296678">નીચે વધુ સેટિંગ વિશે જાણકારી મેળવો અથવા હવે સમાપ્ત કરો</translation>
 <translation id="6639554308659482635">SQLite મેમરી</translation>
 <translation id="6640268266988685324">ટૅબ ખોલો</translation>
@@ -8155,6 +8172,7 @@
 <translation id="715396040729904728">લૉન્ચર + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">તમારી સમસ્યાનું વર્ણન કરો અથવા તમારો પ્રતિસાદ શેર કરો. જો શક્ય હોય, તો તમારી સમસ્યા વધુ સારી રીતે સમજી શકાય તે માટે તબક્કાવાર જણાવો.</translation>
 <translation id="7154130902455071009">તમારા શરૂઆતના પેજને આનાથી બદલો: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">બહેતર ક્વૉલિટીના વીડિયો મેળવો અને બૅટરીની આવરદામાં વધારો કરો. વીડિયો માત્ર તમારા કાસ્ટ કરવામાં સક્ષમતા ધરાવતી તમારી કોઈ સ્ક્રીન પર જ ચલાવવામાં આવશે.</translation>
 <translation id="7159953856712257647">ડિફૉલ્ટ તરીકે ઇન્સ્ટૉલ કરેલું</translation>
 <translation id="7160182524506337403">હવે તમે તમારા ફોનના નોટિફિકેશન જોઈ શકો છો</translation>
 <translation id="7165263843655074092">તમે આ ડિવાઇસ પર સ્ટૅન્ડર્ડ સુરક્ષા સંરક્ષણ મેળવી રહ્યા છો</translation>
@@ -9012,6 +9030,7 @@
 <translation id="7788948939674438635">સાઇટને તમારા કીબોર્ડને લૉક કરવાની મંજૂરી આપશો નહીં</translation>
 <translation id="7789963078219276159">આરંભ પેજનું બૅકગ્રાઉન્ડ બદલીને <ph name="CATEGORY" /> કરવામાં આવ્યું છે.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">આ Chromebookમાંની ફાઇલો</translation>
 <translation id="7791269138074599214">ઇનપુટ પદ્ધતિ</translation>
 <translation id="7791429245559955092">આ ઍપ્લિકેશન તમારી હાલમાં ઉપયોગમાં લેવાતી Chrome પ્રોફાઇલ પર ઇન્સ્ટૉલ કરવામાં આવશે</translation>
 <translation id="7791436592012979144">રિવર્સ સ્ક્રોલિંગ ચાલુ કર્યું</translation>
@@ -9041,6 +9060,7 @@
 <translation id="7810202088502699111">આ પેજ પરનાં પૉપ-અપ બ્લૉક હતા.</translation>
 <translation id="7810367892333449285">તમારી એન્ટ્રી આ ફૉર્મેટમાં હોવી જોઈએ <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ ઍડ્રેસ<ph name="LPA_2" />$<ph name="LPA_3" />વૈકલ્પિક મેળ ખાતું ID<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">ફરીથી પ્રયાસ કરો અથવા નીચેનામાંથી અગાઉ જનરેટ કરેલી થીમમાંથી કોઈ એક પસંદ કરો.</translation>
+<translation id="7814090115158024843">આ સાઇટ પર ક્યારેય લખવામાં સહાય માગશો નહીં</translation>
 <translation id="7814458197256864873">&amp;કૉપિ કરો</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> માટે <ph name="SHORTCUT" /> શૉર્ટકટમાં ફેરફાર કરો</translation>
@@ -9272,8 +9292,10 @@
 <translation id="7974936243149753750">ઓવરસ્કૅન</translation>
 <translation id="7975504106303186033">તમારે આ Chrome શૈક્ષણિક ડિવાઇસની નોંધણી શિક્ષણ સંબંધિત એકાઉન્ટમાં કરાવવી જરૂરી છે. નવા એકાઉન્ટ માટે સાઇન અપ કરવા, કૃપા કરીને g.co/workspace/edusignupની મુલાકાત લો.</translation>
 <translation id="7977451675950311423">તમે ઉપયોગમાં લો છો તે પાસવર્ડ સાથે કોઈ ડેટા ઉલ્લંઘન દરમિયાન ચેડાં કરવામાં આવ્યા હોય તો તમને ચેતવણી આપે છે.</translation>
+<translation id="797824194429476746">આ ડિવાઇસ પર ટૅબ ખુલ્લા રહેશે, પરંતુ ગ્રૂપ કાયમ માટે ડિલીટ કરવામાં આવશે.</translation>
 <translation id="7978412674231730200">ખાનગી કી</translation>
 <translation id="7978450511781612192">આનાથી તમે તમારા Google એકાઉન્ટમાંથી સાઇન આઉટ થઈ જશો. ત્યાર પછી તમારાં બુકમાર્ક, ઇતિહાસ, પાસવર્ડ અને ઘણું બધું સિંક કરવામાં નહીં આવે.</translation>
+<translation id="7980066177668669492">Base64-encoded ASCII, એકથી વધુ સર્ટિફિકેટ</translation>
 <translation id="7980084013673500153">સંપત્તિ ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" /> માટે કોઈ સાચવેલી પાસકીનો ઉપયોગ કરો</translation>
 <translation id="7981662863948574132">ડિવાઇસનો EID અને QR કોડ પૉપઅપ બતાવો</translation>
@@ -9681,6 +9703,7 @@
 <translation id="8276242035951017580">કોઈપણ ઍપને તમારા કૅમેરાનો ઉપયોગ કરવાની મંજૂરી નથી</translation>
 <translation id="8276560076771292512">કૅશ મેમરી ખાલી કરો અને સખત રીતે ફરીથી લોડ કરો</translation>
 <translation id="8276850948802942358">સાઇટને ત્રીજા પક્ષની કુકીનો ઉપયોગ કરવાની હંગામી પરવાનગી આપવા વિશે વધુ જાણો</translation>
+<translation id="8277907305629781277">તમે પાસકી <ph name="DATE" />ના રોજ બનાવી હતી</translation>
 <translation id="8280267190418431666">તમારી ભાષાઓમાં વેબસાઇટ</translation>
 <translation id="828180235270931531">અન્ય ઉપલબ્ધ પ્રિન્ટર</translation>
 <translation id="8281886186245836920">છોડો</translation>
@@ -10360,7 +10383,6 @@
 <translation id="8784626084144195648">બિન કરેલ સરેરાશ</translation>
 <translation id="8785622406424941542">સ્ટાઇલસ</translation>
 <translation id="8786824282808281903">જ્યારે તમારું બાળક આ આઇકન જુએ, ત્યારે ઓળખાણની ચકાસણી કરવા કે ખરીદીઓ મંજૂર કરવા માટે કોઈ ફિંગરપ્રિન્ટનો ઉપયોગ કરી શકાય છે.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{અનામાંકિત ગ્રૂપ - 1 ટૅબ}one{અનામાંકિત ગ્રૂપ - # ટૅબ}other{અનામાંકિત ગ્રૂપ - # ટૅબ}}</translation>
 <translation id="8787752878731558379">તમે ત્રીજા પક્ષની કુકીને કેમ મંજૂરી આપી છે તે અમને જણાવીને Chromeને બહેતર બનાવવામાં અમારી સહાય કરો</translation>
 <translation id="8789898473175677810">Chrome ક્રૉસ-સાઇટ ટ્રૅકિંગ ઘટાડવા અને ત્રીજા પક્ષની કુકીના ઉપયોગને તબક્કાવાર બંધ કરવા માટેના <ph name="LINK_BEGIN" />સહયોગાત્મક પ્રયાસ<ph name="LINK_END" />નો ભાગ છે. પરંતુ અમે આ જવાબદારીપૂર્વક કરવાનો પ્રયાસ કરી રહ્યાં છીએ કારણ કે ઘણી બધી સાઇટ ડિઝાઇન કરાયા મુજબ કાર્ય કરવા માટે ત્રીજા પક્ષની કુકી પર વિશ્વાસ રાખે છે. ઉદાહરણ તરીકે, ઘણી બધી સાઇટ સાઇન ઇન કરવાનું સરળ બનાવવા, શામેલ કરેલી ચૅટ અને કૉમેન્ટ સિસ્ટમને સપોર્ટ કરવા માટે અને ચુકવણી સેવાઓ માટે ત્રીજા પક્ષની કુકીનો ઉપયોગ કરે છે. અને જાહેરાતકર્તાઓ જાહેરાતને બહેતર રીતે મનગમતી બનાવવા માટે ઘણીવાર ત્રીજા પક્ષની કુકીનો ઉપયોગ કરે છે. તે મહત્વનું છે કારણ કે સાઇટ ખર્ચ ચુકવવા અને તેમના ઑનલાઇન કન્ટેન્ટને કોઈ કિંમત વિના ચાલુ રાખવામાં સહાય માટે ઘણીવાર જાહેરાતો પર આધાર રાખે છે.</translation>
 <translation id="8791157330927639737">અપડેટ કરવા વિશે વધુ જાણો</translation>
@@ -10595,6 +10617,7 @@
 <translation id="8962863356073277855">URLનું ફૉર્મેટ https://www.example.com હોવું જોઈએ</translation>
 <translation id="8962918469425892674">આ સાઇટ મોશન અથવા લાઇટ સેન્સરનો ઉપયોગ કરી રહી છે.</translation>
 <translation id="8963117664422609631">સાઇટ સેટિંગ પર જાઓ</translation>
+<translation id="8964795217937248330">શું ટૅબ બંધ કરીને ગ્રૂપ ડિલીટ કરીએ?</translation>
 <translation id="8965037249707889821">જૂનો પાસવર્ડ દાખલ કરો</translation>
 <translation id="8966809848145604011">અન્ય પ્રોફાઇલ</translation>
 <translation id="8967427617812342790">વાંચન સૂચિમાં ઉમેરો</translation>
@@ -11028,6 +11051,7 @@
 <translation id="979345485590886759">સાઇટ તમારા માઉસ પૉઇન્ટરને લૉક કરવાનું પૂછી શકે છે</translation>
 <translation id="980731642137034229">ક્રિયા મેનૂ બટન</translation>
 <translation id="981121421437150478">ઑફલાઇન</translation>
+<translation id="98235653036850093">નમસ્તે, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">બધા ટેબ્સ બંધ કરો</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - કૅમેરા અને માઇક્રોફોન રેકોર્ડિંગ</translation>
 <translation id="984275831282074731">ચુકવણી પદ્ધતિઓ</translation>
diff --git a/chrome/app/resources/generated_resources_hi.xtb b/chrome/app/resources/generated_resources_hi.xtb
index 5b52c07..1af73cd7 100644
--- a/chrome/app/resources/generated_resources_hi.xtb
+++ b/chrome/app/resources/generated_resources_hi.xtb
@@ -4071,7 +4071,6 @@
 <translation id="3983586614702900908">किसी अज्ञात विक्रेता के डिवाइस</translation>
 <translation id="3983764759749072418">'Play Store' के ऐप्लिकेशन इस डिवाइस पर काम करते हैं.</translation>
 <translation id="3983769721878416534">क्‍लिक से पहले देरी</translation>
-<translation id="3983793589497399077">Lens की मदद से खोजने के लिए, स्क्रीन पर कहीं भी क्लिक करें या किसी हिस्से को क्रॉप करें</translation>
 <translation id="3984135167056005094">ईमेल पता न डालें</translation>
 <translation id="3984159763196946143">डेमो मोड शुरू नहीं किया जा सका</translation>
 <translation id="3984431586879874039">इस साइट को अपनी सुरक्षा कुंजी देखने देना चाहते हैं?</translation>
@@ -7167,7 +7166,6 @@
 <translation id="6383382161803538830">रीडिंग मोड इस पेज पर उपलब्ध नहीं है</translation>
 <translation id="638418309848716977">सहायता लिंक</translation>
 <translation id="6384275966486438344">अपनी खोज सेटिंग इसमें बदलें: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{ऐसा ग्रुप जिसका नाम नहीं है - 1 टैब}one{ऐसा ग्रुप जिसका नाम नहीं है - # टैब}other{ऐसा ग्रुप जिसका नाम नहीं है - # टैब}}</translation>
 <translation id="6385149369087767061">इंटरनेट से जोड़ें और फिर से कोशिश करें</translation>
 <translation id="6385382178401976503">कार्ड: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">चेतावनी - ज़्यादा जानकारी वाली लॉगिंग चालू है; नीचे दिए गए लॉग में यूआरएल या दूसरी संवेदनशील जानकारी शामिल हो सकती है. कृपया समीक्षा करें और पक्का करें कि यह जानकारी देने में आपको कोई परेशानी नहीं है.</translation>
@@ -10377,7 +10375,6 @@
 <translation id="8784626084144195648">बिन औसत</translation>
 <translation id="8785622406424941542">स्टाइलस</translation>
 <translation id="8786824282808281903">यह आइकॉन दिखने पर, आपका बच्चा पहचान के लिए या खरीदारी की मंज़ूरी देने के लिए, फिंगरप्रिंट का इस्तेमाल कर सकता है.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{ऐसा ग्रुप जिसका नाम नहीं है - 1 टैब}one{ऐसा ग्रुप जिसका नाम नहीं है - # टैब}other{ऐसा ग्रुप जिसका नाम नहीं है - # टैब}}</translation>
 <translation id="8787752878731558379">हमें बताएं कि आपने तीसरे पक्ष की कुकी को अनुमति क्यों दी है. इससे हमें Chrome को बेहतर बनाने में मदद मिलेगी</translation>
 <translation id="8789898473175677810">Chrome, <ph name="LINK_BEGIN" />साथ मिलकर काम करने की कोशिश<ph name="LINK_END" /> का हिस्सा है. इसका मकसद, क्रॉस-साइट ट्रैकिंग को कम करना और तीसरे पक्ष की कुकी के इस्तेमाल को बंद करना है. हालांकि, हम इस काम को ज़िम्मेदारी के साथ करने की कोशिश कर रहे हैं. ऐसा इसलिए, क्योंकि कई साइटें सही तरीके से काम करने के लिए तीसरे पक्ष की कुकी पर भरोसा करती हैं. उदाहरण के लिए, कई साइटें साइन इन करने की प्रोसेस को आसान बनाने, एम्बेड की गई चैट और टिप्पणी करने से जुड़े सिस्टम का समर्थन करने, और पेमेंट से जुड़ी सुविधाओं के लिए, तीसरे पक्ष की कुकी का इस्तेमाल करती हैं. दिलचस्पी के मुताबिक विज्ञापन दिखाने के लिए, विज्ञापन देने वाले लोग या कंपनियां अक्सर तीसरे पक्ष की कुकी का इस्तेमाल करती हैं. यह इसलिए मायने रखता है, क्योंकि साइटें अक्सर पेमेंट करने और अपने ऑनलाइन कॉन्टेंट को बिना किसी शुल्क उपलब्ध कराने के लिए विज्ञापनों पर भरोसा करती हैं.</translation>
 <translation id="8791157330927639737">अपडेट करने के बारे में ज़्यादा जानें</translation>
diff --git a/chrome/app/resources/generated_resources_hr.xtb b/chrome/app/resources/generated_resources_hr.xtb
index 02bc3439..13082b4 100644
--- a/chrome/app/resources/generated_resources_hr.xtb
+++ b/chrome/app/resources/generated_resources_hr.xtb
@@ -4071,7 +4071,6 @@
 <translation id="3983586614702900908">uređaji nepoznatog dobavljača</translation>
 <translation id="3983764759749072418">Aplikacije Trgovine Play imaju pristup ovom uređaju.</translation>
 <translation id="3983769721878416534">Odgoda prije klika</translation>
-<translation id="3983793589497399077">Kliknite ili povucite na bilo koje mjesto za pretraživanje pomoću Objektiva</translation>
 <translation id="3984135167056005094">Nemojte uključiti e-adresu</translation>
 <translation id="3984159763196946143">Pokretanje demo-načina nije uspjelo</translation>
 <translation id="3984431586879874039">Želite li dopustiti web-lokaciji prikaz vašeg sigurnosnog ključa?</translation>
@@ -7170,7 +7169,6 @@
 <translation id="6383382161803538830">Način čitanja nije dostupan na ovoj stranici</translation>
 <translation id="638418309848716977">Podržane veze</translation>
 <translation id="6384275966486438344">promijeniti postavke pretraživanja u: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Neimenovana grupa – 1 kartica}one{Neimenovana grupa – # kartica}few{Neimenovana grupa – # kartice}other{Neimenovana grupa – # kartica}}</translation>
 <translation id="6385149369087767061">Povežite se s internetom i pokušajte ponovo</translation>
 <translation id="6385382178401976503">Kartica: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Upozorenje: omogućeni su detaljni zapisnici. Zapisnici u nastavku mogu uključivati URL-ove ili neke druge osjetljive podatke. Pregledajte ih kako ne biste poslali neke podatke koje ne želite dijeliti.</translation>
@@ -10394,7 +10392,6 @@
 <translation id="8784626084144195648">Kvantizacijski prosjek</translation>
 <translation id="8785622406424941542">Olovka</translation>
 <translation id="8786824282808281903">Kada vaše dijete vidi tu ikonu, otiskom prsta moći će potvrditi svoj identitet ili odobriti kupnje.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Neimenovana grupa – 1 kartica}one{Neimenovana grupa – # kartica}few{Neimenovana grupa – # kartice}other{Neimenovana grupa – # kartica}}</translation>
 <translation id="8787752878731558379">Recite nam zašto ste dopustili kolačiće trećih strana i tako pomognite da poboljšamo Chrome</translation>
 <translation id="8789898473175677810">Chrome sudjeluje u <ph name="LINK_BEGIN" />zajedničkim naporima<ph name="LINK_END" /> smanjenja praćenja s web-lokacije na web-lokaciju i postupnog ukidanja upotrebe kolačića trećih strana. No, to nastojimo raditi odgovorno jer se mnoge web-lokacije oslanjaju na kolačiće trećih strana kako bi funkcionirale kao što je predviđeno. Na primjer, mnoge web-lokacije upotrebljavaju kolačiće trećih strana radi pojednostavljivanja prijave, podržavanja ugrađenih sustava za chat i komentiranja te za usluge plaćanja. Oglašivači često upotrebljavaju kolačiće trećih strana kako bi bolje personalizirali oglase. To je važno jer web-lokacije često računaju na oglase kako bi platile troškove i zadržale online sadržaj bez dodatnih troškova.</translation>
 <translation id="8791157330927639737">Saznajte više o ažuriranju</translation>
diff --git a/chrome/app/resources/generated_resources_hu.xtb b/chrome/app/resources/generated_resources_hu.xtb
index eccf23e..0c96b46 100644
--- a/chrome/app/resources/generated_resources_hu.xtb
+++ b/chrome/app/resources/generated_resources_hu.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Előfordulhat, hogy nem áll rendelkezésre elegendő lemezterület a Linux számára. A <ph name="LINK_START" />Beállításokban<ph name="LINK_END" /> növelheti a Linux lemezterületét, majd újra megpróbálhatja a visszaállítást.</translation>
 <translation id="1261380933454402672">Mérsékelt</translation>
 <translation id="126156426083987769">Gond adódott a demó módú eszközengedélyekkel.</translation>
+<translation id="1261885284931493480">Eltávolítja a lapokat, és törli a csoportot?</translation>
 <translation id="1263231323834454256">Olvasási lista</translation>
 <translation id="1263733306853729545">Karakterlisták lapozása a <ph name="MINUS" /> és az <ph name="EQUAL" /> billentyűvel</translation>
 <translation id="126387934568812801">Adja meg ezt a képernyőképet és a megnyitott lapok címeit</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">Wi-Fi-hálózat észlelve</translation>
 <translation id="1634783886312010422">Módosította már jelszavát a(z) <ph name="WEBSITE" /> webhelyen?</translation>
 <translation id="1636212173818785548">Rendben</translation>
+<translation id="1636542522761359943">Üdvözöljük, <ph name="PROFILE_NAME" />!</translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Alkalmazásadat lehet az alkalmazás által mentett bármilyen adat (a fejlesztő által megadott beállításoktól függően) – például névjegy, üzenet vagy fotó is. A biztonsági másolat adatait a rendszer nem számítja bele a Drive tárhelykvótájába.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Ezt a szolgáltatást bármikor kikapcsolhatja a Beállításokban.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Legyen meg ez a könyvjelző iPhone eszközén</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">Ha a Jelszókezelőt a macOS Keychain szolgáltatásával szeretné használni, indítsa újra a Chromiumot, és engedélyezze a Keychain-hozzáférést. Megnyitott lapjai az újraindítás után újra meg fognak nyílni.</translation>
 <translation id="1653958716132599769">Kapcsolódó lapok csoportosítása</translation>
 <translation id="1654580009054503925">Nem jeleníthet meg kérelmeket</translation>
+<translation id="1654713139320245449">Nem található átküldési cél. Segítségre van szüksége?</translation>
 <translation id="1656528038316521561">Háttér átlátszatlansága</translation>
 <translation id="1657406563541664238">Segítsen a <ph name="PRODUCT_NAME" /> fejlesztésében azáltal, hogy automatikusan elküldi a használati statisztikákat és hibajelentéseket a Google részére</translation>
 <translation id="1657937299377480641">Ha újra be szeretnél jelentkezni, hogy hozzáférj az oktatási forrásokhoz, kérd meg egyik szülődet, hogy adjon neked jogosultságot</translation>
@@ -1640,12 +1643,14 @@
 <translation id="2187895286714876935">Hiba a szervertanúsítvány importálásánál</translation>
 <translation id="2187906491731510095">Bővítmények frissítve</translation>
 <translation id="2188881192257509750">A(z) <ph name="APPLICATION" /> megnyitása</translation>
+<translation id="2188919919468240749">Törli a lapcsoportot?</translation>
 <translation id="2190069059097339078">Wi-Fi hitelesítési adatok lekérője</translation>
 <translation id="219008588003277019">Natív kliensmodul: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(üres)</translation>
 <translation id="2190967441465539539">Nem lehet hozzáférni a kamerához és a mikrofonhoz</translation>
 <translation id="2191754378957563929">Be</translation>
 <translation id="2192505247865591433">Innen:</translation>
+<translation id="219283042927675668">Lapok a csoportban</translation>
 <translation id="2193365732679659387">Bizalmi beállítások</translation>
 <translation id="2194856509914051091">Megfontolandó szempontok</translation>
 <translation id="2195331105963583686"><ph name="DEVICE_TYPE" /> eszközét ezt követően is tudja majd használni, de többé nem kap automatikus biztonsági és szoftverfrissítéseket</translation>
@@ -1869,6 +1874,7 @@
 <translation id="2350133097354918058">Újratöltve</translation>
 <translation id="2350182423316644347">Alkalmazás indítása...</translation>
 <translation id="235028206512346451">Ha eltávolodik az eszközétől, a rendszer automatikusan lezárja a képernyőt. Amikor az eszköze előtt tartózkodik, a képernyő hosszabb ideig nem kapcsol ki. Ha nem használ lezárási képernyőt, akkor eszköze lezárás helyett alvó módba lép.</translation>
+<translation id="2352305801620974284">Amikor bejelentkezik ezen az eszközön, hozzáférhet a Google-fiókjában tárolt jelszavaihoz és egyéb tartalmaihoz.</translation>
 <translation id="2352662711729498748">&lt;1 MB</translation>
 <translation id="2352810082280059586">A lezárási képernyő jegyzeteit a rendszer automatikusan elmenti ide: <ph name="LOCK_SCREEN_APP_NAME" />. A legutolsó jegyzet megmarad a lezárási képernyőn.</translation>
 <translation id="2353297238722298836">Kamera és mikrofon engedélyezve</translation>
@@ -2079,6 +2085,7 @@
 <translation id="249113932447298600">Elnézést kérünk, de a(z) <ph name="DEVICE_LABEL" /> eszköz jelenleg nem támogatott.</translation>
 <translation id="2491587035099903063">a következő nyelv hangjának előnézete: <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Tanúsítvány-aláírási kérés előkészítése</translation>
+<translation id="2492964937550251173">Bezárja a lapokat, és törli a csoportot?</translation>
 <translation id="249330843868392562">A szövegfelolvasóhoz tartozó beállítások megnyitása</translation>
 <translation id="2494555621641843783">Nem sikerült a Steam telepítése</translation>
 <translation id="2495141202137516054">Saját Drive-fiókból</translation>
@@ -2248,6 +2255,7 @@
 <translation id="262087792756666314">Az egyszerű hozzáférés érdekében kitűzheti ezt a funkciót. Ehhez kattintson az oldalsó panel tetején található Kitűzés gombra.</translation>
 <translation id="2620900772667816510">Szuperfelbontású Bluetooth</translation>
 <translation id="262154978979441594">Google Segéd-hangminta megtanítása</translation>
+<translation id="2622280935687585828">A(z) <ph name="SITE_NAME" /> eltávolítása a letiltott webhelyek közül</translation>
 <translation id="26224892172169984">A webhelyek nem kezelhetnek protokollokat</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">A MIDI-eszközök vezérlése és átprogramozása engedélyezett</translation>
@@ -2421,6 +2429,7 @@
 <translation id="2743387203779672305">Másolás a vágólapra</translation>
 <translation id="274362947316498129">Az egyik alkalmazás hozzá szeretne férni a következőhöz: <ph name="DEVICE_NAME" />. A hozzáférés engedélyezéséhez kapcsolja ki a(z) <ph name="DEVICE_NAME" /> adatvédelmi kapcsolóját.</translation>
 <translation id="2745080116229976798">Microsoft minősített altanúsítvány-kibocsátók</translation>
+<translation id="2747853844543618313">Ellenőrizze, hogy engedélyezte-e az átküldést a következőn: <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Bejelentkezés a <ph name="PRODUCT_NAME" />-ba</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Nyelvhelyesség és helyesírás ellenőrzése</translation>
@@ -2791,6 +2800,7 @@
 <translation id="3021066826692793094">Pillangó</translation>
 <translation id="3021678814754966447">&amp;Keret forrásának megtekintése</translation>
 <translation id="3021902017511220299">Sikertelen ellenőrzés. Ezt a műveletet letiltotta a rendszergazda.</translation>
+<translation id="3022068420678496307">Ezzel törli a csoportot minden olyan eszközről, amelyen ezzel a Google-fiókkal van bejelentkezve a Chrome-ba.</translation>
 <translation id="3022361196600037287">A(z) <ph name="DEVICE" /> eszköz el lesz távolítva erről a Chromebookról, és nem menti a rendszer a következő fiókba: <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Nem értettem.</translation>
 <translation id="3023464535986383522">Felolvasás</translation>
@@ -4069,7 +4079,6 @@
 <translation id="3983586614702900908">ismeretlen szolgáltatótól származó eszközök</translation>
 <translation id="3983764759749072418">A Play Áruház alkalmazásai hozzáférhetnek ehhez az eszközhöz.</translation>
 <translation id="3983769721878416534">Késleltetés kattintás előtt</translation>
-<translation id="3983793589497399077">Kattintson bárhová, vagy húzással jelölje ki a kívánt részt a Lens segítségével való kereséshez</translation>
 <translation id="3984135167056005094">Ne tartalmazza az e-mail-címet</translation>
 <translation id="3984159763196946143">Nem sikerült elindítani a demó módot</translation>
 <translation id="3984431586879874039">Engedélyezi a webhelynek, hogy lássa a biztonsági hardverkulcsot?</translation>
@@ -4192,6 +4201,7 @@
 <translation id="4078903002989614318">Rendezési és listabeállítások</translation>
 <translation id="4079140982534148664">Továbbfejlesztett helyesírás-ellenőrzés használata</translation>
 <translation id="4082333918978320301">Egyik webhely sem használhatja a mikrofont</translation>
+<translation id="4083735423615351075">A lapok nyitva maradnak ezen az eszközön, de a csoport törölve lesz minden olyan eszközről, amelyen ezzel a Google-fiókkal van bejelentkezve a Chrome-ba.</translation>
 <translation id="4084682180776658562">Könyvjelző</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> bezárása</translation>
 <translation id="4085298594534903246">A JavaScript le van tiltva ezen az oldalon.</translation>
@@ -4201,6 +4211,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Megjelenítés a jobb oldalon</translation>
+<translation id="4088879333319441249">Megszünteti a lapcsoport csoportosítását?</translation>
 <translation id="4089235344645910861">Beállítások mentve, a szinkronizálás megkezdődött.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Ellenőrzött hozzáférés engedélyezése</translation>
@@ -5682,6 +5693,7 @@
 <translation id="5242724311594467048">Engedélyezi a következőt: „<ph name="EXTENSION_NAME" />”?</translation>
 <translation id="5243522832766285132">Próbálkozzon újra néhány pillanat múlva</translation>
 <translation id="5244234799035360187">A OneDrive mostantól megjelenik a Fájlok alkalmazásban</translation>
+<translation id="5244466461749935369">Egyelőre megtartás</translation>
 <translation id="5244474230056479698">Szinkronizálás a következővel: <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Kezdő lépések az iskolai fiókkal</translation>
 <translation id="5246282308050205996">A(z) <ph name="APP_NAME" /> összeomlott. Az alkalmazás újraindításához kattintson erre a buborékra.</translation>
@@ -5950,6 +5962,7 @@
 <translation id="5453829744223920473">Gyermeke ugyanúgy használhatja az összes iskolai alkalmazását, könyvjelzőjét és forrását, mint az osztályban. Az alapvető szabályokat az iskola határozza meg.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> szolgáltatóval</translation>
 <translation id="545484289444831485">További keresési találatok megelenítése</translation>
+<translation id="5457082343331641453">Hozzáadás a kereséshez</translation>
 <translation id="5457113250005438886">Érvénytelen</translation>
 <translation id="5457459357461771897">Fotók, zeneszámok és más médiatartalmak olvasása és törlése a számítógépről</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6428,6 +6441,7 @@
 <translation id="5816434091619127343">A kívánt nyomtatómódosítások használhatatlanná tehetik a nyomtatót.</translation>
 <translation id="581659025233126501">Szinkronizálás bekapcsolása</translation>
 <translation id="5817918615728894473">Párosítás</translation>
+<translation id="5817963443108180228">Üdvözöljük ismét, kedves <ph name="PROFILE_NAME" />!</translation>
 <translation id="581911254119283028">minden alkalmazás</translation>
 <translation id="5821565227679781414">Parancsikon létrehozása</translation>
 <translation id="5824976764713185207">Oldal automatikus felolvasása a betöltés befejezése után</translation>
@@ -7028,6 +7042,7 @@
 <translation id="6265159465845424232">Kérdezzen rá a Microsoft-fájlok Microsoft OneDrive-ba való másolása vagy áthelyezése előtt</translation>
 <translation id="6265687851677020761">Port eltávolítása</translation>
 <translation id="6266532094411434237">Csatlakozás a következőhöz: <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Profil személyre szabása</translation>
 <translation id="6267166720438879315">Válasszon tanúsítványt a <ph name="HOST_NAME" /> hitelesítéséhez</translation>
 <translation id="6268252012308737255">Megnyitás ezzel: <ph name="APP" /></translation>
 <translation id="6270309713620950855">Némítás megbökéssel</translation>
@@ -7166,7 +7181,6 @@
 <translation id="6383382161803538830">Az Olvasó mód nem áll rendelkezésre ezen az oldalon</translation>
 <translation id="638418309848716977">Támogatott linkek</translation>
 <translation id="6384275966486438344">A keresési beállítások módosítása a következőre: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Névtelen csoport – 1 lap}other{Névtelen csoport – # lap}}</translation>
 <translation id="6385149369087767061">Csatlakozzon az internethez, és próbálja újra</translation>
 <translation id="6385382178401976503">Kártya: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Figyelem! A részletes naplózás engedélyezve van: az alábbi naplók URL-eket vagy egyéb bizalmas adatokat tartalmazhatnak. Kérjük, ellenőrizze az információkat, és győződjön meg róla, hogy nem okoz kellemetlenséget az elküldésük.</translation>
@@ -7245,6 +7259,7 @@
 <translation id="6445450263907939268">Ha nem szándékosan végezte el ezeket a módosításokat, visszaállíthatja korábbi beállításait.</translation>
 <translation id="6446213738085045933">Asztali parancsikon létrehozása</translation>
 <translation id="6447842834002726250">Cookie-k</translation>
+<translation id="6449554712554071184">Ezzel véglegesen törli a csoportot az eszközről.</translation>
 <translation id="6450876761651513209">Adatvédelemmel kapcsolatos beállítások módosítása</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> és további 1 lap}other{<ph name="PAGE_TITLE" /> és további # lap}}</translation>
 <translation id="6451689256222386810">Ha elfelejtette összetett jelszavát, vagy módosítani szeretné ezt a beállítást, <ph name="BEGIN_LINK" />állítsa alaphelyzetbe a szinkronizálást<ph name="END_LINK" />.</translation>
@@ -7391,6 +7406,7 @@
 <translation id="6556866813142980365">Újra</translation>
 <translation id="6556903358015358733">Téma és háttérkép</translation>
 <translation id="6557290421156335491">Saját parancsikonok</translation>
+<translation id="6560061709899140565">További átküldési munkamenetek megjelenítése</translation>
 <translation id="6560151649238390891">Javaslat beszúrva</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Rendszernaplók mentése a Letöltések mappába.</translation>
@@ -7480,6 +7496,7 @@
 <translation id="6635674640674343739">Nem lehet hálózati kapcsolatot létrehozni. Ellenőrizze a hálózati kapcsolatot, és próbálja újra.</translation>
 <translation id="663569763553406962">Megtekintheti, hogy mely bővítmények olvashatják és módosíthatják a webhelyeket</translation>
 <translation id="6635944431854494329">A tulajdonos ezt a funkciót a Beállítások &gt; Speciális &gt; Diagnosztikai és használati adatok automatikus elküldése a Google-nak menüpontban vezérelheti.</translation>
+<translation id="6636572589916466933">Engedélyezze az átküldést a következőn: <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Felfedezheti alább a többi beállítást, vagy befejezheti most az áttekintést</translation>
 <translation id="6639554308659482635">SQLite memória</translation>
 <translation id="6640268266988685324">Lap megnyitása</translation>
@@ -8165,6 +8182,7 @@
 <translation id="715396040729904728">indító + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Írja le visszajelzését vagy problémáját. Ha lehetséges, küldje el a probléma előidézéséhez vezető lépéseket.</translation>
 <translation id="7154130902455071009">Kezdőoldal módosítása a következőre: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Jobb videóminőséget és hosszabb akkumulátor-üzemidőt biztosít. A videókat csak az átküldést támogató képernyőn játssza le a rendszer.</translation>
 <translation id="7159953856712257647">Alapértelmezés szerint telepítve</translation>
 <translation id="7160182524506337403">Mostantól megtekintheti a telefon értesítéseit</translation>
 <translation id="7165263843655074092">Normál biztonsági védelemben részesül ezen az eszközön</translation>
@@ -9022,6 +9040,7 @@
 <translation id="7788948939674438635">A webhelyek nem zárolhatják a billentyűzetet</translation>
 <translation id="7789963078219276159">A kezdőoldal háttérképe a következőre változott: <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Fájlok ezen a Chromebookon</translation>
 <translation id="7791269138074599214">Beviteli mód</translation>
 <translation id="7791429245559955092">Ez az alkalmazás a jelenleg használt Chrome-profilba lesz telepítve</translation>
 <translation id="7791436592012979144">Fordított görgetés bekapcsolva</translation>
@@ -9051,6 +9070,7 @@
 <translation id="7810202088502699111">Az előugró ablakok le vannak tiltva ezen az oldalon.</translation>
 <translation id="7810367892333449285">A beírt adatnak a következő formátumban kell lennie: <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ cím<ph name="LPA_2" />$<ph name="LPA_3" />nem kötelező egyező azonosító<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Próbálkozzon újra, vagy válasszon egyet az alábbi korábban létrehozott témák közül.</translation>
+<translation id="7814090115158024843">Soha ne ajánljon fel segítséget az íráshoz ezeken a webhelyeken</translation>
 <translation id="7814458197256864873">&amp;Másolás</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">A(z) <ph name="EXTENSION_NAME" /> billentyűparancsának (<ph name="SHORTCUT" />) szerkesztése</translation>
@@ -9282,8 +9302,10 @@
 <translation id="7974936243149753750">Túlpásztázás</translation>
 <translation id="7975504106303186033">Oktatási fiókot kell felvennie erre a Chrome Education-eszközre. Új fiók regisztrálásához nyissa meg a g.co/workspace/edusignup oldalt.</translation>
 <translation id="7977451675950311423">Figyelmezteti Önt, ha adatvédelmi incidensben érintett jelszót használ.</translation>
+<translation id="797824194429476746">A lapok nyitva maradnak ezen az eszközön, de a csoport véglegesen törlődni fog.</translation>
 <translation id="7978412674231730200">Privát kulcs</translation>
 <translation id="7978450511781612192">Ezzel kijelentkezik Google-fiókjaiból. Könyvjelzőinek, előzményeinek, jelszavainak és egyéb adatainak szinkronizálása megszűnik.</translation>
+<translation id="7980066177668669492">Base64-kódolású ASCII, több tanúsítvány</translation>
 <translation id="7980084013673500153">Tartalomazonosító: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Mentett azonosítókulcs használata a következőhöz: <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Az eszköz EID-számához és QR-kódjához tartozó előugró ablak megjelenítése</translation>
@@ -9696,6 +9718,7 @@
 <translation id="8276242035951017580">Egy alkalmazás sem használhatja a kamerát</translation>
 <translation id="8276560076771292512">Gyorsítótár ürítése és teljes újratöltés</translation>
 <translation id="8276850948802942358">További információ arról, hogy miként adhat ideiglenes engedélyt egy webhelynek a harmadik féltől származó cookie-k használatára</translation>
+<translation id="8277907305629781277">Ezt az azonosítókulcsot ekkor hozta létre: <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Webhelyek az Ön nyelvén</translation>
 <translation id="828180235270931531">Egyéb rendelkezésre álló nyomtatók</translation>
 <translation id="8281886186245836920">Kihagyás</translation>
@@ -10374,7 +10397,6 @@
 <translation id="8784626084144195648">Kidobottak átlaga</translation>
 <translation id="8785622406424941542">Érintőceruza</translation>
 <translation id="8786824282808281903">Amikor a gyermeke ezt az ikont látja, az ujjlenyomata használható azonosításra vagy vásárlás jóváhagyására.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Névtelen csoport – 1 lap}other{Névtelen csoport – # lap}}</translation>
 <translation id="8787752878731558379">Segítsen a Chrome fejlesztésében. Mondja el, miért engedélyezte a harmadik féltől származó cookie-kat.</translation>
 <translation id="8789898473175677810">A Chrome része a webhelyek közötti követés csökkentésére és a harmadik féltől származó cookie-k használatának megszüntetésére irányuló <ph name="LINK_BEGIN" />együttműködési erőfeszítésnek<ph name="LINK_END" />. De próbáljuk ezt felelősségteljesen tenni, mert sok webhely a rendeltetésszerű működésük biztosítása érdekében harmadik féltől származó cookie-kra támaszkodik. Számos webhely például harmadik féltől származó cookie-kat használ a bejelentkezés egyszerűsítésére, a beágyazott csevegő- és hozzászólási rendszerek támogatására, valamint a fizetési szolgáltatásokhoz. A hirdetők pedig gyakran használnak harmadik féltől származó cookie-kat a hirdetések hatékonyabb személyre szabása érdekében. Ez azért fontos, mert a webhelyek gyakran számítanak a hirdetésekre ahhoz, hogy fedezzék a költségeket, és hogy továbbra is díjmentesen tudják biztosítani az online tartalmakat.</translation>
 <translation id="8791157330927639737">További információ a frissítésről</translation>
@@ -10609,6 +10631,7 @@
 <translation id="8962863356073277855">Az URL formátumának a következőnek kell lennie: https://www.example.com</translation>
 <translation id="8962918469425892674">Ez a webhely mozgás- vagy fényérzékelőket használ.</translation>
 <translation id="8963117664422609631">A webhely beállításainak megnyitása</translation>
+<translation id="8964795217937248330">Bezárja a lapokat, és törli a csoportot?</translation>
 <translation id="8965037249707889821">Adja meg a régi jelszót</translation>
 <translation id="8966809848145604011">Egyéb profilok</translation>
 <translation id="8967427617812342790">Hozzáadás olvasási listához</translation>
@@ -11042,6 +11065,7 @@
 <translation id="979345485590886759">A webhelyek engedélyt kérhetnek az egérmutató zárolására</translation>
 <translation id="980731642137034229">Műveleti menü gombja</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Kedves <ph name="PROFILE_NAME" />!</translation>
 <translation id="983192555821071799">Az összes lap bezárása</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – A kamera és a mikrofon felvételt készít</translation>
 <translation id="984275831282074731">Fizetési módok</translation>
diff --git a/chrome/app/resources/generated_resources_hy.xtb b/chrome/app/resources/generated_resources_hy.xtb
index a6a937f..54df72b 100644
--- a/chrome/app/resources/generated_resources_hy.xtb
+++ b/chrome/app/resources/generated_resources_hy.xtb
@@ -1660,6 +1660,7 @@
 <translation id="2211043920024403606">Պրոֆիլի տվյալներ</translation>
 <translation id="2211245494465528624">Կառավարել համաժամացման կարգավորումները</translation>
 <translation id="221297410904507041">Ջնջել պատմությունը, քուքիները, քեշը և ավելին</translation>
+<translation id="2213410656650624348">Չափավոր</translation>
 <translation id="2214018885812055163">Ընդհանուր պանակներ</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 տող ցուցադրված չէ&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> տող ցուցադրված չէ&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> տող ցուցադրված չէ&gt;}}</translation>
 <translation id="2215070081105889450">Աուդիո բովանդակությամբ կիսվելու համար հասանելի դարձրեք ներդիրը կամ էկրանը</translation>
@@ -2039,6 +2040,7 @@
 <translation id="2473195200299095979">Թարգմանել այս էջը</translation>
 <translation id="2475982808118771221">Սխալ առաջացավ</translation>
 <translation id="247616523300581745">Թաքցնել այս ֆայլերը</translation>
+<translation id="2476435723907345463">Դուք արգելեցիք մուտքի բանալիների օգտագործումը</translation>
 <translation id="2476901513051581836">Տարածքը կարելի է ազատել, միայն եթե անցանց հիշողության չափը հայտնի է։</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" />-ն ապատեղադրելու համար ավարտեք Windows-ի հետ աշխատանքը։</translation>
 <translation id="2477065602824695373">Քանի որ դուք մի քանի փոխանջատիչ եք նշանակել, ավտոմատ սկանավորումն անջատվել է։</translation>
@@ -2231,6 +2233,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> ֆայլը հնարավոր չէ ներբեռնել անվտանգ եղանակով։</translation>
 <translation id="2620245777360407679">Թեժ կետին միացված սարքեր</translation>
 <translation id="2620436844016719705">Համակարգ</translation>
+<translation id="262087792756666314">Այս գործառույթից արագ օգտվելու համար սեղմեք կողային վահանակի վերևի հատվածում գտնվող «Ամրացնել» կոճակը</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Ձայնագրել ձայնի մոդել Google Օգնականի համար</translation>
 <translation id="26224892172169984">Թույլ չտալ որևէ կայքի մշակել հաղորդակարգերը</translation>
@@ -3006,6 +3009,7 @@
 <translation id="3222066309010235055">Նախնական մշակում՝ <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Միացնել վիրտուալ մեքենային (<ph name="USB_VM_NAME" />)</translation>
 <translation id="3222857603094643834">Որոնեք որևէ բան այս էջում Google Տեսապակու միջոցով</translation>
+<translation id="3223109931751684474">Արգելել մուտքի բանալիների օգտագործումն այս սարքում</translation>
 <translation id="3223531857777746191">«Զրոյացնել» կոճակ</translation>
 <translation id="3225084153129302039">Կանխադրված մանուշակագույն ավատար</translation>
 <translation id="3225319735946384299">Կոդի ստորագրում</translation>
@@ -3328,6 +3332,7 @@
 <translation id="3473479545200714844">Էկրանի խոշորացույց</translation>
 <translation id="3474218480460386727">Նոր բառերում տառերի առավելագույն քանակը՝ 99</translation>
 <translation id="3474624961160222204">Շարունակել <ph name="NAME" /> հաշվով</translation>
+<translation id="3477772589943384839">Հիշողության ծավալի չափավոր տնտեսում։ Ներդիրները ոչ ակտիվ են դառնում երկար ժամանակահատվածից հետո։</translation>
 <translation id="347785443197175480">Շարունակել թույլ տալ <ph name="HOST" />-ին օգտագործել ձեր տեսախցիկն ու խոսափողը</translation>
 <translation id="3479357084663933762">Դեյտերանոմալիա</translation>
 <translation id="3479552764303398839">Հիմա չէ</translation>
@@ -4051,7 +4056,6 @@
 <translation id="3983586614702900908">սարքեր անհայտ վաճառողից</translation>
 <translation id="3983764759749072418">Այս սարքը հասանելի է Play Խանութի հավելվածներին:</translation>
 <translation id="3983769721878416534">Հապաղումը սեղմելուց առաջ</translation>
-<translation id="3983793589497399077">Սեղմեք օբյեկտի վրա կամ քաշեք այն ցանկացած տեղ՝ Տեսապակու միջոցով որոնելու համար</translation>
 <translation id="3984135167056005094">Չներառել էլ․ հասցե</translation>
 <translation id="3984159763196946143">Չհաջողվեց գործարկել ցուցադրական ռեժիմը</translation>
 <translation id="3984431586879874039">Թույլատրե՞լ, որ այս կայքը տեսնի անվտանգության բանալին</translation>
@@ -4088,6 +4092,7 @@
 <translation id="4010036441048359843">Միացնել տեքստի ընդգծումը</translation>
 <translation id="4010746393007464819">Հասանելի է Debian 12-ի (Bookworm) նորացում</translation>
 <translation id="4010917659463429001">Ձեր էջանիշները ձեր շարժական սարքում օգտագործելու համար <ph name="GET_IOS_APP_LINK" />:</translation>
+<translation id="4012268176861210196">Դուք կարող եք ամրացնել այս գործառույթը՝ այն արագ բացելու համար</translation>
 <translation id="4014432863917027322">Վերանորոգե՞լ «<ph name="EXTENSION_NAME" />»-ը:</translation>
 <translation id="4015163439792426608">Օգտվո՞ւմ եք ընդլայնումներից: <ph name="BEGIN_LINK" />Կառավարեք ձեր ընդլայնումները<ph name="END_LINK" /> մեկ վայրում:</translation>
 <translation id="4016762287427926315">Թույլտվությունները, որոնք տրամադրում եք «<ph name="APP_NAME" />» հավելվածին, նաև կգործեն այս հավելվածի համար։ <ph name="BEGIN_LINK" />Կարգավորումներ<ph name="END_LINK" /></translation>
@@ -4391,6 +4396,7 @@
 <translation id="4261429981378979799">Ընդլայնման թույլտվություններ</translation>
 <translation id="4262004481148703251">Փակել նախազգուշացումը</translation>
 <translation id="4263223596040212967">Ստուգեք ստեղնաշարի դասավորությունը և նորից փորձեք։</translation>
+<translation id="4263470758446311292">Հիշողության ծավալի առավելագույն տնտեսում։ Ներդիրները ոչ ակտիվ են դառնում կարճ ժամանակահատվածից հետո։</translation>
 <translation id="4265096510956307240">Հաստատեք ձեր ինքնությունը</translation>
 <translation id="4265301768135164545">Դուք կարող եք eSIM պրոֆիլը կարգավորել նաև <ph name="BEGIN_LINK" />ձեռքով<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Թարմացումների առկայությունն ստուգելու համար օգտագործեք Ethernet, Wi-Fi կամ տվյալների բջջային փոխանցում:</translation>
@@ -4710,6 +4716,7 @@
 <translation id="4503748371388753124">Ձեր համակարգիչը պարունակում է վստահելի հարթակի մոդուլի (TPM) անվտանգության սարք, որն օգտագործվում է ChromeOS Flex-ում անվտանգության բազմաթիվ կարևոր գործառույթների համար։ Լրացուցիչ տեղեկությունների համար այցելեք Chromebook-ի Օգնության կենտրոն՝ https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Քուքիները թույլատրված են։}=1{Բոլոր քուքիները՝ բացառությամբ 1-ի, թույլատրված են։}one{Բոլոր քուքիները՝ բացառությամբ {COUNT}-ի, թույլատրված են։}other{Բոլոր քուքիները՝ բացառությամբ {COUNT}-ի, թույլատրված են։}}</translation>
 <translation id="4504940961672722399">Օգտագործեք այս ընդլայնումը` սեղմելով այս պատկերակը կամ <ph name="EXTENSION_SHORTCUT" />:</translation>
+<translation id="4505469832694348179">Ներբեռնեք Chrome-ը QR կոդի օգնությամբ և մուտք գործեք ձեր Google հաշիվ։</translation>
 <translation id="450552327874992444">Բառն արդեն ավելացվել է</translation>
 <translation id="4507373251891673233">Դուք արգելափակել եք <ph name="HOST" /> կայքի բոլոր ընդլայնումները</translation>
 <translation id="4507401683427517298">Սեղմեք «Ավելացնել դյուրանցում»</translation>
@@ -5045,6 +5052,7 @@
 <translation id="4768332406694066911">Դուք այս կազմակերպություններից այնպիսի հավաստագրեր ունեք, որոնք ձեզ կարող են նույնականացնել</translation>
 <translation id="4769632191812288342">Դուք ստանում եք ստանդարտ պաշտպանություն</translation>
 <translation id="4770119228883592393">Պահանջվում է թույլտվություն։ Արձագանքելու համար սեղմեք ⌘ + Option + վար սլաք։</translation>
+<translation id="4770755495532014179">Օգտագործեք այս գաղտնաբառը ձեր iPhone-ում</translation>
 <translation id="4773112038801431077">Լինուքսի նորացում</translation>
 <translation id="477548766361111120">Թույլատրել ընդլայնմանը դիտել և փոփոխել այս կայքը</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> սարքը միացվել է</translation>
@@ -5215,6 +5223,7 @@
 <translation id="4890399733764921729">Չհաջողվեց միանալ։ Կողպվել է մեկ այլ բջջային օպերատորի կողմից։</translation>
 <translation id="4890773143211625964">Ցուցադրել տպիչի լրացուցիչ ընտրանքները</translation>
 <translation id="4891089016822695758">Բետա ֆորում</translation>
+<translation id="4891795846939730995">Որպեսզի սարքին նորից թույլատրեք օգտագործել դրանք, մուտքի պահված բանալու օգնությամբ մուտք գործեք կայք կամ հավելված</translation>
 <translation id="4892229439761351791">Կայքը կարող է օգտագործել Bluetooth-ը</translation>
 <translation id="4892328231620815052">Ձեր ընթերցանության ցանկը կարող եք գտնել «Էջանիշներ և ցանկեր» բաժնում</translation>
 <translation id="489258173289528622">Անգործուն ռեժիմի միացում՝ մարտկոցից սնուցման ընթացքում</translation>
@@ -6442,6 +6451,7 @@
 <translation id="5846504156837627898">Կառավարել կայքի թույլտվությունները</translation>
 <translation id="5846749317653566506">Կարգավորեք գունաշտկումը՝ համոզվելու, որ գույները հստակ են</translation>
 <translation id="5846807460505171493">Թարմացումների և հավելվածների տեղադրում։ Շարունակելով՝ դուք համաձայնում եք, որ այս սարքը նույնպես կարող է ավտոմատ ներբեռնել և տեղադրել Google-ի, ձեր օպերատորի և սարքի արտադրողի կողմից տրամադրվող թարմացումները և հավելվածները (նաև բջջային ինտերնետի միջոցով)։ Որոշ հավելվածներում կարող է առաջարկվել վճարովի բովանդակություն։</translation>
+<translation id="5848054741303781539">Կարգավորվում է ձեռքով, տեղադրության տվյալներ չեն օգտագործվում</translation>
 <translation id="5848319660029558352">Բարձրաձայն ընթերցում և տեքստի ձևաչափում</translation>
 <translation id="5849212445710944278">Արդեն ավելացված է</translation>
 <translation id="584945105664698226">Խոսքի արագությունը</translation>
@@ -7139,7 +7149,6 @@
 <translation id="6383382161803538830">Ընթերցման ռեժիմն այս էջում հասանելի չէ</translation>
 <translation id="638418309848716977">Աջակցվող հղումներ</translation>
 <translation id="6384275966486438344">Օգտագործել <ph name="SEARCH_HOST" /> որոնիչը</translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Անանուն խումբ – 1 ներդիր}one{Անանուն խումբ – # ներդիր}other{Անանուն խումբ – # ներդիր}}</translation>
 <translation id="6385149369087767061">Միացեք համացանցին և նորից փորձեք</translation>
 <translation id="6385382178401976503">Քարտ՝ <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Ուշադրություն. բոլոր տվյալների արձանագրումը միացված է։ Ստորև ներկայացված մատյանները կարող են ներառել URL-ներ կամ այլ կարևոր տեղեկություններ։ Ստուգեք և համոզվեք, որ իսկապես ուզում եք ուղարկել այս տեղեկությունները։</translation>
@@ -7473,6 +7482,7 @@
 <translation id="6648911618876616409">Առկա է կարևոր թարմացում։ Տեղադրելու համար մուտք գործեք:</translation>
 <translation id="6649018507441623493">Մի վայրկյան...</translation>
 <translation id="6650206238642452078">Բաժանորդագրվեք ChromeOS համակարգի իրադարձություններին</translation>
+<translation id="6650584564768559994">Հիշողության ծավալի հավասարակշռված տնտեսում։ Ներդիրները ոչ ակտիվ են դառնում օպտիմալ ժամանակահատվածից հետո։</translation>
 <translation id="665061930738760572">Բացել &amp;նոր պատուհանում</translation>
 <translation id="6651237644330755633">Վստահել այս հավաստագրին կայքերի նույնականացման համար</translation>
 <translation id="6651495917527016072">Համաժամացնել Wi-Fi ցանցերը հեռախոսի հետ։ <ph name="LINK_BEGIN" />Իմանալ ավելին<ph name="LINK_END" /></translation>
@@ -7730,6 +7740,7 @@
 <translation id="6831043979455480757">Թարգմանել</translation>
 <translation id="6832218595502288407">Հավասարեցնել ձախ եզրով</translation>
 <translation id="6833479554815567477">Ներդիրը հեռացվեց «<ph name="GROUP_NAME" />» խմբից – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Հավասարակշռված (խորհուրդ է տրվում)</translation>
 <translation id="6835762382653651563">Ձեր <ph name="DEVICE_TYPE" /> սարքը թարմացնելու համար կապակցվեք համացանցին:</translation>
 <translation id="683630338945552556">Օգտագործել և պահել գաղտնաբառերը Google հաշվում</translation>
 <translation id="6839225236531462745">Վկայագիրը ջնջելիս սխալ առաջացավ</translation>
@@ -9378,6 +9389,7 @@
 <translation id="8066444921260601116">Միացման պատուհան</translation>
 <translation id="8070572887926783747">Տեղադրության տվյալների օգտագործման թույլտվություն <ph name="APP_NAME" /> հավելվածի համար</translation>
 <translation id="8070662218171013510">Զգայական արձագանք</translation>
+<translation id="8071033114691184017">Օգտագործեք այս գաղտնաբառը ձեր iPhone-ում</translation>
 <translation id="8071432093239591881">Տպել որպես պատկեր</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Հավելվածների տվյալները բոլոր այն տվյալներն են, որոնք հավելվածը պահել է (մշակողի կարգավորումների հիման վրա): Դրանց թվում կարող են լինել նաև կոնտակտներ, հաղորդագրություններ և լուսանկարներ:<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Պահուստավորված տվյալները տեղ չեն զբաղեցնում ձեր երեխայի Google Drive-ի հիշողությունում:<ph name="END_PARAGRAPH2" />
@@ -9945,6 +9957,7 @@
 <translation id="8482077254400484047">Կառավարեք ոչ ակտիվ ներդիրների տեսքն այստեղ</translation>
 <translation id="8483248364096924578">IP հասցե</translation>
 <translation id="8486666913807228950">Պատճառը՝ «Հարկադրաբար բացել…» ցանկում հայտնաբերվել է «<ph name="REVERT_RULE" />» շրջված կանոնը։</translation>
+<translation id="8487303289354211861">Գործառույթն ամրացված է․ այն բացելու համար օգտագործեք գործիքագոտու նոր կոճակը</translation>
 <translation id="8487678622945914333">Zoom In</translation>
 <translation id="8487699605742506766">Թեժ կետ</translation>
 <translation id="8489156414266187072">Անհատական առաջարկները ցուցադրվում են միայն ձեր հաշվում</translation>
@@ -10344,7 +10357,6 @@
 <translation id="8784626084144195648">Միջինն ըստ խմբերի</translation>
 <translation id="8785622406424941542">Ստիլուս</translation>
 <translation id="8786824282808281903">Այս պատկերակը ցույց է տալիս, որ ձեր երեխան կարող է մատնահետքի միջոցով հաստատել իր ինքնությունը և գնումները։</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Անանուն խումբ – 1 ներդիր}one{Անանուն խումբ – # ներդիր}other{Անանուն խումբ – # ներդիր}}</translation>
 <translation id="8787752878731558379">Օգնեք մեզ բարելավել Chrome-ը. պատմեք մեզ, թե ինչու եք թույլատրել երրորդ կողմի քուքիները</translation>
 <translation id="8789898473175677810">Chrome-ը մասնակցում է բազմակի կայքերում հետագծման նվազեցման և երրորդ կողմի քուքիների աստիճանաբար դադարեցման <ph name="LINK_BEGIN" />ծրագրին<ph name="LINK_END" />։ Սակայն մենք փորձում ենք դա անել պատասխանատու կերպով, քանի որ շատ կայքեր, պատշաճ կերպով աշխատելու համար, օգտագործում են երրորդ կողմի քուքիներ։ Օրինակ՝ շատ կայքեր օգտագործում են երրորդ կողմի քուքիներ՝ մուտքը պարզեցնելու, զետեղված զրույցի և մեկնաբանման համակարգեր աջակցելու, ինչպես նաև վճարային ծառայություններ ապահովելու համար։ Երրորդ կողմի քուքիներից հաճախ օգտվում են գովազդատուները՝ գովազդներն ավելի լավ անհատականացնելու համար։ Դա կարևոր է, քանի որ շատ կայքեր, իրենց ծախսերը հոգալու և իրենց առցանց բովանդակությունը անվճար տրամադրելու համար, գովազդ են ցույց տալիս։</translation>
 <translation id="8791157330927639737">Իմանալ ավելին թարմացման մասին</translation>
@@ -10658,6 +10670,7 @@
 <translation id="9014674417732091912">Տեղափոխվեց տող <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Կրկնօրինակ Google Drive-ում</translation>
 <translation id="9016827136585652292">գաղտնիության էկրանի փոխանջատիչ</translation>
+<translation id="9017055559700464094">Գործառույթն ամրացված է․ այն այժմ հասանելի է գործիքագոտում</translation>
 <translation id="90181708067259747">Սպառման ամսաթիվը՝ <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Տեղադրումն ավարտվեց</translation>
 <translation id="901876615920222131">Սեղմեք խմբի վրա՝ այն նորից բացելու համար</translation>
@@ -10816,6 +10829,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Ավելի արդյունավետ աշխատանքի համար տեղադրեք <ph name="DEVICE_OS" />-ը ներքին սկավառակի վրա։ Դա կարող եք նաև ավելի ուշ անել մուտքի էկրանից։<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Եթե դեռ չեք ուզում տեղադրել այդ համակարգը, կարող եք փորձել այն՝ գործարկելով USB կրիչից։ Սարքի ընթացիկ օպերացիոն համակարգը և տվյալները կպահպանվեն, սակայն արդյունավետությունը և հիշողության ծավալը կարող են նվազել։<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Բացել որպես ամրացված ներդիր</translation>
+<translation id="9122788874051694311">Պահե՞լ մուտքի այս բանալին ինկոգնիտո ռեժիմից դուրս</translation>
 <translation id="9123287046453017203">Ձեր սարքը թարմացված չէ</translation>
 <translation id="9125910124977405374">Հեռացնել <ph name="LANGUAGE_NAME" /> լեզուն ավտոմատ թարգմանվող լեզուների ցանկից</translation>
 <translation id="9126149354162942022">Նշորդի գույնը</translation>
diff --git a/chrome/app/resources/generated_resources_id.xtb b/chrome/app/resources/generated_resources_id.xtb
index 6266d8d..9a837c8 100644
--- a/chrome/app/resources/generated_resources_id.xtb
+++ b/chrome/app/resources/generated_resources_id.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux mungkin tidak memiliki cukup kapasitas disk. Anda dapat meningkatkan kapasitas disk Linux dan mencoba memulihkan lagi di <ph name="LINK_START" />Setelan<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Sedang</translation>
 <translation id="126156426083987769">Terjadi masalah dengan lisensi perangkat mode demo.</translation>
+<translation id="1261885284931493480">Hapus Tab dan Grup?</translation>
 <translation id="1263231323834454256">Daftar bacaan</translation>
 <translation id="1263733306853729545">Gunakan tombol <ph name="MINUS" /> dan <ph name="EQUAL" /> untuk memanggil daftar kandidat</translation>
 <translation id="126387934568812801">Sertakan screenshot ini dan judul tab yang aktif</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">Jaringan Wi-Fi Ditemukan</translation>
 <translation id="1634783886312010422">Apakah Anda telah mengubah sandi ini di <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">Oke</translation>
+<translation id="1636542522761359943">Selamat datang, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Data aplikasi dapat berupa data yang telah disimpan oleh aplikasi (berdasarkan setelan developer), termasuk data seperti kontak, pesan, dan foto. Data cadangan tidak akan mengurangi kuota penyimpanan Drive Anda.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Anda dapat menonaktifkan layanan ini di Setelan.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Akses bookmark di iPhone</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">Untuk menggunakan Pengelola Sandi dengan Rantai Kunci macOS, luncurkan kembali Chromium dan izinkan akses Rantai Kunci. Tab Anda akan dibuka lagi setelah peluncuran kembali.</translation>
 <translation id="1653958716132599769">Kelompokkan tab terkait</translation>
 <translation id="1654580009054503925">Tidak diizinkan menampilkan permintaan</translation>
+<translation id="1654713139320245449">Tujuan transmisi tidak ditemukan. Perlu bantuan?</translation>
 <translation id="1656528038316521561">Opasitas latar belakang</translation>
 <translation id="1657406563541664238">Bantu menjadikan <ph name="PRODUCT_NAME" /> lebih baik dengan mengirim statistik penggunaan dan laporan kerusakan secara otomatis ke Google</translation>
 <translation id="1657937299377480641">Agar dapat login lagi untuk mengakses materi pendidikan, minta izin kepada orang tuamu</translation>
@@ -1641,12 +1644,14 @@
 <translation id="2187895286714876935">Kesalahan Impor Sertifikat Server</translation>
 <translation id="2187906491731510095">Ekstensi diupdate</translation>
 <translation id="2188881192257509750">Buka <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Hapus Grup Tab?</translation>
 <translation id="2190069059097339078">Pembuka Kredensial Wi-Fi</translation>
 <translation id="219008588003277019">Modul Klien Asli: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(kosong)</translation>
 <translation id="2190967441465539539">Tidak dapat mengakses kamera &amp; mikrofon</translation>
 <translation id="2191754378957563929">Aktif</translation>
 <translation id="2192505247865591433">Dari:</translation>
+<translation id="219283042927675668">Tab dalam grup</translation>
 <translation id="2193365732679659387">Setelan kepercayaan</translation>
 <translation id="2194856509914051091">Hal-hal yang perlu dipertimbangkan</translation>
 <translation id="2195331105963583686">Anda tetap dapat menggunakan <ph name="DEVICE_TYPE" /> ini setelah waktu tersebut, tetapi perangkat ini tidak akan lagi mendapatkan update software dan keamanan secara otomatis</translation>
@@ -1870,6 +1875,7 @@
 <translation id="2350133097354918058">Dimuat ulang</translation>
 <translation id="2350182423316644347">Memulai aplikasi...</translation>
 <translation id="235028206512346451">Jika Anda beranjak dari perangkat, layar akan otomatis dikunci. Jika Anda di depan perangkat, layar akan tetap aktif lebih lama. Jika Anda tidak menggunakan layar kunci, perangkat akan masuk mode tidur dan tidak dikunci.</translation>
+<translation id="2352305801620974284">Jika login di perangkat ini, Anda akan mendapatkan sandi dan lainnya dari Akun Google Anda</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Catatan layar kunci disimpan otomatis ke <ph name="LOCK_SCREEN_APP_NAME" />. Catatan terbaru akan tetap berada di layar kunci.</translation>
 <translation id="2353297238722298836">Kamera dan mikrofon diizinkan</translation>
@@ -2080,6 +2086,7 @@
 <translation id="249113932447298600">Maaf, saat ini perangkat <ph name="DEVICE_LABEL" /> tidak didukung.</translation>
 <translation id="2491587035099903063">pratinjau suara untuk <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Menyiapkan permintaan penandatanganan sertifikat</translation>
+<translation id="2492964937550251173">Tutup Tab dan Hapus Grup?</translation>
 <translation id="249330843868392562">Buka setelan text-to-speech</translation>
 <translation id="2494555621641843783">Tidak dapat menginstal Steam</translation>
 <translation id="2495141202137516054">Dari Drive Anda</translation>
@@ -2249,6 +2256,7 @@
 <translation id="262087792756666314">Anda dapat menyematkan fitur ini agar mudah diakses; klik tombol Sematkan di bagian atas panel samping</translation>
 <translation id="2620900772667816510">Resolusi Super Bluetooth</translation>
 <translation id="262154978979441594">Latih model suara Asisten Google</translation>
+<translation id="2622280935687585828">Hapus <ph name="SITE_NAME" /> dari situs yang dinonaktifkan</translation>
 <translation id="26224892172169984">Jangan izinkan situs apa pun menangani protokol</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Mengontrol dan memprogram ulang perangkat MIDI diizinkan</translation>
@@ -2422,6 +2430,7 @@
 <translation id="2743387203779672305">Salin ke papan klip</translation>
 <translation id="274362947316498129">Sebuah aplikasi sedang mencoba mengakses <ph name="DEVICE_NAME" />. Nonaktifkan tombol privasi <ph name="DEVICE_NAME" /> untuk mengizinkan akses.</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313">Pastikan Anda menerima permintaan transmisi di <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Login ke <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Periksa Grammar Dengan Ejaaan</translation>
@@ -2792,6 +2801,7 @@
 <translation id="3021066826692793094">Kupu-kupu</translation>
 <translation id="3021678814754966447">&amp;Lihat Sumber Bingkai</translation>
 <translation id="3021902017511220299">Pemindaian gagal. Tindakan ini diblokir oleh administrator Anda.</translation>
+<translation id="3022068420678496307">Tindakan ini akan menghapus grup dari semua perangkat yang login ke Chrome dengan Akun Google ini.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> akan dihapus dari Chromebook ini dan tidak akan disimpan ke <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Tidak mengerti.</translation>
 <translation id="3023464535986383522">Klik untuk Diucapkan</translation>
@@ -4071,7 +4081,6 @@
 <translation id="3983586614702900908">perangkat dari vendor tak dikenal</translation>
 <translation id="3983764759749072418">Aplikasi Play Store memiliki akses ke perangkat ini.</translation>
 <translation id="3983769721878416534">Penundaan sebelum klik</translation>
-<translation id="3983793589497399077">Klik atau tarik di mana saja untuk menelusuri dengan Lens</translation>
 <translation id="3984135167056005094">Jangan sertakan alamat email</translation>
 <translation id="3984159763196946143">Tidak dapat memulai mode demo</translation>
 <translation id="3984431586879874039">Izinkan situs ini melihat kunci keamanan Anda?</translation>
@@ -4194,6 +4203,7 @@
 <translation id="4078903002989614318">Opsi pengurutan dan daftar</translation>
 <translation id="4079140982534148664">Gunakan fitur Periksa Ejaan yang Disempurnakan</translation>
 <translation id="4082333918978320301">Tidak ada situs yang diizinkan untuk menggunakan mikrofon Anda</translation>
+<translation id="4083735423615351075">Tab akan tetap terbuka di perangkat ini, tetapi grup akan dihapus dari semua perangkat yang login ke Chrome dengan Akun Google ini.</translation>
 <translation id="4084682180776658562">Bookmark</translation>
 <translation id="4084835346725913160">Tutup <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">JavaScript diblokir di halaman ini.</translation>
@@ -4203,6 +4213,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Tampilkan di sebelah kanan</translation>
+<translation id="4088879333319441249">Pisahkan Grup Tab?</translation>
 <translation id="4089235344645910861">Setelan disimpan. Sinkronisasi dimulai.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Mengaktifkan Akses Terverifikasi</translation>
@@ -5684,6 +5695,7 @@
 <translation id="5242724311594467048">Aktifkan "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="5243522832766285132">Coba lagi setelah beberapa saat</translation>
 <translation id="5244234799035360187">OneDrive kini akan muncul di aplikasi File</translation>
+<translation id="5244466461749935369">Simpan dulu</translation>
 <translation id="5244474230056479698">Menyinkronkan dengan <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Mulai gunakan akun sekolah</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> ngadat. Klik balon ini untuk menyalakan kembali apl.</translation>
@@ -5952,6 +5964,7 @@
 <translation id="5453829744223920473">Anak Anda dapat menggunakan semua aplikasi, bookmark, dan materi sekolahnya seperti halnya di kelas. Sekolah menetapkan aturan dasar.</translation>
 <translation id="5454166040603940656">dengan <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Lihat hasil penelusuran lainnya</translation>
+<translation id="5457082343331641453">Tambahkan ke penelusuran</translation>
 <translation id="5457113250005438886">Tidak valid</translation>
 <translation id="5457459357461771897">Membaca dan menghapus foto, musik, serta media lain dari komputer Anda</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6429,6 +6442,7 @@
 <translation id="5816434091619127343">Perubahan printer yang diminta akan membuat printer tidak dapat digunakan.</translation>
 <translation id="581659025233126501">Aktifkan Sinkronisasi</translation>
 <translation id="5817918615728894473">Sandingkan</translation>
+<translation id="5817963443108180228">Selamat datang kembali, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">semua aplikasi</translation>
 <translation id="5821565227679781414">Buat Pintasan</translation>
 <translation id="5824976764713185207">Baca halaman secara otomatis setelah selesai dimuat</translation>
@@ -7029,6 +7043,7 @@
 <translation id="6265159465845424232">Tanyakan sebelum menyalin atau memindahkan file Microsoft ke Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Hapus port</translation>
 <translation id="6266532094411434237">Menghubungkan ke <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Sesuaikan Profil</translation>
 <translation id="6267166720438879315">Pilih sertifikat untuk membuktikan diri Anda ke <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Buka dengan <ph name="APP" /></translation>
 <translation id="6270309713620950855">Pengingat bisukan</translation>
@@ -7167,7 +7182,6 @@
 <translation id="6383382161803538830">Mode baca tidak tersedia di halaman ini</translation>
 <translation id="638418309848716977">Link yang didukung</translation>
 <translation id="6384275966486438344">Ubah setelan penelusuran Anda menjadi: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grup tanpa nama - 1 tab}other{Grup tanpa nama - # tab}}</translation>
 <translation id="6385149369087767061">Sambungkan ke internet dan coba lagi</translation>
 <translation id="6385382178401976503">Kartu: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Peringatan - Logging mendetail diaktifkan; log di bawah dapat berisi URL atau informasi sensitif lainnya. Tinjau dan pastikan apakah Anda ingin mengirim informasi ini.</translation>
@@ -7246,6 +7260,7 @@
 <translation id="6445450263907939268">Jika Anda tidak menginginkan perubahan ini, pulihkan setelan sebelumnya.</translation>
 <translation id="6446213738085045933">Buat pintasan desktop</translation>
 <translation id="6447842834002726250">Cookie</translation>
+<translation id="6449554712554071184">Tindakan ini akan menghapus permanen grup dari perangkat Anda.</translation>
 <translation id="6450876761651513209">Mengubah setelan yang terkait privasi</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> dan 1 tab lainnya}other{<ph name="PAGE_TITLE" /> dan # tab lainnya}}</translation>
 <translation id="6451689256222386810">Jika lupa frasa sandi atau ingin mengubah setelan ini, <ph name="BEGIN_LINK" />reset sinkronisasi<ph name="END_LINK" />.</translation>
@@ -7392,6 +7407,7 @@
 <translation id="6556866813142980365">Urungkan</translation>
 <translation id="6556903358015358733">Tema &amp; Wallpaper</translation>
 <translation id="6557290421156335491">Pintasan saya</translation>
+<translation id="6560061709899140565">Tampilkan sesi transmisi lainnya</translation>
 <translation id="6560151649238390891">Saran disisipkan</translation>
 <translation id="6561726789132298588">masuk</translation>
 <translation id="6562117348069327379">Simpan log sistem ke direktori Download.</translation>
@@ -7481,6 +7497,7 @@
 <translation id="6635674640674343739">Tidak dapat terhubung ke jaringan. Periksa koneksi jaringan Anda, lalu coba lagi.</translation>
 <translation id="663569763553406962">Lihat ekstensi yang dapat membaca atau mengubah situs</translation>
 <translation id="6635944431854494329">Pemilik dapat mengontrol fitur ini dari Setelan &gt; Lanjutan &gt; Otomatis kirimkan data diagnostik dan penggunaan ke Google.</translation>
+<translation id="6636572589916466933">Terima permintaan transmisi di <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Jelajahi setelan lainnya di bawah atau selesaikan sekarang</translation>
 <translation id="6639554308659482635">Memori SQLite</translation>
 <translation id="6640268266988685324">Tab Terbuka</translation>
@@ -8166,6 +8183,7 @@
 <translation id="715396040729904728">peluncur + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Sampaikan masukan atau jelaskan masalah Anda. Jika memungkinkan, sertakan langkah-langkah untuk merekonstruksi masalah.</translation>
 <translation id="7154130902455071009">Ubah halaman awal Anda menjadi: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Dapatkan video yang berkualitas lebih baik dan hemat baterai. Video hanya akan diputar di layar yang kompatibel untuk Cast.</translation>
 <translation id="7159953856712257647">Diinstal secara default</translation>
 <translation id="7160182524506337403">Anda kini dapat melihat notifikasi ponsel Anda</translation>
 <translation id="7165263843655074092">Anda mendapatkan perlindungan keamanan standar di perangkat ini</translation>
@@ -9023,6 +9041,7 @@
 <translation id="7788948939674438635">Jangan izinkan situs mengunci keyboard Anda</translation>
 <translation id="7789963078219276159">Latar belakang halaman awal telah diubah menjadi <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">OCR PDF</translation>
+<translation id="7790737481627460475">File di Chromebook ini</translation>
 <translation id="7791269138074599214">Metode input</translation>
 <translation id="7791429245559955092">Aplikasi ini akan diinstal di profil Chrome yang saat ini Anda gunakan</translation>
 <translation id="7791436592012979144">Scroll terbalik diaktifkan</translation>
@@ -9052,6 +9071,7 @@
 <translation id="7810202088502699111">Pop-up diblokir di halaman ini.</translation>
 <translation id="7810367892333449285">Entri Anda harus memiliki format <ph name="LPA_0" />$<ph name="LPA_1" />alamat SM-DP+<ph name="LPA_2" />$<ph name="LPA_3" />ID kecocokan opsional<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Coba lagi atau pilih dari salah satu tema yang dibuat sebelumnya di bawah.</translation>
+<translation id="7814090115158024843">Jangan pernah tawarkan bantuan penulisan di situs ini</translation>
 <translation id="7814458197256864873">&amp;Salin</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Edit pintasan <ph name="SHORTCUT" /> untuk <ph name="EXTENSION_NAME" /></translation>
@@ -9283,8 +9303,10 @@
 <translation id="7974936243149753750">Pemindaian berlebih</translation>
 <translation id="7975504106303186033">Anda harus mendaftarkan perangkat Chrome Education ini ke akun pendidikan. Untuk mendaftar akun baru, buka g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Memperingatkan Anda jika Anda menggunakan sandi yang telah dibobol dalam pelanggaran data.</translation>
+<translation id="797824194429476746">Tab akan tetap terbuka di perangkat ini, tetapi grup akan dihapus secara permanen.</translation>
 <translation id="7978412674231730200">Kunci pribadi</translation>
 <translation id="7978450511781612192">Tindakan ini akan membuat Anda logout dari Akun Google. Bookmark, histori, sandi, dan lainnya tidak akan disinkronkan lagi.</translation>
+<translation id="7980066177668669492">ASCII yang dienkode dengan base64, beberapa sertifikat</translation>
 <translation id="7980084013673500153">ID Aset: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Gunakan kunci sandi tersimpan untuk <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Tampilkan pop-up EID perangkat dan Kode QR</translation>
@@ -9697,6 +9719,7 @@
 <translation id="8276242035951017580">Tidak ada aplikasi yang diizinkan menggunakan kamera Anda</translation>
 <translation id="8276560076771292512">Kosongkan Cache dan Muat Ulang Keras</translation>
 <translation id="8276850948802942358">Pelajari lebih lanjut cara memberikan izin sementara kepada situs untuk menggunakan cookie pihak ketiga</translation>
+<translation id="8277907305629781277">Anda membuat kunci sandi ini pada <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Situs dalam bahasa Anda</translation>
 <translation id="828180235270931531">Printer lain yang tersedia</translation>
 <translation id="8281886186245836920">Lewati</translation>
@@ -10375,7 +10398,6 @@
 <translation id="8784626084144195648">Rata-rata dalam Sampah</translation>
 <translation id="8785622406424941542">Stilus</translation>
 <translation id="8786824282808281903">Jika anak Anda melihat ikon ini, artinya sidik jari dapat digunakan untuk identifikasi atau untuk menyetujui pembelian.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grup Tanpa Nama - 1 Tab}other{Grup Tanpa Nama - # Tab}}</translation>
 <translation id="8787752878731558379">Bantu kami meningkatkan Chrome dengan memberi tahu kami alasan Anda mengizinkan cookie pihak ketiga</translation>
 <translation id="8789898473175677810">Chrome adalah bagian dari <ph name="LINK_BEGIN" />upaya kolaboratif<ph name="LINK_END" /> untuk mengurangi pelacakan lintas situs dan menghentikan penggunaan cookie pihak ketiga. Namun, kami mencoba melakukannya secara bertanggung jawab karena banyak situs mengandalkan cookie pihak ketiga agar dapat berfungsi sebagaimana mestinya. Misalnya, banyak situs menggunakan cookie pihak ketiga untuk menyederhanakan proses login, mendukung sistem chat dan komentar tersemat, serta untuk layanan pembayaran. Selain itu, pengiklan sering menggunakan cookie pihak ketiga untuk mempersonalisasi iklan dengan lebih baik. Hal tersebut penting karena situs sering kali mengandalkan iklan untuk membantu membayar pengeluaran dan agar konten online tetap dapat diakses tanpa biaya.</translation>
 <translation id="8791157330927639737">Pelajari lebih lanjut cara mengupdate</translation>
@@ -10610,6 +10632,7 @@
 <translation id="8962863356073277855">Format URL harus berupa https://www.example.com</translation>
 <translation id="8962918469425892674">Situs ini menggunakan sensor gerakan atau sensor cahaya.</translation>
 <translation id="8963117664422609631">Buka setelan situs</translation>
+<translation id="8964795217937248330">Tutup tab dan hapus grup?</translation>
 <translation id="8965037249707889821">Masukkan sandi lama</translation>
 <translation id="8966809848145604011">Profil Lainnya</translation>
 <translation id="8967427617812342790">Tambahkan ke daftar bacaan</translation>
@@ -11043,6 +11066,7 @@
 <translation id="979345485590886759">Situs dapat meminta untuk mengunci kursor mouse Anda</translation>
 <translation id="980731642137034229">Tombol menu tindakan</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Halo <ph name="PROFILE_NAME" />,</translation>
 <translation id="983192555821071799">Tutup semua tab</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - Perekaman kamera dan mikrofon</translation>
 <translation id="984275831282074731">Metode pembayaran</translation>
diff --git a/chrome/app/resources/generated_resources_is.xtb b/chrome/app/resources/generated_resources_is.xtb
index 9d1bfa3..10f845b 100644
--- a/chrome/app/resources/generated_resources_is.xtb
+++ b/chrome/app/resources/generated_resources_is.xtb
@@ -4072,7 +4072,6 @@
 <translation id="3983586614702900908">tæki frá óþekktum framleiðanda</translation>
 <translation id="3983764759749072418">Play Store forrit hafa aðgang að þessu tæki.</translation>
 <translation id="3983769721878416534">Bið á undan smelli</translation>
-<translation id="3983793589497399077">Smelltu eða dragðu hvert sem er til að leita með Linsu</translation>
 <translation id="3984135167056005094">Ekki taka netfang með</translation>
 <translation id="3984159763196946143">Ekki tókst að setja upp prufustillingu</translation>
 <translation id="3984431586879874039">Viltu leyfa þessu vefsvæði að sjá öryggislykilinn þinn?</translation>
@@ -7168,7 +7167,6 @@
 <translation id="6383382161803538830">Lesstilling er ekki í boði á þessari síðu</translation>
 <translation id="638418309848716977">Studdir tenglar</translation>
 <translation id="6384275966486438344">Breyta leitarstillingunum þínum í: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Hópur án heitis - 1 flipi}one{Hópur án heitis - # flipi}other{Hópur án heitis - # flipar}}</translation>
 <translation id="6385149369087767061">Tengstu internetinu og reyndu aftur</translation>
 <translation id="6385382178401976503">Kort: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Viðvörun – kveikt er á ítarlegri skráningu. Notkunarskrár gætu innihaldið vefslóðir eða aðrar viðkvæmar upplýsingar. Farðu yfir gögnin og gakktu úr skugga um að þú viljir senda þessar upplýsingar.</translation>
@@ -10378,7 +10376,6 @@
 <translation id="8784626084144195648">Uppsafnað meðaltal</translation>
 <translation id="8785622406424941542">Penni</translation>
 <translation id="8786824282808281903">Þegar barnið sér þetta tákn er hægt að nota fingrafar til auðkenningar eða til að samþykkja kaup.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Hópur án heitis - 1 flipi}one{Hópur án heitis - # flipi}other{Hópur án heitis - # flipar}}</translation>
 <translation id="8787752878731558379">Hjálpaðu okkur að bæta Chrome með því að segja okkur hvers vegna þú leyfðir fótspor þriðju aðila</translation>
 <translation id="8789898473175677810">Chrome tileinkar sér <ph name="LINK_BEGIN" />sameiginlega viðleitni<ph name="LINK_END" /> til að draga úr rakningu á milli vefsvæða og hætta notkun fótspora þriðja aðila. Við viljum þó framkvæma þetta á ábyrgan hátt þar sem mörg vefsvæði reiða sig á notkun fótspora þriðja aðila til að virka sem skyldi. Mörg vefsvæði nota til dæmis fótspor þriðja aðila til að einfalda innskráningu, styðja innfellt spjall og athugasemdakerfi og til að bjóða upp á greiðsluþjónustu. Í mörgum tilfellum nota auglýsendur einnig fótspor þriðja aðila til að sérsníða auglýsingar enn frekar. Það skiptir máli vegna þess að vefsvæði reiða sig oft á auglýsingatekjur til að greiða fyrir kostnað og bjóða þannig upp á gjaldfrjálst efni.</translation>
 <translation id="8791157330927639737">Nánar um uppfærslu</translation>
diff --git a/chrome/app/resources/generated_resources_it.xtb b/chrome/app/resources/generated_resources_it.xtb
index 8fb316a..422e979c 100644
--- a/chrome/app/resources/generated_resources_it.xtb
+++ b/chrome/app/resources/generated_resources_it.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux potrebbe non avere sufficiente spazio su disco a disposizione. Puoi aumentare lo spazio su disco di Linux e riprovare il ripristino nelle <ph name="LINK_START" />Impostazioni<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Media</translation>
 <translation id="126156426083987769">Si è verificato un problema con le licenze del dispositivo per la modalità demo.</translation>
+<translation id="1261885284931493480">Rimuovere le schede ed eliminare il gruppo?</translation>
 <translation id="1263231323834454256">Elenco di lettura</translation>
 <translation id="1263733306853729545">Utilizza i tasti <ph name="MINUS" /> e <ph name="EQUAL" /> per il paging di un elenco di candidati</translation>
 <translation id="126387934568812801">Includi questo screenshot e i titoli delle schede aperte</translation>
@@ -876,6 +877,7 @@
 <translation id="1634224622052500893">Rete Wi-Fi trovata</translation>
 <translation id="1634783886312010422">Hai già modificato questa password su <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Ti diamo il benvenuto, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Per dati dell'app si intende qualsiasi dato salvato in un'app (in base alle impostazioni sviluppatore), inclusi dati come contatti, messaggi e foto. I dati di backup non incidono sulla tua quota di spazio di archiviazione di Drive.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Puoi disattivare questo servizio nelle Impostazioni.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Ricevi il preferito sull'iPhone</translation>
@@ -912,6 +914,7 @@
 <translation id="1652862280638399816">Per usare Gestore delle password con il Portachiavi di macOS, riavvia Chromium e consenti l'accesso al Portachiavi. Le schede verranno riaperte dopo il riavvio.</translation>
 <translation id="1653958716132599769">Raggruppa le schede correlate</translation>
 <translation id="1654580009054503925">Non autorizzate a mostrare richieste</translation>
+<translation id="1654713139320245449">Nessuna destinazione per la trasmissione. Serve aiuto?</translation>
 <translation id="1656528038316521561">Opacità sfondo</translation>
 <translation id="1657406563541664238">Aiutaci a migliorare <ph name="PRODUCT_NAME" /> inviando automaticamente a Google le statistiche sull'utilizzo e segnalazioni sugli arresti anomali</translation>
 <translation id="1657937299377480641">Per eseguire di nuovo l'accesso per accedere a risorse didattiche, chiedi l'autorizzazione a uno dei tuoi genitori</translation>
@@ -1631,12 +1634,14 @@
 <translation id="2187895286714876935">Errore di importazione del certificato del server</translation>
 <translation id="2187906491731510095">Estensioni aggiornate</translation>
 <translation id="2188881192257509750">Apri <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Eliminare il gruppo di schede?</translation>
 <translation id="2190069059097339078">WiFi Credentials Getter</translation>
 <translation id="219008588003277019">Modulo Native Client: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(vuoto)</translation>
 <translation id="2190967441465539539">Impossibile accedere alla fotocamera e al microfono</translation>
 <translation id="2191754378957563929">On</translation>
 <translation id="2192505247865591433">Da:</translation>
+<translation id="219283042927675668">Schede nel gruppo</translation>
 <translation id="2193365732679659387">Impostazioni di attendibilità</translation>
 <translation id="2194856509914051091">Aspetti da considerare</translation>
 <translation id="2195331105963583686">Dopo tale periodo, potrai continuare a usare questo dispositivo <ph name="DEVICE_TYPE" />, che però non riceverà più automaticamente aggiornamenti software e di sicurezza.</translation>
@@ -1857,6 +1862,7 @@
 <translation id="2350133097354918058">Ricaricata</translation>
 <translation id="2350182423316644347">Inizializzazione dell'applicazione in corso...</translation>
 <translation id="235028206512346451">Se ti allontani dal dispositivo, lo schermo si blocca automaticamente. Quando invece sei di fronte al dispositivo, lo schermo rimane attivo più a lungo. Se non usi una schermata di blocco, il dispositivo non verrà bloccato ma verrà attivata la modalità di sospensione.</translation>
+<translation id="2352305801620974284">Se accedi su questo dispositivo, puoi usare le password e altri dati del tuo Account Google</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Le note sulla schermata di blocco vengono salvate automaticamente nell'app <ph name="LOCK_SCREEN_APP_NAME" />. La nota più recente rimarrà sulla schermata di blocco.</translation>
 <translation id="2353297238722298836">Videocamera e microfono consentiti</translation>
@@ -2067,6 +2073,7 @@
 <translation id="249113932447298600">Spiacenti, il dispositivo <ph name="DEVICE_LABEL" /> non è al momento supportato.</translation>
 <translation id="2491587035099903063">anteprima della voce in <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Preparazione richiesta di firma certificato</translation>
+<translation id="2492964937550251173">Chiudere le schede ed eliminare il gruppo?</translation>
 <translation id="249330843868392562">Apri impostazioni di sintesi vocale</translation>
 <translation id="2494555621641843783">Impossibile installare Steam</translation>
 <translation id="2495141202137516054">Dal tuo Drive</translation>
@@ -2236,6 +2243,7 @@
 <translation id="262087792756666314">Puoi bloccare questa funzionalità per un facile accesso; fai clic sul pulsante Blocca nella parte superiore del riquadro laterale.</translation>
 <translation id="2620900772667816510">Super risoluzione Bluetooth</translation>
 <translation id="262154978979441594">Imposta il modello vocale dell'Assistente Google</translation>
+<translation id="2622280935687585828">Rimuovi <ph name="SITE_NAME" /> dai siti disattivati</translation>
 <translation id="26224892172169984">Non consentire ad alcun sito di gestire i protocolli</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Controllo e riprogrammazione dei dispositivi MIDI consentiti</translation>
@@ -2409,6 +2417,7 @@
 <translation id="2743387203779672305">Copia negli appunti</translation>
 <translation id="274362947316498129">Un'app sta tentando di accedere alla <ph name="DEVICE_NAME" />. Disattiva l'opzione relativa alla privacy della <ph name="DEVICE_NAME" /> per consentire l'accesso.</translation>
 <translation id="2745080116229976798">Subordinazione qualificata Microsoft</translation>
+<translation id="2747853844543618313">Assicurati di accettare la richiesta di trasmissione su <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Accedi a <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Controllo ortografia e grammatica</translation>
@@ -2779,6 +2788,7 @@
 <translation id="3021066826692793094">Farfalla</translation>
 <translation id="3021678814754966447">&amp;Visualizza sorgente frame</translation>
 <translation id="3021902017511220299">Analisi non riuscita. Questa azione è bloccata dall'amministratore.</translation>
+<translation id="3022068420678496307">Il gruppo verrà eliminato da tutti i dispositivi su cui è stato eseguito l'accesso a Chrome con questo Account Google.</translation>
 <translation id="3022361196600037287">Il dispositivo <ph name="DEVICE" /> verrà rimosso da questo Chromebook e non verrà salvato in <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Non ho capito.</translation>
 <translation id="3023464535986383522">Seleziona per ascoltare</translation>
@@ -4057,7 +4067,6 @@
 <translation id="3983586614702900908">dispositivi di un fornitore sconosciuto</translation>
 <translation id="3983764759749072418">Le applicazioni del Play Store hanno accesso a questo dispositivo.</translation>
 <translation id="3983769721878416534">Ritardo prima del clic</translation>
-<translation id="3983793589497399077">Fai clic o trascina in un punto qualsiasi per cercare con Lens</translation>
 <translation id="3984135167056005094">Non includere l'indirizzo email</translation>
 <translation id="3984159763196946143">Impossibile avviare la modalità demo</translation>
 <translation id="3984431586879874039">Vuoi consentire a questo sito di rilevare il tuo token di sicurezza?</translation>
@@ -4180,6 +4189,7 @@
 <translation id="4078903002989614318">Opzioni per ordinamento ed elenchi</translation>
 <translation id="4079140982534148664">Usa il controllo ortografico avanzato</translation>
 <translation id="4082333918978320301">Nessun sito web autorizzato a utilizzare il microfono</translation>
+<translation id="4083735423615351075">Le schede rimarranno aperte su questo dispositivo, ma il gruppo verrà eliminato da tutti i dispositivi su cui è stato eseguito l'accesso a Chrome con questo Account Google.</translation>
 <translation id="4084682180776658562">Aggiungi ai Preferiti</translation>
 <translation id="4084835346725913160">Chiudi <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">JavaScript è stato bloccato in questa pagina.</translation>
@@ -4189,6 +4199,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Mostra a destra</translation>
+<translation id="4088879333319441249">Separare il gruppo di schede?</translation>
 <translation id="4089235344645910861">Impostazioni salvate. Sincronizzazione avviata.</translation>
 <translation id="4089817585533500276">Maiusc + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Attiva Accesso verificato</translation>
@@ -5670,6 +5681,7 @@
 <translation id="5242724311594467048">Attivare "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="5243522832766285132">Riprova tra qualche istante</translation>
 <translation id="5244234799035360187">OneDrive comparirà ora nell'app File</translation>
+<translation id="5244466461749935369">Mantieni per ora</translation>
 <translation id="5244474230056479698">Sincronizzazione con <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Inizia a usare un account della scuola</translation>
 <translation id="5246282308050205996">Arresto anomalo di <ph name="APP_NAME" />. Fai clic su questo fumetto per riavviare l'applicazione.</translation>
@@ -5938,6 +5950,7 @@
 <translation id="5453829744223920473">Tuo figlio può utilizzare tutte le app, i preferiti e le risorse della scuola proprio come in classe. La scuola stabilisce le regole di base.</translation>
 <translation id="5454166040603940656">con <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Mostra altri risultati di ricerca</translation>
+<translation id="5457082343331641453">Aggiungi alla tua ricerca</translation>
 <translation id="5457113250005438886">Non validi</translation>
 <translation id="5457459357461771897">Lettura ed eliminazione di foto, musica e altri contenuti multimediali del computer</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6413,6 +6426,7 @@
 <translation id="5816434091619127343">Le modifiche richieste renderebbero la stampante inutilizzabile.</translation>
 <translation id="581659025233126501">Attiva la sincronizzazione</translation>
 <translation id="5817918615728894473">Accoppia</translation>
+<translation id="5817963443108180228">Ti diamo il bentornato <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">tutte le applicazioni</translation>
 <translation id="5821565227679781414">Crea scorciatoia</translation>
 <translation id="5824976764713185207">Leggi automaticamente la pagina al termine del caricamento</translation>
@@ -7012,6 +7026,7 @@
 <translation id="6265159465845424232">Chiedi prima di copiare o spostare i file Microsoft su Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Rimuovi porta</translation>
 <translation id="6266532094411434237">Connessione a <ph name="DEVICE" /> in corso…</translation>
+<translation id="6266984048393265562">Personalizza profilo</translation>
 <translation id="6267166720438879315">Seleziona un certificato per autenticarti a <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Apri con <ph name="APP" /></translation>
 <translation id="6270309713620950855">Avviso di microfono spento</translation>
@@ -7150,7 +7165,6 @@
 <translation id="6383382161803538830">Modalità di lettura non disponibile in questa pagina</translation>
 <translation id="638418309848716977">Link supportati</translation>
 <translation id="6384275966486438344">Modifica delle impostazioni di ricerca per: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Gruppo senza nome - 1 scheda}other{Gruppo senza nome - # schede}}</translation>
 <translation id="6385149369087767061">Connettiti a Internet e riprova</translation>
 <translation id="6385382178401976503">Scheda: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Avviso: è attiva la funzione di registrazione dettagliata. I log indicati di seguito potrebbero includere URL o altre informazioni sensibili. Controlla e assicurati di voler inviare tali dati.</translation>
@@ -7229,6 +7243,7 @@
 <translation id="6445450263907939268">Se non volevi apportare queste modifiche, puoi ripristinare le impostazioni precedenti.</translation>
 <translation id="6446213738085045933">Crea collegamento sul desktop</translation>
 <translation id="6447842834002726250">Cookie</translation>
+<translation id="6449554712554071184">Il gruppo verrà eliminato definitivamente dal tuo dispositivo.</translation>
 <translation id="6450876761651513209">Modifica delle impostazioni relative alla privacy</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> e 1 altra scheda}other{<ph name="PAGE_TITLE" /> e altre # schede}}</translation>
 <translation id="6451689256222386810">Se non ricordi la passphrase o vuoi modificare questa impostazione, <ph name="BEGIN_LINK" />reimposta la sincronizzazione<ph name="END_LINK" />.</translation>
@@ -7375,6 +7390,7 @@
 <translation id="6556866813142980365">Ripeti</translation>
 <translation id="6556903358015358733">Tema e sfondo</translation>
 <translation id="6557290421156335491">Le mie scorciatoie</translation>
+<translation id="6560061709899140565">Mostra altre sessioni di trasmissione</translation>
 <translation id="6560151649238390891">Suggerimento inserito</translation>
 <translation id="6561726789132298588">invio</translation>
 <translation id="6562117348069327379">Archivia i log di sistema nella directory Download.</translation>
@@ -7464,6 +7480,7 @@
 <translation id="6635674640674343739">Impossibile stabilire una connessione di rete. Controlla la connessione di rete e riprova.</translation>
 <translation id="663569763553406962">Scopri quali estensioni possono leggere o modificare un sito</translation>
 <translation id="6635944431854494329">Il proprietario può controllare questa funzionalità dalla sezione Impostazioni &gt; Avanzate &gt; Invia automaticamente a Google dati di diagnostica e utilizzo.</translation>
+<translation id="6636572589916466933">Accetta la richiesta di trasmissione su <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Scopri altre impostazioni qui sotto oppure termina ora</translation>
 <translation id="6639554308659482635">Memoria SQLite</translation>
 <translation id="6640268266988685324">Scheda aperta</translation>
@@ -8149,6 +8166,7 @@
 <translation id="715396040729904728">Avvio app + Maiusc + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Condividi il tuo feedback o descrivi il problema. Se possibile, includi i passaggi per riprodurre il problema.</translation>
 <translation id="7154130902455071009">Cambio della pagina iniziale con: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Migliora la qualità dei video e fai durare di più la batteria. I video verranno riprodotti soltanto sullo schermo compatibile con Google Cast.</translation>
 <translation id="7159953856712257647">Estensione installata per impostazione predefinita</translation>
 <translation id="7160182524506337403">Ora puoi visualizzare le notifiche del tuo telefono</translation>
 <translation id="7165263843655074092">Otterrai la protezione di sicurezza standard su questo dispositivo</translation>
@@ -9007,6 +9025,7 @@
 <translation id="7788948939674438635">Non consentire ai siti di bloccare la tastiera</translation>
 <translation id="7789963078219276159">Lo sfondo della pagina iniziale è ora <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">OCR per PDF</translation>
+<translation id="7790737481627460475">File su questo Chromebook</translation>
 <translation id="7791269138074599214">Metodo di immissione</translation>
 <translation id="7791429245559955092">Questa applicazione verrà installata sul profilo Chrome attualmente in uso</translation>
 <translation id="7791436592012979144">Scorrimento inverso attivato</translation>
@@ -9036,6 +9055,7 @@
 <translation id="7810202088502699111">I popup sono stati bloccati in questa pagina.</translation>
 <translation id="7810367892333449285">Il formato dell'elemento dovrebbe essere <ph name="LPA_0" />$<ph name="LPA_1" />indirizzo SM-DP+<ph name="LPA_2" />$<ph name="LPA_3" />ID corrispondenza facoltativo<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Riprova o seleziona uno dei temi generati in precedenza riportati di seguito.</translation>
+<translation id="7814090115158024843">Non offrire mai assistenza per la scrittura su questi siti</translation>
 <translation id="7814458197256864873">&amp;Copia</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Modifica la scorciatoia <ph name="SHORTCUT" /> per <ph name="EXTENSION_NAME" /></translation>
@@ -9267,8 +9287,10 @@
 <translation id="7974936243149753750">Overscan</translation>
 <translation id="7975504106303186033">Devi registrare questo dispositivo Chrome Education in un account Education. Per creare un nuovo account, visita la pagina g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Ricevi un avviso se utilizzi una password che è stata compromessa a causa di una violazione dei dati.</translation>
+<translation id="797824194429476746">Le schede rimarranno aperte su questo dispositivo, ma il gruppo verrà eliminato definitivamente.</translation>
 <translation id="7978412674231730200">Chiave privata</translation>
 <translation id="7978450511781612192">I tuoi Account Google verranno scollegati e verrà interrotta la sincronizzazione di preferiti, cronologia, password e altro.</translation>
+<translation id="7980066177668669492">ASCII con codifica Base64, più certificati</translation>
 <translation id="7980084013673500153">ID asset: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Usa una passkey salvata per <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Mostra popup con EID dispositivo e codice QR</translation>
@@ -9681,6 +9703,7 @@
 <translation id="8276242035951017580">Nessuna app è autorizzata a utilizzare la fotocamera</translation>
 <translation id="8276560076771292512">Svuota la cache e ricarica manualmente</translation>
 <translation id="8276850948802942358">Scopri di più su come concedere a un sito l'autorizzazione temporanea a utilizzare i cookie di terze parti</translation>
+<translation id="8277907305629781277">Hai creato questa passkey il giorno <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Siti web nelle tue lingue</translation>
 <translation id="828180235270931531">Altre stampanti disponibili</translation>
 <translation id="8281886186245836920">Salta</translation>
@@ -10359,7 +10382,6 @@
 <translation id="8784626084144195648">Media raccolta</translation>
 <translation id="8785622406424941542">Stilo</translation>
 <translation id="8786824282808281903">Quando tuo figlio vede questa icona può usare l'impronta per l'identificazione o per approvare gli acquisti.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Gruppo senza nome - 1 scheda}other{Gruppo senza nome - # schede}}</translation>
 <translation id="8787752878731558379">Aiutaci a migliorare Chrome spiegandoci perché hai consentito i cookie di terze parti</translation>
 <translation id="8789898473175677810">Chrome fa parte di un <ph name="LINK_BEGIN" />impegno collaborativo<ph name="LINK_END" /> per ridurre il monitoraggio tra siti ed eliminare gradualmente l'utilizzo dei cookie di terze parti. Stiamo cercando però di farlo in modo responsabile, perché molti siti si affidano ai cookie di terze parti per funzionare come previsto. Ad esempio, molti siti utilizzano cookie di terze parti per semplificare l'accesso, supportare i sistemi di chat e commenti incorporati e per i servizi di pagamento. Inoltre, gli inserzionisti spesso utilizzano cookie di terze parti per personalizzare meglio gli annunci. Questo aspetto è importante perché i siti spesso si affidano agli annunci per pagare le spese e mantenere i contenuti online senza costi.</translation>
 <translation id="8791157330927639737">Scopri di più sugli aggiornamenti</translation>
@@ -10594,6 +10616,7 @@
 <translation id="8962863356073277855">Il formato dell'URL deve essere https://www.example.com</translation>
 <translation id="8962918469425892674">Questo sito usa sensori di movimento o della luce.</translation>
 <translation id="8963117664422609631">Vai alle Impostazioni sito</translation>
+<translation id="8964795217937248330">Chiudere le schede ed eliminare il gruppo?</translation>
 <translation id="8965037249707889821">Inserisci vecchia password</translation>
 <translation id="8966809848145604011">Altri profili</translation>
 <translation id="8967427617812342790">Aggiungi all'elenco di lettura</translation>
@@ -11027,6 +11050,7 @@
 <translation id="979345485590886759">I siti possono chiedere di bloccare il puntatore del mouse</translation>
 <translation id="980731642137034229">Pulsante del menu azione</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Ciao <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Chiudi tutte le schede</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - Registrazione con videocamera e microfono</translation>
 <translation id="984275831282074731">Metodi di pagamento</translation>
diff --git a/chrome/app/resources/generated_resources_iw.xtb b/chrome/app/resources/generated_resources_iw.xtb
index 188d25c7..2cd4ed3d 100644
--- a/chrome/app/resources/generated_resources_iw.xtb
+++ b/chrome/app/resources/generated_resources_iw.xtb
@@ -4070,7 +4070,6 @@
 <translation id="3983586614702900908">מכשירים מספק לא ידוע</translation>
 <translation id="3983764759749072418">‏לאפליקציות מחנות Play יש גישה למכשיר הזה.</translation>
 <translation id="3983769721878416534">השהייה לפני לחיצה</translation>
-<translation id="3983793589497399077">‏כדי לחפש באמצעות Lens, לוחצים או גוררים במקום כלשהו</translation>
 <translation id="3984135167056005094">אין לכלול כתובת אימייל</translation>
 <translation id="3984159763196946143">לא ניתן היה להתחיל מצב הדגמה</translation>
 <translation id="3984431586879874039">האם לאפשר לאתר לראות את מפתח האבטחה שלך?</translation>
@@ -7167,7 +7166,6 @@
 <translation id="6383382161803538830">מצב הקריאה לא זמין בדף הזה</translation>
 <translation id="638418309848716977">קישורים נתמכים</translation>
 <translation id="6384275966486438344">שינוי הגדרות החיפוש שלך ל: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{קבוצה ללא שם – כרטיסייה אחת}one{קבוצה ללא שם – # כרטיסיות}two{קבוצה ללא שם – # כרטיסיות}other{קבוצה ללא שם – # כרטיסיות}}</translation>
 <translation id="6385149369087767061">יש להתחבר לאינטרנט ולנסות שוב</translation>
 <translation id="6385382178401976503">כרטיס: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">‏אזהרה - הרישום המפורט פועל. יומני הרישום שבהמשך עשויים לכלול כתובות URL או מידע רגיש אחר. יש לעיין בהם כדי לוודא שאין לך בעיה לשלוח את המידע הזה.</translation>
@@ -10383,7 +10381,6 @@
 <translation id="8784626084144195648">ממוצע צבור</translation>
 <translation id="8785622406424941542">סטיילוס</translation>
 <translation id="8786824282808281903">כשהסמל הזה יוצג לילד או לילדה, ניתן יהיה להשתמש בטביעת אצבע לצורך זיהוי או כדי לאשר רכישות.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{קבוצה ללא שם – כרטיסייה אחת}one{קבוצה ללא שם – # כרטיסיות}two{קבוצה ללא שם – # כרטיסיות}other{קבוצה ללא שם – # כרטיסיות}}</translation>
 <translation id="8787752878731558379">‏רוצה לעזור לנו לשפר את Chrome? יש לך אפשרות לספר לנו למה אישרת שימוש בקובצי cookie של צד שלישי</translation>
 <translation id="8789898473175677810">‏הצוות של Chrome הוא חלק מ<ph name="LINK_BEGIN" />מאמץ משותף<ph name="LINK_END" /> לצמצום המעקב באתרים שונים ולהפסקת השימוש בקובצי Cookie של צד שלישי. עם זאת, אנחנו מנסים לעשות את זה בצורה אחראית, כי הרבה אתרים מסתמכים על קובצי Cookie של צד שלישי כדי לפעול בצורה תקינה. לדוגמה, אתרים רבים משתמשים בקובצי Cookie של צד שלישי כדי לפשט את הכניסה לחשבון, לתמוך במערכות מוטמעות של צ'אט ותגובות ולספק שירותי תשלום. בנוסף, מפרסמים משתמשים לעיתים קרובות בקובצי Cookie של צד שלישי כדי להתאים אישית מודעות בצורה טובה יותר. זה חשוב כי אתרים מסתמכים לעיתים קרובות על מודעות כדי לשלם על ההוצאות שלהם ולהשאיר את התוכן שלהם אונליין זמין בחינם.</translation>
 <translation id="8791157330927639737">מידע נוסף על עדכון</translation>
diff --git a/chrome/app/resources/generated_resources_ja.xtb b/chrome/app/resources/generated_resources_ja.xtb
index d45a77c..ae34d33 100644
--- a/chrome/app/resources/generated_resources_ja.xtb
+++ b/chrome/app/resources/generated_resources_ja.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux のディスク空き容量が不足している可能性があります。Linux のディスク空き容量を増やしてから、[<ph name="LINK_START" />設定<ph name="LINK_END" />] でもう一度復元をお試しください。</translation>
 <translation id="1261380933454402672">弱め</translation>
 <translation id="126156426083987769">デモモードデバイスライセンスで問題が発生しました。</translation>
+<translation id="1261885284931493480">タブとグループを削除しますか?</translation>
 <translation id="1263231323834454256">リーディング リスト</translation>
 <translation id="1263733306853729545"><ph name="MINUS" /> キーと <ph name="EQUAL" /> キーで候補リストのページを切り替える</translation>
 <translation id="126387934568812801">このスクリーンショットと開いているタブの名前を含める</translation>
@@ -876,6 +877,7 @@
 <translation id="1634224622052500893">Wi-Fi ネットワークを検出</translation>
 <translation id="1634783886312010422"><ph name="WEBSITE" /> でこのパスワードを変更しましたか?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">ようこそ、<ph name="PROFILE_NAME" /> さん</translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />アプリのデータとは、(デベロッパーの設定に基づいて)アプリが保存したデータのことで、連絡先、メッセージ、写真などのデータが含まれます。バックアップ データは、ドライブの保存容量にはカウントされません。<ph name="END_PARAGRAPH1" /><ph name="BEGIN_PARAGRAPH2" />このサービスは [設定] で無効にできます。<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">このブックマークは iPhone でも使用できます</translation>
 <translation id="1637765355341780467">プロフィールを開こうとして問題が発生しました。一部の機能を使用できない可能性があります。</translation>
@@ -911,6 +913,7 @@
 <translation id="1652862280638399816">macOS キーチェーンでパスワード マネージャーを使用するには、Chromium を再起動してキーチェーンへのアクセスを許可してください。再起動すると、タブが再度開きます。</translation>
 <translation id="1653958716132599769">関連するタブをグループ化</translation>
 <translation id="1654580009054503925">リクエストの表示を許可しないウェブサイト</translation>
+<translation id="1654713139320245449">キャスト先が見つかりません。サポートが必要ですか?</translation>
 <translation id="1656528038316521561">背景の透明度</translation>
 <translation id="1657406563541664238">使用統計データや障害レポートを Google に自動送信して <ph name="PRODUCT_NAME" /> の機能向上に役立てる</translation>
 <translation id="1657937299377480641">教育リソースにアクセスするために再度ログインするには、保護者の方に許可してもらってください</translation>
@@ -1628,12 +1631,14 @@
 <translation id="2187895286714876935">サーバー証明書インポート エラー</translation>
 <translation id="2187906491731510095">拡張機能が更新されました</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> を開く</translation>
+<translation id="2188919919468240749">タブグループを削除しますか?</translation>
 <translation id="2190069059097339078">WiFi 認証情報の取得機能</translation>
 <translation id="219008588003277019">ネイティブ クライアント モジュール: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(なし)</translation>
 <translation id="2190967441465539539">カメラとマイクにアクセスできません</translation>
 <translation id="2191754378957563929">オン</translation>
 <translation id="2192505247865591433">取得先:</translation>
+<translation id="219283042927675668">グループ内のタブ</translation>
 <translation id="2193365732679659387">信頼の設定</translation>
 <translation id="2194856509914051091">留意事項</translation>
 <translation id="2195331105963583686">この期限を過ぎても <ph name="DEVICE_TYPE" /> は使用できますが、ソフトウェアとセキュリティは自動更新されなくなります。</translation>
@@ -1852,6 +1857,7 @@
 <translation id="2350133097354918058">再読み込みされました</translation>
 <translation id="2350182423316644347">アプリケーションを初期化しています...</translation>
 <translation id="235028206512346451">デバイスの前から離れると、画面が自動的にロックされます。デバイスの前にいるときは、画面がロックされるまでの時間が長くなります。ロック画面を使用しない場合、デバイスはロックされずにスリープ状態になります。</translation>
+<translation id="2352305801620974284">このデバイスでログインすると、Google アカウントに保存したパスワードなどの情報を利用できます</translation>
 <translation id="2352662711729498748">1 MB 未満</translation>
 <translation id="2352810082280059586">ロック画面のメモは<ph name="LOCK_SCREEN_APP_NAME" />に自動的に保存されます。最新のメモはロック画面に表示されます。</translation>
 <translation id="2353297238722298836">カメラとマイクを使用できます</translation>
@@ -2062,6 +2068,7 @@
 <translation id="249113932447298600">デバイス <ph name="DEVICE_LABEL" /> は現在サポートされていません。</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> の音声をプレビュー</translation>
 <translation id="2492461744635776704">証明書の署名のリクエストを準備しています</translation>
+<translation id="2492964937550251173">タブを閉じてグループを削除しますか?</translation>
 <translation id="249330843868392562">テキスト読み上げの設定を開く</translation>
 <translation id="2494555621641843783">Steam をインストールできません</translation>
 <translation id="2495141202137516054">ドライブから</translation>
@@ -2230,6 +2237,7 @@
 <translation id="262087792756666314">この機能を固定して簡単にアクセスできます。固定するには、サイドパネルの上部にある [固定] ボタンをクリックします</translation>
 <translation id="2620900772667816510">Bluetooth 超解像</translation>
 <translation id="262154978979441594">Google アシスタントの音声モデルのトレーニング</translation>
+<translation id="2622280935687585828">無効にしたサイトから <ph name="SITE_NAME" /> を削除します</translation>
 <translation id="26224892172169984">すべてのサイトに対してプロトコルの処理を許可しない</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI デバイスの操作と再プログラムが許可されています</translation>
@@ -2403,6 +2411,7 @@
 <translation id="2743387203779672305">クリップボードにコピー</translation>
 <translation id="274362947316498129">アプリが <ph name="DEVICE_NAME" /> にアクセスしようとしています。アクセスを許可するには、<ph name="DEVICE_NAME" /> のプライバシー スイッチをオフにしてください。</translation>
 <translation id="2745080116229976798">Microsoft 限定従属</translation>
+<translation id="2747853844543618313"><ph name="DEVICE_NAME" /> でキャスト リクエストを承認してください。</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> にログイン</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">スペルと一緒に文法をチェック</translation>
@@ -2773,6 +2782,7 @@
 <translation id="3021066826692793094">蝶</translation>
 <translation id="3021678814754966447">フレームのソースを表示(&amp;V)</translation>
 <translation id="3021902017511220299">スキャンに失敗しました。この操作は管理者によってブロックされています。</translation>
+<translation id="3022068420678496307">この操作を行うと、この Google アカウントで Chrome にログインしているすべてのデバイスからグループが削除されます。</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> がこの Chromebook から削除され、<ph name="PRIMARY_EMAIL" /> には保存されません。</translation>
 <translation id="3022978424994383087">聞き取れませんでした。</translation>
 <translation id="3023464535986383522">選択して読み上げ</translation>
@@ -4050,7 +4060,6 @@
 <translation id="3983586614702900908">不明なベンダーのデバイス</translation>
 <translation id="3983764759749072418">Play ストアのアプリはこのデバイスにアクセスできます。</translation>
 <translation id="3983769721878416534">クリックまでの時間</translation>
-<translation id="3983793589497399077">レンズで検索する場所をクリックまたはドラッグします</translation>
 <translation id="3984135167056005094">メールアドレスを含めない</translation>
 <translation id="3984159763196946143">デモモードを開始できませんでした</translation>
 <translation id="3984431586879874039">このサイトによるセキュリティ キーへのアクセスを許可しますか?</translation>
@@ -4173,6 +4182,7 @@
 <translation id="4078903002989614318">並べ替えとリストのオプション</translation>
 <translation id="4079140982534148664">拡張スペルチェックを使用</translation>
 <translation id="4082333918978320301">マイクの使用が許可されているウェブサイトはありません</translation>
+<translation id="4083735423615351075">タブはこのデバイスで引き続き表示されますが、グループはこの Google アカウントで Chrome にログインしているすべてのデバイスから削除されます。</translation>
 <translation id="4084682180776658562">ブックマーク</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> を閉じる</translation>
 <translation id="4085298594534903246">このページの JavaScript はブロックされました。</translation>
@@ -4182,6 +4192,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">右側に表示</translation>
+<translation id="4088879333319441249">タブグループを解除しますか?</translation>
 <translation id="4089235344645910861">設定が保存され、同期が始まりました。</translation>
 <translation id="4089817585533500276">Shift+<ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">確認済みアクセスを有効にする</translation>
@@ -5660,6 +5671,7 @@
 <translation id="5242724311594467048">「<ph name="EXTENSION_NAME" />」を有効にしますか?</translation>
 <translation id="5243522832766285132">しばらくしてからもう一度お試しください</translation>
 <translation id="5244234799035360187">ファイル アプリに OneDrive が表示されるようになります</translation>
+<translation id="5244466461749935369">今は残す</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> に同期しています</translation>
 <translation id="5245610266855777041">学校用アカウントのご利用開始</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> がクラッシュしました。このバルーンをクリックして再起動してください。</translation>
@@ -5927,6 +5939,7 @@
 <translation id="5453829744223920473">お子様は、学校のすべてのアプリ、ブックマーク、リソースを授業と同じように利用できます。基本ルールは学校が設定します。</translation>
 <translation id="5454166040603940656">- <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">他の検索結果を表示</translation>
+<translation id="5457082343331641453">検索に追加</translation>
 <translation id="5457113250005438886">無効</translation>
 <translation id="5457459357461771897">パソコンからの写真、音楽、その他のメディアの読み取りと削除</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6404,6 +6417,7 @@
 <translation id="5816434091619127343">リクエストされた変更を行うと、プリンタを使用できなくります。</translation>
 <translation id="581659025233126501">同期をオンにする</translation>
 <translation id="5817918615728894473">ペア設定</translation>
+<translation id="5817963443108180228">おかえりなさい、<ph name="PROFILE_NAME" /> さん</translation>
 <translation id="581911254119283028">すべてのアプリケーション</translation>
 <translation id="5821565227679781414">ショートカットを作成</translation>
 <translation id="5824976764713185207">ページの読み込み後、自動的に読み上げを開始する</translation>
@@ -7004,6 +7018,7 @@
 <translation id="6265159465845424232">Microsoft のファイルを Microsoft OneDrive にコピーまたは移動する前に確認する</translation>
 <translation id="6265687851677020761">ポートを削除</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" /> に接続しています</translation>
+<translation id="6266984048393265562">プロフィールをカスタマイズ</translation>
 <translation id="6267166720438879315"><ph name="HOST_NAME" /> での認証に使用する証明書を選択してください</translation>
 <translation id="6268252012308737255"><ph name="APP" /> で開く</translation>
 <translation id="6270309713620950855">ミュートの通知</translation>
@@ -7142,7 +7157,6 @@
 <translation id="6383382161803538830">このページではリーディング モードを利用できません</translation>
 <translation id="638418309848716977">対応リンク</translation>
 <translation id="6384275966486438344">検索設定を次に変更します: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{名前のないグループ - 1 個のタブ}other{名前のないグループ - # 個のタブ}}</translation>
 <translation id="6385149369087767061">インターネットに接続して、もう一度お試しください</translation>
 <translation id="6385382178401976503">カード: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">警告 - 詳細なログが有効になっています。以下のログには、URL その他扱いに注意を要する情報が含まれることがあります。ログの内容を確認したうえで送信してください。</translation>
@@ -7221,6 +7235,7 @@
 <translation id="6445450263907939268">この変更を受け入れない場合は、以前の設定を復元できます。</translation>
 <translation id="6446213738085045933">デスクトップにショートカットを作成する</translation>
 <translation id="6447842834002726250">Cookie</translation>
+<translation id="6449554712554071184">この操作を行うとデバイスからグループが完全に削除されます。</translation>
 <translation id="6450876761651513209">プライバシー関連の設定の変更</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" />、他 1 個のタブ}other{<ph name="PAGE_TITLE" />、他 # 個のタブ}}</translation>
 <translation id="6451689256222386810">パスフレーズを忘れた場合や、この設定を変更する場合は、<ph name="BEGIN_LINK" />同期をリセット<ph name="END_LINK" />します。</translation>
@@ -7366,6 +7381,7 @@
 <translation id="6556866813142980365">やり直す</translation>
 <translation id="6556903358015358733">テーマと壁紙</translation>
 <translation id="6557290421156335491">カスタム ショートカット</translation>
+<translation id="6560061709899140565">他のキャスト セッションを表示</translation>
 <translation id="6560151649238390891">候補を挿入しました</translation>
 <translation id="6561726789132298588">Enter</translation>
 <translation id="6562117348069327379">システムログをダウンロード ディレクトリに保存します。</translation>
@@ -7455,6 +7471,7 @@
 <translation id="6635674640674343739">ネットワーク接続を確立できません。ネットワーク接続を確認して、もう一度お試しください。</translation>
 <translation id="663569763553406962">拡張機能がサイトから読み取りまたは変更できる内容を確認する</translation>
 <translation id="6635944431854494329">所有者はこの機能を [設定] &gt; [詳細設定] &gt; [診断と使用状況のデータを Google に自動送信する] で管理できます。</translation>
+<translation id="6636572589916466933"><ph name="DEVICE_NAME" /> でキャスト リクエストを承認してください。</translation>
 <translation id="6636623428211296678">下で他の設定を確認するか、ここで終了できます</translation>
 <translation id="6639554308659482635">SQLite メモリ</translation>
 <translation id="6640268266988685324">開いているタブ</translation>
@@ -8139,6 +8156,7 @@
 <translation id="715396040729904728">ランチャー+Shift+<ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">フィードバックまたは問題の内容を記入します。可能な場合は、問題の再現手順もお知らせください。</translation>
 <translation id="7154130902455071009">スタート ページを次に変更します: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">動画の品質を向上させ、バッテリー消費を抑えます。動画はキャスト対応のスクリーンでのみ再生されます。</translation>
 <translation id="7159953856712257647">デフォルトでインストール</translation>
 <translation id="7160182524506337403">スマートフォンの通知を表示できるようになりました</translation>
 <translation id="7165263843655074092">このデバイスは標準のセキュリティ機能で保護されます</translation>
@@ -8994,6 +9012,7 @@
 <translation id="7788948939674438635">サイトにキーボードのロックを許可しない</translation>
 <translation id="7789963078219276159">スタートページの背景が<ph name="CATEGORY" />に変更されました。</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">この Chromebook のファイル</translation>
 <translation id="7791269138074599214">入力方法</translation>
 <translation id="7791429245559955092">このアプリケーションは、現在使用している Chrome プロフィールにインストールされます</translation>
 <translation id="7791436592012979144">逆スクロールは有効です</translation>
@@ -9023,6 +9042,7 @@
 <translation id="7810202088502699111">このページのポップアップはブロックされました。</translation>
 <translation id="7810367892333449285">エントリは「<ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ address<ph name="LPA_2" />$<ph name="LPA_3" />optional matching id<ph name="LPA_4" />」という形式にする必要があります</translation>
 <translation id="7811263553491007091">もう一度お試しいただくか、以前に生成された下のテーマから選択してください。</translation>
+<translation id="7814090115158024843">文章作成サポートを表示しないサイト</translation>
 <translation id="7814458197256864873">コピー(&amp;C)</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> のショートカット <ph name="SHORTCUT" /> を編集</translation>
@@ -9254,8 +9274,10 @@
 <translation id="7974936243149753750">オーバースキャン</translation>
 <translation id="7975504106303186033">この Chrome Education デバイスを教育機関向けアカウントに登録する必要があります。新しいアカウントに登録する場合は、g.co/workspace/edusignup にアクセスしてください。</translation>
 <translation id="7977451675950311423">データ侵害で流出したパスワードを使用すると警告します。</translation>
+<translation id="797824194429476746">タブはこのデバイスで引き続き表示されますが、グループは完全に削除されます。</translation>
 <translation id="7978412674231730200">秘密鍵</translation>
 <translation id="7978450511781612192">この操作を行うと Google アカウントからログアウトし、ブックマーク、履歴、パスワードなどの設定は同期されなくなります。</translation>
+<translation id="7980066177668669492">Base64 エンコード ASCII 形式、複数の証明書</translation>
 <translation id="7980084013673500153">アセット ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">保存した <ph name="APP_NAME" /> のパスキーを使用する</translation>
 <translation id="7981662863948574132">デバイスの EID と QR コードのポップアップを表示します</translation>
@@ -9668,6 +9690,7 @@
 <translation id="8276242035951017580">カメラの使用が許可されているアプリはありません</translation>
 <translation id="8276560076771292512">キャッシュの消去とハード再読み込み</translation>
 <translation id="8276850948802942358">サイトにサードパーティ Cookie の使用を一時的に許可することについての詳細</translation>
+<translation id="8277907305629781277"><ph name="DATE" /> にこのパスキーを作成しました</translation>
 <translation id="8280267190418431666">ウェブサイトの表示言語</translation>
 <translation id="828180235270931531">その他の利用可能なプリンタ</translation>
 <translation id="8281886186245836920">スキップ</translation>
@@ -10346,7 +10369,6 @@
 <translation id="8784626084144195648">ビニング平均</translation>
 <translation id="8785622406424941542">タッチペン</translation>
 <translation id="8786824282808281903">このアイコンが表示されているときは、お子様は本人確認や購入の承認に指紋認証を使用できます。</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{名前のないグループ - 1 個のタブ}other{名前のないグループ - # 個のタブ}}</translation>
 <translation id="8787752878731558379">Chrome の改善に役立てるため、サードパーティ Cookie を許可した理由をお聞かせください</translation>
 <translation id="8789898473175677810">Chrome は、クロスサイト トラッキングを抑制してサードパーティ Cookie の使用を段階的に廃止する<ph name="LINK_BEGIN" />共同の取り組み<ph name="LINK_END" />に参画していますが、多くのサイトでは、設計どおりに動作するためにサードパーティ Cookie を使用しているため、責任を持ってこの取り組みを進めています。サードパーティ Cookie は、たとえばログインの簡素化、埋め込みのチャットおよびコメント システムのサポート、支払いサービスに使用されています。また、多くの広告主が、広告を効果的にパーソナライズするためにサードパーティ Cookie を使用しています。サイトでオンライン コンテンツを無料で提供する費用を賄う目的で広告を利用することも多いため、影響は大きなものとなります。</translation>
 <translation id="8791157330927639737">更新の詳細</translation>
@@ -10581,6 +10603,7 @@
 <translation id="8962863356073277855">URL は https://www.example.com の形式で入力してください</translation>
 <translation id="8962918469425892674">このサイトはモーション センサーまたは光センサーを使用しています。</translation>
 <translation id="8963117664422609631">サイトの設定に移動します</translation>
+<translation id="8964795217937248330">タブを閉じてグループを削除しますか?</translation>
 <translation id="8965037249707889821">古いパスワードを入力</translation>
 <translation id="8966809848145604011">他のプロファイル</translation>
 <translation id="8967427617812342790">リーディング リストに追加</translation>
@@ -11014,6 +11037,7 @@
 <translation id="979345485590886759">サイトがマウスポインタのロックを要求できるようにする</translation>
 <translation id="980731642137034229">操作メニューボタン</translation>
 <translation id="981121421437150478">オフライン</translation>
+<translation id="98235653036850093">こんにちは、<ph name="PROFILE_NAME" /> さん</translation>
 <translation id="983192555821071799">すべてのタブを閉じる</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - カメラ録画とマイク録音</translation>
 <translation id="984275831282074731">お支払い方法</translation>
diff --git a/chrome/app/resources/generated_resources_ka.xtb b/chrome/app/resources/generated_resources_ka.xtb
index a77a377..6e2604f 100644
--- a/chrome/app/resources/generated_resources_ka.xtb
+++ b/chrome/app/resources/generated_resources_ka.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">შესაძლოა, Linux-ს არ ჰქონდეს საკმარისი მეხსიერება. ჯერ ცადეთ Linux-ისთვის სივრცის გაზრდა დისკზე, შემდეგ კი — ხელახლა აღდგენა <ph name="LINK_START" />პარამეტრებიდან<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">მოკრძალებული</translation>
 <translation id="126156426083987769">წარმოიქმნა დემო-რეჟიმში მყოფი მოწყობილობის ლიცენზიებთან დაკავშირებული პრობლემა.</translation>
+<translation id="1261885284931493480">გსურთ ჩანართ(ებ)ის ამოშლა და ჯგუფის წაშლა?</translation>
 <translation id="1263231323834454256">საკითხავი სია</translation>
 <translation id="1263733306853729545"><ph name="MINUS" /> და <ph name="EQUAL" /> კლავიშების გამოყენება კანდიდატების სიის გვერდზე საჩვენებლად</translation>
 <translation id="126387934568812801">ეკრანის ამ ანაბეჭდისა და გახსნილი ჩანართების სათაურების დართვა</translation>
@@ -876,6 +877,7 @@
 <translation id="1634224622052500893">ნაპოვნია Wi-Fi ქსელი</translation>
 <translation id="1634783886312010422">ეს პაროლი <ph name="WEBSITE" />-ზე უკვე შეცვალეთ?</translation>
 <translation id="1636212173818785548">კარგი</translation>
+<translation id="1636542522761359943">მოგესალმებით, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />აპების მონაცემებად შეიძლება ჩაითვალოს ამა თუ იმ აპის მიერ შენახული ნებისმიერი სახის მონაცემი (დეველოპერის პარამეტრების მიხედვით), მათ შორის, ისეთი მონაცემები, როგორიცაა კონტაქტები, შეტყობინებები და ფოტოები. სარეზერვო მონაცემები არ აისახება Google Drive-ზე თქვენთვის გამოყოფილი მეხსიერების კვოტაზე.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ამ სერვისის გამორთვა შეგიძლიათ პარამეტრებიდან.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">მიიღეთ ეს სანიშნე თქვენს iPhone-ზე</translation>
@@ -912,6 +914,7 @@
 <translation id="1652862280638399816">პაროლების მმართველი macOS Keychain-თან რომ გამოიყენოთ, ხელახლა გაუშვით Chromium და დაუშვით წვდომა Keychain-ზე. ხელახლა გაშვების შემდეგ თქვენი ჩანართები თავიდან გაიხსნება.</translation>
 <translation id="1653958716132599769">დაკავშირებული ჩანართების დაჯგუფება</translation>
 <translation id="1654580009054503925">დაუშვებელია მოთხოვნების ჩვენება</translation>
+<translation id="1654713139320245449">ტრანსლაციისთვის მოწყობილობები ვერ მოიძებნა. დახმარება გჭირდებათ?</translation>
 <translation id="1656528038316521561">ფონის გაუმჭვირობა</translation>
 <translation id="1657406563541664238">დახმარება აუმჯობესებს <ph name="PRODUCT_NAME" /> ს Google-ისათვის მეხსიერების სტატისტიკის და ავარიული ანგარიშების ავტომატურ მიწოდებას</translation>
 <translation id="1657937299377480641">საგანმანათლებლო რესურსებზე წვდომისთვის სისტემაში ხელახლა შესასვლელად საჭიროა მშობლისგან ნებართვის მიღება</translation>
@@ -1631,12 +1634,14 @@
 <translation id="2187895286714876935">სერვერის სერტიფიკატის იმპორტის შეცდომა</translation>
 <translation id="2187906491731510095">გაფართოებები განახლდა</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" />-ის გახსნა</translation>
+<translation id="2188919919468240749">გსურთ ჩანართების ჯგუფის წაშლა?</translation>
 <translation id="2190069059097339078">WiFi-ს ავტორიზაციის მონაცემების მიმღები</translation>
 <translation id="219008588003277019">საკუთარი კლიენტის მოდული: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(ცარიელი)</translation>
 <translation id="2190967441465539539">კამერასა და მიკროფონზე წვდომა ვერ ხერხდება</translation>
 <translation id="2191754378957563929">ჩართული</translation>
 <translation id="2192505247865591433">საიდან:</translation>
+<translation id="219283042927675668">ჩანართები ჯგუფში</translation>
 <translation id="2193365732679659387">ნდობის პარამეტრები</translation>
 <translation id="2194856509914051091">გასათვალისწინებელი საკითხები</translation>
 <translation id="2195331105963583686"><ph name="DEVICE_TYPE" /> ჩვეულებრივად შეგიძლიათ გამოიყენოთ აღნიშნული დროის შემდეგ, თუმცა ის აღარ მიიღებს პროგრამული უზრუნველყოფისა და უსაფრთხოების ავტომატურ განახლებებს</translation>
@@ -1857,6 +1862,7 @@
 <translation id="2350133097354918058">ხელახლა ჩაიტვირთა</translation>
 <translation id="2350182423316644347">პროგრამის ინიციალიზაცია…</translation>
 <translation id="235028206512346451">თუ თქვენს მოწყობილობას უყურადღებოდ დატოვებთ, ეკრანი ავტომატურად ჩაიკეტება. როცა თქვენი მოწყობილობის წინ იქნებით, ეკრანი არ ჩაიკეტება უფრო მეტი ხნის განმავლობაში. თუ ეკრანის ჩაკეტვის მეთოდს არ იყენებთ, თქვენი მოწყობილობა დაიძინებს ჩაკეტვის ნაცვლად.</translation>
+<translation id="2352305801620974284">ამ მოწყობილობაზე შესვლისას მიიღებთ თქვენს პაროლებს და მეტ ინფორმაციას თქვენი Google ანგარიშიდან.</translation>
 <translation id="2352662711729498748">&lt; 1 მბაიტი</translation>
 <translation id="2352810082280059586">ჩანიშვნები ჩაკეტილ ეკრანზე ავტომატურად შეინახება <ph name="LOCK_SCREEN_APP_NAME" />-ში, ხოლო ბოლო ჩანიშვნა დარჩება ჩაკეტილ ეკრანზე.</translation>
 <translation id="2353297238722298836">კამერა და მიკროფონი დაშვებულია</translation>
@@ -2067,6 +2073,7 @@
 <translation id="249113932447298600">უკაცრავად, მოწყობილობა <ph name="DEVICE_LABEL" /> ამჟამად არაა მხარდაჭერილი.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> ენის ხმის წინასწარი ვერსია</translation>
 <translation id="2492461744635776704">მზადდება სერტიფიკატის ხელმოწერის მოთხოვნა</translation>
+<translation id="2492964937550251173">გსურთ ჩანართ(ებ)ის დახურვა და ჯგუფის წაშლა?</translation>
 <translation id="249330843868392562">ტექსტის გახმოვანების პარამეტრების გახსნა</translation>
 <translation id="2494555621641843783">Steam-ის ინსტალაცია ვერ მოხერხდა</translation>
 <translation id="2495141202137516054">თქვენი Drive-იდან</translation>
@@ -2236,6 +2243,7 @@
 <translation id="262087792756666314">შეგიძლიათ, ჩაამაგროთ ეს ფუნქცია მასზე მარტივად წვდომისთვის; დააწკაპუნეთ ჩამაგრების ღილაკს გვერდითი ზოლის ზედა ნაწილში</translation>
 <translation id="2620900772667816510">Bluetooth-ის სუპერგარჩევადობა</translation>
 <translation id="262154978979441594">Google ასისენტის ხმის მოდელის მომზადება</translation>
+<translation id="2622280935687585828"><ph name="SITE_NAME" />-ის ამოშლა გათიშული საიტებიდან</translation>
 <translation id="26224892172169984">საიტების მიერ პროტოკოლების დამუშავების აკრძალვა</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI-მოწყობილობების მართვა და ხელახლა დაპროგრამება დაშვებულია</translation>
@@ -2409,6 +2417,7 @@
 <translation id="2743387203779672305">კოპირება გაცვლის ბუფერში</translation>
 <translation id="274362947316498129">აპი ცდილობს წვდომას <ph name="DEVICE_NAME" />-ზე. წვდომის დასაშვებად გამორთეთ <ph name="DEVICE_NAME" />-ის კონფიდენციალურობის გადამრთველი.</translation>
 <translation id="2745080116229976798">Microsoft-ის კვალიფიცირებული სუბორდინაცია</translation>
+<translation id="2747853844543618313">დარწმუნდით, რომ ტრანსლირების მოთხოვნას ეთანხმებით თქვენი <ph name="DEVICE_NAME" />-დან.</translation>
 <translation id="2749756011735116528">შედით <ph name="PRODUCT_NAME" />-ში</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">გრამატიკისა და მართლწერის შემოწმება</translation>
@@ -2779,6 +2788,7 @@
 <translation id="3021066826692793094">პეპელა</translation>
 <translation id="3021678814754966447">ჩარჩოს წყაროს &amp;ნახვა</translation>
 <translation id="3021902017511220299">სკანირება ვერ მოხერხდა. ამ მოქმედებას ბლოკავს თქვენი ადმინისტრატორი.</translation>
+<translation id="3022068420678496307">ამ მოქმედებით წაიშლება ჯგუფი ყველა მოწყობილობიდან, რომელიც შესულია Chrome-ში Google-ის ამ ანგარიშიდან.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> ამოიშლება ამ Chromebook-იდან და არ შეინახება <ph name="PRIMARY_EMAIL" />-ში.</translation>
 <translation id="3022978424994383087">წარმოთქმულის აღქმა ვერ მოხერხდა.</translation>
 <translation id="3023464535986383522">მონიშვნა წარმოსათქმელად</translation>
@@ -4058,7 +4068,6 @@
 <translation id="3983586614702900908">მოწყობილობები უცნობი ვენდორისაგან</translation>
 <translation id="3983764759749072418">Play Store აპლიკაციებს აქვს წვდომა ამ მოწყობილობაზე.</translation>
 <translation id="3983769721878416534">დაყოვნება დაწკაპუნებამდე</translation>
-<translation id="3983793589497399077">დააწკაპუნეთ ან გადაათრიეთ ნებისმიერ ადგილას Lens-ით მოსაძებნად</translation>
 <translation id="3984135167056005094">არ დაერთოს ელფოსტის მისამართი</translation>
 <translation id="3984159763196946143">დემო-რეჟიმის გაშვება ვერ მოხერხდა</translation>
 <translation id="3984431586879874039">გსურთ, ამ საიტმა ნახოს თქვენი უსაფრთხოების გასაღები?</translation>
@@ -4181,6 +4190,7 @@
 <translation id="4078903002989614318">დალაგება და სიებთან დაკავშირებული ვარიანტები</translation>
 <translation id="4079140982534148664">მართლწერის გაძლიერებული შემოწმების გამოყენება</translation>
 <translation id="4082333918978320301">მიკროფონის გამოყენების ნებართვა არცერთ ვებსაიტს არ აქვს მინიჭებული</translation>
+<translation id="4083735423615351075">ამ მოწყობილობაზე ჩანართები გახსნილი დარჩება, მაგრამ ჯგუფი წაიშლება ყველა იმ მოწყობილობიდან, რომელიც Chrome-ში შესულია Google-ის ამ ანგარიშით.</translation>
 <translation id="4084682180776658562">სანიშნე</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" />-ის დახურვა</translation>
 <translation id="4085298594534903246">JavaScript დაბლოკილია ამ გვერდზე.</translation>
@@ -4190,6 +4200,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">მარჯვნივ ჩვენება</translation>
+<translation id="4088879333319441249">გსურთ ჩანართების ჯგუფის გაუქმება?</translation>
 <translation id="4089235344645910861">პარამეტრები შენახულია. სინქრონიზაცია დაიწყო.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">ჩართეთ შემოწმებული წვდომა</translation>
@@ -5671,6 +5682,7 @@
 <translation id="5242724311594467048">ჩავრთოთ "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="5243522832766285132">გთხოვთ, სცადოთ რამდენიმე წუთში</translation>
 <translation id="5244234799035360187">OneDrive ახლა გამოჩნდება ფაილების აპში</translation>
+<translation id="5244466461749935369">ჯერ-ჯერობით შენარჩუნება</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" />-თან სინქრონიზაცია</translation>
 <translation id="5245610266855777041">დაიწყეთ სასწავლებლის ანგარიშით სარგებლობა</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" />-ში შეცდომაა. პროგრამის გადასატვირთად დააწკაპუნეთ ამ ბუშტზე.</translation>
@@ -5939,6 +5951,7 @@
 <translation id="5453829744223920473">თქვენს ბავშვს შეუძლია თავისი სასწავლებლის ყველა აპის, სანიშნისა და რესურსის გამოყენება, როგორც გაკვეთილზე. ძირითადად წესებს სკოლა განსაზღვრავს.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" />-ით</translation>
 <translation id="545484289444831485">ძიების მეტი შედეგის ნახვა</translation>
+<translation id="5457082343331641453">დაამატეთ თქვენს ძიებაში</translation>
 <translation id="5457113250005438886">არასწორი</translation>
 <translation id="5457459357461771897">ფოტოების, მუსიკის და კომპიუტერის სხვა მედიის წაკითხვა და წაშლა</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6416,6 +6429,7 @@
 <translation id="5816434091619127343">პრინტერთან დაკავშირებული მოთხოვნილი ცვლილებები მის მუშაობას არასტაბილურს გახდის.</translation>
 <translation id="581659025233126501">სინქრონიზაციის ჩართვა</translation>
 <translation id="5817918615728894473">დაწყვილება</translation>
+<translation id="5817963443108180228">კეთილი იყოს თქვენი დაბრუნება, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">ყველა აპლიკაცია</translation>
 <translation id="5821565227679781414">მალსახმობის შექმნა</translation>
 <translation id="5824976764713185207">გვერდის ავტომატურად წაკითხვა მისი ჩატვირთვის შემდეგ</translation>
@@ -7016,6 +7030,7 @@
 <translation id="6265159465845424232">მკითხეთ Microsoft ფაილების Microsoft OneDrive-ში კოპირებამდე ან გადატანამდე</translation>
 <translation id="6265687851677020761">პორტის ამოშლა</translation>
 <translation id="6266532094411434237">მიმდინარეობს <ph name="DEVICE" />-თან დაკავშირება</translation>
+<translation id="6266984048393265562">პროფილის მორგება</translation>
 <translation id="6267166720438879315">თქვენი ვინაობის ავთენტიფიკაციისათვის, აირჩიეთ სერთიფიკატი <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">გახსნა <ph name="APP" />-ით</translation>
 <translation id="6270309713620950855">შეხსენების დადუმება</translation>
@@ -7154,7 +7169,6 @@
 <translation id="6383382161803538830">წაკითხვის რეჟიმი მიუწვდომელია ამ გვერდზე</translation>
 <translation id="638418309848716977">მხარდაჭერილი ბმულები</translation>
 <translation id="6384275966486438344">შეცვალეთ თქვენი ძიების პარამეტრები: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{უსახელო ჯგუფი — 1 ჩანართი}other{უსახელო ჯგუფი — # ჩანართი}}</translation>
 <translation id="6385149369087767061">დაუკავშირდით ინტერნეტს და ცადეთ ხელახლა</translation>
 <translation id="6385382178401976503">ბარათი: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">გაფრთხილება: ჩართულია დეტალური ჟურნალირება, ამიტომ ქვემოთ მოცემული ჟურნალები, შესაძლოა, შეიცავდეს URL-ებს ან სხვა კონფიდენციალურ ინფორმაციას. გთხოვთ, გადახედოთ და დარწმუნდეთ, რომ თქვენთვის მისაღებია ამ ინფორმაციის გადაგზავნა.</translation>
@@ -7233,6 +7247,7 @@
 <translation id="6445450263907939268">თუ არ გსურთ ეს ცვლილებები, შეგიძლიათ აღადგინოთ წინა პარამეტრები.</translation>
 <translation id="6446213738085045933">შექმენით დესკტოპის მალსახმობი</translation>
 <translation id="6447842834002726250">ქუქი ფაილები</translation>
+<translation id="6449554712554071184">ამ მოქმედებით ჯგუფი სამუდამოდ წაიშლება თქვენი მოწყობილობიდან.</translation>
 <translation id="6450876761651513209">შეცვალეთ თქვენი პირადი პარამეტრები შესაბამისი აწყობით</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> და 1 სხვა ჩანართი}other{<ph name="PAGE_TITLE" /> და # სხვა ჩანართი}}</translation>
 <translation id="6451689256222386810">თუ დაგავიწყდათ თქვენი საიდუმლო ფრაზა, ან ამ პარამეტრის შეცვლა გსურთ, <ph name="BEGIN_LINK" />გადააყენეთ სინქრონიზაცია<ph name="END_LINK" />.</translation>
@@ -7379,6 +7394,7 @@
 <translation id="6556866813142980365">გამეორება</translation>
 <translation id="6556903358015358733">თემა და ფონი</translation>
 <translation id="6557290421156335491">ჩემი მალსახმობები</translation>
+<translation id="6560061709899140565">ტრანსლირების სხვა სესიების ჩვენება</translation>
 <translation id="6560151649238390891">შემოთავაზება ჩასმულია</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">სისტემის ჟურნალების „ჩამოტვირთვების“ კატალოგში შენახვა.</translation>
@@ -7468,6 +7484,7 @@
 <translation id="6635674640674343739">ქსელთან კავშირი ვერ დამყარდა. შეამოწმეთ ქსელთან კავშირი და ხელახლა ცადეთ.</translation>
 <translation id="663569763553406962">ნახეთ, რომელ გაფართოებებს შეუძლია საიტის წაკითხვა ან შეცვლა</translation>
 <translation id="6635944431854494329">ამ ფუნქციის მართვა მფლობელს შეუძლია აქ: პარამეტრები &gt; გაფართოებული &gt; დიაგნოსტიკური და გამოყენების შესახებ მონაცემების Google-ისთვის ავტომატურად გაგზავნა.</translation>
+<translation id="6636572589916466933">დაეთანხმეთ ტრანსლირების მოთხოვნას თქვენს <ph name="DEVICE_NAME" />-ზე.</translation>
 <translation id="6636623428211296678">გაეცანით სხვა ვარიანტებს ქვემოთ, ან დაასრულეთ ახლავე</translation>
 <translation id="6639554308659482635">SQLite მეხსიერება</translation>
 <translation id="6640268266988685324">ჩანართის გახსნა</translation>
@@ -8152,6 +8169,7 @@
 <translation id="715396040729904728">გამშვები + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">გამოგვეხმაურეთ ან აღწერეთ პრობლემა. შეძლებისდაგვარად, დაურთეთ პრობლემის რეპროდუქციისთვის გასავლელი ნაბიჯები.</translation>
 <translation id="7154130902455071009">საწყისი გვერდის შეცვლა ამით: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">ნახეთ უკეთესი ხარისხის ვიდეოები და დაზოგეთ ბატარეის მუშაობის ხანგრძლივობა. ვიდეოები დაიკვრება მხოლოდ Cast-ის მხარდაჭერის მქონე ეკრანზე.</translation>
 <translation id="7159953856712257647">დაინსტალირებულია ნაგულისხმევად</translation>
 <translation id="7160182524506337403">ამიერიდან შეგიძლიათ ნახოთ თქვენი ტელეფონის შეტყობინებები</translation>
 <translation id="7165263843655074092">ამ მოწყობილობაზე სარგებლობთ უსაფრთხოების სტანდარტული საშუალებებით</translation>
@@ -9009,6 +9027,7 @@
 <translation id="7788948939674438635">საიტებისთვის თქვენი კლავიატურის ჩაკეტვის აკრძალვა</translation>
 <translation id="7789963078219276159">საწყისი გვერდის ფონად აირჩა <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Chromebook-ზე არსებული ფაილები</translation>
 <translation id="7791269138074599214">შეყვანის მეთოდი</translation>
 <translation id="7791429245559955092">ეს აპლიკაცია დაინსტალირდება თქვენ მიერ ამჟამად გამოყენებულ Chrome პროფილში</translation>
 <translation id="7791436592012979144">უკუგადაადგილება ჩართულია</translation>
@@ -9038,6 +9057,7 @@
 <translation id="7810202088502699111">კონტექსტური ფანჯრები დაბლოკილია ამ გვერდზე.</translation>
 <translation id="7810367892333449285">თქვენი შენატანის ფორმატი უნდა იყოს <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ მისამართი<ph name="LPA_2" />$<ph name="LPA_3" />დამთხვევის არასავალდებულო იდენტიფიკატორი<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">სცადეთ ხელახლა, ან ქვემოთ აირჩიეთ ადრე გენერირებული ერთ-ერთი თემა.</translation>
+<translation id="7814090115158024843">არასდროს შემომთავაზო წერაში დახმარება ამ საიტებზე</translation>
 <translation id="7814458197256864873">&amp;კოპირება</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">მალსახმობი <ph name="SHORTCUT" />-ის რედაქტირება გაფართოებისთვის <ph name="EXTENSION_NAME" /></translation>
@@ -9269,8 +9289,10 @@
 <translation id="7974936243149753750">ეკრანის არშია</translation>
 <translation id="7975504106303186033">ეს Chrome Education მოწყობილობა საგანმანათლებლო ანგარიშში უნდა დაარეგისტრიროთ. ახალი ანგარიშის შესაქმნელად გადადით აქ: g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">გაგაფრთხილებთ, თუ იყენებთ პაროლს, რომელიც პერსონალურ მონაცემთა გაჟონვისას გამჟღავნდა.</translation>
+<translation id="797824194429476746">ამ მოწყობილობაში არსებული ჩანართები დარჩება გახსნილი, მაგრამ სამუდამოდ წაიშლება ჯგუფი.</translation>
 <translation id="7978412674231730200">პირადი გასაღები</translation>
 <translation id="7978450511781612192">ამ ქმედებით გამოხვალთ თქვენი Google ანგარიშებიდან. თქვენი სანიშნეები, ისტორია, პაროლები და სხვა კონტენტი აღარ იქნება სინქრონიზებული.</translation>
+<translation id="7980066177668669492">Base64-დაშიფრული ASCII, მრავალი სერტიფიკატი</translation>
 <translation id="7980084013673500153">საინვენტარო ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">გამოიყენეთ წვდომის გასაღები <ph name="APP_NAME" />-ისთვის</translation>
 <translation id="7981662863948574132">მოწყობილობის EID-ისა და QR კოდის ამომხტარი ფანჯრის ჩვენება</translation>
@@ -9682,6 +9704,7 @@
 <translation id="8276242035951017580">თქვენი კამერის გამოყენება არცერთი აპისთვის არ არის დაშვებული</translation>
 <translation id="8276560076771292512">ცარიელი ქეში და მძიმე გადატვირთვა</translation>
 <translation id="8276850948802942358">შეიტყვეთ მეტი საიტისთვის მესამე მხარის ქუქი-ჩანაწერების გამოყენების დროებითი ნებართვის მინიჭების შესახებ</translation>
+<translation id="8277907305629781277">წვდომის გასაღების შექმნის თარიღი: <ph name="DATE" /></translation>
 <translation id="8280267190418431666">ვებსაიტები თქვენს ენებზე</translation>
 <translation id="828180235270931531">სხვა ხელმისაწვდომი პრინტერები</translation>
 <translation id="8281886186245836920">გამოტოვება</translation>
@@ -10360,7 +10383,6 @@
 <translation id="8784626084144195648">დაჯგუფებული საშუალო</translation>
 <translation id="8785622406424941542">სტილუსი</translation>
 <translation id="8786824282808281903">როცა თქვენი ბავშვი ამ ხატულას დაინახავს, თითის ანაბეჭდის მეშვეობით შეძლებს ვინაობის ან შენაძენების დადასტურებას.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{უსახელო ჯგუფი — 1 ჩანართი}other{უსახელო ჯგუფი — # ჩანართი}}</translation>
 <translation id="8787752878731558379">დაგვეხმარეთ, გავაუმჯობესოთ Chrome — გვითხარით, რატომ დაუშვით მესამე მხარის ქუქი-ჩანაწერები</translation>
 <translation id="8789898473175677810">Chrome ჩართულია საიტებს შორის თვალის მიდევნების შემცირების <ph name="LINK_BEGIN" />საერთო ძალისხმევაში<ph name="LINK_END" /> და უარს ამბობს მესამე მხარის ქუქი-ჩანაწერების გამოყენებაზე. თუმცა ამასაც პასუხისმგებლობით ვეკიდებით, რადგან ბევრი საიტის გამართულად მუშაობა დამოკიდებულია მესამე მხარის ქუქი-ჩანაწერებზე. მაგალითად, ბევრი საიტი იყენებს მესამე მხარის ქუქი-ჩანაწერებს, რათა გაამარტივოს სისტემაში შესვლა, ჩაშენებული ჩეთის მხარდაჭერა და კომენტარების სისტემა, ასევე, გადახდების სერვისები. რეკლამების პერსონალიზებისთვის რეკლამის განმთავსებლებიც ხშირად იყენებენ მესამე მხარის ქუქი-ჩანაწერებს. ეს მნიშვნელოვანია, რადგან ვებსაიტებისთვის ხარჯების დაფარვის და ონლაინ კონტენტის უფასოდ შეთავაზების არსებითი წყაროა რეკლამები.</translation>
 <translation id="8791157330927639737">შეიტყვეთ მეტი განახლების შესახებ</translation>
@@ -10595,6 +10617,7 @@
 <translation id="8962863356073277855">URL-ის ფორმატი უნდა იყოს https://www.example.com</translation>
 <translation id="8962918469425892674">ეს საიტი იყენებს მოძრაობისა თუ განათების სენსორებს.</translation>
 <translation id="8963117664422609631">საიტის პარამეტრებზე გადასვლა</translation>
+<translation id="8964795217937248330">გსურთ ჩანართ(ებ)ის დახურვა და ჯგუფის წაშლა?</translation>
 <translation id="8965037249707889821">შეიყვანეთ ძველი პაროლი</translation>
 <translation id="8966809848145604011">სხვა პროფილები</translation>
 <translation id="8967427617812342790">საკითხავ სიაში დამატება</translation>
@@ -11028,6 +11051,7 @@
 <translation id="979345485590886759">საიტებს შეუძლია თქვენი მაუსის კურსორის ჩაკეტვის თხოვნა</translation>
 <translation id="980731642137034229">ქმედებების მენიუს ღილაკი</translation>
 <translation id="981121421437150478">ოფლაინი</translation>
+<translation id="98235653036850093">გამარჯობა, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">ყველა ჩანართის დახურვა</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> — კამერა და მიკროფონი იწერს</translation>
 <translation id="984275831282074731">გადახდის მეთოდები</translation>
diff --git a/chrome/app/resources/generated_resources_kk.xtb b/chrome/app/resources/generated_resources_kk.xtb
index 0103dac1..72af63c 100644
--- a/chrome/app/resources/generated_resources_kk.xtb
+++ b/chrome/app/resources/generated_resources_kk.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux жүйесінде диск жады аз болуы мүмкін. Linux диск жадын көбейтіңіз де, оны <ph name="LINK_START" />параметрлерде<ph name="LINK_END" /> қайтадан қалпына келтіріп көріңіз.</translation>
 <translation id="1261380933454402672">Баяу</translation>
 <translation id="126156426083987769">Демо режиміндегі құрылғы лицензияларына қатысты ақау орын алды.</translation>
+<translation id="1261885284931493480">Қойындыларды өшіріп, топты жою қажет пе?</translation>
 <translation id="1263231323834454256">Оқу тізімі</translation>
 <translation id="1263733306853729545">Нұсқалар тізімін қарап шығу үшін "<ph name="MINUS" />" және "<ph name="EQUAL" />" пернелерін пайдалану</translation>
 <translation id="126387934568812801">Осы скриншотты және ашық қойындылардың атауларын қосыңыз</translation>
@@ -873,6 +874,7 @@
 <translation id="1634224622052500893">Wi-Fi желісі табылды</translation>
 <translation id="1634783886312010422"><ph name="WEBSITE" /> сайтында құпия сөзіңізді өзгерттіңіз бе?</translation>
 <translation id="1636212173818785548">Жарайды</translation>
+<translation id="1636542522761359943"><ph name="PROFILE_NAME" />, қош келдіңіз!</translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Қолданба деректеріне контактілер, хабарлар және фотосуреттер сияқты қолданба сақтаған (әзірлеуші параметрлеріне байланысты) кез келген дерек жатуы мүмкін. Сақтық көшірме деректері Drive жадында орын алмайды.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Бұл қызметті "Параметрлер" бөлімінен өшіруге болады.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Осы бетбелгіні iPhone телефонында алыңыз</translation>
@@ -909,6 +911,7 @@
 <translation id="1652862280638399816">Password Manager қызметін macOS кілттер тізбегімен бірге пайдалану үшін Chromium-ді қайта іске қосып, кілттер тізбегін пайдалануға рұқсат беріңіз. Қайта іске қосқаннан кейін, қойындылар қайта ашылады.</translation>
 <translation id="1653958716132599769">Бір-біріне қатысты қойындыларды топтау</translation>
 <translation id="1654580009054503925">Сұрауларды көрсету рұқсат етілмеген</translation>
+<translation id="1654713139320245449">Трансляциялайтын құрылғы табылмады. Көмек керек пе?</translation>
 <translation id="1656528038316521561">Фон бұлдырлығы</translation>
 <translation id="1657406563541664238">Пайдалану статистикасын және бұзылу туралы есептерді Google компаниясына автоматты түрде жіберу арқылы <ph name="PRODUCT_NAME" /> өнімін жақсартуға көмектесіңіз</translation>
 <translation id="1657937299377480641">Білім беру ресурстарын пайдалануға қайта кіру үшін ата-анадан рұқсат сұрау қажет.</translation>
@@ -1628,12 +1631,14 @@
 <translation id="2187895286714876935">Сервер сертификатын импорттау қатесі</translation>
 <translation id="2187906491731510095">Кеңейтімдер жаңартылды</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> ашыңыз</translation>
+<translation id="2188919919468240749">Қойындылар тобын жою қажет пе?</translation>
 <translation id="2190069059097339078">WiFi Credentials Getter</translation>
 <translation id="219008588003277019">Native Client модулі: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(бос)</translation>
 <translation id="2190967441465539539">Камера мен микрофонды пайдалану мүмкін емес</translation>
 <translation id="2191754378957563929">Қосулы</translation>
 <translation id="2192505247865591433">Қайдан:</translation>
+<translation id="219283042927675668">Топтағы қойындылар</translation>
 <translation id="2193365732679659387">Сенім параметрлері</translation>
 <translation id="2194856509914051091">Ескеретін жайттар</translation>
 <translation id="2195331105963583686">Одан кейін <ph name="DEVICE_TYPE" /> құрылғысын бұрынғыдай пайдалана бересіз, бірақ оған бағдарламалық құрал мен қауіпсіздік жүйесінің соңғы нұсқалары орнатылмайды.</translation>
@@ -1854,6 +1859,7 @@
 <translation id="2350133097354918058">Қайта жүктелді.</translation>
 <translation id="2350182423316644347">Қолданба инициализациясы…</translation>
 <translation id="235028206512346451">Құрылғыдан алыстасаңыз, экран автоматты түрде құлыпталады. Ал құрылғының алдында болсаңыз, ол ұйқы режиміне өтпейді. Құлып экранын пайдаланбасаңыз, құрылғы құлыпталмай, ұйқы режиміне өтеді.</translation>
+<translation id="2352305801620974284">Осы құрылғыда Google аккаунтына кірсеңіз, аккаунттан құпия сөздер мен басқа ақпаратты алуға болады.</translation>
 <translation id="2352662711729498748">&lt; 1 МБ</translation>
 <translation id="2352810082280059586">Экран құлпы жөніндегі ескертпелері автоматты түрде <ph name="LOCK_SCREEN_APP_NAME" /> қолданбасына сақталған. Ең соңғы ескертпе құлып экранында берілген.</translation>
 <translation id="2353297238722298836">Камера мен микрофонды пайдалануға рұқсат берілген</translation>
@@ -2064,6 +2070,7 @@
 <translation id="249113932447298600">Кешіріңіз, <ph name="DEVICE_LABEL" /> құрылғысына қазір қолдау көрсетілмеген.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> тіліндегі дауысты алдын ала тыңдау</translation>
 <translation id="2492461744635776704">Сертификатқа қол қою сұрауы дайындалуда</translation>
+<translation id="2492964937550251173">Қойындыларды жауып, топты жою қажет пе?</translation>
 <translation id="249330843868392562">Мәтінді дыбыстау параметрлерін ашу</translation>
 <translation id="2494555621641843783">Steam қолданбасын орнату мүмкін емес</translation>
 <translation id="2495141202137516054">Drive дискіңізден</translation>
@@ -2233,6 +2240,7 @@
 <translation id="262087792756666314">Бұл функцияға оңай қол жеткізу үшін оны бекітуге болады. Бүйірлік панельдің жоғарғы жағындағы "Бекіту" түймесін басыңыз.</translation>
 <translation id="2620900772667816510">Bluetooth аса жоғары ажыратымдылығы</translation>
 <translation id="262154978979441594">Google Assistant-ке дауыс үлгісін үйрету</translation>
+<translation id="2622280935687585828">Өшірілген сайттардан <ph name="SITE_NAME" /> сайтын өшіру</translation>
 <translation id="26224892172169984">Сайттарға протоколдарды өңдеуге рұқсат бермеу</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI құрылғыларын басқаруға және қайта бағдарламалауға рұқсат берілді</translation>
@@ -2406,6 +2414,7 @@
 <translation id="2743387203779672305">Буферге көшіру</translation>
 <translation id="274362947316498129">Қолданба <ph name="DEVICE_NAME" /> құрылғысын пайдаланғысы келіп тұр. Пайдалануға рұқсат беру үшін <ph name="DEVICE_NAME" /> құпиялық ауыстырғышын өшіріңіз.</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313"><ph name="DEVICE_NAME" /> құрылғысындағы трансляциялау рұқсатын қабылдағаныңызды тексеріңіз.</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> өніміне кіру</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Емлемен грамматиканы тексеру</translation>
@@ -2776,6 +2785,7 @@
 <translation id="3021066826692793094">Көбелек</translation>
 <translation id="3021678814754966447">&amp;Жақтау дереккөзін көру</translation>
 <translation id="3021902017511220299">Сканерлеу сәтсіз аяқталды. Бұл әрекетті әкімшіңіз блоктады.</translation>
+<translation id="3022068420678496307">Бұл жағдайда топ Chrome-ға осы Google аккаунтымен кірген барлық құрылғыдан жойылады.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> осы Chromebook-тан өшіріледі, <ph name="PRIMARY_EMAIL" /> электрондық мекенжайына сақталмайды.</translation>
 <translation id="3022978424994383087">Түсініксіз.</translation>
 <translation id="3023464535986383522">Select to Speak</translation>
@@ -4055,7 +4065,6 @@
 <translation id="3983586614702900908">белгісіз жеткізушінің құрылғылары</translation>
 <translation id="3983764759749072418">Play Store қолданбалары осы құрылғыға кіре алады.</translation>
 <translation id="3983769721878416534">Басу алдындағы кідіріс</translation>
-<translation id="3983793589497399077">Lens көмегімен іздеу үшін кез келген жерді басыңыз не сүйреңіз.</translation>
 <translation id="3984135167056005094">Электрондық мекенжайды қамтымау</translation>
 <translation id="3984159763196946143">Демо режимі іске қосылмады</translation>
 <translation id="3984431586879874039">Бұл сайтқа қауіпсіздік кілтін көруге рұқсат етілсін бе?</translation>
@@ -4178,6 +4187,7 @@
 <translation id="4078903002989614318">Сұрыптау және тізім опциялары</translation>
 <translation id="4079140982534148664">Жетілдірілген емле тексеру құралын пайдалану</translation>
 <translation id="4082333918978320301">Ешбір веб-сайтқа микрофоныңызды пайдалануға рұқсат берілмеген</translation>
+<translation id="4083735423615351075">Қойындылар бұл құрылғыда ашық қалады, бірақ топ Chrome-ға осы Google аккаунтымен кірген барлық құрылғыдан жойылады.</translation>
 <translation id="4084682180776658562">Бетбелгі</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> жабу</translation>
 <translation id="4085298594534903246">Бұл бетте JavaScript қосуға тыйым салынған.</translation>
@@ -4187,6 +4197,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Оң жақта көрсету</translation>
+<translation id="4088879333319441249">Қойындылар тобын тарату қажет пе?</translation>
 <translation id="4089235344645910861">Параметрлер сақталды. Синхрондау басталды.</translation>
 <translation id="4089817585533500276">Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Расталған кіру құқығын қосу</translation>
@@ -5668,6 +5679,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />" қосасыз ба?</translation>
 <translation id="5243522832766285132">Бірнеше минуттан кейін қайталап көріңіз</translation>
 <translation id="5244234799035360187">OneDrive енді Files қолданбасында пайда болады</translation>
+<translation id="5244466461749935369">Әзірше сақтау</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> электрондық поштасымен синхрондау</translation>
 <translation id="5245610266855777041">Жұмысты оқу аккаунтымен бастау</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> жұмысы тоқтатылды. Қолданбаны қайта іске қосу үшін осы хабарды басыңыз.</translation>
@@ -5936,6 +5948,7 @@
 <translation id="5453829744223920473">Балаңыз барлық мектеп қолданбасын, бетбелгісін және ресурсын дәл сыныптағыдай пайдалана алады. Мектеп негізгі ережелерді белгілейді.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> провайдерімен</translation>
 <translation id="545484289444831485">Басқа іздеу нәтижелерін көру</translation>
+<translation id="5457082343331641453">Іздеу өрісіне қосу</translation>
 <translation id="5457113250005438886">Жарамсыз</translation>
 <translation id="5457459357461771897">Компьютеріңізден фотосуреттерді, музыканы және басқа медиа файлдарын оқу және жою</translation>
 <translation id="5458214261780477893">Дворак</translation>
@@ -6411,6 +6424,7 @@
 <translation id="5816434091619127343">Сұралған принтер өзгерістері енгізілсе, принтер жарамсыз болып қалуы мүмкін.</translation>
 <translation id="581659025233126501">Синхрондауды қосу</translation>
 <translation id="5817918615728894473">Жұптау</translation>
+<translation id="5817963443108180228">Қайта қош келдіңіз, <ph name="PROFILE_NAME" />!</translation>
 <translation id="581911254119283028">барлық қолданба</translation>
 <translation id="5821565227679781414">Таңбаша жасау</translation>
 <translation id="5824976764713185207">Жүктеліп болғаннан кейін, бетті автоматты түрде оқу</translation>
@@ -7010,6 +7024,7 @@
 <translation id="6265159465845424232">Microsoft файлдарын Microsoft OneDrive-ға көшіру немесе тасымалдау алдында сұрау</translation>
 <translation id="6265687851677020761">Портты өшіру</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" /> құрылғысына жалғануда</translation>
+<translation id="6266984048393265562">Профильді бейімдеу</translation>
 <translation id="6267166720438879315">Өзіңізді <ph name="HOST_NAME" /> хостына аутентификациялау үшін сертификат таңдаңыз</translation>
 <translation id="6268252012308737255"><ph name="APP" /> қолданбасымен ашу</translation>
 <translation id="6270309713620950855">Еске салғыш дыбысын өшіру</translation>
@@ -7148,7 +7163,6 @@
 <translation id="6383382161803538830">Оқу режимі бұл бетте қолжетімсіз</translation>
 <translation id="638418309848716977">Қолдау көрсету сілтемелері</translation>
 <translation id="6384275966486438344">Іздеу параметрлерін өзгерту: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Атауы жоқ топ – 1 қойынды}other{Атауы жоқ топ – # қойынды}}</translation>
 <translation id="6385149369087767061">Интернетке қосылып, әрекетті қайталап көріңіз.</translation>
 <translation id="6385382178401976503">Карта: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Ескерту: журналға толық мәліметті тіркеу функциясы қосылған; төмендегі журналдар URL мекенжайларын немесе басқа құпия ақпаратты қамтуы мүмкін. Қарап шығып, ақпаратты жіберуге болатынына көз жеткізіңіз.</translation>
@@ -7227,6 +7241,7 @@
 <translation id="6445450263907939268">Егер сіз бұл өзгерістерді қаламасаңыз, алдыңғы параметрлерді қалпына келтіре аласыз.</translation>
 <translation id="6446213738085045933">Жұмыс үстеліндегі таңбашаны жасау</translation>
 <translation id="6447842834002726250">Cookie файлдары</translation>
+<translation id="6449554712554071184">Бұл жағдайда топ құрылғыңыздан біржола жойылады.</translation>
 <translation id="6450876761651513209">Құпиялыққа қатысты параметрлерді өзгерту</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> және тағы 1 қойынды}other{<ph name="PAGE_TITLE" /> және тағы # қойынды}}</translation>
 <translation id="6451689256222386810">Егер құпия фразаны ұмытып қалсаңыз немесе оны өзгерткіңіз келсе, <ph name="BEGIN_LINK" />синхрондауды бастапқы күйіне қайтарыңыз<ph name="END_LINK" />.</translation>
@@ -7373,6 +7388,7 @@
 <translation id="6556866813142980365">Қайта орындау</translation>
 <translation id="6556903358015358733">Тақырып және тұсқағаз</translation>
 <translation id="6557290421156335491">Таңбашаларым</translation>
+<translation id="6560061709899140565">Басқа трансляциялау сеанстарын көрсету</translation>
 <translation id="6560151649238390891">Ұсыныс енгізілді.</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Жүйе журналдарын "Жүктеп алынғандар" каталогіне сақтау.</translation>
@@ -7462,6 +7478,7 @@
 <translation id="6635674640674343739">Желі байланысын орнату мүмкін емес. Желі байланысын тексеріп, қайталап көріңіз.</translation>
 <translation id="663569763553406962">Сайтты оқи немесе өзгерте алатын кеңейтімдерді көру</translation>
 <translation id="6635944431854494329">Бұл функцияны иесі "Параметрлер &gt; Қосымша &gt; Google-ға диагностика және пайдалану деректерін автоматты түрде жіберу" бөлімінен басқара алады.</translation>
+<translation id="6636572589916466933"><ph name="DEVICE_NAME" /> құрылғысындағы трансляциялау рұқсатын қабылдаңыз.</translation>
 <translation id="6636623428211296678">Төмендегі басқа параметрлерді қараңыз немесе әрекетті аяқтаңыз.</translation>
 <translation id="6639554308659482635">SQLite жады</translation>
 <translation id="6640268266988685324">Ашық қойынды</translation>
@@ -8146,6 +8163,7 @@
 <translation id="715396040729904728">іске қосу тақтасы + Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Пікір қалдырыңыз немесе мәселені сипаттаңыз. Мүмкін болса, мәселенің туындау себептерін көрсетіңіз.</translation>
 <translation id="7154130902455071009">Бастапқы бетті келесіге өзгерту: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Жоғары сапалы бейнелерді көріп, батарея жұмысының ұзақтығын үнемдеңіз. Бейне трансляциялау қосылған экранда ғана ойнайды.</translation>
 <translation id="7159953856712257647">Әдепкісінше орнатылған.</translation>
 <translation id="7160182524506337403">Енді телефондағы хабарландыруларды көре аласыз</translation>
 <translation id="7165263843655074092">Бұл құрылғыда стандартты қауіпсіздік қорғанысын алып жатырсыз</translation>
@@ -9003,6 +9021,7 @@
 <translation id="7788948939674438635">Сайттарға пернетақтаны құлыптауға рұқсат бермеу</translation>
 <translation id="7789963078219276159">Бастапқы бет фоны <ph name="CATEGORY" /> санатына өзгереді.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Бұл Chromebook-тағы файлдар</translation>
 <translation id="7791269138074599214">Енгізу әдісі</translation>
 <translation id="7791429245559955092">Бұл қолданба қолданыстағы Chrome профиліңізге орнатылады.</translation>
 <translation id="7791436592012979144">Кері айналдыру қосулы</translation>
@@ -9032,6 +9051,7 @@
 <translation id="7810202088502699111">Қалқымалы терезелерге бұл бетте тыйым салынған.</translation>
 <translation id="7810367892333449285"><ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ мекенжай<ph name="LPA_2" />$<ph name="LPA_3" />қосымша сәйкестендіру идентификаторы<ph name="LPA_4" /> форматында жазуыңыз керек.</translation>
 <translation id="7811263553491007091">Әрекетті қайталаңыз немесе төменнен алдыңғы жасалған тақырыптардың бірін таңдаңыз.</translation>
+<translation id="7814090115158024843">Бұл сайттарда ешқашан жазу бойынша көмек ұсынбау</translation>
 <translation id="7814458197256864873">&amp;Көшіру</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> <ph name="SHORTCUT" /> таңбашасын өңдеу</translation>
@@ -9263,8 +9283,10 @@
 <translation id="7974936243149753750">Экран жиегі</translation>
 <translation id="7975504106303186033">Chrome Education құрылғысын Education аккаунтына тіркеңіз. Жаңа аккаунтты тіркеу үшін g.co/workspace/edusignup бетіне өтіңіз.</translation>
 <translation id="7977451675950311423">Деректер қолды болған кезде ұрланған құпия сөзді пайдалансаңыз, сізге ескертеді.</translation>
+<translation id="797824194429476746">Қойындылар осы құрылғыда ашық қалады, бірақ топ біржола жойылады.</translation>
 <translation id="7978412674231730200">Жеке кілт</translation>
 <translation id="7978450511781612192">Google аккаунттарыңыздан шығарыласыз. Бетбелгілер, тарих, құпия сөздер, т.б. синхрондалмайтын болады.</translation>
+<translation id="7980066177668669492">Base64 арқылы шифрланған ASCII, бірнеше сертификат</translation>
 <translation id="7980084013673500153">Актив идентификаторы: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" /> веб-сайты үшін сақталған кіру кілтін пайдаланыңыз</translation>
 <translation id="7981662863948574132">Құрылғының EID нөмірі және QR коды бар қалқымалы терезесін көрсету</translation>
@@ -9676,6 +9698,7 @@
 <translation id="8276242035951017580">Ешбір қолданбаға камераны пайдалануға рұқсат берілмеген</translation>
 <translation id="8276560076771292512">Кэшті тазалау және аппаратты қайта жүктеу</translation>
 <translation id="8276850948802942358">Сайтқа үшінші тарап cookie файлдарын пайдалануға уақытша рұқсат беру туралы толық ақпарат</translation>
+<translation id="8277907305629781277">Бұл кіру кілтін <ph name="DATE" /> күні жасадыңыз.</translation>
 <translation id="8280267190418431666">Тіліңіздегі веб-сайттар</translation>
 <translation id="828180235270931531">Басқа қолжетімді принтерлер</translation>
 <translation id="8281886186245836920">Өткізіп жіберу</translation>
@@ -10354,7 +10377,6 @@
 <translation id="8784626084144195648">Топтастырылған орташа мән</translation>
 <translation id="8785622406424941542">Стилус</translation>
 <translation id="8786824282808281903">Балаңыз осы белгішені көрген кезде, саусақ ізі жеке басты анықтау немесе сатып алуларды мақұлдау үшін пайдаланылады.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Атауы жоқ топ – 1 қойынды}other{Атауы жоқ топ – # қойынды}}</translation>
 <translation id="8787752878731558379">Үшінші тарап cookie файлдарын рұқсат ету себебін айтып, Chrome браузерін жақсартуға көмектесіңіз.</translation>
 <translation id="8789898473175677810">Chrome сайтаралық бақылауды азайту мен үшінші тарап cookie файлдарының қолданысын тоқтатуға бағытталған <ph name="LINK_BEGIN" />бірлескен жұмыс<ph name="LINK_END" /> бастамасына қатысады. Бірақ бұл іс-әрекеттерді жауапкершілікпен орындауға тырысамыз, себебі көптеген сайт ойдағыдай жұмыс істеу үшін үшінші тарап cookie файлдарына арқа сүйейді. Мысалы, сайттардың көпшілігі аккаунтқа кіруді жеңілдету, ендірілген чат пен пікір жүйелеріне қолдау көрсету және төлем қызметтерін орындау үшін үшінші тарап cookie файлдарын пайдаланады. Сондай-ақ үшінші тарап cookie файлдарын жарнама берушілер де жарнамаларды дұрыс жекелендіру үшін қолданады. Үшінші тарап cookie файлдарын пайдалану маңызды, себебі сайттар шығындарын өтеу және онлайн контентін тегін ұсыну үшін жарнамаларға сенім артады.</translation>
 <translation id="8791157330927639737">Жаңарту туралы толық ақпарат алыңыз</translation>
@@ -10589,6 +10611,7 @@
 <translation id="8962863356073277855">URL мына форматты болуы керек: https://www.example.com</translation>
 <translation id="8962918469425892674">Бұл сайт қозғалыс не жарық датчиктерін пайдалануда.</translation>
 <translation id="8963117664422609631">Сайт параметрлеріне өту</translation>
+<translation id="8964795217937248330">Қойындыларды жауып, топты жою қажет пе?</translation>
 <translation id="8965037249707889821">Ескі құпия сөзді енгізіңіз</translation>
 <translation id="8966809848145604011">Басқа профильдер</translation>
 <translation id="8967427617812342790">Оқу тізіміне қосу</translation>
@@ -11022,6 +11045,7 @@
 <translation id="979345485590886759">Сайттар тінтуір меңзерін құлыптауды сұрай алады</translation>
 <translation id="980731642137034229">Әрекеттер мәзірі түймесі</translation>
 <translation id="981121421437150478">Желіден тыс</translation>
+<translation id="98235653036850093">Сәлеметсіз бе, <ph name="PROFILE_NAME" />!</translation>
 <translation id="983192555821071799">Барлық қойындыларды жабу</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – камерамен және микрофонмен жазып жатыр</translation>
 <translation id="984275831282074731">Төлеу әдістері</translation>
diff --git a/chrome/app/resources/generated_resources_km.xtb b/chrome/app/resources/generated_resources_km.xtb
index c318e56a..5ac5618 100644
--- a/chrome/app/resources/generated_resources_km.xtb
+++ b/chrome/app/resources/generated_resources_km.xtb
@@ -4081,7 +4081,6 @@
 <translation id="3983586614702900908">ឧបករណ៍ពីអ្នកលក់មិនស្គាល់</translation>
 <translation id="3983764759749072418">កម្មវិធី​នៅលើ Play Store មានសិទ្ធិ​ចូលប្រើ​ឧបករណ៍នេះ។</translation>
 <translation id="3983769721878416534">ពន្យារពេលមុនពេលចុច</translation>
-<translation id="3983793589497399077">ចុច ឬ​អូស​កន្លែងណា​ក៏បាន ដើម្បី​ស្វែងរក​ដោយប្រើ Lens</translation>
 <translation id="3984135167056005094">កុំបញ្ចូលអាសយដ្ឋានអ៊ីមែល</translation>
 <translation id="3984159763196946143">មិន​អាច​ចាប់ផ្ដើម​មុខងារសាកល្បង​បាន​ទេ</translation>
 <translation id="3984431586879874039">អនុញ្ញាតឱ្យគេហទំព័រ​នេះមើលឃើញ​សោសុវត្ថិភាព​របស់អ្នក?</translation>
@@ -7184,7 +7183,6 @@
 <translation id="6383382161803538830">មិនអាចប្រើ​មុខងារអាន​នៅលើ​ទំព័រនេះ​បានទេ</translation>
 <translation id="638418309848716977">តំណដែលស្គាល់</translation>
 <translation id="6384275966486438344">ប្តូរការកំណត់ការស្វែងរករបស់អ្នកទៅ៖ <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{ក្រុមគ្មានឈ្មោះ - 1 ផ្ទាំង}other{ក្រុមគ្មានឈ្មោះ - # ផ្ទាំង}}</translation>
 <translation id="6385149369087767061">សូមភ្ជាប់​អ៊ីនធឺណិត រួច​ព្យាយាម​ម្តងទៀត</translation>
 <translation id="6385382178401976503">កាត៖ <ph name="CARD" /></translation>
 <translation id="6385994920693662133">ការព្រមាន - ការធ្វើកំណត់ហេតុលម្អិតត្រូវបានបើក។ កំណត់ហេតុខាងក្រោមអាចរួមបញ្ចូល URL ឬព័ត៌មានរសើបផ្សេងទៀត។ សូមពិនិត្យមើល ហើយប្រាកដថាអ្នកពេញចិត្តក្នុងការដាក់បញ្ជូនព័ត៌មាននេះ។</translation>
@@ -10401,7 +10399,6 @@
 <translation id="8784626084144195648">Binned Average</translation>
 <translation id="8785622406424941542">ប៊ិច</translation>
 <translation id="8786824282808281903">នៅពេលកូនរបស់អ្នកឃើញរូបតំណាងនេះ គាត់អាចប្រើស្នាម​ម្រាមដៃសម្រាប់សម្គាល់អត្តសញ្ញាណ ឬដើម្បីយល់ព្រមលើការទិញ។</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{ក្រុមគ្មានឈ្មោះ - 1 ផ្ទាំង}other{ក្រុមគ្មានឈ្មោះ - # ផ្ទាំង}}</translation>
 <translation id="8787752878731558379">ជួយយើង​ក្នុងការកែលម្អ Chrome ដោយប្រាប់យើង​អំពីមូលហេតុ​ដែលអ្នក​បានអនុញ្ញាត​ខូគី​ភាគីទីបី</translation>
 <translation id="8789898473175677810">Chrome គឺជា​ផ្នែកនៃ<ph name="LINK_BEGIN" />កិច្ចសហការ<ph name="LINK_END" />ក្នុងការ​កាត់បន្ថយ​ការតាមដាន​ឆ្លងគេហទំព័រ និង​បញ្ឈប់​ការប្រើប្រាស់​ខូគី​ភាគីទីបី​ជាបណ្ដើរៗ។ ប៉ុន្តែ​យើងកំពុង​ព្យាយាម​ធ្វើសកម្មភាពនេះ​ប្រកបដោយ​ការទទួល​ខុសត្រូវ ដោយសារ​គេហទំព័រ​ជាច្រើន​ពឹងផ្អែកលើ​ខូគី​ភាគីទីបី ដើម្បី​ដំណើរការ​ដូចដែលបាន​រចនាឡើង។ ឧទាហរណ៍ គេហទំព័រ​ជាច្រើន​ប្រើខូគី​ភាគីទីបី ដើម្បី​សម្រួល​ដល់ការ​ចូលគណនី ដើម្បី​ជួយដល់​ការជជែក​ដែលបាន​បង្កប់ និង​ប្រព័ន្ធ​មតិ ព្រមទាំង​សម្រាប់​សេវាកម្ម​ទូទាត់ប្រាក់។ ហើយ​ជារឿយៗ អ្នកផ្សាយ​ពាណិជ្ជកម្ម​ប្រើខូគី​ភាគីទីបី ដើម្បី​កំណត់​ការផ្សាយពាណិជ្ជកម្ម​ឱ្យកាន់តែមានលក្ខណៈផ្ទាល់ខ្លួន។ ការធ្វើបែបនោះ​មានសារៈសំខាន់ ដោយសារ​ជារឿយៗ គេហទំព័រ​ពឹងផ្អែកលើ​ការផ្សាយពាណិជ្ជកម្ម ដើម្បី​ជួយបង់ប្រាក់​ចំណាយ និង​បន្តផ្ដល់​ខ្លឹមសារ​លើអ៊ីនធឺណិត​របស់គេហទំព័រ​ទាំងនោះ​ដោយ​ឥត​គិត​ថ្លៃ។</translation>
 <translation id="8791157330927639737">ស្វែងយល់បន្ថែម​អំពី​ការដំឡើងកំណែ</translation>
diff --git a/chrome/app/resources/generated_resources_kn.xtb b/chrome/app/resources/generated_resources_kn.xtb
index 83ded18..358645932 100644
--- a/chrome/app/resources/generated_resources_kn.xtb
+++ b/chrome/app/resources/generated_resources_kn.xtb
@@ -366,6 +366,7 @@
 <translation id="1260810365552581339">Linux ಸಾಕಷ್ಟು ಡಿಸ್ಕ್ ಸ್ಪೇಸ್ ಅನ್ನು ಹೊಂದಿಲ್ಲದಿರಬಹುದು. ನಿಮ್ಮ Linux ಡಿಸ್ಕ್ ಸ್ಪೇಸ್ ಅನ್ನು ನೀವು ಹೆಚ್ಚಿಸಬಹುದು ಮತ್ತು <ph name="LINK_START" />ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ<ph name="LINK_END" /> ಪುನಃ ಮರುಸ್ಥಾಪಿಸಲು ಪ್ರಯತ್ನಿಸಬಹುದು.</translation>
 <translation id="1261380933454402672">ಸಾಧಾರಣ</translation>
 <translation id="126156426083987769">ಡೆಮೊ ಮೋಡ್ ಸಾಧನದ ಪರವಾನಗಿಗಳಲ್ಲಿ ಸಮಸ್ಯೆ ಸಂಭವಿಸಿದೆ.</translation>
+<translation id="1261885284931493480">ಟ್ಯಾಬ್(ಗಳನ್ನು) ತೆಗೆದುಹಾಕಿ ಮತ್ತು ಗುಂಪನ್ನು ಅಳಿಸಬೇಕೆ?</translation>
 <translation id="1263231323834454256">ಓದುವ ಪಟ್ಟಿ</translation>
 <translation id="1263733306853729545">ಕ್ಯಾಂಡಿಡೇಟ್ ಪಟ್ಟಿಯನ್ನು ವಿಭಾಗಿಸಲು <ph name="MINUS" /> ಮತ್ತು <ph name="EQUAL" /> ಕೀಗಳನ್ನು ಬಳಸಿ</translation>
 <translation id="126387934568812801">ಈ ಸ್ಕ್ರೀನ್‌ಶಾಟ್ ಮತ್ತು ತೆರೆದ ಟ್ಯಾಬ್‌ಗಳ ಶೀರ್ಷಿಕೆಗಳನ್ನು ಸೇರಿಸಿ</translation>
@@ -879,6 +880,7 @@
 <translation id="1634224622052500893">ವೈ-ಫೈ ನೆಟ್‌ವರ್ಕ್ ಕಂಡುಬಂದಿದೆ</translation>
 <translation id="1634783886312010422">ನೀವು ಈಗಾಗಲೇ ಈ ಪಾಸ್‌ವರ್ಡ್ ಅನ್ನು <ph name="WEBSITE" /> ನಲ್ಲಿ ಬದಲಾಯಿಸಿರುವಿರಾ?</translation>
 <translation id="1636212173818785548">ಸರಿ</translation>
+<translation id="1636542522761359943">ಸುಸ್ವಾಗತ, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />ಆ್ಯಪ್ ಡೇಟಾವು ಸಂಪರ್ಕಗಳು, ಸಂದೇಶಗಳು ಮತ್ತು ಫೋಟೋಗಳಂತಹ ಡೇಟಾವನ್ನು ಒಳಗೊಂಡ ಹಾಗೆ, ಆ್ಯಪ್ ಉಳಿಸಿರುವ ಯಾವುದೇ ಡೇಟಾ (ಡೆವಲಪರ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಆಧರಿಸಿ) ಆಗಿರಬಹುದು. ಬ್ಯಾಕಪ್ ಡೇಟಾವನ್ನು ನಿಮ್ಮ ಡ್ರೈವ್ ಸಂಗ್ರಹಣೆ ಕೋಟಾದಲ್ಲಿ ಪರಿಗಣಿಸಲಾಗುವುದಿಲ್ಲ.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ಈ ಸೇವೆಯನ್ನು ನೀವು ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ಆಫ್ ಮಾಡಬಹುದು.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">ನಿಮ್ಮ iPhone ನಲ್ಲಿ ಈ ಬುಕ್‌ಮಾರ್ಕ್ ಅನ್ನು ಪಡೆದುಕೊಳ್ಳಿ</translation>
@@ -915,6 +917,7 @@
 <translation id="1652862280638399816">MacOS Keychain ಜೊತೆಗೆ Password Manager ಅನ್ನು ಬಳಸಲು, Chromium ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಿ ಮತ್ತು Keychain ಗೆ ಆ್ಯಕ್ಸೆಸ್ ಅನ್ನು ಅನುಮತಿಸಿ. ಮರುಪ್ರಾರಂಭಿಸಿದ ನಂತರ ನಿಮ್ಮ ಟ್ಯಾಬ್‌ಗಳು ಪುನಃ ತೆರೆಯುತ್ತವೆ.</translation>
 <translation id="1653958716132599769">ಗುಂಪಿಗೆ ಸಂಬಂಧಿತ ಟ್ಯಾಬ್‌ಗಳು</translation>
 <translation id="1654580009054503925">ವಿನಂತಿಗಳನ್ನು ತೋರಿಸಲು ಅನುಮತಿಸಲಾಗುವುದಿಲ್ಲ</translation>
+<translation id="1654713139320245449">ಯಾವುದೇ ಬಿತ್ತರಿಸುವಿಕೆ ಗಮ್ಯಸ್ಥಾನಗಳು ಕಂಡುಬಂದಿಲ್ಲ. ಸಹಾಯ ಬೇಕೇ?</translation>
 <translation id="1656528038316521561">ಹಿನ್ನೆಲೆ ಅಪಾರದರ್ಶಕತೆ</translation>
 <translation id="1657406563541664238">Google ಗೆ ಬಳಕೆಯ ಅಂಕಿಅಂಶಗಳು ಮತ್ತು ಕ್ರ್ಯಾಶ್ ವರದಿಯನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕಳುಹಿಸುವ ಮೂಲಕ <ph name="PRODUCT_NAME" /> ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಸಹಾಯ ಮಾಡಿ</translation>
 <translation id="1657937299377480641">ಶಿಕ್ಷಣಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಮಾಹಿತಿ ಮೂಲಗಳನ್ನು ಪುನಃ ಪ್ರವೇಶಿಸಲು, ನಿಮಗೆ ಅನುಮತಿ ನೀಡಲು ಪೋಷಕರಿಗೆ ಹೇಳಿ</translation>
@@ -1634,12 +1637,14 @@
 <translation id="2187895286714876935">ಸರ್ವರ್ ಪ್ರಮಾಣಪತ್ರದ ಆಮದು ದೋಷ</translation>
 <translation id="2187906491731510095">ವಿಸ್ತರಣೆಗಳನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಲಾಗಿದೆ</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> ತೆರೆಯಿರಿ</translation>
+<translation id="2188919919468240749">ಟ್ಯಾಬ್ ಗುಂಪನ್ನು ಅಳಿಸಬೇಕೆ?</translation>
 <translation id="2190069059097339078">ವೈಫೈ ರುಜುವಾತುಗಳ ಪಡೆಯುವಿಕೆ</translation>
 <translation id="219008588003277019">ಸ್ಥಳೀಯ ಕ್ಲೈಂಟ್ ಮಾಡ್ಯೂಲ್: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(ಖಾಲಿ)</translation>
 <translation id="2190967441465539539">ಕ್ಯಾಮರಾ ಮತ್ತು ಮೈಕ್ರೊಫೋನ್‌ ಅನ್ನು ಆ್ಯಕ್ಸೆಸ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ</translation>
 <translation id="2191754378957563929">ಆನ್</translation>
 <translation id="2192505247865591433">ಇವರಿಂದ:</translation>
+<translation id="219283042927675668">ಗುಂಪಿನಲ್ಲಿನ ಟ್ಯಾಬ್‌ಗಳು</translation>
 <translation id="2193365732679659387">ವಿಶ್ವಾಸಾರ್ಹ ಸೆಟ್ಟಿಂಗ್‌ಗಳು</translation>
 <translation id="2194856509914051091">ಪರಿಗಣಿಸಬೇಕಾದ ಸಂಗತಿಗಳು</translation>
 <translation id="2195331105963583686">ಆ ಸಮಯದ ಬಳಿಕ ನೀವು ಈಗಲೂ ಈ <ph name="DEVICE_TYPE" /> ಬಳಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ, ಆದರೆ ಅದು ಸ್ವಯಂಚಾಲಿತ ಸಾಫ್ಟ್‌ವೇರ್ ಮತ್ತು ಭದ್ರತೆ ಅಪ್‌ಡೇಟ್‌ಗಳನ್ನು ಇನ್ನು ಮುಂದೆ ಸ್ವೀಕರಿಸುವುದಿಲ್ಲ</translation>
@@ -1863,6 +1868,7 @@
 <translation id="2350133097354918058">ಮರುಲೋಡ್ ಮಾಡಲಾಗಿದೆ</translation>
 <translation id="2350182423316644347">ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಆರಂಭಿಸಲಾಗುತ್ತಿದೆ...</translation>
 <translation id="235028206512346451">ನಿಮ್ಮ ಸಾಧನದಿಂದ ನೀವು ದೂರ ಹೋದರೆ, ನಿಮ್ಮ ಸ್ಕ್ರೀನ್ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಲಾಕ್ ಆಗುತ್ತದೆ. ನೀವು ನಿಮ್ಮ ಸಾಧನದ ಎದುರಿಗಿರುವಾಗ, ನಿಮ್ಮ ಸ್ಕ್ರೀನ್ ಹೆಚ್ಚು ಸಮಯ ಎಚ್ಚರವಾಗಿರುತ್ತದೆ. ನೀವು ಲಾಕ್ ಸ್ಕ್ರೀನ್ ಬಳಸದಿದ್ದರೆ, ನಿಮ್ಮ ಸಾಧನ ಲಾಕ್ ಆಗುವ ಬದಲು ಸ್ಲೀಪ್ ಮೋಡ್‌ಗೆ ಹೋಗುತ್ತದೆ.</translation>
+<translation id="2352305801620974284">ನೀವು ಈ ಸಾಧನದಲ್ಲಿ ಸೈನ್ ಇನ್ ಮಾಡಿದಾಗ, ನಿಮ್ಮ Google ಖಾತೆಯ ಪಾಸ್‌ವರ್ಡ್ ಮತ್ತು ಹೆಚ್ಚಿನದನ್ನು ಪಡೆಯುತ್ತೀರಿ</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">ಲಾಕ್ ಪರದೆ ಟಿಪ್ಪಣಿಗಳನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ <ph name="LOCK_SCREEN_APP_NAME" /> ನಲ್ಲಿ ಉಳಿಸಲಾಗುತ್ತದೆ. ನಿಮ್ಮ ಇತ್ತೀಚಿನ ಟಿಪ್ಪಣಿಯು ಲಾಕ್ ಪರದೆಯಲ್ಲಿರುತ್ತದೆ.</translation>
 <translation id="2353297238722298836">ಕ್ಯಾಮೆರಾ ಮತ್ತು ಮೈಕ್ರೊಫೋನ್ ಗಳನ್ನು ಅನುಮತಿಸಲಾಗಿದೆ</translation>
@@ -2073,6 +2079,7 @@
 <translation id="249113932447298600">ಕ್ಷಮಿಸಿ, ಈ ಸಮಯದಲ್ಲಿ <ph name="DEVICE_LABEL" /> ಸಾಧನಕ್ಕೆ ಬೆಂಬಲ ದೊರೆಯುತ್ತಿಲ್ಲ.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> ಭಾಷೆಯ ಧ್ವನಿಯನ್ನು ಪೂರ್ವವೀಕ್ಷಣೆ ಮಾಡಿ</translation>
 <translation id="2492461744635776704">ಪ್ರಮಾಣಪತ್ರಕ್ಕೆ ಸಹಿ ಮಾಡುವ ವಿನಂತಿಯನ್ನು ಸಿದ್ಧಪಡಿಸಲಾಗುತ್ತಿದೆ</translation>
+<translation id="2492964937550251173">ಟ್ಯಾಬ್(ಗಳನ್ನು) ಮುಚ್ಚಬೇಕೆ ಮತ್ತು ಗುಂಪನ್ನು ಅಳಿಸಬೇಕೆ?</translation>
 <translation id="249330843868392562">ಪಠ್ಯದಿಂದ ಧ್ವನಿ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ತೆರೆಯಿರಿ</translation>
 <translation id="2494555621641843783">Steam ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ</translation>
 <translation id="2495141202137516054">ನಿಮ್ಮ Drive ನಿಂದ</translation>
@@ -2242,6 +2249,7 @@
 <translation id="262087792756666314">ಸುಲಭ ಆ್ಯಕ್ಸೆಸ್‌ಗಾಗಿ ನೀವು ಈ ಫೀಚರ್ ಅನ್ನು ಪಿನ್ ಮಾಡಬಹುದು; ಸೈಡ್ ಪ್ಯಾನೆಲ್‌ನ ಮೇಲ್ಭಾಗದಲ್ಲಿರುವ ಪಿನ್ ಬಟನ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಿ</translation>
 <translation id="2620900772667816510">ಬ್ಲೂಟೂತ್ ಸೂಪರ್ ರೆಸಲ್ಯೂಷನ್‌‌</translation>
 <translation id="262154978979441594">Google Assistant ಗೆ ವಾಯ್ಸ್ ಮಾಡೆಲ್‌ನ ತರಬೇತಿ ನೀಡಿ</translation>
+<translation id="2622280935687585828">ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ ಸೈಟ್‌ಗಳಿಂದ <ph name="SITE_NAME" /> ಅನ್ನು ತೆಗೆದುಹಾಕಿ</translation>
 <translation id="26224892172169984">ಪ್ರೊಟೋಕಾಲ್‌‌ಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಯಾವ ಸೈಟ್‌ ಅನ್ನು  ಅನುಮತಿಸಬೇಡ</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI ಸಾಧನಗಳನ್ನು ನಿಯಂತ್ರಿಸುವುದು ಹಾಗೂ ಮರು ಪ್ರೋಗ್ರಾಂ ಮಾಡುವುದನ್ನು ಅನುಮತಿಸಲಾಗಿದೆ</translation>
@@ -2415,6 +2423,7 @@
 <translation id="2743387203779672305">ಕ್ಲಿಪ್‌ಬೋರ್ಡ್‌ಗೆ ನಕಲಿಸಿ</translation>
 <translation id="274362947316498129">ಆ್ಯಪ್‌ವೊಂದು <ph name="DEVICE_NAME" /> ಅನ್ನು ಆ್ಯಕ್ಸೆಸ್ ಮಾಡಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದೆ. ಆ್ಯಕ್ಸೆಸ್ ಅನ್ನು ಅನುಮತಿಸಲು <ph name="DEVICE_NAME" /> ಗೌಪ್ಯತೆ ಸ್ವಿಚ್ ಅನ್ನು ಆಫ್ ಮಾಡಿ.</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313">ನಿಮ್ಮ <ph name="DEVICE_NAME" /> ನಲ್ಲಿ ಬಿತ್ತರಿಸುವ ವಿನಂತಿಯನ್ನು ಸಮ್ಮತಿಸಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> ಗೆ ಸೈನ್ ಇನ್ ಆಗಿ</translation>
 <translation id="2749836841884031656">ಸಿಮ್</translation>
 <translation id="2749881179542288782">ವ್ಯಾಕರಣವನ್ನು ಕಾಗುಣಿತದೊಂದಿಗೆ ಪರಿಶೀಲಿಸಿ</translation>
@@ -2785,6 +2794,7 @@
 <translation id="3021066826692793094">ಚಿಟ್ಟೆ</translation>
 <translation id="3021678814754966447">ಫ್ರೇಮ್ ಮೂಲವನ್ನು &amp;ವೀಕ್ಷಿಸಿ</translation>
 <translation id="3021902017511220299">ಸ್ಕ್ಯಾನ್ ವಿಫಲಗೊಂಡಿದೆ. ಈ ಆ್ಯಕ್ಷನ್ ಅನ್ನು ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ನಿರ್ಬಂಧಿಸಿದ್ದಾರೆ.</translation>
+<translation id="3022068420678496307">ಇದರಿಂದ ಈ Google ಖಾತೆಯೊಂದಿಗೆ Chrome ಗೆ ಸೈನ್ ಇನ್ ಮಾಡಿರುವ ಎಲ್ಲಾ ಸಾಧನಗಳಿಂದ ಗುಂಪನ್ನು ಅಳಿಸಲಾಗುತ್ತದೆ.</translation>
 <translation id="3022361196600037287">ಈ Chromebook ನಿಂದ <ph name="DEVICE" /> ಅನ್ನು ತೆಗೆದುಹಾಕಲಾಗುತ್ತದೆ ಮತ್ತು <ph name="PRIMARY_EMAIL" /> ಗೆ ಉಳಿಸಲಾಗುವುದಿಲ್ಲ.</translation>
 <translation id="3022978424994383087">ಅದು ಅರ್ಥವಾಗಲಿಲ್ಲ.</translation>
 <translation id="3023464535986383522">ಧ್ವನಿ ಆಯ್ಕೆ ಮಾಡಿ</translation>
@@ -4065,7 +4075,6 @@
 <translation id="3983586614702900908">ಅಪರಿಚಿತ ಮಾರಾಟಗಾರರಿಂದ ಸಾಧನಗಳು</translation>
 <translation id="3983764759749072418">Play Store ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ಈ ಸಾಧನಕ್ಕೆ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿವೆ.</translation>
 <translation id="3983769721878416534">ಕ್ಲಿಕ್ ಮಾಡುವ ಮೊದಲು ವಿಳಂಬ ಸಮಯ</translation>
-<translation id="3983793589497399077">Lens ಬಳಸಿಕೊಂಡು ಹುಡುಕಲು ಎಲ್ಲಿಯಾದರೂ ಕ್ಲಿಕ್ ಮಾಡಿ ಅಥವಾ ಡ್ರ್ಯಾಗ್ ಮಾಡಿ</translation>
 <translation id="3984135167056005094">ಇಮೇಲ್ ವಿಳಾಸವನ್ನು ಸೇರಿಸಬೇಡಿ</translation>
 <translation id="3984159763196946143">ಡೆಮೋ ಮೋಡ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ</translation>
 <translation id="3984431586879874039">ನಿಮ್ಮ ಭದ್ರತೆ ಕೀ ಅನ್ನು ನೋಡಲು ಈ ಸೈಟ್‌ಗೆ ಅನುಮತಿಸುವುದೇ?</translation>
@@ -4188,6 +4197,7 @@
 <translation id="4078903002989614318">ವಿಂಗಡಣೆ ಮತ್ತು ಪಟ್ಟಿಯ ಆಯ್ಕೆಗಳು</translation>
 <translation id="4079140982534148664">ವರ್ಧಿತ ಕಾಗುಣಿತ ಪರೀಕ್ಷೆಯನ್ನು ಬಳಸಿ</translation>
 <translation id="4082333918978320301">ನಿಮ್ಮ ಮೈಕ್ರೊಫೋನ್ ಬಳಸಲು ಯಾವುದೇ ವೆಬ್‌ಸೈಟ್‌ಗಳಿಗೆ ಅನುಮತಿಯಿಲ್ಲ</translation>
+<translation id="4083735423615351075">ಈ ಸಾಧನದಲ್ಲಿ ಟ್ಯಾಬ್‌ಗಳು ತೆರೆದಿರುತ್ತವೆ, ಆದರೆ ಈ Google ಖಾತೆಯೊಂದಿಗೆ Chrome ಗೆ ಸೈನ್ ಇನ್ ಮಾಡಿರುವ ಎಲ್ಲಾ ಸಾಧನಗಳಿಂದ ಗುಂಪನ್ನು ಅಳಿಸಲಾಗುತ್ತದೆ.</translation>
 <translation id="4084682180776658562">ಬುಕ್‌ಮಾರ್ಕ್</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> ಮುಚ್ಚಿ</translation>
 <translation id="4085298594534903246">ಈ ಪುಟದಲ್ಲಿ JavaScript ಅನ್ನು ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ.</translation>
@@ -4197,6 +4207,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">ಬಲಭಾಗದಲ್ಲಿ ತೋರಿಸಿ</translation>
+<translation id="4088879333319441249">ಟ್ಯಾಬ್ ಗುಂಪನ್ನು ರದ್ದು ಮಾಡಬೇಕೆ?</translation>
 <translation id="4089235344645910861">ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಸೇವ್ ಮಾಡಲಾಗಿದೆ. ಸಿಂಕ್‌ ಮಾಡಲು ಪ್ರಾರಂಭಿಸಲಾಗಿದೆ.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">ಪರಿಶೀಲಿಸಿದ ಪ್ರವೇಶವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ</translation>
@@ -5679,6 +5690,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />" ಸಕ್ರಿಯಗೊಳಿಸುವುದೆ?</translation>
 <translation id="5243522832766285132">ದಯವಿಟ್ಟು ಕೆಲವು ಕ್ಷಣಗಳಲ್ಲಿ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ</translation>
 <translation id="5244234799035360187">OneDrive ಈಗ Files ಆ್ಯಪ್‌ನಲ್ಲಿ ಕಾಣಿಸುತ್ತಿದೆ</translation>
+<translation id="5244466461749935369">ಸದ್ಯಕ್ಕೆ ಇರಿಸಿ</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> ಗೆ ಸಿಂಕ್ ಮಾಡಲಾಗುತ್ತಿದೆ</translation>
 <translation id="5245610266855777041">ಶಾಲಾ ಖಾತೆಯ ಮೂಲಕ ಪ್ರಾರಂಭಿಸಿ</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> ಕ್ರ್ಯಾಶ್ ಆಗಿದೆ. ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಲು ಈ ಬಲೂನ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಿ.</translation>
@@ -5947,6 +5959,7 @@
 <translation id="5453829744223920473">ನಿಮ್ಮ ಮಗು ತರಗತಿಯಲ್ಲಿ ಮಾಡುವಂತೆಯೇ ಅವರ ಶಾಲೆಯ ಎಲ್ಲಾ ಆ್ಯಪ್‌ಗಳು, ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು ಮತ್ತು ಮಾಹಿತಿಯ ಮೂಲಗಳನ್ನು ಬಳಸಬಹುದು. ಶಾಲೆಯು ಮೂಲ ನಿಯಮಗಳನ್ನು ಸೆಟ್ ಮಾಡುತ್ತದೆ.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> ಜೊತೆಗೆ</translation>
 <translation id="545484289444831485">ಇನ್ನಷ್ಟು ಹುಡುಕಾಟ ಫಲಿತಾಂಶಗಳನ್ನು ನೋಡಿ</translation>
+<translation id="5457082343331641453">ನಿಮ್ಮ ಹುಡುಕಾಟಕ್ಕೆ ಸೇರಿಸಿ</translation>
 <translation id="5457113250005438886">ಅಮಾನ್ಯ</translation>
 <translation id="5457459357461771897">ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನಿಂದ ಫೋಟೋಗಳು, ಸಂಗೀತ, ಮತ್ತು ಇತರ ಮಾಧ್ಯಮವನ್ನು ಓದಿರಿ ಮತ್ತು ಅಳಿಸಿ</translation>
 <translation id="5458214261780477893">ಡಿವೊರಾಕ್‌</translation>
@@ -6425,6 +6438,7 @@
 <translation id="5816434091619127343">ವಿನಂತಿಸಿದ ಪ್ರಿಂಟರ್ ಬದಲಾವಣೆಗಳು ಪ್ರಿಂಟರ್ ಅನ್ನು ನಿಷ್ಪ್ರಯೋಜಕಗೊಳಿಸಬಹುದು.</translation>
 <translation id="581659025233126501">ಸಿಂಕ್ ಆನ್ ಮಾಡಿ</translation>
 <translation id="5817918615728894473">ಜೋಡಿಸು</translation>
+<translation id="5817963443108180228">ಮರಳಿ ಸುಸ್ವಾಗತ, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">ಎಲ್ಲಾ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು</translation>
 <translation id="5821565227679781414">ಶಾರ್ಟ್‌ಕಟ್ ರಚಿಸಿ</translation>
 <translation id="5824976764713185207">ಇದು ಲೋಡ್ ಮಾಡುವಿಕೆಯನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಪುಟವನ್ನು ಓದಿ</translation>
@@ -7025,6 +7039,7 @@
 <translation id="6265159465845424232">Microsoft ಫೈಲ್‌ಗಳನ್ನು Microsoft OneDrive ಗೆ ಕಾಪಿ ಮಾಡುವ ಅಥವಾ ಸರಿಸುವ ಮೊದಲು ಕೇಳಿ</translation>
 <translation id="6265687851677020761">ಪೋರ್ಟ್ ತೆಗೆದುಹಾಕಿ</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" /> ಗೆ ಕನೆಕ್ಟ್ ಆಗುತ್ತಿದೆ</translation>
+<translation id="6266984048393265562">ಪ್ರೊಫೈಲ್ ಅನ್ನು ಕಸ್ಟಮೈಸ್‌ ಮಾಡಿ</translation>
 <translation id="6267166720438879315"><ph name="HOST_NAME" /> ಗೆ ನಿಮ್ಮನ್ನು ಪ್ರಮಾಣೀಕರಿಸಲು ಒಂದು ಪ್ರಮಾಣಪತ್ರವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ</translation>
 <translation id="6268252012308737255"><ph name="APP" /> ರಿಂದ ತೆರೆಯಿರಿ</translation>
 <translation id="6270309713620950855">ನಡ್ಜ್ ಮ್ಯೂಟ್ ಮಾಡಿ</translation>
@@ -7163,7 +7178,6 @@
 <translation id="6383382161803538830">ಈ ಪುಟದಲ್ಲಿ ಓದುವಿಕೆ ಮೋಡ್ ಲಭ್ಯವಿಲ್ಲ</translation>
 <translation id="638418309848716977">ಬೆಂಬಲಿತ ಲಿಂಕ್‌ಗಳು</translation>
 <translation id="6384275966486438344">ನಿಮ್ಮ ಹುಡುಕಾಟದ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಹೀಗೆ ಬದಲಾಯಿಸಿ: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{ಹೆಸರಿಸದ ಗುಂಪು - 1 ಟ್ಯಾಬ್}one{ಹೆಸರಿಸದ ಗುಂಪು - # ಟ್ಯಾಬ್‌ಗಳು}other{ಹೆಸರಿಸದ ಗುಂಪು - # ಟ್ಯಾಬ್‌ಗಳು}}</translation>
 <translation id="6385149369087767061">ಇಂಟರ್ನೆಟ್‌ಗೆ ಕನೆಕ್ಟ್ ಮಾಡಿ ಹಾಗೂ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ</translation>
 <translation id="6385382178401976503">ಕಾರ್ಡ್: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">ಎಚ್ಚರಿಕೆ - ವಿವರವಾದ ಲಾಗಿಂಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ; ಕೆಳಗಿನ ಲಾಗ್‍‍ಗಳು URL ಗಳು ಅಥವಾ ಇತರೆ ಸೂಕ್ಷ್ಮ ಮಾಹಿತಿಯನ್ನು ಒಳಗೊಂಡಿರಬಹುದು. ಈ ಮಾಹಿತಿಯನ್ನು ಸಲ್ಲಿಸಲು ನಿಮಗೆ ಯಾವುದೇ ಸಮಸ್ಯೆ ಇಲ್ಲ ಎಂಬುದನ್ನು ಪರಿಶೀಲಿಸಿ ಮತ್ತು ಖಚಿತಪಡಿಸಿ.</translation>
@@ -7242,6 +7256,7 @@
 <translation id="6445450263907939268">ನಿಮಗೆ ಈ ಬದಲಾವಣೆಗಳು ಅಗತ್ಯವಿಲ್ಲದಿದ್ದರೆ, ನಿಮ್ಮ ಹಿಂದಿನ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ನೀವು ಪುನಃಸ್ಥಾಪಿಸಬಹುದು.</translation>
 <translation id="6446213738085045933">ಡೆಸ್ಕ್‌ಟಾಪ್ ಶಾರ್ಟ್‌ಕಟ್ ರಚಿಸಿ</translation>
 <translation id="6447842834002726250">ಕುಕೀಸ್</translation>
+<translation id="6449554712554071184">ಇದು ನಿಮ್ಮ ಸಾಧನದಿಂದ ಗುಂಪನ್ನು ಶಾಶ್ವತವಾಗಿ ಅಳಿಸುತ್ತದೆ.</translation>
 <translation id="6450876761651513209">ನಿಮ್ಮ ಗೌಪ್ಯತೆಗೆ ಸಂಬಂಧಿಸಿದ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಬದಲಾಯಿಸಿ</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> ಮತ್ತು 1 ಇತರ ಟ್ಯಾಬ್}one{<ph name="PAGE_TITLE" /> ಮತ್ತು # ಇತರ ಟ್ಯಾಬ್‌ಗಳು}other{<ph name="PAGE_TITLE" /> ಮತ್ತು # ಇತರ ಟ್ಯಾಬ್‌ಗಳು}}</translation>
 <translation id="6451689256222386810">ನಿಮ್ಮ ಪಾಸ್‍‍ಫ್ರೇಸ್‍‍ ಅನ್ನು ನೀವು ಮರೆತಿದ್ದರೆ ಅಥವಾ ಈ ಸೆಟ್ಟಿಂಗ್ ಬದಲಾಯಿಸಲು ಬಯಸಿದರೆ, <ph name="BEGIN_LINK" />ಸಿಂಕ್ ಮರುಹೊಂದಿಸಿ<ph name="END_LINK" />.</translation>
@@ -7388,6 +7403,7 @@
 <translation id="6556866813142980365">ಪುನಃ ಮಾಡು</translation>
 <translation id="6556903358015358733">ಥೀಮ್ ಮತ್ತು ವಾಲ್‌ಪೇಪರ್</translation>
 <translation id="6557290421156335491">ನನ್ನ ಶಾರ್ಟ್‌ಕಟ್‌ಗಳು</translation>
+<translation id="6560061709899140565">ಇತರ ಕ್ಯಾಸ್ಟ್ ಸೆಶನ್‌ಗಳನ್ನು ತೋರಿಸಿ</translation>
 <translation id="6560151649238390891">ಸಲಹೆಯನ್ನು ಸೇರಿಸಲಾಗಿದೆ</translation>
 <translation id="6561726789132298588">ನಮೂದಿಸಿ</translation>
 <translation id="6562117348069327379">ಡೌನ್‌ಲೋಡ್‌ಗಳ ಡೈರೆಕ್ಟರಿಗೆ ಸಿಸ್ಟಂ ಲಾಗ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸಿ.</translation>
@@ -7479,6 +7495,7 @@
 <translation id="6635674640674343739">ನೆಟ್‌ವರ್ಕ್ ಕನೆಕ್ಷನ್ ಅನ್ನು ಸ್ಥಾಪಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ. ನಿಮ್ಮ ನೆಟ್‌ವರ್ಕ್ ಕನೆಕ್ಷನ್ ಅನ್ನು ಪರಿಶೀಲಿಸಿ ಹಾಗೂ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ.</translation>
 <translation id="663569763553406962">ಯಾವ ವಿಸ್ತರಣೆಗಳು ಸೈಟ್ ಅನ್ನು ರೀಡ್ ಮಾಡಬಲ್ಲವು ಅಥವಾ ಬದಲಾಯಿಸಬಲ್ಲವು ಎಂಬುದನ್ನು ನೋಡಿ</translation>
 <translation id="6635944431854494329">ಸೆಟ್ಟಿಂಗ್‌ಗಳು &gt; ಸುಧಾರಿತ &gt; ಡಯಾಗ್ನಾಸ್ಟಿಕ್ ಹಾಗೂ ಬಳಕೆಯ ಡೇಟಾವನ್ನು Google ಗೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕಳುಹಿಸಿ ಎಂಬಲ್ಲಿಂದ ಮಾಲೀಕರು ಈ ಫೀಚರ್ ಅನ್ನು ನಿಯಂತ್ರಿಸಬಹುದು.</translation>
+<translation id="6636572589916466933">ನಿಮ್ಮ <ph name="DEVICE_NAME" /> ನಲ್ಲಿ ಬಿತ್ತರಿಸುವ ವಿನಂತಿಯನ್ನು ಸಮ್ಮತಿಸಿ.</translation>
 <translation id="6636623428211296678">ಕೆಳಗೆ ಇನ್ನಷ್ಟು ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಎಕ್ಸ್‌ಪ್ಲೋರ್ ಮಾಡಿ ಅಥವಾ ಈಗಲೇ ಪೂರ್ಣಗೊಳಿಸಿ</translation>
 <translation id="6639554308659482635">SQLite ಮೆಮೊರಿ</translation>
 <translation id="6640268266988685324">ಟ್ಯಾಬ್ ತೆರೆಯಿರಿ</translation>
@@ -8165,6 +8182,7 @@
 <translation id="715396040729904728">ಲಾಂಚರ್ + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">ನಿಮ್ಮ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಹಂಚಿಕೊಳ್ಳಿ ಅಥವಾ ನಿಮ್ಮ ಸಮಸ್ಯೆಯನ್ನು ವಿವರಿಸಿ. ಸಾಧ್ಯವಾದರೆ, ನಿಮ್ಮ ಸಮಸ್ಯೆಯನ್ನು ಮರು ರಚಿಸಲು ಹಂತಗಳನ್ನು ಸೇರಿಸಿ.</translation>
 <translation id="7154130902455071009">ನಿಮ್ಮ ಪ್ರಾರಂಭ ಪುಟವನ್ನು ಇದಕ್ಕೆ ಬದಲಾಯಿಸಿ: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">ಉತ್ತಮ ಗುಣಮಟ್ಟದ ವೀಡಿಯೊ ಪಡೆಯಿರಿ ಮತ್ತು ಬ್ಯಾಟರಿ ಅವಧಿಯನ್ನು ಸೇವ್ ಮಾಡಿ. ವೀಡಿಯೊ, ನಿಮ್ಮ Cast-ಸಕ್ರಿಯಗೊಂಡ ಸ್ಕ್ರೀನ್‌ನಲ್ಲಿ ಮಾತ್ರ ಪ್ಲೇ ಆಗುತ್ತದೆ.</translation>
 <translation id="7159953856712257647">ಡಿಫಾಲ್ಟ್ ಆಗಿ ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲಾಗಿದೆ</translation>
 <translation id="7160182524506337403">ನೀವು ಈಗ ನಿಮ್ಮ ಫೋನ್‌ನ ಅಧಿಸೂಚನೆಗಳನ್ನು ವೀಕ್ಷಿಸಬಹುದು</translation>
 <translation id="7165263843655074092">ಈ ಸಾಧನದಲ್ಲಿ ನೀವು ಪ್ರಮಾಣಿತ ಭದ್ರತಾ ರಕ್ಷಣೆಯನ್ನು ಪಡೆಯುತ್ತಿರುವಿರಿ</translation>
@@ -9021,6 +9039,7 @@
 <translation id="7788948939674438635">ನಿಮ್ಮ ಕೀಬೋರ್ಡ್ ಅನ್ನು ಲಾಕ್ ಮಾಡಲು ಸೈಟ್‌ಗಳಿಗೆ ಅನುಮತಿಸಬೇಡಿ</translation>
 <translation id="7789963078219276159">ಆರಂಭಿಕ ಪುಟದ ಹಿನ್ನೆಲೆಯನ್ನು <ph name="CATEGORY" /> ಗೆ ಬದಲಾಯಿಸಲಾಗಿದೆ.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">ಈ Chromebook ನಲ್ಲಿ ಫೈಲ್‌ಗಳು</translation>
 <translation id="7791269138074599214">ಇನ್‌ಪುಟ್ ವಿಧಾನ</translation>
 <translation id="7791429245559955092">ನೀವು ಪ್ರಸ್ತುತ ಬಳಸುತ್ತಿರುವ Chrome ಪ್ರೊಫೈಲ್‌ನಲ್ಲಿ ಈ ಆ್ಯಪ್ ಅನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲಾಗುತ್ತದೆ.</translation>
 <translation id="7791436592012979144">ಹಿಮ್ಮುಖ ಸ್ಕ್ರಾಲ್ ಮಾಡುವಿಕೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ</translation>
@@ -9050,6 +9069,7 @@
 <translation id="7810202088502699111">ಈ ಪುಟದಲ್ಲಿ ಪಾಪ್-ಅಪ್‌ಗಳನ್ನು ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ.</translation>
 <translation id="7810367892333449285">ನಿಮ್ಮ ನಮೂದು <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ ವಿಳಾಸ<ph name="LPA_2" />$<ph name="LPA_3" />ಐಚ್ಛಿಕ ಹೊಂದಾಣಿಕೆಯ ID<ph name="LPA_4" /> ಫಾರ್ಮ್ಯಾಟ್‌ನಲ್ಲಿರಬೇಕು</translation>
 <translation id="7811263553491007091">ಪುನಃ ಪ್ರಯತ್ನಿಸಿ ಅಥವಾ ಕೆಳಗಿನ ಈ ಹಿಂದೆ ಜನರೇಟ್ ಮಾಡಲಾದ ಥೀಮ್‌ಗಳಲ್ಲಿ ಒಂದನ್ನು ಆಯ್ಕೆಮಾಡಿ.</translation>
+<translation id="7814090115158024843">ಈ ಸೈಟ್‌ಗಳಲ್ಲಿ ಬರವಣಿಗೆಯ ಸಹಾಯವನ್ನು ಎಂದಿಗೂ ನೀಡಬೇಡಿ</translation>
 <translation id="7814458197256864873">&amp;ನಕಲಿಸಿ</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> ಗೆ ಸಂಬಂಧಿಸಿದ ಶಾರ್ಟ್‌ಕಟ್ <ph name="SHORTCUT" /> ಅನ್ನು ಎಡಿಟ್ ಮಾಡಿ</translation>
@@ -9281,8 +9301,10 @@
 <translation id="7974936243149753750">ಓವರ್‌ಸ್ಕ್ಯಾನ್</translation>
 <translation id="7975504106303186033">ನೀವು ಈ Chrome Education ಸಾಧನವನ್ನು ಶಿಕ್ಷಣ ಖಾತೆಯಲ್ಲಿ ನೋಂದಾಯಿಸಬೇಕು. ಹೊಸ ಖಾತೆಗಾಗಿ ಸೈನ್ ಅಪ್ ಮಾಡಲು, g.co/workspace/edusignup ಗೆ ಭೇಟಿ ನೀಡಿ.</translation>
 <translation id="7977451675950311423">ಡೇಟಾ ಉಲ್ಲಂಘನೆಯಲ್ಲಿ ಅಪಾಯಕ್ಕೀಡಾದ ಪಾಸ್‌ವರ್ಡ್ ಅನ್ನು ನೀವು ಬಳಸಿದರೆ ನಿಮಗೆ ಎಚ್ಚರಿಕೆ ನೀಡುತ್ತದೆ.</translation>
+<translation id="797824194429476746">ಈ ಸಾಧನದಲ್ಲಿ ಟ್ಯಾಬ್‌ಗಳು ತೆರೆದಿರುತ್ತವೆ, ಆದರೆ ಗುಂಪನ್ನು ಶಾಶ್ವತವಾಗಿ ಅಳಿಸಲಾಗುತ್ತದೆ.</translation>
 <translation id="7978412674231730200">ಖಾಸಗಿ ಕೀಲಿ</translation>
 <translation id="7978450511781612192">ಇದು ನಿಮ್ಮ Google ಖಾತೆಗಳಿಂದ ನಿಮ್ಮನ್ನು ಸೈನ್ ಔಟ್ ಮಾಡುತ್ತದೆ. ನಿಮ್ಮ ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ, ಪಾಸ್‌ವರ್ಡ್‌ಗಳು ಹಾಗೂ ಹೆಚ್ಚಿನವುಗಳನ್ನು ಇನ್ನು ಮುಂದೆ ಸಿಂಕ್ ಮಾಡಲಾಗುವುದಿಲ್ಲ.</translation>
+<translation id="7980066177668669492">Base64-ಎನ್‌ಕೋಡ್ ಮಾಡಿದ ASCII, ಹಲವು ಪ್ರಮಾಣಪತ್ರಗಳು</translation>
 <translation id="7980084013673500153">ಸ್ವತ್ತು ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" /> ಗಾಗಿ ಸೇವ್ ಮಾಡಿದ ನಿಮ್ಮ ಪಾಸ್‌ಕೀ ಅನ್ನು ಬಳಸಿ</translation>
 <translation id="7981662863948574132">ಸಾಧನದ EID ಮತ್ತು QR ಕೋಡ್ ಪಾಪ್ಅಪ್‌ ಅನ್ನು ತೋರಿಸಿ</translation>
@@ -9692,6 +9714,7 @@
 <translation id="8276242035951017580">ನಿಮ್ಮ ಕ್ಯಾಮರಾವನ್ನು ಬಳಸಲು ಯಾವುದೇ ಆ್ಯಪ್‌ಗಳನ್ನು ಅನುಮತಿಸಲಾಗುವುದಿಲ್ಲ</translation>
 <translation id="8276560076771292512">ಖಾಲಿ ಕ್ಯಾಷ್ ಮತ್ತು ಹಾರ್ಡ್ ಮರುಲೋಡ್</translation>
 <translation id="8276850948802942358">ಥರ್ಡ್-ಪಾರ್ಟಿ ಕುಕೀಗಳನ್ನು ಬಳಸಲು ಸೈಟ್‌ಗೆ ತಾತ್ಕಾಲಿಕ ಅನುಮತಿಯನ್ನು ನೀಡುವ ಕುರಿತು ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ</translation>
+<translation id="8277907305629781277">ನೀವು ಈ ಪಾಸ್‌ಕೀಯನ್ನು <ph name="DATE" /> ರಂದು ರಚಿಸಿದ್ದೀರಿ</translation>
 <translation id="8280267190418431666">ನಿಮ್ಮ ಭಾಷೆಗಳಲ್ಲಿನ ವೆಬ್‌ಸೈಟ್‌ಗಳು</translation>
 <translation id="828180235270931531">ಇತರ ಲಭ್ಯವಿರುವ ಪ್ರಿಂಟರ್‌ಗಳು</translation>
 <translation id="8281886186245836920">ಸ್ಕಿಪ್‌ ಮಾಡಿ</translation>
@@ -10371,7 +10394,6 @@
 <translation id="8784626084144195648">ಶೇಖರಿಸಿದ ಸರಾಸರಿ</translation>
 <translation id="8785622406424941542">ಸ್ಟೈಲಸ್</translation>
 <translation id="8786824282808281903">ನಿಮ್ಮ ಮಗು ಈ ಐಕಾನ್ ಅನ್ನು ನೋಡಿದ ನಂತರ, ಗುರುತಿಸಲು ಅಥವಾ ಖರೀದಿಗಳನ್ನು ಅನುಮೋದಿಸಲು ಫಿಂಗರ್‌ಪ್ರಿಂಟ್ ಅನ್ನು ಬಳಸಬಹುದು.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{ಹೆಸರಿಸದ ಗುಂಪು - 1 ಟ್ಯಾಬ್}one{ಹೆಸರಿಸದ ಗುಂಪು - # ಟ್ಯಾಬ್‌ಗಳು}other{ಹೆಸರಿಸದ ಗುಂಪು - # ಟ್ಯಾಬ್‌ಗಳು}}</translation>
 <translation id="8787752878731558379">ನೀವು ಥರ್ಡ್-ಪಾರ್ಟಿ ಕುಕೀಗಳನ್ನು ಏಕೆ ಅನುಮತಿಸುತ್ತೀರಿ ಎಂದು ಹೇಳುವ ಮೂಲಕ Chrome ಅನ್ನು ಸುಧಾರಿಸಲು ನಮಗೆ ಸಹಾಯ ಮಾಡಿ</translation>
 <translation id="8789898473175677810">ಕ್ರಾಸ್-ಸೈಟ್ ಟ್ರ್ಯಾಕಿಂಗ್ ಅನ್ನು ಕಡಿಮೆ ಮಾಡಲು ಮತ್ತು ಥರ್ಡ್-ಪಾರ್ಟಿ ಕುಕಿಗಳ ಬಳಕೆಯನ್ನು ಹಂತಹಂತವಾಗಿ ತೆಗೆದುಹಾಕಲು Chrome <ph name="LINK_BEGIN" />ಸಹಯೋಗದ ಪ್ರಯತ್ನದ<ph name="LINK_END" /> ಭಾಗವಾಗಿದೆ. ಆದರೆ ನಾವು ಅದನ್ನು ಜವಾಬ್ದಾರಿಯುತವಾಗಿ ಮಾಡಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದೇವೆ ಏಕೆಂದರೆ ವಿನ್ಯಾಸಗೊಳಿಸಿದಂತೆ ಕೆಲಸ ಮಾಡಲು ಅನೇಕ ಸೈಟ್‌ಗಳು ಥರ್ಡ್-ಪಾರ್ಟಿ ಕುಕಿಗಳನ್ನು ಅವಲಂಬಿಸಿವೆ. ಉದಾಹರಣೆಗೆ, ಅನೇಕ ಸೈಟ್‌ಗಳು ಸೈನ್ ಇನ್ ಮಾಡುವುದನ್ನು ಸರಳಗೊಳಿಸಲು, ಎಂಬೆಡ್ ಮಾಡಲಾದ ಚಾಟ್ ಮತ್ತು ಕಾಮೆಂಟ್ ಸಿಸ್ಟಮ್‌ಗಳನ್ನು ಬೆಂಬಲಿಸಲು ಮತ್ತು ಪಾವತಿ ಸೇವೆಗಳಿಗಾಗಿ ಥರ್ಡ್-ಪಾರ್ಟಿ ಕುಕಿಗಳನ್ನು ಬಳಸುತ್ತವೆ. ಮತ್ತು ಜಾಹೀರಾತುಗಳನ್ನು ಉತ್ತಮವಾಗಿ ವೈಯಕ್ತೀಕರಿಸಲು ಜಾಹೀರಾತುದಾರರು ಸಾಮಾನ್ಯವಾಗಿ ಥರ್ಡ್-ಪಾರ್ಟಿ ಕುಕಿಗಳನ್ನು ಬಳಸುತ್ತಾರೆ. ವೆಚ್ಚವನ್ನು ಪಾವತಿಸಲು ಮತ್ತು ತಮ್ಮ ಆನ್‌ಲೈನ್ ಕಂಟೆಂಟ್‌ ಅನ್ನು ಶುಲ್ಕವಿಲ್ಲದೇ ಇರಿಸಿಕೊಳ್ಳುವುದಕ್ಕಾಗಿ ನೆರವು ಪಡೆಯಲು ಸೈಟ್‌ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಜಾಹೀರಾತುಗಳನ್ನು ಅವಲಂಬಿಸುವ ಕಾರಣ ಅದು ಮುಖ್ಯವಾಗುತ್ತದೆ.</translation>
 <translation id="8791157330927639737">ಅಪ್‌ಡೇಟ್ ಕುರಿತು ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ</translation>
@@ -10606,6 +10628,7 @@
 <translation id="8962863356073277855">URL ನ ಫಾರ್ಮ್ಯಾಟ್ ಹೀಗಿರಬೇಕು https://www.example.com</translation>
 <translation id="8962918469425892674">ಈ ಸೈಟ್ ಚಲನೆ ಅಥವಾ ಲೈಟ್ ಸೆನ್ಸರ್‌ಗಳನ್ನು ಬಳಸುತ್ತಿದೆ.</translation>
 <translation id="8963117664422609631">ಸೈಟ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಗೆ ಹೋಗಿ</translation>
+<translation id="8964795217937248330">ಟ್ಯಾಬ್(ಗಳನ್ನು) ಮುಚ್ಚಬೇಕೆ ಮತ್ತು ಗುಂಪನ್ನು ಅಳಿಸಬೇಕೆ?</translation>
 <translation id="8965037249707889821">ಹಳೆಯ ಪಾಸ್‌ವರ್ಡ್ ನಮೂದಿಸಿ</translation>
 <translation id="8966809848145604011">ಇತರ ಪ್ರೊಫೈಲ್‌ಗಳು</translation>
 <translation id="8967427617812342790">ಓದುವ ಪಟ್ಟಿಗೆ ಸೇರಿಸಿ</translation>
@@ -11040,6 +11063,7 @@
 <translation id="979345485590886759">ನಿಮ್ಮ ಮೌಸ್ ಪಾಯಿಂಟರ್ ಅನ್ನು ಲಾಕ್ ಮಾಡುವಂತೆ ಸೈಟ್‌ಗಳು ಕೇಳಬಹುದು</translation>
 <translation id="980731642137034229">ಆ್ಯಕ್ಷನ್ ಮೆನು ಬಟನ್</translation>
 <translation id="981121421437150478">ಆಫ್‌ಲೈನ್</translation>
+<translation id="98235653036850093">ಹಾಯ್, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">ಎಲ್ಲ ಟ್ಯಾಬ್‌ಗಳನ್ನು ಮುಚ್ಚಿ</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - ಕ್ಯಾಮರಾ ಮತ್ತು ಮೈಕ್ರೋಫೋನ್ ರೆಕಾರ್ಡಿಂಗ್</translation>
 <translation id="984275831282074731">ಪಾವತಿ ವಿಧಾನಗಳು</translation>
diff --git a/chrome/app/resources/generated_resources_ko.xtb b/chrome/app/resources/generated_resources_ko.xtb
index 693fffef..508e562 100644
--- a/chrome/app/resources/generated_resources_ko.xtb
+++ b/chrome/app/resources/generated_resources_ko.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux 디스크 공간이 부족할 수 있습니다. Linux 디스크 공간을 늘린 후 <ph name="LINK_START" />설정<ph name="LINK_END" />에서 복원을 다시 시도해 보세요.</translation>
 <translation id="1261380933454402672">약한 규칙</translation>
 <translation id="126156426083987769">데모 모드 기기 라이선스에 문제가 발생했습니다.</translation>
+<translation id="1261885284931493480">탭 및 그룹을 삭제하시겠습니까?</translation>
 <translation id="1263231323834454256">읽기 목록</translation>
 <translation id="1263733306853729545"><ph name="MINUS" /> 및 <ph name="EQUAL" /> 키를 사용하여 후보 목록을 페이지에 표시</translation>
 <translation id="126387934568812801">이 스크린샷 및 열려 있는 탭의 제목 포함</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">Wi-Fi 네트워크 발견됨</translation>
 <translation id="1634783886312010422"><ph name="WEBSITE" />에서 비밀번호를 이미 변경하셨나요?</translation>
 <translation id="1636212173818785548">확인</translation>
+<translation id="1636542522761359943"><ph name="PROFILE_NAME" />님, 환영합니다</translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />앱 데이터에는 연락처, 메시지, 사진을 비롯하여 개발자 설정에 따라 앱에서 저장한 모든 데이터가 포함될 수 있습니다. 백업 데이터는 Drive 스토리지 저장용량에 포함되지 않습니다.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />이 서비스는 설정에서 사용 중지할 수 있습니다.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">iPhone에서 이 북마크 이용하기</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">비밀번호 관리자를 MacOS 키체인과 함께 사용하려면 Chromium을 다시 실행한 다음 키체인 액세스를 허용하세요. 탭을 다시 실행하면 탭이 다시 열립니다.</translation>
 <translation id="1653958716132599769">관련 탭 그룹화</translation>
 <translation id="1654580009054503925">요청 표시가 허용되지 않음</translation>
+<translation id="1654713139320245449">전송 대상을 찾을 수 없습니다. 도움이 필요하신가요?</translation>
 <translation id="1656528038316521561">배경 불투명도</translation>
 <translation id="1657406563541664238">사용 통계 및 비정상 종료 보고서가 Google로 자동 전송되게 하여 <ph name="PRODUCT_NAME" /> 개선에 도움 주기</translation>
 <translation id="1657937299377480641">교육 자료에 액세스하기 위해 다시 로그인하려면 부모님에게 권한을 부여해 달라고 요청하세요.</translation>
@@ -1642,12 +1645,14 @@
 <translation id="2187895286714876935">서버 인증서 가져오기 오류</translation>
 <translation id="2187906491731510095">확장 프로그램 업데이트됨</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> 열기</translation>
+<translation id="2188919919468240749">탭 그룹을 삭제하시겠습니까?</translation>
 <translation id="2190069059097339078">WiFi 사용자 인증 정보 Getter</translation>
 <translation id="219008588003277019">네이티브 클라이언트 모듈: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(비어있음)</translation>
 <translation id="2190967441465539539">카메라 및 마이크에 액세스할 수 없음</translation>
 <translation id="2191754378957563929">사용</translation>
 <translation id="2192505247865591433">웹 브라우저</translation>
+<translation id="219283042927675668">그룹에 포함된 탭</translation>
 <translation id="2193365732679659387">신뢰 설정</translation>
 <translation id="2194856509914051091">고려사항</translation>
 <translation id="2195331105963583686">이후로도 이 <ph name="DEVICE_TYPE" /> 기기를 계속 사용할 수는 있지만, 소프트웨어 및 보안 업데이트를 자동으로 받을 수 없게 됩니다.</translation>
@@ -1872,6 +1877,7 @@
 <translation id="2350133097354918058">새로고침 완료</translation>
 <translation id="2350182423316644347">애플리케이션 초기화 중...</translation>
 <translation id="235028206512346451">기기를 두고 떠나면 화면이 자동으로 잠깁니다. 기기 앞에 있으면 화면의 절전모드 해제 상태가 더 오래 유지됩니다. 잠금 화면을 사용하고 있지 않은 경우 기기가 잠기지 않고 절전 모드로 전환됩니다.</translation>
+<translation id="2352305801620974284">이 기기에 로그인하면 Google 계정에서 비밀번호 등을 가져옵니다.</translation>
 <translation id="2352662711729498748">1MB 미만</translation>
 <translation id="2352810082280059586">잠금 화면 메모는 자동으로 <ph name="LOCK_SCREEN_APP_NAME" />에 저장됩니다. 가장 최근 메모는 잠금 화면에 계속 표시됩니다.</translation>
 <translation id="2353297238722298836">카메라 및 마이크 허용됨</translation>
@@ -2082,6 +2088,7 @@
 <translation id="249113932447298600">죄송합니다. 현재 이 기기(<ph name="DEVICE_LABEL" />)는 지원되지 않습니다.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> 음성 미리보기</translation>
 <translation id="2492461744635776704">인증서 로그인 요청 준비 중</translation>
+<translation id="2492964937550251173">탭을 닫고 그룹을 삭제하시겠습니까?</translation>
 <translation id="249330843868392562">TTS(텍스트 음성 변환) 설정 열기</translation>
 <translation id="2494555621641843783">Steam을 설치할 수 없음</translation>
 <translation id="2495141202137516054">Drive에서</translation>
@@ -2251,6 +2258,7 @@
 <translation id="262087792756666314">측면 패널 상단의 고정 버튼을 클릭하여 이 기능을 고정하면 쉽게 액세스할 수 있습니다</translation>
 <translation id="2620900772667816510">블루투스 초해상도</translation>
 <translation id="262154978979441594">Google 어시스턴트 음성 모델 학습시키기</translation>
+<translation id="2622280935687585828">사용 중지된 사이트에서 <ph name="SITE_NAME" /> 삭제</translation>
 <translation id="26224892172169984">모든 사이트에서 프로토콜 처리 허용 안함</translation>
 <translation id="262373406453641243">콜맥</translation>
 <translation id="2624045385113367716">MIDI 기기 제어 및 재프로그래밍 허용됨</translation>
@@ -2424,6 +2432,7 @@
 <translation id="2743387203779672305">클립보드로 복사</translation>
 <translation id="274362947316498129">앱에서 <ph name="DEVICE_NAME" /> 액세스를 시도합니다. 액세스를 허용하려면 <ph name="DEVICE_NAME" /> 개인 정보 보호 스위치를 끄세요.</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313"><ph name="DEVICE_NAME" />에서 전송 요청을 수락해야 합니다</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" />에 로그인</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">영문 철자 및 문법 검사</translation>
@@ -2794,6 +2803,7 @@
 <translation id="3021066826692793094">나비</translation>
 <translation id="3021678814754966447">프레임 소스 보기(&amp;V)</translation>
 <translation id="3021902017511220299">스캔할 수 없습니다. 관리자가 이 작업을 차단했습니다.</translation>
+<translation id="3022068420678496307">이렇게 하면 이 Google 계정으로 Chrome에 로그인된 모든 기기에서 그룹이 삭제됩니다.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" />가 Chromebook에서 삭제되며 <ph name="PRIMARY_EMAIL" />에 저장되지 않습니다.</translation>
 <translation id="3022978424994383087">인식하지 못했습니다.</translation>
 <translation id="3023464535986383522">텍스트 읽어주기</translation>
@@ -4073,7 +4083,6 @@
 <translation id="3983586614702900908">알 수 없는 공급업체의 기기</translation>
 <translation id="3983764759749072418">Play 스토어 애플리케이션이 이 기기에 액세스할 수 있습니다.</translation>
 <translation id="3983769721878416534">지연 후 클릭</translation>
-<translation id="3983793589497399077">아무 곳이나 클릭하거나 드래그하여 렌즈로 검색</translation>
 <translation id="3984135167056005094">이메일 주소를 포함하지 않음</translation>
 <translation id="3984159763196946143">데모 모드를 시작할 수 없음</translation>
 <translation id="3984431586879874039">이 사이트에서 보안 키를 보도록 허용할까요?</translation>
@@ -4196,6 +4205,7 @@
 <translation id="4078903002989614318">정렬 및 목록 옵션</translation>
 <translation id="4079140982534148664">향상된 맞춤법 검사 기능 사용</translation>
 <translation id="4082333918978320301">마이크를 사용할 수 있는 웹사이트가 없습니다.</translation>
+<translation id="4083735423615351075">이 기기에서는 탭이 열린 상태로 유지되지만 이 Google 계정으로 Chrome에 로그인된 모든 기기에서는 그룹이 삭제됩니다.</translation>
 <translation id="4084682180776658562">북마크</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> 닫기</translation>
 <translation id="4085298594534903246">이 페이지에서 자바스크립트가 차단되었습니다.</translation>
@@ -4203,6 +4213,7 @@
 <translation id="4085620044235559093"><ph name="FILE_TYPE" /> 파일을 열 앱을 선택하세요</translation>
 <translation id="4087089424473531098">확장 프로그램(파일: <ph name="EXTENSION_FILE" />)을 만들었습니다.</translation>
 <translation id="4087328411748538168">오른쪽에 표시</translation>
+<translation id="4088879333319441249">탭 그룹을 해제하시겠습니까?</translation>
 <translation id="4089235344645910861">설정이 저장되었으며, 동기화가 시작되었습니다.</translation>
 <translation id="4089817585533500276">Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">인증 액세스 서비스 사용</translation>
@@ -5685,6 +5696,7 @@
 <translation id="5242724311594467048">'<ph name="EXTENSION_NAME" />'을(를) 사용하시겠습니까?</translation>
 <translation id="5243522832766285132">잠시 후 다시 시도해 주세요.</translation>
 <translation id="5244234799035360187">이제 Files 앱에 OneDrive가 표시됨</translation>
+<translation id="5244466461749935369">보관하기</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" />에 동기화</translation>
 <translation id="5245610266855777041">학교 계정으로 시작하세요</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" />이(가) 다운되었습니다. 앱을 다시 시작하려면 이 풍선을 클릭하세요.</translation>
@@ -5953,6 +5965,7 @@
 <translation id="5453829744223920473">자녀는 수업 시간과 마찬가지로 모든 학교 앱, 북마크, 리소스를 사용할 수 있습니다. 기본 규칙은 학교에서 정합니다.</translation>
 <translation id="5454166040603940656">제공업체: <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">검색결과 더보기</translation>
+<translation id="5457082343331641453">검색에 추가</translation>
 <translation id="5457113250005438886">잘못된 데이터</translation>
 <translation id="5457459357461771897">컴퓨터에서 사진, 음악, 기타 미디어 조회 및 삭제</translation>
 <translation id="5458214261780477893">드보락</translation>
@@ -6430,6 +6443,7 @@
 <translation id="5816434091619127343">프린터 변경을 요청하면 프린터를 사용할 수 없게 됩니다.</translation>
 <translation id="581659025233126501">동기화 사용 설정</translation>
 <translation id="5817918615728894473">페어링</translation>
+<translation id="5817963443108180228"><ph name="PROFILE_NAME" />님, 다시 방문해 주셔서 감사합니다</translation>
 <translation id="581911254119283028">모든 애플리케이션</translation>
 <translation id="5821565227679781414">바로가기 만들기</translation>
 <translation id="5824976764713185207">로드가 끝나면 자동으로 페이지를 읽습니다.</translation>
@@ -7030,6 +7044,7 @@
 <translation id="6265159465845424232">Microsoft 파일을 Microsoft OneDrive로 복사하거나 이동하기 전에 확인</translation>
 <translation id="6265687851677020761">포트 삭제</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" />에 연결 중</translation>
+<translation id="6266984048393265562">프로필 맞춤설정</translation>
 <translation id="6267166720438879315"><ph name="HOST_NAME" />에 대해 인증을 받으려면 인증서를 선택하세요.</translation>
 <translation id="6268252012308737255"><ph name="APP" />(으)로 열기</translation>
 <translation id="6270309713620950855">알림 음소거</translation>
@@ -7168,7 +7183,6 @@
 <translation id="6383382161803538830">이 페이지에서는 읽기 모드를 사용할 수 없음</translation>
 <translation id="638418309848716977">지원되는 링크</translation>
 <translation id="6384275966486438344">다음으로 검색 설정 변경: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{이름이 지정되지 않은 그룹 - 탭 1개}other{이름이 지정되지 않은 그룹 - 탭 #개}}</translation>
 <translation id="6385149369087767061">인터넷에 연결한 후 다시 시도해 주세요</translation>
 <translation id="6385382178401976503">카드: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">경고 - 자세한 로깅이 사용 설정되었으며 아래의 로그에 URL 또는 기타 민감한 정보가 포함될 수 있습니다. 정보를 제출해도 되는지 검토하고 확인하시기 바랍니다.</translation>
@@ -7247,6 +7261,7 @@
 <translation id="6445450263907939268">변경하지 않으려는 경우 이전 설정을 복원할 수 있습니다.</translation>
 <translation id="6446213738085045933">바탕화면 바로가기 만들기</translation>
 <translation id="6447842834002726250">쿠키</translation>
+<translation id="6449554712554071184">이렇게 하면 기기에서 그룹이 완전히 삭제됩니다.</translation>
 <translation id="6450876761651513209">개인 정보 보호 관련 설정 변경</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> 외 탭 1개}other{<ph name="PAGE_TITLE" /> 외 탭 #개}}</translation>
 <translation id="6451689256222386810">암호를 잊어버렸거나 이 설정을 변경하려면 <ph name="BEGIN_LINK" />동기화를 재설정<ph name="END_LINK" />합니다.</translation>
@@ -7393,6 +7408,7 @@
 <translation id="6556866813142980365">다시실행</translation>
 <translation id="6556903358015358733">테마 및 배경화면</translation>
 <translation id="6557290421156335491">내 바로가기</translation>
+<translation id="6560061709899140565">다른 전송 세션 표시</translation>
 <translation id="6560151649238390891">추천 그림 이모티콘 삽입됨</translation>
 <translation id="6561726789132298588">입력</translation>
 <translation id="6562117348069327379">시스템 로그를 다운로드 디렉터리에 저장합니다.</translation>
@@ -7482,6 +7498,7 @@
 <translation id="6635674640674343739">네트워크 연결을 설정할 수 없습니다. 네트워크 연결을 확인한 후 다시 시도해 보세요.</translation>
 <translation id="663569763553406962">사이트를 읽거나 변경할 수 있는 확장 프로그램 보기</translation>
 <translation id="6635944431854494329">소유자는 설정 &gt; 고급 &gt; 진단 및 사용 데이터를 Google에 자동 전송에서 이 기능을 제어할 수 있습니다.</translation>
+<translation id="6636572589916466933"><ph name="DEVICE_NAME" />에서 전송 요청을 수락합니다</translation>
 <translation id="6636623428211296678">아래에서 더 많은 설정을 살펴보거나 지금 완료하세요</translation>
 <translation id="6639554308659482635">SQLite 메모리</translation>
 <translation id="6640268266988685324">탭 열기</translation>
@@ -8167,6 +8184,7 @@
 <translation id="715396040729904728">런처 + Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">의견을 공유하거나 문제를 설명해 주세요. 가능하면 문제를 재현하는 방법도 알려주세요.</translation>
 <translation id="7154130902455071009">다음으로 시작 페이지 변경: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">우수한 화질의 동영상을 감상하고 배터리를 더 오래 사용하세요. 동영상은 Cast 지원 화면에서만 재생됩니다.</translation>
 <translation id="7159953856712257647">기본적으로 설치됨</translation>
 <translation id="7160182524506337403">이제 휴대전화의 알림을 확인할 수 있습니다.</translation>
 <translation id="7165263843655074092">이 기기에 표준 보안 보호 조치가 적용되고 있습니다.</translation>
@@ -9024,6 +9042,7 @@
 <translation id="7788948939674438635">사이트에서 키보드 잠금이 허용되지 않음</translation>
 <translation id="7789963078219276159">시작 페이지 배경화면이 <ph name="CATEGORY" />(으)로 변경되었습니다.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">이 Chromebook의 파일</translation>
 <translation id="7791269138074599214">입력 방법</translation>
 <translation id="7791429245559955092">이 애플리케이션이 현재 사용하는 Chrome 프로필에 설치됩니다</translation>
 <translation id="7791436592012979144">역방향 스크롤 사용 설정됨</translation>
@@ -9053,6 +9072,7 @@
 <translation id="7810202088502699111">이 페이지에서 팝업이 차단되었습니다.</translation>
 <translation id="7810367892333449285">입력되는 내용은 <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ 주소<ph name="LPA_2" />$<ph name="LPA_3" />일치 ID(선택사항)<ph name="LPA_4" /> 형식이어야 합니다.</translation>
 <translation id="7811263553491007091">다시 시도하거나 아래에서 이전에 생성한 테마 중 하나를 선택하세요.</translation>
+<translation id="7814090115158024843">이 사이트에서 글쓰기 도움을 제공하지 않음</translation>
 <translation id="7814458197256864873">복사(&amp;C)</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" />의 <ph name="SHORTCUT" /> 단축키 수정</translation>
@@ -9285,8 +9305,10 @@
 <translation id="7974936243149753750">오버스캔</translation>
 <translation id="7975504106303186033">Chrome Education 기기를 Education 계정에 등록해야 합니다. 새 계정으로 가입하려면 g.co/workspace/edusignup 페이지로 이동하세요.</translation>
 <translation id="7977451675950311423">정보 유출로 인해 유출된 비밀번호를 사용하면 경고를 보냅니다.</translation>
+<translation id="797824194429476746">이 기기에서 탭은 열린 상태로 유지되지만, 그룹은 완전히 삭제됩니다.</translation>
 <translation id="7978412674231730200">비공개 키</translation>
 <translation id="7978450511781612192">Google 계정에서 로그아웃됩니다. 북마크, 방문 기록, 비밀번호 등이 더 이상 동기화되지 않습니다.</translation>
+<translation id="7980066177668669492">Base64 인코딩 ASCII, 여러 인증서</translation>
 <translation id="7980084013673500153">애셋 ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" />에 저장된 패스키 사용</translation>
 <translation id="7981662863948574132">기기 EID 및 QR 코드 팝업 표시</translation>
@@ -9699,6 +9721,7 @@
 <translation id="8276242035951017580">카메라를 사용하도록 허용된 앱이 없습니다.</translation>
 <translation id="8276560076771292512">캐시 비우기 및 강력 새로고침</translation>
 <translation id="8276850948802942358">사이트에 서드 파티 쿠키를 사용할 수 있는 임시 권한 부여에 대해 자세히 알아보기</translation>
+<translation id="8277907305629781277"><ph name="DATE" />에 이 패스키를 생성했습니다</translation>
 <translation id="8280267190418431666">내 언어로 된 웹사이트</translation>
 <translation id="828180235270931531">사용 가능한 다른 프린터</translation>
 <translation id="8281886186245836920">건너뛰기</translation>
@@ -10377,7 +10400,6 @@
 <translation id="8784626084144195648">비닝 평균</translation>
 <translation id="8785622406424941542">스타일러스</translation>
 <translation id="8786824282808281903">자녀에게 이 아이콘이 표시되면 자녀가 본인의 지문으로 신원을 확인하거나 구매를 승인할 수 있습니다</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{이름이 지정되지 않은 그룹 - 탭 1개}other{이름이 지정되지 않은 그룹 - 탭 #개}}</translation>
 <translation id="8787752878731558379">서드 파티 쿠키를 허용한 이유를 알려주시면 Chrome을 개선하는 데 도움이 됩니다.</translation>
 <translation id="8789898473175677810">Chrome은 크로스 사이트 추적을 줄이고 서드 파티 쿠키의 사용을 단계적으로 폐지하기 위한 <ph name="LINK_BEGIN" />협업<ph name="LINK_END" />의 일환입니다. 하지만 Google은 책임감 있게 이 작업을 하기 위해 노력하고 있습니다. 많은 사이트가 서드 파티 쿠키를 사용해 의도한 대로 작동하기 때문입니다. 예를 들어 많은 사이트에서 로그인을 간소화하고, 삽입된 채팅 및 댓글 시스템을 지원하고, 결제 서비스를 제공하기 위해 서드 파티 쿠키를 사용합니다. 또한 광고주는 광고를 더 효과적으로 개인화하기 위해 서드 파티 쿠키를 사용하는 경우가 많습니다. 이러한 점이 중요한 이유는 사이트에서 비용을 지불하고 온라인 콘텐츠를 무료로 제공하기 위해 광고에 의존하는 경우가 많기 때문입니다.</translation>
 <translation id="8791157330927639737">업데이트 자세히 알아보기</translation>
@@ -10612,6 +10634,7 @@
 <translation id="8962863356073277855">URL 형식이 https://www.example.com이어야 합니다.</translation>
 <translation id="8962918469425892674">사이트에서 모션 센서 또는 조도 센서를 사용 중입니다.</translation>
 <translation id="8963117664422609631">사이트 설정으로 이동</translation>
+<translation id="8964795217937248330">탭을 닫고 그룹을 삭제하시겠습니까?</translation>
 <translation id="8965037249707889821">이전 비밀번호 입력</translation>
 <translation id="8966809848145604011">기타 프로필</translation>
 <translation id="8967427617812342790">읽기 목록에 추가</translation>
@@ -11045,6 +11068,7 @@
 <translation id="979345485590886759">사이트에서 마우스 포인터 잠금을 요청할 수 있음</translation>
 <translation id="980731642137034229">작업 메뉴 버튼</translation>
 <translation id="981121421437150478">오프라인</translation>
+<translation id="98235653036850093"><ph name="PROFILE_NAME" />님, 안녕하세요.</translation>
 <translation id="983192555821071799">탭 모두 닫기</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - 카메라 녹화 및 마이크 녹음 중</translation>
 <translation id="984275831282074731">결제 수단</translation>
diff --git a/chrome/app/resources/generated_resources_ky.xtb b/chrome/app/resources/generated_resources_ky.xtb
index c0c76c3..0efdc3b 100644
--- a/chrome/app/resources/generated_resources_ky.xtb
+++ b/chrome/app/resources/generated_resources_ky.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux дискинде орун жетишсиз болушу мүмкүн. Linux дискинде орун бошотуп, <ph name="LINK_START" />Параметрлерден<ph name="LINK_END" /> кайра калыбына келтирип көрсөңүз болот.</translation>
 <translation id="1261380933454402672">Жөнөкөй</translation>
 <translation id="126156426083987769">Түзмөктүн демо режиминин уруксаттамасында маселе келип чыкты.</translation>
+<translation id="1261885284931493480">Өтмөк(-төр) алынып салынып, топ өчүрүлсүнбү?</translation>
 <translation id="1263231323834454256">Окуу тизмеси</translation>
 <translation id="1263733306853729545">Талапкерлер тизмесин барактоо үчүн <ph name="MINUS" /> жана <ph name="EQUAL" /> баскычтарын колдонуңуз</translation>
 <translation id="126387934568812801">Бул скриншот жана ачылган өтмөктөрдүн аталыштары камтылсын</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">WiFi тармагы табылды</translation>
 <translation id="1634783886312010422">Бул сырсөздү <ph name="WEBSITE" /> кызматында өзгөрттүңүз беле?</translation>
 <translation id="1636212173818785548">Жарайт</translation>
+<translation id="1636542522761359943">Кош келиңиз <ph name="PROFILE_NAME" />!</translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Колдонмо тууралуу маалыматка иштеп чыгуучунун параметрлеринин негизинде сакталган бардык маалымат, анын ичинде байланыштар, билдирүүлөр жана сүрөттөр кириши мүмкүн. Камдык көчүрмөнүн маалыматы Drive сактагычынан орун ээлебейт.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Бул кызматты жөндөөлөрдөн өчүрсөңүз болот.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Бул кыстарманы iPhone’уңузга көчүрүп алыңыз</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">Сырсөздөрдү башкаргычты macOS Keychain менен колдонуу үчүн Chromium'ду кайра иштетип, Keychain'ге мүмкүнчүлүк бериңиз. Кайра иштеткенден кийин өтмөктөрүңүз кайрадан ачылат.</translation>
 <translation id="1653958716132599769">Топко байланыштуу өтмөктөр</translation>
 <translation id="1654580009054503925">Сурамдарды көрсөтүүгө тыюу салынды</translation>
+<translation id="1654713139320245449">Тармакта бир да түзмөк жок. Жардам керекпи?</translation>
 <translation id="1656528038316521561">Фондун тунуктугу</translation>
 <translation id="1657406563541664238">Google'га автоматтык түрдө колдонуу статистикасы жана каталар жөнүндө кабар берип, <ph name="PRODUCT_NAME" /> өркүндөткөнгө кол кабыш кылыңыз</translation>
 <translation id="1657937299377480641">Билим берүү ресурстарын колдонуу үчүн аккаунтка кайра кирүүгө ата-энеңден уруксат сура</translation>
@@ -1641,12 +1644,14 @@
 <translation id="2187895286714876935">Сервердин тастыктамасын импорттоо катасы.</translation>
 <translation id="2187906491731510095">Кеңейтүүлөр жаңырды</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> колдонмосун ачуу</translation>
+<translation id="2188919919468240749">Өтмөктөр тобу өчүрүлсүнбү?</translation>
 <translation id="2190069059097339078">WiFi Credentials Getter</translation>
 <translation id="219008588003277019">Native Client модулу: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(бош)</translation>
 <translation id="2190967441465539539">Камера менен микрофонго кирүү мүмкүн эмес</translation>
 <translation id="2191754378957563929">Күйүк</translation>
 <translation id="2192505247865591433">Кимден:</translation>
+<translation id="219283042927675668">Топтогу өтмөктөр</translation>
 <translation id="2193365732679659387">Ишеним параметрлери</translation>
 <translation id="2194856509914051091">Эске ала турган нерселер</translation>
 <translation id="2195331105963583686">Андан кийин деле <ph name="DEVICE_TYPE" /> түзмөгүн колдоно бересиз, бирок андагы программа менен коопсуздук жаңыртуулары автоматтык түрдө алынбайт</translation>
@@ -1870,6 +1875,7 @@
 <translation id="2350133097354918058">Кайра жүктөлдү</translation>
 <translation id="2350182423316644347">Колдонмо демилгеленүүдө…</translation>
 <translation id="235028206512346451">Эгер түзмөгүңүздүн жанында болбосоңуз, экраны автоматтык түрдө кулпуланат. Түзмөктүн маңдайында турганыңызда экраны көпкө чейин өчпөйт. Эгер кулпу экранын колдонбосоңуз, түзмөгүңүз кулпулангандын ордуна уйку режимине өтөт.</translation>
+<translation id="2352305801620974284">Бул түзмөккө киргениңизде, Google аккаунтуңуздан сырсөздөрүңүздү жана башкаларды аласыз</translation>
 <translation id="2352662711729498748">&lt; 1 МБ</translation>
 <translation id="2352810082280059586">Кулпуланган экрандын эскертүүлөрү автоматтык түрдө <ph name="LOCK_SCREEN_APP_NAME" /> барып сакталат. Эң акыркы эскертүүңүз кулпуланган экранда кала берет.</translation>
 <translation id="2353297238722298836">Камера менен микрофонду колдонууга уруксат берилди</translation>
@@ -2080,6 +2086,7 @@
 <translation id="249113932447298600">Кечиресиз, <ph name="DEVICE_LABEL" /> түзмөгү учурда колдоого алынган жок.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> тилиндеги үндү угуп көрүү</translation>
 <translation id="2492461744635776704">Тастыктамага кол коюу сурамы даярдалууда</translation>
+<translation id="2492964937550251173">Өтмөк(-төр) жабылып, топ өчүрүлсүнбү?</translation>
 <translation id="249330843868392562">Кеп синтезаторунун параметрлерин ачуу</translation>
 <translation id="2494555621641843783">Steam орнотулбай жатат</translation>
 <translation id="2495141202137516054">Drive кызматыңыздан</translation>
@@ -2249,6 +2256,7 @@
 <translation id="262087792756666314">Оңой колдонуу үчүн бул функцияны кадап койсоңуз болот; капталдагы тилкенин жогору жагындагы Кадап коюу баскычын басыңыз</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Google Жардамчыга үнүңүздүн үлгүсүн үйрөтүңүз</translation>
+<translation id="2622280935687585828"><ph name="SITE_NAME" /> сайтын өчүрүлгөн сайттардан өчүрүү</translation>
 <translation id="26224892172169984">Бир да сайт протокол жүргүзбөсүн</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI түзмөктөрүн көзөмөлдөө жана кайра программалоого уруксат берилди</translation>
@@ -2422,6 +2430,7 @@
 <translation id="2743387203779672305">Алмашуу буферине көчүрүү</translation>
 <translation id="274362947316498129">Колдонмо <ph name="DEVICE_NAME" /> камерасын пайдаланууга аракет кылып жатат. Уруксат берүү үчүн <ph name="DEVICE_NAME" /> камерасынын купуялык которгучун өчүрүңүз.</translation>
 <translation id="2745080116229976798">Microsoft Квалификациялык көз карандылык</translation>
+<translation id="2747853844543618313">Тышкы экранга чыгаруу сурамын <ph name="DEVICE_NAME" /> түзмөгүндө кабыл алышыңыз керек.</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> кириңиз</translation>
 <translation id="2749836841884031656">SIM-карта</translation>
 <translation id="2749881179542288782">Орфография менен грамматиканы айкалыштырып текшерүү</translation>
@@ -2792,6 +2801,7 @@
 <translation id="3021066826692793094">Көпөлөк</translation>
 <translation id="3021678814754966447">Алкак булагын карап &amp;көрүү</translation>
 <translation id="3021902017511220299">Текшерилген жок. Бул аракетти администраторуңуз бөгөттөп койгон.</translation>
+<translation id="3022068420678496307">Ушуну менен топ бул Google аккаунту менен Chrome'го кирип турган бардык түзмөктөрдөн өчүрүлөт.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> бул Chromebook'тан өчүрүлүп, <ph name="PRIMARY_EMAIL" /> аккаунтуна сакталбайт.</translation>
 <translation id="3022978424994383087">Түшүнүксүз которулуп калды.</translation>
 <translation id="3023464535986383522">Басып туруп угуңуз</translation>
@@ -4071,7 +4081,6 @@
 <translation id="3983586614702900908">белгисиз жөнөтүүчүнүн түзмөктөрү</translation>
 <translation id="3983764759749072418">Play Store колдонмолору бул түзмөккө кире алышат.</translation>
 <translation id="3983769721878416534">Баскыч басылганга чейин кармалган убакыт</translation>
-<translation id="3983793589497399077">Lens менен издөө үчүн чыкылдатып же каалаган жерге сүйрөп барыңыз</translation>
 <translation id="3984135167056005094">Электрондук почта дареги камтылбасын</translation>
 <translation id="3984159763196946143">Демо режими иштетилип башталбай калды</translation>
 <translation id="3984431586879874039">Бул сайтка коопсуздук ачкычтарыңызды көрүүгө уруксат бересизби?</translation>
@@ -4194,6 +4203,7 @@
 <translation id="4078903002989614318">Иреттөө жана тизме параметрлери</translation>
 <translation id="4079140982534148664">Жакшыртылган орфографиялык текшерүү функциясын колдонуу</translation>
 <translation id="4082333918978320301">Микрофонуңузду колдоонууга уруксат берилген вебсайт жок</translation>
+<translation id="4083735423615351075">Өтмөктөр бул түзмөктө ачык бойдон калып, бирок топ бул Google аккаунту менен Chrome'го кирип турган бардык түзмөктөрдөн өчүрүлөт.</translation>
 <translation id="4084682180776658562">Кыстарма</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> өтмөгүн жабуу</translation>
 <translation id="4085298594534903246">JavaScript бул бетте бөгөттөлгөн.</translation>
@@ -4203,6 +4213,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Оңдо көрсөтүү</translation>
+<translation id="4088879333319441249">Өтмөктөр тобу ажыратылсынбы?</translation>
 <translation id="4089235344645910861">Параметрлер сакталды. Шайкештирүү башталды.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Текшерилген кирүү мүмкүнчүлүгүн иштетүү</translation>
@@ -5684,6 +5695,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />" иштетилсинби?</translation>
 <translation id="5243522832766285132">Бир аздан кийин кайталап көрүңүз</translation>
 <translation id="5244234799035360187">OneDrive эми Файлдар колдонмосунда көрүнөт</translation>
+<translation id="5244466461749935369">Азырынча орнотулган бойдон калсын</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> менен шайкештирилүүдө</translation>
 <translation id="5245610266855777041">Мектептин аккаунту менен баштоо</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> кыйрады. Колдонмону өчүрүп күйгүзүү үчүн бул булутчаны чыкылдатыңыз.</translation>
@@ -5952,6 +5964,7 @@
 <translation id="5453829744223920473">Балаңыз мектебинин бардык колдонмолорун, кыстармаларын жана булактарын класстагыдай эле колдоно алат. Мектеп негизги эрежелерди орнотот.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> менен</translation>
 <translation id="545484289444831485">Дагы табылган нерселерди көрүү</translation>
+<translation id="5457082343331641453">Издөө сурамына кошуу</translation>
 <translation id="5457113250005438886">Жараксыз</translation>
 <translation id="5457459357461771897">Компьютериңизден сүрөттөр, музыка жана башка медиа файлдарын окуп жана жок кылыңыз</translation>
 <translation id="5458214261780477893">Дворак</translation>
@@ -6429,6 +6442,7 @@
 <translation id="5816434091619127343">Принтердин конфигурациясы сиз каалагандай өзгөртүлсө, ал иштебей калат.</translation>
 <translation id="581659025233126501">Шайкештирүүнү күйгүзүү</translation>
 <translation id="5817918615728894473">Байланыштыруу</translation>
+<translation id="5817963443108180228">Кайтып келишиңиз менен, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">бардык колдонмолор</translation>
 <translation id="5821565227679781414">Кыска жол түзүү</translation>
 <translation id="5824976764713185207">Барак жүктөлгөндөн кийин дароо окуңуз</translation>
@@ -7029,6 +7043,7 @@
 <translation id="6265159465845424232">Microsoft файлдарын Microsoft OneDrive'га көчүрүп же жылдыруудан мурда уруксат суралсын</translation>
 <translation id="6265687851677020761">Оюкчаны өчүрүү</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" /> түзмөгүнө туташууда</translation>
+<translation id="6266984048393265562">Профилди ыңгайлаштыруу</translation>
 <translation id="6267166720438879315">Бул жерде <ph name="HOST_NAME" /> аныктыгыңызды текшерүү үчүн тастыктама тандаңыз</translation>
 <translation id="6268252012308737255"><ph name="APP" /> менен ачуу</translation>
 <translation id="6270309713620950855">Үнү басылып турганын эстетүү</translation>
@@ -7167,7 +7182,6 @@
 <translation id="6383382161803538830">Бул баракта Окуу режими жеткиликсиз</translation>
 <translation id="638418309848716977">Колдоого алынган шилтемелер</translation>
 <translation id="6384275966486438344">Издөө параметрлериңизди буга <ph name="SEARCH_HOST" /> өзгөртүңүз</translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Аталышы жок топ – 1 өтмөк}other{Аталышы жок топ – # өтмөк}}</translation>
 <translation id="6385149369087767061">Интернетке туташып, кайталап көрүңүз</translation>
 <translation id="6385382178401976503">Карта: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Эскертүү – Толук маалыматты таржымалдоо иштетилди. Таржымалдагы маалымат (URL даректер жана башка купуя маалымат) төмөндө келтирилген. Аларды жөнөтө бересизби?</translation>
@@ -7246,6 +7260,7 @@
 <translation id="6445450263907939268">Эгер бул өзгөртүүлөрдү каалаган эмес болсоңуз, мурунку параметрлериңизди калыбына келтире аласыз.</translation>
 <translation id="6446213738085045933">Иш тактада кыска жол түзүү</translation>
 <translation id="6447842834002726250">Кукилер</translation>
+<translation id="6449554712554071184">Бул топ ушуну менен бул түзмөктөн биротоло өчүрүлөт.</translation>
 <translation id="6450876761651513209">Купуялуулугуңуз боюнча параметрлерди өзгөртүңүз</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> жана дагы башка 1 өтмөк}other{<ph name="PAGE_TITLE" /> жана дагы башка # өтмөк}}</translation>
 <translation id="6451689256222386810">Эгер купуя сөз айкашыңызды унутуп калган болсоңуз же бул жөндөөнү өзгөрткүңүз келсе, <ph name="BEGIN_LINK" />шайкештирүүнү баштапкы абалга келтириңиз<ph name="END_LINK" /></translation>
@@ -7392,6 +7407,7 @@
 <translation id="6556866813142980365">Кайталоо</translation>
 <translation id="6556903358015358733">Тема жана тушкагаз</translation>
 <translation id="6557290421156335491">Менин ыкчам баскычтарым</translation>
+<translation id="6560061709899140565">Тышкы экранга чыгаруу сеанстарын көрсөтүү</translation>
 <translation id="6560151649238390891">Сунуш киргизилди</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Системанын таржымалдарын Жүктөлүп алынгандар каталогунда сактоо.</translation>
@@ -7481,6 +7497,7 @@
 <translation id="6635674640674343739">Тармакка туташпай жатат. Тармакка туташууңузду текшерип, дагы бир жолу аракет кылыңыз.</translation>
 <translation id="663569763553406962">Кайсы кеңейтүүлөр сайтты окуп же өзгөртө аларын көрүү</translation>
 <translation id="6635944431854494329">Ээси бул функцияны Параметрлерге &gt; Өркүндөтүлгөн коргоого &gt; Мүчүлүштүктөрдү аныктоо жана колдонуу маалыматын автоматтык түрдө Google'га жөнөтүү бөлүмүнөн көзөмөлдөй алат.</translation>
+<translation id="6636572589916466933">Тышкы экранга чыгаруу сурамын <ph name="DEVICE_NAME" /> түзмөгүндө кабыл алыңыз.</translation>
 <translation id="6636623428211296678">Төмөндө көбүрөөк параметрлерди изилдеңиз же азыр бүтүрүңүз</translation>
 <translation id="6639554308659482635">SQLite эстутуму</translation>
 <translation id="6640268266988685324">Ачык өтмөк</translation>
@@ -8165,6 +8182,7 @@
 <translation id="715396040729904728">жүргүзгүч + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Пикириңизди бөлүшүп, көйгөйдү, эгер мүмкүн болсо, ага себеп болгон кадамдарды сүрөттөп бериңиз.</translation>
 <translation id="7154130902455071009">Баштоо баракчаңызды төмөнкүгө өзгөртүңүз: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Видеонун сапатын жакшыртуу менен бирге түзмөгүңүздүн кубатын үнөмдөңүз. Видео Google Cast иштетилген экранда гана ойнотулат.</translation>
 <translation id="7159953856712257647">Демейки шартта орнотулду</translation>
 <translation id="7160182524506337403">Телефонуңуздагы билдирмелерди көрө аласыз</translation>
 <translation id="7165263843655074092">Бул түзмөктө стандартуу коопсуздук тутумун колдонуп жатасыз</translation>
@@ -9023,6 +9041,7 @@
 <translation id="7788948939674438635">Сайттар баскычтопту кулпулабасын</translation>
 <translation id="7789963078219276159">Башкы беттин фону <ph name="CATEGORY" /> болуп өзгөрдү.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Бул Chromebook түзмөгүндөгү файлдар</translation>
 <translation id="7791269138074599214">Киргизүү ыкмасы</translation>
 <translation id="7791429245559955092">Бул колдонмо учурда колдонулуп жаткан Chrome профилиңизге орнотулат</translation>
 <translation id="7791436592012979144">Артка сыдыруу иштетилди</translation>
@@ -9052,6 +9071,7 @@
 <translation id="7810202088502699111">Бул бетте калкып чыкмалар бөгөттөлгөн.</translation>
 <translation id="7810367892333449285">Жазуу төмөнкү форматта болушу керек: <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ дареги<ph name="LPA_2" />$<ph name="LPA_3" />кошумча дал келүү идентификатору<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Кайталап көрүңүз же төмөндө мурун түзүлгөн темалардын бирин тандаңыз.</translation>
+<translation id="7814090115158024843">Бул сайттарда эч качан жазуу боюнча жардам сунушталбасын</translation>
 <translation id="7814458197256864873">&amp;Көчүрүү</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> үчүн <ph name="SHORTCUT" /> ыкчам баскычын түзөтүү</translation>
@@ -9097,7 +9117,7 @@
 <translation id="7849264908733290972">&amp;Сүрөттү Жаңы өтмөктө ачуу</translation>
 <translation id="784934925303690534">Убакыт аралыгы</translation>
 <translation id="7850320739366109486">Тынчымды алба</translation>
-<translation id="7850717413915978159"><ph name="BEGIN_PARAGRAPH1" />ChromeOS түзмөктөрүңүзгө кабарларды автоматтык түрдө жөнөтүүгө уруксат берсеңиз, ChromeOS'то кайсы нерселерди оңдоп жана жакшыртуу маанилүү экенин биле алабыз. Бул кабарларда ChromeOS'тун бузулуусу, адатта кайсы функцияларды жана канча эстутум колдоноруңуз, Android колдонмосундагы мүчүлүштүктөрдү аныктоо жана колдонуу статистикасы сыяктуу маалымат камтылышы мүмкүн. Айрым маалыматты бириктирүү Google колдонмолоруна жана Android'дин иштеп чыгуучулары сыяктуу өнөктөштөрүнө да жардам берет.<ph name="END_PARAGRAPH1" />
+<translation id="7850717413915978159"><ph name="BEGIN_PARAGRAPH1" />ChromeOS түзмөктөрүңүзгө кабарларды автоматтык түрдө жөнөтүүгө уруксат берсеңиз, ChromeOS'то кайсы нерселерди оңдоп жана жакшыртуу маанилүү экенин биле алабыз. Бул кабарларда ChromeOS'тун бузулуусу, адатта кайсы функцияларды жана канча эстутум колдоноруңуз, Android колдонмосундагы мүчүлүштүктөрдү аныктоо жана колдонуу статистикасы сыяктуу маалымат камтылышы мүмкүн. Айрым маалыматтарды Android'ди иштеп чыгуучулар сыяктуу өнөктөштөрүбүзгө берип, Google колдонмолорун жакшыртабыз.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Каалаган убакта ChromeOS түзмөгүңүздүн параметрлерине өтүп, бул кабарларга уруксат берип же тыюу сала аласыз. Эгер сиз домен администратору болсоңуз, бул параметрди администратордун консолунан өзгөртө аласыз.<ph name="END_PARAGRAPH2" />
     <ph name="BEGIN_PARAGRAPH3" />Эгер Google аккаунтуңуз үчүн Колдонмолор жана Интернеттеги аракеттер таржымалы күйгүзүлгөн болсо, Android'деги маалыматыңыз Google аккаунтуңузга сакталышы мүмкүн. Маалыматты көрүп, өчүрүп жана аккаунтуңуздун параметрлерин өзгөртүү үчүн төмөнкү дарекке өтүңүз: account.google.com.<ph name="END_PARAGRAPH3" /></translation>
 <translation id="7851021205959621355"><ph name="BEGIN_BOLD" />Эскертүү<ph name="END_BOLD" />: Үнү сиздикине окшош же аны жаздырып алган адамга Жардамчыңыз жана ал аткарган нерселер жеткиликтүү болушу мүмкүн. Батареяны үнөмдөө үчүн Жардамчыңыздын параметрлеринен бул түзмөк кубат булагына туташып турганда гана "Oкей, Google" күйгөндөй кылып жөндөсөңүз болот.</translation>
@@ -9283,8 +9303,10 @@
 <translation id="7974936243149753750">Камтылбаган аймак</translation>
 <translation id="7975504106303186033">Бул Chrome Education түзмөгүн окуу аккаунтуна каттаңыз. Жаңы аккаунтту каттоо үчүн g.co/workspace/edusignup бөлүмүнө өтүңүз.</translation>
 <translation id="7977451675950311423">Колдонулган сызсөздү кимдир бирөө билип алган болсо, ал тууралуу эскертет.</translation>
+<translation id="797824194429476746">Өтмөктөр бул түзмөктө ачык бойдон калып, бирок топ биротоло өчүрүлөт.</translation>
 <translation id="7978412674231730200">Жеке ачкыч</translation>
 <translation id="7978450511781612192">Сиз Google аккаунтуңуздан чыгасыз. Кыстармаларыңыз, таржымалыңыз, сырсөздөрүңүз жана башка жөндөөлөр мындан ары шайкештирилбейт.</translation>
+<translation id="7980066177668669492">Base64-шифрленген ASCII, бир нече тастыктама</translation>
 <translation id="7980084013673500153">Мүлк ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" /> үчүн сакталган мүмкүндүк киргизүүчү ачкычты колдонуу</translation>
 <translation id="7981662863948574132">Түзмөктүн EID номери жана QR код көрсөтүлгөн калкып чыгуучу терезени көрсөтүү</translation>
@@ -9696,6 +9718,7 @@
 <translation id="8276242035951017580">Колдонмолорго камераңызды колдонууга уруксат берилген эмес</translation>
 <translation id="8276560076771292512">Кешти бошотуу жана өчүрүп кайра жүктөө</translation>
 <translation id="8276850948802942358">Сайтка үчүнчү тараптын cookie файлдарын убактылуу колдонууга уруксат берүү жөнүндө маалымат алуу</translation>
+<translation id="8277907305629781277">Бул киргизүүчү ачкычты <ph name="DATE" /> түздүңүз</translation>
 <translation id="8280267190418431666">Сиз тандаган тилдердеги вебсайттар</translation>
 <translation id="828180235270931531">Башка жеткиликтүү принтерлер</translation>
 <translation id="8281886186245836920">Өткөрүп жиберүү</translation>
@@ -9960,7 +9983,7 @@
 <translation id="8474378002946546633">Билдирмелерге уруксат берүү</translation>
 <translation id="8475313423285172237">Chrome'дун ишин өзгөртө турган кеңейтүүнү компьютериңиздеги башка программа кошуп койду.</translation>
 <translation id="8476408756881832830">ChromeVox сүйлөп жатканда аудио тындырылсын</translation>
-<translation id="8476491056950015181"><ph name="BEGIN_PARAGRAPH1" />ChromeOS түзмөктөрүнө кабарларды автоматтык түрдө жөнөтүүгө уруксат берсеңиз, ChromeOS'то кайсы нерселерди оңдоп жана жакшыртуу маанилүү экенин биле алабыз. Мындай кабарларда ChromeOS'тун бузулуусу, колдонулган функциялар, канча эстутум колдонулгандыгы, ошондой эле Android колдонмолорунда мүчүлүштүктөрдү аныктоо жана колдонуу статистикасы сыяктуу маалымат камтылышы мүмкүн. Айрым маалыматты бириктирүү Google колдонмолоруна жана Android'дин иштеп чыгуучулары сыяктуу өнөктөштөрүнө да жардам берет.<ph name="END_PARAGRAPH1" />
+<translation id="8476491056950015181"><ph name="BEGIN_PARAGRAPH1" />ChromeOS түзмөктөрүнө кабарларды автоматтык түрдө жөнөтүүгө уруксат берсеңиз, ChromeOS'то кайсы нерселерди оңдоп жана жакшыртуу маанилүү экенин биле алабыз. Мындай кабарларда ChromeOS'тун бузулуусу, колдонулган функциялар, канча эстутум колдонулгандыгы, ошондой эле Android колдонмолорунда мүчүлүштүктөрдү аныктоо жана колдонуу статистикасы сыяктуу маалымат камтылышы мүмкүн. Айрым маалыматтарды Android'ди иштеп чыгуучулар сыяктуу өнөктөштөрүбүзгө берип, Google колдонмолорун жакшыртабыз.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Каалаган убакта балаңыздын ChromeOS түзмөгүнүн параметрлерине өтүп, бул кабарларга уруксат берип же тыюу сала аласыз. Эгер сиз домен администратору болсоңуз, бул параметрди администратордун консолунан өзгөртө аласыз.<ph name="END_PARAGRAPH2" />
     <ph name="BEGIN_PARAGRAPH4" />Эгер Колдонмолор жана Интернеттеги аракеттер таржымалы балаңыздын Google аккаунту үчүн күйгүзүлгөн болсо, балаңыздын маалыматы анын Google аккаунтуна сакталышы мүмкүн. Төмөнкү шилтеме менен өтүп, бул параметрлер жана аларды кантип тууралоо керек экендиги жөнүндө кеңири маалымат алыңыз: families.google.com.<ph name="END_PARAGRAPH4" /></translation>
 <translation id="8476630458761527665">Файлдын сырсөзүн териңиз</translation>
@@ -10374,7 +10397,6 @@
 <translation id="8784626084144195648">Топтолгон ортоломо</translation>
 <translation id="8785622406424941542">Стилус</translation>
 <translation id="8786824282808281903">Балаңыз бул сүрөтчөнү көргөндө өздүгүн тастыктоо же сатып алууларды жактыруу үчүн манжасынын изин колдоно алат.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Аталышы жок топ – 1 өтмөк}other{Аталышы жок топ – # өтмөк}}</translation>
 <translation id="8787752878731558379">Үчүнчү тараптын cookie файлдарына эмне үчүн уруксат бергениңизди айтып, Chrome'ду жакшыртууга жардам бериңиз</translation>
 <translation id="8789898473175677810">Chrome бир нече сайтка көз салууну азайтуу жана үчүнчү тараптын cookie файлдарын колдонуудан баш тартуу боюнча <ph name="LINK_BEGIN" />биргелешкен аракеттин<ph name="LINK_END" /> бир бөлүгү болуп саналат. Бирок муну жоопкерчилик менен аткарууга аракет кылып жатабыз, анткени көптөгөн сайттар туура иштөө үчүн үчүнчү тараптын cookie файлдарына ишеним көрсөтүшөт. Мисалы, көптөгөн сайттар үчүнчү тараптын cookie файлдарын кирүү процессин жөнөкөйлөтүү, жалгаштырылган маек жана жорумдар тутумдарын колдоо, ошондой эле төлөм кызматтары үчүн колдонушат. Мындан тышкары жарнамачылар да жарнамаларды жакшыраак жекелештирүү үчүн көбүнчө үчүнчү тараптын cookie файлдарын колдонушат. Бул абдан маанилүү, анткени сайттар чыгымдарды төлөп жана онлайн контентин акысыз сактоо үчүн көп учурда жарнамаларга таянышат.</translation>
 <translation id="8791157330927639737">Жаңыртуу жөнүндө кеңири маалымат</translation>
@@ -10609,6 +10631,7 @@
 <translation id="8962863356073277855">URL форматы https://www.example.com болушу керек</translation>
 <translation id="8962918469425892674">Бул сайт кыймыл же жарык сенсорлорун колдонуп жатат.</translation>
 <translation id="8963117664422609631">Сайттын параметрлерине өтүү</translation>
+<translation id="8964795217937248330">Өтмөк(-төр) жабылып, топ өчүрүлсүнбү?</translation>
 <translation id="8965037249707889821">Эски сырсөздү киргизүү</translation>
 <translation id="8966809848145604011">Башка профилдер</translation>
 <translation id="8967427617812342790">Окуу тизмесине кошуу</translation>
@@ -11042,6 +11065,7 @@
 <translation id="979345485590886759">Сайттар чычкан курсоруңузду кулпулоону суранышы мүмкүн</translation>
 <translation id="980731642137034229">Аракеттер менюсунун баскычы</translation>
 <translation id="981121421437150478">Офлайн</translation>
+<translation id="98235653036850093">Салам, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Бардык өтмөктөрдү жабуу</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - Камера менен микрофондон жаздырууда</translation>
 <translation id="984275831282074731">Төлөм ыкмалары</translation>
diff --git a/chrome/app/resources/generated_resources_lo.xtb b/chrome/app/resources/generated_resources_lo.xtb
index f79b8ba0..5b3495c 100644
--- a/chrome/app/resources/generated_resources_lo.xtb
+++ b/chrome/app/resources/generated_resources_lo.xtb
@@ -1671,6 +1671,7 @@
 <translation id="2211043920024403606">ຂໍ້ມູນໂປຣໄຟລ໌</translation>
 <translation id="2211245494465528624">ຈັດການຕົວເລືອກການຊິ້ງ</translation>
 <translation id="221297410904507041">ລຶບປະຫວັດ, ຄຸກກີ້, ແຄສ ແລະ ອື່ນໆ</translation>
+<translation id="2213410656650624348">ປານກາງ</translation>
 <translation id="2214018885812055163">ໂຟນເດີທີ່ໃຊ້ຮ່ວມກັນ</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 ແຖວ ບໍ່ສະແດງ&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> ແຖວບໍ່ສະແດງ&gt;}}</translation>
 <translation id="2215070081105889450">ເພື່ອແບ່ງປັນສຽງ, ໃຫ້ແບ່ງປັນແຖບ ຫຼື ໜ້າຈໍແທນ</translation>
@@ -2055,6 +2056,7 @@
 <translation id="2473195200299095979">ແປ​​ຫນ້າ​ນີ້</translation>
 <translation id="2475982808118771221">ເກີດຄວາມຜິດພາດຂຶ້ນ.</translation>
 <translation id="247616523300581745">ເຊື່ອງໄຟລ໌ເຫຼົ່ານີ້</translation>
+<translation id="2476435723907345463">ລຶບສິດເຂົ້າເຖິງກະແຈຜ່ານອອກແລ້ວ</translation>
 <translation id="2476901513051581836">ບໍ່ສາມາດສ້າງພື້ນທີ່ຫວ່າງໄດ້ຈົນກວ່າຈະຮູ້ຂະໜາດບ່ອນຈັດເກັບຂໍ້ມູນອອບລາຍ.</translation>
 <translation id="2476974672882258506">ປິດ Windows ເພື່ອຖອນການຕິດຕັ້ງ <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">ເນື່ອງຈາກທ່ານຕັ້ງຄ່າສະວິດຫຼາຍອັນ, ການສະແກນອັດຕະໂນມັດຈຶ່ງຖືກປິດໄວ້.</translation>
@@ -2250,6 +2252,7 @@
 <translation id="2620215283731032047">ບໍ່ສາມາດດາວໂຫຼດ <ph name="FILE_NAME" /> ໄດ້ຢ່າງປອດໄພ.</translation>
 <translation id="2620245777360407679">ອຸປະກອນທີ່ເຊື່ອມຕໍ່ກັບຮັອດສະປອດຢູ່ໃນຕອນນີ້</translation>
 <translation id="2620436844016719705">ລະ​ບົບ</translation>
+<translation id="262087792756666314">ທ່ານສາມາດປັກໝຸດຄຸນສົມບັດນີ້ເພື່ອເຂົ້າເຖິງໄດ້ຢ່າງງ່າຍດາຍ; ຄລິກໃສ່ປຸ່ມປັກໝຸດຢູ່ເທິງສຸດຂອງແຜງຄວບຄຸມດ້ານຂ້າງ</translation>
 <translation id="2620900772667816510">Bluetooth ຄວາມລະອຽດສູງສຸດ</translation>
 <translation id="262154978979441594">ຝຶກຮູບແບບສຽງໃຫ້ຜູ້ຊ່ວຍ Google</translation>
 <translation id="2622280935687585828">ລຶບ <ph name="SITE_NAME" /> ອອກຈາກເວັບໄຊທີ່ປິດການນຳໃຊ້</translation>
@@ -3028,6 +3031,7 @@
 <translation id="3222066309010235055">ກ່ອນໃຫ້: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">ເຊື່ອມຕໍ່ກັບ <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">ຊອກຫາຫຍັງກໍໄດ້ໃນໜ້ານີ້ດ້ວຍ Google Lens</translation>
+<translation id="3223109931751684474">ລຶບສິດເຂົ້າເຖິງກະແຈຜ່ານຂອງທ່ານຢູ່ອຸປະກອນນີ້</translation>
 <translation id="3223531857777746191">ປຸ່ມຣີເຊັດ</translation>
 <translation id="3225084153129302039">ຮູບແທນຕົວສີມ່ວງຕາມຄ່າເລີ່ມຕົ້ນ</translation>
 <translation id="3225319735946384299">ການເຊັນລະຫັດ</translation>
@@ -3352,6 +3356,7 @@
 <translation id="3473479545200714844">ເຄື່ອງຂະຫຍາຍໜ້າຈໍ</translation>
 <translation id="3474218480460386727">ໃຊ້ຕົວອັກສອນ 99 ຕົວລົງມາສຳລັບຄຳໃໝ່</translation>
 <translation id="3474624961160222204">ສືບຕໍ່ໃຊ້ໃນຊື່ <ph name="NAME" /></translation>
+<translation id="3477772589943384839">ປະຢັດໜ່ວຍຄວາມຈຳໃນລະດັບປານກາງ. ແຖບຂອງທ່ານຈະບໍ່ເຮັດວຽກຫຼັງຈາກໄລຍະເວລາດົນປະມານໜຶ່ງ.</translation>
 <translation id="347785443197175480">ສືບຕໍ່ອະນຸຍາດໃຫ້ <ph name="HOST" /> ​​ເຂົ້າຫາ​ກ້ອງ​ຖ່າຍ​ຮູບ​ ແລະໄມໂຄຣໂຟນຂອງ​ທ່ານບໍ່</translation>
 <translation id="3479357084663933762">ຕາບອດສີຂຽວ</translation>
 <translation id="3479552764303398839">ບໍ່ແມ່ນດຽວນີ້</translation>
@@ -4075,7 +4080,6 @@
 <translation id="3983586614702900908">ອຸ​ປະ​ກອນ​ຈາກ​ຜູ້​ຂາຍ​ທີ່​ບໍ່​ຮູ້​ຈັກ</translation>
 <translation id="3983764759749072418">ແອັບພລິເຄຊັນໃນ Play Store ມີສິດເຂົ້າເຖິງອຸປະກອນນີ້.</translation>
 <translation id="3983769721878416534">ໜ່ວງເວລາກ່ອນຄລິກ</translation>
-<translation id="3983793589497399077">ຄລິກ ຫຼື ລາກບ່ອນໃດກໍໄດ້ເພື່ອຊອກຫາດ້ວຍ Lens</translation>
 <translation id="3984135167056005094">ຢ່າຮວມເອົາທີ່ຢູ່ອີເມວ</translation>
 <translation id="3984159763196946143">ບໍ່ສາມາດເລີ່ມໂໝດສາທິດໄດ້</translation>
 <translation id="3984431586879874039">ອະນຸຍາດໃຫ້ເວັບໄຊນີ້ເຫັນກະແຈຄວາມປອດໄພຂອງທ່ານບໍ?</translation>
@@ -4112,6 +4116,7 @@
 <translation id="4010036441048359843">ເປີດໃຊ້ໄຮໄລ້</translation>
 <translation id="4010746393007464819">ມີການອັບເກຣດເປັນ Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">ເພື່ອເອົາບຸກມາກຂອງທ່ານຢູ່ໃນອຸປະກອນມືຖື, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">ທ່ານສາມາດປັກໝຸດຄຸນສົມບັດນີ້ເພື່ອເຂົ້າເຖິງໄດ້ຢ່າງງ່າຍດາຍ</translation>
 <translation id="4014432863917027322">ສ້ອມແປງ "<ph name="EXTENSION_NAME" />" ບໍ?</translation>
 <translation id="4015163439792426608">ມີສ່ວນຂະຫຍາຍຫຼາຍລາຍການບໍ? <ph name="BEGIN_LINK" />ຈັດການສ່ວນຂະຫຍາຍຂອງທ່ານ<ph name="END_LINK" /> ໄດ້ງ່າຍໆຢູ່ບ່ອນດຽວ.</translation>
 <translation id="4016762287427926315">ສິດທິທີ່ທ່ານໄດ້ໃຫ້ກັບ <ph name="APP_NAME" /> ຈະອະນຸຍາດສຳລັບແອັບນີ້ນຳ. <ph name="BEGIN_LINK" />ຈັດການ<ph name="END_LINK" /></translation>
@@ -4417,6 +4422,7 @@
 <translation id="4261429981378979799">ການອະນຸຍາດສ່ວນຂະຫຍາຍ</translation>
 <translation id="4262004481148703251">ປິດຄຳເຕືອນໄວ້</translation>
 <translation id="4263223596040212967">ກວດເບິ່ງໂຄງຮ່າງແປ້ນພິມຂອງທ່ານ ແລ້ວລອງໃໝ່.</translation>
+<translation id="4263470758446311292">ຮັບການປະຢັດໜ່ວຍຄວາມຈຳແບບສູງສຸດ. ແຖບຂອງທ່ານຈະບໍ່ເຮັດວຽກຫຼັງຈາກໄລຍະເວລາສັ້ນໆ.</translation>
 <translation id="4265096510956307240">ຢັ້ງຢືນວ່າແມ່ນທ່ານ</translation>
 <translation id="4265301768135164545">ນອກຈາກນັ້ນ, ທ່ານຍັງສາມາດຕັ້ງຄ່າໂປຣໄຟລ໌ eSIM <ph name="BEGIN_LINK" />ດ້ວຍຕົນເອງ<ph name="END_LINK" /> ໄດ້ນຳ</translation>
 <translation id="426564820080660648">ເພື່ອກວດເບິ່ງການອັບເດດ, ກະລຸນາໃຊ້ອີເທີເນັດ, Wi-Fi ຫຼືຂໍ້ມູນມືຖື.</translation>
@@ -4736,6 +4742,7 @@
 <translation id="4503748371388753124">ຄອມພິວເຕີຂອງທ່ານມີອຸປະກອນຄວາມປອດໄພ Trusted Platform Module (TPM), ເຊິ່ງຖືກໃຊ້ເພື່ອຈັດຕັ້ງປະຕິບັດຄຸນສົມບັດຄວາມປອດໄພທີ່ສໍາຄັນຫຼາຍອັນໃນ ChromeOS Flex. ກະລຸນາເຂົ້າເບິ່ງສູນຊ່ວຍເຫຼືອ Chromebook ເພື່ອສຶກສາເພີ່ມເຕີມ: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{ອະນຸຍາດຄຸກກີ້}=1{ອະນຸຍາດຄຸກກີ້, ຍົກເວັ້ນ 1 ລາຍການ}other{ອະນຸຍາດຄຸກກີ້, ຍົກເວັ້ນ {COUNT} ລາຍການ}}</translation>
 <translation id="4504940961672722399">ໃຊ້ສ່ວນຂະຫຍາຍນີ້ໂດຍການຄລິກໃສ່ໄອຄອນນີ້ ຫຼືໂດຍການກົດ <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">ດາວໂຫຼດ Chrome ດ້ວຍລະຫັດ QR ນີ້ແລ້ວເຂົ້າສູ່ລະບົບຫາບັນຊີ Google ຂອງທ່ານ.</translation>
 <translation id="450552327874992444">ເພີ່ມຄຳສັບແລ້ວ</translation>
 <translation id="4507373251891673233">ທ່ານໄດ້ບລັອກສ່ວນຂະຫຍາຍທັງໝົດຈາກ <ph name="HOST" /></translation>
 <translation id="4507401683427517298">ຄລິກ “ເພີ່ມທາງລັດ”</translation>
@@ -5071,6 +5078,7 @@
 <translation id="4768332406694066911">ທ່ານມີໃບຢັ້ງຢືນຈາກ​ໜ່ວຍ​ງານເຫຼົ່ານີ້ທີ່ລະບຸຕົວຕົນຂອງທ່ານ</translation>
 <translation id="4769632191812288342">ທ່ານກຳລັງໄດ້ຮັບການປົກປ້ອງແບບມາດຕະຖານ</translation>
 <translation id="4770119228883592393">ຂໍການອະນຸຍາດແລ້ວ, ກະລຸນາກົດ ⌘ + ຕົວເລືອກ + ລູກສອນລົງເພື່ອຕອບກັບ</translation>
+<translation id="4770755495532014179">ໃຊ້ລະຫັດຜ່ານນີ້ຢູ່ iPhone ຂອງທ່ານ</translation>
 <translation id="4773112038801431077">ອັບເກຣດ Linux</translation>
 <translation id="477548766361111120">ອະນຸຍາດໃຫ້ສ່ວນຂະຫຍາຍອ່ານ ແລະ ປ່ຽນເວັບໄຊນີ້</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> ເຊື່ອມຕໍ່ແລ້ວ</translation>
@@ -5240,6 +5248,7 @@
 <translation id="4890399733764921729">ບໍ່ສາມາດເຊື່ອມຕໍ່ໄດ້. ລັອກໂດຍຜູ້ໃຫ້ບໍລິການມືຖືອື່ນ.</translation>
 <translation id="4890773143211625964">ສະແດງຕົວເລືອກເຄື່ອງພິມຂັ້ນສູງ</translation>
 <translation id="4891089016822695758">ເວທີເບຕ້າ</translation>
+<translation id="4891795846939730995">ເພື່ອມອບສິດເຂົ້າເຖິງກະແຈຜ່ານຂອງທ່ານໃຫ້ອຸປະກອນນີ້ຄືນໃໝ່, ໃຫ້ເຂົ້າສູ່ລະບົບຫາເວັບໄຊ ຫຼື ແອັບໃດໜຶ່ງດ້ວຍກະແຈຜ່ານທີ່ບັນທຶກໄວ້</translation>
 <translation id="4892229439761351791">ເວັບໄຊສາມາດໃຊ້ Bluetooth ໄດ້</translation>
 <translation id="4892328231620815052">ເມື່ອທ່ານພ້ອມແລ້ວ, ໃຫ້ຊອກຫາລາຍຊື່ການອ່ານຂອງທ່ານໃນບຸກມາກ ແລະ ລາຍຊື່</translation>
 <translation id="489258173289528622">ການດຳເນີນການທີ່ບໍ່ເຄື່ອນໄຫວໃນຂະນະທີ່ໃຊ້ແບັດເຕີຣີ</translation>
@@ -6471,6 +6480,7 @@
 <translation id="5846504156837627898">ຈັດການການອະນຸຍາດເວັບໄຊ</translation>
 <translation id="5846749317653566506">ປັບການຕັ້ງຄ່າການແກ້ໄຂສີເພື່ອໃຫ້ແນ່ໃຈວ່າສີແຕກຕ່າງກັນ</translation>
 <translation id="5846807460505171493">ຕິດຕັ້ງການອັບເດດ ແລະ ແອັບ. ໂດຍການສືບຕໍ່, ແມ່ນຖືວ່າທ່ານເຫັນດີວ່າອຸປະກອນນີ້ສາມາດດາວໂຫຼດ ແລະ ຕິດຕັ້ງການອັບເດດ ແລະ ແອັບໄດ້ໂດຍອັດຕະໂນມັດຈາກ Google, ຜູ້ໃຫ້ບໍລິການຂອງທ່ານ ແລະ ຜູ້ຜະລິດອຸປະກອນຂອງທ່ານ, ໂດຍເປັນໄປໄດ້ວ່າອາດຈະໃຊ້ຂໍ້ມູນມືຖື. ບາງແອັບເຫຼົ່ານີ້ອາດຈະໃຫ້ການຊື້ໃນແອັບ.</translation>
+<translation id="5848054741303781539">ຕັ້ງດ້ວຍຕົນເອງ, ບໍ່ໃຊ້ສະຖານທີ່</translation>
 <translation id="5848319660029558352">ອ່ານອອກສຽງ ແລະ ການຈັດຮູບແບບຂໍ້ຄວາມ</translation>
 <translation id="5849212445710944278">ເພີ່ມເຂົ້າແລ້ວ</translation>
 <translation id="584945105664698226">ຄວາມໄວສຽງເວົ້າ</translation>
@@ -7170,7 +7180,6 @@
 <translation id="6383382161803538830">ໂໝດການອ່ານບໍ່ມີໃຫ້ຢູ່ໜ້ານີ້</translation>
 <translation id="638418309848716977">ລິ້ງທີ່ຮອງຮັບ</translation>
 <translation id="6384275966486438344">ປ່ຽນການຕັ້ງຄ່າການຄົ້ນຫາຂອງທ່ານເປັນ​: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{ກຸ່ມບໍ່ມີຊື່ - 1 ແຖບ}other{ກຸ່ມບໍ່ມີຊື່ - # ແຖບ}}</translation>
 <translation id="6385149369087767061">ກະລຸນາເຊື່ອມຕໍ່ອິນເຕີເນັດແລ້ວລອງໃໝ່</translation>
 <translation id="6385382178401976503">ບັດ: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">ຄໍາເຕືອນ - ເປີດການນຳໃຊ້ການບັນທຶກແບບລະອຽດແລ້ວ; ບັນທຶກທາງລຸ່ມນີ້ອາດຮວມມີ URL ຫຼື ຂໍ້ມູນລະອຽດອ່ອນອື່ນໆນຳ. ກະລຸນາກວດສອບ ແລະ ຮັບຮອງວ່າທ່ານສະບາຍໃຈກັບການສົ່ງຂໍ້ມູນນີ້.</translation>
@@ -7505,6 +7514,7 @@
 <translation id="6648911618876616409">ການອັບເດດທີ່ສຳຄັນພ້ອມໃຫ້ຕິດຕັ້ງແລ້ວ. ກະລຸນາເຂົ້າສູ່ລະບົບເພື່ອເລີ່ມຕົ້ນ.</translation>
 <translation id="6649018507441623493">ຖ້າບຶດໜຶ່ງ...</translation>
 <translation id="6650206238642452078">ຕິດຕາມເຫດການໃນລະບົບ ChromeOS</translation>
+<translation id="6650584564768559994">ຮັບການປະຢັດໜ່ວຍຄວາມຈຳແບບສົມດຸນ. ແຖບຂອງທ່ານຈະບໍ່ເຮັດວຽກຫຼັງຈາກໄລຍະເວລາທີ່ເໝາະສົມ.</translation>
 <translation id="665061930738760572">ເປີດ​ຢູ່​ໃນໜ້າ​ຕ່າງ​ໃຫມ່</translation>
 <translation id="6651237644330755633">ເຊື່ອຖືໃບຢັ້ງຢືນນີ້ສຳລັບການລະບຸເວັບໄຊ</translation>
 <translation id="6651495917527016072">ຊິ້ງຂໍ້ມູນເຄືອຂ່າຍ Wi-Fi ກັບໂທລະສັບຂອງທ່ານ. <ph name="LINK_BEGIN" />ສຶກສາເພີ່ມເຕີມ<ph name="LINK_END" /></translation>
@@ -7762,6 +7772,7 @@
 <translation id="6831043979455480757">ແປພາສາ</translation>
 <translation id="6832218595502288407">ຈັດຕຳແໜ່ງໄວ້ຊ້າຍ</translation>
 <translation id="6833479554815567477">ລຶບແຖບອອກຈາກກຸ່ມ <ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /> ແລ້ວ</translation>
+<translation id="6833753236242482566">ສົມດຸນ (ແນະນຳ)</translation>
 <translation id="6835762382653651563">ກະ​ລຸ​ນາ​ເຊື່ອມ​ຕໍ່​ກັບ​ອິນ​ເຕີ​ເນັດເພື່ອອັບເດດ <ph name="DEVICE_TYPE" /> ຂອງ​ທ່ານ.</translation>
 <translation id="683630338945552556">ໃຊ້ ແລະ ບັນທຶກລະຫັດຜ່ານໃນບັນຊີ Google ຂອງທ່ານ</translation>
 <translation id="6839225236531462745">ການລຶບໃບຢັ້ງຢືນຜິດພາດ</translation>
@@ -9414,6 +9425,7 @@
 <translation id="8066444921260601116">ກ່ອງໂຕ້​ຕອບການເຊື່ອມຕໍ່</translation>
 <translation id="8070572887926783747">ການອະນຸຍາດສະຖານທີ່ຂອງ <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">ການຕອບສະໜອງສຳຜັດ</translation>
+<translation id="8071033114691184017">ໃຊ້ລະຫັດຜ່ານນີ້ຢູ່ iPhone ຂອງທ່ານ</translation>
 <translation id="8071432093239591881">ພິມເປັນຮູບພາບ</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />ຂໍ້ມູນແອັບສາມາດເປັນຂໍ້ມູນໃດໆກໍໄດ້ທີ່ແອັບໄດ້ບັນທຶກໄວ້ (ອີງຕາມການຕັ້ງຄ່າຂອງຜູ້ພັດທະນາ), ເຊິ່ງຮວມທັງລາຍຊື່ຜູ້ຕິດຕໍ່, ຂໍ້ຄວາມ ແລະ ຮູບພາບ.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ຂໍ້ມູນທີ່ສຳຮອງໄວ້ຈະບໍ່ນັບໃສ່ໂຄຕ້າການຈັດເກັບຂໍ້ມູນໃນ Drive ຂອງລູກທ່ານ.<ph name="END_PARAGRAPH2" />
@@ -9982,6 +9994,7 @@
 <translation id="8482077254400484047">ຈັດການຮູບລັກຂອງແຖບທີ່ບໍ່ໄດ້ນຳໃຊ້ບ່ອນນີ້</translation>
 <translation id="8483248364096924578">ທີ່ຢູ່ IP</translation>
 <translation id="8486666913807228950">ເຫດຜົນ: ພົບກົດລະບຽບປີ້ນກັບ <ph name="REVERT_RULE" /> ໃນລາຍຊື່ "ບັງຄັບເປີດໃນ".</translation>
+<translation id="8487303289354211861">ປັກໝຸດແລ້ວ! ທ່ານສາມາດເຂົ້າເຖິງຄຸນສົມບັດນີ້ຄືນໃໝ່ໄດ້ຈາກປຸ່ມໃໝ່ຢູ່ແຖບເຄື່ອງມື</translation>
 <translation id="8487678622945914333">ຊຸມເຂົ້າ</translation>
 <translation id="8487699605742506766">ຮັອດສະປອດ</translation>
 <translation id="8489156414266187072">ການແນະນຳສ່ວນຕົວພຽງແຕ່ສະແດງໃນບັນຊີຂອງທ່ານເທົ່ານັ້ນ</translation>
@@ -10380,7 +10393,6 @@
 <translation id="8784626084144195648">ສະ​ເລ່ຍລົງຖັງແລ້ວ</translation>
 <translation id="8785622406424941542">ປາຍປາກກາ</translation>
 <translation id="8786824282808281903">ເມື່ອລູກຂອງທ່ານເຫັນໄອຄອນນີ້, ລາຍນິ້ວມືຈະສາມາດຖືກໃຊ້ສຳລັບການລະບຸຕົວຕົນ ຫຼື ເພື່ອອະນຸມັດການສັ່ງຊື້ໄດ້.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{ກຸ່ມບໍ່ມີຊື່ - 1 ແຖບ}other{ກຸ່ມບໍ່ມີຊື່ - # ແຖບ}}</translation>
 <translation id="8787752878731558379">ຊ່ວຍພວກເຮົາປັບປຸງ Chrome ໂດຍແຈ້ງໃຫ້ພວກເຮົາຮູ້ເຫດຜົນທີ່ທ່ານໄດ້ອະນຸຍາດຄຸກກີ້ພາກສ່ວນທີສາມ</translation>
 <translation id="8789898473175677810">Chrome ເປັນພາກສ່ວນໜຶ່ງຂອງ <ph name="LINK_BEGIN" />ຄວາມພະຍາຍາມໃນການເຮັດວຽກຮ່ວມກັນ<ph name="LINK_END" /> ເພື່ອຫຼຸດການຕິດຕາມຂ້າມເວັບໄຊ ແລະ ເຊົາໃຊ້ຄຸກກີ້ພາກສ່ວນທີສາມ. ແຕ່ພວກເຮົາກຳລັງພະຍາຍາມດຳເນີນການຢ່າງມີຄວາມຮັບຜິດຊອບເນື່ອງຈາກເວັບໄຊຈຳນວນຫຼາຍນຳໃຊ້ຄຸກກີ້ພາກສ່ວນທີສາມໃນການເຮັດວຽກຕາມທີ່ອອກແບບໄວ້. ຕົວຢ່າງ: ເວັບໄຊຈຳນວນຫຼາຍໃຊ້ຄຸກກີ້ພາກສ່ວນທີສາມເພື່ອໃຫ້ການເຂົ້າສູ່ລະບົບງ່າຍຂຶ້ນ, ເພື່ອຮອງຮັບລະບົບການສົນທະນາ ແລະ ການສະແດງຄຳເຫັນແບບຝັງ ແລະ ສຳລັບບໍລິການແບບເສຍເງິນ. ແລະ ຜູ້ລົງໂຄສະນາມັກໃຊ້ຄຸກກີ້ພາກສ່ວນທີສາມເພື່ອປັບແຕ່ງໂຄສະນາໃຫ້ເປັນແບບສ່ວນຕົວ. ເຊິ່ງເປັນສິ່ງສຳຄັນເນື່ອງຈາກເວັບໄຊມັກອາໄສໂຄສະນາໃນການຊ່ວຍຈ່າຍຄ່າໃຊ້ຈ່າຍ ແລະ ຮັກສາເນື້ອຫາອອນລາຍຂອງເຂົາເຈົ້າໃຫ້ບໍ່ມີຄ່າໃຊ້ຈ່າຍ.</translation>
 <translation id="8791157330927639737">ສຶກສາເພີ່ມເຕີມກ່ຽວກັບການອັບເດດ</translation>
@@ -10695,6 +10707,7 @@
 <translation id="9014674417732091912">ຍ້າຍໄປແຖວທີ <ph name="ROW_NUMBER" /> ແລ້ວ</translation>
 <translation id="901668144954885282">ສຳຮອງຂໍ້ມູນໄປໃສ່ Google Drive</translation>
 <translation id="9016827136585652292">ເປີດ/ປິດໜ້າຈໍຄວາມເປັນສ່ວນຕົວ</translation>
+<translation id="9017055559700464094">ປັກໝຸດແລ້ວ! ໃຊ້ຄຸນສົມບັດນີ້ຄືນໃໝ່ຈາກແຖບເຄື່ອງມື</translation>
 <translation id="90181708067259747">ວັນທີໝົດອາຍຸ: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">ສຳເລັດການຕິດຕັ້ງແລ້ວ</translation>
 <translation id="901876615920222131">ເພື່ອເປີດກຸ່ມຄືນໃໝ່, ໃຫ້ຄລິກໃສ່ກຸ່ມນັ້ນ</translation>
@@ -10853,6 +10866,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />ສຳລັບປະສົບການທີ່ດີທີ່ສຸດ, ກະລຸນາຕິດຕັ້ງ <ph name="DEVICE_OS" /> ໃສ່ດິສກ໌ພາຍໃນຂອງທ່ານ. ນອກຈາກນັ້ນ, ທ່ານສາມາດຕິດຕັ້ງມັນໃນພາຍຫຼັງຈາກໜ້າຈໍການເຂົ້າສູ່ລະບົບໄດ້ນຳ.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ຫາກທ່ານບໍ່ພ້ອມຕິດຕັ້ງເທື່ອ, ທ່ານສາມາດເອີ້ນໃຊ້ຈາກ USB ເພື່ອລອງໃຊ້ມັນເບິ່ງກ່ອນໄດ້. ນີ້ຈະເກັບຂໍ້ມູນ ແລະ ລະບົບປະຕິບັດການທີ່ມີຢູ່ກ່ອນແລ້ວຂອງທ່ານໄວ້, ແຕ່ທ່ານອາດເຫັນຂໍ້ຈຳກັດບ່ອນຈັດເກັບຂໍ້ມູນ ແລະ ປະສິດທິພາບ.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">ເປີດ​ເປັນ​ແຖບປັກໝຸດແລ້ວ</translation>
+<translation id="9122788874051694311">ບັນທຶກກະແຈຜ່ານນີ້ນອກໂໝດບໍ່ເປີດເຜີຍຕົວຕົນບໍ?</translation>
 <translation id="9123287046453017203">ອຸປະກອນຂອງທ່ານຍັງບໍ່ໄດ້ອັບເດດຫຼ້າສຸດ</translation>
 <translation id="9125910124977405374">ລຶບພາສາ <ph name="LANGUAGE_NAME" /> ອອກຈາກພາສາທີ່ແປໂດຍອັດຕະໂນມັດ</translation>
 <translation id="9126149354162942022">ສີເຄີເຊີ</translation>
diff --git a/chrome/app/resources/generated_resources_lt.xtb b/chrome/app/resources/generated_resources_lt.xtb
index 8388debf..2a1cb6e 100644
--- a/chrome/app/resources/generated_resources_lt.xtb
+++ b/chrome/app/resources/generated_resources_lt.xtb
@@ -368,6 +368,7 @@
 <translation id="1260810365552581339">Gali būti, kad „Linux“ nepakanka vietos diske. Galite padidinti „Linux“ vietą diske ir pabandyti atkurti dar kartą skiltyje <ph name="LINK_START" />„Nustatymai“<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Vidutinis</translation>
 <translation id="126156426083987769">Iškilo su demonstracinio režimo įrenginio licencijomis susijusi problema.</translation>
+<translation id="1261885284931493480">Pašalinti skirtuką (-us) ir ištrinti grupę?</translation>
 <translation id="1263231323834454256">Skaitymo sąrašas</translation>
 <translation id="1263733306853729545">Naudokite klavišus „<ph name="MINUS" />“ ir „<ph name="EQUAL" />“, jei norite peržiūrėti kandidatų sąrašą</translation>
 <translation id="126387934568812801">Įtraukti šią ekrano kopiją ir atidarytų skirtukų pavadinimus</translation>
@@ -880,6 +881,7 @@
 <translation id="1634224622052500893">Rastas „Wi-Fi“ tinklas</translation>
 <translation id="1634783886312010422">Ar jau pakeitėte slaptažodį svetainėje <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">Gerai</translation>
+<translation id="1636542522761359943">Sveiki, <ph name="PROFILE_NAME" />!</translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Programos duomenys gali būti bet kokie programos išsaugoti duomenys (atsižvelgiant į kūrėjo nustatymus), įskaitant kontaktus, pranešimus ir nuotraukas. Atsarginių kopijų duomenys nebus įtraukti skaičiuojant Disko saugyklos kvotą.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Šią paslaugą galite išjungti skiltyje „Nustatymai“.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Gaukite šią žymę „iPhone“ įrenginyje</translation>
@@ -916,6 +918,7 @@
 <translation id="1652862280638399816">Jei norite naudoti Slaptažodžių tvarkyklę su „macOS Keychain“, iš naujo paleiskite „Chromium“ ir leiskite „Keychain“ prieigą. Paleidus iš naujo skirtukai bus atidaryti iš naujo.</translation>
 <translation id="1653958716132599769">Grupuoti susijusius skirtukus</translation>
 <translation id="1654580009054503925">Neleidžiama rodyti užklausų</translation>
+<translation id="1654713139320245449">Nerasta jokių įrenginių, į kuriuos būtų galima perduoti. Reikia pagalbos?</translation>
 <translation id="1656528038316521561">Fono nepermatomumas</translation>
 <translation id="1657406563541664238">Padėkite tobulinti „<ph name="PRODUCT_NAME" />“ automatiškai siųsdami „Google“ naudojimo statistiką ir trikčių ataskaitas</translation>
 <translation id="1657937299377480641">Jei norite vėl prisijungti, kad galėtumėte pasiekti švietimo išteklius, paprašykite vieno iš tėvų suteikti leidimą</translation>
@@ -1644,12 +1647,14 @@
 <translation id="2187895286714876935">Serverio sertifikato importavimo klaida</translation>
 <translation id="2187906491731510095">Plėtiniai atnaujinti</translation>
 <translation id="2188881192257509750">Atidaryti „<ph name="APPLICATION" />“</translation>
+<translation id="2188919919468240749">Ištrinti skirtukų grupę?</translation>
 <translation id="2190069059097339078">„Wi-Fi“ prisijungimo duomenų atsisiuntimo priemonė</translation>
 <translation id="219008588003277019">Vietinio kliento modulis: „<ph name="NEXE_NAME" />“</translation>
 <translation id="2190355936436201913">(tuščias)</translation>
 <translation id="2190967441465539539">Nepavyko pasiekti vaizdo kameros ir mikrofono</translation>
 <translation id="2191754378957563929">Įjungta</translation>
 <translation id="2192505247865591433">Iš:</translation>
+<translation id="219283042927675668">Skirtukai grupėje</translation>
 <translation id="2193365732679659387">Patikimumo nustatymai</translation>
 <translation id="2194856509914051091">Į ką reikėtų atsižvelgti</translation>
 <translation id="2195331105963583686">Po to vis tiek galėsite naudoti „<ph name="DEVICE_TYPE" />“, bet nebebus teikiami automatiniai programinės įrangos ir saugos naujiniai</translation>
@@ -1671,6 +1676,7 @@
 <translation id="2211043920024403606">Profilio informacija</translation>
 <translation id="2211245494465528624">Tvarkyti sinchronizavimo parinktis</translation>
 <translation id="221297410904507041">Ištrinti istoriją, slapukus, talpyklos duomenis ir kt.</translation>
+<translation id="2213410656650624348">Vidutinė</translation>
 <translation id="2214018885812055163">Bendrinami aplankai</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 nerodoma eilutė&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> nerodoma eilutė&gt;}few{&lt;<ph name="NUMBER_OF_LINES" /> nerodomos eilutės&gt;}many{&lt;<ph name="NUMBER_OF_LINES" /> nerodomos eilutės&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> nerodomų eilučių&gt;}}</translation>
 <translation id="2215070081105889450">Jei norite bendrinti garso įrašą, bendrinkite skirtuką ar ekrano vaizdą</translation>
@@ -1872,6 +1878,7 @@
 <translation id="2350133097354918058">Įkelta iš naujo</translation>
 <translation id="2350182423316644347">Inicijuojama programa...</translation>
 <translation id="235028206512346451">Jei pasitrauksite nuo įrenginio, ekranas automatiškai užsirakins. Kai būsite priešais įrenginį, ekranas ilgiau neužsirakins. Jei nenaudojate užrakinimo ekrano, bus įjungta įrenginio miego būsena, bet jis nebus užrakintas.</translation>
+<translation id="2352305801620974284">Kai prisijungsite šiame įrenginyje, gausite slaptažodžius ir kt. iš „Google“ paskyros</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Užrakinimo ekrano pastabos automatiškai išsaugomos „<ph name="LOCK_SCREEN_APP_NAME" />“. Naujausia pastaba liks užrakinimo ekrane.</translation>
 <translation id="2353297238722298836">Fotoaparatas ir mikrofonas leidžiami</translation>
@@ -2053,6 +2060,7 @@
 <translation id="2473195200299095979">Išversti šį puslapį</translation>
 <translation id="2475982808118771221">Įvyko klaida</translation>
 <translation id="247616523300581745">Slėpti šiuos failus</translation>
+<translation id="2476435723907345463">Prieiga prie prieigos raktų pašalinta</translation>
 <translation id="2476901513051581836">Negalima išvalyti saugyklos, kol nenurodytas saugyklos neprisijungus dydis.</translation>
 <translation id="2476974672882258506">Išjunkite „Windows“, kad pašalintumėte „<ph name="PARALLELS_DESKTOP" />“.</translation>
 <translation id="2477065602824695373">Kadangi nustatėte kelis jungiklius, automatinis nuskaitymas buvo išjungtas.</translation>
@@ -2081,6 +2089,7 @@
 <translation id="249113932447298600">Apgailestaujame, tačiau įrenginys <ph name="DEVICE_LABEL" /> šiuo metu nepalaikomas.</translation>
 <translation id="2491587035099903063">peržiūros balsas <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Ruošiama sertifikato pasirašymo užklausa</translation>
+<translation id="2492964937550251173">Uždaryti skirtuką (-us) ir ištrinti grupę?</translation>
 <translation id="249330843868392562">Atidaryti teksto į kalbą nustatymus</translation>
 <translation id="2494555621641843783">Nepavyko įdiegti „Steam“</translation>
 <translation id="2495141202137516054">Iš jūsų Disko</translation>
@@ -2247,8 +2256,10 @@
 <translation id="2620215283731032047">Negalima saugiai atsisiųsti failo „<ph name="FILE_NAME" />“.</translation>
 <translation id="2620245777360407679">Šiuo metu prie viešosios interneto prieigos taško prijungti įrenginiai</translation>
 <translation id="2620436844016719705">Sistema</translation>
+<translation id="262087792756666314">Galite prisegti šią funkciją, kad lengvai ją pasiektumėte; spustelėkite mygtuką „Prisegti“ šoninio skydelio viršuje</translation>
 <translation id="2620900772667816510">„Bluetooth“ didžiausia skyra</translation>
 <translation id="262154978979441594">Išmokyti „Google“ padėjėjo balso modelį</translation>
+<translation id="2622280935687585828">Pašalinti <ph name="SITE_NAME" /> iš išjungtų svetainių</translation>
 <translation id="26224892172169984">Neleisti jokiai svetainei apdoroti protokolų</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Leidžiamas MIDI įrenginių valdymas ir programavimas iš naujo</translation>
@@ -2422,6 +2433,7 @@
 <translation id="2743387203779672305">Kopijuoti į iškarpinę</translation>
 <translation id="274362947316498129">Programa bando pasiekti įrenginį (<ph name="DEVICE_NAME" />). Išjunkite įrenginio (<ph name="DEVICE_NAME" />) privatumo jungiklį, kad leistumėte pasiekti.</translation>
 <translation id="2745080116229976798">„Microsoft“ tinkamas pavaldumas</translation>
+<translation id="2747853844543618313">Įsitikinkite, kad priėmėte perdavimo užklausą įrenginyje „<ph name="DEVICE_NAME" />“.</translation>
 <translation id="2749756011735116528">Prisijungti prie „<ph name="PRODUCT_NAME" />“</translation>
 <translation id="2749836841884031656">SIM kortelė</translation>
 <translation id="2749881179542288782">Tikrinti gramatiką ir rašybą</translation>
@@ -2792,6 +2804,7 @@
 <translation id="3021066826692793094">Drugelis</translation>
 <translation id="3021678814754966447">&amp;Žiūrėti rėmelio šaltinį</translation>
 <translation id="3021902017511220299">Nepavyko nuskaityti. Administratorius užblokavo šį veiksmą.</translation>
+<translation id="3022068420678496307">Grupė bus ištrinta iš visų įrenginių, kuriuose prisijungta prie „Chrome“ naudojant šią „Google“ paskyrą.</translation>
 <translation id="3022361196600037287">„<ph name="DEVICE" />“ bus pašalintas iš šio „Chromebook“ ir nebus išsaugotas adresu <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Nepavyko suprasti.</translation>
 <translation id="3023464535986383522">Teksto ištarimas</translation>
@@ -3022,6 +3035,7 @@
 <translation id="3222066309010235055">Iš anksto pateikti: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Prijungti prie „<ph name="USB_VM_NAME" />“</translation>
 <translation id="3222857603094643834">Ieškokite bet ko šiame puslapyje naudodami „Google Lens“</translation>
+<translation id="3223109931751684474">Pašalinkite prieigą prie prieigos raktų šiame įrenginyje</translation>
 <translation id="3223531857777746191">Nustatymo iš naujo mygtukas</translation>
 <translation id="3225084153129302039">Numatytasis violetinis pseudoportretas</translation>
 <translation id="3225319735946384299">Kodo pasirašymas</translation>
@@ -3346,6 +3360,7 @@
 <translation id="3473479545200714844">Ekrano didintuvas</translation>
 <translation id="3474218480460386727">Naujus žodžius gali sudaryti ne daugiau nei 99 raidės</translation>
 <translation id="3474624961160222204">Tęsti kaip <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Sutaupote vidutinį kiekį atminties. Skirtukai tampa neaktyvūs po ilgesnio laikotarpio.</translation>
 <translation id="347785443197175480">Toliau leisti <ph name="HOST" /> pasiekti fotoaparatą ir mikrofoną</translation>
 <translation id="3479357084663933762">Deuteranomalija</translation>
 <translation id="3479552764303398839">Ne dabar</translation>
@@ -4069,7 +4084,6 @@
 <translation id="3983586614702900908">nežinomų tiekėjų įrenginiai</translation>
 <translation id="3983764759749072418">„Play“ parduotuvės programos turi prieigą prie šio įrenginio.</translation>
 <translation id="3983769721878416534">Delsa prieš paspaudimą</translation>
-<translation id="3983793589497399077">Spustelėkite arba vilkite bet kur ir ieškokite naudodami „Lens“</translation>
 <translation id="3984135167056005094">Neįtraukti el. pašto adreso</translation>
 <translation id="3984159763196946143">Nepavyko paleisti demonstracinės būsenos</translation>
 <translation id="3984431586879874039">Leisti šiai svetainei peržiūrėti jūsų saugos raktą?</translation>
@@ -4106,6 +4120,7 @@
 <translation id="4010036441048359843">Įjungti paryškinimą</translation>
 <translation id="4010746393007464819">Pasiekiamas naujovinimas į 12 versijos „Debian“ („Bookworm“)</translation>
 <translation id="4010917659463429001">Kad pasiektumėte žymes mobiliajame įrenginyje, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Galite prisegti šią funkciją, kad lengvai ją pasiektumėte</translation>
 <translation id="4014432863917027322">Pataisyti „<ph name="EXTENSION_NAME" />“?</translation>
 <translation id="4015163439792426608">Turite plėtinių? <ph name="BEGIN_LINK" />Tvarkykite juos<ph name="END_LINK" /> vienoje paprastoje vietoje.</translation>
 <translation id="4016762287427926315">Leidimai, kuriuos suteikiate programai „<ph name="APP_NAME" />“, taip pat bus suteikti šiai programai.<ph name="BEGIN_LINK" />Tvarkyti<ph name="END_LINK" /></translation>
@@ -4191,6 +4206,7 @@
 <translation id="4078903002989614318">Rūšiavimo ir sąrašo parinktys</translation>
 <translation id="4079140982534148664">Naudokite patobulintą rašybos tikrinimą</translation>
 <translation id="4082333918978320301">Jokioms svetainėms neleidžiama naudoti mikrofono</translation>
+<translation id="4083735423615351075">Skirtukai liks atidaryti šiame įrenginyje, bet grupė bus ištrinta iš visų įrenginių, kuriuose prisijungta prie „Chrome“ naudojant šią „Google“ paskyrą.</translation>
 <translation id="4084682180776658562">Žymė</translation>
 <translation id="4084835346725913160">Uždaryti „<ph name="TAB_NAME" />“</translation>
 <translation id="4085298594534903246">Šiame puslapyje „JavaScript“ buvo užblokuota.</translation>
@@ -4200,6 +4216,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Rodyti dešinėje</translation>
+<translation id="4088879333319441249">Išgrupuoti skirtukų grupę?</translation>
 <translation id="4089235344645910861">Nustatymai išsaugoti. Pradėta sinchronizuoti.</translation>
 <translation id="4089817585533500276">„Shift“ + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Įgalinti patvirtintą prieigą</translation>
@@ -4409,6 +4426,7 @@
 <translation id="4261429981378979799">Plėtinių leidimai</translation>
 <translation id="4262004481148703251">Atsisakyti perspėjimo</translation>
 <translation id="4263223596040212967">Patikrinkite klaviatūros išdėstymą ir bandykite dar kartą.</translation>
+<translation id="4263470758446311292">Sutaupote daugiausia atminties. Skirtukai tampa neaktyvūs po trumpesnio laikotarpio.</translation>
 <translation id="4265096510956307240">Patvirtinkite savo tapatybę</translation>
 <translation id="4265301768135164545">Taip pat galite nustatyti „eSIM“ kortelės profilį <ph name="BEGIN_LINK" />neautomatiškai<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Jei norite tikrinti, ar nėra naujinių, naudokite eternetą, „Wi-Fi“ arba mobiliojo ryšio duomenis.</translation>
@@ -4728,6 +4746,7 @@
 <translation id="4503748371388753124">Jūsų kompiuteryje yra patikimos platformos modulio (angl. „Trusted Platform Module“, TPM) saugos įrenginys, kuris naudojamas „ChromeOS Flex“ įdiegiant daug svarbių saugos funkcijų. Jei reikia daugiau informacijos, apsilankykite „Chromebook“ pagalbos centre adresu https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Slapukai leidžiami}=1{Slapukai leidžiami, 1 išimtis}one{Slapukai leidžiami, {COUNT} išimtis}few{Slapukai leidžiami, {COUNT} išimtys}many{Slapukai leidžiami, {COUNT} išimties}other{Slapukai leidžiami, {COUNT} išimčių}}</translation>
 <translation id="4504940961672722399">Naudokite šį plėtinį spustelėję šią piktogramą arba paspaudę <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Atsisiųskite „Chrome“ naudodami šį QR kodą ir prisijunkite prie „Google“ paskyros.</translation>
 <translation id="450552327874992444">Žodis jau pridėtas</translation>
 <translation id="4507373251891673233">Užblokavote visus plėtinius iš <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Spustelėkite „Pridėti šaukinį“.</translation>
@@ -5063,6 +5082,7 @@
 <translation id="4768332406694066911">Turite jus identifikuojančius sertifikatus iš šių organizacijų</translation>
 <translation id="4769632191812288342">Jūsų apsauga yra įprasta</translation>
 <translation id="4770119228883592393">Pateikta užklausa dėl leidimo; paspauskite ⌘ + „Option“ + žemyn, kad atsakytumėte</translation>
+<translation id="4770755495532014179">Naudokite šį slaptažodį „iPhone“ įrenginyje</translation>
 <translation id="4773112038801431077">„Linux“ naujovinimas</translation>
 <translation id="477548766361111120">Leisti plėtiniui skaityti ir keisti šią svetainę</translation>
 <translation id="4776311127346151860">„<ph name="DEVICE_NAME" />“ susietas</translation>
@@ -5232,6 +5252,7 @@
 <translation id="4890399733764921729">Nepavyko prisijungti. Užrakino kitas mobiliojo ryšio operatorius.</translation>
 <translation id="4890773143211625964">Rodyti išplėstines spausdintuvo parinktis</translation>
 <translation id="4891089016822695758">Beta forumas</translation>
+<translation id="4891795846939730995">Jei norite vėl suteikti šiam įrenginiui prieigą prie prieigos raktų, prisijunkite prie svetainės ar programos naudodami išsaugotą prieigos raktą</translation>
 <translation id="4892229439761351791">Svetainė gali naudoti „Bluetooth“</translation>
 <translation id="4892328231620815052">Kai būsite pasirengę, raskite skaitymo sąrašą skiltyje „Žymės ir sąrašai“</translation>
 <translation id="489258173289528622">Neaktyvus naudojant su akumuliatoriumi</translation>
@@ -5677,6 +5698,7 @@
 <translation id="5242724311594467048">Įgalinti „<ph name="EXTENSION_NAME" />“?</translation>
 <translation id="5243522832766285132">Po kelių minučių bandykite dar kartą</translation>
 <translation id="5244234799035360187">„OneDrive“ dabar bus rodoma programoje „Files“</translation>
+<translation id="5244466461749935369">Kol kas palikti</translation>
 <translation id="5244474230056479698">Sinchronizavimas su <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Pradžia naudojant mokyklos paskyrą</translation>
 <translation id="5246282308050205996">„<ph name="APP_NAME" />“ užstrigo. Jei norite iš naujo paleisti programą, spustelėkite šį debesėlį.</translation>
@@ -5945,6 +5967,7 @@
 <translation id="5453829744223920473">Vaikas gali naudoti visas mokyklos programas, žymes ir šaltinius, kaip daro per pamokas. Mokykla nustato pagrindines taisykles.</translation>
 <translation id="5454166040603940656">naudojant <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Žiūrėti daugiau paieškos rezultatų</translation>
+<translation id="5457082343331641453">Pridėkite prie paieškos</translation>
 <translation id="5457113250005438886">Netinkama</translation>
 <translation id="5457459357461771897">Skaityti ir ištrinti nuotraukas, muziką ir kitą mediją iš kompiuterio</translation>
 <translation id="5458214261780477893">Dvorako</translation>
@@ -6423,6 +6446,7 @@
 <translation id="5816434091619127343">Atlikus prašomus spausdintuvo pakeitimus, spausdintuvo nebebus galima naudoti.</translation>
 <translation id="581659025233126501">Įjungti sinchronizavimą</translation>
 <translation id="5817918615728894473">Susieti</translation>
+<translation id="5817963443108180228">Sveiki sugrįžę, <ph name="PROFILE_NAME" />!</translation>
 <translation id="581911254119283028">visos programos</translation>
 <translation id="5821565227679781414">Sukurti šaukinį</translation>
 <translation id="5824976764713185207">Automatiškai nuskaityti puslapį po to, kai baigiamas jo įkėlimas</translation>
@@ -6462,6 +6486,7 @@
 <translation id="5846504156837627898">Tvarkyti svetainių leidimus</translation>
 <translation id="5846749317653566506">Koreguokite spalvų taisymo nustatymus, kad spalvos būtų skirtingos</translation>
 <translation id="5846807460505171493">Įdiekite naujinių ir programų. Tęsdami sutinkate, kad šis įrenginys taip pat gali automatiškai atsisiųsti ir įdiegti naujinius bei programas iš „Google“, jūsų operatoriaus ir įrenginio gamintojo, naudodamas mobiliojo ryšio duomenis. Kai kuriose iš šių programų gali būti teikiama pirkimo programoje paslauga.</translation>
+<translation id="5848054741303781539">Nustatyta neautomatiškai, nenaudojama vietovės informacija</translation>
 <translation id="5848319660029558352">Funkcija „Perskaityk garsiai“ ir teksto formatavimas</translation>
 <translation id="5849212445710944278">Jau pridėta</translation>
 <translation id="584945105664698226">Balso greitis</translation>
@@ -7022,6 +7047,7 @@
 <translation id="6265159465845424232">Klausti prieš kopijuojant ar perkeliant „Microsoft“ failus į „Microsoft OneDrive“</translation>
 <translation id="6265687851677020761">Pašalinti prievadą</translation>
 <translation id="6266532094411434237">Prisijungiama prie „<ph name="DEVICE" />“</translation>
+<translation id="6266984048393265562">Tinkinti profilį</translation>
 <translation id="6267166720438879315">Pasirinkite sertifikatą, kad patvirtintumėte savo autentiškumą <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Atidaryti naudojant „<ph name="APP" />“</translation>
 <translation id="6270309713620950855">Nutildyti priminimą</translation>
@@ -7160,7 +7186,6 @@
 <translation id="6383382161803538830">Skaitymo režimas nepasiekiamas šiame puslapyje</translation>
 <translation id="638418309848716977">Palaikomos nuorodos</translation>
 <translation id="6384275966486438344">Pakeiskite paieškos nustatymus į: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupė be pavadinimo – vienas skirtukas}one{Grupė be pavadinimo – # skirtukas}few{Grupė be pavadinimo – # skirtukai}many{Grupė be pavadinimo – # skirtuko}other{Grupė be pavadinimo – # skirtukų}}</translation>
 <translation id="6385149369087767061">Prisijunkite prie interneto ir bandykite dar kartą</translation>
 <translation id="6385382178401976503">Kortelė: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Įspėjimas – įgalintas išsamus įrašymas į žurnalus; į toliau pateiktus žurnalus gali būti įtraukta URL ar kitos neskelbtinos informacijos. Peržiūrėkite ir įsitikinkite, kad norite pateikti šią informaciją.</translation>
@@ -7239,6 +7264,7 @@
 <translation id="6445450263907939268">Jei nepageidaujate šių pakeitimų, galite atkurti ankstesnius nustatymus.</translation>
 <translation id="6446213738085045933">Kurti nuorodą darbalaukyje</translation>
 <translation id="6447842834002726250">Slapukai</translation>
+<translation id="6449554712554071184">Atlikus šį veiksmą grupė bus visam laikui ištrinta iš įrenginio.</translation>
 <translation id="6450876761651513209">Pakeisti su privatumu susijusius nustatymus</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> ir dar 1 skirtukas}one{<ph name="PAGE_TITLE" /> ir dar # skirtukas}few{<ph name="PAGE_TITLE" /> ir dar # skirtukai}many{<ph name="PAGE_TITLE" /> ir dar # skirtuko}other{<ph name="PAGE_TITLE" /> ir dar # skirtukų}}</translation>
 <translation id="6451689256222386810">Jei pamiršote slaptafrazę arba norite pakeisti šį nustatymą, <ph name="BEGIN_LINK" />iš naujo nustatykite sinchronizavimą<ph name="END_LINK" />.</translation>
@@ -7385,6 +7411,7 @@
 <translation id="6556866813142980365">Grąžinti</translation>
 <translation id="6556903358015358733">Tema ir ekrano fonas</translation>
 <translation id="6557290421156335491">Mano spartieji klavišai</translation>
+<translation id="6560061709899140565">Rodyti kitus „Cast“ seansus</translation>
 <translation id="6560151649238390891">Siūlymas įterptas</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Sistemos žurnalai išsaugomi kataloge „Atsisiuntimai“.</translation>
@@ -7480,6 +7507,7 @@
 <translation id="6635674640674343739">Nepavyko užmegzti tinklo ryšio. Patikrinkite tinklo ryšį ir bandykite dar kartą.</translation>
 <translation id="663569763553406962">Peržiūrėkite, kokie plėtiniai gali nuskaityti ar keisti svetainę</translation>
 <translation id="6635944431854494329">Savininkas gali valdyti šią funkciją skiltyje „Nustatymai“ &gt; „Išplėstiniai“ &gt; „Automatiškai siųsti diagnostikos ir naudojimo duomenis „Google“.</translation>
+<translation id="6636572589916466933">Priimkite perdavimo užklausą įrenginyje „<ph name="DEVICE_NAME" />“.</translation>
 <translation id="6636623428211296678">Galite toliau peržiūrėti daugiau nustatymų arba baigti dabar</translation>
 <translation id="6639554308659482635">„SQLite“ atmintis</translation>
 <translation id="6640268266988685324">Atidarytas skirtukas</translation>
@@ -7498,6 +7526,7 @@
 <translation id="6648911618876616409">Svarbus naujinys paruoštas įdiegti. Prisijunkite ir pradėkite.</translation>
 <translation id="6649018507441623493">Šiek tiek palaukite...</translation>
 <translation id="6650206238642452078">Prenumeruoti „ChromeOS“ sistemos įvykius</translation>
+<translation id="6650584564768559994">Subalansuokite atminties taupymą. Skirtukai tampa neaktyvūs praėjus optimaliam laikotarpiui.</translation>
 <translation id="665061930738760572">Atidaryti &amp;naujame lange</translation>
 <translation id="6651237644330755633">Pasitikėti šiuo sertifikatu nustatant svetaines</translation>
 <translation id="6651495917527016072">Sinchronizuokite „Wi-Fi“ tinklus su telefonu. <ph name="LINK_BEGIN" />Sužinokite daugiau<ph name="LINK_END" /></translation>
@@ -7755,6 +7784,7 @@
 <translation id="6831043979455480757">Vertėjas</translation>
 <translation id="6832218595502288407">Lygiuoti kairėje</translation>
 <translation id="6833479554815567477">Skirtukas pašalintas iš grupės „<ph name="GROUP_NAME" />“ – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Subalansuota (rekomenduojama)</translation>
 <translation id="6835762382653651563">Prisijunkite prie interneto, kad galėtumėte atnaujinti „<ph name="DEVICE_TYPE" />“.</translation>
 <translation id="683630338945552556">Naudoti ir išsaugoti slaptažodžius „Google“ paskyroje</translation>
 <translation id="6839225236531462745">Sertifikato ištrynimo klaida</translation>
@@ -8163,6 +8193,7 @@
 <translation id="715396040729904728">paleidimo priemonė + „Shift“ + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Pateikite atsiliepimą arba aprašykite problemą. Jei įmanoma, įtraukite problemos atkūrimo veiksmus.</translation>
 <translation id="7154130902455071009">Pakeiskite pradžios puslapį į: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Gaukite kokybiškesnį vaizdo įrašą ir tausokite akumuliatoriaus veikimo laiką. Vaizdo įrašas bus leidžiamas tik su „Cast“ suderinamame įrenginyje.</translation>
 <translation id="7159953856712257647">Įdiegta pagal numatytuosius nustatymus</translation>
 <translation id="7160182524506337403">Dabar galite peržiūrėti telefono pranešimus</translation>
 <translation id="7165263843655074092">Šiame įrenginyje naudojate įprastos apsaugos funkciją</translation>
@@ -9021,6 +9052,7 @@
 <translation id="7788948939674438635">Neleisti svetainėms užrakinti klaviatūros</translation>
 <translation id="7789963078219276159">Pradžios puslapio fonas pakeistas į <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Failai šiame „Chromebook“</translation>
 <translation id="7791269138074599214">Įvesties metodas</translation>
 <translation id="7791429245559955092">Ši programa bus įdiegta šiuo metu naudojamame „Chrome“ profilyje.</translation>
 <translation id="7791436592012979144">Atvirkštinis slinkimas įgalintas</translation>
@@ -9050,6 +9082,7 @@
 <translation id="7810202088502699111">Šiame puslapyje iššokantieji langai buvo užblokuoti.</translation>
 <translation id="7810367892333449285">Įrašo formatas turi būti <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ adresas<ph name="LPA_2" />$<ph name="LPA_3" />pasirenkamas atitikties ID<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Bandykite dar kartą arba pasirinkite vieną iš toliau pateiktų anksčiau sugeneruotų temų.</translation>
+<translation id="7814090115158024843">Niekada nesiūlyti rašymo pagalbos šiose svetainėse</translation>
 <translation id="7814458197256864873">&amp;Kopijuoti</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Redaguoti „<ph name="EXTENSION_NAME" />“ spartųjį klavišą <ph name="SHORTCUT" /></translation>
@@ -9281,8 +9314,10 @@
 <translation id="7974936243149753750">Sritis aplink vaizdo kraštus</translation>
 <translation id="7975504106303186033">Turite užregistruoti šį „Chrome Education“ įrenginį „Education“ paskyroje. Jei norite prisiregistruoti naudoti naują paskyrą, apsilankykite adresu g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Įspėjama, jei naudojate slaptažodį, kuris pažeistas dėl duomenų saugos pažeidimo.</translation>
+<translation id="797824194429476746">Skirtukai liks atidaryti šiame įrenginyje, bet grupė bus visam laikui ištrinta.</translation>
 <translation id="7978412674231730200">Asmeninis raktas</translation>
 <translation id="7978450511781612192">Atlikę šį veiksmą būsite atjungti nuo „Google“ paskyrų. Žymės, istorija, slaptažodžiai ir kt. nebebus sinchronizuojama.</translation>
+<translation id="7980066177668669492">„Base64“ užkoduotas ASCII, keli sertifikatai</translation>
 <translation id="7980084013673500153">Ištekliaus ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Išsaugoto prieigos rakto naudojimas programai „<ph name="APP_NAME" />“</translation>
 <translation id="7981662863948574132">Rodyti įrenginio EID ir QR kodo iššokantįjį langą</translation>
@@ -9406,6 +9441,7 @@
 <translation id="8066444921260601116">Ryšio dialogo langas</translation>
 <translation id="8070572887926783747">„<ph name="APP_NAME" />“ leidimas pasiekti vietovės duomenis</translation>
 <translation id="8070662218171013510">Juntamas grįžtamasis ryšys</translation>
+<translation id="8071033114691184017">Naudokite šį slaptažodį „iPhone“ įrenginyje</translation>
 <translation id="8071432093239591881">Spausdinti kaip vaizdą</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Programos duomenys gali būti bet kokie programos išsaugoti duomenys (atsižvelgiant į kūrėjo nustatymus), įskaitant kontaktus, pranešimus ir nuotraukas.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Atsarginės kopijos duomenys nebus įtraukti skaičiuojant Disko saugyklos kvotą.<ph name="END_PARAGRAPH2" />
@@ -9694,6 +9730,7 @@
 <translation id="8276242035951017580">Programoms neleidžiama naudoti fotoaparato</translation>
 <translation id="8276560076771292512">Tuščia talpykla ir priverstinis įkėlimas iš naujo</translation>
 <translation id="8276850948802942358">Sužinokite daugiau apie laikino leidimo naudoti trečiųjų šalių slapukus suteikimą svetainei</translation>
+<translation id="8277907305629781277">Šį prieigos raktą sukūrėte <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Svetainės jūsų kalbomis</translation>
 <translation id="828180235270931531">Kiti pasiekiami spausdintuvai</translation>
 <translation id="8281886186245836920">Praleisti</translation>
@@ -9973,6 +10010,7 @@
 <translation id="8482077254400484047">Čia tvarkykite neaktyvių skirtukų išvaizdą</translation>
 <translation id="8483248364096924578">IP adresas</translation>
 <translation id="8486666913807228950">Priežastis: atvirkštinio atvaizdavimo taisyklė „<ph name="REVERT_RULE" />“ rasta sąraše „Priverstinai atidaryti naršyklėje“.</translation>
+<translation id="8487303289354211861">Prisegta! Galite vėl pasiekti šią funkciją naudodami naują įrankių juostos mygtuką</translation>
 <translation id="8487678622945914333">Artinti</translation>
 <translation id="8487699605742506766">Viešosios interneto prieigos taškas</translation>
 <translation id="8489156414266187072">Asmeniniai pasiūlymai rodomi tik jūsų paskyroje</translation>
@@ -10374,7 +10412,6 @@
 <translation id="8784626084144195648">Intervalo vidurkis</translation>
 <translation id="8785622406424941542">Rašiklis</translation>
 <translation id="8786824282808281903">Kai vaikas matys šią piktogramą, naudojant kontrolinį kodą bus galima nustatyti tapatybę arba patvirtinti pirkimo operacijas.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupė be pavadinimo – vienas skirtukas}one{Grupė be pavadinimo – # skirtukas}few{Grupė be pavadinimo – # skirtukai}many{Grupė be pavadinimo – # skirtuko}other{Grupė be pavadinimo – # skirtukų}}</translation>
 <translation id="8787752878731558379">Padėkite mums tobulinti „Chrome“ nurodydami, kodėl leidote trečiųjų šalių slapukus</translation>
 <translation id="8789898473175677810">„Chrome“ prisideda prie <ph name="LINK_BEGIN" />bendradarbiavimo<ph name="LINK_END" /> siekiant sumažinti stebėjimą keliose svetainėse ir palaipsniui atsisakyti trečiųjų šalių slapukų. Bet bandome tai daryti atsakingai, nes dauguma svetainių naudoja trečiųjų šalių slapukus, kad veiktų, kaip numatyta. Pavyzdžiui, daugelyje svetainių naudojami trečiųjų šalių slapukai, siekiant supaprastinti prisijungimą, palaikyti įterptąsias pokalbių ir komentarų sistemas bei mokėjimo paslaugas. Be to, reklamuotojai dažnai naudoja trečiųjų šalių slapukus, kad geriau suasmenintų skelbimus. Tai svarbu, nes svetainėse dažnai naudojami skelbimai, siekiant apmokėti išlaidas ir užtikrinti be piniginio mokėjimo teikiamą internetinį turinį.</translation>
 <translation id="8791157330927639737">Sužinokite daugiau apie atnaujinimą</translation>
@@ -10609,6 +10646,7 @@
 <translation id="8962863356073277855">URL formatas turi būti https://www.example.com</translation>
 <translation id="8962918469425892674">Šioje svetainėje naudojami judesio arba šviesos jutikliai.</translation>
 <translation id="8963117664422609631">Eiti į svetainės nustatymus</translation>
+<translation id="8964795217937248330">Uždaryti skirtuką (-us) ir ištrinti grupę?</translation>
 <translation id="8965037249707889821">Įveskite seną slaptažodį</translation>
 <translation id="8966809848145604011">Kiti profiliai</translation>
 <translation id="8967427617812342790">Prid. prie skait. sąrašo</translation>
@@ -10688,6 +10726,7 @@
 <translation id="9014674417732091912">Perkelta į <ph name="ROW_NUMBER" /> eilutę</translation>
 <translation id="901668144954885282">Atsarginės kopijos kūrimas „Google“ diske</translation>
 <translation id="9016827136585652292">privatumo ekrano perjungimas</translation>
+<translation id="9017055559700464094">Prisegta! Vėl naudokite šią funkciją iš įrankių juostos</translation>
 <translation id="90181708067259747">Galiojimo pabaigos data: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Diegimas baigtas</translation>
 <translation id="901876615920222131">Jei norite iš naujo atidaryti grupę, spustelėkite grupę</translation>
@@ -10846,6 +10885,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Kad galėtumėte naudotis geriausiomis funkcijomis, įdiekite „<ph name="DEVICE_OS" />“ į vidinį diską. Taip pat galėsite ją įdiegti vėliau iš prisijungimo ekrano.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Jei nesate pasiruošę įdiegti, galite ją išbandyti ir paleisti iš USB. Išlaikysite esamą OS ir duomenis, bet galite susidurti su saugyklos ir našumo apribojimais.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Atidaryti kaip susegtą skirtuką</translation>
+<translation id="9122788874051694311">Išsaugoti šį prieigos raktą ne inkognito režimu?</translation>
 <translation id="9123287046453017203">Jūsų įrenginys nėra atnaujintas</translation>
 <translation id="9125910124977405374">Pašalinti <ph name="LANGUAGE_NAME" /> iš automatiškai verčiamų kalbų</translation>
 <translation id="9126149354162942022">Žymeklio spalva</translation>
@@ -11040,6 +11080,7 @@
 <translation id="979345485590886759">Svetainėse gali būti prašoma užrakinti pelės žymeklį</translation>
 <translation id="980731642137034229">Veiksmų meniu mygtukas</translation>
 <translation id="981121421437150478">Neprisijungus</translation>
+<translation id="98235653036850093">Sveiki, <ph name="PROFILE_NAME" />!</translation>
 <translation id="983192555821071799">Uždar. visų skirtukų lapus</translation>
 <translation id="983531994960412650">„<ph name="WINDOW_TITLE" />“ – fotoaparato ir mikrofono įrašymas</translation>
 <translation id="984275831282074731">Mokėjimo metodai</translation>
diff --git a/chrome/app/resources/generated_resources_lv.xtb b/chrome/app/resources/generated_resources_lv.xtb
index 2e9477b1..db35a0c 100644
--- a/chrome/app/resources/generated_resources_lv.xtb
+++ b/chrome/app/resources/generated_resources_lv.xtb
@@ -367,6 +367,7 @@
 <translation id="1260810365552581339">Iespējams, operētājsistēmai Linux nav pietiekami daudz brīvas vietas diskā. <ph name="LINK_START" />Iestatījumos<ph name="LINK_END" /> varat palielināt operētājsistēmai Linux pieejamo brīvo vietu diskā un vēlreiz mēģināt atjaunot failus.</translation>
 <translation id="1261380933454402672">Mērena</translation>
 <translation id="126156426083987769">Radās problēma ar demonstrācijas režīma ierīces licencēm.</translation>
+<translation id="1261885284931493480">Vai noņemt cilni(-es) un dzēst grupu?</translation>
 <translation id="1263231323834454256">Lasīšanas saraksts</translation>
 <translation id="1263733306853729545">Lietot taustiņus “<ph name="MINUS" />” un “<ph name="EQUAL" />”, lai lapotu kandidātu sarakstu</translation>
 <translation id="126387934568812801">Ietvert šo ekrānuzņēmumu un atvērto ciļņu nosaukumus</translation>
@@ -878,6 +879,7 @@
 <translation id="1634224622052500893">Atrasts Wi-Fi tīkls</translation>
 <translation id="1634783886312010422">Vai jūs jau nomainījāt šo paroli vietnē <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">Labi</translation>
+<translation id="1636542522761359943">Laipni lūdzam, <ph name="PROFILE_NAME" />!</translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Lietotņu dati var būt jebkādi lietotņu saglabātie dati (atkarībā no izstrādātāja iestatījumiem), tostarp kontaktpersonas, ziņojumi un fotoattēli. Dublētie dati netiks ieskaitīti jūsu Diska krātuves kvotā.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Šo pakalpojumu varat izslēgt iestatījumos.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Iegūstiet šo grāmatzīmi savā iPhone tālrunī</translation>
@@ -914,6 +916,7 @@
 <translation id="1652862280638399816">Lai izmantotu paroļu pārvaldnieku ar macOS sistēmu Keychain, atkārtoti palaidiet pārlūku Chromium un atļaujiet piekļuvi sistēmai Keychain. Jūsu cilnes tiks atkal atvērtas pēc atkārtotas palaišanas.</translation>
 <translation id="1653958716132599769">Grupēt saistītas cilnes</translation>
 <translation id="1654580009054503925">Nedrīkst rādīt pieprasījumus</translation>
+<translation id="1654713139320245449">Netika atrasts neviens apraides galamērķis. Vai nepieciešama palīdzība?</translation>
 <translation id="1656528038316521561">Fona necaurredzamība</translation>
 <translation id="1657406563541664238">Palīdziet uzlabot programmu <ph name="PRODUCT_NAME" />, automātiski nosūtot lietošanas statistiku un avārijas pārskatus uzņēmumam Google</translation>
 <translation id="1657937299377480641">Lai vēlreiz pierakstītos un varētu piekļūt izglītojošiem resursiem, lūdziet vienam no vecākiem piešķirt jums atļauju.</translation>
@@ -1633,12 +1636,14 @@
 <translation id="2187895286714876935">Servera sertifikāta importēšanas kļūda</translation>
 <translation id="2187906491731510095">Paplašinājumi ir atjaunināti</translation>
 <translation id="2188881192257509750">Atvērt lietojumprogrammu <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Vai dzēst ciļņu grupu?</translation>
 <translation id="2190069059097339078">Wi-Fi akreditācijas datu ieguvējs</translation>
 <translation id="219008588003277019">Native Client modulis: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(tukšs)</translation>
 <translation id="2190967441465539539">Nevar piekļūt kamerai un mikrofonam</translation>
 <translation id="2191754378957563929">Iesl.</translation>
 <translation id="2192505247865591433">No:</translation>
+<translation id="219283042927675668">Cilnes grupā</translation>
 <translation id="2193365732679659387">Uzticamības iestatījumi</translation>
 <translation id="2194856509914051091">Svarīgi apsvērumi</translation>
 <translation id="2195331105963583686">Jūs joprojām varēsiet izmantot šo ierīci <ph name="DEVICE_TYPE" /> pēc noteiktā laika, taču vairs nesaņemsiet automātiskus programmatūras un drošības atjauninājumus.</translation>
@@ -1660,6 +1665,7 @@
 <translation id="2211043920024403606">Profila informācija</translation>
 <translation id="2211245494465528624">Sinhronizācijas opciju pārvaldība</translation>
 <translation id="221297410904507041">Dzēst vēsturi, sīkfailus, kešatmiņu un citus datus</translation>
+<translation id="2213410656650624348">Vidēji</translation>
 <translation id="2214018885812055163">Kopīgotās mapes</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 rinda netiek rādīta&gt;}zero{&lt;<ph name="NUMBER_OF_LINES" /> rindas netiek rādītas&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> rinda netiek rādīta&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> rindas netiek rādītas&gt;}}</translation>
 <translation id="2215070081105889450">Lai kopīgotu audio, kopīgojiet cilni vai ekrānu</translation>
@@ -1858,6 +1864,7 @@
 <translation id="2350133097354918058">Atkārtoti ielādēts</translation>
 <translation id="2350182423316644347">Notiek lietojumprogrammas inicializēšana...</translation>
 <translation id="235028206512346451">Ja vairs neskatīsieties uz savu ierīci, ekrāns tiks automātiski bloķēts. Kad skatīsieties uz savu ierīci, ekrāns ilgāk nepāries miega režīmā. Ja neizmantojat bloķēšanas ekrānu, jūsu ierīce netiks bloķēta, bet pāries miega režīmā.</translation>
+<translation id="2352305801620974284">Pierakstoties šajā ierīcē, varat iegūt paroles un citus datus no sava Google konta</translation>
 <translation id="2352662711729498748">&lt;1 MB</translation>
 <translation id="2352810082280059586">Bloķēšanas ekrāna piezīmes tiek automātiski saglabātas lietotnē <ph name="LOCK_SCREEN_APP_NAME" />. Jūsu jaunākās piezīmes paliks bloķēšanas ekrānā.</translation>
 <translation id="2353297238722298836">Kameras un mikrofona lietošana ir atļauta</translation>
@@ -2039,6 +2046,7 @@
 <translation id="2473195200299095979">Tulkot šo lapu</translation>
 <translation id="2475982808118771221">Radās kļūda</translation>
 <translation id="247616523300581745">Paslēpt šos failus</translation>
+<translation id="2476435723907345463">Vairs nevar piekļūt piekļuves atslēgām.</translation>
 <translation id="2476901513051581836">Nevar atbrīvot vietu krātuvē, ja nav zināms bezsaistes krātuves lielums.</translation>
 <translation id="2476974672882258506">Lai atinstalētu <ph name="PARALLELS_DESKTOP" />, izslēdziet Windows datoru.</translation>
 <translation id="2477065602824695373">Tā kā iestatījāt vairākus slēdžus, automātiskā pārlūkošana ir izslēgta.</translation>
@@ -2067,6 +2075,7 @@
 <translation id="249113932447298600">Diemžēl ierīce <ph name="DEVICE_LABEL" /> šobrīd netiek atbalstīta.</translation>
 <translation id="2491587035099903063">priekšskatīt balsi šādai valodai: <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Tiek sagatavots sertifikāta parakstīšanas pieprasījums</translation>
+<translation id="2492964937550251173">Vai aizvērt cilni(-es) un dzēst grupu?</translation>
 <translation id="249330843868392562">Atvērt teksta pārvēršanas runā iestatījumus</translation>
 <translation id="2494555621641843783">Nevar instalēt lietotni Steam</translation>
 <translation id="2495141202137516054">No jūsu Diska</translation>
@@ -2233,8 +2242,10 @@
 <translation id="2620215283731032047">Failu “<ph name="FILE_NAME" />” nevar droši lejupielādēt.</translation>
 <translation id="2620245777360407679">Tīklājam pašlaik pievienotās ierīces</translation>
 <translation id="2620436844016719705">Sistēma</translation>
+<translation id="262087792756666314">Varat piespraust šo funkciju, lai ērti tai piekļūtu. Sānu paneļa augšdaļā noklikšķiniet uz pogas “Piespraust”.</translation>
 <translation id="2620900772667816510">Īpaši augsta Bluetooth izšķirtspēja</translation>
 <translation id="262154978979441594">Google asistenta balss modeļa izveide</translation>
+<translation id="2622280935687585828">Noņemt vietni <ph name="SITE_NAME" /> no atspējotajām vietnēm</translation>
 <translation id="26224892172169984">Neļaut nevienai vietnei apstrādāt protokolus</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI ierīču kontrole un pārprogrammēšana atļauta</translation>
@@ -2408,6 +2419,7 @@
 <translation id="2743387203779672305">Kopēt starpliktuvē</translation>
 <translation id="274362947316498129">Kāda lietotne mēģina piekļūt ierīcei (<ph name="DEVICE_NAME" />). Lai atļautu piekļuvi, izslēdziet ierīces (<ph name="DEVICE_NAME" />) konfidencialitātes slēdzi.</translation>
 <translation id="2745080116229976798">Microsoft pilnīga pakārtotība</translation>
+<translation id="2747853844543618313">Pieņemiet apraides pieprasījumu savā ierīcē (<ph name="DEVICE_NAME" />).</translation>
 <translation id="2749756011735116528">Pierakstīties produktā <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Pārbaudīt gramatiku un pareizrakstību</translation>
@@ -2778,6 +2790,7 @@
 <translation id="3021066826692793094">Tauriņš</translation>
 <translation id="3021678814754966447">Skatīt rāmja a&amp;votu</translation>
 <translation id="3021902017511220299">Pārbaude neizdevās. Jūsu administrators bloķēja šo darbību.</translation>
+<translation id="3022068420678496307">Tādējādi grupa tiks dzēsta no visām ierīcēm, kurās esat pierakstījies pārlūkā Chrome, izmantojot šo Google kontu.</translation>
 <translation id="3022361196600037287">Ierīce “<ph name="DEVICE" />” tiks noņemta no šī Chromebook datora un netiks saglabāta kontā <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Nesapratu.</translation>
 <translation id="3023464535986383522">Atlasīt, lai izrunātu</translation>
@@ -3008,6 +3021,7 @@
 <translation id="3222066309010235055">Iepriekšēja atveide: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Izveidot savienojumu ar <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Meklējiet informāciju par jebkādu tēmu šajā lapā, izmantojot Google Lens</translation>
+<translation id="3223109931751684474">Piekļuves noņemšana jūsu piekļuves atslēgām šajā ierīcē</translation>
 <translation id="3223531857777746191">Poga Atiestatīt</translation>
 <translation id="3225084153129302039">Noklusējuma iemiesojums violetā krāsā</translation>
 <translation id="3225319735946384299">Koda parakstīšana</translation>
@@ -3332,6 +3346,7 @@
 <translation id="3473479545200714844">Ekrāna lupa</translation>
 <translation id="3474218480460386727">Jaunajiem vārdiem neizmantojiet vairāk par 99 burtiem</translation>
 <translation id="3474624961160222204">Turpināt kā: <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Ietaupiet vidēji daudz vietas atmiņā. Cilnes kļūs neaktīvas pēc ilgāka laika perioda.</translation>
 <translation id="347785443197175480">Arī turpmāk ļaut vietnei <ph name="HOST" /> piekļūt kamerai un mikrofonam</translation>
 <translation id="3479357084663933762">Deiteranomālija</translation>
 <translation id="3479552764303398839">Vēlāk</translation>
@@ -4055,7 +4070,6 @@
 <translation id="3983586614702900908">ierīces, ko piedāvā nezināms ražotājs</translation>
 <translation id="3983764759749072418">Play veikala lietojumprogrammām ir piekļuve šai ierīcei.</translation>
 <translation id="3983769721878416534">Aizkave pirms klikšķa</translation>
-<translation id="3983793589497399077">Noklikšķiniet vai velciet jebkurā vietā, lai meklētu, izmantojot Lens</translation>
 <translation id="3984135167056005094">Neiekļaut e-pasta adresi</translation>
 <translation id="3984159763196946143">Nevarēja sākt demonstrācijas režīmu</translation>
 <translation id="3984431586879874039">Vai atļaut šai vietnei skatīt jūsu drošības atslēgu?</translation>
@@ -4092,6 +4106,7 @@
 <translation id="4010036441048359843">Ieslēgt atzīmēšanu</translation>
 <translation id="4010746393007464819">Ir pieejams jauninājums uz versiju Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">Lai iegūtu savas grāmatzīmes mobilajā ierīcē, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Varat piespraust šo funkciju, lai ērti tai piekļūtu.</translation>
 <translation id="4014432863917027322">Vai labot “<ph name="EXTENSION_NAME" />”?</translation>
 <translation id="4015163439792426608">Vai izmantojat paplašinājumus? Ērti <ph name="BEGIN_LINK" />pārvaldiet paplašinājumus<ph name="END_LINK" /> vienuviet.</translation>
 <translation id="4016762287427926315">Lietotnei <ph name="APP_NAME" /> piešķirtās atļaujas tiks izmantotas arī šajā lietotnē. <ph name="BEGIN_LINK" />Pārvaldīt<ph name="END_LINK" /></translation>
@@ -4177,6 +4192,7 @@
 <translation id="4078903002989614318">Kārtošanas un saraksta iespējas</translation>
 <translation id="4079140982534148664">Izmantot uzlaboto pareizrakstības pārbaudi</translation>
 <translation id="4082333918978320301">Nevienai vietnei nav atļaujas izmantot jūsu mikrofonu</translation>
+<translation id="4083735423615351075">Cilnes paliks atvērtas šajā ierīcē, taču grupa tiks dzēsta no visām ierīcēm, kurās esat pierakstījies pārlūkā Chrome, izmantojot šo Google kontu.</translation>
 <translation id="4084682180776658562">Grāmatzīme</translation>
 <translation id="4084835346725913160">Aizvērt cilni <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">Valoda JavaScript šajā lapā tika bloķēta.</translation>
@@ -4186,6 +4202,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Rādīt labajā pusē</translation>
+<translation id="4088879333319441249">Vai atcelt grupēšanu ciļņu grupā?</translation>
 <translation id="4089235344645910861">Iestatījumi saglabāti. Sākta sinhronizācija.</translation>
 <translation id="4089817585533500276">Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Iespējot verificētu piekļuvi</translation>
@@ -4395,6 +4412,7 @@
 <translation id="4261429981378979799">Paplašinājumu atļaujas</translation>
 <translation id="4262004481148703251">Noraidīt brīdinājumu</translation>
 <translation id="4263223596040212967">Pārbaudiet tastatūras izkārtojumu un mēģiniet vēlreiz.</translation>
+<translation id="4263470758446311292">Ietaupiet maksimāli daudz vietas atmiņā. Cilnes kļūs neaktīvas pēc īsāka laika perioda.</translation>
 <translation id="4265096510956307240">Apstiprināt identitāti</translation>
 <translation id="4265301768135164545">Varat arī <ph name="BEGIN_LINK" />manuāli iestatīt<ph name="END_LINK" /> eSIM profilu.</translation>
 <translation id="426564820080660648">Lai pārbaudītu, vai ir pieejami atjauninājumi, lūdzu, izmantojiet tīklu Ethernet, Wi-Fi vai mobilos datu savienojumu.</translation>
@@ -4714,6 +4732,7 @@
 <translation id="4503748371388753124">Jūsu datorā ir ietverta uzticamas platformas moduļa (Trusted Platform Module — TPM) drošības ierīce, kas tiek izmantota, lai operētājsistēmā Chrome OS Flex ieviestu daudz svarīgu drošības funkciju. Lai uzzinātu vairāk, apmeklējiet Chromebook palīdzības centru: https://support.google.com/chromebook/?p=tpm.</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Sīkfaili ir atļauti}=1{Sīkfaili ir atļauti (1 izņēmums)}zero{Sīkfaili ir atļauti ({COUNT} izņēmumi)}one{Sīkfaili ir atļauti ({COUNT} izņēmums)}other{Sīkfaili ir atļauti ({COUNT} izņēmumi)}}</translation>
 <translation id="4504940961672722399">Lai lietotu šo paplašinājumu, noklikšķiniet uz šīs ikonas vai nospiediet taustiņu kombināciju <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Lejupielādējiet pārlūku Chrome, izmantojot šo kvadrātkodu, un pierakstieties savā Google kontā.</translation>
 <translation id="450552327874992444">Vārds jau ir pievienots</translation>
 <translation id="4507373251891673233">Jūs esat bloķējis visu paplašinājumu piekļuvi vietnei <ph name="HOST" />.</translation>
 <translation id="4507401683427517298">Noklikšķiniet uz Pievienot saīsni.</translation>
@@ -5049,6 +5068,7 @@
 <translation id="4768332406694066911">Jums ir sertifikāti no šīm organizācijām, kas jūs identificē</translation>
 <translation id="4769632191812288342">Jums ir pieejama standarta aizsardzība.</translation>
 <translation id="4770119228883592393">Pieprasīta atļauja. Lai atbildētu, nospiediet taustiņu ⌘, taustiņu Option un lejupvērsto bultiņu.</translation>
+<translation id="4770755495532014179">Izmantojiet šo paroli savā iPhone tālrunī</translation>
 <translation id="4773112038801431077">Linux jaunināšana</translation>
 <translation id="477548766361111120">Atļaut paplašinājumam lasīt un mainīt šo vietni</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> ir pievienota</translation>
@@ -5218,6 +5238,7 @@
 <translation id="4890399733764921729">Nevar izveidot savienojumu. Bloķējis cits mobilo sakaru operators.</translation>
 <translation id="4890773143211625964">Rādīt printera papildiespējas</translation>
 <translation id="4891089016822695758">Beta versijas forums</translation>
+<translation id="4891795846939730995">Lai atkal piešķirtu šai ierīcei piekļuvi jūsu piekļuves atslēgām, pierakstieties vietnē vai lietotnē ar saglabātu piekļuves atslēgu.</translation>
 <translation id="4892229439761351791">Vietne var izmantot Bluetooth savienojumu</translation>
 <translation id="4892328231620815052">Kad būsiet gatavs, skatiet savu lasīšanas sarakstu sadaļā Grāmatzīmes un saraksti.</translation>
 <translation id="489258173289528622">Darbība neaktivitātes dēļ, izmantojot akumulatoru</translation>
@@ -5663,6 +5684,7 @@
 <translation id="5242724311594467048">Vai iespējot “<ph name="EXTENSION_NAME" />”?</translation>
 <translation id="5243522832766285132">Lūdzu, pēc brīža mēģiniet vēlreiz.</translation>
 <translation id="5244234799035360187">OneDrive saturs tagad tiks rādīts lietotnē Faili</translation>
+<translation id="5244466461749935369">Pagaidām paturēt</translation>
 <translation id="5244474230056479698">Sinhronizēšana ar <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Darba sākšana, izmantojot mācību iestādes kontu</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> ir sabojājies. Noklikšķiniet uz šī balona, lai restartētu šo lietotni.</translation>
@@ -5931,6 +5953,7 @@
 <translation id="5453829744223920473">Bērns var izmantot visas savas mācību iestādes lietotnes, grāmatzīmes un resursus tieši tāpat, kā to var darīt klasē. Mācību iestāde nosaka pamatnoteikumus.</translation>
 <translation id="5454166040603940656">izmantojot <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Citu meklēšanas rezultātu skatīšana</translation>
+<translation id="5457082343331641453">Pievienot meklēšanai</translation>
 <translation id="5457113250005438886">Nav derīgi</translation>
 <translation id="5457459357461771897">Lasīt un dzēst fotoattēlus, mūziku un citu datorā esošu multivides saturu</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6406,6 +6429,7 @@
 <translation id="5816434091619127343">Ja tiktu veiktas pieprasītās printera izmaiņas, printeri nevarētu lietot.</translation>
 <translation id="581659025233126501">Ieslēgt sinhronizāciju</translation>
 <translation id="5817918615728894473">Savienot pārī</translation>
+<translation id="5817963443108180228">Laipni lūdzam atpakaļ, <ph name="PROFILE_NAME" />!</translation>
 <translation id="581911254119283028">visas lietojumprogrammas</translation>
 <translation id="5821565227679781414">Izveidot saīsni</translation>
 <translation id="5824976764713185207">Automātiski lasīt lapu, kad ir pabeigta tās ielāde</translation>
@@ -6445,6 +6469,7 @@
 <translation id="5846504156837627898">Pārvaldīt vietņu atļaujas</translation>
 <translation id="5846749317653566506">Pielāgojiet krāsu korekcijas iestatījumus, lai krāsas būtu atšķiramākas</translation>
 <translation id="5846807460505171493">Atjauninājumu un lietotņu instalēšana. Turpinot jūs piekrītat, ka šī ierīce drīkst arī automātiski lejupielādēt un instalēt atjauninājumus un lietotnes, ko nodrošina Google, jūsu mobilo sakaru operators un ierīces ražotājs. Iespējams, tiks izmantoti mobilie dati. Dažās lietotnēs var tikt piedāvāti pirkumi.</translation>
+<translation id="5848054741303781539">Iestatīts manuāli; netiek izmantota atrašanās vieta</translation>
 <translation id="5848319660029558352">Lasīšana skaļi un teksta formatēšana</translation>
 <translation id="5849212445710944278">Jau pievienots</translation>
 <translation id="584945105664698226">Balss ātrums</translation>
@@ -7004,6 +7029,7 @@
 <translation id="6265159465845424232">Jautāt pirms Microsoft failu kopēšanas vai pārvietošanas uz pakalpojumu Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Noņemt portu</translation>
 <translation id="6266532094411434237">Notiek savienojuma izveide ar ierīci “<ph name="DEVICE" />”…</translation>
+<translation id="6266984048393265562">Pielāgot profilu</translation>
 <translation id="6267166720438879315">Atlasiet sertifikātu, lai autentificētu sevi vietnē <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Atvērt lietotnē <ph name="APP" /></translation>
 <translation id="6270309713620950855">Atgādinājums par izslēgtu skaņu</translation>
@@ -7142,7 +7168,6 @@
 <translation id="6383382161803538830">Lasīšanas režīms šajā lapā nav pieejams.</translation>
 <translation id="638418309848716977">Atbalstītās saites</translation>
 <translation id="6384275966486438344">Mainiet savus meklēšanas iestatījumus uz šiem: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupa bez nosaukuma — 1 cilne}zero{Grupa bez nosaukuma — # ciļņu}one{Grupa bez nosaukuma — # cilne}other{Grupa bez nosaukuma — # cilnes}}</translation>
 <translation id="6385149369087767061">Izveidojiet savienojumu ar internetu un mēģiniet vēlreiz.</translation>
 <translation id="6385382178401976503">Karte: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Brīdinājums — ir iespējota detalizēta reģistrēšana; tālāk norādītajos žurnālos var būt iekļauti vietrāži URL vai cita sensitīva informācija. Lūdzu, pārskatiet to un izlemiet, vai vēlaties iesniegt šo informāciju.</translation>
@@ -7221,6 +7246,7 @@
 <translation id="6445450263907939268">Ja nevēlējāties veikt šīs izmaiņas, varat atjaunot iepriekšējos iestatījumus.</translation>
 <translation id="6446213738085045933">Izveidot darbvirsmas saīsni</translation>
 <translation id="6447842834002726250">Sīkfaili</translation>
+<translation id="6449554712554071184">Tādējādi šī grupa tiks neatgriezeniski dzēsta no jūsu ierīces.</translation>
 <translation id="6450876761651513209">Mainīt konfidencialitātes iestatījumus</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> un vēl 1 cilne}zero{<ph name="PAGE_TITLE" /> un vēl # cilnes}one{<ph name="PAGE_TITLE" /> un vēl # cilne}other{<ph name="PAGE_TITLE" /> un vēl # cilnes}}</translation>
 <translation id="6451689256222386810">Ja esat aizmirsis ieejas frāzi vai vēlaties mainīt šo iestatījumu, <ph name="BEGIN_LINK" />atiestatiet sinhronizāciju<ph name="END_LINK" />.</translation>
@@ -7367,6 +7393,7 @@
 <translation id="6556866813142980365">Atcelt atsaukšanu</translation>
 <translation id="6556903358015358733">Motīvs un fona tapete</translation>
 <translation id="6557290421156335491">Manas saīsnes</translation>
+<translation id="6560061709899140565">Rādīt citas apraides sesijas</translation>
 <translation id="6560151649238390891">Ieteikums ievietots</translation>
 <translation id="6561726789132298588">Ievadīt</translation>
 <translation id="6562117348069327379">Glabājiet sistēmas žurnālus katalogā Lejupielādes.</translation>
@@ -7460,6 +7487,7 @@
 <translation id="6635674640674343739">Nevar izveidot tīkla savienojumu. Pārbaudiet tīkla savienojumu un mēģiniet vēlreiz.</translation>
 <translation id="663569763553406962">Skatiet, kuri paplašinājumi var lasīt vai mainīt vietni</translation>
 <translation id="6635944431854494329">Īpašnieks var pārvaldīt šo funkciju sadaļā Iestatījumi &gt; Papildu &gt; Automātiski sūtīt diagnostikas un lietojuma datus Google serveriem.</translation>
+<translation id="6636572589916466933">Pieņemiet apraides pieprasījumu savā ierīcē (<ph name="DEVICE_NAME" />).</translation>
 <translation id="6636623428211296678">Tālāk izpētīt citus iestatījumus vai beigt tūlīt</translation>
 <translation id="6639554308659482635">SQLite atmiņa</translation>
 <translation id="6640268266988685324">Atvērta cilne</translation>
@@ -7478,6 +7506,7 @@
 <translation id="6648911618876616409">Svarīgs atjauninājums ir pieejams instalēšanai. Pierakstieties, lai sāktu.</translation>
 <translation id="6649018507441623493">Uzgaidiet…</translation>
 <translation id="6650206238642452078">Abonēt ChromeOS sistēmas notikumus</translation>
+<translation id="6650584564768559994">Ietaupiet optimāli daudz vietas atmiņā. Cilnes kļūs neaktīvas pēc optimāla laika perioda.</translation>
 <translation id="665061930738760572">Atvērt &amp;jaunā logā</translation>
 <translation id="6651237644330755633">Uzticēties šim sertifikātam, lai identificētu vietnes</translation>
 <translation id="6651495917527016072">Sinhronizējiet Wi-Fi tīklus ar savu tālruni. <ph name="LINK_BEGIN" />Uzzināt vairāk<ph name="LINK_END" /></translation>
@@ -7735,6 +7764,7 @@
 <translation id="6831043979455480757">Tulkot</translation>
 <translation id="6832218595502288407">Izlīdzināt pa kreisi</translation>
 <translation id="6833479554815567477">Cilne tika noņemta no grupas “<ph name="GROUP_NAME" />” — <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Optimāli (ieteicams)</translation>
 <translation id="6835762382653651563">Lai atjauninātu savu <ph name="DEVICE_TYPE" /> ierīci, lūdzu, izveidojiet savienojumu ar internetu.</translation>
 <translation id="683630338945552556">Izmantot paroles no Google konta un saglabāt paroles kontā</translation>
 <translation id="6839225236531462745">Sertifikāta dzēšanas kļūda</translation>
@@ -8143,6 +8173,7 @@
 <translation id="715396040729904728">palaidēja taustiņš + Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Sniedziet atsauksmes vai aprakstiet problēmu. Ja iespējams, norādiet darbības, ko veicāt, kad radās problēma.</translation>
 <translation id="7154130902455071009">Mainiet savu sākumlapu uz šo: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Iegūstiet labāku videoklipu kvalitāti un paildziniet akumulatora darbības ilgumu. Videoklipi tiks atskaņoti tikai Cast iespējotā ekrānā.</translation>
 <translation id="7159953856712257647">Instalēts pēc noklusējuma</translation>
 <translation id="7160182524506337403">Tagad varat skatīt tālruņa paziņojumus.</translation>
 <translation id="7165263843655074092">Jūs saņemat standarta drošības aizsardzību šajā ierīcē.</translation>
@@ -9000,6 +9031,7 @@
 <translation id="7788948939674438635">Neļaut vietnēm bloķēt tastatūru</translation>
 <translation id="7789963078219276159">Sākumlapas fons tika nomainīts uz <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">Optiskā rakstzīmju atpazīšana PDF failos</translation>
+<translation id="7790737481627460475">Faili šajā Chromebook datorā</translation>
 <translation id="7791269138074599214">Ievades metode</translation>
 <translation id="7791429245559955092">Šī lietojumprogramma tiks instalēta jūsu pašlaik izmantotajā Chrome profilā.</translation>
 <translation id="7791436592012979144">Ritināšana pretējā virzienā ir iespējota</translation>
@@ -9029,6 +9061,7 @@
 <translation id="7810202088502699111">Uznirstošie logi šajā lapā tika bloķēti.</translation>
 <translation id="7810367892333449285">Ierakstam ir jābūt šādā formātā: <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ adrese<ph name="LPA_2" />$<ph name="LPA_3" />neobligāts atbilstības ID<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Mēģiniet vēlreiz vai atlasiet kādu no tālāk norādītajiem iepriekš ģenerētajiem motīviem.</translation>
+<translation id="7814090115158024843">Rakstīšanas palīdzība nekad netiks piedāvāta tālāk norādītajās vietnēs</translation>
 <translation id="7814458197256864873">Ko&amp;pēt</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Rediģēt paplašinājuma <ph name="EXTENSION_NAME" /> saīsni <ph name="SHORTCUT" /></translation>
@@ -9260,8 +9293,10 @@
 <translation id="7974936243149753750">Attēla izvērse</translation>
 <translation id="7975504106303186033">Šī Chrome Education ierīce ir jāreģistrē mācību iestādes kontā. Lai reģistrētu jaunu kontu, lūdzu, apmeklējiet vietni g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Tiek rādīts brīdinājums, ja izmantojat paroli, kas ir uzlauzta datu aizsardzības pārkāpuma dēļ.</translation>
+<translation id="797824194429476746">Cilnes paliks atvērtas šajā ierīcē, taču grupa tiks neatgriezeniski dzēsta.</translation>
 <translation id="7978412674231730200">Privātā atslēga</translation>
 <translation id="7978450511781612192">Tādējādi tiksiet izrakstīsiet no sava Google konta. Jūsu grāmatzīmes, vēsture, paroles, kā arī cita informācija vairs netiks sinhronizēta.</translation>
+<translation id="7980066177668669492">Base64 kodēts ASCII, vairāki sertifikāti</translation>
 <translation id="7980084013673500153">Līdzekļa ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Saglabātas piekļuves atslēgas izmantošana vietnei <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Rādīt ierīces EID un kvadrātkoda uznirstošo elementu</translation>
@@ -9385,6 +9420,7 @@
 <translation id="8066444921260601116">Savienojuma dialoglodziņš</translation>
 <translation id="8070572887926783747">Lietotnes <ph name="APP_NAME" /> atrašanās vietas atļauja</translation>
 <translation id="8070662218171013510">Vibrācija</translation>
+<translation id="8071033114691184017">Izmantojiet šo paroli savā iPhone tālrunī</translation>
 <translation id="8071432093239591881">Drukāt kā attēlu</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Lietotņu dati var būt jebkādi lietotņu saglabātie dati (atkarībā no izstrādātāja iestatījumiem), tostarp tādi dati kā kontaktpersonas, ziņojumi un fotoattēli.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Dublētie dati netiek ieskaitīti jūsu bērna Diska krātuves kvotā.<ph name="END_PARAGRAPH2" />
@@ -9673,6 +9709,7 @@
 <translation id="8276242035951017580">Nevienai lietotnei nav atļaujas izmantot kameru</translation>
 <translation id="8276560076771292512">Iztīrīt kešatmiņu un veikt stingro atkārtoto ielādi</translation>
 <translation id="8276850948802942358">Uzzināt vairāk par to, kā piešķirt vietnei pagaidu atļauju izmantot trešo pušu sīkfailus</translation>
+<translation id="8277907305629781277">Šo piekļuves atslēgu izveidojāt šādā datumā: <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Vietnes jūsu valodās</translation>
 <translation id="828180235270931531">Citi pieejamie printeri</translation>
 <translation id="8281886186245836920">Izlaist</translation>
@@ -9952,6 +9989,7 @@
 <translation id="8482077254400484047">Šeit varat pārvaldīt neaktīvo ciļņu izskatu.</translation>
 <translation id="8483248364096924578">IP adrese</translation>
 <translation id="8486666913807228950">Iemesls: sarakstā “Piespiedu atvēršanas pārlūks” tika konstatēta inversā kārtula “<ph name="REVERT_RULE" />”.</translation>
+<translation id="8487303289354211861">Piesprausts! Varat atkal piekļūt šai funkcijai, izmantojot jauno rīkjoslas pogu.</translation>
 <translation id="8487678622945914333">Tuvināt</translation>
 <translation id="8487699605742506766">Tīklājs</translation>
 <translation id="8489156414266187072">Personiski ieteikumi tiek rādīti tikai jūsu kontā</translation>
@@ -10352,7 +10390,6 @@
 <translation id="8784626084144195648">Apkopotais vidējais</translation>
 <translation id="8785622406424941542">Skārienekrāna pildspalva</translation>
 <translation id="8786824282808281903">Kad bērns redzēs šo ikonu, viņš varēs izmantot pirksta nospiedumu identifikācijai vai pirkumu apstiprināšanai.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupa bez nosaukuma — 1 cilne}zero{Grupa bez nosaukuma — # ciļņu}one{Grupa bez nosaukuma — # cilne}other{Grupa bez nosaukuma — # cilnes}}</translation>
 <translation id="8787752878731558379">Palīdziet mums uzlabot pārlūku Chrome, pastāstot, kāpēc atļāvāt trešo pušu sīkfailus.</translation>
 <translation id="8789898473175677810">Chrome <ph name="LINK_BEGIN" />sadarbojas ar citiem<ph name="LINK_END" />, lai samazinātu starpvietņu izsekošanu un pakāpeniski pārtrauktu trešo pušu sīkfailu izmantošanu. Taču mēs cenšamies to darīt atbildīgi, jo daudzas vietnes paļaujas uz trešo pušu sīkfailiem, lai nodrošinātu savu darbību. Piemēram, daudzās vietnēs tiek izmantoti trešo pušu sīkfaili, lai vienkāršotu pierakstīšanos, atbalstītu iegultas tērzēšanas un komentēšanas sistēmas, kā arī maksājumu pakalpojumus. Turklāt reklāmdevēji bieži vien izmanto trešo pušu sīkfailus, lai labāk personalizētu reklāmas. Tas ir svarīgi, jo vietnēs bieži vien tiek izmantotas reklāmas, lai varētu apmaksāt izdevumus un nodrošināt tiešsaistes satura pieejamību bez maksas.</translation>
 <translation id="8791157330927639737">Uzzināt vairāk par atjaunināšanu</translation>
@@ -10587,6 +10624,7 @@
 <translation id="8962863356073277855">URL formātam jābūt šādam: https://www.example.com.</translation>
 <translation id="8962918469425892674">Šajā vietnē tiek izmantoti kustību vai gaismas sensori.</translation>
 <translation id="8963117664422609631">Pāriet uz vietnes iestatījumiem</translation>
+<translation id="8964795217937248330">Vai aizvērt cilni(-es) un dzēst grupu?</translation>
 <translation id="8965037249707889821">Ievadiet veco paroli</translation>
 <translation id="8966809848145604011">Citi profili</translation>
 <translation id="8967427617812342790">Pievienot sarakstam</translation>
@@ -10666,6 +10704,7 @@
 <translation id="9014674417732091912">Pārvietota uz <ph name="ROW_NUMBER" />. rindu</translation>
 <translation id="901668144954885282">Dublēšana Google diskā</translation>
 <translation id="9016827136585652292">konfidencialitātes ekrāna slēdzis</translation>
+<translation id="9017055559700464094">Piesprausts! Varat atkal piekļūt šai funkcijai, izmantojot rīkjoslu.</translation>
 <translation id="90181708067259747">Derīguma termiņš: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Instalēšana pabeigta</translation>
 <translation id="901876615920222131">Lai atkārtoti atvērtu grupu, noklikšķiniet uz grupas nosaukuma.</translation>
@@ -10824,6 +10863,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Lai operētājsistēma darbotos optimāli, instalējiet <ph name="DEVICE_OS" /> iekšējā diskā. Varat arī instalēt to vēlāk no pieteikšanās ekrāna.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Ja neesat gatavs instalēt šo operētājsistēmu, bet vēlaties to izmēģināt, varat to palaist no USB diska. Tādējādi tiks saglabāta jūsu esošā operētājsistēma un dati, taču var tikt ierobežota veiktspēja un vieta krātuvē.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Atvērt kā piespraustu cilni</translation>
+<translation id="9122788874051694311">Vai saglabāt šo piekļuves atslēgu ārpus inkognito režīma?</translation>
 <translation id="9123287046453017203">Jūsu ierīce nav atjaunināta</translation>
 <translation id="9125910124977405374">Noņemt valodu “<ph name="LANGUAGE_NAME" />” no automātiski tulkotajām valodām</translation>
 <translation id="9126149354162942022">Kursora krāsa</translation>
@@ -11018,6 +11058,7 @@
 <translation id="979345485590886759">Atļaut vietnēm pieprasīt atļauju bloķēt peles rādītāju</translation>
 <translation id="980731642137034229">Darbību izvēlnes poga</translation>
 <translation id="981121421437150478">Bezsaistē</translation>
+<translation id="98235653036850093">Labdien, <ph name="PROFILE_NAME" />!</translation>
 <translation id="983192555821071799">Aizvērt visas cilnes</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> — iespējota ierakstīšana, izmantojot kameru un mikrofonu</translation>
 <translation id="984275831282074731">Maksājumu veidi</translation>
diff --git a/chrome/app/resources/generated_resources_mk.xtb b/chrome/app/resources/generated_resources_mk.xtb
index db5a1693..0786d84 100644
--- a/chrome/app/resources/generated_resources_mk.xtb
+++ b/chrome/app/resources/generated_resources_mk.xtb
@@ -1669,6 +1669,7 @@
 <translation id="2211043920024403606">Податоци за профилот</translation>
 <translation id="2211245494465528624">Управувајте со опциите за синхронизација</translation>
 <translation id="221297410904507041">Избришете ги историјата, колачињата, кешот и друго</translation>
+<translation id="2213410656650624348">Умерено</translation>
 <translation id="2214018885812055163">Споделени папки</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 ред не е прикажан&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> ред не е прикажан&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> реда не се прикажани&gt;}}</translation>
 <translation id="2215070081105889450">За да се сподели аудио, споделете картичка или екран</translation>
@@ -2051,6 +2052,7 @@
 <translation id="2473195200299095979">Преведи ја страницата</translation>
 <translation id="2475982808118771221">Настана грешка</translation>
 <translation id="247616523300581745">Скриј ги датотекиве</translation>
+<translation id="2476435723907345463">Пристапот до криптографските клучеви е отстранет</translation>
 <translation id="2476901513051581836">Не може да се подзачисти просторот сѐ додека не се знае колку простор има офлајн.</translation>
 <translation id="2476974672882258506">Исклучете го Windows за да се деинсталира <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">Автоматското скенирање е исклучено бидејќи доделивте повеќе прекинувачи.</translation>
@@ -2245,6 +2247,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> не може да се преземе безбедно.</translation>
 <translation id="2620245777360407679">Уреди тековно поврзани со точка на пристап</translation>
 <translation id="2620436844016719705">Систем</translation>
+<translation id="262087792756666314">Може да ја закачите функцијава за лесен пристап. Само кликнете го копчето „Закачи“ најгоре на страничната табла.</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Вежбајте го гласовниот модел на „Помошникот на Google“</translation>
 <translation id="26224892172169984">Не дозволувај која било страница да управува со протоколи</translation>
@@ -3020,6 +3023,7 @@
 <translation id="3222066309010235055">Претприкажувач: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Поврзете се со <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Пребарајте што било на страницава со Google Lens</translation>
+<translation id="3223109931751684474">Отстранете го пристапот до вашите криптографски клучеви на уредов</translation>
 <translation id="3223531857777746191">Копче за ресетирање</translation>
 <translation id="3225084153129302039">Стандарден виолетов аватар</translation>
 <translation id="3225319735946384299">Потпишување шифра</translation>
@@ -3344,6 +3348,7 @@
 <translation id="3473479545200714844">Лупа за екран</translation>
 <translation id="3474218480460386727">Користете до 99 букви за новите зборови</translation>
 <translation id="3474624961160222204">Продолжете како <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Умерена заштеда на меморија. Вашите картички стануваат неактивни по подолг временски период.</translation>
 <translation id="347785443197175480">Продолжи дозволувајќи <ph name="HOST" /> да пристапи до вашата камера и микрофон</translation>
 <translation id="3479357084663933762">Девтераномалија</translation>
 <translation id="3479552764303398839">Не сега</translation>
@@ -4067,7 +4072,6 @@
 <translation id="3983586614702900908">уреди од непознат продавач</translation>
 <translation id="3983764759749072418">Апликации од Play Store имаат пристап до уредов</translation>
 <translation id="3983769721878416534">Одложување пред кликнување</translation>
-<translation id="3983793589497399077">Кликнете или повлечете каде било за да пребарувате со Lens</translation>
 <translation id="3984135167056005094">Не внесувајте адреса на е-пошта</translation>
 <translation id="3984159763196946143">Не може да се стартува демо-режимот</translation>
 <translation id="3984431586879874039">Дали дозволувате сајтов да го види вашиот безбедносен клуч?</translation>
@@ -4104,6 +4108,7 @@
 <translation id="4010036441048359843">Вклучете нагласување</translation>
 <translation id="4010746393007464819">Достапна е надградба на Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">За да ги добиете обележувачите на мобилниот уред, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">За лесен пристап, може да ја закачите функцијава</translation>
 <translation id="4014432863917027322">Поправи „<ph name="EXTENSION_NAME" />“?</translation>
 <translation id="4015163439792426608">Имате ли екстензии? <ph name="BEGIN_LINK" />Управувајте со екстензиите<ph name="END_LINK" /> на едно место.</translation>
 <translation id="4016762287427926315">Дозволите за <ph name="APP_NAME" /> ќе важат и за оваа апликација. <ph name="BEGIN_LINK" />Управувајте<ph name="END_LINK" /></translation>
@@ -4407,6 +4412,7 @@
 <translation id="4261429981378979799">Дозволи за екстензии</translation>
 <translation id="4262004481148703251">Отфрли предупредување</translation>
 <translation id="4263223596040212967">Проверете го распоредот на тастатурата и обидете се повторно.</translation>
+<translation id="4263470758446311292">Максимална заштеда на меморија. Вашите картички стануваат неактивни по пократок временски период.</translation>
 <translation id="4265096510956307240">Потврдете дека сте вие</translation>
 <translation id="4265301768135164545">Може и да поставите профил на eSIM <ph name="BEGIN_LINK" />рачно<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">За да се проверат ажурирања, користете етернет, Wi-Fi или мобилен интернет.</translation>
@@ -4726,6 +4732,7 @@
 <translation id="4503748371388753124">Вашиот компјутер содржи безбедносен уред Trusted Platform Module (TPM) кој се користи за имплементирање на многу критични безбедносни функции во ChromeOS Flex. Посетете го Центарот за помош на Chromebook за да дознаете повеќе: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Колачињата се дозволени}=1{Колачињата се дозволени, 1 исклучок}one{Колачињата се дозволени, {COUNT} исклучок}other{Колачињата се дозволени, {COUNT} исклучоци}}</translation>
 <translation id="4504940961672722399">Користете ја наставката со кликнување на иконата или со притискање на <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Преземете го Chrome со овој QR-код и најавете се на вашата сметка на Google.</translation>
 <translation id="450552327874992444">Зборот веќе е додаден</translation>
 <translation id="4507373251891673233">Ги блокиравте сите екстензии од <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Кликнете „Додај кратенка“</translation>
@@ -5061,6 +5068,7 @@
 <translation id="4768332406694066911">Имате сертификати од овие организации што ве идентификуваат</translation>
 <translation id="4769632191812288342">Ќе добиете стандардна заштита</translation>
 <translation id="4770119228883592393">Побарана е дозвола. Притиснете ⌘ + „Опција“ + „Стрелка надолу“ за да одговорите</translation>
+<translation id="4770755495532014179">Користете ја лозинкава на вашиот iPhone</translation>
 <translation id="4773112038801431077">Надградете го Linux</translation>
 <translation id="477548766361111120">Дозволи екстензијата да го чита и променува сајтов</translation>
 <translation id="4776311127346151860">Апликацијата <ph name="DEVICE_NAME" /> е поврзана</translation>
@@ -5230,6 +5238,7 @@
 <translation id="4890399733764921729">Не може да се поврзе. Заклучено од друг мобилен оператор.</translation>
 <translation id="4890773143211625964">Покажи ги напредните опции за печатач</translation>
 <translation id="4891089016822695758">Форум за Beta Chrome</translation>
+<translation id="4891795846939730995">За да му доделите пристап на уредов до вашите криптографски клучеви повторно, најавете се на сајт или апликација со зачуван криптографски клуч</translation>
 <translation id="4892229439761351791">Сајтот може да користи Bluetooth</translation>
 <translation id="4892328231620815052">Кога ќе бидете подготвени, најдете го вашиот список за читање во „Обележувачи“ и „Списоци“</translation>
 <translation id="489258173289528622">Дејство при неактивност додека се користи батерија</translation>
@@ -6459,6 +6468,7 @@
 <translation id="5846504156837627898">Управувајте со дозволите за сајтот</translation>
 <translation id="5846749317653566506">Приспособете ги поставките за корекција на боите за да се уверите дека боите се јасни</translation>
 <translation id="5846807460505171493">Инсталирање ажурирања и апликации. Ако продолжите, се согласувате дека уредов може и автоматски да презема и инсталира ажурирања и апликации од Google, од вашиот оператор и производителот на уредот, веројатно преку мобилен интернет. Некои од овие апликации може да нудат купувања во апликации.</translation>
+<translation id="5848054741303781539">Поставено рачно, без користење локација</translation>
 <translation id="5848319660029558352">Читање наглас и форматирање текст</translation>
 <translation id="5849212445710944278">Додаден претходно</translation>
 <translation id="584945105664698226">Брзина на говор</translation>
@@ -7157,7 +7167,6 @@
 <translation id="6383382161803538830">„Режим на читање“ не е достапен на страницава</translation>
 <translation id="638418309848716977">Поддржани линкови</translation>
 <translation id="6384275966486438344">Променете ги поставките за пребарување на: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Неименувана група - 1 картичка}one{Неименувана група - # картичка}other{Неименувана група - # картички}}</translation>
 <translation id="6385149369087767061">Поврзете се на интернет и обидете се повторно</translation>
 <translation id="6385382178401976503">Картичка: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Опомена - Овозможена е детална евиденција, евиденцијата подолу може да содржи URL-адреси или други чувствителни податоци. Прегледајте ги и уверете се дека сакате да ги испратите овие податоци.</translation>
@@ -7491,6 +7500,7 @@
 <translation id="6648911618876616409">Важно ажурирање е подготвено да се инсталира. Најавете се за да започнете.</translation>
 <translation id="6649018507441623493">Само момент…</translation>
 <translation id="6650206238642452078">Претплатете се на системските настани на ChromeOS</translation>
+<translation id="6650584564768559994">Урамнотежена заштеда на меморија. Вашите картички стануваат неактивни по оптимален временски период.</translation>
 <translation id="665061930738760572">Отвори во &amp;нов прозорец</translation>
 <translation id="6651237644330755633">Имајте доверба во сертификатов за идентификување на веб-сајтовите</translation>
 <translation id="6651495917527016072">Синхронизирајте ги Wi-Fi мрежите со телефонот. <ph name="LINK_BEGIN" />Дознајте повеќе<ph name="LINK_END" /></translation>
@@ -7748,6 +7758,7 @@
 <translation id="6831043979455480757">Преведи</translation>
 <translation id="6832218595502288407">Порамни одлево</translation>
 <translation id="6833479554815567477">Картичката е отстранета од групата <ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Урамнотежено (препорачано)</translation>
 <translation id="6835762382653651563">Поврзете се на интернет за да го ажурирате <ph name="DEVICE_TYPE" />.</translation>
 <translation id="683630338945552556">Користете и зачувувајте лозинки во вашата сметка на Google</translation>
 <translation id="6839225236531462745">Грешка при бришење сертификат</translation>
@@ -9397,6 +9408,7 @@
 <translation id="8066444921260601116">Прозорец за врската</translation>
 <translation id="8070572887926783747">Дозвола за локација за <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Повратни информации со допир</translation>
+<translation id="8071033114691184017">Користете ја лозинкава на вашиот iPhone</translation>
 <translation id="8071432093239591881">Отпечати како слика</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Податоците за апликации може да се секакви податоци што ги зачувала одредена апликација (според поставките на програмерот), вклучувајќи податоци како што се контактите, пораките и фотографиите.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Податоците од бекапот не се земаат предвид во квотата за складирање во Drive на вашето дете.<ph name="END_PARAGRAPH2" />
@@ -9967,6 +9979,7 @@
 <translation id="8482077254400484047">Управувајте со изгледот на неактивните картички тука</translation>
 <translation id="8483248364096924578">IP-адреса</translation>
 <translation id="8486666913807228950">Причина: обратното правило <ph name="REVERT_RULE" /> беше најдено во списокот „Отвори присилно во“.</translation>
+<translation id="8487303289354211861">Закачено! Може да пристапите до функцијава повторно од новото копче на алатникот</translation>
 <translation id="8487678622945914333">Зумирај</translation>
 <translation id="8487699605742506766">Точка на пристап</translation>
 <translation id="8489156414266187072">Личните предлози се прикажуваат само на вашата сметка</translation>
@@ -10366,7 +10379,6 @@
 <translation id="8784626084144195648">Биниран просек</translation>
 <translation id="8785622406424941542">Пенкало</translation>
 <translation id="8786824282808281903">Кога детето ќе ја види иконава, отпечаток може да се користи за идентификација или за одобрување купувања.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Неименувана група - 1 картичка}one{Неименувана група - # картичка}other{Неименувана група - # картички}}</translation>
 <translation id="8787752878731558379">Помогнете ни да го подобриме Chrome така што ќе ни кажете зошто дозволивте колачиња од трети страни</translation>
 <translation id="8789898473175677810">Chrome е дел од <ph name="LINK_BEGIN" />заедничките напори<ph name="LINK_END" /> за намалување на следењето меѓу сајтовите и постепеното исфрлање од употреба на колачињата од трети страни. Меѓутоа, се обидуваме да го направиме тоа одговорно бидејќи многу сајтови се потпираат на колачиња од трети страни за да функционираат според очекувањата. На пример, многу сајтови користат колачиња од трети страни за да го поедностават најавувањето, да ги поддржат системите за вграден разговор и коментари, како и за платежни услуги. И огласувачите често користат колачиња од трети страни за подобро персонализирање на рекламите. Тоа е важно бидејќи сајтовите често зависат од рекламите за да си ги платат трошоците и нивните онлајн содржини и понатаму да останат бесплатни.</translation>
 <translation id="8791157330927639737">Дознајте повеќе за ажурирање</translation>
@@ -10680,6 +10692,7 @@
 <translation id="9014674417732091912">Преместено во ред <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Направете бекап на Google Drive</translation>
 <translation id="9016827136585652292">вклучување/исклучување „заштита на приватноста“</translation>
+<translation id="9017055559700464094">Закачено! Користете ја функцијава повторно од алатникот</translation>
 <translation id="90181708067259747">Датум на истекување: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Инсталирањето заврши</translation>
 <translation id="901876615920222131">За да ја отворите групата повторно, кликнете на групата</translation>
@@ -10838,6 +10851,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />За најдобро доживување, инсталирајте <ph name="DEVICE_OS" /> на вашиот внатрешен диск. Може да го инсталирате и подоцна од екранот за најавување.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Ако не сте подготвени за инсталирање, може да го извршите од USB за да го испробате. Така ќе се задржи постојниот OS и податоците, но можеби ќе забележите ограничувања во капацитетот и изведбата.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Отвори како прикачена картичка</translation>
+<translation id="9122788874051694311">Да се зачува овој криптографски клуч надвор од „Инкогнито“?</translation>
 <translation id="9123287046453017203">Вашиот уред не е ажуриран</translation>
 <translation id="9125910124977405374">Отстранете го <ph name="LANGUAGE_NAME" /> од јазиците што автоматски се преведуваат</translation>
 <translation id="9126149354162942022">Боја на курсор</translation>
diff --git a/chrome/app/resources/generated_resources_ml.xtb b/chrome/app/resources/generated_resources_ml.xtb
index 48b2272..4d1c70b 100644
--- a/chrome/app/resources/generated_resources_ml.xtb
+++ b/chrome/app/resources/generated_resources_ml.xtb
@@ -4064,7 +4064,6 @@
 <translation id="3983586614702900908">അജ്ഞാത വെണ്ടറിൽ നിന്നുള്ള ഉപകരണങ്ങൾ</translation>
 <translation id="3983764759749072418">ഈ ഉപകരണത്തിലേക്ക് Play Store ആപ്പുകൾക്ക് ആക്‌സസുണ്ട്.</translation>
 <translation id="3983769721878416534">ക്ലിക്കിന് മുമ്പുള്ള കാലതാമസം</translation>
-<translation id="3983793589497399077">Lens ഉപയോഗിച്ച് തിരയാൻ, ക്ലിക്ക് ചെയ്യുകയോ വലിച്ചിടുകയോ ചെയ്യുക</translation>
 <translation id="3984135167056005094">ഇമെയിൽ വിലാസം ഉൾപ്പെടുത്തരുത്</translation>
 <translation id="3984159763196946143">ഡെമോ മോഡ് ആരംഭിക്കാനായില്ല</translation>
 <translation id="3984431586879874039">നിങ്ങളുടെ സുരക്ഷാ കീ കാണാൻ ഈ സൈറ്റിനെ അനുവദിക്കണോ?</translation>
@@ -7167,7 +7166,6 @@
 <translation id="6383382161803538830">ഈ പേജിൽ റീഡിംഗ് മോഡ് ലഭ്യമല്ല</translation>
 <translation id="638418309848716977">പിന്തുണാ ലിങ്കുകൾ</translation>
 <translation id="6384275966486438344">നിങ്ങളുടെ തിരയൽ ക്രമീകരണങ്ങൾ മാറ്റുക: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{പേരില്ലാത്ത ഗ്രൂപ്പ് - 1 ടാബ്}other{പേരില്ലാത്ത ഗ്രൂപ്പ് - # ടാബുകൾ}}</translation>
 <translation id="6385149369087767061">ഇന്റർനെറ്റിലേക്ക് കണക്‌റ്റ് ചെയ്‌ത് വീണ്ടും ശ്രമിക്കുക</translation>
 <translation id="6385382178401976503">കാർഡ്: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">മുന്നറിയിപ്പ് - വിശദമായ ലോഗിംഗ് പ്രവർത്തനക്ഷമമാക്കി; ചുവടെയുള്ള ലോഗുകളിൽ URL-കൾ അല്ലെങ്കിൽ മറ്റ് രഹസ്യസ്വഭാവമുള്ള വിവരങ്ങൾ ഉൾപ്പെട്ടിരിക്കാം. ഈ വിവരം സമർപ്പിക്കുന്നതിൽ നിങ്ങൾക്ക് ബുദ്ധിമുട്ടൊന്നുമില്ലെന്ന് അവലോകനം ചെയ്‌ത് ഉറപ്പാക്കുക.</translation>
@@ -10383,7 +10381,6 @@
 <translation id="8784626084144195648">ബിൻ ചെയ്ത ശരാശരി</translation>
 <translation id="8785622406424941542">സ്‌റ്റൈലസ്</translation>
 <translation id="8786824282808281903">നിങ്ങളുടെ കുട്ടി ഈ ഐക്കൺ കാണുമ്പോൾ, തിരിച്ചറിയലിനോ വാങ്ങലുകൾക്ക് അനുമതി നൽകാനോ ഒരു ഫിംഗർപ്രിന്റ് ഉപയോഗിക്കാം.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{പേരില്ലാത്ത ഗ്രൂപ്പ് - 1 ടാബ്}other{പേരില്ലാത്ത ഗ്രൂപ്പ് - # ടാബുകൾ}}</translation>
 <translation id="8787752878731558379">എന്തുകൊണ്ടാണ് നിങ്ങൾ മൂന്നാം-കക്ഷി കുക്കികൾ അനുവദിച്ചതെന്ന് ഞങ്ങളോട് പറഞ്ഞുകൊണ്ട് Chrome മെച്ചപ്പെടുത്താൻ ഞങ്ങളെ സഹായിക്കൂ</translation>
 <translation id="8789898473175677810">ക്രോസ് സൈറ്റ് ട്രാക്കിംഗ് കുറയ്ക്കുന്നതിനും മൂന്നാം കക്ഷി കുക്കികളുടെ ഉപയോഗം ഘട്ടം ഘട്ടമായി അവസാനിപ്പിക്കുന്നതിനുമുള്ള <ph name="LINK_BEGIN" />കൊളാബറേറ്റീവ് ശ്രമത്തിന്റെ<ph name="LINK_END" /> ഭാഗമാണ് Chrome. എന്നാൽ അത് ഉത്തരവാദിത്തത്തോടെ ചെയ്യാനാണ് ഞങ്ങൾ ശ്രമിക്കുന്നത്, കാരണം പല സൈറ്റുകളും അവ ഡിസൈൻ ചെയ്തിരിക്കുന്നത് പോലെ പ്രവർത്തിക്കാൻ മൂന്നാം കക്ഷി കുക്കികളെ ആശ്രയിക്കുന്നു. ഉദാഹരണത്തിന്, സൈൻ ഇൻ ചെയ്യുന്നത് എളുപ്പമാക്കുന്നതിനും ഉൾച്ചേർത്തിരിക്കുന്ന ചാറ്റ്, കമന്റ് സിസ്റ്റങ്ങളെ പിന്തുണയ്ക്കുന്നതിനും പേയ്‌മെന്റ് സേവനങ്ങൾക്കും പല സൈറ്റുകളും മൂന്നാം കക്ഷി കുക്കികൾ ഉപയോഗിക്കുന്നു. കൂടാതെ, പരസ്യങ്ങൾ മികച്ച രീതിയിൽ വ്യക്തിപരമാക്കാൻ പരസ്യദാതാക്കൾ പലപ്പോഴും മൂന്നാം കക്ഷി കുക്കികൾ ഉപയോഗിക്കുന്നു. ചെലവുകൾ നൽകാനും അവയുടെ ഓൺലൈൻ ഉള്ളടക്കം നിരക്കില്ലാതെ ലഭിക്കുന്നതായി നിലനിർത്താനും സഹായിക്കുന്നതിന് സൈറ്റുകൾ പലപ്പോഴും പരസ്യങ്ങളെ ആശ്രയിക്കുന്നു എന്നതിനാൽ അത് പ്രധാനപ്പെട്ടതാണ്.</translation>
 <translation id="8791157330927639737">അപ്‌ഡേറ്റ് ചെയ്യുന്നതിനെ കുറിച്ച് കൂടുതലറിയുക</translation>
diff --git a/chrome/app/resources/generated_resources_mn.xtb b/chrome/app/resources/generated_resources_mn.xtb
index fa20f60..38ab61b 100644
--- a/chrome/app/resources/generated_resources_mn.xtb
+++ b/chrome/app/resources/generated_resources_mn.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux-д хангалттай дискийн зай байхгүй байж магадгүй. Та Linux-н дискийн зайгаа нэмэгдүүлэх болон <ph name="LINK_START" />Тохиргоо<ph name="LINK_END" /> хэсэгт сэргээхээр дахин оролдох боломжтой.</translation>
 <translation id="1261380933454402672">Бага</translation>
 <translation id="126156426083987769">Демо горимтой төхөөрөмжийн лицензэд асуудал гарлаа.</translation>
+<translation id="1261885284931493480">Табыг/табуудыг хасаж, бүлгийг устгах уу?</translation>
 <translation id="1263231323834454256">Унших жагсаалт</translation>
 <translation id="1263733306853729545">Боломжит хувилбарын жагсаалтыг гүйлгэж үзэхийн тулд <ph name="MINUS" /> болон <ph name="EQUAL" /> товчнуудыг ашиглах</translation>
 <translation id="126387934568812801">Энэ дэлгэцийн агшин болон нээлттэй табуудын гарчгийг оруулах</translation>
@@ -873,6 +874,7 @@
 <translation id="1634224622052500893">Wi-Fi сүлжээ олдлоо</translation>
 <translation id="1634783886312010422">Та энэ нууц үгийг <ph name="WEBSITE" /> дээр аль хэдийн өөрчилсөн үү?</translation>
 <translation id="1636212173818785548">ОК</translation>
+<translation id="1636542522761359943">Тавтай морилно уу, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Аппын өгөгдөл нь харилцагчид, мессеж болон зураг зэрэг аппын хадгалсан аливаа өгөгдөл (хөгжүүлэгчийн тохиргоонд тулгуурлан) байж болно. Нөөцөлсөн өгөгдлийг таны Драйвын хадгалах сангийн квотод тооцохгүй.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Та энэ үйлчилгээг Тохиргоонд унтраах боломжтой.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Энэ хавчуургыг iPhone-доо авах</translation>
@@ -909,6 +911,7 @@
 <translation id="1652862280638399816">Нууц үгний менежерийг macOS Keychain-тэй ашиглахын тулд Chromium-г дахин ачаалж, Keychain-н хандалтыг зөвшөөрнө үү. Дахин ачаалсны дараа таны табуудыг дахин нээнэ.</translation>
 <translation id="1653958716132599769">Холбоотой табуудыг бүлэглэх</translation>
 <translation id="1654580009054503925">Хүсэлтүүдийг харуулахыг зөвшөөрөөгүй</translation>
+<translation id="1654713139320245449">Дамжуулах хаяг олдсонгүй. Тусламж хэрэгтэй юу?</translation>
 <translation id="1656528038316521561">Арын дэвсгэрийн тод байдал</translation>
 <translation id="1657406563541664238"><ph name="PRODUCT_NAME" />-г сайжруулахад дэмжлэг үзүүлэх зорилгоор хэрэглээний статистик болон гэмтлийн тайланг автоматаар Google-д илгээх</translation>
 <translation id="1657937299377480641">Боловсролын нөөцөд хандахаар дахин нэвтрэхийн тулд эцэг эхээсээ танд зөвшөөрөл өгөхийг хүснэ үү</translation>
@@ -1637,12 +1640,14 @@
 <translation id="2187895286714876935">Серверийн Гэрчилгээг Импортлох үеийн алдаа</translation>
 <translation id="2187906491731510095">Өргөтгөлийг шинэчилсэн</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" />-г нээх</translation>
+<translation id="2188919919468240749">Табын бүлгийг устгах уу?</translation>
 <translation id="2190069059097339078">WiFi үнэмлэх авагч</translation>
 <translation id="219008588003277019">Байнгын Үйлчлүүлэгчийн модуль: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(Хоосон)</translation>
 <translation id="2190967441465539539">Камер болон микрофонд хандах боломжгүй</translation>
 <translation id="2191754378957563929">Асаалттай</translation>
 <translation id="2192505247865591433">Хэнээс:</translation>
+<translation id="219283042927675668">Бүлэг дэх табууд</translation>
 <translation id="2193365732679659387">Итгэмжлэх тохиргоо</translation>
 <translation id="2194856509914051091">Анхаарч үзэх зүйлс</translation>
 <translation id="2195331105963583686">Та энэ <ph name="DEVICE_TYPE" />-г ийм хугацааны дараа ашиглах боломжтой хэвээр байх боловч энэ нь программ хангамж болон аюулгүй байдлын автомат шинэчлэлтийг авах боломжгүй байна.</translation>
@@ -1664,6 +1669,7 @@
 <translation id="2211043920024403606">Профайлын мэдээлэл</translation>
 <translation id="2211245494465528624">Синк хийх сонголтыг удирдах</translation>
 <translation id="221297410904507041">Түүх, күүки, завсрын санах ой ба бусдыг устгах</translation>
+<translation id="2213410656650624348">Дунд зэргийн</translation>
 <translation id="2214018885812055163">Хуваалцсан фолдер</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 мөрийг харуулаагүй&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> мөрийг харуулаагүй&gt;}}</translation>
 <translation id="2215070081105889450">Аудио хуваалцахын тулд оронд нь таб эсвэл дэлгэц хуваалцана уу</translation>
@@ -1865,6 +1871,7 @@
 <translation id="2350133097354918058">Дахин ачаалсан</translation>
 <translation id="2350182423316644347">Програмыг эхлүүлж байна...</translation>
 <translation id="235028206512346451">Та төхөөрөмжөөсөө холдсон тохиолдолд таны дэлгэц автоматаар түгжигдэнэ. Таныг төхөөрөмжийнхөө урд байх үед таны дэлгэцийг илүү удаан идэвхтэй байлгана. Хэрэв та түгжигдсэн дэлгэц ашиглаагүй бол төхөөрөмж тань түгжигдэхийн оронд идэвхгүй болно.</translation>
+<translation id="2352305801620974284">Энэ төхөөрөмж дээр нэвтэрвэл та Google Бүртгэлээсээ нууц үг болон бусад мэдээллийг авна</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Түгжигдсэн дэлгэцийн тэмдэглэлийг <ph name="LOCK_SCREEN_APP_NAME" />-д автоматаар хадгалдаг. Таны хамгийн сүүлийн тэмдэглэл түгжигдсэн дэлгэцэд харагдана.</translation>
 <translation id="2353297238722298836">Камер болон микрофоныг зөвшөөрсөн</translation>
@@ -2046,6 +2053,7 @@
 <translation id="2473195200299095979">Энэ хуудсыг орчуул</translation>
 <translation id="2475982808118771221">Алдаа гарлаа</translation>
 <translation id="247616523300581745">Эдгээр файлыг нуух</translation>
+<translation id="2476435723907345463">Нэвтрэх түлхүүрт хандах эрхийг хассан</translation>
 <translation id="2476901513051581836">Офлайн хадгалах сангийн хэмжээ мэдэгдэх хүртэл хадгалах санг цэвэрлэх боломжгүй.</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" />-г устгахын тулд Windows-г унтраана уу.</translation>
 <translation id="2477065602824695373">Та олон сэлгүүр тохируулсан тул автоматаар скан хийхийг унтраасан байна.</translation>
@@ -2074,6 +2082,7 @@
 <translation id="249113932447298600">Уучлаарай, яг одоо энэ цагт <ph name="DEVICE_LABEL" /> төхөөрөмжийг дэмжиж ажиллаж чадахгүй байна.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" />-н дуу хоолойг урьдчилан сонсох</translation>
 <translation id="2492461744635776704">Гэрчилгээнд гарын үсэг зурах хүсэлтийг бэлтгэж байна</translation>
+<translation id="2492964937550251173">Табыг/табуудыг хааж, бүлгийг устгах уу?</translation>
 <translation id="249330843868392562">Бичвэрийг ярианд хувиргах тохиргоог нээх</translation>
 <translation id="2494555621641843783">Steam-г суулгах боломжгүй</translation>
 <translation id="2495141202137516054">Таны Драйваас</translation>
@@ -2240,8 +2249,10 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" />-г аюулгүй татах боломжгүй.</translation>
 <translation id="2620245777360407679">Сүлжээний цэгт одоогоор холбогдсон төхөөрөмжүүд</translation>
 <translation id="2620436844016719705">Систем</translation>
+<translation id="262087792756666314">Та энэ онцлогийг хялбархан хандахад зориулж бэхлэх боломжтой; хажуугийн самбарын дээд талд байх Бэхлэх товчлуурыг товшино уу</translation>
 <translation id="2620900772667816510">Bluetooth-н супер нягтрал</translation>
 <translation id="262154978979441594">Google Туслахын дуу хоолойн загварыг сургах</translation>
+<translation id="2622280935687585828"><ph name="SITE_NAME" />-г идэвхгүй болгосон сайтуудаас хасах</translation>
 <translation id="26224892172169984">Ямар ч сайтад мэдээлэл дамжуулахыг бүү зөвшөөр</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI төхөөрөмжүүдийг хянаж, дахин программчлахыг зөвшөөрсөн</translation>
@@ -2415,6 +2426,7 @@
 <translation id="2743387203779672305">Завсрын түр санах самбар луу хуулах</translation>
 <translation id="274362947316498129">Апп <ph name="DEVICE_NAME" />-д хандахаар оролдож байна. Хандалтыг зөвшөөрөхийн тулд <ph name="DEVICE_NAME" />-н нууцлалын сэлгүүрийг унтраана уу.</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313"><ph name="DEVICE_NAME" /> дээрээ дамжуулах хүсэлтийг зөвшөөрсөн эсэхээ шалгаарай.</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> руу нэвтрэх</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Зөв бичих дүрмийн алдааг шалгах</translation>
@@ -2785,6 +2797,7 @@
 <translation id="3021066826692793094">Эрвээхэй</translation>
 <translation id="3021678814754966447">&amp;Хүрээний эх үүсвэрийг харах</translation>
 <translation id="3021902017511220299">Скан амжилтгүй боллоо. Энэ үйлдлийг танай администратор блоклосон.</translation>
+<translation id="3022068420678496307">Энэ нь бүлгийг энэ Google Бүртгэлээр Chrome-д нэвтэрсэн бүх төхөөрөмжөөс устгана.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" />-г энэ Chromebook-с хасах бөгөөд <ph name="PRIMARY_EMAIL" />-д хадгалахгүй.</translation>
 <translation id="3022978424994383087">Үүнийг ойлгосонгүй.</translation>
 <translation id="3023464535986383522">Ярихаар сонгох</translation>
@@ -3015,6 +3028,7 @@
 <translation id="3222066309010235055">Компьютер графикжуулах: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989"><ph name="USB_VM_NAME" />-д холбогдох</translation>
 <translation id="3222857603094643834">Энэ хуудсан дээр байгаа дурын зүйлийг Google Lens-р хайгаарай</translation>
+<translation id="3223109931751684474">Энэ төхөөрөмж дээрх нэвтрэх түлхүүрт тань хандах эрхийг хасна уу</translation>
 <translation id="3223531857777746191">Шинэчлэх товчлуур</translation>
 <translation id="3225084153129302039">Өгөгдмөл нил ягаан аватар</translation>
 <translation id="3225319735946384299">Код баталгаажуулалт</translation>
@@ -3339,6 +3353,7 @@
 <translation id="3473479545200714844">Дэлгэц Томруулах</translation>
 <translation id="3474218480460386727">Шинэ үгэнд 99 эсвэл үүнээс цөөн үсэг ашиглана уу</translation>
 <translation id="3474624961160222204"><ph name="NAME" />-р үргэлжлүүлэх</translation>
+<translation id="3477772589943384839">Санах ойн дунд зэргийн хэмнэлт хийгээрэй. Илүү урт хугацааны дараа таны табууд идэвхгүй болно.</translation>
 <translation id="347785443197175480"><ph name="HOST" />-д таны камер болон  микрофон руу нэвтрэхийг үргэлжлүүлэн зөвшөөр</translation>
 <translation id="3479357084663933762">Дьютераномаль</translation>
 <translation id="3479552764303398839">Одоо биш</translation>
@@ -4061,7 +4076,6 @@
 <translation id="3983586614702900908">Үл таних vendor-н төхөөрөмж</translation>
 <translation id="3983764759749072418">Play Store аппууд нь энэ төхөөрөмжид хандалт хийх эрхтэй байна.</translation>
 <translation id="3983769721878416534">Товшихоос өмнөх сааталт</translation>
-<translation id="3983793589497399077">Lens-р хайхын тулд дурын газар товших эсвэл чирнэ үү</translation>
 <translation id="3984135167056005094">Имэйл хаяг оруулахгүй байх</translation>
 <translation id="3984159763196946143">Туршилтын горимыг эхлүүлж чадсангүй</translation>
 <translation id="3984431586879874039">Энэ сайтад аюулгүй байдлын түлхүүрээ харуулахыг зөвшөөрөх үү?</translation>
@@ -4098,6 +4112,7 @@
 <translation id="4010036441048359843">Тодруулгыг асаах</translation>
 <translation id="4010746393007464819">Debian 12 (Bookworm) луу сайжруулах боломжтой байна</translation>
 <translation id="4010917659463429001">Хавчуургаа мобайл төхөөрөмждөө авахын тулд, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Та хялбар хандахад зориулж энэ онцлогийг бэхлэх боломжтой</translation>
 <translation id="4014432863917027322">Та "<ph name="EXTENSION_NAME" />-г" засварлах уу?</translation>
 <translation id="4015163439792426608">Өргөтгөлтэй болсон уу? Хялбарчилсан нэг газраас <ph name="BEGIN_LINK" />өргөтгөлүүдээ удирдаарай<ph name="END_LINK" />.</translation>
 <translation id="4016762287427926315">Таны <ph name="APP_NAME" />-д өгсөн зөвшөөрлийг энэ аппад мөн зөвшөөрнө. <ph name="BEGIN_LINK" />Удирдах<ph name="END_LINK" /></translation>
@@ -4183,6 +4198,7 @@
 <translation id="4078903002989614318">Эрэмбэ болон жагсаалтын сонголт</translation>
 <translation id="4079140982534148664">Зөв бичгийн алдаа шалгах сайжруулсан онцлогийг ашиглах</translation>
 <translation id="4082333918978320301">Таны микрофоныг ашиглахыг ямар ч вебсайтад зөвшөөрөөгүй</translation>
+<translation id="4083735423615351075">Табууд энэ төхөөрөмж дээр нээлттэй хэвээр үлдэх хэдий ч бүлгийг энэ Google Бүртгэлээр Chrome-д нэвтэрсэн бүх төхөөрөмжөөс устгана.</translation>
 <translation id="4084682180776658562">Хадгалах</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" />-ыг хаах</translation>
 <translation id="4085298594534903246">JavaScript-ыг энэ хуудсанд хориглосон байна.</translation>
@@ -4192,6 +4208,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Баруун талд харуулах</translation>
+<translation id="4088879333319441249">Табын бүлгийг салгах уу?</translation>
 <translation id="4089235344645910861">Тохиргоонуудыг хадгалсан. Синкийг эхлүүлсэн.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Хандалт баталгаажуулалтыг идэвхжүүлэх</translation>
@@ -4401,6 +4418,7 @@
 <translation id="4261429981378979799">Өргөтгөлийн зөвшөөрөл</translation>
 <translation id="4262004481148703251">Сануулгыг хаах</translation>
 <translation id="4263223596040212967">Гарын байршлаа шалгаад, дахин оролдоно уу.</translation>
+<translation id="4263470758446311292">Санах ойд дээд зэргийн хэмнэлт хийгээрэй. Илүү богино хугацааны дараа таны табууд идэвхгүй болно.</translation>
 <translation id="4265096510956307240">Өөрийгөө мөн болохыг баталгаажуулах</translation>
 <translation id="4265301768135164545">Та мөн eSIM профайлыг <ph name="BEGIN_LINK" />гар аргаар<ph name="END_LINK" /> тохируулах боломжтой</translation>
 <translation id="426564820080660648">Програм шинэчлэгдсэн эсэхийг шалгах тохиолдолд интернет, Wi-Fi эсвэл гар утасныхаа дата эрхийг ашиглана уу.</translation>
@@ -4720,6 +4738,7 @@
 <translation id="4503748371388753124">Таны компьютер ChromeOS Flex-д аюулгүй байдлын чухал онцлогуудыг хэрэгжүүлэхэд ашигладаг Итгэмжлэгдсэн платформын модуль (TPM)-ийн аюулгүй байдлын төхөөрөмж агуулж байна. Нэмэлт мэдээлэл авах бол Chromebook-н Тусламжийн төвд зочилно уу: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Күүкиг зөвшөөрсөн}=1{1-ээс бусад күүкиг зөвшөөрсөн}other{{COUNT}-с бусад күүкиг зөвшөөрсөн}}</translation>
 <translation id="4504940961672722399">Энэ дүрс дээр дарж эсвэл <ph name="EXTENSION_SHORTCUT" />  дээр дарж энэ өргөтгөлийг ашиглана уу.</translation>
+<translation id="4505469832694348179">Энэ QR кодоор Chrome-г татаад, Google Бүртгэлдээ нэвтэрнэ үү.</translation>
 <translation id="450552327874992444">Үгийг аль хэдийн нэмсэн</translation>
 <translation id="4507373251891673233">Та бүх өргөтгөлийг <ph name="HOST" />-с блоклосон</translation>
 <translation id="4507401683427517298">“Товчлол нэмэх”-ийг товшино уу</translation>
@@ -5055,6 +5074,7 @@
 <translation id="4768332406694066911">Танд эдгээр байгууллагаас таныг тодорхойлох сертификат байна</translation>
 <translation id="4769632191812288342">Та стандарт хамгаалалтыг авч байна</translation>
 <translation id="4770119228883592393">Зөвшөөрлийн хүсэлт тавьсан. Хариу өгөхийн тулд ⌘ + Сонголт + Доош сумыг дарна уу</translation>
+<translation id="4770755495532014179">Энэ нууц үгийг iPhone дээрээ ашиглах</translation>
 <translation id="4773112038801431077">Linux-г сайжруулах</translation>
 <translation id="477548766361111120">Энэ сайтыг унших болон өөрчлөхийн тулд өргөтгөлийг зөвшөөрнө үү</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> холбогдсон</translation>
@@ -5224,6 +5244,7 @@
 <translation id="4890399733764921729">Холбогдох боломжгүй. Өөр мобайл үйлчилгээ үзүүлэгч түгжсэн.</translation>
 <translation id="4890773143211625964">Нарийвчилсан хэвлэгчийн сонголтыг харуулах</translation>
 <translation id="4891089016822695758">Бета форум</translation>
+<translation id="4891795846939730995">Энэ төхөөрөмжид нэвтрэх түлхүүрт тань хандах эрхийг дахин өгөхийн тулд хадгалсан нэвтрэх түлхүүрээр сайт эсвэл аппад нэвтэрнэ үү</translation>
 <translation id="4892229439761351791">Сайт Bluetooth ашиглах боломжтой</translation>
 <translation id="4892328231620815052">Та бэлэн үедээ Хавчуурга болон жагсаалтуудаас унших жагсаалтаа олно уу</translation>
 <translation id="489258173289528622">Батарейгаар ажиллах үед идэвхгүй төлөвт хийх үйлдэл</translation>
@@ -5669,6 +5690,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />-ыг идэвхжүүлэх үү"?</translation>
 <translation id="5243522832766285132">Хэдэн хормын дараа дахин оролдоно уу</translation>
 <translation id="5244234799035360187">OneDrive одоо Файлс аппад харагдана</translation>
+<translation id="5244466461749935369">Одоохондоо үлдээх</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" />-д синк хийж байна</translation>
 <translation id="5245610266855777041">Сургуулийн бүртгэл ашиглаж эхлэх</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> эвдэрсэн байна. Энэ аппликйешнийг дахин эхлүүлэхийн тулд энэ заагч суман дээр дарна уу.</translation>
@@ -5937,6 +5959,7 @@
 <translation id="5453829744223920473">Таны хүүхэд яг ангидаа ашигладаг шигээ сургуулийнхаа бүх апп, хавчуурга болон нөөцийг ашиглах боломжтой. Сургууль үндсэн дүрмүүдийг тохируулна.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" />-тэй</translation>
 <translation id="545484289444831485">Бусад хайлтын илэрцийг харах</translation>
+<translation id="5457082343331641453">Хайлтдаа нэмэх</translation>
 <translation id="5457113250005438886">Хүчингүй</translation>
 <translation id="5457459357461771897">Компьютероосоо зураг, хөгжим болон бусад медиаг уншуулах эсвэл устгах</translation>
 <translation id="5458214261780477893">Дворак</translation>
@@ -6415,6 +6438,7 @@
 <translation id="5816434091619127343">Хэвлэгчийг хүссэний дагуу өөрчилснөөр хэвлэгчийг ашиглах боломжгүй болно.</translation>
 <translation id="581659025233126501">Синк хийхийг асаах</translation>
 <translation id="5817918615728894473">Холбох</translation>
+<translation id="5817963443108180228">Дахин тавтай морилно уу, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">бүх аппликэйшн</translation>
 <translation id="5821565227679781414">Shortcut үүсгэх</translation>
 <translation id="5824976764713185207">Хуудсыг ачаалж дууссаны дараа автоматаар унших</translation>
@@ -6454,6 +6478,7 @@
 <translation id="5846504156837627898">Сайтын зөвшөөрлүүдийг удирдах</translation>
 <translation id="5846749317653566506">Өнгөнүүдийг ялгаатай эсэхийг баталгаажуулахын тулд өнгөний засварын тохиргоог тохируулна уу</translation>
 <translation id="5846807460505171493">Шинэчлэлт болон аппыг суулгана уу. Үргэлжлүүлснээр та энэ төхөөрөмж нь мөн мобайл дата ашиглан Google, таны оператор компани, таны төхөөрөмжийн үйлдвэрлэгчээс шинэчлэлт болон аппыг автоматаар татаж суулгаж болохыг зөвшөөрч байна. Эдгээр аппын зарим нь апликейшний худалдан авалтыг санал болгож болзошгүй.</translation>
+<translation id="5848054741303781539">Байршил ашиглахгүйгээр гар аргаар тохируулах</translation>
 <translation id="5848319660029558352">Чангаар унших, текст форматлах</translation>
 <translation id="5849212445710944278">Аль хэдийн нэмсэн</translation>
 <translation id="584945105664698226">Дуу хоолойн хурд</translation>
@@ -7013,6 +7038,7 @@
 <translation id="6265159465845424232">Microsoft файлуудыг Microsoft OneDrive руу хуулах эсвэл зөөхөөсөө өмнө асуух</translation>
 <translation id="6265687851677020761">Портыг хасах</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" />-д холбогдож байна</translation>
+<translation id="6266984048393265562">Профайлыг өөрчлөх</translation>
 <translation id="6267166720438879315"><ph name="HOST_NAME" />-д өөрийгөө баталгаажуулахын тулд гэрчилгээгээ сонгон оруулна уу</translation>
 <translation id="6268252012308737255"><ph name="APP" />-р нээх</translation>
 <translation id="6270309713620950855">Дууг хаах нудралт</translation>
@@ -7151,7 +7177,6 @@
 <translation id="6383382161803538830">Энэ хуудсан дээр Уншлагын горим боломжгүй байна</translation>
 <translation id="638418309848716977">Дэмжсэн холбооснууд</translation>
 <translation id="6384275966486438344">Таны хайлтын тохиргоог <ph name="SEARCH_HOST" /> рүү өөрчлөх</translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Нэргүй бүлэг - 1 таб}other{Нэргүй бүлэг - # таб}}</translation>
 <translation id="6385149369087767061">Интернэтэд холбогдоод дахин оролдоно уу</translation>
 <translation id="6385382178401976503">Карт: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Сануулга - Нарийвчилсан логийг идэвхжүүлсэн бөгөөд доорх логт URL эсвэл бусад эмзэг мэдээллийг агуулж байж болзошгүй. Та энэ мэдээллийг оруулахдаа итгэлтэй байгаа эсэхээ шалгаад, баталгаажуулна уу.</translation>
@@ -7230,6 +7255,7 @@
 <translation id="6445450263907939268">Хэрэв та эдгээр өөрчлөлтийг оруулахыг хүсэхгүй байгаа тохиолдолд өмнөх тохиргоог сэргээх боломжтой.</translation>
 <translation id="6446213738085045933">Дэлгэц дээрх холбоос үүсгэх</translation>
 <translation id="6447842834002726250">Cookies</translation>
+<translation id="6449554712554071184">Энэ нь бүлгийг таны төхөөрөмжөөс бүрмөсөн устгана.</translation>
 <translation id="6450876761651513209">Нууцлалтай холбоотой тохиргоог өөрчлөх</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> болон бусад 1 таб}other{<ph name="PAGE_TITLE" /> болон бусад # таб}}</translation>
 <translation id="6451689256222386810">Хэрэв та нэвтрэх үгээ мартсан, эсвэл энэ тохиргоог өөрчлөх бол <ph name="BEGIN_LINK" />синкийг дахин тохируулна уу<ph name="END_LINK" />.</translation>
@@ -7376,6 +7402,7 @@
 <translation id="6556866813142980365">Дахин хийх</translation>
 <translation id="6556903358015358733">Загвар, дэлгэцийн зураг</translation>
 <translation id="6557290421156335491">Миний товчлол</translation>
+<translation id="6560061709899140565">Дамжуулах бусад харилцан үйлдлийг харуулах</translation>
 <translation id="6560151649238390891">Зөвлөмжийг оруулсан</translation>
 <translation id="6561726789132298588">Оруул</translation>
 <translation id="6562117348069327379">Системийн логуудыг Татаж авсан файлын лавлахад хадгална.</translation>
@@ -7465,6 +7492,7 @@
 <translation id="6635674640674343739">Сүлжээний холболтыг тогтоох боломжгүй байна. Сүлжээний холболтоо шалгаад, дахин оролдоно уу.</translation>
 <translation id="663569763553406962">Ямар өргөтгөлүүд сайтыг унших эсвэл өөрчлөх боломжтойг харна уу</translation>
 <translation id="6635944431854494329">Эзэмшигч нь энэ онцлогийг Тохиргоо &gt; Дэвшилтэт &gt; Оношилгоо, ашиглалтын өгөгдлийг Google-д автоматаар илгээх хэсэгт хянах боломжтой.</translation>
+<translation id="6636572589916466933"><ph name="DEVICE_NAME" /> дээрээ дамжуулах хүсэлтийг зөвшөөрнө үү.</translation>
 <translation id="6636623428211296678">Доорх бусад тохиргоог судлах эсвэл одоо дуусгах</translation>
 <translation id="6639554308659482635">SQLite санах ой</translation>
 <translation id="6640268266988685324">Нээлттэй таб</translation>
@@ -7483,6 +7511,7 @@
 <translation id="6648911618876616409">Шаардлагатай шинэчлэлтийг суулгахад бэлэн байна. Эхлүүлэхийн тулд нэвтэрнэ үү.</translation>
 <translation id="6649018507441623493">Түр хүлээнэ үү…</translation>
 <translation id="6650206238642452078">ChromeOS системийн үйл явдлуудыг захиалах</translation>
+<translation id="6650584564768559994">Санах ойн тэнцвэртэй хэмнэлт хийгээрэй. Оновчтой хугацааны дараа таны табууд идэвхгүй болно.</translation>
 <translation id="665061930738760572">Шинэ цонхонд нээх &amp;</translation>
 <translation id="6651237644330755633">Веб хуудсыг тодорхойлохдоо энэ сертификатыг итгэмжилнэ үү</translation>
 <translation id="6651495917527016072">Wi-Fi сүлжээнүүдийг утастайгаа синк хийнэ үү. <ph name="LINK_BEGIN" />Нэмэлт мэдээлэл авах<ph name="LINK_END" /></translation>
@@ -7740,6 +7769,7 @@
 <translation id="6831043979455480757">Хөрвүүлэх</translation>
 <translation id="6832218595502288407">Зүүн талд эгнүүлэх</translation>
 <translation id="6833479554815567477">Табыг <ph name="GROUP_NAME" /> бүлгээс хассан - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Тэнцвэртэй (санал болгосон)</translation>
 <translation id="6835762382653651563"><ph name="DEVICE_TYPE" />-ээ шинэчлэхийн тулд интернэтэд холбогдоно уу.</translation>
 <translation id="683630338945552556">Google Бүртгэлдээ нууц үг ашиглах болон хадгалах</translation>
 <translation id="6839225236531462745">Гэрчилгээг арчих алдаа</translation>
@@ -8147,6 +8177,7 @@
 <translation id="715396040729904728">эхлүүлэгч + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Санал хүсэлтээ хуваалц эсвэл асуудлаа тайлбарлана уу. Боломжтой бол асуудлаа дахин гаргах алхмуудыг оруулаарай.</translation>
 <translation id="7154130902455071009">Өөрийн эхлэх хуудсыг :<ph name="START_PAGE" /> болгож өөрчлөх</translation>
+<translation id="7155161204362351654">Илүү чанартай видео авч батарейн ажиллах хугацаагаа хэмнээрэй. Видео нь зөвхөн таны дамжуулалтыг нь идэвхжүүлсэн дэлгэцэд тоглоно.</translation>
 <translation id="7159953856712257647">Өгөгдмөлөөр суулгасан</translation>
 <translation id="7160182524506337403">Та одоо утасныхаа мэдэгдлүүдийг харах боломжтой</translation>
 <translation id="7165263843655074092">Та энэ төхөөрөмжид аюулгүй байдлын стандарт хамгаалалтыг авч байна</translation>
@@ -9004,6 +9035,7 @@
 <translation id="7788948939674438635">Сайтуудад таны гарыг түгжихийг бүү зөвшөөр</translation>
 <translation id="7789963078219276159">Эхлүүлэх хуудасны арын дэвсгэрийг <ph name="CATEGORY" /> болгож өөрчиллөө.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Энэ Chromebook дээрх файлууд</translation>
 <translation id="7791269138074599214">Оруулах арга</translation>
 <translation id="7791429245559955092">Энэ аппликэйшнийг таны одоогоор ашиглаж буй Chrome-н профайлд суулгана</translation>
 <translation id="7791436592012979144">Урвуу гүйлгэхийг идэвхжүүлсэн</translation>
@@ -9033,6 +9065,7 @@
 <translation id="7810202088502699111">Зар сурталчилгааг энэ хуудсанд хориглосон байна.</translation>
 <translation id="7810367892333449285">Таны оролт <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ хаяг<ph name="LPA_2" />$<ph name="LPA_3" />нэмэлт таарах ID<ph name="LPA_4" /> гэсэн форматтай байх ёстой</translation>
 <translation id="7811263553491007091">Дахин оролдох эсвэл өмнө нь доор үүсгэсэн загваруудаас нэгийг сонгоно уу.</translation>
+<translation id="7814090115158024843">Эдгээр сайт дээр бичих тусламжийг хэзээ ч бүү санал болго</translation>
 <translation id="7814458197256864873">Хуулах</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" />-д зориулсан <ph name="SHORTCUT" /> товчлолыг засах</translation>
@@ -9264,8 +9297,10 @@
 <translation id="7974936243149753750">Дэлгэцийн дүрсийг бүтнээр нь гаргахгүй байх</translation>
 <translation id="7975504106303186033">Та энэ Chrome Education төхөөрөмжийг боловсролын бүртгэлд бүртгүүлэх ёстой. Шинэ бүртгэлд бүртгүүлэхийн тулд g.co/workspace/edusignup хаягт зочилно уу.</translation>
 <translation id="7977451675950311423">Таныг өгөгдлийн зөрчилд алдагдсан нууц үгийг ашигласан тохиолдолд танд сануулна.</translation>
+<translation id="797824194429476746">Табууд энэ төхөөрөмж дээр нээлттэй хэвээр үлдэх хэдий ч бүлгийг бүрмөсөн устгана.</translation>
 <translation id="7978412674231730200">Хувийн түлхүүр</translation>
 <translation id="7978450511781612192">Энэ нь таныг Google Бүртгэлүүдээс тань гаргах болно. Таны хавчуурга, түүх, нууц үгнүүд болон бусад зүйлийг синк хийхээ зогсооно.</translation>
+<translation id="7980066177668669492">Base64-шифрлэлттэй ASCII, олон гэрчилгээ</translation>
 <translation id="7980084013673500153">Хөрөнгийн ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" />-д хадгалсан нэвтрэх түлхүүрийг ашиглана уу</translation>
 <translation id="7981662863948574132">Төхөөрөмжийн EID болон QR кодын попапыг харуулах</translation>
@@ -9387,6 +9422,7 @@
 <translation id="8066444921260601116">Холболтын харилцах цонх</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" />-н байршлын зөвшөөрөл</translation>
 <translation id="8070662218171013510">Мэдрэгдэх хариу</translation>
+<translation id="8071033114691184017">Энэ нууц үгийг iPhone дээрээ ашиглах</translation>
 <translation id="8071432093239591881">Зургаар хэвлэх</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Аппын өгөгдөл нь аппын хадгалсан дурын өгөгдөл (хөгжүүлэгчийн тохиргоонд үндэслэн) байж болох бөгөөд үүнд харилцагчид, мессеж болон зураг зэрэг өгөгдөл багтана.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Нөөцлөлтийн өгөгдөл нь таны хүүхдийн Драйвын хадгалах сангийн багтаамжид нөлөөлөхгүй.<ph name="END_PARAGRAPH2" />
@@ -9675,6 +9711,7 @@
 <translation id="8276242035951017580">Таны камерыг ашиглахыг ямар ч аппад зөвшөөрөөгүй</translation>
 <translation id="8276560076771292512">Хоосон кэш ба эрчтэйгээр дахин ачаалах</translation>
 <translation id="8276850948802942358">Сайтад гуравдагч талын күүкинүүдийг ашиглах түр зөвшөөрөл өгөх талаар нэмэлт мэдээлэл авна уу</translation>
+<translation id="8277907305629781277">Та <ph name="DATE" />-нд энэ нэвтрэх түлхүүрийг үүсгэсэн</translation>
 <translation id="8280267190418431666">Таны хэлээрх вебсайтууд</translation>
 <translation id="828180235270931531">Боломжтой бусад хэвлэгч</translation>
 <translation id="8281886186245836920">Алгасах</translation>
@@ -9954,6 +9991,7 @@
 <translation id="8482077254400484047">Идэвхгүй табуудын төрхийг эндээс удирдана уу</translation>
 <translation id="8483248364096924578">IP хаяг</translation>
 <translation id="8486666913807228950">Шалтгаан: <ph name="REVERT_RULE" /> урвуу дүрмийг "Хүчээр нээх" жагсаалтаас олсон.</translation>
+<translation id="8487303289354211861">Бэхэлсэн! Та самбар дээрх шинэ товчлуураас энэ онцлогт дахин хандах боломжтой</translation>
 <translation id="8487678622945914333">Томруулж харах</translation>
 <translation id="8487699605742506766">Сүлжээний цэг</translation>
 <translation id="8489156414266187072">Хувийн зөвлөмж зөвхөн таны бүртгэл дээр харагдана</translation>
@@ -10350,7 +10388,6 @@
 <translation id="8784626084144195648">Хэмжигдсэн дундаж утга</translation>
 <translation id="8785622406424941542">Мэдрэгч үзэг</translation>
 <translation id="8786824282808281903">Таны хүүхэд энэ дүрс тэмдгийг харах үед хурууны хээг таниулбар эсвэл худалдан авалт зөвшөөрөхөд ашиглах боломжтой.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Нэргүй бүлэг - 1 таб}other{Нэргүй бүлэг - # таб}}</translation>
 <translation id="8787752878731558379">Та яагаад гуравдагч талын күүкинүүдийг зөвшөөрсөн талаараа бидэнд хэлснээр Chrome-г сайжруулахад туслаарай</translation>
 <translation id="8789898473175677810">Chrome нь сайт хооронд хянахыг багасгаж, гуравдагч талын күүки ашиглахаас аажмаар татгалзах <ph name="LINK_BEGIN" />хамтын ажиллагааны хүчин чармайлтын<ph name="LINK_END" /> нэг хэсэг юм. Гэхдээ олон сайт төлөвлөсөн ёсоор ажиллахын тулд гуравдагч талын күүки дээр тулгуурладаг тул бид үүнийг хариуцлагатайгаар хийхийг хичээдэг. Жишээлбэл, олон сайт нэвтрэхийг хялбарчлах, оруулсан чат, сэтгэгдлийн системийг дэмжих, төлбөрийн үйлчилгээнд гуравдагч талын күүки ашигладаг. Сурталчлагчид зарыг илүү хувийн болгохын тулд ихэвчлэн гуравдагч талын күүки ашигладаг. Сайт зардлаа төлөхөд тусламж авах, онлайн контентоо үнэ төлбөргүй байлгахын тулд зард тулгуурладаг учраас энэ нь чухал юм.</translation>
 <translation id="8791157330927639737">Шинэчлэх талаар нэмэлт мэдээлэл авах</translation>
@@ -10585,6 +10622,7 @@
 <translation id="8962863356073277855">URL-н формат нь https://www.example.com байх ёстой</translation>
 <translation id="8962918469425892674">Энэ сайт хөдөлгөөн болон гэрлийн мэдрэгч ашиглаж байна.</translation>
 <translation id="8963117664422609631">Сайтын тохиргоо руу очих</translation>
+<translation id="8964795217937248330">Табыг/табуудыг хааж, бүлгийг устгах уу?</translation>
 <translation id="8965037249707889821">Хуучин нууц үгийг оруулна уу</translation>
 <translation id="8966809848145604011">Бусад профайл</translation>
 <translation id="8967427617812342790">Унших жагсаалтад нэмэх</translation>
@@ -10664,6 +10702,7 @@
 <translation id="9014674417732091912"><ph name="ROW_NUMBER" />-р мөр лүү зөөсөн</translation>
 <translation id="901668144954885282">Google Драйвт хуулбарлах</translation>
 <translation id="9016827136585652292">нууцлалын дэлгэцийг асаах/унтраах</translation>
+<translation id="9017055559700464094">Бэхэлсэн! Самбараас энэ онцлогийг дахин ашиглана уу</translation>
 <translation id="90181708067259747">Хүчинтэй хугацаа: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Суулгаж дууссан</translation>
 <translation id="901876615920222131">Бүлгийг дахин нээхийн тулд бүлгийг товшино уу</translation>
@@ -10822,6 +10861,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Шилдэг туршлагыг авахын тулд <ph name="DEVICE_OS" />-г дотоод дисктээ суулгана уу. Та мөн үүнийг дараа нь нэвтрэх дэлгэцээс суулгах боломжтой.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Хэрэв та суулгахдаа бэлэн биш байвал үүнийг туршиж үзэхийн тулд USB-с ажиллуулах боломжтой. Энэ нь таны одоо байгаа үйлдлийн систем болон өгөгдлийг хэвээр үлдээх хэдий ч та хадгалах сан болон гүйцэтгэлийн хязгаарыг харж магадгүй.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Тусгайлан сонгосон цонх хэлбэрээр нээх</translation>
+<translation id="9122788874051694311">Нууцлалтай горимоос гадуур энэ нэвтрэх түлхүүрийг хадгалах уу?</translation>
 <translation id="9123287046453017203">Таны төхөөрөмжийг шинэчлээгүй байна</translation>
 <translation id="9125910124977405374">Автоматаар орчуулсан хэлнүүдээс <ph name="LANGUAGE_NAME" />-г хасах</translation>
 <translation id="9126149354162942022">Курсорын өнгө</translation>
@@ -11016,6 +11056,7 @@
 <translation id="979345485590886759">Сайтууд таны хулганын заагчийг түгжихийг хүсэх боломжтой</translation>
 <translation id="980731642137034229">Үйлдлийн цэсийн товчлуур</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Сайн уу, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Бүх табыг хаах</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - Камер болон микрофоны бичлэг</translation>
 <translation id="984275831282074731">Төлбөрийн хэрэгсэл</translation>
diff --git a/chrome/app/resources/generated_resources_mr.xtb b/chrome/app/resources/generated_resources_mr.xtb
index 0f35a82..fe83718 100644
--- a/chrome/app/resources/generated_resources_mr.xtb
+++ b/chrome/app/resources/generated_resources_mr.xtb
@@ -1667,6 +1667,7 @@
 <translation id="2211043920024403606">प्रोफाइल माहिती</translation>
 <translation id="2211245494465528624">सिंकचे पर्याय व्यवस्थापित करा</translation>
 <translation id="221297410904507041">इतिहास, कुकी, कॅशे आणि आणखी बरेच काही हटवा</translation>
+<translation id="2213410656650624348">मध्यम</translation>
 <translation id="2214018885812055163">शेअर केलेली फोल्डर</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;एक ओळ दाखवलेली नाही&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> ओळी दाखवलेल्या नाहीत&gt;}}</translation>
 <translation id="2215070081105889450">ऑडिओ शेअर करण्यासाठी, त्याऐवजी टॅब किंवा स्क्रीन शेअर करा</translation>
@@ -2049,6 +2050,7 @@
 <translation id="2473195200299095979">या पृष्ठाचे भाषांतर करा</translation>
 <translation id="2475982808118771221">एक एरर आली आहे</translation>
 <translation id="247616523300581745">या फाइल लपवा</translation>
+<translation id="2476435723907345463">पासकीचा अ‍ॅक्सेस काढून टाकला आहे</translation>
 <translation id="2476901513051581836">ऑफलाइन स्टोरेज जागा ज्ञात होईपर्यंत स्टोरेज साफ करू शकत नाही.</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" /> अनइंस्टॉल करण्यासाठी Windows बंद करा.</translation>
 <translation id="2477065602824695373">तुम्ही एकाहून अधिक स्विच सेट केल्यामुळे ऑटो-स्कॅन बंद करण्यात आले आहे.</translation>
@@ -2243,6 +2245,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> सुरक्षितपणे डाउनलोड केली जाऊ शकत नाही.</translation>
 <translation id="2620245777360407679">डिव्हाइस सध्या हॉटस्पॉटशी कनेक्ट केलेली आहेत</translation>
 <translation id="2620436844016719705">सिस्टम</translation>
+<translation id="262087792756666314">सोप्या अ‍ॅक्सेससाठी तुम्ही हे वैशिष्ट्य पिन करू शकता, साइड पॅनलच्या सर्वात वरती पिन करा बटणावर क्लिक करा</translation>
 <translation id="2620900772667816510">ब्लूटूथ सुपर रेझोल्यूशन</translation>
 <translation id="262154978979441594">Google Assistant व्हॉइस मॉडेलला प्रशिक्षण द्या</translation>
 <translation id="26224892172169984">कोणत्याही साइटला प्रोटोकॉल हाताळण्याची परवानगी देऊ नका</translation>
@@ -3018,6 +3021,7 @@
 <translation id="3222066309010235055">पूर्वप्रस्तुती: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989"><ph name="USB_VM_NAME" /> शी कनेक्ट करा</translation>
 <translation id="3222857603094643834">Google Lens वापरून या पेजवरील काहीही शोधा</translation>
+<translation id="3223109931751684474">या डिव्हाइसवरील तुमच्या पासकीचा अ‍ॅक्सेस काढून टाका</translation>
 <translation id="3223531857777746191">रीसेट करा बटण</translation>
 <translation id="3225084153129302039">डीफॉल्ट जांभळा अवतार</translation>
 <translation id="3225319735946384299">कोड साइनिंग</translation>
@@ -3342,6 +3346,7 @@
 <translation id="3473479545200714844">स्क्रीन भिंग</translation>
 <translation id="3474218480460386727">नवीन शब्दांसाठी ९९ किंवा त्यापेक्षा कमी अक्षरे वापरा</translation>
 <translation id="3474624961160222204"><ph name="NAME" /> म्हणून सुरू ठेवा</translation>
+<translation id="3477772589943384839">मेमरीची मध्यम बचत करा. दीर्घ कालावधीनंतर तुमचे टॅब इनॅक्टिव्ह होतात.</translation>
 <translation id="347785443197175480">तुमचा कॅमेरा आणि मायक्रोफोन ॲक्सेस करण्यासाठी <ph name="HOST" /> ला परवानगी देणे सुरू ठेवा</translation>
 <translation id="3479357084663933762">द्वितीयवर्ण दृष्टिक्षीणता</translation>
 <translation id="3479552764303398839">सध्या नाही</translation>
@@ -4065,7 +4070,6 @@
 <translation id="3983586614702900908">अज्ञात विक्रेत्याकडील डिव्हाइसेस</translation>
 <translation id="3983764759749072418">Play स्टोअर ॲप्लिकेशनला या डिव्हाइसचा ॲक्सेस आहे.</translation>
 <translation id="3983769721878416534">क्लिक करण्यापूर्वी विलंब करा</translation>
-<translation id="3983793589497399077">Lens वापरून शोधण्यासाठी क्लिक करा किंवा कुठेही ड्रॅग करा</translation>
 <translation id="3984135167056005094">ईमेल अ‍ॅड्रेसचा समावेश करू नका</translation>
 <translation id="3984159763196946143">डेमो मोड सुरू करता आला नाही</translation>
 <translation id="3984431586879874039">या साइटला तुमची सिक्युरिटी की पाहण्याची अनुमती द्यायची आहे का?</translation>
@@ -4102,6 +4106,7 @@
 <translation id="4010036441048359843">हायलाइट सुरू करा</translation>
 <translation id="4010746393007464819">Debian 12 (Bookworm) चे अपग्रेड उपलब्ध आहे</translation>
 <translation id="4010917659463429001">तुमचे बुकमार्क तुमच्या मोबाइल डिव्हाइसवर मिळवण्यासाठी, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">सुलभ अ‍ॅक्सेससाठी तुम्ही हे वैशिष्‍ट्य पिन करू शकता</translation>
 <translation id="4014432863917027322">"<ph name="EXTENSION_NAME" />" दुरुस्त करायचे?</translation>
 <translation id="4015163439792426608">एक्स्टेंशन आहेत का? एकाच ठिकाणी सहजरीत्या <ph name="BEGIN_LINK" />तुमची एक्स्टेंशन व्यवस्थापित करा<ph name="END_LINK" />.</translation>
 <translation id="4016762287427926315">तुम्ही <ph name="APP_NAME" /> साठी ज्या परवानग्यांना अनुमती देता, त्यांना या अ‍ॅपसाठीदेखील अनुमती दिली जाईल. <ph name="BEGIN_LINK" />व्यवस्थापित करा<ph name="END_LINK" /></translation>
@@ -4403,6 +4408,7 @@
 <translation id="4261429981378979799">एक्स्टेंशनशी संबंधित परवानग्या</translation>
 <translation id="4262004481148703251">चेतावणी डिसमिस करा</translation>
 <translation id="4263223596040212967">तुमचा कीबोर्ड लेआउट तपासा आणि पुन्हा प्रयत्न करा.</translation>
+<translation id="4263470758446311292">मेमरीची जास्तीत जास्त बचत करा. कमी कालावधीनंतर तुमचे टॅब इनॅक्टिव्ह होतात.</translation>
 <translation id="4265096510956307240">हे तुम्हीच असल्याची पडताळणी करा</translation>
 <translation id="4265301768135164545">तुम्ही eSIM प्रोफाइल <ph name="BEGIN_LINK" />मॅन्युअली<ph name="END_LINK" /> देखील सेट करू शकता</translation>
 <translation id="426564820080660648">अपडेट तपासण्यासाठी, कृपया इथरनेट, वाय-फाय किंवा मोबाइल डेटा सक्षम करा.</translation>
@@ -4722,6 +4728,7 @@
 <translation id="4503748371388753124">तुमच्या कॉंप्युटरमध्ये विश्वासू प्लॅटफॉर्म मॉड्युल (TPM) सुरक्षा डिव्हाइस आहे, जे ChromeOS Flex मध्ये अनेक महत्त्वाची सुरक्षा वैशिष्ट्ये लागू करण्यासाठी वापरले जाते. अधिक जाणून घेण्यासाठी Chromebook मदत केंद्र ला भेट द्या: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{कुकींना अनुमती आहे}=1{कुकींना अनुमती आहे, एक अपवाद}other{कुकींना अनुमती आहे, {COUNT} अपवाद}}</translation>
 <translation id="4504940961672722399">या आयकनवर क्लिक करुन किंवा <ph name="EXTENSION_SHORTCUT" /> प्रेस करून हे एक्स्टेंशन वापरा.</translation>
+<translation id="4505469832694348179">हा QR कोड वापरून Chrome डाउनलोड करा आणि तुमच्या Google खाते मध्ये साइन इन करा.</translation>
 <translation id="450552327874992444">शब्द आधीच जोडला आहे</translation>
 <translation id="4507373251891673233">तुम्ही <ph name="HOST" /> वरील सर्व एक्स्टेंशन ब्लॉक केली आहेत</translation>
 <translation id="4507401683427517298">“शॉर्टकट जोडा” वर क्लिक करा</translation>
@@ -5057,6 +5064,7 @@
 <translation id="4768332406694066911">आपल्‍याकडे या संस्थांकडील प्रमाणपत्रे आहेत जी आपल्‍याला ओळखतात</translation>
 <translation id="4769632191812288342">तुम्हाला साधारण संरक्षण मिळत आहे</translation>
 <translation id="4770119228883592393">परवानगीची विनंती केली आहे, प्रतिसाद देण्यासाठी ⌘ + Option + डाउन अ‍ॅरो प्रेस करा</translation>
+<translation id="4770755495532014179">हा पासवर्ड तुमच्या iPhone वर वापरा</translation>
 <translation id="4773112038801431077">Linux अपग्रेड करा</translation>
 <translation id="477548766361111120">ही साइट वाचण्याची आणि बदलण्याची एक्स्टेंशनला अनुमती द्या</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> कनेक्ट केले गेले आहे</translation>
@@ -5226,6 +5234,7 @@
 <translation id="4890399733764921729">कनेक्ट करू शकत नाही. दुसऱ्या मोबाइल पुरवठादाराने लॉक केले आहे.</translation>
 <translation id="4890773143211625964">प्रगत प्रिंटर पर्याय दर्शवा</translation>
 <translation id="4891089016822695758">बीटा फोरम</translation>
+<translation id="4891795846939730995">तुमच्या पासकीना या डिव्हाइसचा अ‍ॅक्सेस पुन्हा देण्यासाठी, सेव्ह केलेली पासकी वापरून साइट किंवा अ‍ॅपमध्ये साइन इन करा</translation>
 <translation id="4892229439761351791">साइट ब्लूटूथ वापरू शकते</translation>
 <translation id="4892328231620815052">तुम्ही तयार असाल, तेव्हा बुकमार्क आणि सूची येथे तुमची वाचन सूची मिळवा</translation>
 <translation id="489258173289528622">बॅटरीवर असताना निष्क्रिय कृती</translation>
@@ -6455,6 +6464,7 @@
 <translation id="5846504156837627898">साइट परवानग्या व्यवस्थापित करा</translation>
 <translation id="5846749317653566506">रंग वेगवेगळे असल्याची खात्री करण्यासाठी रंग सुधारणा सेटिंग्ज अ‍ॅडजस्ट करा</translation>
 <translation id="5846807460505171493">अपडेट आणि अ‍ॅप्स इंस्टॉल करा. सुरू ठेवून, तुम्ही सहमती दर्शवता की हे डिव्हाइस शक्यतो मोबाइल डेटा वापरून Google, तुमचा वाहक आणि तुमच्या डिव्हाइसच्या उत्पादकाकडूनदेखील अपडेट आणि अ‍ॅप्स आपोआप डाउनलोड आणि इंस्टॉल करू शकते. यांपैकी काही अ‍ॅप्स अ‍ॅप्समधील खरेदीचा पर्याय देऊ करू शकतात.</translation>
+<translation id="5848054741303781539">मॅन्युअली सेट केला आहे, स्थान वापरत नाही</translation>
 <translation id="5848319660029558352">मोठ्याने वाचणे आणि मजकूर फॉरमॅटिंग</translation>
 <translation id="5849212445710944278">आधीच जोडला आहे</translation>
 <translation id="584945105664698226">आवाजाचा वेग</translation>
@@ -7154,7 +7164,6 @@
 <translation id="6383382161803538830">या पेजवर वाचन मोड उपलब्ध नाही</translation>
 <translation id="638418309848716977">सपोर्ट असलेल्या लिंक</translation>
 <translation id="6384275966486438344">आपल्या शोध सेटिंग्ज यावर बदला: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{नाव नसलेला गट - एक टॅब}other{नाव नसलेला गट - # टॅब}}</translation>
 <translation id="6385149369087767061">इंटरनेटशी कनेक्ट करा आणि पुन्हा प्रयत्न करा</translation>
 <translation id="6385382178401976503">कार्ड: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">चेतावणी - तपशीलवार लॉगिंग सुरू केलेले आहे; खालील लॉगमध्ये URL किंवा इतर संवेदनशील माहितीचा समावेश असू शकतो. कृपया परीक्षण करा आणि ही माहिती सबमिट करण्यासाठी तुमची हरकत नसल्याची खात्री करा.</translation>
@@ -7486,6 +7495,7 @@
 <translation id="6648911618876616409">महत्वाचे अपडेट इंस्टॉल करण्यासाठी तयार आहे. सुरुवात करण्यासाठी साइन इन करा.</translation>
 <translation id="6649018507441623493">फक्त एक सेकंद…</translation>
 <translation id="6650206238642452078">ChromeOS सिस्टीम इव्‍हेंटचे सदस्यत्व घ्या</translation>
+<translation id="6650584564768559994">मेमरीची संतुलीत बचत करा. योग्य कालावधीनंतर तुमचे टॅब इनॅक्टिव्ह होतात.</translation>
 <translation id="665061930738760572">&amp;नवीन विंडोमध्ये उघडा</translation>
 <translation id="6651237644330755633">वेबसाइट ओळखण्‍यासाठी या सर्टिफिकेटवर विश्‍वास ठेवा</translation>
 <translation id="6651495917527016072">तुमच्या फोनसह वाय-फाय नेटवर्क सिंक करा. <ph name="LINK_BEGIN" />अधिक जाणून घ्या<ph name="LINK_END" /></translation>
@@ -7743,6 +7753,7 @@
 <translation id="6831043979455480757">भाषांतर करा</translation>
 <translation id="6832218595502288407">डावीकडे अलाइन करा</translation>
 <translation id="6833479554815567477">टॅब गट <ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /> यामधून काढून टाकला आहे</translation>
+<translation id="6833753236242482566">संतुलित (शिफारस केलेली)</translation>
 <translation id="6835762382653651563">कृपया तुमचे <ph name="DEVICE_TYPE" /> अपडेट करण्‍यासाठी इंटरनेटशी कनेक्ट करा.</translation>
 <translation id="683630338945552556">तुमच्या Google खाते मधील पासवर्ड वापरा आणि त्यामध्ये ते सेव्ह करा</translation>
 <translation id="6839225236531462745">सर्टिफिकेट हटविणे एरर</translation>
@@ -9392,6 +9403,7 @@
 <translation id="8066444921260601116">कनेक्शन डायलॉग</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> ची स्थानाशी संबंधित परवानगी</translation>
 <translation id="8070662218171013510">स्‍पर्शाद्वारे फीडबॅक</translation>
+<translation id="8071033114691184017">हा पासवर्ड तुमच्या iPhone वर वापरा</translation>
 <translation id="8071432093239591881">इमेज म्हणून प्रिंट करा</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />अ‍ॅप डेटा म्हणजे अ‍ॅपने (डेव्हलपर सेटिंग्जवर आधारित) सेव्ह केलेला कोणताही डेटा असू शकतो , ज्यामध्ये संपर्क, मेसेज आणि फोटो यासारख्या डेटाचा समावेश आहे.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />बॅकअप डेटा तुमच्या लहान मुलाच्या ड्राइव्ह स्टोरेज कोट्यामध्ये गणला जाणार नाही.<ph name="END_PARAGRAPH2" />
@@ -9959,6 +9971,7 @@
 <translation id="8482077254400484047">येथे निष्क्रिय टॅबचा लुक व्यवस्थापित करा</translation>
 <translation id="8483248364096924578">IP पत्ता</translation>
 <translation id="8486666913807228950">कारण: "फोर्स ओपन इन" सूचीमध्ये इन्व्हर्टेड रुल<ph name="REVERT_RULE" /> आढळला होता.</translation>
+<translation id="8487303289354211861">पिन केलेले! तुम्ही हे वैशिष्ट्य टूलबारवरील नवीन बटण वापरून पुन्हा अ‍ॅक्सेस करू शकता</translation>
 <translation id="8487678622945914333">झूम इन करा</translation>
 <translation id="8487699605742506766">हॉटस्पॉट</translation>
 <translation id="8489156414266187072">वैयक्तिक सूचना फक्त तुमच्या खात्यावर दाखवल्या जातात</translation>
@@ -10357,7 +10370,6 @@
 <translation id="8784626084144195648">बिन केलेली सरासरी</translation>
 <translation id="8785622406424941542">स्टायलस</translation>
 <translation id="8786824282808281903">तुमचे लहान मूल हा आयकन पाहते तेव्हा, ओळखीसाठी किंवा खरेदीला मंजुरी देण्यासाठी फिंगरप्रिंट वापरले जाऊ शकते.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{नाव नसलेला गट - एक टॅब}other{नाव नसलेला गट - # टॅब}}</translation>
 <translation id="8787752878731558379">तुम्ही तृतीय पक्ष कुकीना अनुमती का दिली हे सांगून Chrome मध्ये सुधारणा करण्यात आम्हाला मदत करा</translation>
 <translation id="8789898473175677810">क्रॉस-साइट ट्रॅकिंग कमी करण्यासाठी आणि तृतीय पक्ष कुकीचा वापर कमी करण्याकरिता केले जाणारे <ph name="LINK_BEGIN" />सहयोगी प्रयत्न<ph name="LINK_END" /> यांचा Chrome एक भाग आहे. पण आम्ही हे जबाबदारीने करण्याचा प्रयत्न करत आहोत, कारण बऱ्याच साइट डिझाइन केल्याप्रमाणे काम करण्यासाठी तृतीय पक्ष कुकीवर अवलंबून असतात. उदाहरणार्थ, अनेक साइट साइन इन करणे सोपे करण्यासाठी एंबेड केलेले चॅट आणि टिप्पणीसंबंधित सिस्टीमला सपोर्ट करण्यासाठी आणि पेमेंट सेवांसाठी तृतीय पक्ष कुकी वापरतात. आणि जाहिरातदार जाहिराती अधिक चांगल्या प्रकारे पर्सनलाइझ करण्यासाठी तृतीय पक्ष कुकी वापरतात. हे महत्त्वाचे आहे कारण खर्चासाठी पेमेंट करण्याकरिता आणि त्यांचा ऑनलाइन आशय निःशुल्क ठेवण्यासाठी साइट बऱ्याचदा जाहिरातींवर अवलंबून असतात.</translation>
 <translation id="8791157330927639737">अपडेट करण्याबद्दल अधिक जाणून घ्या</translation>
@@ -10672,6 +10684,7 @@
 <translation id="9014674417732091912"><ph name="ROW_NUMBER" /> पंक्तीवर हलवले</translation>
 <translation id="901668144954885282">Google Drive वर बॅकअप घ्या</translation>
 <translation id="9016827136585652292">गोपनीयता स्क्रीन टॉगल करा</translation>
+<translation id="9017055559700464094">पिन केलेले! टूलबारवरून हे वैशिष्ट्य पुन्हा वापरा</translation>
 <translation id="90181708067259747">एक्स्पायरीची तारीख: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">इंस्टॉलेशन पूर्ण झाले</translation>
 <translation id="901876615920222131">गट पुन्हा उघडण्यासाठी, गटावर क्लिक करा</translation>
@@ -10830,6 +10843,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />सर्वोत्तम अनुभवासाठी, <ph name="DEVICE_OS" /> हे तुमच्या अंतर्गत डिस्कवर इंस्टॉल करा. तुम्ही नंतर लॉग इन स्क्रीनवरूनदेखील इंस्टॉल करू शकता.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />तुम्ही इंस्टॉल करण्यासाठी तयार नसल्यास, तुम्ही ते वापरून पाहण्याकरिता USB वरून रन करू शकता. हे तुमचे आधीपासून असलेले OS आणि डेटा ठेवेल, पण तुम्हाला कदाचित स्टोरेज आणि परफॉर्मन्स मर्यादा दिसतील.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">पिन केलेला टॅब म्हणून उघडा</translation>
+<translation id="9122788874051694311">ही पासकी गुप्त मोडच्या बाहेर सेव्ह करायची आहे का?</translation>
 <translation id="9123287046453017203">तुमचे डिव्हाइस अप टू डेट नाही</translation>
 <translation id="9125910124977405374">आपोआप भाषांतरित भाषांमधून <ph name="LANGUAGE_NAME" /> काढून टाका</translation>
 <translation id="9126149354162942022">कर्सर रंग</translation>
diff --git a/chrome/app/resources/generated_resources_ms.xtb b/chrome/app/resources/generated_resources_ms.xtb
index a29f6f3..f526492 100644
--- a/chrome/app/resources/generated_resources_ms.xtb
+++ b/chrome/app/resources/generated_resources_ms.xtb
@@ -4081,7 +4081,6 @@
 <translation id="3983586614702900908">peranti daripada vendor yang tidak diketahui</translation>
 <translation id="3983764759749072418">Aplikasi Gedung Play mempunyai akses kepada peranti ini.</translation>
 <translation id="3983769721878416534">Lengah sebelum klik</translation>
-<translation id="3983793589497399077">Klik atau seret pada mana-mana bahagian untuk mencari dengan Lens</translation>
 <translation id="3984135167056005094">Jangan sertakan alamat e-mel</translation>
 <translation id="3984159763196946143">Tidak dapat memulakan mod tunjuk cara</translation>
 <translation id="3984431586879874039">Benarkan tapak ini melihat kunci keselamatan anda?</translation>
@@ -7183,7 +7182,6 @@
 <translation id="6383382161803538830">Mod bacaan tidak tersedia pada halaman ini</translation>
 <translation id="638418309848716977">Pautan yang disokong</translation>
 <translation id="6384275966486438344">Ubah tetapan carian anda kepada: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Kumpulan tidak bernama – 1 tab}other{Kumpulan tidak bernama – # tab}}</translation>
 <translation id="6385149369087767061">Sambung kepada Internet, kemudian cuba lagi</translation>
 <translation id="6385382178401976503">Kad: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Amaran - Pengelogan terperinci didayakan; log di bawah mungkin mengandungi URL atau maklumat sensitif lain. Sila semak dan pastikan anda selesa menyerahkan maklumat ini.</translation>
@@ -10402,7 +10400,6 @@
 <translation id="8784626084144195648">Purata Bin</translation>
 <translation id="8785622406424941542">Stilus</translation>
 <translation id="8786824282808281903">Apabila anak anda melihat ikon ini, cap jari boleh digunakan untuk pengenalan atau meluluskan pembelian.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Kumpulan Tidak Bernama – 1 Tab}other{Kumpulan Tidak Bernama – # Tab}}</translation>
 <translation id="8787752878731558379">Bantu kami meningkatkan Chrome dengan memberitahu kami sebab anda membenarkan kuki pihak ketiga</translation>
 <translation id="8789898473175677810">Chrome ialah sebahagian daripada <ph name="LINK_BEGIN" />usaha kerjasama<ph name="LINK_END" /> untuk mengurangkan penjejakan rentas laman dan menghentikan penggunaan kuki pihak ketiga. Walau bagaimanapun, kami sedang cuba melakukan tindakan ini dengan penuh tanggungjawab kerana banyak laman bergantung pada kuki pihak ketiga untuk berfungsi seperti yang direka bentuk. Sebagai contoh, banyak laman menggunakan kuki pihak ketiga untuk memudahkan log masuk, menyokong sistem sembang dan ulasan terbenam serta perkhidmatan pembayaran. Pengiklan sering menggunakan kuki pihak ketiga untuk meningkatkan iklan diperibadikan. Perkara ini penting kerana laman sering bergantung pada iklan untuk membantu mereka membayar perbelanjaan dan mengekalkan kandungan dalam talian mereka secara percuma.</translation>
 <translation id="8791157330927639737">Ketahui lebih lanjut tentang pengemaskinian</translation>
diff --git a/chrome/app/resources/generated_resources_my.xtb b/chrome/app/resources/generated_resources_my.xtb
index 3571ef5e..8268ca1 100644
--- a/chrome/app/resources/generated_resources_my.xtb
+++ b/chrome/app/resources/generated_resources_my.xtb
@@ -1671,6 +1671,7 @@
 <translation id="2211043920024403606">ပရိုဖိုင်အချက်အလက်</translation>
 <translation id="2211245494465528624">စင့်ခ်လုပ်ခြင်း ရွေးစရာများ စီမံရန်</translation>
 <translation id="221297410904507041">မှတ်တမ်း၊ ကွတ်ကီးများ၊ ကက်ရှ် စသည်တို့ကို ဖျက်နိုင်သည်</translation>
+<translation id="2213410656650624348">အသင့်အတင့်</translation>
 <translation id="2214018885812055163">မျှဝေထားသော ဖိုင်တွဲများ</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;စာကြောင်း ၁ ကြောင်းကို ပြမထားပါ&gt;}other{&lt;စာကြောင်း <ph name="NUMBER_OF_LINES" /> ကြောင်းကို ပြမထားပါ&gt;}}</translation>
 <translation id="2215070081105889450">အသံမျှဝေရန် တဘ် (သို့) ဖန်သားပြင်ကို မျှဝေပါ</translation>
@@ -2054,6 +2055,7 @@
 <translation id="2473195200299095979">ဒီစာမျက်နှာကို ဘာသာပြန်ပေးရန်</translation>
 <translation id="2475982808118771221">အမှားတစ်ခု ဖြစ်ခဲ့သည်။</translation>
 <translation id="247616523300581745">ဤဖိုင်များကို ဖျောက်ထားရန်</translation>
+<translation id="2476435723907345463">လျှို့ဝှက်ကီးသုံးခွင့် ဖယ်ရှားလိုက်သည်</translation>
 <translation id="2476901513051581836">အော့ဖ်လိုင်း သိုလှောင်ခန်း အရွယ်အစားကို မသိသေးမီ သိုလှောင်ခန်းကို ရှင်း၍မရပါ။</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" /> ကို ဖယ်ရှားရန် Windows ကို ပိတ်ပါ။</translation>
 <translation id="2477065602824695373">အသွင်တူ ခလုတ်အများအပြား သတ်မှတ်လိုက်သောကြောင့် အလိုအလျောက် ရှာဖွေခြင်းကို ပိတ်လိုက်ပါသည်။</translation>
@@ -2249,6 +2251,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> ကို လုံခြုံစွာ ဒေါင်းလုဒ်လုပ်၍မရပါ။</translation>
 <translation id="2620245777360407679">စက်များကို လောလောဆယ် ဟော့စပေါ့နှင့် ချိတ်ဆက်ထားသည်</translation>
 <translation id="2620436844016719705">စနစ်</translation>
+<translation id="262087792756666314">ဤတူးလ်ကို အလွယ်တကူသုံးရန် ပင်ထိုးနိုင်သည်။ ဘေးအကန့်ထိပ်ရှိ ‘ပင်ထိုးရန်’ ခလုတ်ကိုနှိပ်ပါ</translation>
 <translation id="2620900772667816510">ဘလူးတုသ် စူပါကြည်လင်ပြတ်သားမှု</translation>
 <translation id="262154978979441594">Google Assistant အသံ နမူနာ လေ့ကျင့်ရန်</translation>
 <translation id="2622280935687585828"><ph name="SITE_NAME" /> ကို ပိတ်ထားသော ဝဘ်ဆိုက်များမှ ဖယ်ရှားရန်</translation>
@@ -3028,6 +3031,7 @@
 <translation id="3222066309010235055">ကြိုတင်တင်ဆက်သူ: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989"><ph name="USB_VM_NAME" /> နှင့် ချိတ်ဆက်ရန်</translation>
 <translation id="3222857603094643834">ဤစာမျက်နှာပေါ်ရှိ မည်သည်ကိုမဆို Google Lens ဖြင့် ရှာဖွေပါ</translation>
+<translation id="3223109931751684474">ဤစက်တွင် သင့်လျှို့ဝှက်ကီးများ သုံးခွင့်ဖယ်ရှားခြင်း</translation>
 <translation id="3223531857777746191">ပြင်ဆင်သတ်မှတ်ရန် ခလုတ်</translation>
 <translation id="3225084153129302039">မူရင်းခရမ်းရောင်ချန်နယ်ပုံ</translation>
 <translation id="3225319735946384299">ကုဒ်ဖြင့် လက်မှတ်ထိုးရန်</translation>
@@ -3352,6 +3356,7 @@
 <translation id="3473479545200714844">မျက်နှာပြင် ပုံချဲ့ပေးသူ</translation>
 <translation id="3474218480460386727">စာလုံးအသစ်များအတွက် အက္ခရာ ၉၉ လုံးနှင့်အောက် အသုံးပြုပါ</translation>
 <translation id="3474624961160222204"><ph name="NAME" /> အဖြစ်​ ရှေ့ဆက်ရန်</translation>
+<translation id="3477772589943384839">အသင့်အတင့် မှတ်ဉာဏ်ချွေတာမှုများ ရယူနိုင်သည်။ အချိန်အတော်ကြာပြီးနောက် သင့်တဘ်များကို အသုံးမပြုတော့ပါ။</translation>
 <translation id="347785443197175480"><ph name="HOST" />အား သင်၏ ကင်မရာ နှင့် မိုက်ခရိုဖုန်းကို ရယူသုံးမှု ဆက်ခွင့်ပြုရန်</translation>
 <translation id="3479357084663933762">အစိမ်း မမြင်ရခြင်း</translation>
 <translation id="3479552764303398839">ယခု မလို</translation>
@@ -4074,7 +4079,6 @@
 <translation id="3983586614702900908">အမည်မသိ ပစ္စည်းရောင်းသူထံမှ စက်ပစ္စည်းများ</translation>
 <translation id="3983764759749072418">'Play စတိုး' အပလီကေးရှင်းများက ဤကိရိယာကို ဝင်သုံးခွင့်ရှိပါသည်။</translation>
 <translation id="3983769721878416534">မနှိပ်မီ ကြန့်ကြာချိန်</translation>
-<translation id="3983793589497399077">Lens ဖြင့်ရှာရန် တစ်နေရာရာကို နှိပ်ပါ (သို့) ဖိဆွဲပါ</translation>
 <translation id="3984135167056005094">အီးမေးလ်လိပ်စာ မထည့်ပါနှင့်</translation>
 <translation id="3984159763196946143">သရုပ်ပြမုဒ်ကို စတင်၍မရပါ</translation>
 <translation id="3984431586879874039">ဤဝဘ်ဆိုက်ကို သင့်လုံခြုံရေးကီး ကြည့်ခွင့်ပြုလိုသလား။</translation>
@@ -4111,6 +4115,7 @@
 <translation id="4010036441048359843">မြင်သာထင်သာဖြစ်အောင်လုပ်ခြင်း ဖွင့်ရန်</translation>
 <translation id="4010746393007464819">Debian 12 (Bookworm) သို့ အဆင့်မြှင့်တင်နိုင်ပါပြီ</translation>
 <translation id="4010917659463429001">မှတ်ထားသောလိပ်စာများကို သင်၏စက်ပစ္စည်းတွင် ရရှိနိုင်ရန် <ph name="GET_IOS_APP_LINK" /> ကို ရယူပါ။</translation>
+<translation id="4012268176861210196">ဤတူးလ်ကို အလွယ်တကူသုံးရန် ပင်ထိုးနိုင်သည်</translation>
 <translation id="4014432863917027322">"<ph name="EXTENSION_NAME" />" အား ပြင်မည်လား?</translation>
 <translation id="4015163439792426608">နောက်ဆက်တွဲများ ရှိသလား။ လွယ်ကူသော နေရာတစ်ခုတည်းတွင် <ph name="BEGIN_LINK" />သင်၏နောက်ဆက်တွဲများကို စီမံပါ<ph name="END_LINK" />။</translation>
 <translation id="4016762287427926315"><ph name="APP_NAME" /> အတွက် သင်၏ခွင့်ပြုချက်များကို ဤအက်ပ်အတွက်လည်း ခွင့်ပြုပါမည်။ <ph name="BEGIN_LINK" />စီမံရန်<ph name="END_LINK" /></translation>
@@ -4416,6 +4421,7 @@
 <translation id="4261429981378979799">နောက်ဆက်တွဲ ခွင့်ပြုချက်များ</translation>
 <translation id="4262004481148703251">သတိပေးချက် ပယ်ခြင်း</translation>
 <translation id="4263223596040212967">သင့်လက်ကွက် အပြင်အဆင်ကို စစ်ဆေးပြီး ထပ်စမ်းကြည့်ပါ။</translation>
+<translation id="4263470758446311292">အမြင့်ဆုံး မှတ်ဉာဏ်ချွေတာမှု ရယူနိုင်သည်။ အချိန်ခဏကြာပြီးနောက် သင့်တဘ်များကို အသုံးမပြုတော့ပါ။</translation>
 <translation id="4265096510956307240">သင်ဖြစ်ကြောင်း အတည်ပြုပါ</translation>
 <translation id="4265301768135164545">eSIM ပရိုဖိုင်ကို <ph name="BEGIN_LINK" />ကိုယ်တိုင်<ph name="END_LINK" /> စနစ်ထည့်သွင်းနိုင်သေးသည်</translation>
 <translation id="426564820080660648">နောက်ဆုံးအခြေအနေကို စစ်ဆေးရန်၊ Ethernet၊ Wi-Fi သို့မဟုတ် မိုဘိုင်းလ် ဒေတာကို သုံးပါ။</translation>
@@ -4735,6 +4741,7 @@
 <translation id="4503748371388753124">သင့်ကွန်ပျူတာတွင် ChromeOS Flex ရှိ အရေးပါသော လုံခြုံရေးဝန်ဆောင်မှုများစွာ ဆောင်ရွက်ရာတွင် အသုံးပြုသည့် ‘ယုံကြည်ရသော စနစ်မော်ဂျူး’ (TPM) လုံခြုံရေးစက်ပစ္စည်း ပါဝင်သည်။ ပိုမိုလေ့လာရန် Chromebook ကူညီရေးဌာနကို ဝင်ကြည့်ပါ- https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{ကွတ်ကီးများကို ခွင့်ပြုထားသည်}=1{ကွတ်ကီးများကို ခွင့်ပြုထားသည်၊ ခြွင်းချက် ၁ ခု}other{ကွတ်ကီးများကို ခွင့်ပြုထားသည်၊ ခြွင်းချက် {COUNT} ခု}}</translation>
 <translation id="4504940961672722399">ဒီတိုးချဲ့မှုကို ဒီအိုင်ကွန်ကို ကလစ်ပြီး သို့မဟုတ် <ph name="EXTENSION_SHORTCUT" />ကို နှိပ်ပြီး အသုံးပြုပါ။</translation>
+<translation id="4505469832694348179">ဤ QR ကုဒ်ဖြင့် Chrome ကို ဒေါင်းလုဒ်လုပ်ပြီး သင့် Google Account သို့ လက်မှတ်ထိုးဝင်ပါ။</translation>
 <translation id="450552327874992444">စာလုံး ထည့်ပြီးဖြစ်သည်</translation>
 <translation id="4507373251891673233">သင်သည် <ph name="HOST" /> မှ နောက်ဆက်တွဲအားလုံးကို ပိတ်ထားသည်</translation>
 <translation id="4507401683427517298">“ဖြတ်လမ်းလင့်ခ် ထည့်ရန်” ကို နှိပ်ပါ</translation>
@@ -5070,6 +5077,7 @@
 <translation id="4768332406694066911">ဤအဖွဲ့အစည်းများမှနေ၍ သင်၏ အထောက်အထား အသိအမှတ်ပြုလက်မှတ်များ သင့်ထံတွင်ရှိပါသည်</translation>
 <translation id="4769632191812288342">ပုံမှန်ကာကွယ်မှုကို ရရှိပါမည်</translation>
 <translation id="4770119228883592393">ခွင့်ပြုချက်တောင်းထားသည်၊ တုံ့ပြန်ရန် ⌘ + Option + 'အောက်ညွှန်မြား' နှိပ်ပါ</translation>
+<translation id="4770755495532014179">ဤစကားဝှက်ကို သင့် iPhone တွင်သုံးပါ</translation>
 <translation id="4773112038801431077">Linux အဆင့်မြှင့်ခြင်း</translation>
 <translation id="477548766361111120">နောက်ဆက်တွဲကို ဤဝဘ်ဆိုက် ဖတ်ခွင့်၊ ပြောင်းခွင့်ပြုရန်</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> ကို ချိတ်ဆက်လိုက်သည်</translation>
@@ -5239,6 +5247,7 @@
 <translation id="4890399733764921729">ချိတ်ဆက်၍မရပါ။ အခြား မိုဘိုင်းဝန်ဆောင်မှုပေးသူက လော့ခ်ချထားသည်။</translation>
 <translation id="4890773143211625964">ပရင်တာဆိုင်ရာ အသေးစိတ် ရွေးစရာများကို ပြရန်</translation>
 <translation id="4891089016822695758">စမ်းသပ်ဆော့ဖ်ဝဲဖိုရမ်</translation>
+<translation id="4891795846939730995">ဤစက်ကို သင့်လျှို့ဝှက်ကီးများ သုံးခွင့်ပြန်ပေးရန် သိမ်းထားသော လျှို့ဝှက်ကီးဖြင့် ဝဘ်ဆိုက် (သို့) အက်ပ်သို့ လက်မှတ်ထိုးဝင်ပါ</translation>
 <translation id="4892229439761351791">ဝဘ်ဆိုက်က ဘလူးတုသ်ကို အသုံးပြုနိုင်သည်</translation>
 <translation id="4892328231620815052">အသင့်ဖြစ်သောအခါ သင်၏ဖတ်ရန်စာရင်းကို ‘လိပ်စာများ’ နှင့် ‘စာရင်းများ’ တွင် ကြည့်ပါ</translation>
 <translation id="489258173289528622">ဘက်ထရီဖြင့်ဖွင့်ထားစဉ် လုပ်ဆောင်ချက်ကို ဆိုင်းငံ့ထားပါ</translation>
@@ -6472,6 +6481,7 @@
 <translation id="5846504156837627898">ဝဘ်ဆိုက်ခွင့်ပြုချက်များ စီမံရန်</translation>
 <translation id="5846749317653566506">အရောင်များထင်ရှားကြောင်း သေချာစေရန် အရောင်အမှန်ပြင်သည့် ဆက်တင်များကို ချိန်ညှိပါ</translation>
 <translation id="5846807460505171493">အပ်ဒိတ်နှင့် အက်ပ်များ ထည့်သွင်းရန်။ ရှေ့ဆက်ခြင်းအားဖြင့် ဤစက်ပစ္စည်းသည် Google၊ သင်၏ မိုဘိုင်းဝန်ဆောင်မှုပေးသူနှင့် သင့်စက်ပစ္စည်း၏ ထုတ်လုပ်သူ တို့ထံမှနေ၍ အပ်ဒိတ်နှင့် အက်ပ်များကို ဆယ်လူလာဒေတာအား အသုံးပြုပြီး အလိုအလျောက် ဒေါင်းလုဒ်လုပ်၍ ထည့်သွင်းနိုင်ခြင်းကို သဘောတူရာ ရောက်ပါသည်။ ဤအက်ပ်အချို့တွင် အက်ပ်အတွင်းဝယ်ယူမှုများ ကမ်းလှမ်းနိုင်သည်။</translation>
+<translation id="5848054741303781539">လူကိုယ်တိုင် သတ်မှတ်ထားသည်။ တည်နေရာကို သုံးမနေပါ</translation>
 <translation id="5848319660029558352">အသံထွက်ဖတ်ခြင်းနှင့် စာသားဖော်မက်လုပ်ခြင်း</translation>
 <translation id="5849212445710944278">ထည့်ပြီးသားဖြစ်သည်</translation>
 <translation id="584945105664698226">စကားသံမြန်နှုန်း</translation>
@@ -7170,7 +7180,6 @@
 <translation id="6383382161803538830">ဤစာမျက်နှာတွင် ဖတ်ရှုမုဒ် မရနိုင်ပါ</translation>
 <translation id="638418309848716977">ပံ့ပိုးထားသော လင့်ခ်များ</translation>
 <translation id="6384275966486438344">သင့်ရှာဖွေမှု ကြိုတင်ချိန်ညှိချက်များကို သို့ပြောင်းပါ: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{အမည်ပေးမထားသော အုပ်စု - တဘ် 1 ခု}other{အမည်ပေးမထားသော အုပ်စု - တဘ် # ခု}}</translation>
 <translation id="6385149369087767061">အင်တာနက်ချိတ်ပြီး ထပ်စမ်းကြည့်ပါ</translation>
 <translation id="6385382178401976503">ကတ်- <ph name="CARD" /></translation>
 <translation id="6385994920693662133">သတိ - အသေးစိတ်မှတ်တမ်းတင်ခြင်း ဖွင့်ထားသည်၊ အောက်ပါမှတ်တမ်းများတွင် URL များ (သို့) အခြားသတိထားရမည့် အချက်အလက်များ ပါဝင်နိုင်သည်။ ပြန်စစ်ကြည့်ပြီး ၎င်းအချက်အလက်များကို ပို့ရန် အဆင်ပြေကြောင်း သေချာပါစေ။</translation>
@@ -7503,6 +7512,7 @@
 <translation id="6648911618876616409">အရေးကြီးသည့် အပ်ဒိတ်ကို ထည့်သွင်းရန် အဆင်သင့်ဖြစ်ပါပြီ။ စတင်ရန် လက်မှတ်ထိုးဝင်ပါ။</translation>
 <translation id="6649018507441623493">ခေတ္တစောင့်ပါ...</translation>
 <translation id="6650206238642452078">ChromeOS စနစ်ဖြစ်ရပ်များ ရယူရန် စာရင်းသွင်းပါ</translation>
+<translation id="6650584564768559994">မျှတသော မှတ်ဉာဏ်ချွေတာမှု ရယူနိုင်သည်။ အချိန်အတန်အသင့်ကြာပြီးနောက် သင့်တဘ်များကို အသုံးမပြုတော့ပါ။</translation>
 <translation id="665061930738760572">ဝင်ဒိုးအသစ် ထဲမှာ &amp;ဖွင့်ရန်</translation>
 <translation id="6651237644330755633">ဝဘ်ဆိုက်များ၏ အထောက်အထားအဖြစ် ဤအသိအမှတ်ပြုလက်မှတ်များကို ယုံကြည်ပါ</translation>
 <translation id="6651495917527016072">သင့်ဖုန်းဖြင့် Wi-Fi ကွန်ရက်များကို စင့်ခ်လုပ်နိုင်သည်။ <ph name="LINK_BEGIN" />ပိုမိုလေ့လာရန်<ph name="LINK_END" /></translation>
@@ -7760,6 +7770,7 @@
 <translation id="6831043979455480757">ဘာသာပြန်ရန်</translation>
 <translation id="6832218595502288407">ဘယ်သို့ ကပ်ရန်</translation>
 <translation id="6833479554815567477"><ph name="GROUP_NAME" /> အုပ်စုမှ တဘ်ကို ဖယ်ရှားလိုက်သည် - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">မျှမျှတတ (အကြံပြုထားသည်)</translation>
 <translation id="6835762382653651563">သင့် <ph name="DEVICE_TYPE" /> ကို အသစ်မွမ်းမံရန် ကျေးဇူးပြု၍ အင်တာနက်နှင့် ချိတ်ဆက်ပါ။</translation>
 <translation id="683630338945552556">သင့် Google Account တွင် စကားဝှက်များ သုံးရန်နှင့် သိမ်းရန်</translation>
 <translation id="6839225236531462745">အသိမှတ်ပြု လက်မှတ် ဖျက်ခြင်း မှားယွင်းမှု</translation>
@@ -9414,6 +9425,7 @@
 <translation id="8066444921260601116">ချိတ်ဆက်မှု ဒိုင်ယာလော့</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> တည်နေရာ ခွင့်ပြုချက်</translation>
 <translation id="8070662218171013510">ထိတွေ့တုံ့ပြန်ချက်</translation>
+<translation id="8071033114691184017">ဤစကားဝှက်ကို သင့် iPhone တွင်သုံးပါ</translation>
 <translation id="8071432093239591881">ရုပ်ပုံအဖြစ် ပရင့်ထုတ်ရန်</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />အက်ပ်ဒေတာဟူသည်မှာ အဆက်အသွယ်၊ မက်ဆေ့ဂျ်နှင့် ဓာတ်ပုံများကဲ့သို့ ဒေတာများ အပါအဝင် (ဆော့ဖ်ဝဲ အင်ဂျင်နီယာ၏ ဆက်တင်များအပေါ် အခြေခံ၍) အက်ပ်တစ်ခုသိမ်းထားသော မည်သည့်ဒေတာမဆို ဖြစ်နိုင်သည်။<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />အရန်ဒေတာများက သင့်ကလေး၏ Drive သိုလှောင်ခန်းခွဲတမ်းကို အသုံးမပြုပါ။<ph name="END_PARAGRAPH2" />
@@ -9982,6 +9994,7 @@
 <translation id="8482077254400484047">အသုံးမပြုသော တဘ်များ၏ ပုံစံကို ဤနေရာတွင် စီမံနိုင်သည်</translation>
 <translation id="8483248364096924578">IP လိပ်စာ</translation>
 <translation id="8486666913807228950">အကြောင်းရင်း- “၎င်းတွင် မဖြစ်မနေဖွင့်မည်” စာရင်းတွင် ပြောင်းထားသည့်စည်းမျဉ်း <ph name="REVERT_RULE" /> ကို တွေ့ခဲ့သည်။</translation>
+<translation id="8487303289354211861">ပင်ထိုးလိုက်ပြီ။ ကိရိယာဘားပေါ်ရှိ ခလုတ်အသစ်မှတစ်ဆင့် ဤတူးလ်ကို ထပ်သုံးနိုင်သည်</translation>
 <translation id="8487678622945914333">ဇူးမ်ဆွဲရန်</translation>
 <translation id="8487699605742506766">ဟော့စပေါ့</translation>
 <translation id="8489156414266187072">ပုဂ္ဂိုလ်ရေးသီးသန့် အကြံပြုချက်များကို သင့်အကောင့်တွင်သာ ပြသသည်</translation>
@@ -10380,7 +10393,6 @@
 <translation id="8784626084144195648">ပျမ်းမျှ အမှိုက်ပုံး</translation>
 <translation id="8785622406424941542">စတိုင်လပ်စ်ခဲတံ</translation>
 <translation id="8786824282808281903">ဤသင်္ကေတကို သင့်ကလေးမြင်သည်ဆိုပါက အထောက်အထားစိစစ်ရန် (သို့) ဝယ်ယူမှုများအတည်ပြုရန် လက်ဗွေ သုံးနိုင်သည်။</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{အမည်ပေးမထားသော အုပ်စု - တဘ် 1 ခု}other{အမည်ပေးမထားသော အုပ်စု - တဘ် # ခု}}</translation>
 <translation id="8787752878731558379">ပြင်ပကုမ္ပဏီ၏ကွတ်ကီးများကို ဘာကြောင့် သင်ခွင့်ပြုထားကြောင်း ပြောပြခြင်းဖြင့် Chrome ပိုကောင်းအောင် ကူညီပါ</translation>
 <translation id="8789898473175677810">Chrome သည် ဝဘ်ဆိုက်အမျိုးမျိုးတွင် ခြေရာခံခြင်းကို လျှော့ချပြီး ပြင်ပကုမ္ပဏီ၏ကွတ်ကီးများ အသုံးပြုမှုကို ရပ်ဆိုင်းရန် <ph name="LINK_BEGIN" />ပူးတွဲလုပ်ကိုင်သည့် အားထုတ်မှု<ph name="LINK_END" /> ၏ တစ်စိတ်တစ်ပိုင်းဖြစ်သည်။ သို့သော် ဝဘ်ဆိုက်များစွာသည် ရေးဆွဲထားသည့်အတိုင်း အလုပ်လုပ်ရန် ပြင်ပကုမ္ပဏီ၏ကွတ်ကီးများအပေါ် အမှီပြုသောကြောင့် ၎င်းကို တာဝန်သိသိလုပ်ဆောင်ရန် ကြိုးပမ်းလျက်ရှိပါသည်။ ဥပမာ ဝဘ်ဆိုက်များစွာသည် လက်မှတ်ထိုးဝင်ခြင်းကို ရိုးရှင်းအောင်လုပ်ရန်၊ မြှုပ်သွင်းထားသော ချတ်လုပ်ခြင်းနှင့် မှတ်ချက်စနစ်များကို ပံ့ပိုးရန်နှင့် ငွေပေးချေဝန်ဆောင်မှုများအတွက် ပြင်ပကုမ္ပဏီ၏ကွတ်ကီးများကို သုံးသည်။ ထို့ပြင် ကြော်ငြာရှင်များသည် ကြော်ငြာများကို ပိုမိုကောင်းမွန်အောင် ပုဂ္ဂိုလ်ရေးသီးသန့်လုပ်ရန် ပြင်ပကုမ္ပဏီ၏ကွတ်ကီးများကို မကြာခဏသုံးသည်။ ဝဘ်ဆိုက်များသည် ကုန်ကျစရိတ်များ ကူညီပေးချေရန်နှင့် ၎င်းတို့၏ အွန်လိုင်းအကြောင်းအရာကို အခမဲ့ဆက်ထားရန် ကြော်ငြာများကို မကြာခဏ အမှီပြုရသောကြောင့် ၎င်းကအရေးကြီးသည်။</translation>
 <translation id="8791157330927639737">အပ်ဒိတ်လုပ်ခြင်းအကြောင်း ပိုမိုလေ့လာရန်</translation>
@@ -10695,6 +10707,7 @@
 <translation id="9014674417732091912">အတန်း <ph name="ROW_NUMBER" /> သို့ ရွှေ့ထားသည်</translation>
 <translation id="901668144954885282">Google Drive သို့ အရန်သိမ်းရန်</translation>
 <translation id="9016827136585652292">အချက်အလက်ကာကွယ်ရေး ဖန်သားပြင်ခလုတ်</translation>
+<translation id="9017055559700464094">ပင်ထိုးလိုက်ပြီ။ ကိရိယာဘားမှတစ်ဆင့် ဤတူးလ်ကို ထပ်သုံးနိုင်သည်</translation>
 <translation id="90181708067259747">သက်တမ်းကုန်ဆုံးရက်- <ph name="CARD" /></translation>
 <translation id="9018218886431812662">ထည့်ပြီးပါပြီ</translation>
 <translation id="901876615920222131">အုပ်စုပြန်ဖွင့်ရန် အုပ်စုပေါ်တွင် နှိပ်ပါ</translation>
@@ -10853,6 +10866,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />အကောင်းဆုံးအသုံးပြုမှုအတွက် <ph name="DEVICE_OS" /> ကို သင့်စက်အတွင်းဒစ်ခ်သို့ ထည့်သွင်းပါ။ ၎င်းကို အကောင့်ဝင်သည့် စခရင်မှလည်း နောက်မှ ထည့်သွင်းနိုင်သည်။<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ထည့်သွင်းရန် အဆင်သင့်မဖြစ်သေးပါက USB မှ စမ်း၍ လုပ်ဆောင်နိုင်သည်။ သင်၏ လက်ရှိ အိုအက်စ် (OS) နှင့် ဒေတာကို ဆက်ထိန်းထားမည်ဖြစ်သော်လည်း သိုလှောင်ခန်းနှင့် စွမ်းဆောင်ရည် ကန့်သတ်ချက်များကို တွေ့ကြုံရနိုင်သည်။<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">ပင်ထိုးထား တဘ် အဖြစ် ဖွင့်ရန်</translation>
+<translation id="9122788874051694311">‘ရုပ်ဖျက်မုဒ်’ ပြင်ပတွင် ဤလျှို့ဝှက်ကီးကို သိမ်းမလား။</translation>
 <translation id="9123287046453017203">သင့်စက်က အပ်ဒိတ်မဖြစ်ပါ</translation>
 <translation id="9125910124977405374"><ph name="LANGUAGE_NAME" /> ကို အလိုအလျောက် ဘာသာပြန်ထားသည့် ဘာသာစကားများမှ ဖယ်ရှားရန်</translation>
 <translation id="9126149354162942022">ကာဆာအရောင်</translation>
diff --git a/chrome/app/resources/generated_resources_ne.xtb b/chrome/app/resources/generated_resources_ne.xtb
index dd69013..ce9a837 100644
--- a/chrome/app/resources/generated_resources_ne.xtb
+++ b/chrome/app/resources/generated_resources_ne.xtb
@@ -363,6 +363,7 @@
 <translation id="1260810365552581339">Linux को डिस्कमा पर्याप्त खाली ठाउँ नहुन सक्छ। तपाईं Linux को डिस्कमा थप ठाउँ खाली गरेर <ph name="LINK_START" />सेटिङ<ph name="LINK_END" />मा गई फेरि रिस्टोर गर्ने प्रयास गर्न सक्नुहुन्छ।</translation>
 <translation id="1261380933454402672">सामान्य</translation>
 <translation id="126156426083987769">डेमो मोडका यन्त्रको इजाजतपत्रसम्बन्धी कुनै समस्या भयो।</translation>
+<translation id="1261885284931493480">ट्याब(हरू) हटाउने र समूह मेटाउने हो?</translation>
 <translation id="1263231323834454256">पाठ्य सूची</translation>
 <translation id="1263733306853729545">उम्मेदवारहरूको सूचीलाई पृष्ठमा ल्याउन <ph name="MINUS" /> र <ph name="EQUAL" /> कुञ्जीहरू प्रयोग गर्नुहोस्</translation>
 <translation id="126387934568812801">यो स्क्रिनसट तथा खुला रहेका ट्याबका शीर्षकहरू समावेश गर्नुहोस्</translation>
@@ -873,6 +874,7 @@
 <translation id="1634224622052500893">WiFi नेटवर्क भेटिएको छ</translation>
 <translation id="1634783886312010422">तपाईंले <ph name="WEBSITE" /> मा यो पासवर्ड परिवर्तन गरिसक्नुभयो?</translation>
 <translation id="1636212173818785548">ठिक छ</translation>
+<translation id="1636542522761359943">स्वागत छ, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />एपसम्बन्धी डेटा सम्पर्क ठेगाना, म्यासेज र फोटो जस्ता डेटा र कुनै एपले (विकासकर्ताका सेटिङका आधारमा) सेभ गरेको कुनै पनि डेटा हुन सक्छ। डेटा ब्याकअप गर्दा तपाईंको Drive को भण्डारण कोटा प्रयोग हुने छैन।<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />तपाईं सेटिङमा गई यो सेवा अफ गर्न सक्नुहुन्छ।<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">आफ्नो iPhone मा यो बुकमार्क प्राप्त गर्नुहोस्</translation>
@@ -909,6 +911,7 @@
 <translation id="1652862280638399816">macOS Keychain का सहायताले पासवर्ड म्यानेजर प्रयोग गर्न Chromium रिलन्च गर्नुहोस् र Keychain प्रयोग गर्ने अनुमति दिनुहोस्। रिलन्च गरेपछि तपाईंका ट्याबहरू फेरि खुल्ने छन्।</translation>
 <translation id="1653958716132599769">सम्बन्धित ट्याबहरू समूहबद्ध गर्नुहोस्</translation>
 <translation id="1654580009054503925">अनुरोधहरू देखाउने अनुमति दिइएको छैन</translation>
+<translation id="1654713139320245449">कास्ट गर्ने कुनै पनि गन्तव्य फेला परेन। मद्दत चाहिन्छ?</translation>
 <translation id="1656528038316521561">पृष्ठभूमिको अपारदर्शिता</translation>
 <translation id="1657406563541664238">Google लाई स्वत: उपयोग तथ्याङ्क र क्र्यास रिपोर्टहरू पठाएर <ph name="PRODUCT_NAME" /> लाई अझ राम्रो बनाउन मद्दत गर्नुहोस्</translation>
 <translation id="1657937299377480641">शैक्षिक स्रोत साधनहरू प्रयोग गर्नका लागि फेरि साइन इन गर्न आफ्ना अभिभावकलाई साइन इन गर्ने अनुमति दिन आग्रह गर्नुहोस्</translation>
@@ -1628,12 +1631,14 @@
 <translation id="2187895286714876935">सर्भर सर्टिफिकेट आयात त्रुटि</translation>
 <translation id="2187906491731510095">विस्तारहरू अद्यावधिक गरिए</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> खोल्नुहोस्</translation>
+<translation id="2188919919468240749">ट्याब समूह मेटाउने हो?</translation>
 <translation id="2190069059097339078">Wi-Fi प्रमाणपत्रहरू प्राप्तकर्ता</translation>
 <translation id="219008588003277019">स्वदेशी ग्राहक मोड्युल: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(खालि)</translation>
 <translation id="2190967441465539539">क्यामेरा र माइक्रोफोन एक्सेस गर्न मिल्दैन</translation>
 <translation id="2191754378957563929">सक्रिय छ</translation>
 <translation id="2192505247865591433">बाट:</translation>
+<translation id="219283042927675668">समूहमा भएका ट्याबहरू</translation>
 <translation id="2193365732679659387">विश्वास सम्बन्धी सेटिङहरू</translation>
 <translation id="2194856509914051091">विचार गर्नु पर्ने कुराहरू</translation>
 <translation id="2195331105963583686">तपाईं उक्त समयपछि पनि यो <ph name="DEVICE_TYPE" /> प्रयोग गरिरहन सक्नु हुने छ तर यसले सफ्टवेयर तथा सुरक्षासम्बन्धी स्वचालित अद्यावधिकहरू भने प्राप्त गर्ने छैन</translation>
@@ -1854,6 +1859,7 @@
 <translation id="2350133097354918058">पुनः लोड गरियो</translation>
 <translation id="2350182423316644347">एप्लिकेसन आरम्भ गर्दै...</translation>
 <translation id="235028206512346451">तपाईं आफ्नो डिभाइसबाट टाढा जानुभयो भने तपाईंको डिभाइसको स्क्रिन स्वतः लक हुन्छ। तपाईं आफ्नो डिभाइसको अगाडि हुँदा तपाईंको डिभाइसको स्क्रिन अझ लामो समयसम्म अन रहने छ। तपाईं लक स्क्रिन प्रयोग गर्नुभएन भने तपाईंको डिभाइस लक हुनुको साटो स्लिप मोडमा जाने छ।</translation>
+<translation id="2352305801620974284">यो डिभाइसमा साइन इन गर्दा तपाईंलाई आफ्नो Google खातामा सेभ गरिएका पासवर्डलगायत अन्य जानकारी प्राप्त हुन्छन्।</translation>
 <translation id="2352662711729498748">&lt; 1 एमबी</translation>
 <translation id="2352810082280059586">लक स्क्रिनका टिपोटहरू <ph name="LOCK_SCREEN_APP_NAME" /> मा स्वत: सुरक्षित हुन्छन्। तपाईंको सबैभन्दा पछिल्लो टिपोट लक स्क्रिनमा रहनेछ।</translation>
 <translation id="2353297238722298836">क्यामेरा तथा माइक्रोफोन प्रयोग गर्ने अनुमति छ</translation>
@@ -2064,6 +2070,7 @@
 <translation id="249113932447298600">माफ गर्नुहोला, साधन<ph name="DEVICE_LABEL" /> यस समयमा समर्थित छैन।</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> भाषामा आवाजको प्रिभ्यू सुन्नुहोस्</translation>
 <translation id="2492461744635776704">प्रमाणपत्रमा हस्ताक्षर गर्ने अनुरोध तयार पार्दै</translation>
+<translation id="2492964937550251173">ट्याब(हरू) बन्द गर्ने र समूह मेटाउने हो?</translation>
 <translation id="249330843868392562">पाठवाचकसम्बन्धी सेटिङहरू खोल्नुहोस्</translation>
 <translation id="2494555621641843783">Steam इन्स्टल सकिँदैन</translation>
 <translation id="2495141202137516054">तपाईंको Drive बाट</translation>
@@ -2233,6 +2240,7 @@
 <translation id="262087792756666314">तपाईं यो सुविधा सजिलैसँग एक्सेस गर्नका निम्ति यसलाई पिन गर्न सक्नुहुन्छ; साइड प्यानलको सिरानमा रहेको "पिन गर्नुहोस्" बटनमा क्लिक गर्नुहोस्</translation>
 <translation id="2620900772667816510">ब्लुटुथ सुपर रिजोल्युसन</translation>
 <translation id="262154978979441594">Google सहायकको आवाजको मोडेललाई आफ्नो आवाज चिन्न सिकाउनुहोस्</translation>
+<translation id="2622280935687585828">अफ गरिएका साइटहरूबाट <ph name="SITE_NAME" /> हटाउनुहोस्</translation>
 <translation id="26224892172169984">कुनै पनि साइटलाई प्रोटोकलहरू ह्यान्डल गर्न अनुमति नदिनुहोस्</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI डिभाइसहरू नियन्त्रण तथा रिप्रोग्राम गर्ने अनुमति दिनुहोस्</translation>
@@ -2406,6 +2414,7 @@
 <translation id="2743387203779672305">क्लिपबोर्डमा प्रतिलिपि बनाउँनुहोस्</translation>
 <translation id="274362947316498129">कुनै एपले <ph name="DEVICE_NAME" /> प्रयोग गर्न खोज्दै छ। उक्त एपलाई <ph name="DEVICE_NAME" /> प्रयोग गर्ने अनुमति दिन क्यामेराको गोपनीयता स्विच अफ गर्नुहोस्।</translation>
 <translation id="2745080116229976798">Microsoft मर्यादित पराधीन</translation>
+<translation id="2747853844543618313">तपाईंले आफ्नो <ph name="DEVICE_NAME" /> मा प्राप्त भएको कास्ट गर्नेसम्बन्धी अनुरोध स्वीकार गर्नुभएको छ भन्ने कुरा सुनिश्चित गर्नुहोस्।</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> मा साइन इन गर्नुहोस्</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">व्याकरणसँगै हिज्जे पनि जाँच्नुहोस्</translation>
@@ -2777,6 +2786,7 @@
 <translation id="3021066826692793094">पुतली</translation>
 <translation id="3021678814754966447">फ्रेम स्रोत &amp;हेर्नुहोस्</translation>
 <translation id="3021902017511220299">स्क्यान गर्न सकिएन। तपाईंका एड्मिनले यो कारबाही गर्न रोक लगाउनुभएको छ।</translation>
+<translation id="3022068420678496307">यो समूह मेटाउँदा यो Google खाताबाट Chrome मा साइन इन गरिएका सबै डिभाइसहरूमा रहेको समूह मेटाइने छ।</translation>
 <translation id="3022361196600037287">यो Chromebook बाट <ph name="DEVICE" /> हटाइने छ र उक्त डिभाइस अब <ph name="PRIMARY_EMAIL" /> मा सेभ गरिने छैन।</translation>
 <translation id="3022978424994383087">मैले बुझिनँ।</translation>
 <translation id="3023464535986383522">सेलेक्ट टु स्पिक सुविधा</translation>
@@ -4055,7 +4065,6 @@
 <translation id="3983586614702900908">एक अज्ञात विक्रेता देखि उपकरणहरू</translation>
 <translation id="3983764759749072418">Play स्टोरका एपहरूले यस यन्त्रमाथि पहुँच राख्न सक्छन्।</translation>
 <translation id="3983769721878416534">क्लिक गर्नुभन्दा अघिको ढिलाइ</translation>
-<translation id="3983793589497399077">Lens मार्फत खोज्न जुनसुकै क्षेत्रमा क्लिक गर्नुहोस् वा जुनसुकै क्षेत्र चयन गर्नुहोस्</translation>
 <translation id="3984135167056005094">इमेल ठेगाना नहाल्नुहोस्</translation>
 <translation id="3984159763196946143">डेमो मोड सुरु गर्न सकिएन</translation>
 <translation id="3984431586879874039">यस साइटलाई तपाईंको सुरक्षा साँचो हेर्न दिने हो?</translation>
@@ -4178,6 +4187,7 @@
 <translation id="4078903002989614318">क्रमबद्ध र सूचीबद्ध गर्ने विकल्पहरू</translation>
 <translation id="4079140982534148664">हिज्जे जाँचसम्बन्धी परिष्कृत सुविधा प्रयोग गर्नुहोस्</translation>
 <translation id="4082333918978320301">कुनै पनि वेबसाइटलाई तपाईंको डिभाइसको माइक्रोफोन प्रयोग गर्ने अनुमति दिइएको छैन</translation>
+<translation id="4083735423615351075">यी ट्याबहरू यो डिभाइसमा खुलै रहने छन् तर यो समूह भने यो Google खाताबाट Chrome मा साइन इन गरिएका सबै डिभाइसहरूबाट मेटाइने छ।</translation>
 <translation id="4084682180776658562">बुकमार्क</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" />बन्द गर्नुहोस्</translation>
 <translation id="4085298594534903246">जावास्क्रिप्टले यो पेजमा अवरुद्ध भएको गरेको थियो ।</translation>
@@ -4187,6 +4197,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">दायाँपट्टि देखाउनुहोस्</translation>
+<translation id="4088879333319441249">ट्याबहरू समूहबाट हटाउने हो?</translation>
 <translation id="4089235344645910861">सेटिङहरू सेभ गरियो। सिंक सुरु भयो।</translation>
 <translation id="4089817585533500276">सिफ्ट + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">रुजू गरिएको पहुँच सक्षम बनाउनुहोस्</translation>
@@ -5668,6 +5679,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" /> " सक्षम गर्ने?</translation>
 <translation id="5243522832766285132">कृपया केही क्षणमा फेरि प्रयास गर्नुहोस्</translation>
 <translation id="5244234799035360187">OneDrive अब Files एपमा देखिने छ</translation>
+<translation id="5244466461749935369">अहिले राखिराख्नुहोस्</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> मा सिंक गर्दै</translation>
 <translation id="5245610266855777041">विद्यालयको खाता प्रयोग गरेर सुरु गर्नुहोस्</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> क्रयास भएको छ। एप पुन: चालू गर्नको लागि यस बेलुनलाई क्लिक गर्नुहोस्।</translation>
@@ -5936,6 +5948,7 @@
 <translation id="5453829744223920473">तपाईंका बच्चा कक्षामा जसरी नै उनको स्कुलका सबै एप, बुकमार्क तथा स्रोतहरू प्रयोग गर्न सक्छन्। तर उक्त स्कुलले आधारभूत नियमहरू तोक्छ।</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> सँग</translation>
 <translation id="545484289444831485">खोजका थप परिणामहरू हेर्नुहोस्</translation>
+<translation id="5457082343331641453">आफ्नो खोजमा हाल्नुहोस्</translation>
 <translation id="5457113250005438886">अवैध</translation>
 <translation id="5457459357461771897">तपाईंको कम्प्युटरबाट तस्बिरहरू, सङ्गीत, र अन्य मिडिया पहुँच गर्नुहोस् र हटाउनुहोस्</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6413,6 +6426,7 @@
 <translation id="5816434091619127343">अनुरोध गरिएका प्रिन्टरसम्बन्धी परिवर्तनहरूले यस प्रिन्टरलाई काम नलाग्ने बनाउने छ।</translation>
 <translation id="581659025233126501">सिंक गर्ने सुविधा अन गर्नुहोस्</translation>
 <translation id="5817918615728894473">जोडा  बनाउनुहोस्</translation>
+<translation id="5817963443108180228">फेरि स्वागत छ, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">सबै एपहरू</translation>
 <translation id="5821565227679781414">सर्टकट सिर्जना गर्नुहोस्</translation>
 <translation id="5824976764713185207">पृष्ठ लोड भइसकेपछि उक्त पृष्ठ स्वतः पढ्नुहोस्</translation>
@@ -7012,6 +7026,7 @@
 <translation id="6265159465845424232">Microsoft फाइलहरू Microsoft OneDrive मा कपी गर्नुअघि वा त्यहाँबाट सारेर अन्यत्र लैजानुअघि सोध्नुहोस्</translation>
 <translation id="6265687851677020761">पोर्ट हटाउनुहोस्</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" /> मा कनेक्ट गरिँदै छ</translation>
+<translation id="6266984048393265562">प्रोफाइल कस्टमाइज गर्नुहोस्</translation>
 <translation id="6267166720438879315">तपाइँ आफैलाई <ph name="HOST_NAME" /> मा प्रमाणीकरण गर्नको लागि एक प्रमाणपत्र चयन गर्नुहोस्</translation>
 <translation id="6268252012308737255"><ph name="APP" /> मार्फत खोल्नुहोस्</translation>
 <translation id="6270309713620950855">म्युट नज</translation>
@@ -7150,7 +7165,6 @@
 <translation id="6383382161803538830">यो पेजमा रिडिङ मोड उपलब्ध छैन</translation>
 <translation id="638418309848716977">खोल्न मिल्ने लिंकहरू</translation>
 <translation id="6384275966486438344">तपाईंको खोज सेटिङहरूलाई यसमा परिवर्तन गर्नुहोस्: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{नाम नभएको समूह - १ ट्याब}other{नाम नभएको समूह - # वटा ट्याब}}</translation>
 <translation id="6385149369087767061">इन्टरनेटमा कनेक्ट गरी फेरि प्रयास गर्नुहोस्</translation>
 <translation id="6385382178401976503">कार्ड: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">चेतावनी - विस्तृत लग गर्ने सुविधा अन गरिएका हुनाले तलका लगहरूमा URL वा अन्य संवेदनशील जानकारी समावेश हुन पनि सक्छ। कृपया यो जानकारीको समीक्षा गर्नुहोस् र तपाईंलाई सो जानकारी पेस गर्दा कुनै समस्या हुँदैन भन्ने कुरा सुनिश्चित गर्नुहोस्।</translation>
@@ -7229,6 +7243,7 @@
 <translation id="6445450263907939268">यदि तप</translation>
 <translation id="6446213738085045933">डेस्कटप सर्टकट बनाउनुहोस्</translation>
 <translation id="6447842834002726250">कुकीहरू</translation>
+<translation id="6449554712554071184">तपाईंले यसो गर्नुभयो भने तपाईंको डिभाइसबाट यो समूह सदाका लागि मेटाइने छ।</translation>
 <translation id="6450876761651513209">आफ्नो गोपनीयता सम्बन्धित सेटिङहरू परिवर्तन गर्नुहोस्</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> र अन्य १ ट्याब}other{<ph name="PAGE_TITLE" /> र अन्य # ट्याबहरू}}</translation>
 <translation id="6451689256222386810">तपाईँले आफ्नो पासफ्रेज बिर्सनुभयो वा यस सेटिङलाई परिवर्तन गर्न चाहनुहुन्छ भने <ph name="BEGIN_LINK" />सिंकलाई रिसेट गर्नुहोस्<ph name="END_LINK" />।</translation>
@@ -7375,6 +7390,7 @@
 <translation id="6556866813142980365">फेरि गर्नुहोस्</translation>
 <translation id="6556903358015358733">थिम तथा वालपेपर</translation>
 <translation id="6557290421156335491">मेरा सर्टकटहरू</translation>
+<translation id="6560061709899140565">कास्ट गरिरहेका अन्य सेसनसम्बन्धी जानकारी देखाउनुहोस्</translation>
 <translation id="6560151649238390891">सुझाव गरिएको इमोजी प्रयोग गरियो</translation>
 <translation id="6561726789132298588">प्रविष्टि गर्नुहोस्</translation>
 <translation id="6562117348069327379">सिस्टम लगहरू डाउनलोड नामक डिरेक्टरीमा भण्डारण गर्नुहोस्।</translation>
@@ -7464,6 +7480,7 @@
 <translation id="6635674640674343739">इन्टरनेटमा कनेक्ट गर्न सकिएन। आफ्नो इन्टरनेट कनेक्सन जाँच्नुहोस् र फेरि प्रयास गर्नुहोस्।</translation>
 <translation id="663569763553406962">एक्स्टेन्सनहरूले के-के हेर्न सक्छन् भन्ने कुरा हेर्नुहोस् वा साइट परिवर्तन गर्नुहोस्</translation>
 <translation id="6635944431854494329">मालिक सेटिङ &gt; उन्नत &gt; निदान र प्रयोगसम्बन्धी डेटा स्वतः Google लाई पठाउनुहोस् नामक सेटिङमा गएर यो सुविधा नियन्त्रण गर्न सक्छन्।</translation>
+<translation id="6636572589916466933">आफ्नो <ph name="DEVICE_NAME" /> मा प्राप्त भएको कास्ट गर्नेसम्बन्धी अनुरोध स्वीकार गर्नुहोस्।</translation>
 <translation id="6636623428211296678">तल दिइएका अन्य सेटिङ मिलाउनुहोस् वा समीक्षा गर्ने कार्य अहिले नै पूरा गर्नुहोस्</translation>
 <translation id="6639554308659482635">SQLite मेमोरी</translation>
 <translation id="6640268266988685324">ट्याब खोल्नुहोस्</translation>
@@ -8148,6 +8165,7 @@
 <translation id="715396040729904728">लन्चर + सिफ्ट + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">आफ्नो प्रतिक्रिया दिनुहोस् वा आफ्ना समस्याका बारेमा वर्णन गर्नुहोस्। सम्भव भएमा, आफ्ना समस्याका बारेमा क्रमिक रूपमा वर्णन गर्नुहोस्।</translation>
 <translation id="7154130902455071009">आफ्नो सुरुवात पृष्ठलाई यसमा परिवर्तन गर्नुहोस्: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">अझ राम्रो गुणस्तरको भिडियो हेर्नुहोस् र ब्याट्री अझ बढी समयसम्म टिकाउनुहोस्। उक्त भिडियो तपाईंको कास्ट गर्ने सुविधा अन गरिएको स्क्रिनमा मात्र प्ले हुने छ।</translation>
 <translation id="7159953856712257647">स्वतः इन्स्टल गरिएको</translation>
 <translation id="7160182524506337403">तपाईं अब आफ्नो फोनका सूचनाहरू हेर्न सक्नुहुन्छ</translation>
 <translation id="7165263843655074092">तपाईं यो डिभाइसमा सामान्य सुरक्षा प्राप्त गरिरहनुभएको छ</translation>
@@ -9006,6 +9024,7 @@
 <translation id="7788948939674438635">किबोर्ड लक गर्न साइटहरूलाई अनुमति नदिनुहोस्</translation>
 <translation id="7789963078219276159">सुरुवातको पृष्ठको पृष्ठभूमि परिवर्तन गरी <ph name="CATEGORY" /> पारिएको छ।</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">यो Chromebook मा भएका फाइलहरू</translation>
 <translation id="7791269138074599214">इनपुट विधि</translation>
 <translation id="7791429245559955092">यो एप तपाईंले हाल प्रयोग गरिरहनुभएको Chrome प्रोफाइलमा इन्स्टल गरिने छ</translation>
 <translation id="7791436592012979144">उल्टो स्क्रोल गर्ने सुविधा अन गरिएको छ</translation>
@@ -9035,6 +9054,7 @@
 <translation id="7810202088502699111">पप-अप यो पेजमा अवरुद्ध भएको थियो ।</translation>
 <translation id="7810367892333449285">तपाईंले हालेको कोड <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ address<ph name="LPA_2" />$<ph name="LPA_3" />optional matching id<ph name="LPA_4" /> फर्म्याटमा हुनु पर्छ</translation>
 <translation id="7811263553491007091">फेरि प्रयास गर्नुहोस् वा तल दिइएका यसअघि सिर्जना गरिएका थिममध्ये एउटा थिम चयन गर्नुहोस्।</translation>
+<translation id="7814090115158024843">यी साइटहरूमा लेखाइसम्बन्धी सहायता कहिल्यै उपलब्ध नगराउनुहोस्</translation>
 <translation id="7814458197256864873">&amp;प्रतिलिपि बनाउनुहोस्</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> का लागि सर्टकट <ph name="SHORTCUT" /> बदल्नुहोस्</translation>
@@ -9266,8 +9286,10 @@
 <translation id="7974936243149753750">ओभरस्क्यान</translation>
 <translation id="7975504106303186033">तपाईंले अनिवार्य रूपमा यो Chrome Education यन्त्र कुनै शैक्षिक खातामा दर्ता गर्नु पर्छ। नयाँ खाता बनाउन कृपया g.co/workspace/edusignup मा जानुहोस्।</translation>
 <translation id="7977451675950311423">तपाईंले डेटा चोरीको घटनामा अरूले देखेका पासवर्ड प्रयोग गर्नुभयो भने यसले तपाईंलाई चेतावनी दिन्छ।</translation>
+<translation id="797824194429476746">यी ट्याबहरू यो डिभाइसमा खुलै रहने छन् तर यो समूह भने सदाका लागि मेटाइने छ।</translation>
 <translation id="7978412674231730200">निजी कुञ्जी</translation>
 <translation id="7978450511781612192">यस कार्यले तपाईंलाई आफ्ना Google खाताहरूबाट साइन आउट गराउने छ। तपाईंका पुस्तक चिन्ह, इतिहास, पासवर्ड र अन्य सेटिङहरू अब उप्रान्त सिंक‍ हुने छैनन्।</translation>
+<translation id="7980066177668669492">Base64-मा इन्कोड गरिएको ASCII, एकभन्दा बढी प्रमाणपत्रहरू</translation>
 <translation id="7980084013673500153">सम्पत्ति ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" /> मा साइन इन गर्न सेभ गरिएको कुनै पासकी प्रयोग गर्नुहोस्</translation>
 <translation id="7981662863948574132">डिभाइसको EID नम्बर र QR कोड पपअप देखाउनुहोस्</translation>
@@ -9679,6 +9701,7 @@
 <translation id="8276242035951017580">कुनै पनि एपलाई तपाईंको क्यामेरा प्रयोग गर्ने अनुमति दिइएको छैन</translation>
 <translation id="8276560076771292512">क्यास खालि गर्नुहोस् र हार्ड पुन: लोड गर्नुहोस्</translation>
 <translation id="8276850948802942358">साइटलाई तेस्रो पक्षीय कुकीहरू प्रयोग गर्ने अनुमति दिने तरिकाका बारेमा थप जान्नुहोस्</translation>
+<translation id="8277907305629781277">तपाईंले <ph name="DATE" /> मा यो पासकी बनाउनुभयो</translation>
 <translation id="8280267190418431666">तपाईंका भाषामा उपलब्ध वेबसाइटहरू</translation>
 <translation id="828180235270931531">उपलब्ध अन्य प्रिन्टरहरू</translation>
 <translation id="8281886186245836920">स्किप गर्नुहोस्</translation>
@@ -10357,7 +10380,6 @@
 <translation id="8784626084144195648">भाँडोको औसत</translation>
 <translation id="8785622406424941542">स्टाइलस</translation>
 <translation id="8786824282808281903">तपाईंका बच्चाले यो आइकन देख्दा पहिचान पुष्टि गर्न वा खरिद अनुमोदन गर्न फिंगरप्रिन्ट प्रयोग गर्न सकिन्छ।</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{नाम नभएको समूह - १ ट्याब}other{नाम नभएको समूह - # वटा ट्याब}}</translation>
 <translation id="8787752878731558379">हामीलाई तपाईंले किन तेस्रो पक्षीय कुकीहरू प्रयोग गर्ने अनुमति दिनुभयो भन्ने कुराका बारेमा बताएर Chrome को गुणस्तर सुधार गर्न सघाउनुहोस्</translation>
 <translation id="8789898473175677810">Chrome क्रस-साइट ट्र्याकिङ कम गर्ने र तेस्रो पक्षीय कुकीहरूको प्रयोग बन्द गर्ने <ph name="LINK_BEGIN" />सहकार्यात्मक प्रयास<ph name="LINK_END" />को अंश हो। तर कयौँ साइटहरूले डिजाइन गरिएअनुसार काम गर्ने प्रयोजनका लागि तेस्रो पक्षीय कुकीहरू प्रयोग गर्ने भएकाले हामी जिम्मेवार भएर त्यसो गर्न प्रयासरत छौँ। जस्तै, कयौँ साइटहरूले साइन इन गर्ने प्रक्रिया सरल बनाउन, इम्बेड गरिएको च्याट र कमेन्ट गर्ने सिस्टम उपलब्ध गराउन र भुक्तानी सेवाहरूका लागि तेस्रो पक्षीय कुकीहरू प्रयोग गर्छन्। साथै, विज्ञापनदाताहरूले प्रायः विज्ञापन अझ राम्रोसँग पर्सनलाइज गर्ने प्रयोजनका लागि तेस्रो पक्षीय कुकीहरू प्रयोग गर्छन्। साइटहरू प्रायः निःशुल्क रूपमा खर्च भुक्तानी गर्न र आफ्ना अनलाइन सामग्री राख्नका निम्ति विज्ञापनहरूमा भर पर्ने भएकाले उक्त कुरा महत्त्वपूर्ण हुन्छ।</translation>
 <translation id="8791157330927639737">अपडेट गर्ने सम्बन्धमा थप जान्नुहोस्</translation>
@@ -10592,6 +10614,7 @@
 <translation id="8962863356073277855">URL को फर्म्याट https://www.example.com हुनु पर्छ</translation>
 <translation id="8962918469425892674">यो साइटले चाल वा प्रकाशसम्बन्धी सेन्सरहरू प्रयोग गर्दै छ।</translation>
 <translation id="8963117664422609631">साइटका सेटिङमा जानुहोस्</translation>
+<translation id="8964795217937248330">ट्याब(हरू) बन्द गर्ने र समूह मेटाउने हो?</translation>
 <translation id="8965037249707889821">पुरानो पासवर्ड प्रविष्टि गर्नुहोस्</translation>
 <translation id="8966809848145604011">अन्य प्रोफाइलहरू</translation>
 <translation id="8967427617812342790">पाठ्य सूचीमा थप्नुहोस्</translation>
@@ -11025,6 +11048,7 @@
 <translation id="979345485590886759">साइटहरूले माउसको पोइन्टर लक गर्ने अनुमति माग्न सक्छन्</translation>
 <translation id="980731642137034229">कारबाहीको मेनु नामक बटन</translation>
 <translation id="981121421437150478">अफलाइन</translation>
+<translation id="98235653036850093">नमस्ते, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">सबै ट्याबहरू बन्द गर्नुहोस्</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - क्यामेरा र माइक्रोफोनले रेकर्ड गरिरहेका छन्</translation>
 <translation id="984275831282074731">भुक्तानी विधिहरू</translation>
diff --git a/chrome/app/resources/generated_resources_nl.xtb b/chrome/app/resources/generated_resources_nl.xtb
index 5fd67c2a..dd6308f 100644
--- a/chrome/app/resources/generated_resources_nl.xtb
+++ b/chrome/app/resources/generated_resources_nl.xtb
@@ -4068,7 +4068,6 @@
 <translation id="3983586614702900908">apparaten van een onbekende leverancier</translation>
 <translation id="3983764759749072418">Play Store-apps hebben toegang tot dit apparaat.</translation>
 <translation id="3983769721878416534">Vertraging vóór klikken</translation>
-<translation id="3983793589497399077">Klik of sleep ergens om te zoeken met Lens</translation>
 <translation id="3984135167056005094">E-mailadres niet opnemen</translation>
 <translation id="3984159763196946143">Kan demomodus niet starten</translation>
 <translation id="3984431586879874039">Deze site toestaan je beveiligingssleutel te bekijken?</translation>
@@ -7164,7 +7163,6 @@
 <translation id="6383382161803538830">De leesmodus is niet beschikbaar op deze pagina</translation>
 <translation id="638418309848716977">Ondersteunde links</translation>
 <translation id="6384275966486438344">Je zoekinstellingen wijzigen in: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Naamloze groep - 1 tabblad}other{Naamloze groep - # tabbladen}}</translation>
 <translation id="6385149369087767061">Maak verbinding met internet en probeer het opnieuw</translation>
 <translation id="6385382178401976503">Kaart <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Waarschuwing: Gedetailleerde logboekregistratie staat aan. De onderstaande logboeken kunnen URL's of andere gevoelige informatie bevatten. Check de informatie om te zien of je akkoord gaat met het indienen van deze informatie.</translation>
@@ -10379,7 +10377,6 @@
 <translation id="8784626084144195648">Gemiddelde van gegroepeerde gegevens</translation>
 <translation id="8785622406424941542">Stylus</translation>
 <translation id="8786824282808281903">Als je kind dit icoon ziet, kan er een vingerafdruk worden gebruikt voor identificatie of om aankopen goed te keuren.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Naamloze groep - 1 tabblad}other{Naamloze groep - # tabbladen}}</translation>
 <translation id="8787752878731558379">Help ons Chrome te verbeteren door ons te vertellen waarom je cookies van derden hebt toegestaan</translation>
 <translation id="8789898473175677810">Chrome neemt deel aan een <ph name="LINK_BEGIN" />gezamenlijke inspanning<ph name="LINK_END" /> om cross-site tracking te verminderen en het gebruik van cookies van derden uit te faseren. Maar we proberen dit op een verantwoorde manier te doen, omdat veel sites cookies van derden afhankelijk zijn van de werking van cookies van derden zoals ze zijn bedoeld. Veel sites gebruiken bijvoorbeeld cookies van derden om het inloggen makkelijker te maken, voor ingesloten chat- en reactiesystemen en voor betalingsservices. En adverteerders gebruiken vaak cookies van derden om advertenties beter te personaliseren. Dit is belangrijk omdat sites vaak op advertenties vertrouwen om onkosten te betalen en hun online content kosteloos te houden.</translation>
 <translation id="8791157330927639737">Meer informatie over updaten</translation>
diff --git a/chrome/app/resources/generated_resources_no.xtb b/chrome/app/resources/generated_resources_no.xtb
index 4aaedf9..38c1572c 100644
--- a/chrome/app/resources/generated_resources_no.xtb
+++ b/chrome/app/resources/generated_resources_no.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux har kanskje ikke nok diskplass. Du kan øke Linux-diskplassen og prøve å gjenopprette igjen i <ph name="LINK_START" />Innstillinger<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Moderat</translation>
 <translation id="126156426083987769">Det oppsto et problem med enhetslisenser i demomodus.</translation>
+<translation id="1261885284931493480">Vil du fjerne fanen(e) og slette gruppen?</translation>
 <translation id="1263231323834454256">Leseliste</translation>
 <translation id="1263733306853729545">Bruk tastene <ph name="MINUS" /> og <ph name="EQUAL" /> for å paginere en kandidatliste</translation>
 <translation id="126387934568812801">Inkluder denne skjermdumpen og titlene på åpne faner</translation>
@@ -874,6 +875,7 @@
 <translation id="1634224622052500893">Fant et wifi-nettverk</translation>
 <translation id="1634783886312010422">Har du allerede endret dette passordet på <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Velkommen, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Appdata kan være alle slags data som er lagret i en app (basert på utviklerinnstillingene), inkludert data som kontakter, meldinger og bilder. De sikkerhetskopierte dataene teller ikke med i Disk-lagringskvoten din.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Du kan slå av denne tjenesten i innstillingene.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Få dette bokmerket på iPhone</translation>
@@ -910,6 +912,7 @@
 <translation id="1652862280638399816">For å bruke Passordlagring med macOS-nøkkelring, start Chromium på nytt og gi tilgang til Nøkkelring. Fanene dine åpnes på nytt når du starter på nytt.</translation>
 <translation id="1653958716132599769">Grupper relaterte faner</translation>
 <translation id="1654580009054503925">Ikke tillatt å vise forespørsler</translation>
+<translation id="1654713139320245449">Fant ingen enheter å caste til. Trenger du hjelp?</translation>
 <translation id="1656528038316521561">Bakgrunnsopasitet</translation>
 <translation id="1657406563541664238">Bidra til å gjøre <ph name="PRODUCT_NAME" /> bedre ved å sende brukerstatistikk og programstopprapporter til Google automatisk</translation>
 <translation id="1657937299377480641">For å logge på igjen for tilgang til læringsressurser, be en forelder om å gi deg tillatelse</translation>
@@ -1636,12 +1639,14 @@
 <translation id="2187895286714876935">Feil ved import av tjenersertifikat</translation>
 <translation id="2187906491731510095">Utvidelser er oppdatert</translation>
 <translation id="2188881192257509750">Åpne <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Vil du slette fanegruppen?</translation>
 <translation id="2190069059097339078">WiFi Credentials Getter</translation>
 <translation id="219008588003277019">Native Client-modul: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(tom)</translation>
 <translation id="2190967441465539539">Har ikke tilgang til kameraet og mikrofonen</translation>
 <translation id="2191754378957563929">På</translation>
 <translation id="2192505247865591433">Fra:</translation>
+<translation id="219283042927675668">Faner i gruppen</translation>
 <translation id="2193365732679659387">Klareringsinnstillinger</translation>
 <translation id="2194856509914051091">Ting å tenke på</translation>
 <translation id="2195331105963583686">Du kan fortsette å bruke <ph name="DEVICE_TYPE" />-enheten etter dette tidspunktet, men den kommer ikke til å få automatiske programvare- og sikkerhetsoppdateringer lenger</translation>
@@ -1865,6 +1870,7 @@
 <translation id="2350133097354918058">Lastet inn på nytt</translation>
 <translation id="2350182423316644347">Appen startes opp …</translation>
 <translation id="235028206512346451">Hvis du beveger deg bort fra enheten, låses skjermen automatisk. Når du er foran enheten, holder skjermen seg ulåst lenger. Hvis du ikke bruker en låseskjerm, går enheten over i hvilemodus i stedet for å bli låst.</translation>
+<translation id="2352305801620974284">Når du logger på med denne enheten, får du passordene dine med mer fra Google-kontoen din</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Notater på låseskjermen lagres automatisk i <ph name="LOCK_SCREEN_APP_NAME" />. Det nyeste notatet ditt forblir på låseskjermen.</translation>
 <translation id="2353297238722298836">Kameraet og mikrofonen er tillatt</translation>
@@ -2075,6 +2081,7 @@
 <translation id="249113932447298600">Beklager, men enheten <ph name="DEVICE_LABEL" /> støttes foreløpig ikke.</translation>
 <translation id="2491587035099903063">forhåndslytt til stemmen for <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Forbereder forespørsel om sertifikatsignering</translation>
+<translation id="2492964937550251173">Vil du lukke fanen(e) og slette gruppen?</translation>
 <translation id="249330843868392562">Åpne innstillinger for tekst til tale</translation>
 <translation id="2494555621641843783">Kan ikke installere Steam</translation>
 <translation id="2495141202137516054">Fra Disk</translation>
@@ -2244,6 +2251,7 @@
 <translation id="262087792756666314">Du kan feste denne funksjonen for enkel tilgang. Klikk på Fest-knappen øverst i sidepanelet.</translation>
 <translation id="2620900772667816510">Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Tren stemmemodellen for Google-assistenten</translation>
+<translation id="2622280935687585828">Fjern <ph name="SITE_NAME" /> fra deaktiverte nettsteder</translation>
 <translation id="26224892172169984">Ikke tillat noen nettsteder å behandle protokoller</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Kontroll og omprogrammering av MIDI-enheter er tillatt</translation>
@@ -2417,6 +2425,7 @@
 <translation id="2743387203779672305">Kopiér til utklippstavlen</translation>
 <translation id="274362947316498129">En app prøver å få tilgang til <ph name="DEVICE_NAME" />. Slå av personvernbryteren for <ph name="DEVICE_NAME" /> for å gi tilgang.</translation>
 <translation id="2745080116229976798">Microsoft kvalifisert underordning</translation>
+<translation id="2747853844543618313">Sørg for å godta cast-forespørselen på <ph name="DEVICE_NAME" /></translation>
 <translation id="2749756011735116528">Logg på <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM-kort</translation>
 <translation id="2749881179542288782">Kontroller·grammatikk·og·staving</translation>
@@ -2787,6 +2796,7 @@
 <translation id="3021066826692793094">Sommerfugl</translation>
 <translation id="3021678814754966447">&amp;Vis rammekilde</translation>
 <translation id="3021902017511220299">Skanningen mislyktes. Administratoren din har blokkert denne handlingen.</translation>
+<translation id="3022068420678496307">Dette sletter gruppen fra alle enheter som er logget på Chrome med denne Google-kontoen.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> blir fjernet fra denne Chromebooken og blir ikke lagret i <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Det skjønte jeg ikke.</translation>
 <translation id="3023464535986383522">Tekstopplesing</translation>
@@ -4064,7 +4074,6 @@
 <translation id="3983586614702900908">enheter fra en ukjent leverandør</translation>
 <translation id="3983764759749072418">Play Butikk-apper har tilgang til denne enheten.</translation>
 <translation id="3983769721878416534">Forsinkelse før klikk</translation>
-<translation id="3983793589497399077">Klikk eller dra hvor som helst for å søke med Lens</translation>
 <translation id="3984135167056005094">Ikke inkluder e-postadressen</translation>
 <translation id="3984159763196946143">Kan ikke starte demomodus</translation>
 <translation id="3984431586879874039">Vil du la dette nettstedet se sikkerhetsnøkkelen din?</translation>
@@ -4187,6 +4196,7 @@
 <translation id="4078903002989614318">Sorterings- og listealternativer</translation>
 <translation id="4079140982534148664">Bruk forbedret stavekontroll</translation>
 <translation id="4082333918978320301">Ingen nettsteder har lov til å bruke mikrofonen din</translation>
+<translation id="4083735423615351075">Fanene forblir åpne på denne enheten, men gruppen blir slettet fra alle enheter som er logget på Chrome med denne Google-kontoen.</translation>
 <translation id="4084682180776658562">Legg til bokmerke</translation>
 <translation id="4084835346725913160">Lukk <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">JavaScript er blokkert på siden.</translation>
@@ -4196,6 +4206,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Vis til høyre</translation>
+<translation id="4088879333319441249">Vil du oppheve fanegruppen?</translation>
 <translation id="4089235344645910861">Innstillingene er lagret. Synkronisering er startet.</translation>
 <translation id="4089817585533500276">Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Slå på Bekreftet tilgang</translation>
@@ -5677,6 +5688,7 @@
 <translation id="5242724311594467048">Vil du aktivere «<ph name="EXTENSION_NAME" />»?</translation>
 <translation id="5243522832766285132">Prøv på nytt om en liten stund</translation>
 <translation id="5244234799035360187">Nå kommer OneDrive til å vises i Filer-appen</translation>
+<translation id="5244466461749935369">Behold inntil videre</translation>
 <translation id="5244474230056479698">Synkroniserer til <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Kom i gang med en skolekonto</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> har krasjet. Klikk på denne ballongen for å starten programmet på nytt.</translation>
@@ -5944,6 +5956,7 @@
 <translation id="5453829744223920473">Barnet ditt kan bruke alle skoleappene, bokmerkene og ressursene sine på samme måte som i klasserommet. Skolen fastsetter grunnreglene.</translation>
 <translation id="5454166040603940656">med <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Se flere søkeresultater</translation>
+<translation id="5457082343331641453">Legg til i søket</translation>
 <translation id="5457113250005438886">Ugyldig</translation>
 <translation id="5457459357461771897">lese og slette bilder, musikk og andre medier fra datamaskinen din</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6421,6 +6434,7 @@
 <translation id="5816434091619127343">De forespurte skriverendringene gjør at du ikke kan bruke skriveren.</translation>
 <translation id="581659025233126501">Slå på synkronisering</translation>
 <translation id="5817918615728894473">Koble sammen</translation>
+<translation id="5817963443108180228">Velkommen tilbake, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">alle programmer</translation>
 <translation id="5821565227679781414">Opprett snarvei</translation>
 <translation id="5824976764713185207">Les siden automatisk når den er ferdig lastet inn</translation>
@@ -7021,6 +7035,7 @@
 <translation id="6265159465845424232">Spør før Microsoft-filer flyttes eller kopieres til Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Fjern porten</translation>
 <translation id="6266532094411434237">Kobler til <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Tilpass profil</translation>
 <translation id="6267166720438879315">Velg sertifikat for å autentisere deg selv til <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Åpne med <ph name="APP" /></translation>
 <translation id="6270309713620950855">Påminnelse om at mikrofonen er av</translation>
@@ -7159,7 +7174,6 @@
 <translation id="6383382161803538830">Lesemodus er ikke tilgjengelig på denne siden</translation>
 <translation id="638418309848716977">Støttede linker</translation>
 <translation id="6384275966486438344">endre søkeinnstillingene dine til: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Gruppe uten navn – 1 fane}other{Gruppe uten navn – # faner}}</translation>
 <translation id="6385149369087767061">Koble til internett og prøv på nytt</translation>
 <translation id="6385382178401976503">Kort: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Advarsel – Detaljert loggføring er slått på. Loggene nedenfor kan inneholde nettadresser eller annen sensitiv informasjon. Gjennomgå informasjonen og sjekk at du er villig til å sende den inn.</translation>
@@ -7238,6 +7252,7 @@
 <translation id="6445450263907939268">Hvis du ikke ønsker disse endringene, kan du gjenopprette de tidligere innstillingene dine.</translation>
 <translation id="6446213738085045933">Opprett skrivebordssnarvei</translation>
 <translation id="6447842834002726250">Informasjonskapsler</translation>
+<translation id="6449554712554071184">Dette sletter gruppen fra enheten permanent.</translation>
 <translation id="6450876761651513209">Endre innstillingene dine for personvern</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> og 1 fane til}other{<ph name="PAGE_TITLE" /> og # faner til}}</translation>
 <translation id="6451689256222386810">Hvis du har glemt passordfrasen din eller vil endre denne innstillingen, må du <ph name="BEGIN_LINK" />tilbakestille synkroniseringen<ph name="END_LINK" />.</translation>
@@ -7384,6 +7399,7 @@
 <translation id="6556866813142980365">Gjør om</translation>
 <translation id="6556903358015358733">Tema og bakgrunn</translation>
 <translation id="6557290421156335491">Mine snarveier</translation>
+<translation id="6560061709899140565">Vis andre cast-økter</translation>
 <translation id="6560151649238390891">Forslaget er satt inn</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Lagre systemlogger i Nedlastinger-katalogen.</translation>
@@ -7473,6 +7489,7 @@
 <translation id="6635674640674343739">Det kan ikke opprettes noen nettverkstilkobling. Kontroller nettverkstilkoblingen og prøv på nytt.</translation>
 <translation id="663569763553406962">Se hvilke utvidelser som kan lese eller endre nettsteder</translation>
 <translation id="6635944431854494329">Eieren kan styre denne funksjonen under Innstillinger &gt; Avansert &gt; Send diagnostikk og bruksdata til Google automatisk.</translation>
+<translation id="6636572589916466933">Godta cast-forespørselen på <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Utforsk flere innstillinger nedenfor, eller fullfør nå</translation>
 <translation id="6639554308659482635">SQLite-minne</translation>
 <translation id="6640268266988685324">Åpne fane</translation>
@@ -8158,6 +8175,7 @@
 <translation id="715396040729904728">Appoversikt-tasten + Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Del tilbakemeldingen eller beskriv problemet. Ta med en fremgangsmåte for å gjenskape problemet om mulig.</translation>
 <translation id="7154130902455071009">endre startsiden din til: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Få video med bedre kvalitet, og spar batteri. Videoen spilles kun av på den Cast-kompatible skjermen.</translation>
 <translation id="7159953856712257647">Installert som standard</translation>
 <translation id="7160182524506337403">Nå kan du se varsler på telefonen</translation>
 <translation id="7165263843655074092">Du får standard sikkerhetsbeskyttelse på denne enheten</translation>
@@ -9016,6 +9034,7 @@
 <translation id="7788948939674438635">Ikke la nettsteder låse tastaturet ditt</translation>
 <translation id="7789963078219276159">Bakgrunnen for startsiden er endret til <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">OCR for PDF-filer</translation>
+<translation id="7790737481627460475">Filer på denne Chromebooken</translation>
 <translation id="7791269138074599214">Inndatametode</translation>
 <translation id="7791429245559955092">Denne appen installeres i Chrome-profilen du bruker nå</translation>
 <translation id="7791436592012979144">Omvendt rulling er aktivert</translation>
@@ -9045,6 +9064,7 @@
 <translation id="7810202088502699111">Forgrunnsvinduer er blokkert på siden.</translation>
 <translation id="7810367892333449285">Oppføringen må ha formatet <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+-adresse<ph name="LPA_2" />$<ph name="LPA_3" />valgfri samsvars-ID<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Prøv på nytt, eller velg ett av temaene som ble generert tidligere nedenfor.</translation>
+<translation id="7814090115158024843">Tilby aldri skrivehjelp på disse nettstedene</translation>
 <translation id="7814458197256864873">&amp;Kopier</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Endre snarveien <ph name="SHORTCUT" /> for <ph name="EXTENSION_NAME" /></translation>
@@ -9276,8 +9296,10 @@
 <translation id="7974936243149753750">Overskanning</translation>
 <translation id="7975504106303186033">Du må registrere denne Chrome Education-enheten på en utdanningskonto. For å registrere en ny konto, gå til g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Advarer deg hvis du bruker passord som er utsatt for databrudd.</translation>
+<translation id="797824194429476746">Fanene fortsetter å være åpne på denne enheten, men gruppen slettes permanent.</translation>
 <translation id="7978412674231730200">Privatnøkkel</translation>
 <translation id="7978450511781612192">Dette logger deg av Google-kontoene dine. Bokmerkene dine, loggen din, passordene dine med mer blir ikke lenger synkronisert.</translation>
+<translation id="7980066177668669492">Base64-kodet ASCII, flere sertifikater</translation>
 <translation id="7980084013673500153">Ressurs-ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Bruk en lagret passnøkkel for <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Vis forgrunnsvindu med enhetens EID-nummer og QR-kode</translation>
@@ -9690,6 +9712,7 @@
 <translation id="8276242035951017580">Ingen apper har tillatelse til å bruke kameraet</translation>
 <translation id="8276560076771292512">Tøm bufferen og kjør en hard nyinnlasting</translation>
 <translation id="8276850948802942358">Finn ut mer om hvordan du gir nettsteder midlertidig tillatelse til å bruke informasjonskapsler fra tredjeparter</translation>
+<translation id="8277907305629781277">Du opprettet denne passnøkkelen <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Nettsteder på språkene dine</translation>
 <translation id="828180235270931531">Andre tilgjengelige skrivere</translation>
 <translation id="8281886186245836920">Hopp over</translation>
@@ -10368,7 +10391,6 @@
 <translation id="8784626084144195648">Gjennomsnitt av grupperte data</translation>
 <translation id="8785622406424941542">Pekepenn</translation>
 <translation id="8786824282808281903">Når barnet ser dette ikonet, kan barnet bruke fingeravtrykket sitt til å identifisere seg eller godkjenne kjøp.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Gruppe uten navn – 1 fane}other{Gruppe uten navn – # faner}}</translation>
 <translation id="8787752878731558379">Hjelp oss med å forbedre Chrome ved å fortelle oss hvorfor du tillot informasjonskapsler fra tredjeparter</translation>
 <translation id="8789898473175677810">Chrome er en del av et <ph name="LINK_BEGIN" />samarbeid<ph name="LINK_END" /> for å redusere sporing mellom nettsteder og fase ut bruken av informasjonskapsler fra tredjeparter. Men vi prøver å gjøre det på en ansvarlig måte, siden mange nettsteder er avhengige av informasjonskapsler fra tredjeparter for å fungere som de skal. Mange nettsteder bruker informasjonskapsler fra tredjeparter for eksempel for å forenkle pålogging, for å drive innebygde chat- og kommentarsystemer og til betalingstjenester. Og annonsører bruker ofte informasjonskapsler fra tredjeparter for å levere personlig tilpassede annonser. Dette er viktig, siden nettsteder ofte avhenger av annonser for å dekke utgiftene og holde innholdet sitt kostnadsfritt tilgjengelig på nett.</translation>
 <translation id="8791157330927639737">Finn ut mer om oppdatering</translation>
@@ -10603,6 +10625,7 @@
 <translation id="8962863356073277855">Nettadresseformatet skal være https://www.example.com</translation>
 <translation id="8962918469425892674">Dette nettstedet bruker bevegelses- eller lyssensorer.</translation>
 <translation id="8963117664422609631">Gå til nettstedsinnstillingene</translation>
+<translation id="8964795217937248330">Vil du lukke fanen(e) og slette gruppen?</translation>
 <translation id="8965037249707889821">Skriv inn det gamle passordet</translation>
 <translation id="8966809848145604011">Andre profiler</translation>
 <translation id="8967427617812342790">Legg til på leselisten</translation>
@@ -11036,6 +11059,7 @@
 <translation id="979345485590886759">Nettsteder kan be om å få låse musepekeren din</translation>
 <translation id="980731642137034229">Handlingsmenyknapp</translation>
 <translation id="981121421437150478">Uten nett</translation>
+<translation id="98235653036850093">Hei, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Lukk alle faner</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – kamera- og mikrofonopptak</translation>
 <translation id="984275831282074731">Betalingsmåter</translation>
diff --git a/chrome/app/resources/generated_resources_or.xtb b/chrome/app/resources/generated_resources_or.xtb
index 3b8fbe7..3fb41339 100644
--- a/chrome/app/resources/generated_resources_or.xtb
+++ b/chrome/app/resources/generated_resources_or.xtb
@@ -1653,6 +1653,7 @@
 <translation id="2211043920024403606">ପ୍ରୋଫାଇଲ ସୂଚନା</translation>
 <translation id="2211245494465528624">ସିଙ୍କ ବିକଳ୍ପଗୁଡ଼ିକୁ ପରିଚାଳନା କରନ୍ତୁ</translation>
 <translation id="221297410904507041">ଇତିହାସ, କୁକିଜ, କେଶେ ଏବଂ ଆହୁରି ଅନେକ କିଛି ଡିଲିଟ କରନ୍ତୁ</translation>
+<translation id="2213410656650624348">ମଧ୍ୟମ</translation>
 <translation id="2214018885812055163">ସେୟାର୍ ହୋଇଥିବା ଫୋଲ୍ଡର୍‌ଗୁଡ଼ିକ</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1ଟି ପଂକ୍ତି ଦର୍ଶାଯାଇନାହିଁ&gt;}other{&lt;<ph name="NUMBER_OF_LINES" />ଟି ପଂକ୍ତି ଦର୍ଶାଯାଇନାହିଁ&gt;}}</translation>
 <translation id="2215070081105889450">ଅଡିଓ ସେୟାର କରିବାକୁ, ଏହା ପରିବର୍ତ୍ତ ଏକ ଟାବ କିମ୍ବା ସ୍କ୍ରିନ ସେୟାର କରନ୍ତୁ</translation>
@@ -2033,6 +2034,7 @@
 <translation id="2473195200299095979">ଏହି ପୃଷ୍ଠା ଅନୁବାଦ କରନ୍ତୁ</translation>
 <translation id="2475982808118771221">ଏକ ତ୍ରୁଟି ଦେଖାଦେଲା</translation>
 <translation id="247616523300581745">ଏହି ଫାଇଲଗୁଡ଼ିକୁ ଲୁଚାନ୍ତୁ</translation>
+<translation id="2476435723907345463">ପାସକୀ ଆକ୍ସେସକୁ କାଢ଼ି ଦିଆଯାଇଛି</translation>
 <translation id="2476901513051581836">ଅଫଲାଇନ ଷ୍ଟୋରେଜ ସାଇଜ ଅଜଣା ଥିବା ପର୍ଯ୍ୟନ୍ତ ଷ୍ଟୋରେଜ ଖାଲି କରାଯାଇପାରିବ ନାହିଁ।</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" /> ଅନଇନଷ୍ଟଲ୍ କରିବାକୁ Windows ବନ୍ଦ କରନ୍ତୁ।</translation>
 <translation id="2477065602824695373">ଆପଣ ଏକାଧିକ ସ୍ୱିଚ ସେଟ ଅପ କରିଥିବା ଯୋଗୁଁ, ସ୍ୱଚାଳିତ-ସ୍କାନକୁ ବନ୍ଦ କରାଯାଇଛି।</translation>
@@ -2227,6 +2229,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> ସୁରକ୍ଷିତ ରୂପେ ଡାଉନ୍ ଲୋଡ୍ କରାଯାଇପାରିବ ନାହିଁ।</translation>
 <translation id="2620245777360407679">ଡିଭାଇସଗୁଡ଼ିକ ବର୍ତ୍ତମାନ ହଟସ୍ପଟ ସହ କନେକ୍ଟ କରାଯାଇଛି</translation>
 <translation id="2620436844016719705">ସିଷ୍ଟମ୍‌</translation>
+<translation id="262087792756666314">ସହଜରେ ଆକ୍ସେସ କରିବା ପାଇଁ ଆପଣ ଏହି ଫିଚରକୁ ପିନ କରିପାରିବେ; ସାଇଡ ପେନେଲର ଶୀର୍ଷରେ ଥିବା 'ପିନ କରନ୍ତୁ' ବଟନରେ କ୍ଲିକ କରିପାରିବେ</translation>
 <translation id="2620900772667816510">ବ୍ଲୁଟୁଥ ସୁପର ରିଜୋଲ୍ୟୁସନ</translation>
 <translation id="262154978979441594">Google Assistant ଭଏସ୍ ମୋଡେଲକୁ ତାଲିମ ଦିଅନ୍ତୁ</translation>
 <translation id="26224892172169984">ପ୍ରୋଟୋକଲ୍ ପରିଚାଳନା କରିବାକୁ କୌଣସି ସାଇଟ୍‌କୁ ଅନୁମତି ଦିଅନ୍ତୁ ନାହିଁ</translation>
@@ -3002,6 +3005,7 @@
 <translation id="3222066309010235055">ପୂର୍ବପ୍ରସ୍ତୁତି: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989"><ph name="USB_VM_NAME" />ରେ ସଂଯୋଗ କରନ୍ତୁ</translation>
 <translation id="3222857603094643834">Google Lens ମାଧ୍ୟମରେ ଏହି ପୃଷ୍ଠାରେ କିଛି ବି ସର୍ଚ୍ଚ କରନ୍ତୁ</translation>
+<translation id="3223109931751684474">ଏହି ଡିଭାଇସରେ ଥିବା ଆପଣଙ୍କ ପାସକୀକୁ ଆକ୍ସେସ କାଢ଼ି ଦିଅନ୍ତୁ</translation>
 <translation id="3223531857777746191">ବଟନ୍‌କୁ ରିସେଟ୍ କରନ୍ତୁ</translation>
 <translation id="3225084153129302039">ଡିଫଲ୍ଟ ପର୍ପଲ୍ ଅବତାର</translation>
 <translation id="3225319735946384299">କୋଡ୍‌ ହସ୍ତାକ୍ଷର</translation>
@@ -3326,6 +3330,7 @@
 <translation id="3473479545200714844">ସ୍କ୍ରିନ୍ ମ୍ୟାଗ୍ନିଫାୟର୍</translation>
 <translation id="3474218480460386727">ନୂଆ ଶବ୍ଦଗୁଡ଼ିକ ପାଇଁ 99ଟି କିମ୍ବା ତା'ଠାରୁ କମ୍ ଅକ୍ଷର ବ୍ୟବହାର କରନ୍ତୁ</translation>
 <translation id="3474624961160222204"><ph name="NAME" /> ଭାବେ ଜାରି ରଖନ୍ତୁ</translation>
+<translation id="3477772589943384839">ମଧ୍ୟମ ଧରଣର ମେମୋରୀ ସେଭିଂସ ପାଆନ୍ତୁ। ଏକ ଦୀର୍ଘ ସମୟ ଅବଧି ପରେ ଆପଣଙ୍କ ଟାବଗୁଡ଼ିକ ନିଷ୍କ୍ରିୟ ହୋଇଯାଏ।</translation>
 <translation id="347785443197175480"><ph name="HOST" />କୁ ଆପଣଙ୍କର କ୍ୟାମେରା ଏବଂ ମାଇକ୍ରୋଫୋନ୍ ଆକ୍‌ସେସ୍ କରିବାକୁ ଅନୁମତି ଦେବା ଜାରି ରଖନ୍ତୁ</translation>
 <translation id="3479357084663933762">ଡ୍ୟୁଟେରାନୋମାଲି</translation>
 <translation id="3479552764303398839">ଏବେ ନୁହେଁ</translation>
@@ -4048,7 +4053,6 @@
 <translation id="3983586614702900908">କୌଣସି ଅଜଣା ବିକ୍ରେତାଙ୍କ ଠାରୁ ଡିଭାଇସ୍‌</translation>
 <translation id="3983764759749072418">Play Store ଆପ୍ଲିକେସନ୍‌ଗୁଡ଼ିକରେ ଏହି ଡିଭାଇସ୍‌କୁ ଆକ୍ସେସ୍ ଅଛି।</translation>
 <translation id="3983769721878416534">କ୍ଲିକ୍ ପୂର୍ବରୁ ବିଳମ୍ୱ</translation>
-<translation id="3983793589497399077">Lens ମାଧ୍ୟମରେ ସର୍ଚ୍ଚ କରିବାକୁ ଯେ କୌଣସି ସ୍ଥାନରେ କ୍ଲିକ କିମ୍ବା ଡ୍ରାଗ କରନ୍ତୁ</translation>
 <translation id="3984135167056005094">ଇମେଲ୍ ଠିକଣା ଅନ୍ତର୍ଭୁକ୍ତ କରନ୍ତୁ ନାହିଁ</translation>
 <translation id="3984159763196946143">ଡେମୋ ମୋଡ୍‌ ଆରମ୍ଭ କରିହେଲା ନାହିଁ</translation>
 <translation id="3984431586879874039">ଏହି ସାଇଟ୍‌କୁ ଆପଣଙ୍କର ସୁରକ୍ଷା କୀ' ଦେଖିବା ପାଇଁ ଅନୁମତି ଦେବେ?</translation>
@@ -4085,6 +4089,7 @@
 <translation id="4010036441048359843">ହାଇଲାଇଟ ଚାଲୁ କରନ୍ତୁ</translation>
 <translation id="4010746393007464819">Debian 12 (Bookworm)ର ଏକ ଅପଗ୍ରେଡ ଉପଲବ୍ଧ ଅଛି</translation>
 <translation id="4010917659463429001">ଆପଣଙ୍କର ମୋବାଇଲ୍‌ ଡିଭାଇସ୍‌ରେ ଆପଣଙ୍କ ବୁକ୍‍ମାର୍କଗୁଡ଼ିକ ପ୍ରାପ୍ତ କରିବାକୁ <ph name="GET_IOS_APP_LINK" />।</translation>
+<translation id="4012268176861210196">ସହଜରେ ଆକ୍ସେସ କରିବା ପାଇଁ ଆପଣ ଏହି ଫିଚରକୁ ପିନ କରିପାରିବେ</translation>
 <translation id="4014432863917027322">"<ph name="EXTENSION_NAME" />" ଅପ୍‌ଡେଟ୍ କରିବେ?</translation>
 <translation id="4015163439792426608">ଏକ୍ସଟେନ୍‍ସନ୍‍ଗୁଡ଼ିକ ପାଇଛନ୍ତି କି? ଏକ ସ୍ଥାନରୁ ସହଜରେ <ph name="BEGIN_LINK" />ଆପଣଙ୍କର ଏକ୍ସଟେନ୍‍ସନ୍‍ଗୁଡ଼ିକ ପରିଚାଳନା କରନ୍ତୁ<ph name="END_LINK" />।</translation>
 <translation id="4016762287427926315"><ph name="APP_NAME" /> ପାଇଁ ଆପଣ ଦେଇଥିବା ଅନୁମତିଗୁଡ଼ିକ ଏହି ଆପ ପାଇଁ ମଧ୍ୟ ଲାଗୁ ହେବ। <ph name="BEGIN_LINK" />ପରିଚାଳନା କରନ୍ତୁ<ph name="END_LINK" /></translation>
@@ -4388,6 +4393,7 @@
 <translation id="4261429981378979799">ଏକ୍ସଟେନସନ ଅନୁମତିଗୁଡ଼ିକ</translation>
 <translation id="4262004481148703251">ଚେତାବନୀକୁ ଖାରଜ କରନ୍ତୁ</translation>
 <translation id="4263223596040212967">ଆପଣଙ୍କର କୀବୋର୍ଡ ଲେଆଉଟ୍ ଯାଞ୍ଚ କରନ୍ତୁ ଏବଂ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।</translation>
+<translation id="4263470758446311292">ସର୍ବାଧିକ ମେମୋରୀ ସେଭିଂସ ପାଆନ୍ତୁ। ଏକ ସ୍ୱଳ୍ପ ସମୟ ଅବଧି ପରେ ଆପଣଙ୍କ ଟାବଗୁଡ଼ିକ ନିଷ୍କ୍ରିୟ ହୋଇଯାଏ।</translation>
 <translation id="4265096510956307240">ଏହା ଆପଣ ବୋଲି ଯାଞ୍ଚ କରନ୍ତୁ</translation>
 <translation id="4265301768135164545">ଆପଣ ମଧ୍ୟ ଏକ eSIM ପ୍ରୋଫାଇଲକୁ <ph name="BEGIN_LINK" />ମାନୁଆଲୀ<ph name="END_LINK" /> ସେଟ ଅପ କରିପାରିବେ</translation>
 <translation id="426564820080660648">ଅପ୍‌ଡେଟ୍‌ଗୁଡ଼ିକୁ ଯାଞ୍ଚ କରିବା ପାଇଁ, ଦୟାକରି ଇଥର୍ନେଟ, ୱାଇ-ଫାଇ କିମ୍ବା ମୋବାଇଲ୍ ଡାଟା ବ୍ୟବହାର କରନ୍ତୁ।</translation>
@@ -4707,6 +4713,7 @@
 <translation id="4503748371388753124">ଆପଣଙ୍କ କମ୍ପ୍ୟୁଟରରେ ଏକ ବିଶ୍ୱସ୍ତ ପ୍ଲାଟଫର୍ମ ମଡ୍ୟୁଲ (TPM) ସୁରକ୍ଷା ଡିଭାଇସ ଅଛି, ଯାହା ChromeOS Flexରେ ଅନେକ ଜଟିଳ ସୁରକ୍ଷା ଫିଚରକୁ ଲାଗୁ କରିବା ପାଇଁ ବ୍ୟବହୃତ ହୋଇଥାଏ। ଅଧିକ ଜାଣିବା ପାଇଁ Chromebook ସହାୟତା କେନ୍ଦ୍ର ଭିଜିଟ କରନ୍ତୁ: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{କୁକୀଗୁଡ଼ିକୁ ଅନୁମତି ଦିଆଯାଇଛି}=1{କୁକୀଗୁଡ଼ିକୁ ଅନୁମତି ଦିଆଯାଇଛି, 1ଟି ବ୍ୟତିକ୍ରମ}other{କୁକୀଗୁଡ଼ିକୁ ଅନୁମତି ଦିଆଯାଇଛି, {COUNT}ଟି ବ୍ୟତିକ୍ରମ}}</translation>
 <translation id="4504940961672722399">ଏହି ଆଇକନ୍‍ ଉପରେ କ୍ଲିକ୍‍ କରି କିମ୍ବା<ph name="EXTENSION_SHORTCUT" /> ଦବାଇ ଏହି ଏକ୍ସଟେନ୍‌ସନ୍‌କୁ ବ୍ୟବହାର କରନ୍ତୁ।</translation>
+<translation id="4505469832694348179">ଏହି QR କୋଡ ମାଧ୍ୟମରେ Chromeକୁ ଡାଉନଲୋଡ କରି ଆପଣଙ୍କ Google ଆକାଉଣ୍ଟରେ ସାଇନ ଇନ କରନ୍ତୁ।</translation>
 <translation id="450552327874992444">ଶବ୍ଦଟି ପୂର୍ବରୁ ଯୋଗ କରାଯାଇଛି</translation>
 <translation id="4507373251891673233">ଆପଣ <ph name="HOST" />ର ସମସ୍ତ ଏକ୍ସଟେନସନକୁ ବ୍ଲକ କରିଛନ୍ତି</translation>
 <translation id="4507401683427517298">“ସର୍ଟକଟ ଯୋଗ କରନ୍ତୁ”ରେ କ୍ଲିକ କରନ୍ତୁ</translation>
@@ -5042,6 +5049,7 @@
 <translation id="4768332406694066911">ଆପଣଙ୍କ ପାଖରେ ଏହି ସଂଗଠନଗୁଡ଼ିକରୁ ସାର୍ଟିଫିକେଟ୍‍ଗୁଡ଼ିକ ଅଛି ଯାହା ଆପଣଙ୍କୁ ଚିହ୍ନଟ କରିଥାଏ</translation>
 <translation id="4769632191812288342">ଆପଣ ଷ୍ଟାଣ୍ଡାର୍ଡ ସୁରକ୍ଷା ପାଉଛନ୍ତି</translation>
 <translation id="4770119228883592393">ଅନୁମତି ପାଇଁ ଅନୁରୋଧ କରାଯାଇଛି, ଉତ୍ତର ଦେବାକୁ ⌘ + Option + ଡାଉନ୍ ତୀର କୀ ଦବାନ୍ତୁ</translation>
+<translation id="4770755495532014179">ଆପଣଙ୍କ iPhoneରେ ଏହି ପାସୱାର୍ଡକୁ ବ୍ୟବହାର କରନ୍ତୁ</translation>
 <translation id="4773112038801431077">Linux ଅପଗ୍ରେଡ୍ କରନ୍ତୁ</translation>
 <translation id="477548766361111120">ଏହି ସାଇଟକୁ ପଢ଼ିବା କିମ୍ବା ଏଥିରେ ପରିବର୍ତ୍ତନ କରିବା ପାଇଁ ଏକ୍ସଟେନସନକୁ ଅନୁମତି ଦିଅନ୍ତୁ</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" />କୁ କନେକ୍ଟ କରାଯାଇଛି</translation>
@@ -5211,6 +5219,7 @@
 <translation id="4890399733764921729">କନେକ୍ଟ କରାଯାଇପାରିବ ନାହିଁ। ଅନ୍ୟ ଏକ ମୋବାଇଲ ସେବା ପ୍ରଦାନକାରୀ ଦ୍ୱାରା ଲକ କରାଯାଇଛି।</translation>
 <translation id="4890773143211625964">ଉନ୍ନତ ପ୍ରିଣ୍ଟର୍ ବିକଳ୍ପଗୁଡ଼ିକ ଦେଖାନ୍ତୁ</translation>
 <translation id="4891089016822695758">ବିଟା ଫୋରମ୍</translation>
+<translation id="4891795846939730995">ଆପଣଙ୍କ ପାସକୀଗୁଡ଼ିକୁ ପୁଣି ଏହି ଡିଭାଇସ ଆକ୍ସେସ ଦେବା ପାଇଁ ଏକ ସେଭ ହୋଇଥିବା ପାସକୀ ମାଧ୍ୟମରେ ଗୋଟିଏ ସାଇଟ କିମ୍ବା ଆପରେ ସାଇନ ଇନ କରନ୍ତୁ</translation>
 <translation id="4892229439761351791">ସାଇଟ୍ ବ୍ଲୁଟୁଥ୍ ବ୍ୟବହାର କରିପାରିବ</translation>
 <translation id="4892328231620815052">ଆପଣ ପ୍ରସ୍ତୁତ ହେଲେ, "ବୁକମାର୍କ ଏବଂ ତାଲିକାଗୁଡ଼ିକ"ରେ ଆପଣଙ୍କ ପଢ଼ିବା ତାଲିକା ପାଆନ୍ତୁ</translation>
 <translation id="489258173289528622">ବ୍ୟାଟେରୀ ଚାର୍ଜ ହେଉନଥିବା ବେଳେ ଡିଭାଇସ୍ ନିଷ୍କ୍ରିୟ ଥିବା ସମୟର ପଦକ୍ଷେପ</translation>
@@ -6438,6 +6447,7 @@
 <translation id="5846504156837627898">ସାଇଟ ଅନୁମତିଗୁଡ଼ିକୁ ପରିଚାଳନା କରନ୍ତୁ</translation>
 <translation id="5846749317653566506">ରଙ୍ଗଗୁଡ଼ିକ ସ୍ୱତନ୍ତ୍ର ବୋଲି ସୁନିଶ୍ଚିତ କରିବା ପାଇଁ ରଙ୍ଗ ସଂଶୋଧନ ସେଟିଂସକୁ ଆଡଜଷ୍ଟ କରନ୍ତୁ</translation>
 <translation id="5846807460505171493">ଅପଡେଟ୍ ଓ ଆପଗୁଡ଼ିକ ଇନଷ୍ଟଲ୍ କରନ୍ତୁ। ଜାରି ରଖି, ଏହି ଡିଭାଇସ୍ Google, ଆପଣଙ୍କ ମୋବାଇଲ୍ କମ୍ପାନୀ ଏବଂ ଆପଣଙ୍କ ଡିଭାଇସର ନିର୍ମାତା ଠାରୁ ସମ୍ଭାବିତ ରୂପେ ସେଲୁଲାର୍ ଡାଟା ବ୍ୟବହାର କରି, ସ୍ୱଚାଳିତ ଭାବେ ଅପଡେଟ୍ ଏବଂ ଆପଗୁଡ଼ିକ ମଧ୍ୟ ଡାଉନଲୋଡ୍ କରି ଇନଷ୍ଟଲ୍ କରିପାରେ ବୋଲି ଆପଣ ଗ୍ରହଣ କରନ୍ତି। ଏହି ଆପଗୁଡ଼ିକ ମଧ୍ୟରୁ କିଛି ଆପ୍ ଇନ୍-ଆପ୍ କ୍ରୟଗୁଡ଼ିକ ଅଫର୍ କରିପାରନ୍ତି।</translation>
+<translation id="5848054741303781539">ମାନୁଆଲୀ ସେଟ କରାଯାଇଛି, ଲୋକେସନ ବ୍ୟବହାର କରୁନାହିଁ</translation>
 <translation id="5848319660029558352">ରିଡ ଆଲାଉଡ ଏବଂ ଟେକ୍ସଟ ଫର୍ମାଟିଂ</translation>
 <translation id="5849212445710944278">ପୂର୍ବରୁ ଯୋଗ କରାଯାଇଛି</translation>
 <translation id="584945105664698226">ଭଏସ ସ୍ପିଡ</translation>
@@ -7135,7 +7145,6 @@
 <translation id="6383382161803538830">ଏହି ପୃଷ୍ଠାରେ ରିଡିଂ ମୋଡ ଉପଲବ୍ଧ ନାହିଁ</translation>
 <translation id="638418309848716977">ସମର୍ଥିତ ଲିଙ୍କଗୁଡ଼ିକ</translation>
 <translation id="6384275966486438344">ଆପଣଙ୍କ ସର୍ଚ୍ଚ ସେଟିଂସକୁ ଏଠାକୁ ପରିବର୍ତ୍ତନ କରନ୍ତୁ: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{ବେନାମୀ ଗୋଷ୍ଠୀ - 1ଟି ଟାବ୍}other{ବେନାମୀ ଗୋଷ୍ଠୀ - #ଟି ଟାବ୍}}</translation>
 <translation id="6385149369087767061">ଇଣ୍ଟର୍ନେଟ୍ ସହିତ ସଂଯୋଗ କରି ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ</translation>
 <translation id="6385382178401976503">କାର୍ଡ: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">ଚେତାବନୀ - ବିସ୍ତୃତ ଲଗିଂକୁ ସକ୍ଷମ କରାଯାଇଛି; ନିମ୍ନରେ ଦିଆଯାଇଥିବା ଲଗଗୁଡ଼ିକରେ URL କିମ୍ବା ଅନ୍ୟ ସମ୍ବେଦନଶୀଳ ସୂଚନା ଅନ୍ତର୍ଭୁକ୍ତ ଥାଇପାରେ। ଦୟାକରି ସମୀକ୍ଷା କରନ୍ତୁ ଏବଂ ନିଶ୍ଚିତ କରନ୍ତୁ ଯେ ଏହି ସୂଚନା ଦାଖଲ କରିବା ଆପଣଙ୍କ ପାଇଁ ସୁବିଧାଜନକ ଅଟେ।</translation>
@@ -7469,6 +7478,7 @@
 <translation id="6648911618876616409">ଇନ୍‌ଷ୍ଟଲ୍ କରିବାକୁ ଏକ ଜଟିଳ ଅପ୍‌ଡେଟ୍‌ ପ୍ରସ୍ତୁତ ଅଛି। ଆରମ୍ଭ କରିବା ପାଇଁ ସାଇନ୍-ଇନ୍ କରନ୍ତୁ।</translation>
 <translation id="6649018507441623493">ଟିକିଏ ରୁହନ୍ତୁ…</translation>
 <translation id="6650206238642452078">ChromeOS ସିଷ୍ଟମ ଇଭେଣ୍ଟଗୁଡ଼ିକର ସଦସ୍ୟତା ନିଅନ୍ତୁ</translation>
+<translation id="6650584564768559994">ବାଲାନ୍ସଡ ମେମୋରୀ ସେଭିଂସ ପାଆନ୍ତୁ। ଏକ ସର୍ବୋତ୍ତମ ସମୟ ଅବଧି ପରେ ଆପଣଙ୍କ ଟାବଗୁଡ଼ିକ ନିଷ୍କ୍ରିୟ ହୋଇଯାଏ।</translation>
 <translation id="665061930738760572">&amp;ନୂଆ ୱିଣ୍ଡୋରେ ଖୋଲନ୍ତୁ</translation>
 <translation id="6651237644330755633">ୱେବ୍‌ସାଇଟ୍‌ଗୁଡ଼ିକୁ ଚିହ୍ନଟ କରିବା ପାଇଁ ଏହି ସାର୍ଟିଫିକେଟ୍‌କୁ ବିଶ୍ଵାସ କରନ୍ତୁ</translation>
 <translation id="6651495917527016072">ଆପଣଙ୍କ ଫୋନ୍ ସହିତ ୱାଇ-ଫାଇ ନେଟୱାର୍କଗୁଡ଼ିକୁ ସିଙ୍କ୍ କରନ୍ତୁ। <ph name="LINK_BEGIN" />ଅଧିକ ଜାଣନ୍ତୁ<ph name="LINK_END" /></translation>
@@ -7726,6 +7736,7 @@
 <translation id="6831043979455480757">Translate</translation>
 <translation id="6832218595502288407">ବାମକୁ ଆଲାଇନ କରନ୍ତୁ</translation>
 <translation id="6833479554815567477"><ph name="GROUP_NAME" /> ଗୋଷ୍ଠୀରୁ ଟାବ୍ କାଢ଼ି ଦିଆଯାଇଛି - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">ବାଲାନ୍ସଡ (ସୁପାରିଶ କରାଯାଇଛି)</translation>
 <translation id="6835762382653651563">ଆପଣଙ୍କର <ph name="DEVICE_TYPE" />କୁ ଅପ୍‌ଡେଟ୍ କରିବା ପାଇଁ ଦୟାକରି ଇର୍ଣ୍ଟନେଟ୍ ସହ ସଂଯୋଗ କରନ୍ତୁ।</translation>
 <translation id="683630338945552556">ଆପଣଙ୍କ Google ଆକାଉଣ୍ଟରୁ ପାସୱାର୍ଡଗୁଡ଼ିକୁ ବ୍ୟବହାର କରି ସେଥିରେ ସେଭ କରନ୍ତୁ</translation>
 <translation id="6839225236531462745">ସାର୍ଟିଫିକେଟ୍‌ ଡିଲିଟ୍ କରିବା ପ୍ରକ୍ରିୟାରେ ତ୍ରୁଟି</translation>
@@ -9374,6 +9385,7 @@
 <translation id="8066444921260601116">ସଂଯୋଗ ସମ୍ବନ୍ଧିତ ଡାଏଲଗ୍</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> ଲୋକେସନ ଅନୁମତି</translation>
 <translation id="8070662218171013510">ହାପ୍ଟିକ ମତାମତ</translation>
+<translation id="8071033114691184017">ଆପଣଙ୍କ iPhoneରେ ଏହି ପାସୱାର୍ଡକୁ ବ୍ୟବହାର କରନ୍ତୁ</translation>
 <translation id="8071432093239591881">ଛବି ଭାବରେ ପ୍ରିଣ୍ଟ କରନ୍ତୁ</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />ଆପ୍ ଡାଟା, ଏପରି କୌଣସି ଡାଟା ହୋ‍ଇପାରେ ଯାହା କୌଣସି ଆପ୍ ଦ୍ଵାରା ସେଭ୍ ହୋ‍ଇଛି (ଡେଭଲପର୍‍ ସେଟିଂସ୍‍କୁ ଆଧାର କରି), ଏଥିରେ ଯୋଗାଯୋଗ, ମେସେଜ୍ ଓ ଫଟୋ ଅନ୍ତର୍ଭୁକ୍ତ ଅଛି।<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ଆପଣଙ୍କ ପିଲାର ଡ୍ରାଇଭ୍ ଷ୍ଟୋରେଜ୍ କୋଟା ପାଇଁ ବ୍ୟାକ‍ଅପ୍ ଡାଟାକୁ ଗଣନା କରାଯିବ ନାହିଁ।<ph name="END_PARAGRAPH2" />
@@ -9941,6 +9953,7 @@
 <translation id="8482077254400484047">ଏଠାରେ ନିଷ୍କ୍ରିୟ ଟାବଗୁଡ଼ିକର ଲୁକକୁ ପରିଚାଳନା କରନ୍ତୁ</translation>
 <translation id="8483248364096924578">IP ଠିକଣା</translation>
 <translation id="8486666913807228950">କାରଣ: "ବାଧ୍ୟତାମୂଳକ ଭାବେ ଖୋଲନ୍ତୁ" ତାଲିକାରେ ବିପରୀତ ନିୟମ <ph name="REVERT_RULE" /> ମିଳିଛି।</translation>
+<translation id="8487303289354211861">ପିନ କରାଯାଇଛି! ଆପଣ ଟୁଲବାରରେ ଥିବା ନୂଆ ବଟନରୁ ଏହି ଫିଚରକୁ ପୁଣି ଆକ୍ସେସ କରିପାରିବେ</translation>
 <translation id="8487678622945914333">ଜୁମ୍ ଇନ୍</translation>
 <translation id="8487699605742506766">ହଟସ୍ପଟ</translation>
 <translation id="8489156414266187072">ବ୍ୟକ୍ତିଗତ ପରାମର୍ଶଗୁଡ଼ିକ କେବଳ ଆପଣଙ୍କ ଆକାଉଣ୍ଟରେ ଦେଖାଯାଏ</translation>
@@ -10339,7 +10352,6 @@
 <translation id="8784626084144195648">ବିନ୍ କରାଯାଇଥିବା ହାର</translation>
 <translation id="8785622406424941542">ଷ୍ଟାଇଲସ୍</translation>
 <translation id="8786824282808281903">ଯେତେବେଳେ ଆପଣଙ୍କ ପିଲା ଏହି ଆଇକନ୍ ଦେଖେ, ଚିହ୍ନଟକରଣ ପାଇଁ କିମ୍ବା କ୍ରୟଗୁଡ଼ିକୁ ଅନୁମୋଦନ କରିବା ପାଇଁ ଏକ ଟିପଚିହ୍ନ ବ୍ୟବହାର କରାଯାଇପାରିବ।</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{ବେନାମୀ ଗୋଷ୍ଠୀ - 1ଟି ଟାବ୍}other{ବେନାମୀ ଗୋଷ୍ଠୀ - #ଟି ଟାବ୍}}</translation>
 <translation id="8787752878731558379">ତୃତୀୟ-ପକ୍ଷ କୁକୀଗୁଡ଼ିକୁ ଆପଣ କାହିଁକି ଅନୁମତି ଦେଇଛନ୍ତି ତାହା କହି Chromeକୁ ଉନ୍ନତ କରିବାରେ ଆମକୁ ସାହାଯ୍ୟ କରନ୍ତୁ</translation>
 <translation id="8789898473175677810">Chrome ହେଉଛି କ୍ରସ-ସାଇଟ ଟ୍ରାକିଂକୁ ହ୍ରାସ କରିବା ଏବଂ ତୃତୀୟ-ପକ୍ଷ କୁକୀଗୁଡ଼ିକର ବ୍ୟବହାରକୁ ପର୍ଯ୍ୟାୟକ୍ରମେ ହ୍ରାସ କରିବା ପାଇଁ ଏକ <ph name="LINK_BEGIN" />ସହଯୋଗୀ ପ୍ରଚେଷ୍ଟା<ph name="LINK_END" />ର ଏକ ଅଂଶ। କିନ୍ତୁ ଆମେ ଏହାକୁ ଦାୟିତ୍ୱପୂର୍ଣ୍ଣ ଭାବରେ କରିବାକୁ ଚେଷ୍ଟା କରୁଛୁ କାରଣ ଅନେକ ସାଇଟ ଡିଜାଇନ କରାଯାଇଥିବା ଅନୁଯାୟୀ କାମ କରିବା ପାଇଁ ତୃତୀୟ-ପକ୍ଷ କୁକୀଗୁଡ଼ିକ ଉପରେ ନିର୍ଭର କରନ୍ତି। ଉଦାହରଣ ସ୍ୱରୂପ, ଅନେକ ସାଇଟ ସାଇନ ଇନ କରିବା ପ୍ରକ୍ରିୟାକୁ ସରଳ କରିବା ପାଇଁ ଏମ୍ବେଡେ କରାଯାଇଥିବା ଚାଟ ଏବଂ ମନ୍ତବ୍ୟ ପ୍ରଣାଳୀକୁ ସମର୍ଥନ କରିବା ଏବଂ ପେମେଣ୍ଟ ସେବାଗୁଡ଼ିକ ପାଇଁ ତୃତୀୟ-ପକ୍ଷ କୁକୀଗୁଡ଼ିକୁ ବ୍ୟବହାର କରନ୍ତି। ଏବଂ ବିଜ୍ଞାପନଦାତାମାନେ ପ୍ରାୟତଃ ବିଜ୍ଞାପନଗୁଡ଼ିକୁ ଭଲ ଭାବରେ ପର୍ସନାଲାଇଜ କରିବା ପାଇଁ ତୃତୀୟ-ପକ୍ଷ କୁକୀଗୁଡ଼ିକୁ ବ୍ୟବହାର କରନ୍ତି। ଏହା ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ କାରଣ ସାଇଟଗୁଡ଼ିକ ପ୍ରାୟତଃ ଖର୍ଚ୍ଚ ଦେବାରେ ସାହାଯ୍ୟ କରିବା ଏବଂ ସେମାନଙ୍କ ଅନଲାଇନ ବିଷୟବସ୍ତୁକୁ ମାଗଣାରେ ରଖିବା ପାଇଁ ବିଜ୍ଞାପନ ଉପରେ ନିର୍ଭର କରନ୍ତି।</translation>
 <translation id="8791157330927639737">ଅପଡେଟ କରିବା ବିଷୟରେ ଅଧିକ ଜାଣନ୍ତୁ</translation>
@@ -10653,6 +10665,7 @@
 <translation id="9014674417732091912"><ph name="ROW_NUMBER" /> ଧାଡ଼ିକୁ ମୁଭ କରାଯାଇଛି</translation>
 <translation id="901668144954885282">Google Driveରେ ବ୍ୟାକଅପ୍ ନିଅନ୍ତୁ</translation>
 <translation id="9016827136585652292">ଗୋପନୀୟତା ସ୍କ୍ରିନ ଟୋଗଲ</translation>
+<translation id="9017055559700464094">ପିନ କରାଯାଇଛି! ଟୁଲବାରରୁ ଏହି ଫିଚରକୁ ପୁଣି ବ୍ୟବହାର କରନ୍ତୁ</translation>
 <translation id="90181708067259747">ମିଆଦ ଶେଷ ହେବାର ତାରିଖ: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">ଇନ୍‌ଷ୍ଟଲ୍ କରିବା ସମ୍ପୂର୍ଣ୍ଣ ହୋଇଛି</translation>
 <translation id="901876615920222131">ଗୋଷ୍ଠୀ ପୁଣି ଖୋଲିବା ପାଇଁ ଗୋଷ୍ଠୀରେ କ୍ଲିକ କରନ୍ତୁ</translation>
@@ -10811,6 +10824,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />ସର୍ବୋତ୍ତମ ଅନୁଭୂତି ପାଇଁ, ଆପଣଙ୍କ ଇଣ୍ଟର୍ନଲ ଡିସ୍କରେ <ph name="DEVICE_OS" /> ଇନଷ୍ଟଲ କରନ୍ତୁ। ଆପଣ ପରେ ଲଗଇନ ସ୍କ୍ରିନରୁ ଏହାକୁ ମଧ୍ୟ ଇନଷ୍ଟଲ କରିପାରିବେ।<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ଯଦି ଆପଣ ଇନଷ୍ଟଲ କରିବାକୁ ପ୍ରସ୍ତୁତ ନୁହଁନ୍ତି, ତେବେ ଆପଣ ଏହାକୁ ବ୍ୟବହାର କରି ଦେଖିବା ପାଇଁ USBରୁ ଚଲାଇପାରିବେ। ଏହା ଆପଣଙ୍କର ପୂର୍ବରୁ ଥିବା OS ଏବଂ ଡାଟାକୁ ରଖିବ, କିନ୍ତୁ ଆପଣ ଷ୍ଟୋରେଜ ଓ ପରଫରମାନ୍ସ ସୀମା ଦେଖିପାରନ୍ତି।<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">ଏକ ପିନ୍‌ କରାଯାଇଥିବା ଟାବ୍‌ରୂପେ ଖୋଲନ୍ତୁ</translation>
+<translation id="9122788874051694311">ଇନକଗ୍ନିଟୋ ବାହାରେ ଏହି ପାସକୀକୁ ସେଭ କରିବେ?</translation>
 <translation id="9123287046453017203">ଆପଣଙ୍କ ଡିଭାଇସ ଅପଟୁଡେଟ ନାହିଁ</translation>
 <translation id="9125910124977405374">ସ୍ୱଚାଳିତ ଭାବେ ଅନୁବାଦ ହେଉଥିବା ଭାଷାଗୁଡ଼ିକରୁ <ph name="LANGUAGE_NAME" />କୁ କାଢ଼ି ଦିଅନ୍ତୁ</translation>
 <translation id="9126149354162942022">କର୍ସରର ରଙ୍ଗ</translation>
diff --git a/chrome/app/resources/generated_resources_pa.xtb b/chrome/app/resources/generated_resources_pa.xtb
index 125cbe5..d9ca5d7 100644
--- a/chrome/app/resources/generated_resources_pa.xtb
+++ b/chrome/app/resources/generated_resources_pa.xtb
@@ -1669,6 +1669,7 @@
 <translation id="2211043920024403606">ਪ੍ਰੋਫਾਈਲ ਜਾਣਕਾਰੀ</translation>
 <translation id="2211245494465528624">ਸਿੰਕ ਵਿਕਲਪਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ</translation>
 <translation id="221297410904507041">ਇਤਿਹਾਸ, ਕੁਕੀਜ਼, ਕੈਸ਼ੇ ਅਤੇ ਹੋਰ ਚੀਜ਼ਾਂ ਨੂੰ ਮਿਟਾਓ</translation>
+<translation id="2213410656650624348">ਔਸਤ</translation>
 <translation id="2214018885812055163">ਸਾਂਝੇ ਕੀਤੇ ਫੋਲਡਰ</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 ਲਾਈਨ ਨਹੀਂ ਦਿਖਾਈ ਗਈ&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> ਲਾਈਨ ਨਹੀਂ ਦਿਖਾਈ ਗਈ&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> ਲਾਈਨਾਂ ਨਹੀਂ ਦਿਖਾਈਆਂ ਗਈਆਂ&gt;}}</translation>
 <translation id="2215070081105889450">ਆਡੀਓ ਨੂੰ ਸਾਂਝਾ ਕਰਨ ਲਈ, ਇਸਦੀ ਬਜਾਏ ਕਿਸੇ ਟੈਬ ਜਾਂ ਸਕ੍ਰੀਨ ਨੂੰ ਸਾਂਝਾ ਕਰੋ</translation>
@@ -2051,6 +2052,7 @@
 <translation id="2473195200299095979">ਇਸ ਸਫ਼ੇ ਦਾ ਅਨੁਵਾਦ ਕਰੋ</translation>
 <translation id="2475982808118771221">ਇੱਕ ਗੜਬੜ ਹੋਈ</translation>
 <translation id="247616523300581745">ਇਨ੍ਹਾਂ ਫ਼ਾਈਲਾਂ ਨੂੰ ਲੁਕਾਓ</translation>
+<translation id="2476435723907345463">ਪਾਸਕੀਆਂ ਤੱਕ ਪਹੁੰਚ ਨੂੰ ਹਟਾਇਆ ਗਿਆ</translation>
 <translation id="2476901513051581836">ਜਦੋਂ ਤੱਕ ਆਫ਼ਲਾਈਨ ਸਟੋਰੇਜ ਦੇ ਆਕਾਰ ਬਾਰੇ ਪਤਾ ਨਹੀਂ ਲੱਗਦਾ, ਸਟੋਰੇਜ ਨੂੰ ਖਾਲੀ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ।</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" /> ਨੂੰ ਅਣਸਥਾਪਤ ਕਰਨ ਲਈ Windows ਨੂੰ ਬੰਦ ਕਰੋ।</translation>
 <translation id="2477065602824695373">ਕਿਉਂਕਿ ਤੁਸੀਂ ਕਈ ਸਵਿੱਚਾਂ ਦਾ ਸੈੱਟਅੱਪ ਕੀਤਾ ਹੈ, ਇਸ ਲਈ 'ਸਵੈ-ਸਕੈਨ' ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਬੰਦ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ।</translation>
@@ -2245,6 +2247,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> ਨੂੰ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਡਾਊਨਲੋਡ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ।</translation>
 <translation id="2620245777360407679">ਫ਼ਿਲਹਾਲ ਡੀਵਾਈਸ ਹੌਟਸਪੌਟ ਨਾਲ ਕਨੈਕਟ ਕੀਤੇ ਹੋਏ ਹਨ</translation>
 <translation id="2620436844016719705">ਸਿਸਟਮ</translation>
+<translation id="262087792756666314">ਤੁਸੀਂ ਆਸਾਨ ਪਹੁੰਚ ਲਈ ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਪਿੰਨ ਕਰ ਸਕਦੇ ਹੋ; ਸਾਈਡ ਪੈਨਲ ਦੇ ਸਿਖਰ 'ਤੇ 'ਪਿੰਨ ਕਰੋ' ਬਟਨ ਨੂੰ ਕਲਿੱਕ ਕਰੋ</translation>
 <translation id="2620900772667816510">ਬਲੂਟੁੱਥ ਸੁਪਰ ਰੈਜ਼ੋਲਿਊਸ਼ਨ</translation>
 <translation id="262154978979441594">Google Assistant ਅਵਾਜ਼ੀ ਮਾਡਲ ਨੂੰ ਸਿਖਲਾਈ ਦਿਓ</translation>
 <translation id="26224892172169984">ਕਿਸੇ ਵੀ ਸਾਈਟ ਨੂੰ ਪ੍ਰੋਟੋਕੋਲ ਹੈਂਡਲ ਕਰਨ ਦੀ ਆਗਿਆ ਨਾ ਦਿਓ</translation>
@@ -3021,6 +3024,7 @@
 <translation id="3222066309010235055">ਪ੍ਰੀਰੈਂਡਰਰ: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989"><ph name="USB_VM_NAME" /> ਨਾਲ ਕਨੈਕਟ ਕਰੋ</translation>
 <translation id="3222857603094643834">Google Lens ਨਾਲ ਇਸ ਪੰਨੇ 'ਤੇ ਕੁਝ ਵੀ ਖੋਜੋ</translation>
+<translation id="3223109931751684474">ਇਸ ਡੀਵਾਈਸ 'ਤੇ ਆਪਣੀਆਂ ਪਾਸਕੀਆਂ ਤੱਕ ਪਹੁੰਚ ਨੂੰ ਹਟਾਓ</translation>
 <translation id="3223531857777746191">ਰੀਸੈੱਟ ਬਟਨ</translation>
 <translation id="3225084153129302039">ਪੂਰਵ-ਨਿਰਧਾਰਤ ਜਾਮਨੀ ਅਵਤਾਰ</translation>
 <translation id="3225319735946384299">ਕੋਡ ਸਾਈਨਿੰਗ</translation>
@@ -3345,6 +3349,7 @@
 <translation id="3473479545200714844">ਸਕ੍ਰੀਨ ਵਿਸਤਾਰਕ</translation>
 <translation id="3474218480460386727">ਨਵੇਂ ਸ਼ਬਦਾਂ ਲਈ 99 ਜਾਂ ਘੱਟ ਅੱਖਰ ਵਰਤੋ</translation>
 <translation id="3474624961160222204"><ph name="NAME" /> ਵਜੋਂ ਜਾਰੀ ਰੱਖੋ</translation>
+<translation id="3477772589943384839">ਔਸਤ ਮੈਮੋਰੀ ਬਚਤ ਪਾਓ। ਤੁਹਾਡੀਆਂ ਟੈਬਾਂ ਲੰਬੇ ਸਮੇਂ ਤੋਂ ਬਾਅਦ ਅਕਿਰਿਆਸ਼ੀਲ ਹੋ ਜਾਂਦੀਆਂ ਹਨ।</translation>
 <translation id="347785443197175480"><ph name="HOST" /> ਨੂੰ ਆਪਣੇ ਕੈਮਰੇ ਅਤੇ ਮਾਈਕ੍ਰੋਫੋਨ ਤੇ ਪਹੁੰਚ ਦੀ ਆਗਿਆ ਦੇਣਾ ਜਾਰੀ ਰੱਖੋ</translation>
 <translation id="3479357084663933762">ਡਿਊਟ੍ਰੈਨੋਮਲੀ</translation>
 <translation id="3479552764303398839">ਹੁਣ ਨਹੀਂ</translation>
@@ -4068,7 +4073,6 @@
 <translation id="3983586614702900908">ਇੱਕ ਅਗਿਆਤ ਵੈਂਡਰ ਦੀਆਂ ਡਿਵਾਈਸਾਂ</translation>
 <translation id="3983764759749072418">Play Store ਐਪਲੀਕੇਸ਼ਨਾਂ ਦੀ ਇਸ ਡੀਵਾਈਸ ਤੱਕ ਪਹੁੰਚ ਹੈ।</translation>
 <translation id="3983769721878416534">ਕਲਿੱਕ ਤੋਂ ਪਹਿਲਾਂ ਦੇਰੀ</translation>
-<translation id="3983793589497399077">Lens ਨਾਲ ਖੋਜ ਕਰਨ ਲਈ ਕਿਤੇ ਵੀ ਕਲਿੱਕ ਕਰੋ ਜਾਂ ਘਸੀਟੋ</translation>
 <translation id="3984135167056005094">ਈਮੇਲ ਪਤਾ ਸ਼ਾਮਲ ਨਾ ਕਰੋ</translation>
 <translation id="3984159763196946143">ਡੈਮੋ ਮੋਡ ਸ਼ੁਰੂ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ</translation>
 <translation id="3984431586879874039">ਕੀ ਇਸ ਸਾਈਟ ਨੂੰ ਆਪਣੀ ਸੁਰੱਖਿਆ ਕੁੰਜੀ ਦੇਖਣ ਦੇਣੀ ਹੈ?</translation>
@@ -4105,6 +4109,7 @@
 <translation id="4010036441048359843">'ਉਜਾਗਰ ਕਰੋ' ਨੂੰ ਚਾਲੂ ਕਰੋ</translation>
 <translation id="4010746393007464819">Debian 12 (Bookworm) ਦਾ ਅੱਪਗ੍ਰੇਡ ਉਪਲਬਧ ਹੈ</translation>
 <translation id="4010917659463429001">ਆਪਣੇ ਮੋਬਾਈਲ ਡੀਵਾਈਸ 'ਤੇ ਆਪਣੇ ਬੁੱਕਮਾਰਕਾਂ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, <ph name="GET_IOS_APP_LINK" />।</translation>
+<translation id="4012268176861210196">ਤੁਸੀਂ ਆਸਾਨ ਪਹੁੰਚ ਲਈ ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਪਿੰਨ ਕਰ ਸਕਦੇ ਹੋ</translation>
 <translation id="4014432863917027322">ਕੀ "<ph name="EXTENSION_NAME" />" ਨੂੰ ਰਿਪੇਅਰ ਕਰਨਾ ਹੈ?</translation>
 <translation id="4015163439792426608">ਕੀ ਤੁਹਾਡੇ ਕੋਲ ਐਕਸਟੈਂਸ਼ਨਾਂ ਹਨ? ਇੱਕ ਸੁਖਾਲੀ ਥਾਂ 'ਤੇ <ph name="BEGIN_LINK" />ਆਪਣੀਆਂ ਐਕਸਟੈਂਸ਼ਨਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ<ph name="END_LINK" />।</translation>
 <translation id="4016762287427926315">ਤੁਹਾਡੇ ਵੱਲੋਂ <ph name="APP_NAME" /> ਲਈ ਆਗਿਆ ਦਿੱਤੀਆਂ ਇਜਾਜ਼ਤਾਂ ਦੀ ਇਸ ਐਪ ਲਈ ਵੀ ਆਗਿਆ ਦਿੱਤੀ ਜਾਵੇਗੀ। <ph name="BEGIN_LINK" />ਪ੍ਰਬੰਧਨ ਕਰੋ<ph name="END_LINK" /></translation>
@@ -4408,6 +4413,7 @@
 <translation id="4261429981378979799">ਐਕਸਟੈਂਸ਼ਨ ਸੰਬੰਧੀ ਇਜਾਜ਼ਤਾਂ</translation>
 <translation id="4262004481148703251">ਚਿਤਾਵਨੀ ਖਾਰਜ ਕਰੋ</translation>
 <translation id="4263223596040212967">ਆਪਣੇ ਕੀ-ਬੋਰਡ ਖਾਕੇ ਦੀ ਜਾਂਚ ਕਰਕੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।</translation>
+<translation id="4263470758446311292">ਅਧਿਕਤਮ ਮੈਮੋਰੀ ਬਚਤ ਪਾਓ। ਤੁਹਾਡੀਆਂ ਟੈਬਾਂ ਥੋੜ੍ਹੇ ਸਮੇਂ ਤੋਂ ਬਾਅਦ ਅਕਿਰਿਆਸ਼ੀਲ ਹੋ ਜਾਂਦੀਆਂ ਹਨ।</translation>
 <translation id="4265096510956307240">ਆਪਣੀ ਪਛਾਣ ਦੀ ਪੁਸ਼ਟੀ ਕਰੋ</translation>
 <translation id="4265301768135164545">ਤੁਸੀਂ ਈ-ਸਿਮ ਪ੍ਰੋਫਾਈਲ ਦਾ <ph name="BEGIN_LINK" />ਹੱਥੀਂ<ph name="END_LINK" /> ਵੀ ਸੈੱਟਅੱਪ ਕਰ ਸਕਦੇ ਹੋ</translation>
 <translation id="426564820080660648">ਅਪਡੇਟਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ Ethernet, Wi-Fi ਜਾਂ ਮੋਬਾਈਲ ਡਾਟਾ ਵਰਤੋ।</translation>
@@ -4727,6 +4733,7 @@
 <translation id="4503748371388753124">ਤੁਹਾਡੇ ਕੰਪਿਊਟਰ ਵਿੱਚ ਇੱਕ ਭਰੋਸੇਯੋਗ ਪਲੇਟਫਾਰਮ ਮਾਡਿਊਲ (TPM) ਸੁਰੱਖਿਆ ਡੀਵਾਈਸ ਹੈ, ਜਿਸਨੂੰ ChromeOS Flex ਵਿੱਚ ਕਈ ਮਹੱਤਵਪੂਰਨ ਸੁਰੱਖਿਆ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ Chromebook ਦੇ ਮਦਦ ਕੇਂਦਰ 'ਤੇ ਜਾਓ: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{ਕੁਕੀਜ਼ ਦੀ ਇਜਾਜ਼ਤ ਹੈ}=1{ਕੁਕੀਜ਼ ਦੀ ਇਜਾਜ਼ਤ ਹੈ, 1 ਅਪਵਾਦ}other{ਕੁਕੀਜ਼ ਦੀ ਇਜਾਜ਼ਤ ਹੈ, {COUNT} ਅਪਵਾਦ}}</translation>
 <translation id="4504940961672722399">ਪ੍ਰਤੀਕ 'ਤੇ ਕਲਿੱਕ ਕਰਕੇ ਜਾਂ <ph name="EXTENSION_SHORTCUT" /> ਨੂੰ ਦਬਾ ਕੇ ਇਹ ਐਕਸਟੈਂਸ਼ਨ ਵਰਤੋ।</translation>
+<translation id="4505469832694348179">ਇਸ QR ਕੋਡ ਨਾਲ Chrome ਨੂੰ ਡਾਊਨਲੋਡ ਕਰੋ ਅਤੇ ਆਪਣੇ Google ਖਾਤੇ ਵਿੱਚ ਸਾਈਨ-ਇਨ ਕਰੋ।</translation>
 <translation id="450552327874992444">ਸ਼ਬਦ ਪਹਿਲਾਂ ਹੀ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾ ਚੁੱਕਿਆ ਹੈ</translation>
 <translation id="4507373251891673233">ਤੁਸੀਂ <ph name="HOST" /> ਤੋਂ ਸਾਰੀਆਂ ਐਕਸਟੈਂਸ਼ਨਾਂ ਨੂੰ ਬਲਾਕ ਕੀਤਾ ਹੈ</translation>
 <translation id="4507401683427517298">“ਸ਼ਾਰਟਕੱਟ ਸ਼ਾਮਲ ਕਰੋ” 'ਤੇ ਕਲਿੱਕ ਕਰੋ</translation>
@@ -5062,6 +5069,7 @@
 <translation id="4768332406694066911">ਤੁਹਾਡੇ ਕੋਲ ਇਹਨਾਂ ਸੰਸਥਾਵਾਂ ਦੇ ਪ੍ਰਮਾਣ-ਪੱਤਰ ਹਨ ਜੋ ਤੁਹਾਡੀ ਪਛਾਣ ਕਰਦੇ ਹਨ</translation>
 <translation id="4769632191812288342">ਤੁਸੀਂ ਮਿਆਰੀ ਸੁਰੱਖਿਆ ਪ੍ਰਾਪਤ ਕਰ ਰਹੇ ਹੋ</translation>
 <translation id="4770119228883592393">ਇਜਾਜ਼ਤ ਦੀ ਬੇਨਤੀ ਕੀਤੀ ਗਈ, ਜਵਾਬ ਦੇਣ ਲਈ ⌘ + Option + ਹੇਠਾਂ ਤੀਰ ਵਾਲੀ ਕੁੰਜੀ ਨੂੰ ਦਬਾਓ</translation>
+<translation id="4770755495532014179">ਇਸ ਪਾਸਵਰਡ ਨੂੰ ਆਪਣੇ iPhone 'ਤੇ ਵਰਤੋ</translation>
 <translation id="4773112038801431077">Linux ਨੂੰ ਅੱਪਗ੍ਰੇਡ ਕਰੋ</translation>
 <translation id="477548766361111120">ਇਸ ਸਾਈਟ ਨੂੰ ਪੜ੍ਹਨ ਅਤੇ ਬਦਲਣ ਦੀ ਐਕਸਟੈਂਸ਼ਨ ਨੂੰ ਆਗਿਆ ਦਿਓ</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> ਕਨੈਕਟ ਹੋ ਗਿਆ ਹੈ</translation>
@@ -5231,6 +5239,7 @@
 <translation id="4890399733764921729">ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ। ਕਿਸੇ ਹੋਰ ਮੋਬਾਈਲ ਸੇਵਾ ਪ੍ਰਦਾਨਕ ਵੱਲੋਂ ਲਾਕ ਕੀਤਾ ਗਿਆ।</translation>
 <translation id="4890773143211625964">ਉੱਨਤ ਪ੍ਰਿੰਟਰ ਵਿਕਲਪ  ਦਿਖਾਓ </translation>
 <translation id="4891089016822695758">ਬੀਟਾ ਫ਼ੋਰਮ</translation>
+<translation id="4891795846939730995">ਇਸ ਡੀਵਾਈਸ ਨੂੰ ਆਪਣੀਆਂ ਪਾਸਕੀਆਂ ਤੱਕ ਦੁਬਾਰਾ ਪਹੁੰਚ ਦੇਣ ਲਈ, ਰੱਖਿਅਤ ਕੀਤੀ ਪਾਸਕੀ ਨਾਲ ਸਾਈਟ ਜਾਂ ਐਪ ਵਿੱਚ ਸਾਈਨ-ਇਨ ਕਰੋ</translation>
 <translation id="4892229439761351791">ਸਾਈਟ ਬਲੂਟੁੱਥ ਨੂੰ ਵਰਤ ਸਕਦੀ ਹੈ</translation>
 <translation id="4892328231620815052">ਜਦੋਂ ਤੁਸੀਂ ਤਿਆਰ ਹੋਵੋ, ਤਾਂ 'ਬੁੱਕਮਾਰਕ ਅਤੇ ਸੂਚੀਆਂ' ਵਿੱਚ ਆਪਣੀ ਪੜ੍ਹਨ-ਸੂਚੀ ਲੱਭੋ</translation>
 <translation id="489258173289528622">ਬੈਟਰੀ ਚਾਰਜ ਨਾ ਹੋਣ ਦੌਰਾਨ ਅਕਿਰਿਆਸ਼ੀਲ ਕਾਰਵਾਈ</translation>
@@ -6460,6 +6469,7 @@
 <translation id="5846504156837627898">ਸਾਈਟ ਇਜਾਜ਼ਤਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ</translation>
 <translation id="5846749317653566506">ਇਹ ਪੱਕਾ ਕਰਨ ਲਈ ਕਿ ਰੰਗ ਵਿਲੱਖਣ ਹਨ, ਰੰਗ ਸੁਧਾਈ ਸੈਟਿੰਗਾਂ ਨੂੰ ਵਿਵਸਥਿਤ ਕਰੋ</translation>
 <translation id="5846807460505171493">ਅੱਪਡੇਟ ਅਤੇ ਐਪਾਂ ਨੂੰ ਸਥਾਪਤ ਕਰੋ। ਜਾਰੀ ਰੱਖ ਕੇ, ਤੁਸੀਂ ਸਹਿਮਤੀ ਦਿੰਦੇ ਹੋ ਕਿ ਇਹ ਡੀਵਾਈਸ ਸੰਭਾਵੀ ਤੌਰ 'ਤੇ ਸੈਲਿਊਲਰ ਡਾਟੇ ਦੀ ਵਰਤੋਂ ਨਾਲ Google, ਤੁਹਾਡੇ ਕੈਰੀਅਰ ਅਤੇ ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਦੇ ਨਿਰਮਾਤਾ ਤੋਂ ਵੀ ਸਵੈਚਲਿਤ ਤੌਰ 'ਤੇ ਅੱਪਡੇਟ ਅਤੇ ਐਪਾਂ ਨੂੰ ਡਾਊਨਲੋਡ ਅਤੇ ਸਥਾਪਤ ਕਰ ਸਕਦਾ ਹੈ। ਇਹਨਾਂ ਐਪਾਂ ਵਿੱਚੋਂ ਕੁਝ ਐਪ-ਅੰਦਰ ਖਰੀਦਾਂ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰ ਸਕਦੀਆਂ ਹਨ।</translation>
+<translation id="5848054741303781539">ਹੱਥੀਂ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਟਿਕਾਣਾ ਨਹੀਂ ਵਰਤਿਆ ਜਾ ਰਿਹਾ</translation>
 <translation id="5848319660029558352">ਉੱਚੀ ਪੜ੍ਹੋ ਅਤੇ ਲਿਖਤ ਫਾਰਮੈਟਿੰਗ</translation>
 <translation id="5849212445710944278">ਪਹਿਲਾਂ ਤੋਂ ਹੀ ਸ਼ਾਮਲ ਹੈ</translation>
 <translation id="584945105664698226">ਅਵਾਜ਼ ਦੀ ਗਤੀ</translation>
@@ -7158,7 +7168,6 @@
 <translation id="6383382161803538830">ਇਸ ਪੰਨੇ 'ਤੇ ਪੜ੍ਹਨ ਦਾ ਮੋਡ ਉਪਲਬਧ ਨਹੀਂ ਹੈ</translation>
 <translation id="638418309848716977">ਸਮਰਥਿਤ ਲਿੰਕ</translation>
 <translation id="6384275966486438344">ਆਪਣੀਆਂ ਖੋਜ ਸੈਟਿੰਗਾਂ ਨੂੰ ਇਸ ਵਿੱਚ ਬਦਲੋ: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{ਬੇਨਾਮ ਗਰੁੱਪ - 1 ਟੈਬ}one{ਬੇਨਾਮ ਗਰੁੱਪ - # ਟੈਬ}other{ਬੇਨਾਮ ਗਰੁੱਪ - # ਟੈਬ}}</translation>
 <translation id="6385149369087767061">ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਕਰਕੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ</translation>
 <translation id="6385382178401976503">ਕਾਰਡ: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">ਚਿਤਾਵਨੀ - ਵੇਰਵੇ ਸਹਿਤ ਲੌਗ-ਇਨ ਕਰਨਾ ਚਾਲੂ ਹੈ; ਹੇਠਾਂ ਦਿੱਤੇ ਗਏ ਲੌਗਾਂ ਵਿੱਚ URL ਜਾਂ ਹੋਰ ਸੰਵੇਦਨਸ਼ੀਲ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ। ਕਿਰਪਾ ਕਰਕੇ ਸਮੀਖਿਆ ਕਰੋ ਅਤੇ ਇਹ ਪੱਕਾ ਕਰੋ ਕਿ ਇਸ ਜਾਣਕਾਰੀ ਨੂੰ ਸਪੁਰਦ ਕਰਨ ਵਿੱਚ ਤੁਹਾਨੂੰ ਕੋਈ ਪਰੇਸ਼ਾਨੀ ਨਹੀਂ ਹੈ।</translation>
@@ -7492,6 +7501,7 @@
 <translation id="6648911618876616409">ਇੱਕ ਅਤਿ ਜ਼ਰੂਰੀ ਅੱਪਡੇਟ ਸਥਾਪਤ ਹੋਣ ਲਈ ਤਿਆਰ ਹੈ। ਸ਼ੁਰੂਆਤ ਕਰਨ ਲਈ ਸਾਈਨ-ਇਨ ਕਰੋ।</translation>
 <translation id="6649018507441623493">ਬੱਸ ਇੱਕ ਸਕਿੰਟ…</translation>
 <translation id="6650206238642452078">ChromeOS ਸਿਸਟਮ ਇਵੈਂਟਾਂ ਨੂੰ ਸਬਸਕ੍ਰਾਈਬ ਕਰੋ</translation>
+<translation id="6650584564768559994">ਸੰਤੁਲਿਤ ਮੈਮੋਰੀ ਬਚਤ ਪਾਓ। ਤੁਹਾਡੀਆਂ ਟੈਬਾਂ ਅਨੁਕੂਲ ਸਮੇਂ ਤੋਂ ਬਾਅਦ ਅਕਿਰਿਆਸ਼ੀਲ ਹੋ ਜਾਂਦੀਆਂ ਹਨ।</translation>
 <translation id="665061930738760572">&amp;ਨਵੀਂ Window ਵਿੱਚ ਖੋਲ੍ਹੋ</translation>
 <translation id="6651237644330755633">ਵੈੱਬਸਾਈਟਾਂ ਦੀ ਪਛਾਣ ਕਰਨ ਲਈ ਇਸ ਪ੍ਰਮਾਣ-ਪੱਤਰ 'ਤੇ ਭਰੋਸਾ ਕਰੋ</translation>
 <translation id="6651495917527016072">ਆਪਣੇ ਫ਼ੋਨ ਨਾਲ ਵਾਈ-ਫਾਈ ਨੈੱਟਵਰਕਾਂ ਦਾ ਸਿੰਕ ਕਰੋ। <ph name="LINK_BEGIN" />ਹੋਰ ਜਾਣੋ<ph name="LINK_END" /></translation>
@@ -7750,6 +7760,7 @@
 <translation id="6831043979455480757">ਅਨੁਵਾਦ ਕਰੋ</translation>
 <translation id="6832218595502288407">ਖੱਬੇ ਇਕਸਾਰ ਕਰੋ</translation>
 <translation id="6833479554815567477">ਟੈਬ ਨੂੰ <ph name="GROUP_NAME" /> ਗਰੁੱਪ ਵਿੱਚੋਂ ਹਟਾਇਆ ਗਿਆ - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">ਸੰਤੁਲਿਤ (ਸਿਫ਼ਾਰਸ਼ੀ)</translation>
 <translation id="6835762382653651563">ਕਿਰਪਾ ਕਰਕੇ ਆਪਣੀ <ph name="DEVICE_TYPE" /> ਨੂੰ ਅੱਪਡੇਟ ਕਰਨ ਲਈ ਇੰਟਰਨੈਟ ਨਾਲ ਕਨੈਕਟ ਕਰੋ।</translation>
 <translation id="683630338945552556">ਆਪਣੇ Google ਖਾਤੇ ਤੋਂ ਪਾਸਵਰਡ ਵਰਤੋ ਅਤੇ ਰੱਖਿਅਤ ਕਰੋ</translation>
 <translation id="6839225236531462745">ਪ੍ਰਮਾਣ-ਪੱਤਰ ਮਿਟਾਉਣ ਵਿੱਚ ਗੜਬੜ</translation>
@@ -9398,6 +9409,7 @@
 <translation id="8066444921260601116">ਕਨੈਕਸ਼ਨ ਵਿੰਡੋ</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> ਟਿਕਾਣੇ ਸੰਬੰਧੀ ਇਜਾਜ਼ਤ</translation>
 <translation id="8070662218171013510">ਛੋਹ ਪ੍ਰਤੀਕਰਮ</translation>
+<translation id="8071033114691184017">ਇਸ ਪਾਸਵਰਡ ਨੂੰ ਆਪਣੇ iPhone 'ਤੇ ਵਰਤੋ</translation>
 <translation id="8071432093239591881">ਚਿੱਤਰ ਵਜੋਂ ਪ੍ਰਿੰਟ ਕਰੋ</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />ਐਪ ਡਾਟਾ ਕਿਸੇ ਐਪ ਵੱਲੋਂ (ਵਿਕਾਸਕਾਰ ਸੈਟਿੰਗਾਂ 'ਤੇ ਅਧਾਰਿਤ) ਰੱਖਿਅਤ ਕੀਤਾ ਕੋਈ ਵੀ ਡਾਟਾ ਹੋ ਸਕਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਸੰਪਰਕਾਂ, ਸੁਨੇਹਿਆਂ ਅਤੇ ਫ਼ੋਟੋਆਂ ਵਰਗਾ ਡਾਟਾ ਸ਼ਾਮਲ ਹੈ।<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ਬੈਕਅੱਪ ਡਾਟੇ ਨੂੰ ਤੁਹਾਡੇ ਬੱਚੇ ਦੇ 'ਡਰਾਈਵ' ਸਟੋਰੇਜ ਕੋਟੇ ਵਿੱਚ ਨਹੀਂ ਗਿਣਿਆ ਜਾਵੇਗਾ।<ph name="END_PARAGRAPH2" />
@@ -9965,6 +9977,7 @@
 <translation id="8482077254400484047">ਅਕਿਰਿਆਸ਼ੀਲ ਟੈਬਾਂ ਦੀ ਦਿੱਖ ਦਾ ਇੱਥੇ ਪ੍ਰਬੰਧਨ ਕਰੋ</translation>
 <translation id="8483248364096924578">IP ਪਤਾ</translation>
 <translation id="8486666913807228950">ਕਾਰਨ: ਉਲਟਾ ਨਿਯਮ <ph name="REVERT_RULE" /> "ਇਸ ਵਿੱਚ ਜ਼ਬਰਦਸਤੀ ਖੋਲ੍ਹੋ" ਸੂਚੀ ਵਿੱਚ ਮਿਲਿਆ ਸੀ।</translation>
+<translation id="8487303289354211861">ਪਿੰਨ ਕੀਤਾ ਗਿਆ! ਤੁਸੀਂ ਟੂਲਬਾਰ 'ਤੇ ਦਿੱਤੇ ਨਵੇਂ ਬਟਨ ਨਾਲ ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਤੱਕ ਦੁਬਾਰਾ ਪਹੁੰਚ ਕਰ ਸਕਦੇ ਹੋ</translation>
 <translation id="8487678622945914333">ਜ਼ੂਮ ਵਧਾਓ</translation>
 <translation id="8487699605742506766">ਹੌਟਸਪੌਟ</translation>
 <translation id="8489156414266187072">ਨਿੱਜੀ ਸੁਝਾਅ ਸਿਰਫ਼ ਤੁਹਾਡੇ ਖਾਤੇ 'ਤੇ ਦਿਖਾਏ ਜਾਂਦੇ ਹਨ</translation>
@@ -10364,7 +10377,6 @@
 <translation id="8784626084144195648">Binned Average</translation>
 <translation id="8785622406424941542">ਸਟਾਈਲਸ</translation>
 <translation id="8786824282808281903">ਤੁਹਾਡੇ ਬੱਚੇ ਵੱਲੋਂ ਇਸ ਪ੍ਰਤੀਕ ਨੂੰ ਦੇਖੇ ਜਾਣ 'ਤੇ, ਪਛਾਣ ਲਈ ਜਾਂ ਖਰੀਦਾਂ ਨੂੰ ਮਨਜ਼ੂਰ ਕਰਨ ਲਈ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ।</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{ਬੇਨਾਮ ਗਰੁੱਪ - 1 ਟੈਬ}one{ਬੇਨਾਮ ਗਰੁੱਪ - # ਟੈਬ}other{ਬੇਨਾਮ ਗਰੁੱਪ - # ਟੈਬ}}</translation>
 <translation id="8787752878731558379">ਸਾਨੂੰ ਇਹ ਦੱਸ ਕੇ Chrome ਨੂੰ ਬਿਹਤਰ ਬਣਾਉਣ ਵਿੱਚ ਸਾਡੀ ਮਦਦ ਕਰੋ ਕਿ ਤੁਸੀਂ ਤੀਜੀ-ਧਿਰ ਦੀਆਂ ਕੁਕੀਜ਼ ਦੀ ਆਗਿਆ ਕਿਉਂ ਦਿੱਤੀ ਹੈ</translation>
 <translation id="8789898473175677810">Chrome ਕ੍ਰਾਸ-ਸਾਈਟ ਟਰੈਕਿੰਗ ਨੂੰ ਘਟਾਉਣ ਅਤੇ ਤੀਜੀ-ਧਿਰ ਕੁਕੀਜ਼ ਦੀ ਵਰਤੋਂ ਨੂੰ ਪੜਾਅਵਾਰ ਕਰਨ ਲਈ ਇੱਕ <ph name="LINK_BEGIN" />ਸਹਿਯੋਗੀ ਯਤਨ<ph name="LINK_END" /> ਦਾ ਹਿੱਸਾ ਹੈ। ਪਰ ਅਸੀਂ ਇਸ ਨੂੰ ਜ਼ਿੰਮੇਵਾਰੀ ਨਾਲ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰ ਰਹੇ ਹਾਂ, ਕਿਉਂਕਿ ਬਹੁਤ ਸਾਰੀਆਂ ਸਾਈਟਾਂ ਡਿਜ਼ਾਈਨ ਕੀਤੇ ਅਨੁਸਾਰ ਕੰਮ ਕਰਨ ਲਈ ਤੀਜੀ-ਧਿਰ ਦੀਆਂ ਕੁਕੀਜ਼ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀਆਂ ਹਨ। ਉਦਾਹਰਨ ਲਈ, ਬਹੁਤ ਸਾਰੀਆਂ ਸਾਈਟਾਂ ਸਾਈਨ-ਇਨ ਨੂੰ ਆਸਾਨ ਬਣਾਉਣ, ਜੋੜੀ ਗਈ ਚੈਟ ਅਤੇ ਟਿੱਪਣੀ ਦੇ ਸਿਸਟਮ ਦਾ ਸਮਰਥਨ ਕਰਨ ਅਤੇ ਭੁਗਤਾਨ ਸੇਵਾਵਾਂ ਲਈ ਤੀਜੀ-ਧਿਰ ਦੀਆਂ ਕੁਕੀਜ਼ ਵਰਤਦੀਆਂ ਹਨ। ਅਤੇ ਵਿਗਿਆਪਨਦਾਤਾ ਅਕਸਰ ਵਿਅਕਤੀਗਤ ਵਿਗਿਆਪਨਾਂ ਨੂੰ ਬਿਹਤਰ ਬਣਾਉਣ ਲਈ ਤੀਜੀ-ਧਿਰ ਦੀਆਂ ਕੁਕੀਜ਼ ਵਰਤਦੇ ਹਨ। ਇਹ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿਉਂਕਿ ਸਾਈਟਾਂ ਖਰਚਿਆਂ ਦਾ ਭੁਗਤਾਨ ਕਰਨ ਅਤੇ ਉਨ੍ਹਾਂ ਦੀ ਆਨਲਾਈਨ ਸਮੱਗਰੀ ਨੂੰ ਬਿਨਾਂ ਕੀਮਤ ਰੱਖਣ ਵਿੱਚ ਮਦਦ ਕਰਨ ਲਈ ਅਕਸਰ ਵਿਗਿਆਪਨਾਂ 'ਤੇ ਭਰੋਸਾ ਕਰਦੀਆਂ ਹਨ।</translation>
 <translation id="8791157330927639737">ਅੱਪਡੇਟ ਕਰਨ ਬਾਰੇ ਹੋਰ ਜਾਣੋ</translation>
@@ -10678,6 +10690,7 @@
 <translation id="9014674417732091912">ਕਤਾਰ <ph name="ROW_NUMBER" /> 'ਤੇ ਲਿਜਾਇਆ ਗਿਆ</translation>
 <translation id="901668144954885282">Google Drive ਵਿੱਚ ਬੈਕਅੱਪ ਲਓ</translation>
 <translation id="9016827136585652292">ਪਰਦੇਦਾਰੀ ਸਕ੍ਰੀਨ ਨੂੰ ਟੌਗਲ ਕਰਨ ਵਾਲੀ ਕੁੰਜੀ</translation>
+<translation id="9017055559700464094">ਪਿੰਨ ਕੀਤਾ ਗਿਆ! ਟੂਲਬਾਰ ਤੋਂ ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਦੁਬਾਰਾ ਵਰਤੋ</translation>
 <translation id="90181708067259747">ਮਿਆਦ ਸਮਾਪਤੀ ਦੀ ਤਾਰੀਖ: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">ਸਥਾਪਨਾ ਮੁਕੰਮਲ ਹੋਈ</translation>
 <translation id="901876615920222131">ਗਰੁੱਪ ਨੂੰ ਮੁੜ-ਖੋਲ੍ਹਣ ਲਈ, ਗਰੁੱਪ 'ਤੇ ਕਲਿੱਕ ਕਰੋ</translation>
@@ -10836,6 +10849,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />ਬਿਹਤਰੀਨ ਅਨੁਭਵ ਲਈ, ਆਪਣੀ ਅੰਦਰੂਨੀ ਡਿਸਕ 'ਤੇ <ph name="DEVICE_OS" /> ਸਥਾਪਤ ਕਰੋ। ਤੁਸੀਂ ਇਸ ਨੂੰ ਬਾਅਦ ਵਿੱਚ ਲੌਗ-ਇਨ ਸਕ੍ਰੀਨ ਤੋਂ ਵੀ ਸਥਾਪਤ ਕਰ ਸਕਦੇ ਹੋ।<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ਜੇ ਤੁਸੀਂ ਸਥਾਪਤ ਕਰਨ ਲਈ ਤਿਆਰ ਨਹੀਂ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਇਸ ਨੂੰ ਅਜ਼ਮਾਉਣ ਲਈ USB ਤੋਂ ਚਲਾ ਸਕਦੇ ਹੋ। ਇਹ ਤੁਹਾਡੇ ਮੌਜੂਦਾ OS ਅਤੇ ਡਾਟੇ ਨੂੰ ਨਹੀਂ ਵਰਤੇਗਾ, ਪਰ ਤੁਸੀਂ ਸਟੋਰੇਜ ਅਤੇ ਕਾਰਗੁਜ਼ਾਰੀ ਦੀਆਂ ਸੀਮਾਵਾਂ ਨੂੰ ਦੇਖ ਸਕਦੇ ਹੋ।<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">ਪਿੰਨ ਕੀਤੀ ਟੈਬ ਦੇ ਤੌਰ ਤੇ ਖੋਲ੍ਹੋ</translation>
+<translation id="9122788874051694311">ਕੀ ਇਸ ਪਾਸਕੀ ਨੂੰ ਇਨਕੋਗਨਿਟੋ ਤੋਂ ਬਾਹਰ ਰੱਖਿਅਤ ਕਰਨਾ ਹੈ?</translation>
 <translation id="9123287046453017203">ਤੁਹਾਡਾ ਡੀਵਾਈਸ ਅੱਪ-ਟੂ-ਡੇਟ ਨਹੀਂ ਹੈ</translation>
 <translation id="9125910124977405374">ਸਵੈਚਲਿਤ ਤੌਰ 'ਤੇ ਅਨੁਵਾਦ ਕੀਤੀਆਂ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚੋਂ <ph name="LANGUAGE_NAME" /> ਨੂੰ ਹਟਾਓ</translation>
 <translation id="9126149354162942022">ਕਰਸਰ ਦਾ ਰੰਗ</translation>
diff --git a/chrome/app/resources/generated_resources_pl.xtb b/chrome/app/resources/generated_resources_pl.xtb
index 11c905d..b899282f 100644
--- a/chrome/app/resources/generated_resources_pl.xtb
+++ b/chrome/app/resources/generated_resources_pl.xtb
@@ -4050,7 +4050,6 @@
 <translation id="3983586614702900908">urządzenia od nieznanego dostawcy</translation>
 <translation id="3983764759749072418">Aplikacje ze Sklepu Play mają dostęp do tego urządzenia.</translation>
 <translation id="3983769721878416534">Opóźnienie przed kliknięciem</translation>
-<translation id="3983793589497399077">Kliknij lub przeciągnij w dowolne miejsce, aby wyszukać za pomocą Obiektywu</translation>
 <translation id="3984135167056005094">Nie uwzględniaj adresu e-mail</translation>
 <translation id="3984159763196946143">Nie udało się uruchomić trybu demonstracyjnego</translation>
 <translation id="3984431586879874039">Zezwolić tej stronie na odczytywanie danych klucza bezpieczeństwa?</translation>
@@ -7150,7 +7149,6 @@
 <translation id="6383382161803538830">Tryb czytania jest niedostępny na tej stronie</translation>
 <translation id="638418309848716977">Obsługiwane linki</translation>
 <translation id="6384275966486438344">Zmiana ustawień wyszukiwania na: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupa bez nazwy – 1 karta}few{Grupa bez nazwy – # karty}many{Grupa bez nazwy – # kart}other{Grupa bez nazwy – # karty}}</translation>
 <translation id="6385149369087767061">Połącz się z internetem i spróbuj ponownie</translation>
 <translation id="6385382178401976503">Karta: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Ostrzeżenie: masz włączone szczegółowe zapisywanie w dzienniku. Dzienniki poniżej mogą zawierać adresy URL lub inne poufne informacje. Przejrzyj te dane i upewnij się, że chcesz je przesłać.</translation>
@@ -10369,7 +10367,6 @@
 <translation id="8784626084144195648">Średnia w przedziale</translation>
 <translation id="8785622406424941542">Rysik</translation>
 <translation id="8786824282808281903">Gdy Twoje dziecko zobaczy tę ikonę, będzie mogło użyć odcisku palca do identyfikacji lub zatwierdzenia płatności.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupa bez nazwy – 1 karta}few{Grupa bez nazwy – # karty}many{Grupa bez nazwy – # kart}other{Grupa bez nazwy – # karty}}</translation>
 <translation id="8787752878731558379">Pomóż nam ulepszyć Chrome, informując nas, dlaczego zezwalasz na pliki cookie innych firm</translation>
 <translation id="8789898473175677810">W ramach Chrome bierzemy udział we <ph name="LINK_BEGIN" />wspólnym przedsięwzięciu<ph name="LINK_END" />, które ma na celu ograniczenie śledzenia w witrynach i wycofanie użycia plików cookie innych firm. Staramy się to robić odpowiedzialnie, ponieważ wiele witryn korzysta z tych plików cookie, aby działać zgodnie z założeniami. Na przykład wiele witryn używa plików cookie innych firm, aby uprościć logowanie, obsługiwać systemy czatu i komentarzy oraz obsługiwać usługi płatnicze. Reklamodawcy często używają plików cookie innych firm, aby lepiej personalizować reklamy. Ma to znaczenie, ponieważ witryny często polegają na reklamach, aby pokryć wydatki i utrzymać bezpłatny dostęp do treści.</translation>
 <translation id="8791157330927639737">Więcej informacji o aktualizacjach</translation>
diff --git a/chrome/app/resources/generated_resources_pt-BR.xtb b/chrome/app/resources/generated_resources_pt-BR.xtb
index c55778c..7b68894 100644
--- a/chrome/app/resources/generated_resources_pt-BR.xtb
+++ b/chrome/app/resources/generated_resources_pt-BR.xtb
@@ -1669,6 +1669,7 @@
 <translation id="2211043920024403606">Informações do perfil</translation>
 <translation id="2211245494465528624">Gerenciar opções de sincronização</translation>
 <translation id="221297410904507041">Excluir histórico, cookies, cache e muito mais</translation>
+<translation id="2213410656650624348">Moderada</translation>
 <translation id="2214018885812055163">Pastas compartilhadas</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 linha não mostrada&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> linha não mostrada&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> linhas não mostradas&gt;}}</translation>
 <translation id="2215070081105889450">Para compartilhar áudio, compartilhe uma guia ou tela</translation>
@@ -2051,6 +2052,7 @@
 <translation id="2473195200299095979">Traduzir esta página</translation>
 <translation id="2475982808118771221">Ocorreu um erro</translation>
 <translation id="247616523300581745">Ocultar esses arquivos</translation>
+<translation id="2476435723907345463">Chaves de acesso removidas</translation>
 <translation id="2476901513051581836">Não é possível limpar o armazenamento até que se saiba o tamanho do espaço off-line.</translation>
 <translation id="2476974672882258506">Desligue o Windows para desinstalar o <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">A leitura automática foi desativada porque você configurou vários interruptores.</translation>
@@ -2245,6 +2247,7 @@
 <translation id="2620215283731032047">Não foi possível fazer o download de <ph name="FILE_NAME" /> por motivo de segurança.</translation>
 <translation id="2620245777360407679">Dispositivos conectados ao ponto de acesso no momento</translation>
 <translation id="2620436844016719705">Sistema</translation>
+<translation id="262087792756666314">Fixe este recurso para facilitar o acesso. Clique no botão "Fixar" na parte de cima do painel lateral</translation>
 <translation id="2620900772667816510">Super resolução do Bluetooth</translation>
 <translation id="262154978979441594">Treinar modelo de voz do Google Assistente</translation>
 <translation id="26224892172169984">Não permitir que qualquer site trabalhe com protocolos</translation>
@@ -3019,6 +3022,7 @@
 <translation id="3222066309010235055">Pré-processar: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Conectar à VM <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Use o Google Lens para pesquisar o que quiser nesta página</translation>
+<translation id="3223109931751684474">Remover suas chaves de acesso deste dispositivo</translation>
 <translation id="3223531857777746191">Botão "Redefinir"</translation>
 <translation id="3225084153129302039">Avatar roxo padrão</translation>
 <translation id="3225319735946384299">Assinatura do código</translation>
@@ -3344,6 +3348,7 @@
 <translation id="3473479545200714844">Lupa</translation>
 <translation id="3474218480460386727">Use 99 letras ou menos para palavras novas</translation>
 <translation id="3474624961160222204">Continuar como <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Tenha uma economia de memória moderada. As guias ficam inativas depois de um período mais longo.</translation>
 <translation id="347785443197175480">Continuar permitindo que <ph name="HOST" /> acesse sua câmera e seu microfone</translation>
 <translation id="3479357084663933762">Deuteranomalia</translation>
 <translation id="3479552764303398839">Não agora</translation>
@@ -4067,7 +4072,6 @@
 <translation id="3983586614702900908">dispositivos de um fornecedor desconhecido</translation>
 <translation id="3983764759749072418">Os aplicativos da Play Store têm acesso a este dispositivo.</translation>
 <translation id="3983769721878416534">Atraso antes do clique</translation>
-<translation id="3983793589497399077">Clique ou arraste para qualquer lugar para pesquisar com o Lens</translation>
 <translation id="3984135167056005094">Não incluir endereço de e-mail</translation>
 <translation id="3984159763196946143">Não foi possível iniciar o modo de demonstração</translation>
 <translation id="3984431586879874039">Permitir que este site veja sua chave de segurança?</translation>
@@ -4104,6 +4108,7 @@
 <translation id="4010036441048359843">Ativar destaque</translation>
 <translation id="4010746393007464819">Um upgrade para o Debian 12 (Bookworm) está disponível</translation>
 <translation id="4010917659463429001">Para acessar seus favoritos no dispositivo móvel, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Fixe este recurso para facilitar o acesso</translation>
 <translation id="4014432863917027322">Reparar "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="4015163439792426608">Instalou extensões? <ph name="BEGIN_LINK" />Gerencie suas extensões<ph name="END_LINK" /> em um só lugar.</translation>
 <translation id="4016762287427926315">As permissões concedidas para <ph name="APP_NAME" /> também serão dadas para este app. <ph name="BEGIN_LINK" />Gerenciar<ph name="END_LINK" /></translation>
@@ -4407,6 +4412,7 @@
 <translation id="4261429981378979799">Permissões das extensões</translation>
 <translation id="4262004481148703251">Dispensar aviso</translation>
 <translation id="4263223596040212967">Verifique o layout do seu teclado e tente novamente.</translation>
+<translation id="4263470758446311292">Economize memória ao máximo. Suas guias ficam inativas depois de um período mais curto.</translation>
 <translation id="4265096510956307240">Confirme sua identidade</translation>
 <translation id="4265301768135164545">Também é possível configurar um perfil de eSIM <ph name="BEGIN_LINK" />manualmente<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Para verificar se há atualizações, utilize Ethernet, Wi-Fi ou a rede de dados móveis.</translation>
@@ -4726,6 +4732,7 @@
 <translation id="4503748371388753124">Seu computador tem um dispositivo de segurança Trusted Platform Module (TPM), que é usado para implementar vários recursos de segurança importantes no ChromeOS Flex. Visite a Central de Ajuda do Chromebook para saber mais: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Os cookies foram permitidos}=1{Os cookies foram permitidos, com 1 exceção}one{Os cookies foram permitidos, com {COUNT} exceção}other{Os cookies foram permitidos, com {COUNT} exceções}}</translation>
 <translation id="4504940961672722399">Para usar esta extensão, clique neste ícone ou pressione <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Baixe o Chrome usando o QR code e faça login na sua Conta do Google.</translation>
 <translation id="450552327874992444">Palavra já adicionada</translation>
 <translation id="4507373251891673233">Você bloqueou todas as extensões do <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Clique em "Adicionar atalho"</translation>
@@ -5061,6 +5068,7 @@
 <translation id="4768332406694066911">Você tem certificados das seguintes empresas que identificam você</translation>
 <translation id="4769632191812288342">Você está com a proteção padrão</translation>
 <translation id="4770119228883592393">Permissão solicitada. Pressione ⌘ + Option + seta para baixo para responder</translation>
+<translation id="4770755495532014179">Use essa senha no seu iPhone</translation>
 <translation id="4773112038801431077">Fazer upgrade do Linux</translation>
 <translation id="477548766361111120">Permitir que a extensão leia e modifique este site</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> conectado</translation>
@@ -5230,6 +5238,7 @@
 <translation id="4890399733764921729">Não é possível conectar. Bloqueada por outra operadora de rede móvel.</translation>
 <translation id="4890773143211625964">Mostrar opções avançadas de impressora</translation>
 <translation id="4891089016822695758">Fórum do Beta</translation>
+<translation id="4891795846939730995">Para permitir que este dispositivo saiba suas chaves de acesso novamente, faça login em um site ou app com uma chave de acesso salva</translation>
 <translation id="4892229439761351791">O site pode usar o Bluetooth</translation>
 <translation id="4892328231620815052">Quando estiver tudo pronto, encontre sua Lista de leitura em Favoritos e Listas</translation>
 <translation id="489258173289528622">Ação de inatividade enquanto estiver na bateria</translation>
@@ -6460,6 +6469,7 @@
 <translation id="5846504156837627898">Gerenciar permissões de sites</translation>
 <translation id="5846749317653566506">Ajuste as configurações de correção de cor para garantir que as cores fiquem nítidas</translation>
 <translation id="5846807460505171493">Instalar atualizações e apps. Ao continuar, você aceita que este dispositivo também pode fazer o download e a instalação de atualizações e apps do Google, da operadora e do fabricante do dispositivo de forma automática, possivelmente usando dados da rede celular. Alguns desses apps podem oferecer compras no aplicativo.</translation>
+<translation id="5848054741303781539">Definido manualmente, sem usar a localização</translation>
 <translation id="5848319660029558352">Leitura em voz alta e formatação de texto</translation>
 <translation id="5849212445710944278">Já adicionada</translation>
 <translation id="584945105664698226">Velocidade da fala</translation>
@@ -7158,7 +7168,6 @@
 <translation id="6383382161803538830">O modo de leitura não está disponível nesta página</translation>
 <translation id="638418309848716977">Links compatíveis</translation>
 <translation id="6384275966486438344">Alterar suas configurações de pesquisa para: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupo sem nome: 1 guia}one{Grupo sem nome: # guia}other{Grupo sem nome: # guias}}</translation>
 <translation id="6385149369087767061">Conecte-se à Internet e tente novamente</translation>
 <translation id="6385382178401976503">Cartão: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Aviso: o registro detalhado está ativado. Os registros abaixo podem incluir URLs ou outras informações sensíveis. Revise-os e confirme se você está de acordo com o envio dessas informações.</translation>
@@ -7492,6 +7501,7 @@
 <translation id="6648911618876616409">Uma atualização crítica está pronta para ser instalada. Faça login para começar.</translation>
 <translation id="6649018507441623493">Só um segundo…</translation>
 <translation id="6650206238642452078">Inscreva-se em eventos do sistema ChromeOS</translation>
+<translation id="6650584564768559994">Tenha uma economia de memória equilibrada. Suas guias ficam inativas depois de um período ideal.</translation>
 <translation id="665061930738760572">Abrir em &amp;nova janela</translation>
 <translation id="6651237644330755633">Confiar neste certificado para a identificação de websites.</translation>
 <translation id="6651495917527016072">Sincronizar redes Wi-Fi com seu smartphone. <ph name="LINK_BEGIN" />Saiba mais<ph name="LINK_END" /></translation>
@@ -7749,6 +7759,7 @@
 <translation id="6831043979455480757">Traduzir</translation>
 <translation id="6832218595502288407">Alinhar à esquerda</translation>
 <translation id="6833479554815567477">A guia foi removida do grupo <ph name="GROUP_NAME" />: <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Equilibrada (recomendado)</translation>
 <translation id="6835762382653651563">Conecte-se à Internet para atualizar seu <ph name="DEVICE_TYPE" />.</translation>
 <translation id="683630338945552556">Usar e salvar senhas na sua Conta do Google</translation>
 <translation id="6839225236531462745">Erro de exclusão do certificado</translation>
@@ -9400,6 +9411,7 @@
 <translation id="8066444921260601116">Caixa de diálogo de conexão</translation>
 <translation id="8070572887926783747">Permissão de localização para o <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Retorno tátil</translation>
+<translation id="8071033114691184017">Use essa senha no seu iPhone</translation>
 <translation id="8071432093239591881">Imprimir como imagem</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Os dados de apps podem ser quaisquer dados que um app tenha salvado (com base nas configurações de desenvolvedores), incluindo dados como contatos, mensagens e fotos.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Os dados de backup não serão contabilizados na cota de armazenamento do Drive do seu filho.<ph name="END_PARAGRAPH2" />
@@ -9967,6 +9979,7 @@
 <translation id="8482077254400484047">Gerencie o visual das guias inativas aqui</translation>
 <translation id="8483248364096924578">Endereço IP</translation>
 <translation id="8486666913807228950">Motivo: a regra invertida <ph name="REVERT_RULE" /> foi encontrada na lista "Forçar a abertura em"</translation>
+<translation id="8487303289354211861">Fixado. Você pode acessar este recurso novamente usando o novo botão na barra de ferramentas</translation>
 <translation id="8487678622945914333">Aproximar</translation>
 <translation id="8487699605742506766">Ponto de acesso</translation>
 <translation id="8489156414266187072">As sugestões personalizadas são exibidas apenas na sua conta</translation>
@@ -10366,7 +10379,6 @@
 <translation id="8784626084144195648">Média de pré-processamento</translation>
 <translation id="8785622406424941542">Stylus</translation>
 <translation id="8786824282808281903">Quando a criança vir este ícone, a impressão digital poderá ser usada para identificação ou aprovação de compras.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupo sem nome: 1 guia}one{Grupo sem nome: # guia}other{Grupo sem nome: # guias}}</translation>
 <translation id="8787752878731558379">Ajude a melhorar o Chrome informando por que você permitiu cookies de terceiros</translation>
 <translation id="8789898473175677810">O Chrome faz parte de um <ph name="LINK_BEGIN" />esforço colaborativo<ph name="LINK_END" /> para reduzir o rastreamento entre sites e eliminar gradualmente o uso de cookies de terceiros. No entanto, estamos tentando fazer isso com responsabilidade, porque muitos sites dependem de cookies de terceiros para funcionar como planejado. Por exemplo, muitos sites usam cookies de terceiros para simplificar o login, oferecer suporte a sistemas incorporados de chat e comentários e serviços de pagamento. Além disso, os anunciantes costumam usar cookies de terceiros para personalizar melhor os anúncios. Isso é importante porque os sites geralmente contam com anúncios para ajudar a pagar as despesas e manter o conteúdo on-line sem custo financeiro.</translation>
 <translation id="8791157330927639737">Saiba mais sobre como atualizar</translation>
@@ -10680,6 +10692,7 @@
 <translation id="9014674417732091912">Movido para a linha <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Fazer backup no Google Drive</translation>
 <translation id="9016827136585652292">alternar Tela de privacidade</translation>
+<translation id="9017055559700464094">Fixado. Use este recurso novamente pela barra de ferramentas</translation>
 <translation id="90181708067259747">Data de validade: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Instalação concluída</translation>
 <translation id="901876615920222131">Para abrir o grupo de novo, clique nele</translation>
@@ -10838,6 +10851,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Para ter a melhor experiência possível, instale o <ph name="DEVICE_OS" /> no seu disco interno. Você também pode o instalar mais tarde na tela de login.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Se ainda não quiser fazer a instalação, é possível o executar no dispositivo USB para conhecer o sistema. Essa opção garantirá que o SO e seus dados sejam mantidos, mas talvez haja limitações de armazenamento e desempenho.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Abrir como guia fixada</translation>
+<translation id="9122788874051694311">Salvar esta chave de acesso fora da navegação anônima?</translation>
 <translation id="9123287046453017203">O dispositivo não está atualizado</translation>
 <translation id="9125910124977405374">Remover o <ph name="LANGUAGE_NAME" /> da lista "Traduzir estes idiomas automaticamente"</translation>
 <translation id="9126149354162942022">Cor do cursor</translation>
diff --git a/chrome/app/resources/generated_resources_pt-PT.xtb b/chrome/app/resources/generated_resources_pt-PT.xtb
index f339beea..eaf66a09 100644
--- a/chrome/app/resources/generated_resources_pt-PT.xtb
+++ b/chrome/app/resources/generated_resources_pt-PT.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">O Linux pode não ter espaço em disco suficiente. Pode aumentar o espaço em disco do Linux e tentar restaurar novamente nas <ph name="LINK_START" />Definições<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Moderada</translation>
 <translation id="126156426083987769">Ocorreu um problema com as licenças do dispositivo no modo de demonstração.</translation>
+<translation id="1261885284931493480">Remover os separadores e eliminar o grupo?</translation>
 <translation id="1263231323834454256">Lista de leitura</translation>
 <translation id="1263733306853729545">Usar as teclas <ph name="MINUS" /> e <ph name="EQUAL" /> para paginar uma lista de candidatos</translation>
 <translation id="126387934568812801">Incluir esta captura de ecrã e os títulos dos separadores abertos</translation>
@@ -876,6 +877,7 @@
 <translation id="1634224622052500893">Rede Wi-Fi encontrada</translation>
 <translation id="1634783886312010422">Já alterou esta palavra-passe em <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Damos-lhe as boas-vindas, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Os dados de apps podem ser quaisquer dados que uma app guardou (com base nas definições do programador), incluindo dados como contactos, mensagens e fotos. Os dados da cópia de segurança não são contabilizados para a sua quota de armazenamento do Drive.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Pode desativar este serviço nas Definições.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Obter este marcador no seu iPhone</translation>
@@ -912,6 +914,7 @@
 <translation id="1652862280638399816">Para usar o Gestor de Palavras-passe com o Porta-chaves macOS, reinicie o Chromium e permita o acesso ao Porta-chaves. Os separadores reabrem depois de serem reiniciados.</translation>
 <translation id="1653958716132599769">Agrupar separadores relacionados</translation>
 <translation id="1654580009054503925">Sem autorização para mostrar pedidos</translation>
+<translation id="1654713139320245449">Não foi encontrado nenhum destino de transmissão. Precisa de ajuda?</translation>
 <translation id="1656528038316521561">Opacidade do fundo</translation>
 <translation id="1657406563541664238">Ajude a melhorar o <ph name="PRODUCT_NAME" /> enviando automaticamente estatísticas de utilização e relatórios de falhas para a Google</translation>
 <translation id="1657937299377480641">Para voltares a iniciar sessão e teres acesso a recursos educativos, pede ao teu Pai ou Mãe para te darem autorização.</translation>
@@ -1631,12 +1634,14 @@
 <translation id="2187895286714876935">Erro na importação do certificado do servidor</translation>
 <translation id="2187906491731510095">Extensões atualizadas.</translation>
 <translation id="2188881192257509750">Abrir <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Eliminar o grupo de separadores?</translation>
 <translation id="2190069059097339078">Obtenção de credenciais de Wi-Fi</translation>
 <translation id="219008588003277019">Módulo Native Client: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(vazio)</translation>
 <translation id="2190967441465539539">Não é possível aceder à câmara nem ao microfone</translation>
 <translation id="2191754378957563929">Ativado</translation>
 <translation id="2192505247865591433">De:</translation>
+<translation id="219283042927675668">Separadores no grupo</translation>
 <translation id="2193365732679659387">Definições fidedignas</translation>
 <translation id="2194856509914051091">Aspetos a considerar</translation>
 <translation id="2195331105963583686">Vai continuar a poder utilizar este <ph name="DEVICE_TYPE" /> após essa data, mas deixará de receber atualizações de software e de segurança automáticas.</translation>
@@ -1857,6 +1862,7 @@
 <translation id="2350133097354918058">Atualizada.</translation>
 <translation id="2350182423316644347">A inicializar a aplicação...</translation>
 <translation id="235028206512346451">Quando se afasta do seu dispositivo, o ecrã é automaticamente bloqueado. Quando está à frente do dispositivo, o ecrã mantém-se ativado durante mais tempo. Se não estiver a usar um ecrã de bloqueio, o seu dispositivo fica suspenso em vez de bloqueado.</translation>
+<translation id="2352305801620974284">Quando inicia sessão neste dispositivo, tem as suas palavras-passe e muito mais da sua Conta Google</translation>
 <translation id="2352662711729498748">&lt;1 MB</translation>
 <translation id="2352810082280059586">As notas do ecrã de bloqueio são automaticamente guardadas na aplicação <ph name="LOCK_SCREEN_APP_NAME" />. A nota mais recente permanece no ecrã de bloqueio.</translation>
 <translation id="2353297238722298836">Câmara e microfone permitidos</translation>
@@ -2067,6 +2073,7 @@
 <translation id="249113932447298600">Lamentamos, mas de momento o aparelho <ph name="DEVICE_LABEL" /> não é suportado.</translation>
 <translation id="2491587035099903063">pré-visualizar voz em <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">A preparar pedido de assinatura de certificado…</translation>
+<translation id="2492964937550251173">Fechar os separadores e eliminar o grupo?</translation>
 <translation id="249330843868392562">Abrir definições da conversão de texto em voz</translation>
 <translation id="2494555621641843783">Não é possível instalar o Steam</translation>
 <translation id="2495141202137516054">Do seu Drive</translation>
@@ -2236,6 +2243,7 @@
 <translation id="262087792756666314">Pode fixar esta funcionalidade para acesso fácil; clique no botão Fixar na parte superior do painel lateral</translation>
 <translation id="2620900772667816510">Super-resolução Bluetooth</translation>
 <translation id="262154978979441594">Treinar o modelo de voz do Assistente Google</translation>
+<translation id="2622280935687585828">Remover <ph name="SITE_NAME" /> dos sites desativados</translation>
 <translation id="26224892172169984">Não permitir que os Web sites processem protocolos</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Controlo e reprogramação de dispositivos MIDI permitidos</translation>
@@ -2409,6 +2417,7 @@
 <translation id="2743387203779672305">Copiar para a área de transferência</translation>
 <translation id="274362947316498129">Uma app está a tentar aceder à <ph name="DEVICE_NAME" />. Desative o interruptor de privacidade da <ph name="DEVICE_NAME" /> para permitir o acesso.</translation>
 <translation id="2745080116229976798">Subordinação qualificada Microsoft</translation>
+<translation id="2747853844543618313">Certifique-se de que aceita o pedido de transmissão no dispositivo <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Iniciar sessão no <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Rever gramática com a ortografia</translation>
@@ -2780,6 +2789,7 @@
 <translation id="3021066826692793094">Borboleta</translation>
 <translation id="3021678814754966447">&amp;Ver Origem da Moldura</translation>
 <translation id="3021902017511220299">Falha ao analisar. Esta ação foi bloqueada pelo seu administrador.</translation>
+<translation id="3022068420678496307">Esta ação elimina o grupo de todos os dispositivos com sessão iniciada no Chrome com esta Conta Google.</translation>
 <translation id="3022361196600037287">O dispositivo <ph name="DEVICE" /> vai ser removido deste Chromebook e não vai ser guardado em <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Não entendido.</translation>
 <translation id="3023464535986383522">Selecionar para falar</translation>
@@ -4059,7 +4069,6 @@
 <translation id="3983586614702900908">dispositivos de um fornecedor desconhecido</translation>
 <translation id="3983764759749072418">As aplicações da Play Store têm acesso a este dispositivo.</translation>
 <translation id="3983769721878416534">Atraso antes de clicar</translation>
-<translation id="3983793589497399077">Clique ou arraste em qualquer lugar para pesquisar com o Lens</translation>
 <translation id="3984135167056005094">Não incluir endereço de email</translation>
 <translation id="3984159763196946143">Não foi possível iniciar o modo de demonstração</translation>
 <translation id="3984431586879874039">Permitir que este site veja a sua chave de segurança?</translation>
@@ -4182,6 +4191,7 @@
 <translation id="4078903002989614318">Opções de ordenação e da lista</translation>
 <translation id="4079140982534148664">Usar a verificação ortográfica avançada</translation>
 <translation id="4082333918978320301">Nenhum Website tem autorização para usar o microfone</translation>
+<translation id="4083735423615351075">Os separadores vão permanecer abertos neste dispositivo, mas o grupo vai ser eliminado de todos os dispositivos com sessão iniciada no Chrome com esta Conta Google.</translation>
 <translation id="4084682180776658562">Marcar</translation>
 <translation id="4084835346725913160">Fechar <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">O JavaScript foi bloqueado nesta página.</translation>
@@ -4191,6 +4201,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Mostrar à direita</translation>
+<translation id="4088879333319441249">Desagrupar o grupo de separadores?</translation>
 <translation id="4089235344645910861">Definições guardadas. A sincronização foi iniciada.</translation>
 <translation id="4089817585533500276">Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Ativar acesso confirmado</translation>
@@ -5672,6 +5683,7 @@
 <translation id="5242724311594467048">Ativar a extensão "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="5243522832766285132">Tente novamente dentro de alguns momentos.</translation>
 <translation id="5244234799035360187">O OneDrive aparece agora na app Files</translation>
+<translation id="5244466461749935369">Manter por agora</translation>
 <translation id="5244474230056479698">A sincronizar com <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Comece com uma conta escolar</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> falhou. Clique neste balão para reiniciar a aplicação.</translation>
@@ -5940,6 +5952,7 @@
 <translation id="5453829744223920473">A criança pode usar todos os recursos, marcadores e apps escolares como faz na sala de aula. A escola define as regras básicas.</translation>
 <translation id="5454166040603940656">com <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Ver mais resultados da pesquisa</translation>
+<translation id="5457082343331641453">Adicione à sua pesquisa</translation>
 <translation id="5457113250005438886">Inválido</translation>
 <translation id="5457459357461771897">Ler e eliminar fotos, música e outros elementos multimédia a partir do computador</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6418,6 +6431,7 @@
 <translation id="5816434091619127343">As alterações solicitadas à impressora deixariam-na inutilizável.</translation>
 <translation id="581659025233126501">Ativar sincronização</translation>
 <translation id="5817918615728894473">Sincronizar</translation>
+<translation id="5817963443108180228">Damos-lhe as boas-vindas de volta, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">todas as aplicações</translation>
 <translation id="5821565227679781414">Criar Atalho</translation>
 <translation id="5824976764713185207">Ler automaticamente a página depois de ser carregada</translation>
@@ -7018,6 +7032,7 @@
 <translation id="6265159465845424232">Perguntar antes de copiar ou mover ficheiros da Microsoft para o Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Remover porta</translation>
 <translation id="6266532094411434237">A ligar ao dispositivo <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Personalizar perfil</translation>
 <translation id="6267166720438879315">Selecione um certificado para se autenticar perante <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Abrir com <ph name="APP" /></translation>
 <translation id="6270309713620950855">Desativar som da chamada de atenção</translation>
@@ -7156,7 +7171,6 @@
 <translation id="6383382161803538830">O modo de leitura não está disponível nesta página</translation>
 <translation id="638418309848716977">Links suportados</translation>
 <translation id="6384275966486438344">Alterar as definições de pesquisa para: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupo sem nome – 1 separador}other{Grupo sem nome – # separadores}}</translation>
 <translation id="6385149369087767061">Estabeleça ligação à Internet e tente novamente.</translation>
 <translation id="6385382178401976503">Cartão: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Aviso – O registo detalhado está ativado. Os registos abaixo podem incluir URLs ou outras informações confidenciais. Reveja-os e certifique-se de que concorda com o envio destas informações.</translation>
@@ -7235,6 +7249,7 @@
 <translation id="6445450263907939268">Se não pretendia efetuar estas alterações, pode restaurar as definições anteriores.</translation>
 <translation id="6446213738085045933">Criar atalho no ambiente de trabalho</translation>
 <translation id="6447842834002726250">Cookies</translation>
+<translation id="6449554712554071184">Esta ação elimina permanentemente o grupo do seu dispositivo.</translation>
 <translation id="6450876761651513209">Alterar as suas definições relacionadas com privacidade</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> e mais 1 separador}other{<ph name="PAGE_TITLE" /> e mais # separadores}}</translation>
 <translation id="6451689256222386810">Se se esqueceu da frase de acesso ou pretender alterar esta definição, <ph name="BEGIN_LINK" />reponha a sincronização<ph name="END_LINK" />.</translation>
@@ -7381,6 +7396,7 @@
 <translation id="6556866813142980365">Refazer</translation>
 <translation id="6556903358015358733">Tema e imagem de fundo</translation>
 <translation id="6557290421156335491">Os meus atalhos</translation>
+<translation id="6560061709899140565">Mostrar outras sessões de transmissão</translation>
 <translation id="6560151649238390891">Sugestão inserida</translation>
 <translation id="6561726789132298588">introduzir</translation>
 <translation id="6562117348069327379">Armazene registos de sistema no diretório Transferências.</translation>
@@ -7470,6 +7486,7 @@
 <translation id="6635674640674343739">Não é possível estabelecer ligação à rede. Verifique a ligação de rede e tente novamente.</translation>
 <translation id="663569763553406962">Veja que extensões podem ler ou alterar um site</translation>
 <translation id="6635944431854494329">O proprietário pode controlar esta funcionalidade em Definições &gt; Avançadas &gt; Enviar automaticamente dados de diagnóstico e de utilização para a Google.</translation>
+<translation id="6636572589916466933">Aceite o pedido de transmissão no dispositivo <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Explore mais definições abaixo ou conclua agora</translation>
 <translation id="6639554308659482635">Memória SQLite</translation>
 <translation id="6640268266988685324">Separador aberto</translation>
@@ -8155,6 +8172,7 @@
 <translation id="715396040729904728">Launcher + Shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Partilhe o seu feedback ou descreva o problema. Se possível, inclua passos para reproduzir o problema.</translation>
 <translation id="7154130902455071009">Alterar a página de início para: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Beneficie de uma melhor qualidade de vídeo e conserve a autonomia da bateria. O vídeo é reproduzido apenas no seu ecrã Compatível com o Cast.</translation>
 <translation id="7159953856712257647">Instalada por predefinição</translation>
 <translation id="7160182524506337403">Agora, pode ver as notificações do seu telemóvel</translation>
 <translation id="7165263843655074092">Vai obter a proteção de segurança padrão neste dispositivo</translation>
@@ -9013,6 +9031,7 @@
 <translation id="7788948939674438635">Não permitir que os sites bloqueiem o teclado</translation>
 <translation id="7789963078219276159">O fundo da página de início foi alterado para <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">OCR do PDF</translation>
+<translation id="7790737481627460475">Ficheiros neste Chromebook</translation>
 <translation id="7791269138074599214">Método de introdução</translation>
 <translation id="7791429245559955092">Esta aplicação vai ser instalada no seu perfil do Chrome usado atualmente</translation>
 <translation id="7791436592012979144">Deslocamento inverso ativado</translation>
@@ -9042,6 +9061,7 @@
 <translation id="7810202088502699111">Os pop-ups foram bloqueados nesta página.</translation>
 <translation id="7810367892333449285">A sua entrada deve ter o formato <ph name="LPA_0" />$<ph name="LPA_1" />Endereço de SM-DP+<ph name="LPA_2" />$<ph name="LPA_3" />ID correspondente opcional<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Tente novamente ou selecione um dos temas gerados anteriormente abaixo.</translation>
+<translation id="7814090115158024843">Nunca oferecer ajuda na escrita nestes sites</translation>
 <translation id="7814458197256864873">&amp;Copiar</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Editar atalho <ph name="SHORTCUT" /> para <ph name="EXTENSION_NAME" /></translation>
@@ -9273,8 +9293,10 @@
 <translation id="7974936243149753750">Overscan</translation>
 <translation id="7975504106303186033">Tem de inscrever este dispositivo do Chrome Education numa conta de educação. Para se inscrever numa nova conta, visite g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Envia-lhe um aviso se usar uma palavra-passe que tenha sido comprometida numa violação de dados.</translation>
+<translation id="797824194429476746">Os separadores vão permanecer abertos neste dispositivo, mas o grupo vai ser eliminado permanentemente.</translation>
 <translation id="7978412674231730200">Chave privada</translation>
 <translation id="7978450511781612192">Deste modo, termina sessão nas suas Contas Google. Os marcadores, o histórico, as palavras-passe e muito mais deixam de ser sincronizados.</translation>
+<translation id="7980066177668669492">ASCII codificado em Base64, vários certificados</translation>
 <translation id="7980084013673500153">ID do recurso: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Use uma chave de acesso guardada para a app <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Mostrar pop-up do código QR e EID do dispositivo</translation>
@@ -9687,6 +9709,7 @@
 <translation id="8276242035951017580">Nenhuma app tem autorização para usar a câmara</translation>
 <translation id="8276560076771292512">Esvaziar cache e recarregamento forçado</translation>
 <translation id="8276850948802942358">Saiba como conceder autorização temporária a um site para usar cookies de terceiros</translation>
+<translation id="8277907305629781277">Criou esta chave de acesso a <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Websites nos seus idiomas</translation>
 <translation id="828180235270931531">Outras impressoras disponíveis</translation>
 <translation id="8281886186245836920">Ignorar</translation>
@@ -10365,7 +10388,6 @@
 <translation id="8784626084144195648">Média arquivada</translation>
 <translation id="8785622406424941542">Caneta stylus</translation>
 <translation id="8786824282808281903">Quando a criança vê este ícone, é possível utilizar uma impressão digital para identificação ou para aprovar compras.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupo sem nome – 1 separador}other{Grupo sem nome – # separadores}}</translation>
 <translation id="8787752878731558379">Ajude-nos a melhorar o Chrome ao dizer-nos o motivo pelo qual permitiu os cookies de terceiros</translation>
 <translation id="8789898473175677810">O Chrome faz parte de um <ph name="LINK_BEGIN" />esforço conjunto<ph name="LINK_END" /> para reduzir a monitorização entre sites e descontinuar a utilização de cookies de terceiros. No entanto, estamos a tentar fazê-lo de forma responsável, porque muitos sites dependem de cookies de terceiros para funcionarem tal como concebido. Por exemplo, muitos sites usam cookies de terceiros para simplificar o início de sessão, suportar sistemas de chat e comentários incorporados e para serviços de pagamento. Além disso, os anunciantes usam frequentemente cookies de terceiros para personalizar melhor os anúncios. Isto é importante porque os sites contam frequentemente com anúncios para ajudar a pagar despesas e manter o respetivo conteúdo online sem custo financeiro.</translation>
 <translation id="8791157330927639737">Saber mais sobre as atualizações</translation>
@@ -10600,6 +10622,7 @@
 <translation id="8962863356073277855">O formato do URL deve ser https://www.example.com</translation>
 <translation id="8962918469425892674">Este site está a utilizar sensores de movimento ou de luz.</translation>
 <translation id="8963117664422609631">Aceda às definições do site</translation>
+<translation id="8964795217937248330">Fechar os separadores e eliminar o grupo?</translation>
 <translation id="8965037249707889821">Introduzir palavra-passe antiga</translation>
 <translation id="8966809848145604011">Outros perfis</translation>
 <translation id="8967427617812342790">Adicionar à lista de leitura</translation>
@@ -11033,6 +11056,7 @@
 <translation id="979345485590886759">Os sites podem pedir para bloquear o ponteiro do rato</translation>
 <translation id="980731642137034229">Botão menu de ação</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Olá, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Fechar todos os separadores</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" />: gravação da câmara e do microfone</translation>
 <translation id="984275831282074731">Métodos de pagamento</translation>
diff --git a/chrome/app/resources/generated_resources_ro.xtb b/chrome/app/resources/generated_resources_ro.xtb
index cda2a9c32..c7c712d 100644
--- a/chrome/app/resources/generated_resources_ro.xtb
+++ b/chrome/app/resources/generated_resources_ro.xtb
@@ -366,6 +366,7 @@
 <translation id="1260810365552581339">Este posibil să nu existe suficient spațiu pe disc pentru Linux. Poți să eliberezi spațiu pe disc pentru Linux și să încerci din nou să restabilești din <ph name="LINK_START" />Setări<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Moderată</translation>
 <translation id="126156426083987769">A apărut o problemă cu licențele dispozitivului din modul demo.</translation>
+<translation id="1261885284931493480">Elimini filele și ștergi grupul?</translation>
 <translation id="1263231323834454256">Lista de lectură</translation>
 <translation id="1263733306853729545">Folosește tastele <ph name="MINUS" /> și <ph name="EQUAL" /> pentru a pagina o listă de sugestii</translation>
 <translation id="126387934568812801">Include această captură de ecran și titlurile filelor deschise</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">S-a găsit rețeaua Wi-Fi</translation>
 <translation id="1634783886312010422">Ai schimbat deja parola pe <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Bun venit, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Datele unei aplicații reprezintă toate datele pe care le-a salvat aplicația (în funcție de setările dezvoltatorului), inclusiv date cum ar fi agenda, mesajele și fotografiile. Datele cărora li s-a făcut backup nu sunt luate în considerare la calcularea cotei de stocare Drive.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Poți dezactiva acest serviciu din Setări.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Obține marcajul pe iPhone</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">Pentru a folosi Managerul de parole cu macOS Keychain, relansează Chromium și permite accesul pentru Keychain. Filele se vor redeschide după relansare.</translation>
 <translation id="1653958716132599769">Grupează filele asociate</translation>
 <translation id="1654580009054503925">Nu are permisiunea de a afișa solicitări</translation>
+<translation id="1654713139320245449">Nu a fost găsit niciun dispozitiv pentru proiectare. Ai nevoie de ajutor?</translation>
 <translation id="1656528038316521561">Opacitatea fundalului</translation>
 <translation id="1657406563541664238">Trimite automat statistici de utilizare și rapoarte de blocare la Google pentru a contribui la îmbunătățirea <ph name="PRODUCT_NAME" />.</translation>
 <translation id="1657937299377480641">Ca să te conectezi din nou pentru acces la resurse educaționale, solicită permisiunea unui părinte</translation>
@@ -1632,12 +1635,14 @@
 <translation id="2187895286714876935">Eroare de import a certificatului serverului</translation>
 <translation id="2187906491731510095">Extensiile au fost actualizate</translation>
 <translation id="2188881192257509750">Deschide <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Ștergi grupul de file?</translation>
 <translation id="2190069059097339078">Instrument de obținere a datelor de conectare WiFi</translation>
 <translation id="219008588003277019">Modul Client nativ: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(gol)</translation>
 <translation id="2190967441465539539">Nu se pot accesa camera și microfonul</translation>
 <translation id="2191754378957563929">Activat</translation>
 <translation id="2192505247865591433">De la:</translation>
+<translation id="219283042927675668">File în grup</translation>
 <translation id="2193365732679659387">Setări privind încrederea</translation>
 <translation id="2194856509914051091">De reținut</translation>
 <translation id="2195331105963583686">Vei putea folosi în continuare <ph name="DEVICE_TYPE" />, dar nu vei mai primi actualizări automate de software și de securitate</translation>
@@ -1659,6 +1664,7 @@
 <translation id="2211043920024403606">Informații de profil</translation>
 <translation id="2211245494465528624">Gestionează opțiunile de sincronizare</translation>
 <translation id="221297410904507041">Șterge istoricul, cookie-urile, memoria cache și altele</translation>
+<translation id="2213410656650624348">Moderată</translation>
 <translation id="2214018885812055163">Dosare comune</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;O linie nu este afișată&gt;}few{&lt;<ph name="NUMBER_OF_LINES" /> linii nu sunt afișate&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> de linii nu sunt afișate&gt;}}</translation>
 <translation id="2215070081105889450">Pentru a trimite conținut audio, permite accesul la o filă sau la un ecran</translation>
@@ -1857,6 +1863,7 @@
 <translation id="2350133097354918058">S-a reîncărcat</translation>
 <translation id="2350182423316644347">Se inițializează aplicația...</translation>
 <translation id="235028206512346451">Dacă te îndepărtezi de dispozitiv, ecranul se va bloca automat. Când ești în fața dispozitivului, acesta va rămâne activat mai mult. Dacă nu folosești un ecran de blocare, dispozitivul va intra în starea de inactivitate în loc să se blocheze.</translation>
+<translation id="2352305801620974284">Când te conectezi pe acest dispozitiv, obții parolele și multe altele din Contul Google</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Notele de pe ecranul de blocare sunt salvate automat în <ph name="LOCK_SCREEN_APP_NAME" />. Cea mai recentă notă va rămâne pe ecranul de blocare.</translation>
 <translation id="2353297238722298836">Camera foto și microfonul sunt permise</translation>
@@ -2038,6 +2045,7 @@
 <translation id="2473195200299095979">Traduceți această pagină</translation>
 <translation id="2475982808118771221">A apărut o eroare</translation>
 <translation id="247616523300581745">Ascunde aceste fișiere</translation>
+<translation id="2476435723907345463">Accesul la cheile de acces a fost eliminat</translation>
 <translation id="2476901513051581836">Nu poți elibera spațiu de stocare înainte să cunoști dimensiunea spațiului stocare offline.</translation>
 <translation id="2476974672882258506">Închide Windows pentru a dezinstala <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">Întrucât ai configurat mai multe comutatoare, scanarea automată a fost dezactivată.</translation>
@@ -2066,6 +2074,7 @@
 <translation id="249113932447298600">Ne pare rău, dispozitivul <ph name="DEVICE_LABEL" /> nu este acceptat în prezent.</translation>
 <translation id="2491587035099903063">previzualizare a vocii pentru <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Se pregătește solicitarea de semnare a certificatului</translation>
+<translation id="2492964937550251173">Închizi filele și ștergi grupul?</translation>
 <translation id="249330843868392562">Deschide setările redării vocale a textului</translation>
 <translation id="2494555621641843783">Nu se poate instala Steam</translation>
 <translation id="2495141202137516054">Din Drive</translation>
@@ -2232,8 +2241,10 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> nu se poate descărca în siguranță.</translation>
 <translation id="2620245777360407679">Dispozitive conectate la hotspot</translation>
 <translation id="2620436844016719705">Sistem</translation>
+<translation id="262087792756666314">Poți fixa această funcție pentru acces ușor. Dă clic pe butonul Fixează din partea de sus a panoului lateral.</translation>
 <translation id="2620900772667816510">Super-rezoluție Bluetooth</translation>
 <translation id="262154978979441594">Creează un model vocal pentru Asistentul Google</translation>
+<translation id="2622280935687585828">Elimină <ph name="SITE_NAME" /> din site-urile dezactivate</translation>
 <translation id="26224892172169984">Nu permite site-urilor să gestioneze protocoale</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Controlul și reprogramarea dispozitivelor MIDI sunt permise</translation>
@@ -2407,6 +2418,7 @@
 <translation id="2743387203779672305">Copiați în clipboard</translation>
 <translation id="274362947316498129">O aplicație încearcă să acceseze <ph name="DEVICE_NAME" />. Dezactivează comutatorul de confidențialitate <ph name="DEVICE_NAME" /> pentru a permite accesul.</translation>
 <translation id="2745080116229976798">Subordonare calificată Microsoft</translation>
+<translation id="2747853844543618313">Acceptă solicitarea de proiectare pe <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Conectează-te la <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Verificare gramaticală și ortografică</translation>
@@ -2777,6 +2789,7 @@
 <translation id="3021066826692793094">Fluture</translation>
 <translation id="3021678814754966447">&amp;Afișează sursa cadrului</translation>
 <translation id="3021902017511220299">Scanarea nu a reușit. Acțiunea este blocată de administrator.</translation>
+<translation id="3022068420678496307">Astfel, grupul va fi șters de pe toate dispozitivele conectate la Chrome cu acest Cont Google.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> va fi eliminat de pe acest Chromebook și nu va fi salvat în <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Nu am înțeles.</translation>
 <translation id="3023464535986383522">Selectează și ascultă</translation>
@@ -3007,6 +3020,7 @@
 <translation id="3222066309010235055">Program de redare în avans: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Conectează-te la <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Caută orice în această pagină cu Google Lens</translation>
+<translation id="3223109931751684474">Elimină accesul la cheile de acces de pe acest dispozitiv</translation>
 <translation id="3223531857777746191">Butonul Resetează</translation>
 <translation id="3225084153129302039">Avatar violet prestabilit</translation>
 <translation id="3225319735946384299">Semnarea codului</translation>
@@ -3331,6 +3345,7 @@
 <translation id="3473479545200714844">Lupă de ecran</translation>
 <translation id="3474218480460386727">Folosește maximum 99 de litere pentru cuvintele noi</translation>
 <translation id="3474624961160222204">Continuă ca <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Fă economii moderate de memorie. Filele devin inactive după o perioadă mai lungă.</translation>
 <translation id="347785443197175480">Permiteți în continuare accesul <ph name="HOST" /> la camera și microfonul dvs.</translation>
 <translation id="3479357084663933762">Deuteranomalie</translation>
 <translation id="3479552764303398839">Nu acum</translation>
@@ -4054,7 +4069,6 @@
 <translation id="3983586614702900908">dispozitive de la producător necunoscut</translation>
 <translation id="3983764759749072418">Aplicațiile din Magazinul Play au acces la acest dispozitiv.</translation>
 <translation id="3983769721878416534">Întârziere înainte de clic</translation>
-<translation id="3983793589497399077">Dă clic sau trage oriunde pentru a căuta cu Lens</translation>
 <translation id="3984135167056005094">Nu include adresa de e-mail</translation>
 <translation id="3984159763196946143">Modul demonstrativ nu a pornit</translation>
 <translation id="3984431586879874039">Permiți site-ului să vadă cheia de securitate?</translation>
@@ -4091,6 +4105,7 @@
 <translation id="4010036441048359843">Activează evidențierea</translation>
 <translation id="4010746393007464819">Este disponibil un upgrade la Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">Pentru a accesa marcajele pe dispozitivul mobil, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Poți fixa această funcție pentru acces ușor</translation>
 <translation id="4014432863917027322">Repari „<ph name="EXTENSION_NAME" />”?</translation>
 <translation id="4015163439792426608">Ai extensii? <ph name="BEGIN_LINK" />Gestionează extensiile<ph name="END_LINK" /> ușor, dintr-un singur loc.</translation>
 <translation id="4016762287427926315">Permisiunile pe care le acorzi pentru <ph name="APP_NAME" /> vor fi acordate și pentru această aplicație. <ph name="BEGIN_LINK" />Gestionează-le<ph name="END_LINK" /></translation>
@@ -4176,6 +4191,7 @@
 <translation id="4078903002989614318">Opțiuni de sortare și listă</translation>
 <translation id="4079140982534148664">Folosește verificarea îmbunătățită a ortografiei</translation>
 <translation id="4082333918978320301">Niciun site nu are permisiunea de a folosi microfonul</translation>
+<translation id="4083735423615351075">Filele vor rămâne deschise pe acest dispozitiv, dar grupul va fi șters de pe toate dispozitivele conectate la Chrome cu acest Cont Google.</translation>
 <translation id="4084682180776658562">Marcaj</translation>
 <translation id="4084835346725913160">Închide <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">Scripturile JavaScript au fost blocate pe această pagină.</translation>
@@ -4185,6 +4201,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Afișează în dreapta</translation>
+<translation id="4088879333319441249">Anulezi gruparea filelor?</translation>
 <translation id="4089235344645910861">Setările au fost salvate. Sincronizarea a început.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Activați Acces verificat</translation>
@@ -4394,6 +4411,7 @@
 <translation id="4261429981378979799">Permisiuni pentru extensii</translation>
 <translation id="4262004481148703251">Respinge avertismentul</translation>
 <translation id="4263223596040212967">Verifică structura tastaturii și încearcă din nou.</translation>
+<translation id="4263470758446311292">Fă economii maxime de memorie. Filele devin inactive după o perioadă mai scurtă.</translation>
 <translation id="4265096510956307240">Confirmă-ți identitatea</translation>
 <translation id="4265301768135164545">În plus, poți configura un profil eSIM <ph name="BEGIN_LINK" />manual<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Pentru a verifica dacă există actualizări, utilizați Ethernet, Wi-Fi sau datele mobile.</translation>
@@ -4713,6 +4731,7 @@
 <translation id="4503748371388753124">Computerul conține un dispozitiv de securitate Trusted Platform Module (TPM), care este folosit pentru a implementa numeroase funcții esențiale de securitate în sistemul de operare Chrome Flex. Accesează Centrul de ajutor Chromebook pentru a afla mai multe: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Cookie-urile sunt permise}=1{Cookie-urile sunt permise, cu o excepție}few{Cookie-urile sunt permise, cu {COUNT} excepții}other{Cookie-urile sunt permise, cu {COUNT} de excepții}}</translation>
 <translation id="4504940961672722399">Utilizați această extensie dând clic pe pictogramă sau apăsând pe <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Descarcă Chrome folosind acest cod QR și conectează-te la Contul Google.</translation>
 <translation id="450552327874992444">Cuvântul a fost deja adăugat</translation>
 <translation id="4507373251891673233">Ai blocat toate extensiile de la <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Dă clic pe Adaugă o comandă rapidă</translation>
@@ -5048,6 +5067,7 @@
 <translation id="4768332406694066911">Ai certificate de la aceste organizații care te identifică</translation>
 <translation id="4769632191812288342">Beneficiezi de protecție standard</translation>
 <translation id="4770119228883592393">Permisiune necesară, apasă ⌘ + Option + săgeată în jos pentru a răspunde</translation>
+<translation id="4770755495532014179">Folosește această parolă pe iPhone</translation>
 <translation id="4773112038801431077">Fă upgrade pentru Linux</translation>
 <translation id="477548766361111120">Permite extensiei să citească și să modifice acest site</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> s-a conectat</translation>
@@ -5217,6 +5237,7 @@
 <translation id="4890399733764921729">Nu se poate face conexiunea. Blocat de alt furnizor de servicii mobile.</translation>
 <translation id="4890773143211625964">Afișează opțiunile avansate pentru imprimantă</translation>
 <translation id="4891089016822695758">Forumul pentru versiunea beta</translation>
+<translation id="4891795846939730995">Ca să acorzi din nou acces dispozitivului la cheile de acces, conectează-te la un site sau o aplicație cu o cheie de acces salvată</translation>
 <translation id="4892229439761351791">Site-ul poate folosi Bluetooth</translation>
 <translation id="4892328231620815052">Când ești gata, accesează lista de lecturi în Marcaje și Liste</translation>
 <translation id="489258173289528622">Măsura pentru inactivitate în timpul funcționării pe baterie</translation>
@@ -5662,6 +5683,7 @@
 <translation id="5242724311594467048">Activați extensia „<ph name="EXTENSION_NAME" />”?</translation>
 <translation id="5243522832766285132">Încearcă din nou în câteva momente</translation>
 <translation id="5244234799035360187">OneDrive va apărea acum în aplicația Fișiere</translation>
+<translation id="5244466461749935369">Păstrează deocamdată</translation>
 <translation id="5244474230056479698">Se sincronizează cu <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Începe lucrul cu un cont de la școală</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> s-a blocat. Dă clic pe balon pentru a reporni aplicația.</translation>
@@ -5930,6 +5952,7 @@
 <translation id="5453829744223920473">Copilul tău poate să folosească toate aplicațiile, marcajele și resursele de la școală la fel cum le folosește în sala de clasă. Școala stabilește regulile de bază.</translation>
 <translation id="5454166040603940656">cu <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Vezi mai multe rezultate ale căutării</translation>
+<translation id="5457082343331641453">Adaugă la căutare</translation>
 <translation id="5457113250005438886">Nevalide</translation>
 <translation id="5457459357461771897">Citește și șterge fotografii, muzică și alte tipuri de conținut media de pe computer</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6407,6 +6430,7 @@
 <translation id="5816434091619127343">Modificările solicitate ar face imprimanta inutilizabilă.</translation>
 <translation id="581659025233126501">Activează sincronizarea</translation>
 <translation id="5817918615728894473">Asociază</translation>
+<translation id="5817963443108180228">Bine ai revenit, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">toate aplicațiile</translation>
 <translation id="5821565227679781414">Creați o comandă rapidă</translation>
 <translation id="5824976764713185207">Citește automat pagina după ce se încarcă</translation>
@@ -6446,6 +6470,7 @@
 <translation id="5846504156837627898">Gestionează permisiunile site-urilor</translation>
 <translation id="5846749317653566506">Ajustează setările pentru corecția culorilor pentru a te asigura că sunt distincte culorile</translation>
 <translation id="5846807460505171493">Instalează actualizări și aplicații. Dacă alegi să continui, accepți ca acest dispozitiv să descarce și să instaleze automat actualizări și aplicații de la Google, de la operatorul tău și de la producătorul dispozitivului, posibil folosind datele mobile. Unele dintre aceste aplicații pot oferi achiziții în aplicație.</translation>
+<translation id="5848054741303781539">Setat manual, fără a folosi locația</translation>
 <translation id="5848319660029558352">Citește cu voce tare și Formatarea textului</translation>
 <translation id="5849212445710944278">Adăugat deja</translation>
 <translation id="584945105664698226">Viteza vocii</translation>
@@ -7006,6 +7031,7 @@
 <translation id="6265159465845424232">Întreabă înainte de a copia sau a muta fișiere Microsoft în Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Elimină portul</translation>
 <translation id="6266532094411434237">Se conectează la <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Personalizează profilul</translation>
 <translation id="6267166720438879315">Selectează un certificat pentru a te autentifica pe <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Deschide cu <ph name="APP" /></translation>
 <translation id="6270309713620950855">Dezactivează reafișarea</translation>
@@ -7144,7 +7170,6 @@
 <translation id="6383382161803538830">Modul de lectură nu este disponibil pe această pagină</translation>
 <translation id="638418309848716977">Linkuri acceptate</translation>
 <translation id="6384275966486438344">Schimbați setările de căutare la: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grup nedenumit – o filă}few{Grup nedenumit – # file}other{Grup nedenumit – # de file}}</translation>
 <translation id="6385149369087767061">Conectează-te la internet și încearcă din nou</translation>
 <translation id="6385382178401976503">Card: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Avertisment: înregistrarea detaliată în jurnal este activată. Jurnalele de mai jos pot să includă adrese URL sau alte informații sensibile. Examinează informațiile și asigură-te că vrei să le trimiți.</translation>
@@ -7223,6 +7248,7 @@
 <translation id="6445450263907939268">Dacă nu doriți aceste modificări, puteți restabili setările anterioare.</translation>
 <translation id="6446213738085045933">Creați o comandă rapidă pe desktop</translation>
 <translation id="6447842834002726250">Cookie-uri</translation>
+<translation id="6449554712554071184">Astfel, grupul va fi șters definitiv de pe dispozitiv.</translation>
 <translation id="6450876761651513209">Modifică setările privind confidențialitatea</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> și încă o filă}few{<ph name="PAGE_TITLE" /> și încă # file}other{<ph name="PAGE_TITLE" /> și încă # de file}}</translation>
 <translation id="6451689256222386810">Dacă ai uitat expresia de acces sau dorești să modifici această setare, <ph name="BEGIN_LINK" />resetează sincronizarea<ph name="END_LINK" />.</translation>
@@ -7369,6 +7395,7 @@
 <translation id="6556866813142980365">Repetă</translation>
 <translation id="6556903358015358733">Temă și imagine de fundal</translation>
 <translation id="6557290421156335491">Comenzile mele rapide</translation>
+<translation id="6560061709899140565">Afișează alte sesiuni de proiectare</translation>
 <translation id="6560151649238390891">Sugestie inserată</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Stochează jurnale de sistem în directorul Descărcări.</translation>
@@ -7460,6 +7487,7 @@
 <translation id="6635674640674343739">Conexiunea la rețea nu poate fi stabilită. Verifică starea conexiunii la rețea și încearcă din nou.</translation>
 <translation id="663569763553406962">Vezi ce extensii pot să citească sau să modifice un site</translation>
 <translation id="6635944431854494329">Proprietarul poate controla această funcție din Setări &gt; Avansate &gt; Trimite automat la Google date de diagnosticare și de utilizare.</translation>
+<translation id="6636572589916466933">Acceptă solicitarea de proiectare pe <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Explorează mai multe dintre setările de mai jos sau finalizează acum</translation>
 <translation id="6639554308659482635">Memorie SQLite</translation>
 <translation id="6640268266988685324">Filă deschisă</translation>
@@ -7478,6 +7506,7 @@
 <translation id="6648911618876616409">O actualizare esențială este gata de instalare. Conectează-te pentru a începe.</translation>
 <translation id="6649018507441623493">O secundă…</translation>
 <translation id="6650206238642452078">Abonează-te la evenimentele de sistem ChromeOS</translation>
+<translation id="6650584564768559994">Fă economii echilibrate de memorie. Filele devin inactive după o perioadă optimă.</translation>
 <translation id="665061930738760572">Deschideți într-o &amp;fereastră nouă</translation>
 <translation id="6651237644330755633">Ai încredere în acest certificat pentru a identifica site-urile</translation>
 <translation id="6651495917527016072">Sincronizează rețele Wi-Fi cu telefonul tău. <ph name="LINK_BEGIN" />Află mai multe<ph name="LINK_END" /></translation>
@@ -7735,6 +7764,7 @@
 <translation id="6831043979455480757">Tradu</translation>
 <translation id="6832218595502288407">Aliniază la stânga</translation>
 <translation id="6833479554815567477">Fila a fost eliminată din grupul <ph name="GROUP_NAME" /> – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Echilibrată (recomandat)</translation>
 <translation id="6835762382653651563">Accesează internetul pentru a actualiza dispozitivul <ph name="DEVICE_TYPE" />.</translation>
 <translation id="683630338945552556">Folosește și salvează parole în Contul Google</translation>
 <translation id="6839225236531462745">Eroare de ștergere a certificatului</translation>
@@ -8143,6 +8173,7 @@
 <translation id="715396040729904728">lansator + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Trimite feedback sau descrie problema. Dacă este posibil, include pașii pentru reproducerea problemei.</translation>
 <translation id="7154130902455071009">Schimbați pagina de start la: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Obține videoclipuri de o calitate mai bună și mărește autonomia bateriei. Videoclipul va fi redat numai pe un ecran compatibil cu Cast.</translation>
 <translation id="7159953856712257647">Instalat în mod prestabilit</translation>
 <translation id="7160182524506337403">Acum poți vedea notificările de pe telefon</translation>
 <translation id="7165263843655074092">Beneficiezi de protecție de securitate standard pe acest dispozitiv</translation>
@@ -9001,6 +9032,7 @@
 <translation id="7788948939674438635">Nu permite site-urilor să blocheze tastatura</translation>
 <translation id="7789963078219276159">Fundalul paginii de pornire a fost modificat la <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">OCR în PDF</translation>
+<translation id="7790737481627460475">Fișiere de pe acest Chromebook</translation>
 <translation id="7791269138074599214">Metoda de introducere a textului</translation>
 <translation id="7791429245559955092">Aplicația se va instala în profilul Chrome folosit în momentul de față</translation>
 <translation id="7791436592012979144">Derularea inversă este activată</translation>
@@ -9030,6 +9062,7 @@
 <translation id="7810202088502699111">Ferestrele pop-up au fost blocate pe această pagină.</translation>
 <translation id="7810367892333449285">Intrarea trebuie să aibă formatul <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+address<ph name="LPA_2" />$<ph name="LPA_3" />cod opțional corespunzător<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Încearcă din nou sau selectează una dintre temele generate anterior de mai jos.</translation>
+<translation id="7814090115158024843">Nu oferi niciodată ajutor la scriere pe aceste site-uri</translation>
 <translation id="7814458197256864873">&amp;Copiază</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Editează comanda rapidă <ph name="SHORTCUT" /> pentru <ph name="EXTENSION_NAME" /></translation>
@@ -9261,8 +9294,10 @@
 <translation id="7974936243149753750">Suprascanare</translation>
 <translation id="7975504106303186033">Trebuie să înregistrezi acest dispozitiv Chrome pentru educație într-un cont pentru educație. Ca să te înscrii pentru un cont nou, accesează g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Te avertizează dacă folosești o parolă care a fost compromisă printr-o încălcare a securității datelor.</translation>
+<translation id="797824194429476746">Filele vor rămâne deschise pe acest dispozitiv, dar grupul va fi șters definitiv.</translation>
 <translation id="7978412674231730200">Cheie privată</translation>
 <translation id="7978450511781612192">Astfel, te vei deconecta de la Conturile Google. Marcajele, istoricul, parolele și alte setări nu vor mai fi sincronizate.</translation>
+<translation id="7980066177668669492">ASCII codificat cu Base64, certificate multiple</translation>
 <translation id="7980084013673500153">ID articol: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Folosește o cheie de acces salvată pentru <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Arată codul EID al dispozitivului și un pop-up cu codul QR</translation>
@@ -9386,6 +9421,7 @@
 <translation id="8066444921260601116">Fereastră de dialog de conectare</translation>
 <translation id="8070572887926783747">Permisiune pentru locație pentru <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Feedback haptic</translation>
+<translation id="8071033114691184017">Folosește această parolă pe iPhone</translation>
 <translation id="8071432093239591881">Printează ca imagine</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Datele unei aplicații pot fi orice date pe care le-a salvat aplicația (în funcție de setările dezvoltatorului), inclusiv date cum ar fi persoanele de contact, mesajele și fotografiile.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Datele cărora li s-a făcut backup nu se iau în considerare la calcularea cotei de stocare a contului Drive al copilului tău.<ph name="END_PARAGRAPH2" />
@@ -9674,6 +9710,7 @@
 <translation id="8276242035951017580">Nicio aplicație nu are permisiunea de a folosi camera foto</translation>
 <translation id="8276560076771292512">Goliți memoria cache și reîncărcați forțat</translation>
 <translation id="8276850948802942358">Află mai multe despre acordarea permisiunii temporare unui site de a folosi cookie-uri terță parte</translation>
+<translation id="8277907305629781277">Ai creat această cheie de acces pe <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Site-uri în limbile tale</translation>
 <translation id="828180235270931531">Alte imprimante disponibile</translation>
 <translation id="8281886186245836920">Omite</translation>
@@ -9953,6 +9990,7 @@
 <translation id="8482077254400484047">Gestionează aspectul filelor inactive aici</translation>
 <translation id="8483248364096924578">Adresă IP</translation>
 <translation id="8486666913807228950">Motivul: în lista „Deschide forțat în” s-a găsit regula inversată <ph name="REVERT_RULE" />.</translation>
+<translation id="8487303289354211861">S-a fixat! Poți să accesezi din nou funcția folosind noul buton din bara de instrumente</translation>
 <translation id="8487678622945914333">Mărește</translation>
 <translation id="8487699605742506766">Hotspot</translation>
 <translation id="8489156414266187072">Sugestiile personale se afișează numai în contul tău</translation>
@@ -10352,7 +10390,6 @@
 <translation id="8784626084144195648">Medie limitată</translation>
 <translation id="8785622406424941542">Creion</translation>
 <translation id="8786824282808281903">Când copilul tău vede această pictogramă, poate folosi amprenta pentru identificare sau pentru a aproba achiziții.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grup nedenumit – o filă}few{Grup nedenumit – # file}other{Grup nedenumit – # de file}}</translation>
 <translation id="8787752878731558379">Ajută-ne să îmbunătățim Chrome spunându-ne de ce ai permis cookie-urile terță parte</translation>
 <translation id="8789898473175677810">Chrome participă la un <ph name="LINK_BEGIN" />efort în colaborare<ph name="LINK_END" /> de a reduce urmărirea pe mai multe site-uri și de a retrage cookie-urile terță parte. Dar încercăm să facem acest lucru în mod responsabil, deoarece multe site-uri se bazează pe cookie-uri terță parte pentru a funcționa corespunzător. De exemplu, multe site-uri folosesc cookie-uri terță parte pentru a facilita conectarea, pentru a accepta sisteme de chat și de comentarii încorporate și pentru servicii de plată. Și advertiserii folosesc adesea cookie-uri terță parte pentru o mai bună personalizare a anunțurilor. Acest aspect este important, deoarece site-urile se bazează de multe ori pe anunțuri pentru a plăti cheltuielile și pentru a oferi conținutul online fără costuri.</translation>
 <translation id="8791157330927639737">Află mai multe despre actualizare</translation>
@@ -10587,6 +10624,7 @@
 <translation id="8962863356073277855">Formatul adresei URL trebuie să fie https://www.example.com</translation>
 <translation id="8962918469425892674">Acest site folosește senzorii de mișcare sau de lumină.</translation>
 <translation id="8963117664422609631">Accesează setările site-ului</translation>
+<translation id="8964795217937248330">Închizi filele și ștergi grupul?</translation>
 <translation id="8965037249707889821">Introduceți parola veche</translation>
 <translation id="8966809848145604011">Alte profiluri</translation>
 <translation id="8967427617812342790">Adaugă în lista de lectură</translation>
@@ -10666,6 +10704,7 @@
 <translation id="9014674417732091912">Mutat pe rândul <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Fă backup în Google Drive</translation>
 <translation id="9016827136585652292">activarea sau dezactivarea ecranului de confidențialitate</translation>
+<translation id="9017055559700464094">S-a fixat! Folosește din nou funcția din bara de instrumente</translation>
 <translation id="90181708067259747">Data expirării: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Instalare finalizată</translation>
 <translation id="901876615920222131">Pentru a redeschide grupul, dă clic pe numele acestuia</translation>
@@ -10824,6 +10863,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Pentru o experiență optimă, instalează <ph name="DEVICE_OS" /> pe discul intern. Poți să instalezi și mai târziu din ecranul de conectare.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Dacă nu ești gata de instalare, poți să rulezi serviciul de pe USB pentru a-l încerca. Astfel, vei păstra sistemul de operare și datele existente, dar pot să existe limitări ale spațiului de stocare și ale performanței.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Deschide ca filă fixată</translation>
+<translation id="9122788874051694311">Salvezi cheia de acces în afara modului incognito?</translation>
 <translation id="9123287046453017203">Dispozitivul tău nu este actualizat</translation>
 <translation id="9125910124977405374">Elimină <ph name="LANGUAGE_NAME" /> dintre limbile traduse automat</translation>
 <translation id="9126149354162942022">Culoarea cursorului</translation>
@@ -11018,6 +11058,7 @@
 <translation id="979345485590886759">Site-urile pot solicita permisiunea de blocare a cursorului mouse-ului</translation>
 <translation id="980731642137034229">Butonul meniului de acțiuni</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Bună, <ph name="PROFILE_NAME" />!</translation>
 <translation id="983192555821071799">Închide toate filele</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – înregistrare cu camera foto și microfonul</translation>
 <translation id="984275831282074731">Metode de plată</translation>
diff --git a/chrome/app/resources/generated_resources_ru.xtb b/chrome/app/resources/generated_resources_ru.xtb
index 5b455e9..f88066d 100644
--- a/chrome/app/resources/generated_resources_ru.xtb
+++ b/chrome/app/resources/generated_resources_ru.xtb
@@ -4060,7 +4060,6 @@
 <translation id="3983586614702900908">устройства от неизвестного поставщика</translation>
 <translation id="3983764759749072418">Приложениям из Play Маркета разрешен доступ к этому устройству.</translation>
 <translation id="3983769721878416534">Задержка перед нажатием</translation>
-<translation id="3983793589497399077">Нажмите на объект или выделите область для поиска с помощью Объектива.</translation>
 <translation id="3984135167056005094">Не указывать адрес электронной почты</translation>
 <translation id="3984159763196946143">Не удалось запустить демонстрационный режим</translation>
 <translation id="3984431586879874039">Разрешить этому сайту просматривать данные вашего электронного ключа?</translation>
@@ -7156,7 +7155,6 @@
 <translation id="6383382161803538830">Режим чтения недоступен на этой странице</translation>
 <translation id="638418309848716977">Поддерживаемые ссылки</translation>
 <translation id="6384275966486438344">Использование поисковой системы <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Безымянная группа – 1 вкладка}one{Безымянная группа – # вкладка}few{Безымянная группа – # вкладки}many{Безымянная группа – # вкладок}other{Безымянная группа – # вкладки}}</translation>
 <translation id="6385149369087767061">Подключитесь к Интернету и повторите попытку.</translation>
 <translation id="6385382178401976503">Карта: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Внимание! Включена подробная регистрация событий. Представленные ниже данные из журналов могут содержать URL и другую конфиденциальную информацию. Убедитесь, что вы готовы отправить их в Google.</translation>
@@ -10373,7 +10371,6 @@
 <translation id="8784626084144195648">Среднее по группам</translation>
 <translation id="8785622406424941542">Стилус</translation>
 <translation id="8786824282808281903">Если ребенок видит этот значок, он может подтвердить покупку и свою личность с помощью отпечатка пальца.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Безымянная группа – 1 вкладка}one{Безымянная группа – # вкладка}few{Безымянная группа – # вкладки}many{Безымянная группа – # вкладок}other{Безымянная группа – # вкладки}}</translation>
 <translation id="8787752878731558379">Помогите нам улучшить Chrome – расскажите, почему вы разрешили сторонние файлы cookie</translation>
 <translation id="8789898473175677810">Браузер Chrome участвует в <ph name="LINK_BEGIN" />программе<ph name="LINK_END" /> по ограничению межсайтового отслеживания и отказу от сторонних файлов cookie. Однако они нужны для корректной работы многих сайтов. Поэтому мы действуем так, чтобы не затронуть важные функции, например вход в систему, работу встроенных чатов и систем комментирования, а также платежных сервисов. Сторонними файлами cookie часто пользуются рекламодатели, чтобы персонализировать рекламу, которая помогает владельцам оплачивать поддержку своих сайтов и предоставлять контент бесплатно.</translation>
 <translation id="8791157330927639737">Подробнее об обновлении</translation>
diff --git a/chrome/app/resources/generated_resources_si.xtb b/chrome/app/resources/generated_resources_si.xtb
index ad6b194..7168c9d 100644
--- a/chrome/app/resources/generated_resources_si.xtb
+++ b/chrome/app/resources/generated_resources_si.xtb
@@ -366,6 +366,7 @@
 <translation id="1260810365552581339">Linux හි ප්‍රමාණවත් තැටි ඉඩක් නොමැති විය හැකිය. ඔබට ඔබගේ Linux තැටි ඉඩ වැඩි කර <ph name="LINK_START" />සැකසීම්<ph name="LINK_END" /> තුළ නැවත ප්‍රතිසාධනය කිරීමට උත්සාහ කළ හැකිය.</translation>
 <translation id="1261380933454402672">මධ්‍යස්ථ</translation>
 <translation id="126156426083987769">ආදර්ශන ආකාර උපාංග බලපත්‍ර සමඟ ප්‍රශ්නයක් විය</translation>
+<translation id="1261885284931493480">පටිති ඉවත් කර සමූහය මකන්නද?</translation>
 <translation id="1263231323834454256">කියවීම් ලැයිස්තුව</translation>
 <translation id="1263733306853729545">අයදුම්කරු ලැයිස්තුවක් පිටුගත කිරීමට <ph name="MINUS" /> සහ <ph name="EQUAL" /> යතුරු භාවිත කරන්න</translation>
 <translation id="126387934568812801">මෙම තිර රුව සහ විවෘත පටිතිවල මාතෘකා ඇතුළු කරන්න</translation>
@@ -874,6 +875,7 @@
 <translation id="1634224622052500893">WiFi ජාලය හමු විය</translation>
 <translation id="1634783886312010422">ඔබ දැනටමත් <ph name="WEBSITE" /> මත මෙම මුරපදය වෙනස් කර තිබේද?</translation>
 <translation id="1636212173818785548">හරි</translation>
+<translation id="1636542522761359943">ආයුබෝවන්, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />යෙදුම් දත්ත යනු සම්බන්ධතා, පණිවිඩ, සහ ඡායාරූප යනාදී දත්ත ඇතුළුව, යෙදුමක් විසින් සුරැක ඇති (සංවර්ධක සැකසීම් මත පදනම්ව) කිනම් හෝ දත්ත වේ. උපස්ථ දත්ත ඔබගේ Drive ගබඩා පංගුවට ගණන් නොගැනෙනු ඇත. <ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />ඔබට මෙය සැකසීම්වල ක්‍රියාවිරහිත කළ හැකිය.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">ඔබේ iPhone මත මෙම පිටුසන ලබා ගන්න</translation>
@@ -910,6 +912,7 @@
 <translation id="1652862280638399816">macOS Keychain සමග මුරපද කළමනාකරු භාවිත කිරීමට, Chromium යළි දියත් කර Keychain ප්‍රවේශයට ඉඩ දෙන්න. ඔබේ පටිත්ත යළි දියත් කිරීමෙන් පසු නැවත විවෘත වෙයි.</translation>
 <translation id="1653958716132599769">අදාළ ටැබ සමූහ කරන්න</translation>
 <translation id="1654580009054503925">ඉල්ලීම් පෙන්වීමට ඉඩ දෙනු නොලැබේ</translation>
+<translation id="1654713139320245449">විකාශ ගමනාන්ත කිසිවක් හමු නොවිය. උදවු අවශ්‍යද?</translation>
 <translation id="1656528038316521561">පසුබිම් පාරාන්ධතාව</translation>
 <translation id="1657406563541664238">Google වෙත භාවිත සංඛ්‍යාල්ඛන සහ කඩිනම් වාර්තා ස්වයංක්‍රියව යවා <ph name="PRODUCT_NAME" /> වඩා යහපත් කිරීමට උපකාර වන්න.</translation>
 <translation id="1657937299377480641">අධ්‍යාපනික සම්පත් වෙත ප්‍රවේශය සඳහා නැවත පුරන්නට, මාපියෙකුට ඔබට අවසර දෙන ලෙස කියන්න</translation>
@@ -1630,12 +1633,14 @@
 <translation id="2187895286714876935">සේවාදායක සහතික ආනයන දෝශය</translation>
 <translation id="2187906491731510095">දිගු යාවත්කාලීනයි</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> විවෘත කරන්න</translation>
+<translation id="2188919919468240749">පටිති සමූහය මකන්නද?</translation>
 <translation id="2190069059097339078">WiFi අක්තපත්‍ර ලබාගන්නා</translation>
 <translation id="219008588003277019">සහජ සේවා ග්‍රාහක ඒකකය: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(හිස්)</translation>
 <translation id="2190967441465539539">කැමරාව සහ මයික්‍රොෆෝනය වෙත ප්‍රවේශ විය නොහැක</translation>
 <translation id="2191754378957563929">ක්‍රියාත්මකයි</translation>
 <translation id="2192505247865591433">වෙතින්:</translation>
+<translation id="219283042927675668">සමූහය තුළ ඇති පටිති</translation>
 <translation id="2193365732679659387">විශ්වාස සැකසීම්</translation>
 <translation id="2194856509914051091">සලකා බැලිය යුතු කරුණු</translation>
 <translation id="2195331105963583686">ඔබට ඒ කාලයට පසුව තවමත් මෙම <ph name="DEVICE_TYPE" /> භාවිත කිරීමට හැකි වෙයි, නමුත් එය තවදුරටත් ස්වයංක්‍රීය මෘදුකාංග සහ ආරක්‍ෂක යාවත්කාලීන නොලබයි</translation>
@@ -1859,6 +1864,7 @@
 <translation id="2350133097354918058">යළි පූරණ කළා</translation>
 <translation id="2350182423316644347">යෙදුම ආරම්භ කරමින්...</translation>
 <translation id="235028206512346451">ඔබ ඔබගේ උපාංගයෙන් ඉවතට ගියහොත්, ඔබගේ තිරය ස්වයංක්‍රීයව අගුලු වැටෙනු ඇත. ඔබ ඔබගේ උපාංගය ඉදිරිපිට සිටින විට, ඔබගේ තිරය වැඩි වේලාවක් අවදියෙන් පවතිනු ඇත. ඔබ අගුලු තිරයක් භාවිත නොකරන්නේ නම්, ඔබගේ උපාංගය අගුලු දැමීම වෙනුවට නිද්‍රාවට පත් වනු ඇත.</translation>
+<translation id="2352305801620974284">ඔබ මෙම උපාංගය මත පුරනය වූ විට, ඔබ ඔබේ Google වෙතින් ඔබේ මුරපද සහ තවත් ඒවා ලබා ගනියි</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">අගුලු තිර සටහන් ස්වයංක්‍රියව <ph name="LOCK_SCREEN_APP_NAME" /> වෙත සුරැකේ. ඔබගේ වඩාත් මෑත සටහන අගුලු තිරය මත පවතිනු ඇත.</translation>
 <translation id="2353297238722298836">කැමරාව සහ මයික්‍රෆෝනයට ඉඩ දෙන ලදී</translation>
@@ -2069,6 +2075,7 @@
 <translation id="249113932447298600">කණගාටුයි, ඔබේ <ph name="DEVICE_LABEL" /> උපාංගය මේ මොහොතේ සහය නොදක්වයි.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> සඳහා පෙරදසුන් හඬ</translation>
 <translation id="2492461744635776704">සහතික අත්සන් කිරීමේ ඉල්ලීම සූදානම් කිරීම</translation>
+<translation id="2492964937550251173">පටිති වසා සමූහය මකන්නද?</translation>
 <translation id="249330843868392562">පෙළ සිට කථන සැකසීම් විවෘත කරන්න</translation>
 <translation id="2494555621641843783">Steam ස්ථාපනය කළ නොහැක</translation>
 <translation id="2495141202137516054">ඔබේ Drive වෙතින්</translation>
@@ -2238,6 +2245,7 @@
 <translation id="262087792756666314">ඔබට පහසු ප්‍රවේශය සඳහා මෙම විශේෂාංගය ඇමිණිය හැක; පැති පැනලයේ ඉහළින් ඇමුණුම් බොත්තම ක්ලික් කරන්න</translation>
 <translation id="2620900772667816510">බ්ලූටූත් සුපිරි විභේදනය</translation>
 <translation id="262154978979441594">Google සහකරු හඬ මාදිලිය පුහුණු කරන්න</translation>
+<translation id="2622280935687585828">අවල කළ අඩවිවලින් <ph name="SITE_NAME" /> ඉවත් කරන්න</translation>
 <translation id="26224892172169984">ප්‍රොටොකෝල මෙහෙයවීමට කිසිදු අඩවියකට ඉඩ නොදෙන්න</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI උපාංග පාලනය කිරීම සහ නැවත ක්‍රමලේඛනය කිරීමට ඉඩ දී ඇත</translation>
@@ -2411,6 +2419,7 @@
 <translation id="2743387203779672305">ක්ලිප්බෝඩ් එකට පිටපත් කරන්න</translation>
 <translation id="274362947316498129">යෙදුමක් <ph name="DEVICE_NAME" /> වෙත ප්‍රවේශ වීමට උත්සාහ කරයි. ප්‍රවේශයට ඉඩ දීමට <ph name="DEVICE_NAME" /> රහස්‍යතා ස්විචය ක්‍රියාවිරහිත කරන්න.</translation>
 <translation id="2745080116229976798">Microsoft සුදුසුකම්ලත් යටත් කිරීම</translation>
+<translation id="2747853844543618313">ඔබ ඔබේ <ph name="DEVICE_NAME" /> මත විකාශ ඉල්ලීම පිළිගන්නා බවට සහතික කර ගන්න.</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> වෙත ඇතුළු වන්න</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">අකුරු සමඟ ව්‍යාකරණ පරීක්ෂා කරන්න</translation>
@@ -2781,6 +2790,7 @@
 <translation id="3021066826692793094">සමනළයා</translation>
 <translation id="3021678814754966447">රාමු මූලය දර්ශනය (&amp;V)</translation>
 <translation id="3021902017511220299">ස්කෑන් අසමත් විය. මෙම ක්‍රියාව ඔබේ පරිපාලකයා විසින් අවහිර කරනු ලබයි.</translation>
+<translation id="3022068420678496307">මෙය මෙම Google ගිණුම සමග Chrome වෙත පුරන ලද සියලුම උපාංගවලින් සමූහය මකයි.</translation>
 <translation id="3022361196600037287">මෙම Chromebook වෙතින් <ph name="DEVICE" /> ඉවත් කරනු ලබන අතර <ph name="PRIMARY_EMAIL" /> වෙත සුරැකෙන්නේ නැත.</translation>
 <translation id="3022978424994383087">එය ලබා ගත්තේ නැත.</translation>
 <translation id="3023464535986383522">කථා කිරීමට තෝරන්න</translation>
@@ -4061,7 +4071,6 @@
 <translation id="3983586614702900908">නොදන්නා නිශ්පාදකයකුගේ උපාංග</translation>
 <translation id="3983764759749072418">Play Store යෙදුම්වලට මෙම උපාංගය වෙත ප්‍රවේශය තිබේ.</translation>
 <translation id="3983769721878416534">ක්ලික් කිරීමට පෙර පමාව</translation>
-<translation id="3983793589497399077">Lens සමග සෙවීමට ඕනෑම තැනක ක්ලික් කරන්න හෝ අදින්න</translation>
 <translation id="3984135167056005094">ඉ-තැපැල් ලිපිනය ඇතුළත් නොකරන්න</translation>
 <translation id="3984159763196946143">ආදර්ශන ප්‍රකාරය ඇරඹිය නොහැකි විය</translation>
 <translation id="3984431586879874039">මෙම වෙබ් අඩවියට ඔබේ ආරක්‍ෂක යතුර බැලීමට ඉඩ දෙන්නේද?</translation>
@@ -4184,6 +4193,7 @@
 <translation id="4078903002989614318">අනුපිළිවෙලට සැකසීමේ සහ ලැයිස්තුගත කිරීමේ විකල්ප</translation>
 <translation id="4079140982534148664">උසස් අක්‍ෂර පරීක්‍ෂාව භාවිත කරන්න</translation>
 <translation id="4082333918978320301">ඔබේ මයික්‍රෆෝනය භාවිතා කිරීමට කිසිදු වෙබ් අඩවියකට ඉඩ නැත</translation>
+<translation id="4083735423615351075">පටිති මෙම උපාංගය මත විවෘතව පවතින නමුත් සමූහය මෙම Google ගිණුම සමග Chrome වෙත පුරන ලද සියලුම උපාංගවලින් මකනු ලැබේ'</translation>
 <translation id="4084682180776658562">පිටු සලකුණ</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> වසන්න</translation>
 <translation id="4085298594534903246">මෙම පිටුව මත JavaScript බාධා විය.</translation>
@@ -4193,6 +4203,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">දකුණට පෙන්වන්න</translation>
+<translation id="4088879333319441249">පටිති සමූහය සමූහ නොකරන්නද?</translation>
 <translation id="4089235344645910861">සැකසීම් සුරකින ලදී. සමමුහුර්ත කිරීම ආරම්භ විය.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">තහවුරුකළ පිවිසුම සක්‍රීය කරන්න</translation>
@@ -5674,6 +5685,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />" සබල කරන්නද?</translation>
 <translation id="5243522832766285132">කරුණාකර සුළු මොහොතකින් නැවත උත්සාහ කරන්න</translation>
 <translation id="5244234799035360187">OneDrive දැන් Files යෙදුමේ දිස් වනු ඇත</translation>
+<translation id="5244466461749935369">දැනට තබා ගන්න</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> වෙත සමමුහුර්ත කරමින්</translation>
 <translation id="5245610266855777041">පාසල් ගිණුමක් සමඟ පටන් ගන්න</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> බිඳ වැටී තිබේ. යෙදුම නැවත ඇරඹීමට මෙම බැලූනය මත ක්ලික් කරන්න.</translation>
@@ -5942,6 +5954,7 @@
 <translation id="5453829744223920473">ඔබේ දරුවාට ඔවුන් පන්තියේ කරන ආකාරයටම ඔවුන්ගේ පාසල් යෙදුම්, පිටුසන් සහ සම්පත් සියල්ල භාවිත කළ හැක. පාසල මූලික නීති සකස් කරයි.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> සමඟ</translation>
 <translation id="545484289444831485">තවත් සෙවීම් ප්‍රතිඵල බලන්න</translation>
+<translation id="5457082343331641453">ඔබේ සෙවීමට එක් කරන්න</translation>
 <translation id="5457113250005438886">අවලංගු</translation>
 <translation id="5457459357461771897">ඔබගේ පරිගණකයෙන් ඡායාරූප, සංගීතය, සහ වෙනත් මාධ්‍යය කියවා මකන්න</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6420,6 +6433,7 @@
 <translation id="5816434091619127343">ඉල්ලූ මුද්‍රක වෙනස්කම් මුද්‍රකය භාවිතා කළ නොහැකි තත්ත්වයට පත් කළ හැකිය.</translation>
 <translation id="581659025233126501">සමමුහුර්ත කිරීම ක්‍රියාත්මක කරන්න</translation>
 <translation id="5817918615728894473">යුගල කරන්න</translation>
+<translation id="5817963443108180228">ආපසු පිළිගනිමු, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">සියලු යෙදුම්</translation>
 <translation id="5821565227679781414">කෙටිමාර්ගය සාදන්න</translation>
 <translation id="5824976764713185207">පූරණ කිරීම අවසාන වීමෙන් පසු ස්වයංක්‍රීයව පිටුව කියවන්න</translation>
@@ -7020,6 +7034,7 @@
 <translation id="6265159465845424232">Microsoft ගොනු Microsoft OneDrive වෙත පිටපත් කිරීමට හෝ ගෙන යාමට පෙර විමසන්න</translation>
 <translation id="6265687851677020761">තොට ඉවත් කරන්න</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" /> වෙත සබැඳෙමින්</translation>
+<translation id="6266984048393265562">පැතිකඩ අභිරුචි කරන්න</translation>
 <translation id="6267166720438879315"><ph name="HOST_NAME" /> වෙත ඔබව සත්‍යාපනය කිරීමට සහතිකයක් තෝරන්න</translation>
 <translation id="6268252012308737255"><ph name="APP" /> සමගින් විවෘත කරන්න</translation>
 <translation id="6270309713620950855">පෙළඹවීම නිහඬ කරන්න</translation>
@@ -7158,7 +7173,6 @@
 <translation id="6383382161803538830">මෙම පිටුවෙහි කියවීමේ ප්‍රකාරය නොමැත</translation>
 <translation id="638418309848716977">සහාය දක්වන සබැඳි</translation>
 <translation id="6384275966486438344">ඔබේ සෙවුම් සැකසුම් මෙලෙස වෙනස් කරන්න: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{නම් නොකළ සමූහය - ටැබ 1}one{නම් නොකළ සමූහය - ටැබ #}other{නම් නොකළ සමූහය - ටැබ #}}</translation>
 <translation id="6385149369087767061">අන්තර්ජාලයට සම්බන්ධ කර නැවත උත්සාහ කරන්න</translation>
 <translation id="6385382178401976503">කාඩ්පත: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">අනතුරු ඇඟවීමයි - විස්තරාත්මක ලොග් කිරීම සබලයි; පහත ලොගවල URL හෝ වෙනත් සංවේදී තොරතුරු අඩංගු විය හැකිය. ඔබ මෙම තොරතුරු ඉදිරිපත් කිරීම අපහසුවකින් තොරව කරන බවට සමාලෝචනය කර සහතික කර ගන්න.</translation>
@@ -7237,6 +7251,7 @@
 <translation id="6445450263907939268">ඔබට මෙම වෙනස්වීම් අවශ්‍ය නොවිණි නම්, ඔබට ඔබග‍ේ පෙර සැකසුම් ප්‍රතිසාධනය කළ හැකියිය.</translation>
 <translation id="6446213738085045933">ඩෙස්ක්ටොප් කෙටි මඟ තනන්න</translation>
 <translation id="6447842834002726250">කුකීස්</translation>
+<translation id="6449554712554071184">මෙය සමූහය ඔබේ උපාංගයෙන් ස්ථිරව මකයි.</translation>
 <translation id="6450876761651513209">ඔබගේ රහස්‍යතාවය-සම්බන්ධිත සැකසුම් වෙනස් කරන්න</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> සහ තව 1 පටිත්තක්}one{<ph name="PAGE_TITLE" /> සහ තව පටිති # ක්}other{<ph name="PAGE_TITLE" /> සහ තව පටිති # ක්}}</translation>
 <translation id="6451689256222386810">ඔබට ඔබේ මුර-වැකිකඩ අමතක වී ඇත්නම් හෝ මෙම සැකසීම වෙනස් කිරීමට අවශ්‍ය නම්, <ph name="BEGIN_LINK" />සමමුහුර්ත වීම නැවත සකසන්න<ph name="END_LINK" />.</translation>
@@ -7381,6 +7396,7 @@
 <translation id="6556866813142980365">නැවත කරන්න</translation>
 <translation id="6556903358015358733">තේමාව සහ වෝල්පේපරය</translation>
 <translation id="6557290421156335491">මගේ කෙටිමං</translation>
+<translation id="6560061709899140565">අනෙකුත් විකාශ සැසි පෙන්වන්න</translation>
 <translation id="6560151649238390891">යෝජනාව ඇතුළු කළා</translation>
 <translation id="6561726789132298588">ඇතුල් කරන්න</translation>
 <translation id="6562117348069327379">බාගැනීම් නාමාවලියට පද්ධති ලොග ගබඩා කරන්න.</translation>
@@ -7472,6 +7488,7 @@
 <translation id="6635674640674343739">ජාල සබැඳුම ස්ථාපනය කළ නොහැකිය. ඔබේ ජාල සබැඳුම පරීක්ෂා කර නැවත උත්සාහ කරන්න.</translation>
 <translation id="663569763553406962">අඩවියක් කියවිය හැකි හෝ වෙනස් කළ හැකි දිගු මොනවා දැයි බලන්න</translation>
 <translation id="6635944431854494329">සැකසීම් &gt; උසස් &gt; දෝෂ විනිශ්චය සහ භාවිත දත්ත ස්වයංක්‍රීයව Google වෙත යවන්න, වෙතින් හිමිකරුට මෙම විශේෂාංගය පාලන කළ හැක.</translation>
+<translation id="6636572589916466933">ඔබේ <ph name="DEVICE_NAME" /> මත විකාශ ඉල්ලීම පිළිගන්න.</translation>
 <translation id="6636623428211296678">පහත තවත් සැකසීම් ගවේෂණය කරන්න හෝ දැන් අවසන් කරන්න</translation>
 <translation id="6639554308659482635">SQLite මතකය</translation>
 <translation id="6640268266988685324">ටැබය විවෘත කරන්න</translation>
@@ -8156,6 +8173,7 @@
 <translation id="715396040729904728">දියත්කරණය + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">ඔබගේ ප්‍රතිපෝෂණය බෙදා ගන්න හෝ ඔබගේ ගැටලුව විස්තර කරන්න. හැකි නම්, ඔබගේ ගැටලුව ප්‍රතිනිෂ්පාදනය කිරීමට පියවර ඇතුළත් කරන්න.</translation>
 <translation id="7154130902455071009">ඔබේ ආරම්භක පිටුව මේ ආකාරයට වෙනස් කරන්න: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">ඉතා හොඳ තත්ත්‍වයේ වීඩියෝ ලබා ගෙන බැටරි බලය සුරකින්න. ඔබේ විකාශ සබලිත තිරවල පමණක් වීඩියෝ ධාවනය වෙයි.</translation>
 <translation id="7159953856712257647">පෙරනිමියෙන් ස්ථාපනය කර ඇත</translation>
 <translation id="7160182524506337403">ඔබට දැන් ඔබගේ දුරකථනයේ දැනුම්දීම් බැලිය හැකිය</translation>
 <translation id="7165263843655074092">ඔබ මෙම උපාංගය මත සම්මත ආරක්ෂක රැකවරණය ලබා ගනී</translation>
@@ -9013,6 +9031,7 @@
 <translation id="7788948939674438635">ඔබේ යතුරුපුවරුව අගුළු දැමීමට අඩවි වලට ඉඩ නොදෙන්න</translation>
 <translation id="7789963078219276159">ආරම්භක පිටු පසුබිම <ph name="CATEGORY" /> ලෙස වෙනස් විය.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">මෙම Chromebook මත ඇති ගොනු</translation>
 <translation id="7791269138074599214">ආදාන ක්‍රමය</translation>
 <translation id="7791429245559955092">මෙම යෙදුම ඔබේ දැනට භාවිත කරන Chrome පැතිකඩ මත ස්ථාපන කරනු ලැබේ.</translation>
 <translation id="7791436592012979144">ප්‍රතිලෝම අනුචලනය සබල කර ඇත</translation>
@@ -9042,6 +9061,7 @@
 <translation id="7810202088502699111">මෙම පිටුව මත පොප්-අප් බාධාවිය.</translation>
 <translation id="7810367892333449285">ඔබේ ප්‍රවේශයට <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ address<ph name="LPA_2" />$<ph name="LPA_3" />optional matching id<ph name="LPA_4" /> ආකෘතිය තිබිය යුතු ය</translation>
 <translation id="7811263553491007091">නැවත උත්සාහ කරන්න හෝ පහතින් කලින් ජනිත තේමාවලින් එකක් තෝරන්න.</translation>
+<translation id="7814090115158024843">මෙම අඩවි මත කිසි විටෙක ලිවීමේ උදවු නොදෙන්න</translation>
 <translation id="7814458197256864873">&amp;පිටපත් කරන්න</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> සඳහා කෙටිමඟ සංස්කරණය කරන්න <ph name="SHORTCUT" /></translation>
@@ -9273,8 +9293,10 @@
 <translation id="7974936243149753750">ඕවර්ස්කෑන්</translation>
 <translation id="7975504106303186033">ඔබ මෙම Chrome Education උපාංගය අධ්‍යාපන ගිණුමකට සම්බන්ධ කළ යුතුය. නව ගිණුමක් සඳහා ලියාපදිංචි වීමට, කරුණාකර g.co/workspace/edusignup වෙත පිවිසෙන්න.</translation>
 <translation id="7977451675950311423">ඔබ දත්ත කඩකිරීමක අවදානමට ලක් වූ මුරපදයක් භාවිතා කරන්නේ නම් ඔබට අනතුරු අඟවයි.</translation>
+<translation id="797824194429476746">පටිති මෙම උපාංගය මත විවෘතව පවතින නමුත් සමූහය ස්ථිරව මකනු ලැබේ.</translation>
 <translation id="7978412674231730200">පුද්ගලික යතුර</translation>
 <translation id="7978450511781612192">මෙය ඔබව ඔබේ Google ගිණුම්වලින් වරනු ඇත. ඔබගේ පිටුසන්, ඉතිහාසය, මුරපද සහ තවත් දේ තව දුරටත් සමමුහුර්ත නොවනු ඇත.</translation>
+<translation id="7980066177668669492">Base64 සංකේතිත ASCII, බහු සහතික</translation>
 <translation id="7980084013673500153">වත්කම් ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" /> සඳහා සුරැකි මුරයතුරක් භාවිත කරන්න</translation>
 <translation id="7981662863948574132">උපාංග EID සහ QR කේත උත්පතනය පෙන්වන්න</translation>
@@ -9686,6 +9708,7 @@
 <translation id="8276242035951017580">ඔබේ කැමරාව භාවිතා කිරීමට යෙදුම් වලට ඉඩ නැත</translation>
 <translation id="8276560076771292512">කෑශ් හිස්කර  දැඩි නැවුම්කරණය  කරන්න</translation>
 <translation id="8276850948802942358">තෙවන පාර්ශ්ව කුකී භාවිතා කිරීමට අඩවියකට තාවකාලික අවසරය ලබා දීම පිළිබඳව තව දැන ගන්න</translation>
+<translation id="8277907305629781277">ඔබ <ph name="DATE" /> මෙම මුරයතුර සෑදුවේය</translation>
 <translation id="8280267190418431666">ඔබේ භාෂාවලින් වෙබ් අඩවි</translation>
 <translation id="828180235270931531">පවතින වෙනත් මුද්‍රක</translation>
 <translation id="8281886186245836920">මඟහරින්න</translation>
@@ -10365,7 +10388,6 @@
 <translation id="8784626084144195648">ඉවතලූ සාමාන්‍යය</translation>
 <translation id="8785622406424941542">පන්හිඳ</translation>
 <translation id="8786824282808281903">ඔබගේ දරුවා මෙම නිරූපකය දුටු විට, හඳුනා ගැනීම සඳහා හෝ මිලදී ගැනීම් අනුමත කිරීම සඳහා ඇඟිලි සලකුණක් භාවිත කළ හැකිය.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{නම් නොකළ සමූහය - ටැබ 1}one{නම් නොකළ සමූහය - ටැබ #}other{නම් නොකළ සමූහය - ටැබ #}}</translation>
 <translation id="8787752878731558379">ඔබ තුන්වන පාර්ශ්ව කුකීවලට ඉඩ දුන් හේතුව අපට පැවසීමෙන් Chrome වැඩි දියුණු කිරීමට අපට උදවු කරන්න</translation>
 <translation id="8789898473175677810">Chrome හරස් අඩවි හඹා යෑම අඩු කිරීම සහ තෙවන පාර්ශ්ව කුකී භාවිතය නැති කිරීම සඳහා වන <ph name="LINK_BEGIN" />සහයෝගී ප්‍රයත්නයක<ph name="LINK_END" /> කොටසකි. නමුත් අපි බොහෝ අඩවි සැලසුම් කළ පරිදි ක්‍රියා කිරීමට තෙවන පාර්ශ්ව කුකී මත රඳා පවතින බැවින් අපි එය වගකීමෙන් සිදු කිරීමට උත්සාහ කරන්නෙමු. උදාහරණය වශයෙන්, බොහෝ අඩවි පුරනය පහසු කිරීමට, කාවද්දන ලද කථාබස් සහ අදහස් පද්ධතිවලට සහය වීමට, සහ ගෙවීමේ සේවා සඳහා තෙවන පාර්ශ්ව කුකී භාවිත කරයි. තවද දැන්වීම්කරුවෝ දැන්වීම් ඉතා හොඳින් පුද්ගලායන කිරීමට නිතර තෙවන පාර්ශ්ව කුකී භාවිත කරති. අඩවි වියදම්වලට ගෙවීමට සහ ඔවුන්ගේ සබැඳි අන්තර්ගතය ගාස්තු රහිතව තබා ගැනීමට උදවු කිරීමට නිතර දැන්වීම් මත රැඳී සිටින නිසා එය වැදගත් වෙයි.</translation>
 <translation id="8791157330927639737">යාවත්කාලීන කිරීම පිළිබඳව තව දැන ගන්න</translation>
@@ -10600,6 +10622,7 @@
 <translation id="8962863356073277855">URL ආකෘතිය https://www.example.com විය යුතු වේ</translation>
 <translation id="8962918469425892674">මෙම අඩවිය චලන හෝ ආලෝක සංවේදක භාවිතා කරයි.</translation>
 <translation id="8963117664422609631">අඩවි සැකසීම් වෙත යන්න</translation>
+<translation id="8964795217937248330">පටිති වසා සමූහය මකන්නද?</translation>
 <translation id="8965037249707889821">පැරණි රහස් වචනය ඇතුළු කරන්න</translation>
 <translation id="8966809848145604011">වෙනත් පැතිකඩවල්</translation>
 <translation id="8967427617812342790">කියවීම් ලැයිස්තුවට එක් කරන්න</translation>
@@ -11033,6 +11056,7 @@
 <translation id="979345485590886759">ඔබේ මූසික දර්ශකය අගුළු දැමීමට අඩවි වලට විමසිය හැක</translation>
 <translation id="980731642137034229">ක්‍රියා මෙනු බොත්තම</translation>
 <translation id="981121421437150478">ඕෆ්ලයින්</translation>
+<translation id="98235653036850093">ආයුබෝවන්, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">සියලු පටිති වසන්න</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - කැමරා සහ මයික්‍රෆෝන පටිගත කිරීම</translation>
 <translation id="984275831282074731">ගෙවීමේ ක්‍රම</translation>
diff --git a/chrome/app/resources/generated_resources_sk.xtb b/chrome/app/resources/generated_resources_sk.xtb
index c135fc44..6929337 100644
--- a/chrome/app/resources/generated_resources_sk.xtb
+++ b/chrome/app/resources/generated_resources_sk.xtb
@@ -367,6 +367,7 @@
 <translation id="1260810365552581339">Linux zrejme nemá dostatok miesta na disku. Môžete ho zväčšiť a skúsiť to znova obnoviť v <ph name="LINK_START" />Nastaveniach<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Mierne</translation>
 <translation id="126156426083987769">Vyskytol sa problém s licenciami zariadení v režime ukážky</translation>
+<translation id="1261885284931493480">Chcete odstrániť karty aj skupinu?</translation>
 <translation id="1263231323834454256">Čitateľský zoznam</translation>
 <translation id="1263733306853729545">V zozname kandidátov sa môžete posúvať pomocou klávesov <ph name="MINUS" /> a <ph name="EQUAL" /></translation>
 <translation id="126387934568812801">Zahrňte túto snímku obrazovky a názvy otvorených kariet</translation>
@@ -878,6 +879,7 @@
 <translation id="1634224622052500893">Bola nájdená sieť Wi‑Fi</translation>
 <translation id="1634783886312010422">Už ste zmenili toto heslo na webe <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Vitajte, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Dáta aplikácií môžu byť ľubovoľné údaje uložené aplikáciou (na základe nastavení vývojára) vrátane údajov, ako sú kontakty, správy a fotky. Zálohované údaje sa nezapočítavajú do kvóty priestoru na Disku.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Túto službu môžete vypnúť v Nastaveniach.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Uložte si túto záložku do zariadenia iPhone</translation>
@@ -914,6 +916,7 @@
 <translation id="1652862280638399816">Ak chcete používať Správcu hesiel s Kľúčenkou systému macOS, znova spustite Chromium a povoľte prístup ku Kľúčenke. Po opätovnom spustení sa karty znova otvoria.</translation>
 <translation id="1653958716132599769">Zoskupiť súvisiace karty</translation>
 <translation id="1654580009054503925">Nemôže zobrazovať žiadosti</translation>
+<translation id="1654713139320245449">Nebol nájdený žiadny cieľ prenosu. Potrebujete pomoc?</translation>
 <translation id="1656528038316521561">Nepriehľadnosť pozadia</translation>
 <translation id="1657406563541664238">Pomôžte zlepšiť aplikáciu <ph name="PRODUCT_NAME" /> aktivovaním automatického odosielania štatistických údajov o používaní prehliadača a správ o chybách spoločnosti Google.</translation>
 <translation id="1657937299377480641">Ak sa chcete znova prihlásiť a získať tak prístup k vzdelávacím zdrojom, požiadajte rodiča o udelenie povolenia</translation>
@@ -1633,12 +1636,14 @@
 <translation id="2187895286714876935">Chyba importovania certifikátu servera</translation>
 <translation id="2187906491731510095">Rozšírenia boli aktualizované</translation>
 <translation id="2188881192257509750">Otvoriť <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Chcete odstrániť skupinu kariet?</translation>
 <translation id="2190069059097339078">WiFi Credentials Getter</translation>
 <translation id="219008588003277019">Modul miestneho klienta: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(prázdne)</translation>
 <translation id="2190967441465539539">Ku kamere a mikrofónu nie je možné získať prístup</translation>
 <translation id="2191754378957563929">zapnuté</translation>
 <translation id="2192505247865591433">Zdroj:</translation>
+<translation id="219283042927675668">Karty v skupine</translation>
 <translation id="2193365732679659387">Nastavenie dôveryhodnosti</translation>
 <translation id="2194856509914051091">Čo je potrebné zohľadniť</translation>
 <translation id="2195331105963583686">Po tomto dátume budete môcť <ph name="DEVICE_TYPE" /> naďalej používať, ale už nebude dostávať automatické aktualizácie softvéru a zabezpečenia</translation>
@@ -1859,6 +1864,7 @@
 <translation id="2350133097354918058">Znovu načítané</translation>
 <translation id="2350182423316644347">Inicializujú sa aplikácie...</translation>
 <translation id="235028206512346451">Ak odídete od zariadenia, obrazovka sa automaticky uzamkne. Keď ste pred zariadením, obrazovka zostane odomknutá dlhšie. Ak používate uzamknutú obrazovku, zariadenie sa nezamkne, ale prejde do režimu spánku.</translation>
+<translation id="2352305801620974284">Keď sa prihlásite v tomto zariadení, budete mať k dispozícii heslá a ďalší obsah zo svojho účtu Google</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Poznámky na uzamknutej obrazovke sa automaticky ukladajú do aplikácie <ph name="LOCK_SCREEN_APP_NAME" />. Na uzamknutej obrazovke zostane posledná poznámka.</translation>
 <translation id="2353297238722298836">Kamera a mikrofón sú povolené</translation>
@@ -2069,6 +2075,7 @@
 <translation id="249113932447298600">Je nám ľúto, ale zariadenie <ph name="DEVICE_LABEL" /> nie je momentálne podporované.</translation>
 <translation id="2491587035099903063">zobraziť ukážku hlasu v jazyku <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Pripravuje sa žiadosť o podpísanie certifikátu</translation>
+<translation id="2492964937550251173">Chcete zavrieť karty a odstrániť skupinu?</translation>
 <translation id="249330843868392562">Otvoriť nastavenia prevodu textu na reč</translation>
 <translation id="2494555621641843783">Steam sa nedá nainštalovať</translation>
 <translation id="2495141202137516054">Z vášho Disku</translation>
@@ -2238,6 +2245,7 @@
 <translation id="262087792756666314">Túto funkciu si môžete pripnúť, aby ste k nej mali jednoduchý prístup. V hornej časti bočného panela kliknite na Pripnúť.</translation>
 <translation id="2620900772667816510">Superrozlíšenie cez Bluetooth</translation>
 <translation id="262154978979441594">Natrénovať hlasový model Asistenta Google</translation>
+<translation id="2622280935687585828">Odstrániť <ph name="SITE_NAME" /> z deaktivovaných webov</translation>
 <translation id="26224892172169984">Nepovoliť žiadnym stránkam obsluhovať protokoly</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Ovládanie a preprogramovávanie zariadení MIDI je povolené</translation>
@@ -2411,6 +2419,7 @@
 <translation id="2743387203779672305">Kopírovať do schránky</translation>
 <translation id="274362947316498129">K zariadeniu <ph name="DEVICE_NAME" /> sa pokúša získať prístup nejaká aplikácia. Ak ho chcete povoliť, vypnite prepínač ochrany súkromia v zariadení <ph name="DEVICE_NAME" />.</translation>
 <translation id="2745080116229976798">Oprávnené podriadenie od spoločnosti Microsoft</translation>
+<translation id="2747853844543618313">Žiadosť o prenos musíte prijať v zariadení <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Prihlásiť sa do služby <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Skontrolovať gramatiku s pravopisom</translation>
@@ -2781,6 +2790,7 @@
 <translation id="3021066826692793094">Motýľ</translation>
 <translation id="3021678814754966447">&amp;Zobraziť zdrojový kód rámca</translation>
 <translation id="3021902017511220299">Nepodarilo sa skontrolovať. Túto akciu zablokoval váš správca.</translation>
+<translation id="3022068420678496307">Týmto skupinu odstránite zo všetkých zariadení prihlásených do Chromu týmto účtom Google.</translation>
 <translation id="3022361196600037287">Zariadenie <ph name="DEVICE" /> bude z tohto Chromebooku odstránené a do účtu <ph name="PRIMARY_EMAIL" /> sa neuloží.</translation>
 <translation id="3022978424994383087">Nebolo rozumieť.</translation>
 <translation id="3023464535986383522">Počúvanie vybraného textu</translation>
@@ -4060,7 +4070,6 @@
 <translation id="3983586614702900908">zariadenia od neznámeho dodávateľa</translation>
 <translation id="3983764759749072418">Aplikácie Obchodu Play majú prístup k tomuto zariadeniu.</translation>
 <translation id="3983769721878416534">Oneskorenie pred kliknutím</translation>
-<translation id="3983793589497399077">Vyhľadávajte pomocou funkcie Lens kliknutím alebo presunutím na ľubovoľné miesto</translation>
 <translation id="3984135167056005094">Nezahŕňajte e‑mailovú adresu</translation>
 <translation id="3984159763196946143">Nepodarilo sa spustiť režim ukážky</translation>
 <translation id="3984431586879874039">Chcete tomuto webu povoliť zobrazenie vášho bezpečnostného kľúča?</translation>
@@ -4183,6 +4192,7 @@
 <translation id="4078903002989614318">Možnosti zoradenia a zoznamov</translation>
 <translation id="4079140982534148664">Použiť rozšírenú kontrolu pravopisu</translation>
 <translation id="4082333918978320301">Váš mikrofón nemajú povolené používať žiadne weby</translation>
+<translation id="4083735423615351075">Karty zostanú v tomto zariadení otvorené, ale skupina bude odstránená zo všetkých zariadení prihlásených do Chromu týmto účtom Google.</translation>
 <translation id="4084682180776658562">Záložka</translation>
 <translation id="4084835346725913160">Zavrieť kartu <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">JavaScript bol na tejto stránke zablokovaný.</translation>
@@ -4192,6 +4202,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Zobraziť vpravo</translation>
+<translation id="4088879333319441249">Chcete zrušiť zoskupenie kariet v skupine?</translation>
 <translation id="4089235344645910861">Nastavenia boli uložené. Synchronizácia sa začala.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Povolí overený prístup</translation>
@@ -5673,6 +5684,7 @@
 <translation id="5242724311594467048">Povoliť rozšírenie <ph name="EXTENSION_NAME" />?</translation>
 <translation id="5243522832766285132">Skúste to znova o chvíľu</translation>
 <translation id="5244234799035360187">OneDrive sa teraz bude zobrazovať v aplikácii Súbory</translation>
+<translation id="5244466461749935369">Zatiaľ ponechať</translation>
 <translation id="5244474230056479698">Synchronizácia do účtu <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Ako začať so školským účtom</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> zlyhala. Aplikáciu reštartujte kliknutím na túto bublinu.</translation>
@@ -5941,6 +5953,7 @@
 <translation id="5453829744223920473">Vaše dieťa môže používať všetky svoje školské aplikácie, záložky a zdroje rovnako ako v triede. Základné pravidlá určuje škola.</translation>
 <translation id="5454166040603940656">s poskytovateľom <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Zobraziť ďalšie výsledky vyhľadávania</translation>
+<translation id="5457082343331641453">Pridajte do vyhľadávania</translation>
 <translation id="5457113250005438886">Neplatné</translation>
 <translation id="5457459357461771897">Čítať a odstraňovať fotky, hudbu a ďalšie médiá z tohto počítača</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6418,6 +6431,7 @@
 <translation id="5816434091619127343">Požadované zmeny by tlačiareň znefunkčnili.</translation>
 <translation id="581659025233126501">Zapnúť synchronizáciu</translation>
 <translation id="5817918615728894473">Párovať</translation>
+<translation id="5817963443108180228">Vitajte späť, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">všetky aplikácie</translation>
 <translation id="5821565227679781414">Vytvoriť odkaz</translation>
 <translation id="5824976764713185207">Po načítaní stránku automaticky prečítať</translation>
@@ -7018,6 +7032,7 @@
 <translation id="6265159465845424232">Opýtať sa pred kopírovaním alebo presunom súborov Microsoft do služby Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Odstrániť port</translation>
 <translation id="6266532094411434237">Pripája sa k zariadeniu <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Prispôsobiť profil</translation>
 <translation id="6267166720438879315">Vyberte certifikát, ktorý overí vašu osobu pre <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Otvoriť pomocou aplikácie <ph name="APP" /></translation>
 <translation id="6270309713620950855">Štuchnutie vypnutého zvuku</translation>
@@ -7156,7 +7171,6 @@
 <translation id="6383382161803538830">Režim čítania nie je na tejto stránke k dispozícii</translation>
 <translation id="638418309848716977">Podporované odkazy</translation>
 <translation id="6384275966486438344">Zmeniť nastavenia vyhľadávania na: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Skupina bez názvu – 1 karta}few{Skupina bez názvu – # karty}many{Unnamed group - # tabs}other{Skupina bez názvu – # kariet}}</translation>
 <translation id="6385149369087767061">Pripojte sa k internetu a skúste to znova</translation>
 <translation id="6385382178401976503">Karta: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Upozornenie: Podrobné zapisovanie do denníka je povolené. Denníky uvedené nižšie môžu obsahovať webové adresy alebo iné citlivé údaje. Skontrolujte ich a uistite sa, že proti odoslaniu týchto informácií nemáte námietky.</translation>
@@ -7235,6 +7249,7 @@
 <translation id="6445450263907939268">Ak ste tieto zmeny nechceli, môžete obnoviť predchádzajúce nastavenia.</translation>
 <translation id="6446213738085045933">Vytvoriť odkaz na pracovnej ploche</translation>
 <translation id="6447842834002726250">Súbory cookie</translation>
+<translation id="6449554712554071184">Týmto natrvalo odstránite skupinu zo svojho zariadenia.</translation>
 <translation id="6450876761651513209">Zmeniť nastavenia týkajúce sa ochrany osobných údajov</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> a 1 ďalšia karta}few{<ph name="PAGE_TITLE" /> a # ďalšie karty}many{<ph name="PAGE_TITLE" /> and # other tabs}other{<ph name="PAGE_TITLE" /> a # ďalších kariet}}</translation>
 <translation id="6451689256222386810">Ak ste zabudli prístupovú frázu alebo chcete toto nastavenie zmeniť, <ph name="BEGIN_LINK" />resetujte synchronizáciu<ph name="END_LINK" />.</translation>
@@ -7381,6 +7396,7 @@
 <translation id="6556866813142980365">Znova</translation>
 <translation id="6556903358015358733">Motív a tapeta</translation>
 <translation id="6557290421156335491">Moje skratky</translation>
+<translation id="6560061709899140565">Zobraziť ďalšie relácie prenosu</translation>
 <translation id="6560151649238390891">Návrh bol vložený</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Ukladajte denníky systému do priečinka Stiahnuté.</translation>
@@ -7474,6 +7490,7 @@
 <translation id="6635674640674343739">Nedá sa nadviazať pripojenie k sieti. Skontrolujte ho a skúste to znova.</translation>
 <translation id="663569763553406962">Zobraziť, ktoré rozšírenia môžu čítať alebo zmeniť web</translation>
 <translation id="6635944431854494329">Vlastník môže túto funkciu ovládať v časti Nastavenia &gt; Rozšírené &gt; Automaticky odosielať Googlu diagnostiky a údaje o používaní.</translation>
+<translation id="6636572589916466933">Prijmite žiadosť o prenos v zariadení <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Preskúmajte ďalšie nastavenia nižšie alebo dokončite kontrolu</translation>
 <translation id="6639554308659482635">Pamäť nástroja SQLite</translation>
 <translation id="6640268266988685324">Otvoriť kartu</translation>
@@ -8159,6 +8176,7 @@
 <translation id="715396040729904728">Spúšťač + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Zdieľajte svoju spätnú väzbu alebo opíšte problém. Ak je to možné, uveďte postup, ako sa dá problém reprodukovať.</translation>
 <translation id="7154130902455071009">Zmeniť úvodnú stránku na: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Získajte kvalitnejšie video a predĺžte výdrž batérie. Video sa bude prehrávať iba na obrazovke podporujúcej Cast.</translation>
 <translation id="7159953856712257647">Predvolene nainštalované</translation>
 <translation id="7160182524506337403">Teraz si môžete zobraziť upozornenia svojho telefónu</translation>
 <translation id="7165263843655074092">V tomto zariadení máte štandardnú ochranu zabezpečenia</translation>
@@ -9016,6 +9034,7 @@
 <translation id="7788948939674438635">Nepovoliť webom uzamykať klávesnicu</translation>
 <translation id="7789963078219276159">Pozadie úvodnej stránky bolo zmenené na: <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Súbory v tomto Chromebooku</translation>
 <translation id="7791269138074599214">Metóda vstupu</translation>
 <translation id="7791429245559955092">Táto aplikácia bude nainštalovaná vo vašom momentálne používanom profile Chromu</translation>
 <translation id="7791436592012979144">Obrátené posúvanie je zapnuté</translation>
@@ -9045,6 +9064,7 @@
 <translation id="7810202088502699111">Na tejto stránke boli zablokované kontextové okná.</translation>
 <translation id="7810367892333449285">Formát vstupu by mal byť <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ adresa<ph name="LPA_2" />$<ph name="LPA_3" />nepovinný priraďovací identifikátor<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Vyskúšajte to znova alebo vyberte jeden z motívov nižšie vygenerovaných v minulosti.</translation>
+<translation id="7814090115158024843">Na týchto weboch nikdy neponúkať pomoc s písaním</translation>
 <translation id="7814458197256864873">&amp;Kopírovať</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Upraviť odkaz <ph name="SHORTCUT" /> na rozšírenie <ph name="EXTENSION_NAME" /></translation>
@@ -9276,8 +9296,10 @@
 <translation id="7974936243149753750">Presah obsahu</translation>
 <translation id="7975504106303186033">Toto zariadenie s licenciou Chrome Education musíte zaregistrovať do školského účtu. Nový účet si zaregistrujete na g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Upozorní vás, keď použijete heslo, ktoré bolo prezradené v rámci porušenia ochrany údajov.</translation>
+<translation id="797824194429476746">Karty zostanú v tomto zariadení otvorené, ale skupina bude natrvalo odstránená.</translation>
 <translation id="7978412674231730200">Súkromný kľúč</translation>
 <translation id="7978450511781612192">Táto možnosť vás odhlási z účtov Google. Záložky, história, heslá a ďalší obsah sa prestanú synchronizovať.</translation>
+<translation id="7980066177668669492">ASCII s kódovaním Base64, viacero certifikátov</translation>
 <translation id="7980084013673500153">ID prvku: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Použite uložený prístupový kľúč pre aplikáciu <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Zobraziť vyskakovacie okno s číslom EID zariadenia a QR kódom</translation>
@@ -9690,6 +9712,7 @@
 <translation id="8276242035951017580">Vašu kameru nemajú povolené používať žiadne aplikácie</translation>
 <translation id="8276560076771292512">Vymazať vyrovnávaciu pamäť a vynútiť opätovné načítanie</translation>
 <translation id="8276850948802942358">Ďalšie informácie o udelení dočasného povolenia webu na používanie súborov cookie tretej strany</translation>
+<translation id="8277907305629781277">Tento prístupový kľúč ste vytvorili <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Weby vo vašich jazykoch</translation>
 <translation id="828180235270931531">Ďalšie dostupné tlačiarne</translation>
 <translation id="8281886186245836920">Preskočiť</translation>
@@ -10370,7 +10393,6 @@
 <translation id="8784626084144195648">Vyhladený priemer</translation>
 <translation id="8785622406424941542">Dotykové pero</translation>
 <translation id="8786824282808281903">Keď sa dieťaťu zobrazí táto ikona, bude možné na identifikáciu alebo schválenie nákupov použiť odtlačok prsta.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Skupina bez názvu – 1 karta}few{Skupina bez názvu – # karty}many{Unnamed Group - # Tabs}other{Skupina bez názvu – # kariet}}</translation>
 <translation id="8787752878731558379">Pomôžte nám zlepšiť Chrome tým, že nám poviete, prečo ste povolili súbory cookie tretích strán</translation>
 <translation id="8789898473175677810">Chrome je súčasťou <ph name="LINK_BEGIN" />úsilia spoluprácou<ph name="LINK_END" /> zredukovať sledovanie na rôznych weboch a ukončiť používanie súborov cookie tretích strán. Snažíme sa to však urobiť zodpovedne, pretože mnohé weby využívajú súbory cookie tretích strán, aby fungovali tak, ako boli navrhnuté. Mnohé pomocou nich napríklad zjednodušujú prihlásenie, podporujú vložené četovacie a komentovacie systémy a zaisťujú platené služby. Inzerenti pomocou nich často lepšie prispôsobujú reklamy. Je to dôležité, pretože reklamy webom často umožňujú platiť výdavky a poskytovať internetový obsah bez peňažného poplatku.</translation>
 <translation id="8791157330927639737">Ďalšie informácie o aktualizovaní</translation>
@@ -10605,6 +10627,7 @@
 <translation id="8962863356073277855">Webová adresa musí mať formát https://www.example.com</translation>
 <translation id="8962918469425892674">Tento web používa senzory pohybu alebo svetla.</translation>
 <translation id="8963117664422609631">Prejsť na nastavenia webu</translation>
+<translation id="8964795217937248330">Chcete zavrieť karty a odstrániť skupinu?</translation>
 <translation id="8965037249707889821">Zadajte staré heslo</translation>
 <translation id="8966809848145604011">Ďalšie profily</translation>
 <translation id="8967427617812342790">Pridať do čitateľského zoznamu</translation>
@@ -11038,6 +11061,7 @@
 <translation id="979345485590886759">Weby môžu žiadať o uzamknutie kurzora myši</translation>
 <translation id="980731642137034229">Tlačidlo ponuky akcií</translation>
 <translation id="981121421437150478">Offline</translation>
+<translation id="98235653036850093">Dobrý deň, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Zavrieť všetky karty</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" />– kamera a mikrofón nahrávajú</translation>
 <translation id="984275831282074731">Spôsoby platby</translation>
diff --git a/chrome/app/resources/generated_resources_sl.xtb b/chrome/app/resources/generated_resources_sl.xtb
index 8daed86..7605079 100644
--- a/chrome/app/resources/generated_resources_sl.xtb
+++ b/chrome/app/resources/generated_resources_sl.xtb
@@ -368,6 +368,7 @@
 <translation id="1260810365552581339">Linux morda nima dovolj prostora na disku. Povečate lahko prostor na disku za Linux in poskusite znova obnoviti v <ph name="LINK_START" />nastavitvah<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Zmerno</translation>
 <translation id="126156426083987769">Prišlo je do težave z licencami naprave za predstavitveni način.</translation>
+<translation id="1261885284931493480">Želite odstraniti zavihke in izbrisati skupino?</translation>
 <translation id="1263231323834454256">Bralni seznam</translation>
 <translation id="1263733306853729545">Premikanje po seznamu kandidatov s tipkama »<ph name="MINUS" />« in »<ph name="EQUAL" />«</translation>
 <translation id="126387934568812801">Vključi ta posnetek zaslona in naslove odprtih zavihkov</translation>
@@ -880,6 +881,7 @@
 <translation id="1634224622052500893">Najdeno je omrežje Wi-Fi</translation>
 <translation id="1634783886312010422">Ali ste že spremenili geslo na spletnem mestu <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">V redu</translation>
+<translation id="1636542522761359943">Dobrodošli, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Podatki aplikacij so lahko kateri koli podatki, ki jih je shranila aplikacija (glede na nastavitve razvijalca), vključno s podatki, kot so stiki, sporočila in fotografije. Varnostno kopirani podatki se ne štejejo v omejitev prostora za shranjevanje v Googlu Drive.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />To storitev lahko izklopite v nastavitvah.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Prejemanje tega zaznamka v iPhonu</translation>
@@ -916,6 +918,7 @@
 <translation id="1652862280638399816">Če želite Googlovega upravitelja gesel uporabljati s shrambo poverilnic sistema macOS, Keychain, znova zaženite Chromium in omogočite dostop do shrambe poverilnic Keychain. Zavihki se bodo po vnovičnem zagonu znova odprli.</translation>
 <translation id="1653958716132599769">Združitev sorodnih zavihkov</translation>
 <translation id="1654580009054503925">Prikazovanje zahtev ni dovoljeno</translation>
+<translation id="1654713139320245449">Najden ni noben cilj predvajanja. Potrebujete pomoč?</translation>
 <translation id="1656528038316521561">Neprosojnost ozadja</translation>
 <translation id="1657406563541664238">Pomagajte izboljšati <ph name="PRODUCT_NAME" /> s samodejnim pošiljanjem statističnih podatkov o uporabi in poročil o zrušitvah Googlu</translation>
 <translation id="1657937299377480641">Če se želiš znova prijaviti za dostop do izobraževalnih virov, prosi starša za dovoljenje</translation>
@@ -1644,12 +1647,14 @@
 <translation id="2187895286714876935">Napaka pri uvozu strežniškega potrdila</translation>
 <translation id="2187906491731510095">Razširitve posodobljene</translation>
 <translation id="2188881192257509750">Odpri aplikacijo <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Želite izbrisati skupino zavihkov?</translation>
 <translation id="2190069059097339078">Pripomoček za pridobivanje poverilnic za WiFi</translation>
 <translation id="219008588003277019">Modul »Native Client«: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(prazno)</translation>
 <translation id="2190967441465539539">Ni mogoče dostopati do kamere in mikrofona</translation>
 <translation id="2191754378957563929">Vklopljeno</translation>
 <translation id="2192505247865591433">Iz:</translation>
+<translation id="219283042927675668">Zavihki v skupini</translation>
 <translation id="2193365732679659387">Nastavitve zaupanja</translation>
 <translation id="2194856509914051091">Kaj morate upoštevati</translation>
 <translation id="2195331105963583686">Po tem datumu boste še vedno lahko uporabljali to napravo <ph name="DEVICE_TYPE" />, vendar ne bo več prejemala samodejnih posodobitev programske opreme in varnostnih posodobitev.</translation>
@@ -1671,6 +1676,7 @@
 <translation id="2211043920024403606">Informacije o profilu</translation>
 <translation id="2211245494465528624">Upravljanje možnosti sinhronizacije</translation>
 <translation id="221297410904507041">Brisanje zgodovine, piškotkov, predpomnilnika in drugega</translation>
+<translation id="2213410656650624348">Zmerno</translation>
 <translation id="2214018885812055163">Mape v skupni rabi</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 vrstica ni prikazana&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> vrstica ni prikazana&gt;}two{&lt;<ph name="NUMBER_OF_LINES" /> vrstici nista prikazani&gt;}few{&lt;<ph name="NUMBER_OF_LINES" /> vrstice niso prikazane&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> vrstic ni prikazanih&gt;}}</translation>
 <translation id="2215070081105889450">Če želite deliti zvok, namesto tega delite zavihek ali zaslon</translation>
@@ -1872,6 +1878,7 @@
 <translation id="2350133097354918058">Znova naložena</translation>
 <translation id="2350182423316644347">Inicializiranje aplikacije ...</translation>
 <translation id="235028206512346451">Če se odmaknete od naprave, se bo zaslon samodejno zaklenil. Ko ste pred napravo, se zaslon dalj časa ne bo zaklenil. Če ne uporabljate zaklepanja zaslona, se naprava ne bo zaklenila, ampak bo preklopila v stanje pripravljenosti.</translation>
+<translation id="2352305801620974284">Ko se prijavite v tej napravi, prejmete gesla in drugo iz računa Google</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Zapiski na zaklenjenem zaslonu so samodejno shranjeni v aplikacijo <ph name="LOCK_SCREEN_APP_NAME" />. Zadnji zapisek ostane na zaklenjenem zaslonu.</translation>
 <translation id="2353297238722298836">Kamera in mikrofon sta dovoljena</translation>
@@ -2053,6 +2060,7 @@
 <translation id="2473195200299095979">Prevede to stran</translation>
 <translation id="2475982808118771221">Prišlo je do napake</translation>
 <translation id="247616523300581745">Skrij te datoteke</translation>
+<translation id="2476435723907345463">Dostop do ključev za dostop je bil odstranjen</translation>
 <translation id="2476901513051581836">Shrambe ni mogoče počistiti, dokler ni znana velikost shrambe brez povezave.</translation>
 <translation id="2476974672882258506">Zaustavite sistem Windows, če želite odmestiti program <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">Ker ste nastavili več stikal, je samodejno iskanje izklopljeno.</translation>
@@ -2081,6 +2089,7 @@
 <translation id="249113932447298600">Oprostite, naprava <ph name="DEVICE_LABEL" /> še ni podprta.</translation>
 <translation id="2491587035099903063">predogled glasu za jezik <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Pripravljanje zahteve za podpisovanje potrdil</translation>
+<translation id="2492964937550251173">Želite zapreti zavihke in izbrisati skupino?</translation>
 <translation id="249330843868392562">Odpri nastavitve pretvorbe besedila v govor</translation>
 <translation id="2494555621641843783">Ni mogoče namestiti aplikacije Steam</translation>
 <translation id="2495141202137516054">Z vašega diska</translation>
@@ -2247,8 +2256,10 @@
 <translation id="2620215283731032047">Datoteke <ph name="FILE_NAME" /> ni mogoče varno prenesti.</translation>
 <translation id="2620245777360407679">Naprave, ki so trenutno povezane z dostopno točko</translation>
 <translation id="2620436844016719705">Sistem</translation>
+<translation id="262087792756666314">To funkcijo lahko pripnete za preprost dostop. Kliknite gumb za pripenjanje na vrhu stranskega podokna.</translation>
 <translation id="2620900772667816510">Super ločljivost Bluetooth</translation>
 <translation id="262154978979441594">Usposabljanje glasovnega modela za Pomočnika Google</translation>
+<translation id="2622280935687585828">Odstrani <ph name="SITE_NAME" /> z onemogočenih spletnih mest</translation>
 <translation id="26224892172169984">Ne dovoli nobenemu spletnemu mestu obravnave protokolov</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Upravljanje in vnovično programiranje naprav MIDI sta dovoljena</translation>
@@ -2422,6 +2433,7 @@
 <translation id="2743387203779672305">Kopiraj v odložišče</translation>
 <translation id="274362947316498129">Aplikacija poskuša dostopati do naprave <ph name="DEVICE_NAME" />. Če želite omogočiti dostop, izklopite zasebnost naprave <ph name="DEVICE_NAME" />.</translation>
 <translation id="2745080116229976798">Microsoftova kvalificirana podrejenost</translation>
+<translation id="2747853844543618313">Sprejeti morate zahtevo za predvajanje v napravi <ph name="DEVICE_NAME" />.</translation>
 <translation id="2749756011735116528">Prijavite se v storitev <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Preverjanje slovnice in črkovanja</translation>
@@ -2792,6 +2804,7 @@
 <translation id="3021066826692793094">Metulj</translation>
 <translation id="3021678814754966447">&amp;Prikaz izvorne kode okvirja</translation>
 <translation id="3021902017511220299">Pregledovanje ni uspelo. To dejanje je blokiral skrbnik.</translation>
+<translation id="3022068420678496307">S tem boste skupino izbrisali iz vseh naprav, v katerih ste v Chrome prijavljeni s tem računom Google.</translation>
 <translation id="3022361196600037287">Naprava <ph name="DEVICE" /> bo odstranjena iz tega Chromebooka in ne bo shranjena v račun <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Ni bilo razumljivo.</translation>
 <translation id="3023464535986383522">Izberite in poslušajte</translation>
@@ -3022,6 +3035,7 @@
 <translation id="3222066309010235055">Vnaprejšnje upodabljanje: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Povezava z napravo <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Z Googlom Lens poiščite kar koli na tej strani</translation>
+<translation id="3223109931751684474">Odstranite dostop do ključev za dostop v tej napravi</translation>
 <translation id="3223531857777746191">Gumb za ponastavitev</translation>
 <translation id="3225084153129302039">Privzeti vijoličasti avatar</translation>
 <translation id="3225319735946384299">Podpisovanje kode</translation>
@@ -3346,6 +3360,7 @@
 <translation id="3473479545200714844">Lupa</translation>
 <translation id="3474218480460386727">Za nove besede uporabite 99 črk ali manj</translation>
 <translation id="3474624961160222204">Nadaljuj kot <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Zmerni prihranki količine uporabljenega pomnilnika. Zavihki po daljšem časovnem obdobju postanejo neaktivni.</translation>
 <translation id="347785443197175480">Še naprej omogočaj gostitelju <ph name="HOST" /> dostop do kamere in mikrofona</translation>
 <translation id="3479357084663933762">Devteranomalija</translation>
 <translation id="3479552764303398839">Ne zdaj</translation>
@@ -4069,7 +4084,6 @@
 <translation id="3983586614702900908">naprave neznanega prodajalca</translation>
 <translation id="3983764759749072418">Aplikacije iz Trgovine Play imajo dostop do te naprave.</translation>
 <translation id="3983769721878416534">Zakasnitev pred klikom</translation>
-<translation id="3983793589497399077">Kliknite ali povlecite kjer koli, če želite iskati z Googlom Lens</translation>
 <translation id="3984135167056005094">Ne vključi e-poštnega naslova</translation>
 <translation id="3984159763196946143">Ni bilo mogoče zagnati predstavitvenega načina</translation>
 <translation id="3984431586879874039">Dovolite, da si to spletno mesto ogleda vaš varnostni ključ?</translation>
@@ -4106,6 +4120,7 @@
 <translation id="4010036441048359843">Vklop označevanja</translation>
 <translation id="4010746393007464819">Na voljo je nadgradnja na Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">Če želite dostopati do zaznamkov v mobilni napravi, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">To funkcijo lahko pripnete za preprost dostop</translation>
 <translation id="4014432863917027322">Želite popraviti »<ph name="EXTENSION_NAME" />«?</translation>
 <translation id="4015163439792426608">Imate razširitve? <ph name="BEGIN_LINK" />Upravljajte razširitve<ph name="END_LINK" /> na enem preprostem mestu.</translation>
 <translation id="4016762287427926315">Dovoljenja, ki jih omogočite za aplikacijo <ph name="APP_NAME" />, bodo prav tako omogočena za to aplikacijo. <ph name="BEGIN_LINK" />Upravljanje<ph name="END_LINK" /></translation>
@@ -4191,6 +4206,7 @@
 <translation id="4078903002989614318">Možnosti razvrščanja in seznamov</translation>
 <translation id="4079140982534148664">Uporaba izboljšanega preverjanja črkovanja</translation>
 <translation id="4082333918978320301">Nobenemu spletnemu mestu ni dovoljena uporaba mikrofona</translation>
+<translation id="4083735423615351075">Zavihki bodo ostali odprti v tej napravi, vendar bo skupina izbrisana iz vseh naprav, v katerih ste v Chrome prijavljeni s tem računom Google.</translation>
 <translation id="4084682180776658562">Zaznamek</translation>
 <translation id="4084835346725913160">Zapri <ph name="TAB_NAME" /></translation>
 <translation id="4085298594534903246">JavaScript je na tej strani blokiran.</translation>
@@ -4200,6 +4216,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Pokaži na desni</translation>
+<translation id="4088879333319441249">Želite razdružiti skupino zavihkov?</translation>
 <translation id="4089235344645910861">Nastavitve so bile shranjene. Sinhronizacija se je začela.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Omogočanje preverjenega dostopa</translation>
@@ -4409,6 +4426,7 @@
 <translation id="4261429981378979799">Dovoljenja za razširitve</translation>
 <translation id="4262004481148703251">Opusti opozorilo</translation>
 <translation id="4263223596040212967">Preverite postavitev tipkovnice in poskusite znova.</translation>
+<translation id="4263470758446311292">Največji prihranki količine uporabljenega pomnilnika. Zavihki postanejo neaktivni po krajšem časovnem obdobju.</translation>
 <translation id="4265096510956307240">Potrditev identitete</translation>
 <translation id="4265301768135164545">Profil za e-SIM lahko nastavite tudi <ph name="BEGIN_LINK" />ročno<ph name="END_LINK" />.</translation>
 <translation id="426564820080660648">Če želite preveriti, ali so na voljo posodobitve, uporabite ethernet, Wi-Fi ali mobilno podatkovno omrežje.</translation>
@@ -4728,6 +4746,7 @@
 <translation id="4503748371388753124">V računalnik je vgrajen modul TPM (Trusted Platform Module), ki je varnostna naprava, potrebna za številne nujne varnostne funkcije v sistemu ChromeOS Flex. Več o njem lahko preberete v centru za pomoč za Chromebook: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Piškotki so dovoljeni}=1{Piškotki so dovoljeni, 1 izjema}one{Piškotki so dovoljeni, {COUNT} izjema}two{Piškotki so dovoljeni, {COUNT} izjemi}few{Piškotki so dovoljeni, {COUNT} izjeme}other{Piškotki so dovoljeni, {COUNT} izjem}}</translation>
 <translation id="4504940961672722399">Razširitev uporabite tako, da kliknete to ikono ali pritisnete <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Prenesite Chrome s to kodo QR in se prijavite v račun Google.</translation>
 <translation id="450552327874992444">Beseda je že dodana</translation>
 <translation id="4507373251891673233">Vse razširitve s spletnega mesta <ph name="HOST" /> ste blokirali.</translation>
 <translation id="4507401683427517298">Kliknite »Dodaj bližnjico«</translation>
@@ -5063,6 +5082,7 @@
 <translation id="4768332406694066911">Imate potrdila teh organizacij, ki vas identificirajo</translation>
 <translation id="4769632191812288342">Imate standardno zaščito</translation>
 <translation id="4770119228883592393">Zahtevano je dovoljenje; pritisnite ⌘ + Option + puščico dol, če se želite odzvati.</translation>
+<translation id="4770755495532014179">Uporabite to geslo v iPhonu</translation>
 <translation id="4773112038801431077">Nadgradnja Linuxa</translation>
 <translation id="477548766361111120">Dovoli, da razširitev bere in spreminja to spletno mesto</translation>
 <translation id="4776311127346151860">Naprava <ph name="DEVICE_NAME" /> je povezana</translation>
@@ -5232,6 +5252,7 @@
 <translation id="4890399733764921729">Povezave ni mogoče vzpostaviti. Zaklenil drug mobilni operater.</translation>
 <translation id="4890773143211625964">Pokaži dodatne možnosti tiskalnika</translation>
 <translation id="4891089016822695758">Forum za beto</translation>
+<translation id="4891795846939730995">Če želite v tej napravi znova omogočiti dostop do ključev za dostop, se s shranjenim ključem za dostop prijavite na spletnem mestu ali v aplikaciji</translation>
 <translation id="4892229439761351791">Spletno mesto lahko uporablja Bluetooth</translation>
 <translation id="4892328231620815052">Ko boste pripravljeni, boste našli bralni seznam v zaznamkih in na seznamih</translation>
 <translation id="489258173289528622">Dejanje ob nedejavnosti med polnjenjem iz baterije</translation>
@@ -5677,6 +5698,7 @@
 <translation id="5242724311594467048">Ali želite omogočiti »<ph name="EXTENSION_NAME" />«?</translation>
 <translation id="5243522832766285132">Poskusite znova čez nekaj trenutkov</translation>
 <translation id="5244234799035360187">OneDrive bo zdaj prikazan v aplikaciji Datoteke</translation>
+<translation id="5244466461749935369">Obdrži za zdaj</translation>
 <translation id="5244474230056479698">Syncing to <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Začnite uporabljati šolski račun</translation>
 <translation id="5246282308050205996">Program <ph name="APP_NAME" /> se je zrušil. Kliknite ta oblaček, da ga znova zaženete.</translation>
@@ -5945,6 +5967,7 @@
 <translation id="5453829744223920473">Otrok lahko uporablja vse svoje šolske aplikacije, zaznamke in vire enako kot v razredu. Šola določa osnovna pravila.</translation>
 <translation id="5454166040603940656">pri ponudniku <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Prikaz več rezultatov iskanja</translation>
+<translation id="5457082343331641453">Dodajte v iskanje</translation>
 <translation id="5457113250005438886">Neveljavno</translation>
 <translation id="5457459357461771897">Branje in izbris fotografij, glasbe in drugih predstavnosti v računalniku</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6424,6 +6447,7 @@
 <translation id="5816434091619127343">Če uveljavite zahtevane spremembe tiskalnika, bo ta neuporaben.</translation>
 <translation id="581659025233126501">Vklopi sinhronizacijo</translation>
 <translation id="5817918615728894473">Seznani</translation>
+<translation id="5817963443108180228">Dobrodošli nazaj, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">vse aplikacije</translation>
 <translation id="5821565227679781414">Ustvari bližnjico</translation>
 <translation id="5824976764713185207">Samodejno branje strani po dokončanju nalaganja</translation>
@@ -6463,6 +6487,7 @@
 <translation id="5846504156837627898">Upravljanje dovoljenj spletnih mest</translation>
 <translation id="5846749317653566506">Prilagodite nastavitve popravljanja barv in tako poskrbite, da se bodo barve razlikovale</translation>
 <translation id="5846807460505171493">Nameščanje posodobitev in aplikacij. Če nadaljujete, se strinjate, da lahko ta naprava tudi samodejno prenese in namesti posodobitve ter aplikacije, ki jih zagotavljajo Google, vaš operater in proizvajalec vaše naprave – morda s prenosom podatkov v mobilnih omrežjih. Nekatere od teh aplikacij morda ponujajo nakupe v aplikaciji.</translation>
+<translation id="5848054741303781539">Ročno nastavljeno, brez uporabe lokacije</translation>
 <translation id="5848319660029558352">Preberi na glas in oblikovanje besedila</translation>
 <translation id="5849212445710944278">Je že dodano</translation>
 <translation id="584945105664698226">Hitrost glasu</translation>
@@ -7023,6 +7048,7 @@
 <translation id="6265159465845424232">Vprašaj pred kopiranjem ali premikanjem Microsoftovih datotek v Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Odstrani vrata</translation>
 <translation id="6266532094411434237">Vzpostavljanje povezave z napravo <ph name="DEVICE" /></translation>
+<translation id="6266984048393265562">Prilagodi profil</translation>
 <translation id="6267166720438879315">Izberite potrdilo za preverjanje pristnosti za <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Odpri z aplikacijo <ph name="APP" /></translation>
 <translation id="6270309713620950855">Obvestilo o izklopljenem zvoku</translation>
@@ -7161,7 +7187,6 @@
 <translation id="6383382161803538830">Način za branje na tej strani ni na voljo</translation>
 <translation id="638418309848716977">Podprte povezave</translation>
 <translation id="6384275966486438344">Sprememba nastavitev iskanja na: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Neimenovana skupina – 1 zavihek}one{Neimenovana skupina – # zavihek}two{Neimenovana skupina – # zavihka}few{Neimenovana skupina – # zavihki}other{Neimenovana skupina – # zavihkov}}</translation>
 <translation id="6385149369087767061">Vzpostavite internetno povezavo in poskusite znova</translation>
 <translation id="6385382178401976503">Kartica: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Opozorilo: Omogočeno je podrobno zapisovanje v dnevnik. Dnevniki lahko vključujejo URL-je ali druge občutljive podatke. Preglejte te podatke in se prepričajte, ali je pošiljanje za vas sprejemljivo.</translation>
@@ -7240,6 +7265,7 @@
 <translation id="6445450263907939268">Če niste želeli teh sprememb, lahko obnovite prejšnje nastavitve.</translation>
 <translation id="6446213738085045933">Ustvari bližnjico na namizju</translation>
 <translation id="6447842834002726250">Piškotki</translation>
+<translation id="6449554712554071184">S tem boste skupino trajno izbrisali iz naprave.</translation>
 <translation id="6450876761651513209">Spreminjanje nastavitev, povezanih z zasebnostjo</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> in še en zavihek}one{<ph name="PAGE_TITLE" /> in še # zavihek}two{<ph name="PAGE_TITLE" /> in še # zavihka}few{<ph name="PAGE_TITLE" /> in še # zavihki}other{<ph name="PAGE_TITLE" /> in še # zavihkov}}</translation>
 <translation id="6451689256222386810">Če ste pozabili geslo ali želite spremeniti to nastavitev, <ph name="BEGIN_LINK" />ponastavite sinhronizacijo<ph name="END_LINK" />.</translation>
@@ -7386,6 +7412,7 @@
 <translation id="6556866813142980365">Uveljavi</translation>
 <translation id="6556903358015358733">Tema in zaslonsko ozadje</translation>
 <translation id="6557290421156335491">Moje bližnjice</translation>
+<translation id="6560061709899140565">Prikaz drugih sej za predvajanje</translation>
 <translation id="6560151649238390891">Predlog je vstavljen</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Shranjevanje sistemskih dnevnikov v mapo Prenosi.</translation>
@@ -7481,6 +7508,7 @@
 <translation id="6635674640674343739">Omrežne povezave ni mogoče vzpostaviti. Preverite omrežno povezavo in poskusite znova.</translation>
 <translation id="663569763553406962">Oglejte si, katere razširitve lahko berejo ali spreminjajo spletno mesto</translation>
 <translation id="6635944431854494329">Lastnik lahko nadzira to funkcijo v »Nastavitve &gt; Dodatno &gt; Samodejno pošiljanje diagnostičnih podatkov in podatkov o uporabi Googlu«.</translation>
+<translation id="6636572589916466933">Sprejmite zahtevo za predvajanje v napravi <ph name="DEVICE_NAME" />.</translation>
 <translation id="6636623428211296678">Spodaj lahko raziščete več nastavitev ali zaključite zdaj.</translation>
 <translation id="6639554308659482635">Pomnilnik SQLite</translation>
 <translation id="6640268266988685324">Odprti zavihek</translation>
@@ -7499,6 +7527,7 @@
 <translation id="6648911618876616409">Nujna posodobitev je pripravljena za namestitev. Če želite začeti, se prijavite.</translation>
 <translation id="6649018507441623493">Samo trenutek …</translation>
 <translation id="6650206238642452078">Naročanje na dogodke v sistemu ChromeOS</translation>
+<translation id="6650584564768559994">Uravnoteženi prihranki količine uporabljenega pomnilnika. Zavihki po optimalnem časovnem obdobju postanejo neaktivni.</translation>
 <translation id="665061930738760572">Odpri v &amp;novem oknu</translation>
 <translation id="6651237644330755633">Zaupaj temu potrdilu za prepoznavanje spletnih mest</translation>
 <translation id="6651495917527016072">Sinhroniziranje omrežij Wi-Fi s telefonom. <ph name="LINK_BEGIN" />Več o tem<ph name="LINK_END" /></translation>
@@ -7756,6 +7785,7 @@
 <translation id="6831043979455480757">Prevedi</translation>
 <translation id="6832218595502288407">Poravnaj levo</translation>
 <translation id="6833479554815567477">Zavihek je odstranjen iz skupine <ph name="GROUP_NAME" /> – <ph name="GROUP_CONTENTS" />.</translation>
+<translation id="6833753236242482566">Uravnoteženo (priporočeno)</translation>
 <translation id="6835762382653651563">Če želite posodobiti napravo <ph name="DEVICE_TYPE" />, vzpostavite internetno povezavo.</translation>
 <translation id="683630338945552556">Uporaba in shranjevanje gesel v računu Google</translation>
 <translation id="6839225236531462745">Napaka pri brisanju potrdila</translation>
@@ -8164,6 +8194,7 @@
 <translation id="715396040729904728">tipka za zaganjalnik + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Pošljite povratne informacije ali opišite težavo. Če je mogoče, vključite postopek za ponovitev težave.</translation>
 <translation id="7154130902455071009">Sprememba začetne strani na: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Boljša kakovost videoposnetkov in prihranek energije v bateriji. Videoposnetki se bodo predvajali samo na zaslonu, ki podpira Google Cast.</translation>
 <translation id="7159953856712257647">Privzeto nameščeno</translation>
 <translation id="7160182524506337403">Zdaj si lahko ogledate obvestila telefona</translation>
 <translation id="7165263843655074092">V tej napravi uporabljate standardno varnostno zaščito</translation>
@@ -9022,6 +9053,7 @@
 <translation id="7788948939674438635">Spletnim mestom ni dovoljeno zaklepanje tipkovnice</translation>
 <translation id="7789963078219276159">Ozadje začetne strani je spremenjeno v <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">Optično prepoznavanje PDF-ja</translation>
+<translation id="7790737481627460475">Datoteke v tem Chromebooku</translation>
 <translation id="7791269138074599214">Način vnosa</translation>
 <translation id="7791429245559955092">Ta aplikacija bo nameščena v trenutno uporabljenem profilu za Chrome</translation>
 <translation id="7791436592012979144">Obratno pomikanje je omogočeno</translation>
@@ -9051,6 +9083,7 @@
 <translation id="7810202088502699111">Pojavna okna na tej strani so blokirana.</translation>
 <translation id="7810367892333449285">Vnos mora biti v obliki <ph name="LPA_0" />$<ph name="LPA_1" />naslov SM-DP+<ph name="LPA_2" />$<ph name="LPA_3" />izbirni ujemajoči se ID<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Poskusite znova ali izberite eno od že ustvarjenih spodnjih tem.</translation>
+<translation id="7814090115158024843">Na teh spletnih mestih nikoli ne ponudi pomoči za pisanje</translation>
 <translation id="7814458197256864873">&amp;Kopiraj</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Uredi bližnjico <ph name="SHORTCUT" /> za razširitev <ph name="EXTENSION_NAME" /></translation>
@@ -9282,8 +9315,10 @@
 <translation id="7974936243149753750">Upodabljanje čez rob zaslona</translation>
 <translation id="7975504106303186033">To napravo za Chrome Education morate včlaniti v račun za Education. Če se želite prijaviti za nov račun, odprite visit g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Opozori vas, če uporabite geslo, ki je ogroženo zaradi podatkovne kršitve.</translation>
+<translation id="797824194429476746">Zavihki bodo ostali odprti v tej napravi, vendar bo skupina trajno izbrisana.</translation>
 <translation id="7978412674231730200">Zasebni ključ</translation>
 <translation id="7978450511781612192">S tem boste odjavljeni iz Google Računov. Zaznamki, zgodovina, gesla in drugi podatki ne bodo več sinhronizirani.</translation>
+<translation id="7980066177668669492">Base64 kodiran ASCII, več potrdil</translation>
 <translation id="7980084013673500153">ID sredstva: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Uporabite shranjeni ključ za dostop za aplikacijo <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Prikaz pojavnega okna s številko EID in kodo QR</translation>
@@ -9407,6 +9442,7 @@
 <translation id="8066444921260601116">Pogovorno okno za povezovanje</translation>
 <translation id="8070572887926783747">Dovoljenje za lokacijo za aplikacijo <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Tipni odziv</translation>
+<translation id="8071033114691184017">Uporabite to geslo v iPhonu</translation>
 <translation id="8071432093239591881">Natisni kot sliko</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Podatki aplikacij so lahko kateri koli podatki, ki jih je shranila aplikacija (glede na nastavitve razvijalca), vključno s podatki, kot so stiki, sporočila in fotografije.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Varnostno kopirani podatki se ne štejejo v otrokovo omejitev prostora za shranjevanje v Googlu Drive.<ph name="END_PARAGRAPH2" />
@@ -9695,6 +9731,7 @@
 <translation id="8276242035951017580">Nobena aplikacija ne sme uporabljati kamere</translation>
 <translation id="8276560076771292512">Izbriši predpomnilnik in znova naloži brez predpomnilnika</translation>
 <translation id="8276850948802942358">Preberite več o dajanju začasnega dovoljenja za uporabo piškotkov tretjih oseb spletnemu mestu</translation>
+<translation id="8277907305629781277">Ta ključ za dostop ste ustvarili dne <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Spletna mesta v vaših jezikih</translation>
 <translation id="828180235270931531">Drugi razpoložljivi tiskalniki</translation>
 <translation id="8281886186245836920">Preskoči</translation>
@@ -9974,6 +10011,7 @@
 <translation id="8482077254400484047">Tukaj lahko upravljate videz nedejavnih zavihkov</translation>
 <translation id="8483248364096924578">Naslov IP</translation>
 <translation id="8486666913807228950">Razlog: Obrnjeno pravilo <ph name="REVERT_RULE" /> je bilo najdeno na seznamu »Vsiljeno odprtje v«.</translation>
+<translation id="8487303289354211861">Pripeto. Do te funkcije lahko znova dostopate z novim gumbom v orodni vrstici.</translation>
 <translation id="8487678622945914333">Povečaj</translation>
 <translation id="8487699605742506766">Dostopna točka</translation>
 <translation id="8489156414266187072">Osebni predlogi so prikazani samo v vašem računu</translation>
@@ -10375,7 +10413,6 @@
 <translation id="8784626084144195648">Kvantizacijsko povprečje</translation>
 <translation id="8785622406424941542">Pisalo</translation>
 <translation id="8786824282808281903">Ko otrok vidi to ikono, se lahko prstni odtis uporabi za identifikacijo ali odobritev nakupov.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Neimenovana skupina – 1 zavihek}one{Neimenovana skupina – # zavihek}two{Neimenovana skupina – # zavihka}few{Neimenovana skupina – # zavihki}other{Neimenovana skupina – # zavihkov}}</translation>
 <translation id="8787752878731558379">Pomagajte nam izboljšati Chrome, tako da nam poveste, zakaj ste dovolili piškotke tretjih oseb</translation>
 <translation id="8789898473175677810">Chrome je del <ph name="LINK_BEGIN" />skupnih prizadevanj<ph name="LINK_END" /> za zmanjšanje sledenja med mesti in postopno ukinjanje uporabe piškotkov tretjih oseb. To poskušamo storiti odgovorno, saj veliko spletnih mest za pravilno delovanje uporablja piškotke tretjih oseb. Številna spletna mesta na primer uporabljajo piškotke tretjih oseb za poenostavitev prijave, podporo vdelanih sistemov za klepet in komentarje ter za plačilne storitve. Oglaševalci pogosto uporabljajo piškotke tretjih oseb za boljše osebno prilagajanje oglasov. To je pomembno, saj spletna mesta pogosto računajo na oglase pri plačevanju izdatkov, zaradi oglasov pa je spletna vsebina lahko še naprej brez stroškov.</translation>
 <translation id="8791157330927639737">Preberite več o posodabljanju</translation>
@@ -10610,6 +10647,7 @@
 <translation id="8962863356073277855">URL mora biti v obliki https://www.example.com.</translation>
 <translation id="8962918469425892674">To spletno mesto uporablja tipala gibanja ali svetlobe.</translation>
 <translation id="8963117664422609631">Na nastavitve spletnega mesta</translation>
+<translation id="8964795217937248330">Želite zapreti zavihke in izbrisati skupino?</translation>
 <translation id="8965037249707889821">Vnesite staro geslo</translation>
 <translation id="8966809848145604011">Drugi profili</translation>
 <translation id="8967427617812342790">Add to reading list</translation>
@@ -10689,6 +10727,7 @@
 <translation id="9014674417732091912">Premaknjeno v vrstico <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Varnostno kopiranje v Google Drive</translation>
 <translation id="9016827136585652292">preklop zaslona za zasebnost</translation>
+<translation id="9017055559700464094">Pripeto. To funkcijo lahko znova uporabite v orodni vrstici.</translation>
 <translation id="90181708067259747">Datum poteka veljavnosti: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Namestitev je dokončana</translation>
 <translation id="901876615920222131">Če želite znova odpreti skupino, kliknite ime skupine</translation>
@@ -10847,6 +10886,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Za najboljšo izkušnjo namestite <ph name="DEVICE_OS" /> na notranji disk. Namestite ga lahko tudi pozneje na zaslonu za prijavo.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Če programa še ne želite namestiti, ga lahko zaženete s pogona USB in ga najprej preizkusite. Tako boste ohranili trenutni operacijski sistem in podatke, vendar lahko pride do omejitev shrambe in delovanja.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Odpri na pripetem zavihku</translation>
+<translation id="9122788874051694311">Želite ta ključ za dostop shraniti zunaj anonimnega načina?</translation>
 <translation id="9123287046453017203">Naprava ni posodobljena</translation>
 <translation id="9125910124977405374">Odstranitev jezika <ph name="LANGUAGE_NAME" /> iz samodejno prevedenih jezikov</translation>
 <translation id="9126149354162942022">Barva kazalca</translation>
@@ -11041,6 +11081,7 @@
 <translation id="979345485590886759">Spletna mesta lahko zahtevajo zaklepanje kazalca miške</translation>
 <translation id="980731642137034229">Gumb menija z dejanji</translation>
 <translation id="981121421437150478">Brez povezave</translation>
+<translation id="98235653036850093">Živijo, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Zapri vse zavihke</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – snemanje s kamero in mikrofonom</translation>
 <translation id="984275831282074731">Plačilna sredstva</translation>
diff --git a/chrome/app/resources/generated_resources_sq.xtb b/chrome/app/resources/generated_resources_sq.xtb
index 049b7be..97cc5d48 100644
--- a/chrome/app/resources/generated_resources_sq.xtb
+++ b/chrome/app/resources/generated_resources_sq.xtb
@@ -1655,6 +1655,7 @@
 <translation id="2211043920024403606">Informacionet e profilit</translation>
 <translation id="2211245494465528624">Menaxho opsionet e sinkronizimit</translation>
 <translation id="221297410904507041">Fshi historikun, kukit, memorien specifike etj.</translation>
+<translation id="2213410656650624348">Mesatar</translation>
 <translation id="2214018885812055163">Dosjet e ndara</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 rresht nuk shfaqet&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> rreshta nuk shfaqen&gt;}}</translation>
 <translation id="2215070081105889450">Për të ndarë audion, ndaj një skedë ose ekranin më mirë</translation>
@@ -2035,6 +2036,7 @@
 <translation id="2473195200299095979">Përktheje këtë faqe</translation>
 <translation id="2475982808118771221">Ndodhi një gabim</translation>
 <translation id="247616523300581745">Fshih këta skedarë</translation>
+<translation id="2476435723907345463">Qasja te çelësat e kalimit u hoq</translation>
 <translation id="2476901513051581836">Hapësira ruajtëse nuk mund të pastrohet derisa të mësohet madhësia e hapësirës ruajtëse offline.</translation>
 <translation id="2476974672882258506">Fike sistemin Windows për ta çinstaluar <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">Duke qenë se ke konfiguruar shumë çelësa, skanimi automatik është çaktivizuar.</translation>
@@ -2229,6 +2231,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> nuk mund të shkarkohet në mënyrë të sigurt.</translation>
 <translation id="2620245777360407679">Pajisjet e lidhura aktualisht me zonën e qasjes për internet</translation>
 <translation id="2620436844016719705">Sistemi</translation>
+<translation id="262087792756666314">Mund ta gozhdosh këtë veçori për qasje të lehtë; kliko butonin "Gozhdo" në krye të panelit anësor</translation>
 <translation id="2620900772667816510">Superrezolucioni i Bluetooth-it</translation>
 <translation id="262154978979441594">Trajno modelin e zërit të "Asistentit të Google"</translation>
 <translation id="26224892172169984">Mos lejo asnjë sajt që të administrojë protokollet</translation>
@@ -3004,6 +3007,7 @@
 <translation id="3222066309010235055">Interpretuesi paraprak: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Lidhu me <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Kërko çdo gjë në këtë faqe me "Lenten e Google"</translation>
+<translation id="3223109931751684474">Hiq qasjen te çelësat e tu të kalimit në këtë pajisje</translation>
 <translation id="3223531857777746191">Butoni i rivendosjes</translation>
 <translation id="3225084153129302039">Avatari i parazgjedhur i purpurt</translation>
 <translation id="3225319735946384299">Nënshkrimi me kod</translation>
@@ -3328,6 +3332,7 @@
 <translation id="3473479545200714844">Zmadhuesi i ekranit</translation>
 <translation id="3474218480460386727">Përdor 99 shkronja ose më pak për fjalët e reja</translation>
 <translation id="3474624961160222204">Vazhdo si <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Merr kursim mesatar të memories. Skedat e tua bëhen joaktive pas një periudhe më të gjatë kohore.</translation>
 <translation id="347785443197175480">Vazhdo të lejosh <ph name="HOST" /> që të qaset te kamera dhe mikrofoni</translation>
 <translation id="3479357084663933762">Deuteranomali</translation>
 <translation id="3479552764303398839">Jo tani</translation>
@@ -4051,7 +4056,6 @@
 <translation id="3983586614702900908">pajisjet nga një shitës i panjohur</translation>
 <translation id="3983764759749072418">Aplikacionet e "Dyqanit të Play" kanë qasje në këtë pajisje.</translation>
 <translation id="3983769721878416534">Vonesa përpara klikimit</translation>
-<translation id="3983793589497399077">Kliko ose zvarrit kudo për të kërkuar me "Lenten"</translation>
 <translation id="3984135167056005094">Mos e përfshi adresën e email-it</translation>
 <translation id="3984159763196946143">Nuk mund të hapej modaliteti i demonstrimit</translation>
 <translation id="3984431586879874039">Dëshiron që ky sajt të shikojë çelësin tënd të sigurisë?</translation>
@@ -4088,6 +4092,7 @@
 <translation id="4010036441048359843">Aktivizo theksimin</translation>
 <translation id="4010746393007464819">Ofrohet një përditësim në Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">Për të marrë faqeshënuesit në pajisjen tënde celulare, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Mund ta gozhdosh këtë veçori për qasje të lehtë</translation>
 <translation id="4014432863917027322">Të riparohet "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="4015163439792426608">Ke shtesa? <ph name="BEGIN_LINK" />Menaxho shtesat e tua<ph name="END_LINK" /> në një vend me lehtësi.</translation>
 <translation id="4016762287427926315">Lejet që lejon për <ph name="APP_NAME" /> do të lejohen edhe për këtë aplikacion. <ph name="BEGIN_LINK" />Menaxho<ph name="END_LINK" /></translation>
@@ -4391,6 +4396,7 @@
 <translation id="4261429981378979799">Lejet e shtesave</translation>
 <translation id="4262004481148703251">Hiq paralajmërimin</translation>
 <translation id="4263223596040212967">Kontrollo strukturën e tastierës dhe provo përsëri.</translation>
+<translation id="4263470758446311292">Merr kursim maksimal të memories. Skedat e tua bëhen joaktive pas një periudhe më të shkurtër kohore.</translation>
 <translation id="4265096510956307240">Verifiko që je ti</translation>
 <translation id="4265301768135164545">Mund të konfigurosh gjithashtu një profil të kartës eSIM <ph name="BEGIN_LINK" />në mënyrë manuale<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Për të kontrolluar për përditësime, përdor Ethernet, Wi-Fi ose të dhënat celulare.</translation>
@@ -4710,6 +4716,7 @@
 <translation id="4503748371388753124">Kompjuteri yt përmban një pajisje sigurie të "Modulit të platformës së besuar" (TPM), e cila përdoret për të zbatuar shumë veçori kritike të sigurisë në Chrome OS Flex. Vizito "Qendrën e ndihmës të Chromebook" për të mësuar më shumë: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Kukit lejohen}=1{Kukit lejohen, 1 përjashtim}other{Kukit lejohen, {COUNT} përjashtime}}</translation>
 <translation id="4504940961672722399">Përdore këtë shtesë duke klikuar këtë ikonë ose duke shtypur <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Shkarko Chrome me këtë kod QR dhe identifikohu në "Llogarinë tënde të Google".</translation>
 <translation id="450552327874992444">Fjala është shtuar tashmë</translation>
 <translation id="4507373251891673233">Ke bllokuar të gjitha shtesat nga <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Kliko te “Shto shkurtoren”</translation>
@@ -5045,6 +5052,7 @@
 <translation id="4768332406694066911">Ke certifikata nga këto organizata që të identifikojnë</translation>
 <translation id="4769632191812288342">Po merr mbrojtje standarde</translation>
 <translation id="4770119228883592393">Kërkohet leje, shtyp ⌘ + Option + Shigjetën poshtë për t'u përgjigjur</translation>
+<translation id="4770755495532014179">Përdor këtë fjalëkalim në iPhone</translation>
 <translation id="4773112038801431077">Përmirëso Linux</translation>
 <translation id="477548766361111120">Lejo që shtesa të lexojë dhe të ndryshojë këtë sajt</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> është lidhur</translation>
@@ -5214,6 +5222,7 @@
 <translation id="4890399733764921729">Nuk mund të lidhet. Kyçur nga një operator tjetër celular.</translation>
 <translation id="4890773143211625964">Shfaq opsionet e përparuara të printerit</translation>
 <translation id="4891089016822695758">Forumi beta</translation>
+<translation id="4891795846939730995">Për t'i dhënë kësaj pajisjeje qasje sërish qasje te çelësat e kalimit, identifikohu në një sajt ose aplikacion me një çelës të ruajtur kalimi</translation>
 <translation id="4892229439761351791">Sajti mund të përdorë Bluetooth-in</translation>
 <translation id="4892328231620815052">Kur të jesh gati, mund ta gjesh listën tënde të leximit te "Faqeshënuesit" dhe "Listat"</translation>
 <translation id="489258173289528622">Veprimi i gjendjes joaktive gjatë kohës që është me bateri</translation>
@@ -6443,6 +6452,7 @@
 <translation id="5846504156837627898">Menaxho lejet e sajtit</translation>
 <translation id="5846749317653566506">Rregullo cilësimet e korrigjimit të ngjyrës për t'u siguruar që ngjyrat të jenë të dallueshme</translation>
 <translation id="5846807460505171493">Instalo përditësimet dhe aplikacionet. Duke vazhduar, ti pranon se kjo pajisje mund të shkarkojë dhe instalojë gjithashtu automatikisht përditësime dhe aplikacione nga Google, operatori yt celular, prodhuesi i pajisjes sate, duke përdorur mundësisht të dhënat celulare. Disa prej këtyre aplikacioneve mund të ofrojnë blerje përmes aplikacioneve.</translation>
+<translation id="5848054741303781539">Caktuar manualisht; nuk përdor vendndodhjen</translation>
 <translation id="5848319660029558352">"Lexo me zë" dhe "Formatimi i tekstit"</translation>
 <translation id="5849212445710944278">Është shtuar tashmë</translation>
 <translation id="584945105664698226">Shpejtësia e zërit</translation>
@@ -7141,7 +7151,6 @@
 <translation id="6383382161803538830">Modaliteti i leximit nuk ofrohet në këtë faqe</translation>
 <translation id="638418309848716977">Lidhjet e mbështetura</translation>
 <translation id="6384275966486438344">Ndryshoji cilësimet e kërkimit në: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grup pa emër - 1 skedë}other{Grup pa emër - # skeda}}</translation>
 <translation id="6385149369087767061">Lidhu me internetin dhe provo sërish</translation>
 <translation id="6385382178401976503">Karta: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Paralajmërim! Regjistrimi i detajuar është i aktivizuar; regjistrat më poshtë mund të përfshijnë URL ose informacione të tjera delikate. Rishiko dhe sigurohu që nuk e ke problem dorëzimin e këtyre informacioneve.</translation>
@@ -7473,6 +7482,7 @@
 <translation id="6648911618876616409">Një përditësim kritik është gati për t'u instaluar. Identifikohu për të filluar.</translation>
 <translation id="6649018507441623493">Prit një sekondë…</translation>
 <translation id="6650206238642452078">Abonohu për ngjarjet e sistemit ChromeOS</translation>
+<translation id="6650584564768559994">Merr kursim të balancuar të memories. Skedat e tua bëhen joaktive pas një periudhe optimale kohore.</translation>
 <translation id="665061930738760572">Hape në dritare &amp;të re</translation>
 <translation id="6651237644330755633">Besoji kësaj certifikate për identifikimin e faqeve të internetit</translation>
 <translation id="6651495917527016072">Sinkronizo rrjetet Wi-Fi me telefonin tënd. <ph name="LINK_BEGIN" />Mëso më shumë<ph name="LINK_END" /></translation>
@@ -7730,6 +7740,7 @@
 <translation id="6831043979455480757">Përkthe</translation>
 <translation id="6832218595502288407">Drejtvendos majtas</translation>
 <translation id="6833479554815567477">Skeda u zhvendos nga grupi <ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Balancuar (rekomandohet)</translation>
 <translation id="6835762382653651563">Lidhu në internet për të përditësuar pajisjen <ph name="DEVICE_TYPE" />.</translation>
 <translation id="683630338945552556">Përdor dhe ruaj fjalëkalimet në "Llogarinë tënde të Google"</translation>
 <translation id="6839225236531462745">Gabim në fshirjen e certifikatës</translation>
@@ -9378,6 +9389,7 @@
 <translation id="8066444921260601116">Dialogu i lidhjes</translation>
 <translation id="8070572887926783747">Leja e vendndodhjes: <ph name="APP_NAME" />‏</translation>
 <translation id="8070662218171013510">Reagimi me prekje</translation>
+<translation id="8071033114691184017">Përdor këtë fjalëkalim në iPhone</translation>
 <translation id="8071432093239591881">Printo si imazh</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Të dhënat e aplikacioneve mund të jenë çdo e dhënë që ka ruajtur një aplikacion (bazuar në cilësimet e zhvilluesit), duke përfshirë të dhëna si kontaktet, mesazhet dhe fotografitë.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Të dhënat e rezervimit nuk do të llogariten në kuotën e hapësirës ruajtëse të "Diskut" të fëmijës tënd.<ph name="END_PARAGRAPH2" />
@@ -9945,6 +9957,7 @@
 <translation id="8482077254400484047">Menaxho pamjen e skedave joaktive këtu</translation>
 <translation id="8483248364096924578">Adresa e IP-së</translation>
 <translation id="8486666913807228950">Arsyeja: Rregulli i anasjellë <ph name="REVERT_RULE" /> u gjet në listën "Hap me forcë në".</translation>
+<translation id="8487303289354211861">U gozhdua! Mund të qasesh sërish te kjo veçori nga butoni i ri në shiritin e veglave</translation>
 <translation id="8487678622945914333">Zmadho</translation>
 <translation id="8487699605742506766">Zona e qasjes për internet</translation>
 <translation id="8489156414266187072">Sugjerimet personale tregohen vetëm në llogarinë tënde</translation>
@@ -10343,7 +10356,6 @@
 <translation id="8784626084144195648">Mesatarja e reduktimit</translation>
 <translation id="8785622406424941542">Stilolapsi</translation>
 <translation id="8786824282808281903">Kur fëmija yt shikon këtë ikonë, mund të përdoret gjurma e gishtit për identifikim ose për të miratuar blerjet.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grup pa emër - 1 skedë}other{Grup pa emër - # skeda}}</translation>
 <translation id="8787752878731558379">Na ndihmo të përmirësojmë Chrome duke na treguar se pse ke lejuar kukit e palëve të treta</translation>
 <translation id="8789898473175677810">Chrome është pjesë e një <ph name="LINK_BEGIN" />përpjekje në bashkëpunim<ph name="LINK_END" /> për të zvogëluar gjurmimin nëpër sajte dhe për të ndërprerë përdorimin e kukive të palëve të treta. Por ne po përpiqemi ta bëjmë këtë me përgjegjësi pasi shumë sajte mbështeten në kukit e palëve të treta për të funksionuar siç pritet. Për shembull, shumë sajte përdorin kukit e palëve të treta për të thjeshtuar identifikimin, për të mbështetur sistemet e integruara të bisedës dhe të komenteve, si dhe për shërbimet e pagesave. Dhe reklamuesit shpesh përdorin kukit e palëve të treta për një personalizim më të mirë të reklamave. Kjo ka rëndësi pasi sajtet shpesh mbështeten te reklamat për të paguar shpenzimet dhe për t'i mbajtur përmbajtjet e tyre online pa pagesë.</translation>
 <translation id="8791157330927639737">Mëso më shumë rreth përditësimit</translation>
@@ -10657,6 +10669,7 @@
 <translation id="9014674417732091912">U zhvendos te rreshti <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Rezervo në "Diskun e Google"</translation>
 <translation id="9016827136585652292">aktivizimi/çaktivizimi i ekranit të privatësisë</translation>
+<translation id="9017055559700464094">U gozhdua! Përdore sërish këtë veçori nga shiriti i veglave</translation>
 <translation id="90181708067259747">Data e skadimit: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Instalimi përfundoi</translation>
 <translation id="901876615920222131">Për ta rihapur grupin, kliko te grupi</translation>
@@ -10815,6 +10828,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Për përvojën më të mirë, instalo <ph name="DEVICE_OS" /> në diskun tënd të brendshëm. Mund ta instalosh më vonë nga ekrani i identifikimit.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Nëse nuk je gati për ta instaluar, mund ta ekzekutosh nga USB-ja për ta provuar. Kjo do të mbajë sistemin operativ dhe të dhënat ekzistuese, por hapësira ruajtëse dhe cilësia e funksionimit mund të kufizohen.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Hap si skedë të gozhduar</translation>
+<translation id="9122788874051694311">Të ruhet ky çelës kalimi jashtë modalitetit "I fshehtë"?</translation>
 <translation id="9123287046453017203">Pajisja jote nuk është e përditësuar</translation>
 <translation id="9125910124977405374">Hiqe gjuhën <ph name="LANGUAGE_NAME" /> nga gjuhët që përkthehen automatikisht</translation>
 <translation id="9126149354162942022">Ngjyra e kursorit</translation>
diff --git a/chrome/app/resources/generated_resources_sr-Latn.xtb b/chrome/app/resources/generated_resources_sr-Latn.xtb
index ed74cb0..28ec0dfa 100644
--- a/chrome/app/resources/generated_resources_sr-Latn.xtb
+++ b/chrome/app/resources/generated_resources_sr-Latn.xtb
@@ -4066,7 +4066,6 @@
 <translation id="3983586614702900908">uređaji nepoznatog prodavca</translation>
 <translation id="3983764759749072418">Aplikacije iz Play prodavnice imaju pristup ovom uređaju.</translation>
 <translation id="3983769721878416534">Odlaganje pre klika</translation>
-<translation id="3983793589497399077">Kliknite bilo gde ili prevucite da biste pretraživali pomoću Objektiva</translation>
 <translation id="3984135167056005094">Ne uključuj imejl adresu</translation>
 <translation id="3984159763196946143">Pokretanje režima demonstracije nije uspelo</translation>
 <translation id="3984431586879874039">Želite li da dozvolite ovom sajtu da vidi bezbednosni ključ?</translation>
@@ -7168,7 +7167,6 @@
 <translation id="6383382161803538830">Režim čitanja nije dostupan na ovoj stranici</translation>
 <translation id="638418309848716977">Podržani linkovi</translation>
 <translation id="6384275966486438344">Promenite podešavanja pretrage na: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Grupa bez naziva – 1 kartica}one{Grupa bez naziva – # kartica}few{Grupa bez naziva – # kartice}other{Grupa bez naziva – # kartica}}</translation>
 <translation id="6385149369087767061">Povežite se na internet i probajte ponovo</translation>
 <translation id="6385382178401976503">Kartica: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Upozorenje – Omogućeno je detaljno evidentiranje; evidencije u nastavku mogu da sadrže URL-ove ili druge osetljive informacije. Pregledajte ih i uverite se da nemate ništa protiv slanja tih informacija.</translation>
@@ -10392,7 +10390,6 @@
 <translation id="8784626084144195648">Prosek agregacije</translation>
 <translation id="8785622406424941542">Pisaljka</translation>
 <translation id="8786824282808281903">Kad dete vidi ovu ikonu, može da se koristi otisak prsta za identifikaciju ili odobrenje kupovina.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Grupa bez naziva – 1 kartica}one{Grupa bez naziva – # kartica}few{Grupa bez naziva – # kartice}other{Grupa bez naziva – # kartica}}</translation>
 <translation id="8787752878731558379">Pomozite nam da poboljšamo Chrome tako što ćete nam reći zašto ste dozvolili kolačiće treće strane</translation>
 <translation id="8789898473175677810">Chrome učestvuje u <ph name="LINK_BEGIN" />zajedničkim nastojanjima<ph name="LINK_END" /> da se smanji praćenje na više sajtova i postepeno ukine korišćenje kolačića treće strane. Ali trudimo se da to radimo odgovorno jer mnogi sajtovi koriste kolačiće treće strane da bi funkcionisali na željeni način. Na primer, mnogi sajtovi koriste kolačiće treće strane da bi pojednostavili prijavljivanje, podržali ugrađene sisteme za ćaskanje i komentarisanje, kao i za usluge plaćanja. Oglašavači često koriste kolačiće treće strane kako bi bolje personalizovali oglase. To je važno jer sajtovi često računaju da će im oglasi pomoći da plate troškove i da nastave da pružaju onlajn sadržaj bez naknade.</translation>
 <translation id="8791157330927639737">Saznajte više o ažuriranju</translation>
diff --git a/chrome/app/resources/generated_resources_sr.xtb b/chrome/app/resources/generated_resources_sr.xtb
index 5da4582..eb4bc6c 100644
--- a/chrome/app/resources/generated_resources_sr.xtb
+++ b/chrome/app/resources/generated_resources_sr.xtb
@@ -4066,7 +4066,6 @@
 <translation id="3983586614702900908">уређаји непознатог продавца</translation>
 <translation id="3983764759749072418">Апликације из Play продавнице имају приступ овом уређају.</translation>
 <translation id="3983769721878416534">Одлагање пре клика</translation>
-<translation id="3983793589497399077">Кликните било где или превуците да бисте претраживали помоћу Објектива</translation>
 <translation id="3984135167056005094">Не укључуј имејл адресу</translation>
 <translation id="3984159763196946143">Покретање режима демонстрације није успело</translation>
 <translation id="3984431586879874039">Желите ли да дозволите овом сајту да види безбедносни кључ?</translation>
@@ -7168,7 +7167,6 @@
 <translation id="6383382161803538830">Режим читања није доступан на овој страници</translation>
 <translation id="638418309848716977">Подржани линкови</translation>
 <translation id="6384275966486438344">Промените подешавања претраге на: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Група без назива – 1 картица}one{Група без назива – # картица}few{Група без назива – # картице}other{Група без назива – # картица}}</translation>
 <translation id="6385149369087767061">Повежите се на интернет и пробајте поново</translation>
 <translation id="6385382178401976503">Картица: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Упозорење – Омогућено је детаљно евидентирање; евиденције у наставку могу да садрже URL-ове или друге осетљиве информације. Прегледајте их и уверите се да немате ништа против слања тих информација.</translation>
@@ -10392,7 +10390,6 @@
 <translation id="8784626084144195648">Просек агрегације</translation>
 <translation id="8785622406424941542">Писаљка</translation>
 <translation id="8786824282808281903">Кад дете види ову икону, може да се користи отисак прста за идентификацију или одобрење куповина.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Група без назива – 1 картица}one{Група без назива – # картица}few{Група без назива – # картице}other{Група без назива – # картица}}</translation>
 <translation id="8787752878731558379">Помозите нам да побољшамо Chrome тако што ћете нам рећи зашто сте дозволили колачиће треће стране</translation>
 <translation id="8789898473175677810">Chrome учествује у <ph name="LINK_BEGIN" />заједничким настојањима<ph name="LINK_END" /> да се смањи праћење на више сајтова и постепено укине коришћење колачића треће стране. Али трудимо се да то радимо одговорно јер многи сајтови користе колачиће треће стране да би функционисали на жељени начин. На пример, многи сајтови користе колачиће треће стране да би поједноставили пријављивање, подржали уграђене системе за ћаскање и коментарисање, као и за услуге плаћања. Оглашавачи често користе колачиће треће стране како би боље персонализовали огласе. То је важно јер сајтови често рачунају да ће им огласи помоћи да плате трошкове и да наставе да пружају онлајн садржај без накнаде.</translation>
 <translation id="8791157330927639737">Сазнајте више о ажурирању</translation>
diff --git a/chrome/app/resources/generated_resources_sv.xtb b/chrome/app/resources/generated_resources_sv.xtb
index b5b2e33..da8058a8 100644
--- a/chrome/app/resources/generated_resources_sv.xtb
+++ b/chrome/app/resources/generated_resources_sv.xtb
@@ -4081,7 +4081,6 @@
 <translation id="3983586614702900908">enheter från en okänd leverantör</translation>
 <translation id="3983764759749072418">Appar i Play Butik har åtkomst till enheten.</translation>
 <translation id="3983769721878416534">Fördröjning före klick</translation>
-<translation id="3983793589497399077">Klicka eller dra var som helst för att söka med Lens</translation>
 <translation id="3984135167056005094">Ange inga e-postadresser</translation>
 <translation id="3984159763196946143">Det gick inte att starta demoläget</translation>
 <translation id="3984431586879874039">Vill du tillåta att webbplatsen ser din säkerhetsnyckel?</translation>
@@ -7183,7 +7182,6 @@
 <translation id="6383382161803538830">Läsläget är inte tillgängligt på den här sidan</translation>
 <translation id="638418309848716977">Länkar som stöds</translation>
 <translation id="6384275966486438344">Ändra sökinställningarna till: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Namnlös grupp – 1 flik}other{Namnlös grupp – # flikar}}</translation>
 <translation id="6385149369087767061">Anslut till internet och försök igen</translation>
 <translation id="6385382178401976503">Kort: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Varning – Detaljerad loggning har aktiverats. Loggarna nedan kan innehålla webbadresser eller andra känsliga uppgifter. Granska och kontrollera att du vill skicka in dessa uppgifter.</translation>
@@ -10401,7 +10399,6 @@
 <translation id="8784626084144195648">Fackmedelvärde</translation>
 <translation id="8785622406424941542">E-penna</translation>
 <translation id="8786824282808281903">När den här ikonen visas kan ditt barn använda sitt fingeravtryck för att identifiera sig eller godkänna köp.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Namnlös grupp – 1 flik}other{Namnlös grupp – # flikar}}</translation>
 <translation id="8787752878731558379">Hjälp oss att förbättra Chrome genom att berätta varför du har tillåtit cookies från tredje part</translation>
 <translation id="8789898473175677810">Chrome ingår i ett <ph name="LINK_BEGIN" />samarbete<ph name="LINK_END" /> för att minska spårning från webbplats till webbplats och fasa ut användningen av tredjepartscookies. Men vi försöker göra det på ett ansvarsfullt sätt eftersom många webbplatser förlitar sig på tredjepartscookies för att fungera som avsett. Till exempel används tredjepartscookies på många webbplatser för att förenkla inloggningen, stödja inbäddade chatt- och kommentarssystem och för betaltjänster. Och annonsörer använder ofta tredjepartscookies för att anpassa annonser bättre. Det är viktigt eftersom webbplatser ofta förlitar sig på annonser för att betala utgifter och erbjuda sitt onlineinnehåll kostnadsfritt.</translation>
 <translation id="8791157330927639737">Läs mer om uppdateringar</translation>
diff --git a/chrome/app/resources/generated_resources_sw.xtb b/chrome/app/resources/generated_resources_sw.xtb
index aa460b7..347f8c4 100644
--- a/chrome/app/resources/generated_resources_sw.xtb
+++ b/chrome/app/resources/generated_resources_sw.xtb
@@ -1664,6 +1664,7 @@
 <translation id="2211043920024403606">Maelezo yaliyo kwenye wasifu</translation>
 <translation id="2211245494465528624">Dhibiti chaguo za usawazishaji</translation>
 <translation id="221297410904507041">Futa historia, vidakuzi, akiba na zaidi</translation>
+<translation id="2213410656650624348">Wastani</translation>
 <translation id="2214018885812055163">Folda zinazoshirikiwa</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;Haijaonyesha mstari wa 1&gt;}other{&lt;Haijaonyesha mistari <ph name="NUMBER_OF_LINES" />&gt;}}</translation>
 <translation id="2215070081105889450">Ili ushiriki sauti, shiriki kichupo au skrini badala yake</translation>
@@ -2047,6 +2048,7 @@
 <translation id="2473195200299095979">Tafsiri ukurasa huu</translation>
 <translation id="2475982808118771221">Hitilafu fulani imetokea</translation>
 <translation id="247616523300581745">Ficha faili hizi</translation>
+<translation id="2476435723907345463">Ufikiaji wa funguo za siri umeondolewa</translation>
 <translation id="2476901513051581836">Haiwezi kufuta ili kupata nafasi ya kuhifadhi hadi ukubwa wa nafasi ya hifadhi ya nje ya mtandao ujulikane.</translation>
 <translation id="2476974672882258506">Zima Windows ili uondoe <ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">Kwa vile umeweka mipangilio ya swichi nyingi, kipengele cha kuchanganua kiotomatiki kimezimwa.</translation>
@@ -2241,6 +2243,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> haiwezi kupakuliwa kwa usalama.</translation>
 <translation id="2620245777360407679">Vifaa vilivyounganishwa kwenye mtandao pepe kwa sasa</translation>
 <translation id="2620436844016719705">Mfumo</translation>
+<translation id="262087792756666314">Unaweza kubandika kipengele hiki ili ukifikie kwa urahisi; bofya kitufe cha Bandika kilicho sehemu ya juu ya kidirisha cha pembeni</translation>
 <translation id="2620900772667816510">Ubora Thabiti wa Bluetooth</translation>
 <translation id="262154978979441594">Ifunze programu ya Mratibu wa Google muundo wa sauti</translation>
 <translation id="26224892172169984">Usiruhusu tovuti yoyote kushughulikia itifaki</translation>
@@ -3016,6 +3019,7 @@
 <translation id="3222066309010235055">Kionyeshi awali: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Unganisha kwenye <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Kutafuta chochote kwenye ukurasa huu ukitumia Lenzi ya Google</translation>
+<translation id="3223109931751684474">Ondoa ufikiaji wa funguo zako za siri kwenye kifaa hiki</translation>
 <translation id="3223531857777746191">Kitufe cha Kuweka Upya</translation>
 <translation id="3225084153129302039">Ishara chaguomsingi ya zambarau</translation>
 <translation id="3225319735946384299">Utiaji Sahihi wa Misimbo</translation>
@@ -3340,6 +3344,7 @@
 <translation id="3473479545200714844">Kikuza skrini</translation>
 <translation id="3474218480460386727">Tumia herufi 99 au chache kwa maneno mapya</translation>
 <translation id="3474624961160222204">Endelea ukitumia <ph name="NAME" /></translation>
+<translation id="3477772589943384839">Okoa nafasi ya wastani ya hifadhi. Vichupo vyako huacha kutumika baada ya muda mrefu zaidi.</translation>
 <translation id="347785443197175480">Endelea kuruhusu <ph name="HOST" /> kufikia kamera na maikrofoni yako</translation>
 <translation id="3479357084663933762">Upofu wa rangi wa kutoona kijani</translation>
 <translation id="3479552764303398839">Si sasa</translation>
@@ -4063,7 +4068,6 @@
 <translation id="3983586614702900908">vifaa kutoka kwa mchuuzi asiyejulikana</translation>
 <translation id="3983764759749072418">Programu za Duka la Google zina ufikiaji wa kifaa hiki.</translation>
 <translation id="3983769721878416534">Muda wa kusubiri kabla ya kubofya</translation>
-<translation id="3983793589497399077">Bofya au uburute popote ili utafute ukitumia Lenzi</translation>
 <translation id="3984135167056005094">Usiweke anwani ya barua pepe</translation>
 <translation id="3984159763196946143">Imeshindwa kuanzisha hali ya onyesho</translation>
 <translation id="3984431586879874039">Ungependa kuruhusu tovuti hii kuona ufunguo wako wa usalama?</translation>
@@ -4100,6 +4104,7 @@
 <translation id="4010036441048359843">Washa kipengele cha kuangazia</translation>
 <translation id="4010746393007464819">Sasisho la Debian 12 (Bookworm) linapatikana</translation>
 <translation id="4010917659463429001">Ili uzipate alamisho zako kwenye kifaa chako cha mkononi, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Unaweza kubandika kipengele hiki ili ukifikie kwa urahisi</translation>
 <translation id="4014432863917027322">Je, ungependa kukarabati "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="4015163439792426608">Je, una viendelezi? <ph name="BEGIN_LINK" />Dhibiti viendelezi vyako<ph name="END_LINK" /> katika sehemu moja rahisi.</translation>
 <translation id="4016762287427926315">Ruhusa unazotoa kwenye <ph name="APP_NAME" /> zitaruhusiwa pia kwenye programu hii. <ph name="BEGIN_LINK" />Dhibiti<ph name="END_LINK" /></translation>
@@ -4401,6 +4406,7 @@
 <translation id="4261429981378979799">Ruhusa za kiendelezi</translation>
 <translation id="4262004481148703251">Ondoa onyo</translation>
 <translation id="4263223596040212967">Angalia muundo wa kibodi yako kisha ujaribu tena.</translation>
+<translation id="4263470758446311292">Okoa kiasi cha juu zaidi cha nafasi ya hifadhi. Vichupo vyako huacha kutumika baada ya muda mfupi zaidi.</translation>
 <translation id="4265096510956307240">Thibitisha kuwa ni wewe</translation>
 <translation id="4265301768135164545">Pia, unaweza kuweka mipangilio ya wasifu wa eSIM <ph name="BEGIN_LINK" />mwenyewe<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Ili kuangalia sasisho, tafadhali tumia Ethernet, Wi-Fi au data ya simu ya mkononi.</translation>
@@ -4720,6 +4726,7 @@
 <translation id="4503748371388753124">Kompyuta yako ina kifaa cha usalama cha Chipu Inayolinda Mfumo (TPM) ambacho kinatumika kutekeleza vipengele vingi muhimu vya usalama kwenye ChromeOS Flex. Tembelea Kituo cha Usaidizi cha Chromebook ili upate malezo zaidi: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Vidakuzi vimeruhusiwa}=1{Vidakuzi vinaruhusiwa, ila kimoja}other{Vidakuzi vinaruhusiwa, ila {COUNT}}}</translation>
 <translation id="4504940961672722399">Tumia kiendelezi hiki kwa kubofya aikoni hii au kwa kubonyeza <ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Pakua Chrome ukitumia msimbo huu wa QR kisha uingie katika Akaunti yako ya Google.</translation>
 <translation id="450552327874992444">Tayari umeongeza neno hili</translation>
 <translation id="4507373251891673233">Umezuia viendelezi vyote kutoka kwenye tovuti ya <ph name="HOST" /></translation>
 <translation id="4507401683427517298">Bofya “Weka Njia ya mkato”</translation>
@@ -5055,6 +5062,7 @@
 <translation id="4768332406694066911">Una vyeti kutoka kwenye mashirika haya vinavyokutambua</translation>
 <translation id="4769632191812288342">Unapata ulinzi wa kawaida</translation>
 <translation id="4770119228883592393">Umeombwa ruhusa, bonyeza ⌘ pamoja na vitufe vya Option na kishale cha Chini ili ujibu</translation>
+<translation id="4770755495532014179">Tumia nenosiri hili kwenye iPhone yako</translation>
 <translation id="4773112038801431077">Sasisha Linux</translation>
 <translation id="477548766361111120">Ruhusu kiendelezi kisome na kubadilisha tovuti hii</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> imeunganishwa</translation>
@@ -5224,6 +5232,7 @@
 <translation id="4890399733764921729">Imeshindwa kuunganisha Imefungwa na mtoa huduma mwingine wa vifaa vya mkononi.</translation>
 <translation id="4890773143211625964">Onyesha chaguo za kina za printa</translation>
 <translation id="4891089016822695758">Mfumo wa Beta</translation>
+<translation id="4891795846939730995">Ili uruhusu kifaa hiki kifikie funguo zako za siri tena, ingia katika tovuti au programu ukitumia ufunguo wa siri uliouhifadhi</translation>
 <translation id="4892229439761351791">Tovuti inaweza kutumia Bluetooth</translation>
 <translation id="4892328231620815052">Ukiwa tayari, pata orodha yako ya kusoma kwenye Alamisho na Orodha</translation>
 <translation id="489258173289528622">Kitendo kwenye kifaa ambacho hakifanyi kitu wakati kinatumia betri</translation>
@@ -6453,6 +6462,7 @@
 <translation id="5846504156837627898">Dhibiti Ruhusa za Tovuti</translation>
 <translation id="5846749317653566506">Rekebisaha mipangilio ya usahihishaji wa rangi ili kuhakikisha kuwa rangi ni tofauti</translation>
 <translation id="5846807460505171493">Sakinisha masasisho na programu Kwa kuendelea, unakubali kuwa kifaa hiki kinaweza pia kupakua na kusakinisha kiotomatiki programu na masasisho kutoka Google, mtoa huduma wako na mtengenezaji wake, kwa kutumia data ya mtandao wa simu panapowezekana. Baadhi ya programu hizi zinaweza kuwa na ununuzi wa ndani ya programu.</translation>
+<translation id="5848054741303781539">Mtumiaji ameweka mwenyewe, hakitumii data ya mahali</translation>
 <translation id="5848319660029558352">Muundo wa Maandishi na Kipengele cha Soma kwa Sauti</translation>
 <translation id="5849212445710944278">Tayari limeongezwa</translation>
 <translation id="584945105664698226">Kasi ya sauti</translation>
@@ -7151,7 +7161,6 @@
 <translation id="6383382161803538830">Hali ya kusoma haipatikani kwenye ukurasa huu</translation>
 <translation id="638418309848716977">Viungo vinavyoweza kutumika</translation>
 <translation id="6384275966486438344">Badilisha mipangilio yako ya kutafuta iwe: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Kikundi ambacho hakina jina - kichupo kimoja}other{Kikundi ambacho hakina jina - vichupo #}}</translation>
 <translation id="6385149369087767061">Unganisha kwenye intaneti kisha ujaribu tena</translation>
 <translation id="6385382178401976503">Kadi: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Onyo - Kipengele cha kuweka kumbukumbu za kina kimewashwa; kumbukumbu zilizo hapa chini zinaweza kujumuisha URL au maelezo mengine nyeti. Tafadhali kagua na uhakikishe kuwa umeridhia kuwasilisha maelezo haya.</translation>
@@ -7483,6 +7492,7 @@
 <translation id="6648911618876616409">Sasisho muhimu liko tayari kusakinishwa. Ingia katika akaunti ili usakinishe.</translation>
 <translation id="6649018507441623493">Subiri kidogo...</translation>
 <translation id="6650206238642452078">Jisajili kwenye matukio ya mfumo wa ChromeOS</translation>
+<translation id="6650584564768559994">Okoa nafasi iliyosawazishwa ya hifadhi. Vichupo vyako huacha kutumika baada ya muda unaopendekezwa.</translation>
 <translation id="665061930738760572">Fungua katika &amp;Dirisha Jipya</translation>
 <translation id="6651237644330755633">Amini cheti hiki kwa ajili ya kutambua tovuti</translation>
 <translation id="6651495917527016072">Sawazisha mitandao ya Wi-Fi kwa kutumia simu yako. <ph name="LINK_BEGIN" />Pata maelezo zaidi<ph name="LINK_END" /></translation>
@@ -7740,6 +7750,7 @@
 <translation id="6831043979455480757">Tafsiri</translation>
 <translation id="6832218595502288407">Pangilia kushoto</translation>
 <translation id="6833479554815567477">Kichupo kimeondolewa kwenye kikundi kiitwacho <ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Nafasi iliyosawazishwa (inapendekezwa)</translation>
 <translation id="6835762382653651563">Tafadhali unganisha kwenye Intaneti ili usasishe <ph name="DEVICE_TYPE" /> yako.</translation>
 <translation id="683630338945552556">Tumia na uhifadhi manenosiri kwenye Akaunti yako ya Google</translation>
 <translation id="6839225236531462745">Hitilafu ya Ufutaji wa Cheti</translation>
@@ -9392,6 +9403,7 @@
 <translation id="8066444921260601116">Kidirisha cha Muunganisho</translation>
 <translation id="8070572887926783747">Ruhusa ya mahali ya <ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Majibu unayoweza kuhisi</translation>
+<translation id="8071033114691184017">Kutumia Nenosiri Hili Kwenye iPhone Yako</translation>
 <translation id="8071432093239591881">Chapisha kuwa picha</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Data ya programu inaweza kuwa data yoyote ambayo programu imehifadhi (kulingana na mipangilio ya msanidi programu), ikijumuisha data kama vile anwani, ujumbe na picha.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Nakala ya data iliyohifadhiwa haitahesabiwa katika mgawo wa nafasi ya Hifadhi ya mtoto wako.<ph name="END_PARAGRAPH2" />
@@ -9959,6 +9971,7 @@
 <translation id="8482077254400484047">Dhibiti mwonekano wa vichupo visivyotumika hapa</translation>
 <translation id="8483248364096924578">Anwani ya IP</translation>
 <translation id="8486666913807228950">Sababu: Amri iliyogeuzwa ya <ph name="REVERT_RULE" /> imepatikana katika orodha ya "Force open in".</translation>
+<translation id="8487303289354211861">Imebandikwa! Unaweza kufikia kipengele hiki tena kwenye kitufe kipya kilicho kwenye upau wa vidhibiti</translation>
 <translation id="8487678622945914333">Kuza</translation>
 <translation id="8487699605742506766">Mtandaopepe</translation>
 <translation id="8489156414266187072">Mapendekezo binafsi yanaonyeshwa tu kwenye akaunti yako</translation>
@@ -10357,7 +10370,6 @@
 <translation id="8784626084144195648">Wastani wa Uwekaji Pamoja</translation>
 <translation id="8785622406424941542">Stylus</translation>
 <translation id="8786824282808281903">Mtoto wako akiona aikoni hii, anaweza kutumia alama ya kidole kwa ajili ya uthibitishaji au kuidhinisha ununuzi.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Kikundi Ambacho Hakina Jina - Kichupo Kimoja}other{Kikundi Ambacho Hakina Jina - Vichupo #}}</translation>
 <translation id="8787752878731558379">Tusaidie kuboresha Chrome kwa kutuambia kwa nini umeruhusu vidakuzi vya mshirika mwingine</translation>
 <translation id="8789898473175677810">Chrome ni sehemu ya <ph name="LINK_BEGIN" />juhudi ya ushirikiano<ph name="LINK_END" /> ya kupunguza ufuatiliaji kwenye tovuti nyingi na kuondoa matumizi ya vidakuzi vya washirika wengine. Lakini tunajaribu kufanya hivyo kwa kuwajibika kwa sababu tovuti nyingi hutegemea vidakuzi vya washirika wengine ili zifanye kazi kama zilivyobuniwa. Kwa mfano, tovuti nyingi hutumia vidakuzi vya washirika wengine ili kurahisisha kuingia katika akaunti, kuruhusu gumzo zinazopachikwa na mifumo ya maoni pamoja na huduma za malipo. Na mara kwa mara watangazaji hutumia vidakuzi vya washirika wengine ili kuwekea mapendeleo matangazo vizuri zaidi. Hatua hiyo ni muhimu kwa sababu mara nyingi tovuti hutegemea matangazo ili kusaidia kulipa gharama na kufanya maudhui yao ya mtandaoni yawe ya bila malipo.</translation>
 <translation id="8791157330927639737">Pata maelezo zaidi kuhusu kusasisha</translation>
@@ -10671,6 +10683,7 @@
 <translation id="9014674417732091912">Kimehamishiwa kwenye safu ya <ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Weka nakala kwenye Hifadhi ya Google</translation>
 <translation id="9016827136585652292">kugeuza skrini ya faragha</translation>
+<translation id="9017055559700464094">Imebandikwa! Tumia kipengele hiki tena kwenye upau wa vidhibiti</translation>
 <translation id="90181708067259747">Tarehe ya mwisho wa matumizi: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Imemaliza kusakinisha</translation>
 <translation id="901876615920222131">Ili ufungue tena kikundi, bofya kwenye kikundi</translation>
@@ -10829,6 +10842,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Ili upate hali bora zaidi ya utumiaji, sakinisha <ph name="DEVICE_OS" /> kwenye diski yako ya ndani. Unaweza pia kuisakinisha baadaye kutoka kwenye skrini ya kuingia katika akaunti.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Ikiwa hauko tayari kusakinisha, unaweza kuitekeleza kutoka kwenye USB ili uijaribu. Hatua hii itadumisha mfumo wa uendeshaji na data yako iliyopo, lakini huenda ukaona vizuizi vya nafasi ya hifadhi na utendakazi.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Fungua kama kichupo kilichobanwa</translation>
+<translation id="9122788874051694311">Ungependa kuhifadhi ufunguo huu nje ya hali ya faraghani?</translation>
 <translation id="9123287046453017203">Kifaa chako hakijasasishwa</translation>
 <translation id="9125910124977405374">Ondoa <ph name="LANGUAGE_NAME" /> kwenye lugha zinazotafsiriwa kiotomatiki</translation>
 <translation id="9126149354162942022">Rangi ya kiteuzi</translation>
diff --git a/chrome/app/resources/generated_resources_ta.xtb b/chrome/app/resources/generated_resources_ta.xtb
index 2f5f2b3..411e64a 100644
--- a/chrome/app/resources/generated_resources_ta.xtb
+++ b/chrome/app/resources/generated_resources_ta.xtb
@@ -1668,6 +1668,7 @@
 <translation id="2211043920024403606">சுயவிவரத் தகவல்</translation>
 <translation id="2211245494465528624">ஒத்திசைவு விருப்பங்களை நிர்வகியுங்கள்</translation>
 <translation id="221297410904507041">பதிவு, குக்கீகள், தற்காலிகச் சேமிப்பு மற்றும் பலவற்றை நீக்கலாம்</translation>
+<translation id="2213410656650624348">ஓரளவு</translation>
 <translation id="2214018885812055163">பகிர்ந்த ஃபோல்டர்கள்</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 வரி காட்டப்படவில்லை&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> வரிகள் காட்டப்படவில்லை&gt;}}</translation>
 <translation id="2215070081105889450">ஆடியோவைப் பகிர, பக்கத்தையோ திரையையோ பகிரவும்</translation>
@@ -2050,6 +2051,7 @@
 <translation id="2473195200299095979">இந்தப் பக்கத்தை மொழிபெயர்</translation>
 <translation id="2475982808118771221">ஒரு பிழை ஏற்பட்டது</translation>
 <translation id="247616523300581745">இந்த ஃபைல்களை மறை</translation>
+<translation id="2476435723907345463">கடவுச்சாவிகளுக்கான அணுகல் அகற்றப்பட்டது</translation>
 <translation id="2476901513051581836">ஆஃப்லைன் சேமிப்பகத்தின் அளவு தெரிந்தால் மட்டுமே சேமிப்பகத்தைக் காலியாக்க முடியம்.</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" /> ஐ நிறுவல் நீக்க, Windowsஸை ஷட் டவுன் செய்யவும்.</translation>
 <translation id="2477065602824695373">ஒன்றுக்கும் மேற்பட்ட ஸ்விட்ச்சுகளை நீங்கள் ஒதுக்கியுள்ளதால் தானியங்கு ஸ்கேன் முடக்கப்பட்டது.</translation>
@@ -2244,6 +2246,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> என்ற ஃபைலைப் பாதுகாப்பாகப் பதிவிறக்க முடியாது.</translation>
 <translation id="2620245777360407679">தற்சமயம் ஹாட்ஸ்பாட்டில் இணைக்கப்பட்டுள்ள சாதனங்கள்</translation>
 <translation id="2620436844016719705">அமைப்பு</translation>
+<translation id="262087792756666314">இந்த அம்சத்தை எளிதாக அணுக பின் செய்யலாம்; இதற்கு, பக்கவாட்டு பேனலின் மேற்புறத்தில் உள்ள 'பின் செய்' பட்டனைக் கிளிக் செய்யவும்.</translation>
 <translation id="2620900772667816510">புளூடூத் சூப்பர் ரெசல்யூஷன்</translation>
 <translation id="262154978979441594">Google Assistant குரல் பதிவிற்குப் பயிற்சி அளி</translation>
 <translation id="26224892172169984">நெறிமுறைகளைக் கையாள எந்த தளத்தையும் அனுமதிக்காதே</translation>
@@ -3019,6 +3022,7 @@
 <translation id="3222066309010235055">முன்செயலாக்கம்: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989"><ph name="USB_VM_NAME" /> உடன் இணைக்கவும்</translation>
 <translation id="3222857603094643834">Google Lens மூலம் இந்தப் பக்கத்தில் உள்ள எதையும் தேடுங்கள்</translation>
+<translation id="3223109931751684474">இந்தச் சாதனத்தில் உள்ள உங்கள் கடவுச்சாவிகளுக்கான அணுகலை அகற்றுதல்</translation>
 <translation id="3223531857777746191">மீட்டமைப்பதற்கான பட்டன்</translation>
 <translation id="3225084153129302039">இயல்பு பர்பிள்நிறத் தோற்றப்படம்</translation>
 <translation id="3225319735946384299">குறியீடு கையொப்பமிடல்</translation>
@@ -3343,6 +3347,7 @@
 <translation id="3473479545200714844">திரை உருப்பெருக்கி</translation>
 <translation id="3474218480460386727">புதிய சொற்களில் 99 அல்லது அதற்கும் குறைவான எழுத்துகளைப் பயன்படுத்தவும்</translation>
 <translation id="3474624961160222204"><ph name="NAME" /> கணக்கில் தொடர்க</translation>
+<translation id="3477772589943384839">நினைவகத்தில் ஓரளவு இடம் காலியாகும். நீண்ட நேரம் பயன்படுத்தவில்லை என்றால் உங்கள் பக்கங்கள் செயலற்ற நிலைக்குச் செல்லும்.</translation>
 <translation id="347785443197175480">உங்கள் கேமராவையும் மைக்ரோஃபோனையும் அணுக <ph name="HOST" /> ஐத் தொடர்ந்து அனுமதி</translation>
 <translation id="3479357084663933762">டியூட்டரனோமலி</translation>
 <translation id="3479552764303398839">இப்பொழுது இல்லை</translation>
@@ -4066,7 +4071,6 @@
 <translation id="3983586614702900908">அறியப்படாத விற்பனையாளரிடமிருந்து சாதனங்கள்</translation>
 <translation id="3983764759749072418">Play Store ஆப்ஸ் இந்தச் சாதனத்தைப் பயன்படுத்தும்.</translation>
 <translation id="3983769721878416534">கிளிக்கிற்கு முந்தைய தாமதம்</translation>
-<translation id="3983793589497399077">Lens மூலம் தேட எங்கு வேண்டுமானாலும் கிளிக் செய்யுங்கள் அல்லது இழுத்து விடுங்கள்</translation>
 <translation id="3984135167056005094">மின்னஞ்சல் முகவரியைச் சேர்க்க வேண்டாம்</translation>
 <translation id="3984159763196946143">டெமோ பயன்முறையைத் தொடங்க முடியவில்லை</translation>
 <translation id="3984431586879874039">உங்கள் பாதுகாப்பு விசையைப் பார்க்க இந்தத் தளத்தை அனுமதிக்கவா?</translation>
@@ -4103,6 +4107,7 @@
 <translation id="4010036441048359843">ஹைலைட்டை இயக்கும்</translation>
 <translation id="4010746393007464819">Debian 12 (Bookworm) தொடர்பான மேம்படுத்தல் உள்ளது</translation>
 <translation id="4010917659463429001">மொபைல் சாதனத்தில் உங்கள் புத்தகக்குறிகளைப் பெற, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">இந்த அம்சத்தை எளிதாக அணுக பின் செய்யலாம்</translation>
 <translation id="4014432863917027322">"<ph name="EXTENSION_NAME" />"ஐப் புதுப்பிக்கவா?</translation>
 <translation id="4015163439792426608">நீட்டிப்புகள் இருக்கிறதா? ஒரே இடத்தில் எளிதாக <ph name="BEGIN_LINK" />உங்கள் நீட்டிப்புகளை நிர்வகியுங்கள்<ph name="END_LINK" />.</translation>
 <translation id="4016762287427926315"><ph name="APP_NAME" /> ஆப்ஸிற்கு நீங்கள் வழங்கும் அனுமதிகள் இந்த ஆப்ஸிற்கும் பொருந்தும். <ph name="BEGIN_LINK" />நிர்வகி<ph name="END_LINK" /></translation>
@@ -4406,6 +4411,7 @@
 <translation id="4261429981378979799">நீட்டிப்பிற்கான அனுமதிகள்</translation>
 <translation id="4262004481148703251">எச்சரிக்கையை நிராகரி</translation>
 <translation id="4263223596040212967">கீபோர்டின் தளவமைப்பை சரிபார்த்துவிட்டு மீண்டும் முயலவும்.</translation>
+<translation id="4263470758446311292">நினைவகத்தில் அதிகபட்ச இடம் காலியாகும். சிறிது நேரம் பயன்படுத்தவில்லை என்றால் உங்கள் பக்கங்கள் செயலற்ற நிலைக்குச் செல்லும்.</translation>
 <translation id="4265096510956307240">இது நீங்கள்தான் என்பதை உறுதிப்படுத்துங்கள்</translation>
 <translation id="4265301768135164545">eSIM சுயவிவரத்தை <ph name="BEGIN_LINK" />நீங்களும்<ph name="END_LINK" /> அமைக்கலாம்</translation>
 <translation id="426564820080660648">புதுப்பிப்புகளைப் பார்க்க, ஈத்தர்நெட், வைஃபை அல்லது மொபைல் டேட்டாவைப் பயன்படுத்தவும்.</translation>
@@ -4725,6 +4731,7 @@
 <translation id="4503748371388753124">உங்கள் கம்ப்யூட்டரில் உள்ள நம்பகமான பிளாட்ஃபார்ம் மாடியூல் (TPM) பாதுகாப்புச் சாதனம் ChromeOS Flexஸில் உள்ள பல முக்கியமான பாதுகாப்பு அம்சங்களைச் செயல்படுத்துவதற்குப் பயன்படுத்தப்படுகிறது. மேலும் அறிய, Chromebook உதவி மையத்தைப் பார்க்கவும்: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{குக்கீகள் அனுமதிக்கப்படுகின்றன}=1{குக்கீகள் அனுமதிக்கப்படுகின்றன, 1 விதிவிலக்கு}other{குக்கீகள் அனுமதிக்கப்படுகின்றன, {COUNT} விதிவிலக்குகள்}}</translation>
 <translation id="4504940961672722399">இந்த ஐகானில் கிளிக் செய்து அல்லது <ph name="EXTENSION_SHORTCUT" /> ஐ அழுத்தி இந்த நீட்டிப்பைப் பயன்படுத்துக.</translation>
+<translation id="4505469832694348179">இந்த QR குறியீட்டின் மூலம் Chromeமைப் பதிவிறக்கிவிட்டு உங்கள் Google கணக்கில் உள்நுழையுங்கள்.</translation>
 <translation id="450552327874992444">இந்த வார்த்தை ஏற்கெனவே சேர்க்கப்பட்டுள்ளது</translation>
 <translation id="4507373251891673233"><ph name="HOST" /> தளத்தில் இருந்து அனைத்து நீட்டிப்புகளையும் தடுத்துள்ளீர்கள்</translation>
 <translation id="4507401683427517298">“ஷார்ட்கட்டைச் சேர்” என்பதைக் கிளிக் செய்யவும்</translation>
@@ -5060,6 +5067,7 @@
 <translation id="4768332406694066911">உங்களை அடையாளங்காணும் இந்த நிறுவனங்களின் சான்றிதழ்கள் உள்ளன</translation>
 <translation id="4769632191812288342">நிலையான பாதுகாப்பைப் பெறுகிறீர்கள்</translation>
 <translation id="4770119228883592393">அணுகல் கோரப்பட்டுள்ளது, பதிலளிக்க ⌘ + Option + கீழ்நோக்கிய அம்புக்குறி விசைகளை அழுத்தவும்</translation>
+<translation id="4770755495532014179">இந்தக் கடவுச்சொல்லை உங்கள் iPhoneனில் பயன்படுத்துங்கள்</translation>
 <translation id="4773112038801431077">Linuxஸை மேம்படுத்தல்</translation>
 <translation id="477548766361111120">இந்தத் தளத்தைப் படிக்கவும் மாற்றவும் நீட்டிப்பை அனுமதிக்கும்</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> இணைக்கப்பட்டது</translation>
@@ -5229,6 +5237,7 @@
 <translation id="4890399733764921729">இணைக்க முடியவில்லை. வேறொரு மொபைல் சேவை வழங்குநரால் லாக் செய்யப்பட்டுள்ளது.</translation>
 <translation id="4890773143211625964">மேம்பட்ட பிரிண்டர் விருப்பங்களைக் காட்டு</translation>
 <translation id="4891089016822695758">பீட்டா மன்றம்</translation>
+<translation id="4891795846939730995">உங்கள் கடவுச்சாவிகளுக்கான அணுகலை மீண்டும் இந்தச் சாதனத்திற்கு வழங்க, சேமிக்கப்பட்ட கடவுச்சாவி மூலம் தளத்திலோ ஆப்ஸிலோ உள்நுழையவும்.</translation>
 <translation id="4892229439761351791">தளத்தால் புளூடூத்தைப் பயன்படுத்த முடியும்</translation>
 <translation id="4892328231620815052">தயாரானதும், புக்மார்க்குகள் மற்றும் பட்டியல்களில் உள்ள உங்கள் வாசிப்புப் பட்டியலைப் பாருங்கள்</translation>
 <translation id="489258173289528622">பேட்டரியில் இயங்கும்போது செயலற்ற நிலை</translation>
@@ -6459,6 +6468,7 @@
 <translation id="5846504156837627898">தள அனுமதிகளை நிர்வகியுங்கள்</translation>
 <translation id="5846749317653566506">வண்ணங்கள் தனித்துவமாக இருப்பதை உறுதிசெய்ய, கலர் கரெக்‌ஷன் அமைப்புகளைச் சரிசெய்யுங்கள்</translation>
 <translation id="5846807460505171493">புதுப்பிப்புகளையும் ஆப்ஸையும் நிறுவுதல். தொடர்வதன் மூலம் இந்தச் சாதனமானது Google, உங்கள் தொலைத்தொடர்பு நிறுவனம் மற்றும் இந்தச் சாதனத்தின் உற்பத்தியாளர் ஆகியோரிடமிருந்து வரும் புதுப்பிப்புகளையும் ஆப்ஸையும் மொபைல் டேட்டா வழியே தானாகவே பதிவிறக்கி, நிறுவக்கூடும் என்பதை ஏற்கிறீர்கள். இதில் சில ஆப்ஸ், ஆப்ஸில் வாங்குதல்களை வழங்கக்கூடும்.</translation>
+<translation id="5848054741303781539">நீங்களே அமைத்தது, இருப்பிடத்தைப் பயன்படுத்தவில்லை</translation>
 <translation id="5848319660029558352">உரக்கப் படித்தல் மற்றும் வார்த்தை வடிவமைப்பு</translation>
 <translation id="5849212445710944278">ஏற்கனவே சேர்க்கப்பட்டுள்ளது</translation>
 <translation id="584945105664698226">பேச்சின் வேகம்</translation>
@@ -7157,7 +7167,6 @@
 <translation id="6383382161803538830">இந்தப் பக்கத்தில் படித்தல் பயன்முறையைப் பயன்படுத்த முடியாது</translation>
 <translation id="638418309848716977">ஆதரிக்கப்படும் இணைப்புகள்</translation>
 <translation id="6384275966486438344">உங்கள் தேடல் அமைப்புகளை இதற்கு மாற்றவும்: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{பெயரிடப்படாத குழு - ஒரு தாவல்}other{பெயரிடப்படாத குழு - # தாவல்கள்}}</translation>
 <translation id="6385149369087767061">இணையத்துடன் இணைத்து மீண்டும் முயலவும்</translation>
 <translation id="6385382178401976503">கார்டு: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">எச்சரிக்கை - விவரமான பதிவு இயக்கப்பட்டது; பின்வரும் பதிவுகளில் URLகளோ பிற பாதுகாக்கப்பட வேண்டிய தகவல்களோ இருக்கலாம். இந்தத் தகவல்களை மீண்டும் ஒருமுறை சரிபார்த்து, இவற்றைச் சமர்ப்பிப்பதில் உங்களுக்குத் தயக்கம் எதுவுமில்லை என்பதை உறுதிசெய்துகொள்ளவும்.</translation>
@@ -7489,6 +7498,7 @@
 <translation id="6648911618876616409">முக்கியப் புதுப்பிப்பு நிறுவுவதற்குத் தயாராக உள்ளது. தொடங்க, உள்நுழையவும்.</translation>
 <translation id="6649018507441623493">சற்று காத்திருக்கவும்...</translation>
 <translation id="6650206238642452078">ChromeOS சிஸ்டம் நிகழ்வுகளில் குழு சேர்</translation>
+<translation id="6650584564768559994">நினைவகத்தில் குறிப்பிட்ட அளவு இடம் காலியாகும். குறிப்பிட்ட நேரம் பயன்படுத்தவில்லை என்றால் உங்கள் பக்கங்கள் செயலற்ற நிலைக்குச் செல்லும்.</translation>
 <translation id="665061930738760572">&amp;புதிய சாளரத்தில் திற</translation>
 <translation id="6651237644330755633">இணையதளங்களை அடையாளங்காண, இந்தச் சான்றிதழை நம்பு</translation>
 <translation id="6651495917527016072">வைஃபை நெட்வொர்க்குகள் உங்கள் மொபைலுடன் ஒத்திசைக்கப்படும். <ph name="LINK_BEGIN" />மேலும் அறிக<ph name="LINK_END" /></translation>
@@ -7746,6 +7756,7 @@
 <translation id="6831043979455480757">Translate</translation>
 <translation id="6832218595502288407">இடதுபுறம் சீரமை</translation>
 <translation id="6833479554815567477">இந்தக் குழுவிலிருந்து தாவல் நகர்த்தப்பட்டது <ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">நடுநிலை (பரிந்துரைக்கப்படுகிறது)</translation>
 <translation id="6835762382653651563">உங்கள் <ph name="DEVICE_TYPE" />ஐப் புதுப்பிக்க இணையத்துடன் இணையவும்.</translation>
 <translation id="683630338945552556">எனது Google கணக்கில் இருந்து கடவுச்சொற்களைப் பயன்படுத்திச் சேமி</translation>
 <translation id="6839225236531462745">சான்றிதழ் நீக்குதல் பிழை</translation>
@@ -9397,6 +9408,7 @@
 <translation id="8066444921260601116">இணைப்பு உரையாடல்</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> ஆப்ஸிற்கான இருப்பிட அனுமதி</translation>
 <translation id="8070662218171013510">தொடுவதால் ஏற்படும் அதிர்வு</translation>
+<translation id="8071033114691184017">இந்தக் கடவுச்சொல்லை உங்கள் iPhoneனில் பயன்படுத்துங்கள்</translation>
 <translation id="8071432093239591881">படமாக அச்சிடு</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />ஆப்ஸ் தரவு என்பது தொடர்புகள், மெசேஜ்கள், படங்கள் போன்றவை உள்ளிட்ட (டெவெலப்பர் அமைப்புகளைப் பொறுத்து) ஆப்ஸ் சேமித்த  எந்தத் தரவாகவும் இருக்கலாம்.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />உங்கள் பிள்ளையின் இயக்ககச் சேமிப்பக ஒதுக்கீட்டில் காப்புப் பிரதித் தரவு கணக்கிடப்படாது.<ph name="END_PARAGRAPH2" />
@@ -9880,7 +9892,7 @@
 <translation id="8424250197845498070">'மேம்பட்ட பாதுகாப்பு' அம்சத்தால் தடுக்கப்பட்டது</translation>
 <translation id="842501938276307467">பரிசோதனை AI அம்சங்களைப் பயன்படுத்திப் பாருங்கள்</translation>
 <translation id="8425213833346101688">மாற்று</translation>
-<translation id="8425492902634685834">பணிப்பட்டிக்குப் பொருத்து</translation>
+<translation id="8425492902634685834">செயல் பட்டிக்குப் பொருத்து</translation>
 <translation id="8425768983279799676">உங்கள் சாதனத்தை அன்லாக் செய்ய, உங்கள் பின்னைப் பயன்படுத்தலாம்.</translation>
 <translation id="8426111352542548860">குழுவைச் சேமி</translation>
 <translation id="8427213022735114808">உரை புலங்களில் குரல் தட்டச்சை அனுமதிக்க, டிக்டேஷன் அம்சம் உங்கள் குரலை Googleளுக்கு அனுப்பும்.</translation>
@@ -9964,6 +9976,7 @@
 <translation id="8482077254400484047">செயலில் இல்லாத பக்கங்கள் காட்டப்படும் விதத்தை இங்கே நிர்வகிக்கலாம்</translation>
 <translation id="8483248364096924578">IP முகவரி</translation>
 <translation id="8486666913807228950">காரணம்: "இதில் திறக்கவும்" பட்டியலில் இன்வெர்ட்டட் விதி (<ph name="REVERT_RULE" />) கண்டறியப்பட்டது.</translation>
+<translation id="8487303289354211861">பின் செய்யப்பட்டது! கருவிப்பட்டியில் உள்ள புதிய பட்டன் மூலம் இந்த அம்சத்தை மீண்டும் அணுகலாம்</translation>
 <translation id="8487678622945914333">பெரிதாக்கு</translation>
 <translation id="8487699605742506766">ஹாட்ஸ்பாட்</translation>
 <translation id="8489156414266187072">தனிப்பட்ட பரிந்துரைகள் உங்கள் கணக்கில் மட்டுமே காட்டப்படும்</translation>
@@ -10362,7 +10375,6 @@
 <translation id="8784626084144195648">குப்பைக்கு நகர்த்தப்பட்டதன் சராசரி</translation>
 <translation id="8785622406424941542">ஸ்டைலஸ்</translation>
 <translation id="8786824282808281903">அடையாளச் சரிபார்ப்பிற்கும் பர்ச்சேஸ்களை அனுமதிப்பதற்கும் கைரேகையைப் பயன்படுத்த வேண்டிய சமயத்தில் இந்த ஐகான் உங்கள் பிள்ளைக்குக் காட்டப்படும்.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{பெயரிடப்படாத குழு - ஒரு தாவல்}other{பெயரிடப்படாத குழு - # தாவல்கள்}}</translation>
 <translation id="8787752878731558379">மூன்றாம் தரப்புக் குக்கீகளை ஏன் அனுமதித்தீர்கள் என்பதை எங்களுக்குச் சொல்வதன் மூலம் Chromeமை மேம்படுத்த உதவுங்கள்</translation>
 <translation id="8789898473175677810">பலதளக் கண்காணிப்பைக் குறைப்பதற்கும் மூன்றாம் தரப்புக் குக்கீகளின் பயன்பாட்டை நிறுத்துவதற்குமான <ph name="LINK_BEGIN" />கூட்டுப்பணி முயற்சியில்<ph name="LINK_END" /> Chrome அங்கம் வகிக்கிறது. ஆனால், பல தளங்கள் செயல்படுவதற்கு மூன்றாம் தரப்புக் குக்கீகளைச் சார்ந்திருக்கும் வகையில் வடிவமைக்கப்பட்டுள்ளதால் இதைப் பொறுப்புடன் செய்ய முயன்று வருகிறோம். உதாரணமாக, உள்நுழைவதை எளிமைப்படுத்துவதற்கும், உட்பொதிக்கப்பட்ட உரையாடல் மற்றும் கருத்து தெரிவிப்பு அம்சங்களை ஆதரிப்பதற்கும், பேமெண்ட் சேவைகளுக்கும் பல தளங்கள் மூன்றாம் தரப்புக் குக்கீகளைப் பயன்படுத்துகின்றன. மேலும், விளம்பரங்களைச் சிறப்பாகப் பிரத்தியேகமாக்க விளம்பரதாரர்கள் மூன்றாம் தரப்புக் குக்கீகளைப் பெரும்பாலும் பயன்படுத்துகின்றனர். செலவுகளுக்காகவும் ஆன்லைன் உள்ளடக்கத்தைக் கட்டணமில்லாமல் வைத்திருக்கவும் தளங்கள் பெரும்பாலும் விளம்பரங்களை நம்பியிருப்பதால் அது மிகவும் முக்கியம்.</translation>
 <translation id="8791157330927639737">புதுப்பித்தல் பற்றி மேலும் அறிந்துகொள்ளலாம்</translation>
@@ -10676,6 +10688,7 @@
 <translation id="9014674417732091912"><ph name="ROW_NUMBER" />வது வரிசைக்கு நகர்த்தப்பட்டது</translation>
 <translation id="901668144954885282">Google Driveவில் காப்புப் பிரதி எடுத்தல்</translation>
 <translation id="9016827136585652292">தனிப்பட்ட திரையை இயக்கும் அல்லது முடக்கும்</translation>
+<translation id="9017055559700464094">பின் செய்யப்பட்டது! கருவிப்பட்டியில் இருந்து இந்த அம்சத்தை மீண்டும் பயன்படுத்தலாம்</translation>
 <translation id="90181708067259747">காலாவதித் தேதி: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">நிறுவப்பட்டது</translation>
 <translation id="901876615920222131">குழுவை மீண்டும் திறக்க, குழுவின் பெயரைக் கிளிக் செய்யவும்</translation>
@@ -10834,6 +10847,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />சிறந்த அனுபவத்தைப் பெற, <ph name="DEVICE_OS" /> ஐச் சாதனத்தின் டிஸ்க்கில் நிறுவவும். பின்னர் எப்போது வேண்டுமானாலும் இதை உள்நுழைவுத் திரையில் இருந்தும் நிறுவலாம்.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />சாதனத்தில் நிறுவ விரும்பவில்லை எனில் USBயில் இருந்தே அதை இயக்கிப் பயன்படுத்திப் பார்க்கலாம். தற்போதுள்ள OSஸையும் தரவையும் இது பாதிக்காது. ஆனால், சேமிப்பகமும் செயல்திறனும் வரம்பிடப்படலாம்.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">பொருத்திய தாவலாகத் திற</translation>
+<translation id="9122788874051694311">மறைநிலைப் பயன்முறைக்கு வெளியே இந்தக் கடவுச்சாவியைச் சேமிக்க வேண்டுமா?</translation>
 <translation id="9123287046453017203">உங்கள் சாதனம் சமீபத்தியதாக இல்லை</translation>
 <translation id="9125910124977405374">தானாக மொழிபெயர்க்கப்படும் மொழிகளில் இருந்து <ph name="LANGUAGE_NAME" /> ஐ அகற்றும்</translation>
 <translation id="9126149354162942022">கர்சர் வண்ணம்</translation>
diff --git a/chrome/app/resources/generated_resources_te.xtb b/chrome/app/resources/generated_resources_te.xtb
index 6554379..9aa7b4e 100644
--- a/chrome/app/resources/generated_resources_te.xtb
+++ b/chrome/app/resources/generated_resources_te.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux తగినంత డిస్క్ స్పేస్‌ను కలిగి ఉండకపోవచ్చు. మీ Linux డిస్క్ స్పేస్‌ను మీరు పెంచుకొని, <ph name="LINK_START" />సెట్టింగ్‌లలో<ph name="LINK_END" /> తిరిగి రీస్టోర్ చేయడానికి ట్రై చేయవచ్చు.</translation>
 <translation id="1261380933454402672">మధ్యస్థం</translation>
 <translation id="126156426083987769">డెమో మోడ్ పరికర లైసెన్స్‌లకు సంబంధించి ఒక సమస్య ఏర్పడింది.</translation>
+<translation id="1261885284931493480">ట్యాబ్(ల)ను తీసివేసి, గ్రూప్‌ను తొలగించాలా?</translation>
 <translation id="1263231323834454256">పఠన లిస్ట్‌</translation>
 <translation id="1263733306853729545">అభ్యర్థి లిస్ట్‌ను పేజీ చేయడానికి <ph name="MINUS" />, <ph name="EQUAL" /> కీలను ఉపయోగించండి</translation>
 <translation id="126387934568812801">ఈ స్క్రీన్‌షాట్‌ను, తెరిచి ఉన్న ట్యాబ్‌ల శీర్షికలను చేర్చడం</translation>
@@ -877,6 +878,7 @@
 <translation id="1634224622052500893">Wi-Fi నెట్‌వర్క్ కనుగొనబడింది</translation>
 <translation id="1634783886312010422">మీరు ఇప్పటికే ఈ పాస్‌వర్డ్‌ను <ph name="WEBSITE" />లో మార్చారా?</translation>
 <translation id="1636212173818785548">సరే</translation>
+<translation id="1636542522761359943">స్వాగతం, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />యాప్ డేటా అనేది, (డెవలపర్ సెట్టింగ్‌ల ఆధారంగా) కాంటాక్ట్‌లు, మెసేజ్‌లు, ఫోటోల వంటి డేటాతో సహా, యాప్ సేవ్ చేసిన ఎలాంటి డేటా అయినా కావచ్చు. బ్యాకప్ డేటా మీ Drive స్టోరేజ్ కోటాలో లెక్కించబడదు.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />మీరు ఈ సర్వీస్‌ను సెట్టింగ్‌లలో ఆఫ్ చేయవచ్చు.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">ఈ బుక్‌మార్క్‌ను మీ iPhoneలో పొందండి</translation>
@@ -913,6 +915,7 @@
 <translation id="1652862280638399816">MacOS కీచెయిన్‌తో Password Managerను ఉపయోగించడానికి, Chromiumని రీ-లాంచ్ చేసి, కీచెయిన్ యాక్సెస్‌ను అనుమతించండి. మీ ట్యాబ్‌లు రీ-లాంచ్ చేసిన తర్వాత మళ్లీ తెరవబడతాయి.</translation>
 <translation id="1653958716132599769">గ్రూప్ సంబంధిత ట్యాబ్‌లు</translation>
 <translation id="1654580009054503925">రిక్వెస్ట్‌లను చూపించడానికి అనుమతించబడలేదు</translation>
+<translation id="1654713139320245449">ప్రసార గమ్యస్థానాలు ఏవీ కనుగొనబడలేదు. సహాయం కావాలా?</translation>
 <translation id="1656528038316521561">నేపథ్య అపారదర్శకత</translation>
 <translation id="1657406563541664238">Googleకు వినియోగ గ‌ణాంకాలు, క్రాష్ రిపోర్ట్‌లను ఆటోమేటిక్‌గా పంపడం ద్వారా <ph name="PRODUCT_NAME" />ను మరింత మెరుగుపరచడంలో సహాయపడండి</translation>
 <translation id="1657937299377480641">విద్యా సంబంధమైన వనరులకు యాక్సెస్ కోసం మళ్లీ సైన్ ఇన్ చేయడానికి, మీకు అనుమతి ఇవ్వాల్సిందిగా తల్లి/తండ్రిని అడగండి</translation>
@@ -1639,12 +1642,14 @@
 <translation id="2187895286714876935">సర్వర్ ప్రమాణపత్రం దిగుమతి ఎర్రర్</translation>
 <translation id="2187906491731510095">ఎక్స్‌టెన్షన్‌లు అప్‌డేట్ చేయబడ్డాయి</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" />ని తెరువు</translation>
+<translation id="2188919919468240749">ట్యాబ్ గ్రూప్‌ను తొలగించాలా?</translation>
 <translation id="2190069059097339078">WiFi క్రెడెన్షియల్స్ గెట్టర్</translation>
 <translation id="219008588003277019">స్థానిక క్లయింట్ మాడ్యూల్: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(ఖాళీ)</translation>
 <translation id="2190967441465539539">కెమెరా, మైక్రోఫోన్‌లను యాక్సెస్ చేయడం సాధ్యపడదు</translation>
 <translation id="2191754378957563929">ఆన్ చేయబడ్డాయి</translation>
 <translation id="2192505247865591433">నుండి:</translation>
+<translation id="219283042927675668">గ్రూప్‌లోని ట్యాబ్‌లు</translation>
 <translation id="2193365732679659387">విశ్వసనీయత సెట్టింగ్‌లు</translation>
 <translation id="2194856509914051091">పరిగణించాల్సిన విషయాలు</translation>
 <translation id="2195331105963583686">మీరు ఆ సమయం తర్వాత కూడా ఈ <ph name="DEVICE_TYPE" />ను ఉపయోగించగలరు, కానీ ఆపై ఆటోమేటిక్ సాఫ్ట్‌వేర్, భద్రతాపరమైన అప్‌డేట్‌లు దీనికి అందించబడవు</translation>
@@ -1868,6 +1873,7 @@
 <translation id="2350133097354918058">మళ్లీ లోడ్ చేయబడింది</translation>
 <translation id="2350182423316644347">అప్లికేషన్‌ను ప్రారంభిస్తోంది...</translation>
 <translation id="235028206512346451">మీరు మీ పరికరం నుండి దూరంగా వెళ్లినప్పుడు, ఆటోమేటిక్‌గా మీ స్క్రీన్ లాక్ అవుతుంది. మీరు మీ పరికరం ముందు ఉన్నప్పుడు, మీ స్క్రీన్ మేల్కొనే ఉంటుంది. మీరు లాక్ స్క్రీన్‌ను ఉపయోగించకుంటే, మీ పరికరం లాక్ అవ్వడానికి బదులుగా స్లీప్ మోడ్‌లో ఉంటుంది.</translation>
+<translation id="2352305801620974284">మీరు ఈ పరికరంలో సైన్ ఇన్ చేసినప్పుడు, మీరు మీ Google ఖాతా నుండి మీ పాస్‌వర్డ్‌లు అలాగే మరిన్నింటిని పొందుతారు</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">లాక్ స్క్రీన్ గమనికలు ఆటోమేటిక్‌గా <ph name="LOCK_SCREEN_APP_NAME" />కి సేవ్ చేయబడ్డాయి. మీ అత్యంత తాజా గమనిక లాక్ స్క్రీన్‌పై అలాగే ఉంటుంది.</translation>
 <translation id="2353297238722298836">కెమెరా మరియు మైక్రోఫోన్ అనుమతించబడ్డాయి</translation>
@@ -2078,6 +2084,7 @@
 <translation id="249113932447298600">క్షమించండి, ఈ సమయంలో <ph name="DEVICE_LABEL" /> పరికరానికి మద్దతు లేదు.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> భాష కోసం ప్రివ్యూ వాయిస్</translation>
 <translation id="2492461744635776704">సర్టిఫికెట్ సైనింగ్ రిక్వెస్ట్‌ను సిద్ధం చేస్తోంది</translation>
+<translation id="2492964937550251173">ట్యాబ్(ల)ను మూసివేసి, గ్రూప్‌ను తొలగించాలా?</translation>
 <translation id="249330843868392562">వచనం నుండి ప్రసంగం సెట్టింగ్‌లను తెరువు</translation>
 <translation id="2494555621641843783">Steamను ఇన్‌స్టాల్ చేయడం సాధ్యపడదు</translation>
 <translation id="2495141202137516054">మీ Drive నుండి</translation>
@@ -2247,6 +2254,7 @@
 <translation id="262087792756666314">సులభంగా యాక్సెస్ చేయడం కోసం మీరు ఈ ఫీచర్‌ను పిన్ చేయవచ్చు; సైడ్ ప్యానెల్‌లో ఎగువున ఉన్న 'పిన్ చేయండి' బటన్‌ను క్లిక్ చేయండి</translation>
 <translation id="2620900772667816510">బ్లూటూత్ సూపర్ రిజల్యూషన్</translation>
 <translation id="262154978979441594">Google Assistant వాయిస్ మోడల్‌కు శిక్షణనివ్వండి</translation>
+<translation id="2622280935687585828">డిజేబుల్ చేయబడిన సైట్‌ల నుండి <ph name="SITE_NAME" /> వెబ్‌సైట్‌ను తీసివేయండి</translation>
 <translation id="26224892172169984">ప్రోటోకాల్స్ మేనేజ్ చేయడానికి ఏ సైట్‌నూ అనుమతించవద్దు</translation>
 <translation id="262373406453641243">కోల్‌మాక్</translation>
 <translation id="2624045385113367716">MIDI పరికరాలను కంట్రోల్ చేసి, తిరిగి ప్రోగ్రామ్ చేయడానికి అనుమతి ఉంది</translation>
@@ -2420,6 +2428,7 @@
 <translation id="2743387203779672305">క్లిప్‌బోర్డ్‌కు కాపీ చేయి</translation>
 <translation id="274362947316498129"><ph name="DEVICE_NAME" />‌ను యాక్సెస్ చేయడానికి ఒక యాప్ ట్రై చేస్తోంది. యాక్సెస్‌ను అనుమతించడానికి <ph name="DEVICE_NAME" /> గోప్యతా స్విచ్‌ను ఆఫ్ చేయండి.</translation>
 <translation id="2745080116229976798">Microsoft Qualified Subordination</translation>
+<translation id="2747853844543618313">మీ <ph name="DEVICE_NAME" />‌లో ప్రసార రిక్వెస్ట్‌ను అంగీకరించారని నిర్ధారించుకోండి.</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" />కు సైన్ ఇన్ చేయండి</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">స్పెల్ చెక్‌తో పాటు వ్యాకరణాన్ని కూడా చెక్ చేయండి</translation>
@@ -2790,6 +2799,7 @@
 <translation id="3021066826692793094">సీతాకోకచిలుక</translation>
 <translation id="3021678814754966447">ఫ్రేమ్ మూలాన్ని &amp;వీక్షించండి</translation>
 <translation id="3021902017511220299">స్కాన్ విఫలమైంది. ఈ చర్యను మీ అడ్మినిస్ట్రేటర్ బ్లాక్ చేశారు.</translation>
+<translation id="3022068420678496307">ఇది ఈ Google ఖాతాతో Chromeకి సైన్ ఇన్ చేసిన అన్ని పరికరాల నుండి గ్రూప్‌ను తొలగిస్తుంది.</translation>
 <translation id="3022361196600037287">ఈ Chromebook నుండి <ph name="DEVICE" /> తీసివేయబడుతుంది, అలాగే <ph name="PRIMARY_EMAIL" />కు సేవ్ చేయబడదు.</translation>
 <translation id="3022978424994383087">అది పూర్తి కాలేదు.</translation>
 <translation id="3023464535986383522">వినడానికి ఎంచుకోండి</translation>
@@ -4069,7 +4079,6 @@
 <translation id="3983586614702900908">తెలియని విక్రేత అందించిన పరికరాలు</translation>
 <translation id="3983764759749072418">Play Store అప్లికేషన్‌లు ఈ పరికరానికి యాక్సెస్‌ను కలిగి ఉన్నాయి.</translation>
 <translation id="3983769721878416534">క్లిక్ చర్యను అమలు చేసే ముందు వేచి ఉండాల్సిన జాప్యం</translation>
-<translation id="3983793589497399077">Lensతో సెర్చ్ చేయడానికి ఎక్కడైనా క్లిక్ చేయండి లేదా లాగండి</translation>
 <translation id="3984135167056005094">ఈమెయిల్‌ అడ్రస్‌ని జోడించవద్దు</translation>
 <translation id="3984159763196946143">డెమో మోడ్‌ను ప్రారంభించలేకపోయాము</translation>
 <translation id="3984431586879874039">మీ సెక్యూరిటీ కీని చూడటానికి ఈ సైట్‌ను అనుమతించాలా?</translation>
@@ -4192,6 +4201,7 @@
 <translation id="4078903002989614318">క్రమపద్ధతిలో అమర్చే, లిస్ట్ చేసే ఆప్షన్‌లు</translation>
 <translation id="4079140982534148664">మెరుగైన స్పెల్ చెక్‌ను ఉపయోగించండి</translation>
 <translation id="4082333918978320301">మీ మైక్రోఫోన్‌ను ఉపయోగించడానికి వెబ్‌సైట్‌లు ఏవీ అనుమతించబడవు</translation>
+<translation id="4083735423615351075">ఈ పరికరంలో ట్యాబ్‌లు తెరిచి ఉంటాయి కానీ ఈ Google ఖాతాతో Chromeకి సైన్ ఇన్ చేసిన అన్ని పరికరాల నుండి గ్రూప్ తొలగించబడుతుంది.</translation>
 <translation id="4084682180776658562">బుక్‌మార్క్ చేయండి</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" />ని మూసివేయండి</translation>
 <translation id="4085298594534903246">ఈ పేజీపై JavaScript నిరోధించబడింది.</translation>
@@ -4201,6 +4211,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">కుడి వైపునకు చూడండి</translation>
+<translation id="4088879333319441249">ట్యాబ్ గ్రూప్‌ను అన్‌గ్రూప్ చేయాలా?</translation>
 <translation id="4089235344645910861">సెట్టింగ్ సేవ్ చేయబడింది. సింక్‌ ప్రారంభించబడింది.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">ధృవీకృత యాక్సెస్‌ను ప్రారంభించండి</translation>
@@ -5682,6 +5693,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />"ను ప్రారంభించాలా?</translation>
 <translation id="5243522832766285132">దయచేసి కొన్ని నిమిషాల్లో మళ్లీ ట్రై చేయండి</translation>
 <translation id="5244234799035360187">OneDrive ఇప్పుడు Files యాప్‌లో కనిపిస్తుంది</translation>
+<translation id="5244466461749935369">ప్రస్తుతాన్ని అలాగే ఉంచండి</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> ఖాతాకు సింక్ చేస్తోంది</translation>
 <translation id="5245610266855777041">పాఠశాల ఖాతాతో ప్రారంభించండి</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> క్రాష్ అయ్యింది. యాప్‌ పునఃప్రారంభించడానికి ఈ బెలూన్‌ను క్లిక్ చేయండి.</translation>
@@ -5950,6 +5962,7 @@
 <translation id="5453829744223920473">మీ చిన్నారి, వారి స్కూల్ యాప్‌లను, బుక్‌మార్క్‌లను, ఇంకా రిసోర్స్‌లన్నింటినీ క్లాస్‌లో ఎలా అయితే ఉపయోగిస్తారో, ఆలాగే ఉపయోగించగలరు. ప్రాథమిక నియమాలను స్కూల్ సెట్ చేస్తుంది.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" />తో</translation>
 <translation id="545484289444831485">మరిన్ని సెర్చ్ ఫలితాలను చూడండి</translation>
+<translation id="5457082343331641453">మీ సెర్చ్‌కు జోడించండి</translation>
 <translation id="5457113250005438886">చెల్లదు</translation>
 <translation id="5457459357461771897">మీ కంప్యూటర్‌లోని ఫోటోలు, సంగీతం మరియు ఇతర మీడియాను చదవడం మరియు తొలగించడం</translation>
 <translation id="5458214261780477893">వోరాక్</translation>
@@ -6427,6 +6440,7 @@
 <translation id="5816434091619127343">అభ్యర్ధించిన ప్రింటర్ మార్పులు ప్రింటర్‌ను నిరుపయోగంగా చేస్తాయి.</translation>
 <translation id="581659025233126501">సింక్‌ను ఆన్ చేయి</translation>
 <translation id="5817918615728894473">పెయిర్ చేయండి</translation>
+<translation id="5817963443108180228">తిరిగి స్వాగతం, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">అన్ని అప్లికేషన్‌లు</translation>
 <translation id="5821565227679781414">షార్ట్‌కట్‌ను క్రియేట్ చేయండి</translation>
 <translation id="5824976764713185207">పేజీ పూర్తిగా లోడ్ అయిన తర్వాత ఆటోమేటిక్‌గా చదువుతుంది</translation>
@@ -7027,6 +7041,7 @@
 <translation id="6265159465845424232">Microsoft ఫైల్స్‌ను కాపీ చేయడానికి లేదా Microsoft OneDriveకి తరలించడానికి ముందు అడగండి</translation>
 <translation id="6265687851677020761">పోర్ట్‌ను తీసివేయండి</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" />కు కనెక్ట్ అవుతోంది</translation>
+<translation id="6266984048393265562">ప్రొఫైల్‌ను అనుకూలంగా మార్చండి</translation>
 <translation id="6267166720438879315"><ph name="HOST_NAME" />కు మిమ్మల్ని మీరు ప్రమాణీకరించడానికి ఒక సర్టిఫికెట్‌ను ఎంచుకోండి</translation>
 <translation id="6268252012308737255"><ph name="APP" />‌తో తెరవండి</translation>
 <translation id="6270309713620950855">ఆటోమేటిక్ రిమైండర్‌ను మ్యూట్ చేయండి</translation>
@@ -7165,7 +7180,6 @@
 <translation id="6383382161803538830">ఈ పేజీలో చదివే మోడ్ అందుబాటులో లేదు</translation>
 <translation id="638418309848716977">సపోర్ట్ చేయబడిన లింక్‌లు</translation>
 <translation id="6384275966486438344">మీ శోధన సెట్టింగ్‌లను దీనికి మార్చండి: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{పేరు లేని గ్రూప్ - 1 ట్యాబ్}other{పేరు లేని గ్రూప్ - # ట్యాబ్‌లు}}</translation>
 <translation id="6385149369087767061">ఇంటర్నెట్‌కు కనెక్ట్ చేసి, మళ్లీ ట్రై చేయండి</translation>
 <translation id="6385382178401976503">కార్డ్: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">హెచ్చరిక - వివరణాత్మక లాగింగ్ ఎనేబుల్ చేయబడింది; ఈ కిందన పేర్కొన్న లాగ్‌లు, URLలను లేదా ఇతర గోప్యమైన సమాచారాన్ని కలిగి ఉండవచ్చు. దయచేసి ఈ సమాచారాన్ని రివ్యూ చేసి, దీన్ని సమర్పించడంలో మీకు ఎటువంటి అభ్యంతరం లేదని నిర్ధారించుకోండి.</translation>
@@ -7244,6 +7258,7 @@
 <translation id="6445450263907939268">మీరు ఈ మార్పులు అవసరం లేదని భావిస్తే, మీ మునుపటి సెట్టింగ్‌లను పునరుద్ధరించవచ్చు.</translation>
 <translation id="6446213738085045933">డెస్క్‌టాప్ షార్ట్‌కట్‌ను క్రియేట్ చేయండి</translation>
 <translation id="6447842834002726250">కుక్కీలు</translation>
+<translation id="6449554712554071184">ఇలా చేస్తే, మీ పరికరం నుండి గ్రూప్ శాశ్వతంగా తొలగించబడుతుంది.</translation>
 <translation id="6450876761651513209">మీ గోప్యతా-సంబంధిత సెట్టింగ్‌లను మార్చండి</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" />, 1 ఇతర ట్యాబ్}other{<ph name="PAGE_TITLE" />, # ఇతర ట్యాబ్‌లు}}</translation>
 <translation id="6451689256222386810">మీరు మీ రహస్య పదబంధాన్ని మర్చిపోతే లేదా ఈ సెట్టింగ్‌ను మార్చాలనుకుంటే, <ph name="BEGIN_LINK" />సింక్‌ను రీసెట్ చేయండి<ph name="END_LINK" />.</translation>
@@ -7390,6 +7405,7 @@
 <translation id="6556866813142980365">మళ్లీ చేయి</translation>
 <translation id="6556903358015358733">రూపం &amp; వాల్‌పేపర్</translation>
 <translation id="6557290421156335491">నా షార్ట్‌కట్‌లు</translation>
+<translation id="6560061709899140565">ఇతర ప్రసార సెషన్‌లను చూపండి</translation>
 <translation id="6560151649238390891">సూచన చేర్చబడింది</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">'డౌన్‌లోడ్స్' డైరెక్టరీలో సిస్టమ్ లాగ్స్‌ను స్టోర్ చేయండి.</translation>
@@ -7479,6 +7495,7 @@
 <translation id="6635674640674343739">నెట్‌వర్క్ కనెక్షన్‌ను ఏర్పాటు చేయడం సాధ్యపడలేదు. మీ నెట్‌వర్క్ కనెక్షన్‌ను చెక్ చేసి, మళ్లీ ట్రై చేయండి.</translation>
 <translation id="663569763553406962">ఏటువంటి ఎక్స్‌టెన్షన్‌లు సైట్‌ను చదవగలవో లేదా మార్చగలవో చూడండి</translation>
 <translation id="6635944431854494329">యజమాని ఈ ఫీచర్‌ను, సెట్టింగ్‌లు &gt; అధునాతనం &gt; సమస్య విశ్లేషణ, వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపు ఎంపిక ద్వారా నియంత్రించవచ్చు.</translation>
+<translation id="6636572589916466933">మీ <ph name="DEVICE_NAME" />‌లో ప్రసార రిక్వెస్ట్‌ను అంగీకరించండి.</translation>
 <translation id="6636623428211296678">కింద మరిన్ని సెట్టింగ్‌లను అన్వేషించండి లేదా ఇప్పుడే పూర్తి చేయండి</translation>
 <translation id="6639554308659482635">SQLite మెమరీ</translation>
 <translation id="6640268266988685324">తెరిచి ఉన్న ట్యాబ్</translation>
@@ -8164,6 +8181,7 @@
 <translation id="715396040729904728">లాంచర్ + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">మీ ఫీడ్‌బ్యాక్‌ను షేర్ చేయండి లేదా మీ సమస్యను వివరించండి. అవసరమైతే, మీ సమస్య ఎలా ఏర్పడింది అనే దానిని దశల వారిగా చేర్చండి.</translation>
 <translation id="7154130902455071009">మీ ప్రారంభ పేజీని దీనికి మార్చండి: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">మెరుగైన క్వాలిటీ గల వీడియోను పొందండి, బ్యాటరీ లైఫ్‌ను సేవ్ చేయండి. వీడియో మీ ప్రసార అనుకూల స్క్రీన్‌లో మాత్రమే ప్లే అవుతుంది.</translation>
 <translation id="7159953856712257647">ఆటోమేటిక్‌గా ఇన్‌స్టాల్ చేయబడుతుంది</translation>
 <translation id="7160182524506337403">మీరు ఇప్పుడు మీ ఫోన్ నోటిఫికేషన్‌లను చూడవచ్చు</translation>
 <translation id="7165263843655074092">ఈ పరికరంలో మీరు స్టాండర్డ్ సెక్యూరిటీ రక్షణను పొందుతున్నారు</translation>
@@ -9021,6 +9039,7 @@
 <translation id="7788948939674438635">మీ కీబోర్డ్‌ను లాక్ చేయడానికి సైట్‌లను అనుమతించవద్దు</translation>
 <translation id="7789963078219276159">ప్రారంభ పేజీ నేపథ్యం <ph name="CATEGORY" />కు మార్చబడింది.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">ఈ Chromebookలోని ఫైల్స్</translation>
 <translation id="7791269138074599214">ఇన్‌పుట్ పద్ధతి</translation>
 <translation id="7791429245559955092">మీరు ప్రస్తుతం ఉపయోగిస్తున్న Chrome ప్రొఫైల్‌లో ఈ అప్లికేషన్ ఇన్‌స్టాల్ చేయబడుతుంది</translation>
 <translation id="7791436592012979144">రివర్స్ స్క్రోలింగ్ ఎనేబుల్ చేయబడింది</translation>
@@ -9050,6 +9069,7 @@
 <translation id="7810202088502699111">ఈ పేజీపై పాప్-అప్‌లు నిరోధించబడ్డాయి.</translation>
 <translation id="7810367892333449285">మీ ఎంట్రీ <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ అడ్రస్ <ph name="LPA_2" />$<ph name="LPA_3" /> ఆప్షనల్ మ్యాచింగ్ id ఫార్మాట్‌లో ఉండాలి<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">మళ్లీ ట్రై చేయండి లేదా గతంలో రూపొందించిన రూపాలలో ఒక దాని నుండి దిగువున ఎంచుకోండి.</translation>
+<translation id="7814090115158024843">ఈ సైట్‌లలో రాయడానికి సహాయాన్ని ఎప్పుడూ ఆఫర్ చేయవద్దు</translation>
 <translation id="7814458197256864873">&amp;కాపీ</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> కోసం <ph name="SHORTCUT" /> షార్ట్‌కట్‌ను ఎడిట్ చేయండి</translation>
@@ -9281,8 +9301,10 @@
 <translation id="7974936243149753750">ఓవర్‌స్కాన్ సర్దుబాటు</translation>
 <translation id="7975504106303186033">మీరు ఈ Chrome Education పరికరాన్ని ఎడ్యుకేషన్ ఖాతాలో తప్పనిసరిగా ఎన్‌రోల్ చేయాలి. కొత్త ఖాతా కోసం సైన్ అప్ చేయడానికి, దయచేసి g.co/workspace/edusignupను సందర్శించండి.</translation>
 <translation id="7977451675950311423">మీరు డేటా ఉల్లంఘనలో చోరీకి గురైన పాస్‌వర్డ్‌ని ఉపయోగిస్తే అది మిమ్మల్ని హెచ్చరిస్తుంది.</translation>
+<translation id="797824194429476746">ఈ పరికరంలో ట్యాబ్‌లు అలాగే తెరిచి ఉంటాయి, కానీ గ్రూప్ శాశ్వతంగా తొలగించబడుతుంది.</translation>
 <translation id="7978412674231730200">వ్యక్తిగత కీ</translation>
 <translation id="7978450511781612192">ఇది మిమ్మల్ని మీ Google ఖాతాల నుండి సైన్ అవుట్ చేస్తుంది. మీ బుక్‌మార్క్‌లు, హిస్టరీ, పాస్‌వర్డ్‌లు మరియు మరిన్ని ఇకపై సింక్ చేయబడవు.</translation>
+<translation id="7980066177668669492">Base64-ఎన్‌కోడ్ చేసిన ASCII, మల్టిపుల్ సర్టిఫికెట్‌లు</translation>
 <translation id="7980084013673500153">అసెట్ ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" /> కోసం సేవ్ చేసిన పాస్-కీ వివరాలను ఉపయోగించండి</translation>
 <translation id="7981662863948574132">పరికర EID, QR కోడ్ పాప్‌అప్‌ను చూడండి</translation>
@@ -9692,6 +9714,7 @@
 <translation id="8276242035951017580">మీ కెమెరాను ఉపయోగించడానికి యాప్‌లు ఏవీ అనుమతించబడవు</translation>
 <translation id="8276560076771292512">కాష్‌ను ఖాళీ చేసి, నిర్బంధంగా మళ్లీ లోడ్ చేయి</translation>
 <translation id="8276850948802942358">థర్డ్-పార్టీ కుక్కీలను ఉపయోగించడానికి సైట్‌కు తాత్కాలిక అనుమతి ఇవ్వడం గురించి మరింత తెలుసుకోండి</translation>
+<translation id="8277907305629781277">మీరు ఈ పాస్-కీని <ph name="DATE" /> తేదీన క్రియేట్ చేశారు</translation>
 <translation id="8280267190418431666">మీ భాషల్లో వెబ్‌సైట్‌లు</translation>
 <translation id="828180235270931531">అందుబాటులో ఉన్న ఇతర ప్రింటర్‌లు</translation>
 <translation id="8281886186245836920">స్కిప్ చేయండి</translation>
@@ -10370,7 +10393,6 @@
 <translation id="8784626084144195648">బిన్ చేయబడిన సగటు</translation>
 <translation id="8785622406424941542">స్టైలస్</translation>
 <translation id="8786824282808281903">మీ చిన్నారి ఈ చిహ్నాన్ని చూసినప్పుడు, గుర్తింపు కోసం లేదా కొనుగోళ్లను ఆమోదించడానికి వేలిముద్రను ఉపయోగించవచ్చు.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{పేరు లేని గ్రూప్ - 1 ట్యాబ్}other{పేరు లేని గ్రూప్ - # ట్యాబ్‌లు}}</translation>
 <translation id="8787752878731558379">మీరు థర్డ్-పార్టీ కుక్కీలను ఎందుకు అనుమతించారో మాకు చెప్పడం ద్వారా Chromeను మెరుగుపరచడంలో మాకు సహాయం చేయండి</translation>
 <translation id="8789898473175677810">క్రాస్-సైట్ ట్రాకింగ్‌ను తగ్గించడానికి, థర్డ్-పార్టీ కుక్కీల వినియోగాన్ని దశలవారీగా తొలగించడానికి జరుగుతున్న <ph name="LINK_BEGIN" />పరస్పర సహకార కృషి<ph name="LINK_END" />లో Chrome కూడా భాగమే. కానీ చాలా సైట్‌లు, వాటిని డిజైన్ చేసినట్లుగా పని చేయడానికి థర్డ్-పార్టీ కుక్కీలపై ఆధారపడతాయి కాబట్టి మేము దీన్ని బాధ్యతాయుతంగా చేయడానికి ట్రై చేస్తున్నాము. ఉదాహరణకు, అనేక సైట్‌లు సైన్ ఇన్ చేయడాన్ని సులభతరం చేయడానికి, ఎంబెడెడ్ చాట్, కామెంట్ సిస్టమ్‌లకు సపోర్ట్ ఇవ్వడానికి, పెయిడ్ సర్వీస్‌ల కోసం థర్డ్-పార్టీ కుక్కీలను ఉపయోగిస్తాయి. అలాగే యాడ్‌లను మెరుగ్గా వ్యక్తిగతీకరించడానికి అడ్వర్టయిజర్‌లు తరచుగా థర్డ్-పార్టీ కుక్కీలను ఉపయోగిస్తారు. ఖర్చుల కోసం పేమెంట్ చేయడానికి , వారి ఆన్‌లైన్ కంటెంట్‌ను ఎటువంటి ఛార్జీ లేకుండా అందుబాటులో ఉంచడానికి సైట్‌లు తరచుగా యాడ్‌లపై ఆధారపడతాయి కాబట్టి ఇది ముఖ్యమైనది.</translation>
 <translation id="8791157330927639737">అప్‌డేట్ చేయడం గురించి మరింత తెలుసుకోండి</translation>
@@ -10605,6 +10627,7 @@
 <translation id="8962863356073277855">URL ఫార్మాట్ https://www.example.com అయ్యి ఉండాలి</translation>
 <translation id="8962918469425892674">ఈ సైట్ మోషన్ లేదా లైట్ సెన్సార్‌లను ఉపయోగిస్తోంది.</translation>
 <translation id="8963117664422609631">సైట్ సెట్టింగ్‌లకు వెళ్లండి</translation>
+<translation id="8964795217937248330">ట్యాబ్(ల)ను మూసివేసి, గ్రూప్‌ను తొలగించాలా?</translation>
 <translation id="8965037249707889821">పాత పాస్‌వర్డ్‌ను నమోదు చేయండి</translation>
 <translation id="8966809848145604011">ఇతర ప్రొఫైళ్లు</translation>
 <translation id="8967427617812342790">పఠనా లిస్ట్‌కు జోడించండి</translation>
@@ -11038,6 +11061,7 @@
 <translation id="979345485590886759">మీ మౌస్ పాయింటర్‌ను లాక్ చేయమని సైట్‌లు అడగవచ్చు</translation>
 <translation id="980731642137034229">చర్య మెనూ బటన్</translation>
 <translation id="981121421437150478">ఆఫ్‌లైన్</translation>
+<translation id="98235653036850093">హాయ్, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">అన్ని ట్యాబ్‌లను మూసివేయండి</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - కెమెరా, మైక్రోఫోన్ రికార్డింగ్</translation>
 <translation id="984275831282074731">పేమెంట్ ఆప్షన్‌లు</translation>
diff --git a/chrome/app/resources/generated_resources_th.xtb b/chrome/app/resources/generated_resources_th.xtb
index ffe7404a..c0a7e458 100644
--- a/chrome/app/resources/generated_resources_th.xtb
+++ b/chrome/app/resources/generated_resources_th.xtb
@@ -4068,7 +4068,6 @@
 <translation id="3983586614702900908">อุปกรณ์จากผู้ขายที่ไม่รู้จัก</translation>
 <translation id="3983764759749072418">แอปพลิเคชัน Play Store มีสิทธิ์เข้าถึงอุปกรณ์นี้</translation>
 <translation id="3983769721878416534">หน่วงเวลาก่อนคลิก</translation>
-<translation id="3983793589497399077">คลิกหรือลากตรงไหนก็ได้เพื่อค้นหาด้วย Lens</translation>
 <translation id="3984135167056005094">ไม่รวมอีเมล</translation>
 <translation id="3984159763196946143">เริ่มโหมดสาธิตไม่ได้</translation>
 <translation id="3984431586879874039">อนุญาตให้เว็บไซต์นี้ดูคีย์ความปลอดภัยของคุณไหม</translation>
@@ -7167,7 +7166,6 @@
 <translation id="6383382161803538830">โหมดการอ่านไม่พร้อมใช้งานในหน้านี้</translation>
 <translation id="638418309848716977">ลิงก์ที่รองรับ</translation>
 <translation id="6384275966486438344">เปลี่ยนการตั้งค่าการค้นหาของคุณเป็น: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{กลุ่มที่ไม่มีชื่อ - 1 แท็บ}other{กลุ่มที่ไม่มีชื่อ - # แท็บ}}</translation>
 <translation id="6385149369087767061">เชื่อมต่ออินเทอร์เน็ตแล้วลองอีกครั้ง</translation>
 <translation id="6385382178401976503">บัตร: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">คำเตือน - การบันทึกโดยละเอียดเปิดใช้อยู่ บันทึกด้านล่างนี้อาจมี URL หรือข้อมูลที่ละเอียดอ่อนอื่นๆ โปรดตรวจสอบว่าคุณสะดวกใจที่จะส่งข้อมูลนี้</translation>
@@ -10384,7 +10382,6 @@
 <translation id="8784626084144195648">เฉลี่ยรวม</translation>
 <translation id="8785622406424941542">สไตลัส</translation>
 <translation id="8786824282808281903">เมื่อบุตรหลานเห็นไอคอนนี้ ลายนิ้วมือสามารถใช้เพื่อระบุตัวตนหรืออนุมัติการซื้อได้</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{กลุ่มที่ไม่มีชื่อ - 1 แท็บ}other{กลุ่มที่ไม่มีชื่อ - # แท็บ}}</translation>
 <translation id="8787752878731558379">ช่วยปรับปรุง Chrome โดยแจ้งให้เราทราบถึงเหตุผลที่คุณอนุญาตคุกกี้ของบุคคลที่สาม</translation>
 <translation id="8789898473175677810">Chrome เป็นส่วนหนึ่งของ<ph name="LINK_BEGIN" />การทำงานร่วมกัน<ph name="LINK_END" />เพื่อลดการติดตามข้ามเว็บไซต์และยกเลิกการใช้งานคุกกี้ของบุคคลที่สาม แต่เราพยายามที่จะดำเนินการอย่างมีความรับผิดชอบ เนื่องจากเว็บไซต์จำนวนมากต้องใช้คุกกี้ของบุคคลที่สามในการทำงานตามที่ออกแบบไว้ ตัวอย่างเช่น เว็บไซต์จำนวนมากใช้คุกกี้ของบุคคลที่สามเพื่อให้ลงชื่อเข้าใช้ได้ง่ายขึ้น รองรับระบบแชทและการแสดงความคิดเห็นแบบฝัง รวมถึงบริการชำระเงิน และผู้ลงโฆษณามักใช้คุกกี้ของบุคคลที่สามเพื่อให้ปรับโฆษณาตามโปรไฟล์ของผู้ใช้ได้ดีขึ้น ซึ่งเป็นเรื่องสำคัญเพราะเว็บไซต์ต่างๆ มักพึ่งพาโฆษณาเพื่อช่วยชำระค่าใช้จ่ายและให้บริการเนื้อหาออนไลน์ต่างๆ แบบไม่มีค่าใช้จ่าย</translation>
 <translation id="8791157330927639737">ดูข้อมูลเพิ่มเติมเกี่ยวกับการอัปเดต</translation>
diff --git a/chrome/app/resources/generated_resources_tr.xtb b/chrome/app/resources/generated_resources_tr.xtb
index 80d1edbb..604182a 100644
--- a/chrome/app/resources/generated_resources_tr.xtb
+++ b/chrome/app/resources/generated_resources_tr.xtb
@@ -1657,6 +1657,7 @@
 <translation id="2211043920024403606">Profil bilgileri</translation>
 <translation id="2211245494465528624">Senkronizasyon seçeneklerini yönetin</translation>
 <translation id="221297410904507041">Geçmişi, çerezleri, önbelleği ve başka öğeleri silin</translation>
+<translation id="2213410656650624348">Orta düzey</translation>
 <translation id="2214018885812055163">Paylaşılan klasörler</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 satır gösterilmiyor&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> satır gösterilmiyor&gt;}}</translation>
 <translation id="2215070081105889450">Ses paylaşmak için bunun yerine bir sekme veya ekran paylaşın</translation>
@@ -2035,6 +2036,7 @@
 <translation id="2473195200299095979">Bu sayfayı çevir</translation>
 <translation id="2475982808118771221">Bir hata oluştu</translation>
 <translation id="247616523300581745">Bu dosyaları gizle</translation>
+<translation id="2476435723907345463">Geçiş anahtarı erişimi kaldırıldı</translation>
 <translation id="2476901513051581836">Çevrimdışı depolama alanı boyutu öğrenilene kadar depolama alanı temizlenemez.</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" /> yüklemesini kaldırmak için Windows'u kapatın.</translation>
 <translation id="2477065602824695373">Birden fazla anahtar ayarladığınız için otomatik tarama özelliği kapatıldı.</translation>
@@ -2229,6 +2231,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> güvenli bir şekilde indirilemiyor.</translation>
 <translation id="2620245777360407679">Şu anda hotspot'a bağlı olan cihazlar</translation>
 <translation id="2620436844016719705">Sistem</translation>
+<translation id="262087792756666314">Daha kolay erişmek için yan panelin üst kısmındaki Sabitle düğmesini tıklayarak bu özelliği sabitleyebilirsiniz.</translation>
 <translation id="2620900772667816510">Bluetooth Süper Çözünürlük</translation>
 <translation id="262154978979441594">Google Asistan ses modelini eğitin</translation>
 <translation id="26224892172169984">Protokolleri işlemek için hiçbir siteye izin verme</translation>
@@ -3004,6 +3007,7 @@
 <translation id="3222066309010235055">Ön oluşturucu: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989"><ph name="USB_VM_NAME" /> ağına bağlan</translation>
 <translation id="3222857603094643834">Google Lens ile bu sayfada istediğiniz şeyi arayın</translation>
+<translation id="3223109931751684474">Bu cihazda geçiş anahtarlarıma erişimi kaldır</translation>
 <translation id="3223531857777746191">Sıfırlama Düğmesi</translation>
 <translation id="3225084153129302039">Varsayılan mor avatar</translation>
 <translation id="3225319735946384299">Kod İmzalama</translation>
@@ -3328,6 +3332,7 @@
 <translation id="3473479545200714844">Ekran büyüteci</translation>
 <translation id="3474218480460386727">Yeni kelimeler için 99 veya daha az harf kullanın</translation>
 <translation id="3474624961160222204"><ph name="NAME" /> olarak devam et</translation>
+<translation id="3477772589943384839">Orta düzeyde bellek tasarrufu sağlar. Sekmeleriniz daha uzun süre sonra devre dışı kalır.</translation>
 <translation id="347785443197175480"><ph name="HOST" /> sitesinin kamerama ve mikrofonuma erişmesine izin vermeye devam et</translation>
 <translation id="3479357084663933762">Döteranomali</translation>
 <translation id="3479552764303398839">Şimdi değil</translation>
@@ -4051,7 +4056,6 @@
 <translation id="3983586614702900908">bilinmeyen bir tedarikçi firmanın cihazları</translation>
 <translation id="3983764759749072418">Play Store uygulamalarının bu cihaza erişim izni var.</translation>
 <translation id="3983769721878416534">Tıklamadan önce gecikme süresi</translation>
-<translation id="3983793589497399077">Lens ile arama yapmak için istediğiniz yeri tıklayın veya sürükleyin</translation>
 <translation id="3984135167056005094">E-posta adresini ekleme</translation>
 <translation id="3984159763196946143">Demo modu başlatılamadı</translation>
 <translation id="3984431586879874039">Bu sitenin güvenlik anahtarınızı görmesine izin verilsin mi?</translation>
@@ -4088,6 +4092,7 @@
 <translation id="4010036441048359843">Vurgulamayı aç</translation>
 <translation id="4010746393007464819">Debian 12 (Bookworm) sürümüne yükseltme yapılabilir</translation>
 <translation id="4010917659463429001">Yer işaretlerinizi mobil cihazınıza taşımak için <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Daha kolay erişmek için bu özelliği sabitleyebilirsiniz</translation>
 <translation id="4014432863917027322">"<ph name="EXTENSION_NAME" />" onarılsın mı?</translation>
 <translation id="4015163439792426608">Uzantı kullanıyor musunuz? <ph name="BEGIN_LINK" />Uzantılarınızı tek yerden kolayca yönetin<ph name="END_LINK" />.</translation>
 <translation id="4016762287427926315"><ph name="APP_NAME" /> için verdiğiniz izinler, bu uygulamaya da verilir. <ph name="BEGIN_LINK" />Yönetin<ph name="END_LINK" /></translation>
@@ -4391,6 +4396,7 @@
 <translation id="4261429981378979799">Uzantı izinleri</translation>
 <translation id="4262004481148703251">Uyarıyı kapat</translation>
 <translation id="4263223596040212967">Klavye düzeninizi kontrol edip tekrar deneyin.</translation>
+<translation id="4263470758446311292">Maksimum bellek tasarrufu sağlar. Sekmeleriniz daha kısa süre sonra devre dışı kalır.</translation>
 <translation id="4265096510956307240">Kimliğinizi doğrulayın</translation>
 <translation id="4265301768135164545">eSIM profilini <ph name="BEGIN_LINK" />manuel olarak<ph name="END_LINK" /> da oluşturabilirsiniz.</translation>
 <translation id="426564820080660648">Güncellemeleri kontrol etmek için lütfen Ethernet, Kablosuz veya mobil veri kullanın.</translation>
@@ -4710,6 +4716,7 @@
 <translation id="4503748371388753124">Bilgisayarınızda, ChromeOS Flex'teki pek çok kritik güvenlik özelliğini uygulamak için kullanılan bir Güvenilir Platform Modülü (TPM) güvenlik cihazı bulunmaktadır. Daha fazla bilgi edinmek için Chromebook Yardım Merkezi'ni ziyaret edin: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Çerezlere izin veriliyor}=1{Çerezlere izin veriliyor, 1 istisna}other{Çerezlere izin veriliyor, {COUNT} istisna}}</translation>
 <translation id="4504940961672722399">Bu simgeyi tıklayarak veya <ph name="EXTENSION_SHORTCUT" /> tuşuna basarak bu uzantıyı kullanın.</translation>
+<translation id="4505469832694348179">Bu QR koduyla Chrome'u indirin ve Google Hesabınızda oturum açın.</translation>
 <translation id="450552327874992444">Kelime zaten eklendi</translation>
 <translation id="4507373251891673233"><ph name="HOST" /> adresinden gelen tüm uzantıları engellediniz</translation>
 <translation id="4507401683427517298">"Kısayol Ekle"yi tıklayın.</translation>
@@ -5045,6 +5052,7 @@
 <translation id="4768332406694066911">Sizi tanımlayan şu kuruluşlardan sertifikalarınız var</translation>
 <translation id="4769632191812288342">Standart koruma kullanıyorsunuz</translation>
 <translation id="4770119228883592393">İzin istendi, yanıtlamak için ⌘ + Option + Aşağı ok tuşlarına basın</translation>
+<translation id="4770755495532014179">Bu şifreyi iPhone'unuzda kullanın</translation>
 <translation id="4773112038801431077">Linux'u yeni sürüme geçirin</translation>
 <translation id="477548766361111120">Uzantının bu siteyi okumasına ve değiştirmesine izin verin</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> bağlandı</translation>
@@ -5214,6 +5222,7 @@
 <translation id="4890399733764921729">Bağlantı kurulamıyor. Başka bir mobil sağlayıcı tarafından kilitlendi.</translation>
 <translation id="4890773143211625964">Gelişmiş yazıcı seçeneklerini göster</translation>
 <translation id="4891089016822695758">Beta forumu</translation>
+<translation id="4891795846939730995">Bu cihazın geçiş anahtarlarınıza tekrar erişmesine izin vermek için kayıtlı bir geçiş anahtarıyla bir sitede veya uygulamada oturum açın</translation>
 <translation id="4892229439761351791">Site Bluetooth bağlantısı kullanabilir</translation>
 <translation id="4892328231620815052">Hazır olduğunuzda okuma listenizi Yer İşaretleri ve Listeler'de bulabilirsiniz</translation>
 <translation id="489258173289528622">Pil kullanılırken boşta kalma işlemi</translation>
@@ -6444,6 +6453,7 @@
 <translation id="5846504156837627898">Site İzinlerini Yönet</translation>
 <translation id="5846749317653566506">Renklerin farklı olduğundan emin olmak için renk düzeltme ayarlarını düzenleyin</translation>
 <translation id="5846807460505171493">Güncellemeleri ve uygulamaları yükle. Devam ederek bu cihazın Google'dan, operatörünüzden ve cihazınızın üreticisinden (muhtemelen hücresel veri kullanarak) gönderilen güncelleme ve uygulamaları otomatik olarak indirip yükleyebileceğini kabul etmiş olursunuz. Bu uygulamalardan bazıları uygulama içi satın alma seçenekleri sunabilir.</translation>
+<translation id="5848054741303781539">Manuel olarak ayarlandı, konum kullanılmıyor</translation>
 <translation id="5848319660029558352">Sesli Oku ve metin biçimlendirme</translation>
 <translation id="5849212445710944278">Zaten eklendi</translation>
 <translation id="584945105664698226">Ses hızı</translation>
@@ -7142,7 +7152,6 @@
 <translation id="6383382161803538830">Okuma modu bu sayfada kullanılamıyor</translation>
 <translation id="638418309848716977">Desteklenen bağlantılar</translation>
 <translation id="6384275966486438344">Arama ayarlarınızı <ph name="SEARCH_HOST" /> olarak değiştirme</translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Adsız grup - 1 sekme}other{Adsız grup - # sekme}}</translation>
 <translation id="6385149369087767061">İnternete bağlanıp tekrar deneyin</translation>
 <translation id="6385382178401976503">Kart: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Uyarı: Ayrıntılı günlük kaydı etkin. Aşağıdaki günlüklerde URL'ler veya diğer hassas bilgiler bulunabilir. Lütfen bu bilgileri inceleyin ve göndermenizde sakınca olmadığından emin olun.</translation>
@@ -7474,6 +7483,7 @@
 <translation id="6648911618876616409">Önemli bir güncelleme yüklenmeye hazır. Başlamak için oturum açın.</translation>
 <translation id="6649018507441623493">Bir saniye...</translation>
 <translation id="6650206238642452078">ChromeOS sistem etkinliklerine abone olma</translation>
+<translation id="6650584564768559994">Dengeli bellek tasarrufu sağlar. Sekmeleriniz ideal süre sonunda devre dışı kalır.</translation>
 <translation id="665061930738760572">&amp;Yeni Pencerede Aç</translation>
 <translation id="6651237644330755633">Web sitelerini tanımlamak için bu sertifikaya güvenin</translation>
 <translation id="6651495917527016072">Kablosuz ağları telefonunuzla senkronize eder. <ph name="LINK_BEGIN" />Daha fazla bilgi<ph name="LINK_END" /></translation>
@@ -7731,6 +7741,7 @@
 <translation id="6831043979455480757">Çevir</translation>
 <translation id="6832218595502288407">Sola hizala</translation>
 <translation id="6833479554815567477">Sekme, <ph name="GROUP_NAME" /> adlı gruptan kaldırıldı - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Dengeli (önerilen)</translation>
 <translation id="6835762382653651563"><ph name="DEVICE_TYPE" /> cihazınızı güncellemek için lütfen İnternet'e bağlanın.</translation>
 <translation id="683630338945552556">Google Hesabınızdaki şifreleri kullanma ve kaydetme</translation>
 <translation id="6839225236531462745">Sertifika Silme Hatası</translation>
@@ -9381,6 +9392,7 @@
 <translation id="8066444921260601116">Bağlantı İletişim Kutusu</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> konum izni</translation>
 <translation id="8070662218171013510">Dokunsal geribildirim</translation>
+<translation id="8071033114691184017">Bu Şifreyi iPhone'unuzda Kullanın</translation>
 <translation id="8071432093239591881">Resim olarak yazdır</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Uygulama verileri, bir uygulamanın kaydettiği her tür veri olabilir (geliştirici ayarlarına bağlıdır) ve bu veriler arasında kişiler, iletiler ve fotoğraflar gibi veriler de bulunabilir.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Yedeklenen veriler çocuğunuzun Drive Depolama Alanı kotasından düşülmez.<ph name="END_PARAGRAPH2" />
@@ -9948,6 +9960,7 @@
 <translation id="8482077254400484047">Etkin olmayan sekmelerin görünümünü buradan yönetin</translation>
 <translation id="8483248364096924578">IP adresi</translation>
 <translation id="8486666913807228950">Neden: "Şurada açmaya zorlayın" listesinde <ph name="REVERT_RULE" /> ters kuralı bulundu.</translation>
+<translation id="8487303289354211861">Sabitlendi. Araç çubuğundaki yeni düğmeyi kullanarak bu özelliğe tekrar erişebilirsiniz.</translation>
 <translation id="8487678622945914333">Yakınlaştır</translation>
 <translation id="8487699605742506766">Hotspot</translation>
 <translation id="8489156414266187072">Kişisel öneriler yalnızca hesabınızda gösterilir</translation>
@@ -10346,7 +10359,6 @@
 <translation id="8784626084144195648">Gruplu Ortalama</translation>
 <translation id="8785622406424941542">Ekran kalemi</translation>
 <translation id="8786824282808281903">Çocuğunuz bu simgeyi gördüğünde, kimlik doğrulamak veya satın alma işlemlerini onaylamak için parmak izi kullanılabilir.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Adsız Grup - 1 Sekme}other{Adsız Grup - # Sekme}}</translation>
 <translation id="8787752878731558379">Üçüncü taraf çerezlerine neden izin verdiğinizi bize bildirerek Chrome'u iyileştirmemize yardımcı olun</translation>
 <translation id="8789898473175677810">Chrome, siteler arası izlemeyi azaltmaya ve üçüncü taraf çerezlerinin aşamalı olarak kullanımdan kaldırılmasına yönelik <ph name="LINK_BEGIN" />ortak çalışmaların<ph name="LINK_END" /> bir parçasıdır. Ancak, pek çok site tasarlandığı şekilde çalışmak için üçüncü taraf çerezlerini kullandığından bunu sorumlu bir şekilde yapmaya çalışıyoruz. Örneğin, birçok site oturum açmayı kolaylaştırmak, yerleşik sohbet ve yorum sistemlerini desteklemek ve ödeme hizmetleri için üçüncü taraf çerezlerini kullanır. Reklamverenler de reklamları daha iyi kişiselleştirmek için genellikle üçüncü taraf çerezlerini kullanır. Siteler, giderlerini karşılamak ve internetteki içeriklerinin ücretsiz kalmasını sağlamak için genellikle reklamlara güvendiğinden bu çerezler önemlidir.</translation>
 <translation id="8791157330927639737">Güncelleme hakkında daha fazla bilgi</translation>
@@ -10660,6 +10672,7 @@
 <translation id="9014674417732091912"><ph name="ROW_NUMBER" />. satıra taşındı</translation>
 <translation id="901668144954885282">Google Drive'a yedekle</translation>
 <translation id="9016827136585652292">gizlilik ekranını aç/kapat</translation>
+<translation id="9017055559700464094">Sabitlendi. Araç çubuğundan bu özelliği tekrar kullanabilirsiniz.</translation>
 <translation id="90181708067259747">Son kullanım tarihi: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Yükleme tamamlandı</translation>
 <translation id="901876615920222131">Grubu yeniden açmak için grubu tıklayın</translation>
@@ -10818,6 +10831,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />En iyi deneyim için <ph name="DEVICE_OS" /> yüklemesini dahili diskinizde gerçekleştirin. Daha sonra giriş ekranından da yükleyebilirsiniz.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Yüklemeye hazır değilseniz önce denemek için USB'den çalıştırabilirsiniz. Bu şekilde mevcut işletim sisteminiz ve verileriniz kaldırılmaz ancak depolama alanı ve performansla ilgili bazı sınırlar görebilirsiniz.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">İğnelenmiş sekme olarak aç</translation>
+<translation id="9122788874051694311">Bu geçiş anahtarı Gizli mod dışında kaydedilsin mi?</translation>
 <translation id="9123287046453017203">Cihazınız güncel değil</translation>
 <translation id="9125910124977405374"><ph name="LANGUAGE_NAME" /> dilini otomatik olarak çevrilen dillerden kaldırın</translation>
 <translation id="9126149354162942022">İmleç rengi</translation>
diff --git a/chrome/app/resources/generated_resources_uk.xtb b/chrome/app/resources/generated_resources_uk.xtb
index ea872fd9..8ea9cda 100644
--- a/chrome/app/resources/generated_resources_uk.xtb
+++ b/chrome/app/resources/generated_resources_uk.xtb
@@ -368,6 +368,7 @@
 <translation id="1260810365552581339">Можливо, на диску Linux недостатньо місця. Можете збільшити його та повторити спробу відновлення в <ph name="LINK_START" />налаштуваннях<ph name="LINK_END" />.</translation>
 <translation id="1261380933454402672">Помірне</translation>
 <translation id="126156426083987769">Виникла проблема з ліцензіями пристрою в демо-режимі.</translation>
+<translation id="1261885284931493480">Вилучити вкладки й видалити групу?</translation>
 <translation id="1263231323834454256">Список читання</translation>
 <translation id="1263733306853729545">Використовувати клавіші <ph name="MINUS" /> і <ph name="EQUAL" />, щоб переходити між варіантами в списку</translation>
 <translation id="126387934568812801">Включити цей знімок екрана та назви відкритих вкладок</translation>
@@ -521,7 +522,7 @@
 <translation id="1390548061267426325">Відкрити як звичайну вкладку</translation>
 <translation id="1390907927270446471">Користувач <ph name="PROFILE_USERNAME" /> не має дозволу друкувати через принтер "<ph name="PRINTER_NAME" />". Зв’яжіться з адміністратором.</translation>
 <translation id="1392047138650695757">Словники користувача</translation>
-<translation id="139300021892314943">Обмежує коло користувачів, які можуть входити в систему</translation>
+<translation id="139300021892314943">Обмежити коло користувачів, які можуть входити в систему</translation>
 <translation id="1393283411312835250">Сонце та хмари</translation>
 <translation id="1395730723686586365">Засіб оновлення запущено</translation>
 <translation id="1395832189806039783">Виділити елемент, вибраний через клавіатуру</translation>
@@ -880,6 +881,7 @@
 <translation id="1634224622052500893">Знайдено мережу Wi-Fi</translation>
 <translation id="1634783886312010422">Ви вже змінили пароль на сайті <ph name="WEBSITE" />?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Вітаємо, <ph name="PROFILE_NAME" />!</translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Даними додатків може бути будь-яка інформація, яку вони зберігають (залежно від налаштувань розробника), зокрема такі відомості, як контакти, повідомлення та фотографії. Резервні копії даних не займають простір на Диску.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Цей сервіс можна вимкнути в налаштуваннях.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Додайте цю закладку на iPhone</translation>
@@ -916,6 +918,7 @@
 <translation id="1652862280638399816">Щоб використовувати Менеджер паролів із додатком Ключар у macOS, перезапустіть Chromium і надайте доступ до цього додатка. Після перезапуску поточні вкладки відкриються знову.</translation>
 <translation id="1653958716132599769">Згрупувати пов’язані вкладки</translation>
 <translation id="1654580009054503925">Заборонено показувати запити</translation>
+<translation id="1654713139320245449">Немає пристроїв для трансляції. Потрібна допомога?</translation>
 <translation id="1656528038316521561">Прозорість фону</translation>
 <translation id="1657406563541664238">Допоможіть покращити <ph name="PRODUCT_NAME" />, автоматично надсилаючи статистику використання та звіти про аварійне завершення роботи в Google</translation>
 <translation id="1657937299377480641">Щоб знову ввійти в обліковий запис для доступу до навчальних ресурсів, попроси батьків надати дозвіл</translation>
@@ -940,7 +943,7 @@
 <translation id="1679068421605151609">Інструменти для розробників</translation>
 <translation id="1679810534535368772">Вийти?</translation>
 <translation id="167983332380191032">Сервіс керування надіслав помилку HTTP.</translation>
-<translation id="167997285881077031">Налаштування голосу синтезу мовлення</translation>
+<translation id="167997285881077031">Налаштування голосу для синтезу мовлення</translation>
 <translation id="1680849702532889074">Під час встановлення додатка Linux сталася помилка.</translation>
 <translation id="1682548588986054654">Нове анонімне вікно</translation>
 <translation id="1682696837763999627">Великий курсор миші</translation>
@@ -1644,12 +1647,14 @@
 <translation id="2187895286714876935">Помилка імпортування сертифіката сервера</translation>
 <translation id="2187906491731510095">Розширення оновлено</translation>
 <translation id="2188881192257509750">Відкрити <ph name="APPLICATION" /></translation>
+<translation id="2188919919468240749">Видалити групу вкладок?</translation>
 <translation id="2190069059097339078">Засіб отримання облікових даних Wi-Fi</translation>
 <translation id="219008588003277019">Модуль Native Client: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(пусто)</translation>
 <translation id="2190967441465539539">Немає доступу до камери й мікрофона</translation>
 <translation id="2191754378957563929">Увімкнено</translation>
 <translation id="2192505247865591433">Від:</translation>
+<translation id="219283042927675668">Вкладки в групі</translation>
 <translation id="2193365732679659387">Налаштування довіри</translation>
 <translation id="2194856509914051091">Що варто врахувати</translation>
 <translation id="2195331105963583686">Після цього ви й надалі зможете користуватися пристроєм <ph name="DEVICE_TYPE" />, але він не буде отримувати автоматичні оновлення програмного забезпечення й системи безпеки</translation>
@@ -1690,7 +1695,7 @@
 <translation id="2224444042887712269">Це налаштування встановив користувач <ph name="OWNER_EMAIL" />.</translation>
 <translation id="2224551243087462610">Редагувати ім’я папки</translation>
 <translation id="2225927550500503913">Віртуальну картку ввімкнено</translation>
-<translation id="2226826835915474236">Неактивні команди</translation>
+<translation id="2226826835915474236">Неактивні ярлики</translation>
 <translation id="2226907662744526012">Розблоковувати автоматично, коли хтось вводить PIN-код</translation>
 <translation id="2227179592712503583">Видалити пропозицію</translation>
 <translation id="2229161054156947610">Залишилося більше 1 год.</translation>
@@ -1873,6 +1878,7 @@
 <translation id="2350133097354918058">Оновлено</translation>
 <translation id="2350182423316644347">Ініціалізація програми…</translation>
 <translation id="235028206512346451">Якщо ви відійдете від пристрою, екран автоматично заблокується. Коли ви перебуватимете перед екраном, він довше залишатиметься в активному стані. Якщо ви не використовуєте заблокований екран, ваш пристрій не блокуватиметься, а переходитиме в режим сну.</translation>
+<translation id="2352305801620974284">Увійшовши в обліковий запис на цьому пристрої, ви можете використовувати паролі й інші дані з вашого облікового запису Google</translation>
 <translation id="2352662711729498748">&lt; 1 МБ</translation>
 <translation id="2352810082280059586">Сповіщення на заблокованому екрані автоматично зберігаються в додатку <ph name="LOCK_SCREEN_APP_NAME" />. Останнє сповіщення залишатиметься на заблокованому екрані.</translation>
 <translation id="2353297238722298836">Дозволено використовувати камеру та мікрофон</translation>
@@ -2083,6 +2089,7 @@
 <translation id="249113932447298600">На жаль, зараз пристрій <ph name="DEVICE_LABEL" /> не підтримується.</translation>
 <translation id="2491587035099903063">прослухати голос для такої мови: <ph name="LANGUAGE" /></translation>
 <translation id="2492461744635776704">Підготовка запиту на підпис сертифіката</translation>
+<translation id="2492964937550251173">Закрити вкладки й видалити групу?</translation>
 <translation id="249330843868392562">Відкрити налаштування синтезу мовлення</translation>
 <translation id="2494555621641843783">Не вдалося встановити додаток Steam</translation>
 <translation id="2495141202137516054">З вашого Диска</translation>
@@ -2252,6 +2259,7 @@
 <translation id="262087792756666314">Ви можете закріпити цю функцію для швидкого доступу: для цього вгорі бічної панелі натисніть кнопку "Закріпити"</translation>
 <translation id="2620900772667816510">Висока роздільна здатність Bluetooth</translation>
 <translation id="262154978979441594">Навчити Google Асистента розпізнавати зразок голосу</translation>
+<translation id="2622280935687585828">Вилучити сайт <ph name="SITE_NAME" /> зі списку вимкнених сайтів</translation>
 <translation id="26224892172169984">Заборонити всім сайтам обробляти протоколи</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">Дозволено керувати пристроями MIDI й перепрограмовувати їх</translation>
@@ -2425,6 +2433,7 @@
 <translation id="2743387203779672305">Копіювати в буфер</translation>
 <translation id="274362947316498129">Додатку потрібен доступ до пристрою "<ph name="DEVICE_NAME" />". Щоб пристрій "<ph name="DEVICE_NAME" />" став доступним, вимкніть для нього налаштування конфіденційності.</translation>
 <translation id="2745080116229976798">Посилене підпорядкування Microsoft</translation>
+<translation id="2747853844543618313">Прийміть запит на трансляцію на пристрої "<ph name="DEVICE_NAME" />".</translation>
 <translation id="2749756011735116528">Увійти в <ph name="PRODUCT_NAME" /></translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Перевірити граматику та правопис</translation>
@@ -2795,6 +2804,7 @@
 <translation id="3021066826692793094">Метелик</translation>
 <translation id="3021678814754966447">&amp;Переглянути джерело фрейму</translation>
 <translation id="3021902017511220299">Помилка сканування. Адміністратор заблокував цю дію.</translation>
+<translation id="3022068420678496307">Групу буде видалено з усіх пристроїв, на яких ви ввійшли в Chrome за допомогою цього облікового запису Google.</translation>
 <translation id="3022361196600037287">Пристрій "<ph name="DEVICE" />" буде вилучено з цього пристрою Chromebook. Також його не буде збережено в обліковому записі <ph name="PRIMARY_EMAIL" />.</translation>
 <translation id="3022978424994383087">Незрозуміло.</translation>
 <translation id="3023464535986383522">Читання з екрана</translation>
@@ -4074,7 +4084,6 @@
 <translation id="3983586614702900908">пристрої від невідомого постачальника</translation>
 <translation id="3983764759749072418">Додатки з Play Маркету мають доступ до цього пристрою.</translation>
 <translation id="3983769721878416534">Затримка перед кліком</translation>
-<translation id="3983793589497399077">Натисніть об’єкт або виділіть область екрана, щоб виконати пошук за допомогою Об’єктива</translation>
 <translation id="3984135167056005094">Не включати електронну адресу</translation>
 <translation id="3984159763196946143">Не вдалося запустити демонстраційний режим</translation>
 <translation id="3984431586879874039">Показувати цьому сайту ваш ключ безпеки?</translation>
@@ -4197,6 +4206,7 @@
 <translation id="4078903002989614318">Параметри сортування і списку</translation>
 <translation id="4079140982534148664">Використовувати покращену перевірку орфографії</translation>
 <translation id="4082333918978320301">Немає веб-сайтів, яким дозволено використовувати мікрофон</translation>
+<translation id="4083735423615351075">Вкладки залишатимуться відкритими на цьому пристрої, однак групу буде видалено з усіх пристроїв, на яких ви ввійшли в Chrome за допомогою цього облікового запису Google.</translation>
 <translation id="4084682180776658562">Закладка</translation>
 <translation id="4084835346725913160">Закрити вкладку "<ph name="TAB_NAME" />"</translation>
 <translation id="4085298594534903246">На цій сторінці JavaScript заблоковано.</translation>
@@ -4206,6 +4216,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Показувати справа</translation>
+<translation id="4088879333319441249">Розгрупувати вкладки?</translation>
 <translation id="4089235344645910861">Налаштування збережено. Почато синхронізацію.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Увімкнути перевірений доступ</translation>
@@ -5687,6 +5698,7 @@
 <translation id="5242724311594467048">Увімкнути розширення "<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="5243522832766285132">Повторіть спробу через кілька хвилин</translation>
 <translation id="5244234799035360187">OneDrive тепер відображатиметься в додатку Файли</translation>
+<translation id="5244466461749935369">Зберегти</translation>
 <translation id="5244474230056479698">Синхронізація з обліковим записом <ph name="EMAIL" /></translation>
 <translation id="5245610266855777041">Початок роботи з обліковим записом закладу освіти</translation>
 <translation id="5246282308050205996">Відбулося аварійне завершення роботи програми <ph name="APP_NAME" />. Натисніть цю спливаючу підказку, щоб перезапустити програму.</translation>
@@ -5955,6 +5967,7 @@
 <translation id="5453829744223920473">Дитина зможе використовувати всі шкільні додатки, закладки й ресурси так само, як на уроці. Основні правила визначає заклад освіти.</translation>
 <translation id="5454166040603940656">за допомогою <ph name="PROVIDER" /></translation>
 <translation id="545484289444831485">Показувати більше результатів пошуку</translation>
+<translation id="5457082343331641453">Додати в пошуковий запит</translation>
 <translation id="5457113250005438886">Недійсні дані</translation>
 <translation id="5457459357461771897">Читати й видаляти фотографії, музику та інші медіафайли на комп’ютері</translation>
 <translation id="5458214261780477893">Дворак</translation>
@@ -6430,6 +6443,7 @@
 <translation id="5816434091619127343">Після цих змін принтер стане непридатним для використання.</translation>
 <translation id="581659025233126501">Увімкнути синхронізацію</translation>
 <translation id="5817918615728894473">Підключити</translation>
+<translation id="5817963443108180228">З поверненням, <ph name="PROFILE_NAME" />!</translation>
 <translation id="581911254119283028">усі додатки</translation>
 <translation id="5821565227679781414">Створити ярлик</translation>
 <translation id="5824976764713185207">Автоматично озвучувати сторінку, коли вона завантажиться</translation>
@@ -7029,6 +7043,7 @@
 <translation id="6265159465845424232">Запитувати, перш ніж копіювати або переміщувати файли Microsoft у Microsoft OneDrive</translation>
 <translation id="6265687851677020761">Вилучити порт</translation>
 <translation id="6266532094411434237">Підключення до пристрою "<ph name="DEVICE" />"</translation>
+<translation id="6266984048393265562">Налаштувати профіль</translation>
 <translation id="6267166720438879315">Виберіть сертифікат, щоб ідентифікувати себе на <ph name="HOST_NAME" /></translation>
 <translation id="6268252012308737255">Відкрити за допомогою додатка <ph name="APP" /></translation>
 <translation id="6270309713620950855">Нагадування про вимкнений мікрофон</translation>
@@ -7167,7 +7182,6 @@
 <translation id="6383382161803538830">Режим читання недоступний на цій сторінці</translation>
 <translation id="638418309848716977">Підтримувані посилання</translation>
 <translation id="6384275966486438344">Використовувати пошукову систему <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Група без назви – 1 вкладка}one{Група без назви – # вкладка}few{Група без назви – # вкладки}many{Група без назви – # вкладок}other{Група без назви – # вкладки}}</translation>
 <translation id="6385149369087767061">Підключіть пристрій до Інтернету й повторіть спробу.</translation>
 <translation id="6385382178401976503">Картка: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Попередження. Увімкнено детальну реєстрацію. Журнали нижче можуть містити URL-адреси й іншу конфіденційну інформацію. Перегляньте їх і переконайтеся, що ви не проти надсилати такі дані.</translation>
@@ -7246,6 +7260,7 @@
 <translation id="6445450263907939268">Якщо ви не хочете цих змін, можна відновити попередні налаштування.</translation>
 <translation id="6446213738085045933">Створити ярлик на робочому столі</translation>
 <translation id="6447842834002726250">Файли cookie</translation>
+<translation id="6449554712554071184">Групу буде назавжди видалено з вашого пристрою.</translation>
 <translation id="6450876761651513209">Змінювати налаштування конфіденційності</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> і ще одна вкладка}one{<ph name="PAGE_TITLE" /> і ще # вкладка}few{<ph name="PAGE_TITLE" /> і ще # вкладки}many{<ph name="PAGE_TITLE" /> і ще # вкладок}other{<ph name="PAGE_TITLE" /> і ще # вкладки}}</translation>
 <translation id="6451689256222386810">Якщо ви забули парольну фразу або хочете змінити це налаштування, <ph name="BEGIN_LINK" />скиньте синхронізацію<ph name="END_LINK" />.</translation>
@@ -7392,6 +7407,7 @@
 <translation id="6556866813142980365">Повторити</translation>
 <translation id="6556903358015358733">Тема та фоновий малюнок</translation>
 <translation id="6557290421156335491">Мої ярлики</translation>
+<translation id="6560061709899140565">Показати інші сеанси трансляцій</translation>
 <translation id="6560151649238390891">Пропозицію вставлено</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Зберігати журнали системи в каталозі "Завантаження".</translation>
@@ -7487,6 +7503,7 @@
 <translation id="6635674640674343739">Не вдається встановити з’єднання з мережею. Перевірте з’єднання з мережею та повторіть спробу.</translation>
 <translation id="663569763553406962">Дізнайтесь, які розширення можуть переглядати або редагувати сайти</translation>
 <translation id="6635944431854494329">Власник може керувати цією функцією в меню "Налаштування &gt; Розширені &gt; Автоматично надсилати в Google дані про діагностику та використання".</translation>
+<translation id="6636572589916466933">Прийміть запит на трансляцію на пристрої "<ph name="DEVICE_NAME" />".</translation>
 <translation id="6636623428211296678">Перейдіть до інших налаштувань нижче або завершіть перевірку</translation>
 <translation id="6639554308659482635">Пам'ять SQLite</translation>
 <translation id="6640268266988685324">Відкрита вкладка</translation>
@@ -8172,6 +8189,7 @@
 <translation id="715396040729904728">клавіша Панелі запуску + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Залиште відгук або опишіть проблему. За можливості перелічіть дії, після яких виникає ця проблема.</translation>
 <translation id="7154130902455071009">Зробити <ph name="START_PAGE" /> домашньою сторінкою</translation>
+<translation id="7155161204362351654">Покращуйте якість відео й заощаджуйте час роботи акумулятора. Відео відтворюватиметься лише на екрані з підтримкою Google Cast.</translation>
 <translation id="7159953856712257647">Установлено за умовчанням</translation>
 <translation id="7160182524506337403">Тепер ви можете переглядати сповіщення з телефона</translation>
 <translation id="7165263843655074092">Ви ввімкнули стандартний режим безпеки на цьому пристрої</translation>
@@ -8488,7 +8506,7 @@
 <translation id="7406113532070524618">Це налаштування не передбачає вашу ідентифікацію і дозвіл для сайтів на доступ до історії веб-перегляду, хоча сайти можуть надсилати невелику кількість інформації для цілей підтвердження</translation>
 <translation id="740624631517654988">Спливаюче вікно заблоковано</translation>
 <translation id="7406912950279255498">Режим інверсії кольорів</translation>
-<translation id="7407430846095439694">Імпортувати та зв’язати</translation>
+<translation id="7407430846095439694">Імпортувати й зв’язати</translation>
 <translation id="7407504355934009739">Більшість людей блокують усі сповіщення від цього сайту</translation>
 <translation id="7408080603962564527">Цю назву бачитимуть інші користувачі</translation>
 <translation id="740810853557944681">Додайте сервер для друку</translation>
@@ -9029,6 +9047,7 @@
 <translation id="7788948939674438635">Заборонити сайтам блокувати клавіатуру</translation>
 <translation id="7789963078219276159">Фон початкової сторінки було змінено. Тепер це <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">Оптичне розпізнавання символів у файлах PDF</translation>
+<translation id="7790737481627460475">Файли на цьому пристрої Chromebook</translation>
 <translation id="7791269138074599214">Метод введення</translation>
 <translation id="7791429245559955092">Цей додаток буде встановлено в профілі Chrome, який ви зараз використовуєте.</translation>
 <translation id="7791436592012979144">Зворотне прокручування ввімкнено</translation>
@@ -9058,6 +9077,7 @@
 <translation id="7810202088502699111">На цій сторінці спливаючі вікна заблоковано.</translation>
 <translation id="7810367892333449285">Введіть дані у форматі: <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ адреса<ph name="LPA_2" />$<ph name="LPA_3" />необов’язковий ідентифікатор зіставлення<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Повторіть спробу або виберіть одну з раніше створених тем нижче.</translation>
+<translation id="7814090115158024843">Ніколи не пропонувати допомогу з написанням тексту на цих сайтах</translation>
 <translation id="7814458197256864873">&amp;Копіювати</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531">Змінити комбінацію клавіш <ph name="SHORTCUT" /> для розширення <ph name="EXTENSION_NAME" /></translation>
@@ -9289,8 +9309,10 @@
 <translation id="7974936243149753750">Облямівка екрана</translation>
 <translation id="7975504106303186033">Зареєструйте цей пристрій із ліцензією Chrome Education в обліковому записі закладу освіти. Щоб зареєструвати новий обліковий запис, перейдіть на сторінку g.co/workspace/edusignup.</translation>
 <translation id="7977451675950311423">Попереджає, якщо ви використовуєте пароль, який було зламано через порушення безпеки даних.</translation>
+<translation id="797824194429476746">Вкладки залишатимуться відкритими на цьому пристрої, однак групу буде видалено назавжди.</translation>
 <translation id="7978412674231730200">Секретний ключ</translation>
 <translation id="7978450511781612192">Ви вийдете з облікових записів Google. Закладки, історія, паролі тощо більше не синхронізуватимуться.</translation>
+<translation id="7980066177668669492">ASCII з кодуванням Base64, кілька сертифікатів</translation>
 <translation id="7980084013673500153">Ідентифікатор об’єкта: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406">Використати збережений ключ доступу для додатка <ph name="APP_NAME" /></translation>
 <translation id="7981662863948574132">Показати спливаюче вікно з номером EID пристрою та QR-кодом</translation>
@@ -9703,6 +9725,7 @@
 <translation id="8276242035951017580">Немає додатків, яким дозволено використовувати камеру</translation>
 <translation id="8276560076771292512">Очищення кеш-пам’яті й жорстке перезавантаження</translation>
 <translation id="8276850948802942358">Докладніше про те, як надати сайту тимчасовий дозвіл на використання сторонніх файлів cookie</translation>
+<translation id="8277907305629781277">Ви створили цей ключ доступу <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Вебсайти вашими мовами</translation>
 <translation id="828180235270931531">Інші доступні принтери</translation>
 <translation id="8281886186245836920">Пропустити</translation>
@@ -10384,7 +10407,6 @@
 <translation id="8784626084144195648">Сукупне середнє значення</translation>
 <translation id="8785622406424941542">Стилус</translation>
 <translation id="8786824282808281903">Коли відображається цей значок, дитина може використовувати відбиток пальця для підтвердження особи або схвалення покупок.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Група без назви – 1 вкладка}one{Група без назви – # вкладка}few{Група без назви – # вкладки}many{Група без назви – # вкладок}other{Група без назви – # вкладки}}</translation>
 <translation id="8787752878731558379">Поясніть, чому ви дозволили сторонні файли cookie, щоб допомогти нам покращити Chrome</translation>
 <translation id="8789898473175677810">Команда Chrome <ph name="LINK_BEGIN" />спільно з іншими розробниками<ph name="LINK_END" /> прагне зменшити міжсайтове відстеження й поступово відмовитися від використання сторонніх файлів cookie. Ми намагаємося робити це відповідально, оскільки багато сайтів використовують такі файли cookie для належної роботи, наприклад для спрощення входу в обліковий запис, підтримки вбудованих систем чатів і коментарів, а також для платіжних сервісів. Крім того, за допомогою сторонніх файлів cookie рекламодавці часто покращують персоналізацію оголошень. Це важливо, оскільки сайти зазвичай розраховують на рекламу, яка дає змогу оплачувати витрати й залишати онлайн-контент безкоштовним.</translation>
 <translation id="8791157330927639737">Докладніше про оновлення</translation>
@@ -10619,6 +10641,7 @@
 <translation id="8962863356073277855">URL-адреса повинна мати такий формат: https://www.example.com</translation>
 <translation id="8962918469425892674">Цей сайт використовує датчики руху чи світла.</translation>
 <translation id="8963117664422609631">Перейти до налаштувань сайту</translation>
+<translation id="8964795217937248330">Закрити вкладки й видалити групу?</translation>
 <translation id="8965037249707889821">Введіть старий пароль</translation>
 <translation id="8966809848145604011">Інші профілі</translation>
 <translation id="8967427617812342790">Додати в список читання</translation>
@@ -11052,6 +11075,7 @@
 <translation id="979345485590886759">Сайти можуть просити дозвіл заблокувати курсор миші</translation>
 <translation id="980731642137034229">Кнопка меню дій</translation>
 <translation id="981121421437150478">Офлайн</translation>
+<translation id="98235653036850093">Вітаємо, <ph name="PROFILE_NAME" />!</translation>
 <translation id="983192555821071799">Закрити всі вкладки</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – записування з камери й мікрофона</translation>
 <translation id="984275831282074731">Способи оплати</translation>
diff --git a/chrome/app/resources/generated_resources_ur.xtb b/chrome/app/resources/generated_resources_ur.xtb
index 3563767..bc996cc 100644
--- a/chrome/app/resources/generated_resources_ur.xtb
+++ b/chrome/app/resources/generated_resources_ur.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">‏ممکن ہے کہ Linux میں کافی ڈسک اسپیس نہ ہو۔ آپ اپنے Linux ڈسک اسپیس کو بڑھا سکتے ہیں اور <ph name="LINK_START" />ترتیبات<ph name="LINK_END" /> میں دوبارہ بحال کرنے کی کوشش کر سکتے ہیں۔</translation>
 <translation id="1261380933454402672">معتدل</translation>
 <translation id="126156426083987769">ڈیمو موڈ میں آلہ کے لائسنسز سے متعلق ایک مسئلہ پیش آگیا۔</translation>
+<translation id="1261885284931493480">ٹیب (ٹیبز) کو ہٹائیں اور گروپ کو حذف کریں؟</translation>
 <translation id="1263231323834454256">پڑھنے کی فہرست</translation>
 <translation id="1263733306853729545">امیدواروں کی فہرست کا صفحہ بنانے کیلئے، <ph name="MINUS" /> اور <ph name="EQUAL" /> کلیدوں کا استعمال کریں</translation>
 <translation id="126387934568812801">اس اسکرین شاٹ اور کھلے ٹیبز کے عنوانات شامل کریں</translation>
@@ -876,6 +877,7 @@
 <translation id="1634224622052500893">‏Wi-Fi نیٹ ورک ملا</translation>
 <translation id="1634783886312010422">کیا آپ نے پہلے ہی <ph name="WEBSITE" /> پر اس پاس ورڈ کو تبدیل کیا ہے؟</translation>
 <translation id="1636212173818785548">ٹھیک ہے</translation>
+<translation id="1636542522761359943">خوش آمدید، <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760">‏<ph name="BEGIN_PARAGRAPH1" />ایپ ڈیٹا رابطے، پیغامات اور تصاویر سمیت کوئی بھی ایسا ڈیٹا ہو سکتا ہے جسے کسی ایپ نے (ڈویلپر کی ترتیبات کی بنیاد پر) محفوظ کیا ہو۔ بیک اپ ڈیٹا کو آپ کے Drive اسٹوریج کوٹہ میں شمار نہیں کیا جائے گا۔<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />آپ اس سروس کو ترتیبات میں جا کر آف کر سکتے ہیں۔<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">‏اپنے iPhone پر یہ بُک مارک حاصل کریں</translation>
@@ -912,6 +914,7 @@
 <translation id="1652862280638399816">‏macOS Keychain کے ساتھ پاس ورڈ مینیجر کا استعمال کرنے کے لیے، Chromium کو بند کر کے دوبارہ چلائیں اور Keychain تک رسائی کی اجازت دیں۔ بند کر کے دوبارہ چلانے کے بعد، آپ کے ٹیبز دوبارہ کھل جائیں گے۔</translation>
 <translation id="1653958716132599769">گروپ سے متعلقہ ٹیبز</translation>
 <translation id="1654580009054503925">درخواستیں دکھانے کی اجازت نہیں ہے</translation>
+<translation id="1654713139320245449">کاسٹ کی کوئی منزل نہیں ملی۔ مدد درکار ہے؟</translation>
 <translation id="1656528038316521561">پس منظر کا دھندلا پن</translation>
 <translation id="1657406563541664238">‏Google کو استعمال کے اعداد و شمار اور کریش رپورٹس خودکار طور پر بھیج کر <ph name="PRODUCT_NAME" /> کو بہتر بنانے میں مدد کریں</translation>
 <translation id="1657937299377480641">تعلیمی وسائل تک رسائی کے لئے دوبارہ سائن ان کرنے کے لئے، والدین سے کہیں کہ آپ کو اجازت دیں</translation>
@@ -1632,12 +1635,14 @@
 <translation id="2187895286714876935">سرور سرٹیفکیٹ کی درآمد میں خرابی</translation>
 <translation id="2187906491731510095">ایکسٹینشنز اپ ڈیٹ ہو گئیں</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> کھولیں</translation>
+<translation id="2188919919468240749">ٹیب گروپ کو حذف کریں؟</translation>
 <translation id="2190069059097339078">‏WiFi اسناد حاصل کنندہ</translation>
 <translation id="219008588003277019">‏Native Client ماڈیول: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(خالی)</translation>
 <translation id="2190967441465539539">‏Chrome کیمرے اور مائیکروفون تک رسائی حاصل کرنے سے قاصر ہے</translation>
 <translation id="2191754378957563929">آن</translation>
 <translation id="2192505247865591433">منجانب:</translation>
+<translation id="219283042927675668">گروپ میں موجود ٹیبز</translation>
 <translation id="2193365732679659387">ٹرسٹ کی ترتیبات</translation>
 <translation id="2194856509914051091">قابل غور چیزیں</translation>
 <translation id="2195331105963583686">اس وقت کے بعد، آپ اب بھی اس <ph name="DEVICE_TYPE" /> کا استعمال کر سکیں گے، لیکن اب اسے خودکار سافٹ ویئر اور سیکیورٹی اپ ڈیٹس حاصل نہیں ہوں گی</translation>
@@ -1859,6 +1864,7 @@
 <translation id="2350133097354918058">دوبارہ لوڈ کی گئی</translation>
 <translation id="2350182423316644347">ایپلیکیشن شروع ہو رہی ہے…</translation>
 <translation id="235028206512346451">اگر آپ اپنے آلے سے دور ہو جاتے ہیں تو آپ کی اسکرین خودکار طور پر مقفل ہو جائے گی۔ آلہ کے سامنے رہنے پر اسکرین زیادہ دیر تک آن رہے گی۔ اگر آپ مقفل اسکرین استعمال نہیں کر رہے ہیں تو آپ کا آلہ مقفل ہونے کے بجائے سلیپ وضع میں چلا جائے گا۔</translation>
+<translation id="2352305801620974284">‏آپ کے اس آلے پر سائن ان کرنے پر، آپ کو Google اکاؤنٹ سے پاس ورڈز اور بہت کچھ حاصل ہوتا ہے</translation>
 <translation id="2352662711729498748">‎&lt; 1 MB</translation>
 <translation id="2352810082280059586">مقفل اسکرین کے نوٹس خودکار طور پر <ph name="LOCK_SCREEN_APP_NAME" /> میں محفوظ ہوتے ہیں۔ آپ کا حالیہ ترین نوٹ مقفل اسکرین پر باقی رہے گا۔</translation>
 <translation id="2353297238722298836">کیمرا اور مائیکروفون اجازت یافتہ ہے</translation>
@@ -2069,6 +2075,7 @@
 <translation id="249113932447298600">معذرت، آلہ <ph name="DEVICE_LABEL" /> اس وقت تعاون یافتہ نہیں ہے۔</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> زبان کی آواز کا پیش منظر</translation>
 <translation id="2492461744635776704">سرٹیفیکیٹ پر دستخط کرنے کی درخواست تیار ہو رہی ہے</translation>
+<translation id="2492964937550251173">ٹیب (ٹیبز) کو بند اور گروپ کو حذف کریں؟</translation>
 <translation id="249330843868392562">ٹیکسٹ ٹو اسپیچ ترتیبات کھولیں</translation>
 <translation id="2494555621641843783">‏Steam انسٹال نہیں کر سکتے</translation>
 <translation id="2495141202137516054">‏آپ کے Drive سے</translation>
@@ -2238,6 +2245,7 @@
 <translation id="262087792756666314">آپ آسان رسائی کے لیے اس خصوصیت کو پن کر سکتے ہیں؛ سائیڈ پینل کے اوپری حصے میں پن کرنے کے بٹن پر کلک کریں</translation>
 <translation id="2620900772667816510">بلوٹوتھ سپر ریزولوشن</translation>
 <translation id="262154978979441594">‏Google اسسٹنٹ صوتی ماڈل کی تربیت کریں</translation>
+<translation id="2622280935687585828">غیر فعال کردہ سائٹس سے <ph name="SITE_NAME" /> کو ہٹائیں</translation>
 <translation id="26224892172169984">کسی سائٹ کو پروٹوکولز ہینڈل کرنے کی اجازت نہ دیں</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">‏MIDI آلات کو کنٹرول اور دوبارہ پروگرام کرنے کی اجازت ہے</translation>
@@ -2411,6 +2419,7 @@
 <translation id="2743387203779672305">کلپ بورڈ پر کاپی کریں</translation>
 <translation id="274362947316498129">ایک ایپ <ph name="DEVICE_NAME" /> تک رسائی حاصل کرنے کی کوشش کر رہی ہے۔ رسائی کی اجازت دینے کے لیے <ph name="DEVICE_NAME" /> رازداری کا سوئچ آف کریں۔</translation>
 <translation id="2745080116229976798">‏Microsoft کوالیفائڈ سب آرڈینیشن</translation>
+<translation id="2747853844543618313">اپنے <ph name="DEVICE_NAME" /> پر کاسٹ کرنے کی درخواست کو قبول کرنا نہ بھولیں۔</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> میں سائن ان کریں</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">ہجے کے ساتھ گرامر چیک کریں</translation>
@@ -2781,6 +2790,7 @@
 <translation id="3021066826692793094">تتلی</translation>
 <translation id="3021678814754966447">فریم ماخذ &amp;دیکھیں</translation>
 <translation id="3021902017511220299">اسکین ناکام ہوا۔ اس کارروائی کو آپ کے منتظم نے مسدود کر دیا ہے۔</translation>
+<translation id="3022068420678496307">‏ایسا کرنے سے گروپ اس Google اکاؤنٹ سے Chrome میں سائن ان کردہ تمام آلات سے حذف ہو جائے گا۔</translation>
 <translation id="3022361196600037287">‏<ph name="DEVICE" /> کو اس Chromebook سے ہٹا دیا جائے گا اور <ph name="PRIMARY_EMAIL" /> میں محفوظ نہیں کیا جائے گا۔</translation>
 <translation id="3022978424994383087">سمجھ نہیں آئی۔</translation>
 <translation id="3023464535986383522">سننے کیلئے منتخب کریں</translation>
@@ -4060,7 +4070,6 @@
 <translation id="3983586614702900908">ایک نامعلوم وینڈر کی جانب سے آلات</translation>
 <translation id="3983764759749072418">‏Play اسٹور ایپلیکیشنز کو اس آلہ تک رسائی حاصل ہے۔</translation>
 <translation id="3983769721878416534">کلک سے قبل تاخیر</translation>
-<translation id="3983793589497399077">لینز کا استعمال کر کے تلاش کرنے کے لیے کہیں بھی کلک کریں یا گھسیٹیں</translation>
 <translation id="3984135167056005094">ای میل پتہ شامل نہ کریں</translation>
 <translation id="3984159763196946143">ڈیمو وضع کو شروع نہیں کیا جا سکا</translation>
 <translation id="3984431586879874039">اس سائٹ کو آپ کی سیکیورٹی کلید دیکھنے کی اجازت دیں؟</translation>
@@ -4183,6 +4192,7 @@
 <translation id="4078903002989614318">ترتیب دینے اور فہرست کے اختیارات</translation>
 <translation id="4079140982534148664">املا کی بہتر جانچ استعمال کریں</translation>
 <translation id="4082333918978320301">کسی بھی ویب سائٹ کو آپ کا مائیکروفون استعمال کرنے کی اجازت نہیں ہے</translation>
+<translation id="4083735423615351075">‏اس آلے پر ٹیبز کھلے رہیں گے، لیکن گروپ کو اس Google اکاؤنٹ سے Chrome میں سائن ان کردہ تمام آلات سے حذف کر دیا جائے گا۔</translation>
 <translation id="4084682180776658562">بُک مارک</translation>
 <translation id="4084835346725913160"><ph name="TAB_NAME" /> کو بند کریں</translation>
 <translation id="4085298594534903246">‏JavaScript کو اس صفحہ پر مسدود کر دیا گیا۔</translation>
@@ -4192,6 +4202,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">دائیں طرف دکھائیں</translation>
+<translation id="4088879333319441249">ٹیب گروپ کا گروپ ختم کریں؟</translation>
 <translation id="4089235344645910861">ترتیبات محفوظ ہو گئیں۔ مطابقت پذیری شروع ہو گئی۔</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">توثیق شدہ رسائی فعال کریں</translation>
@@ -5673,6 +5684,7 @@
 <translation id="5242724311594467048">"<ph name="EXTENSION_NAME" />" فعال کریں؟</translation>
 <translation id="5243522832766285132">براہ کرم کچھ دیر میں دوبارہ کوشش کریں</translation>
 <translation id="5244234799035360187">‏OneDrive اب Files ایپ میں ظاہر ہوگا</translation>
+<translation id="5244466461749935369">ابھی کیلئے محفوظ رکھیں</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> میں مطابقت پذیری کی جا رہی ہے</translation>
 <translation id="5245610266855777041">اسکول کے اکاؤنٹ کے ساتھ شروع کریں</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> کریش ہوگیا ہے۔ ایپ کو دوبارہ شروع کرنے کیلئے اس غبارہ پر کلک کریں۔</translation>
@@ -5940,6 +5952,7 @@
 <translation id="5453829744223920473">آپ کا بچہ اپنی تمام اسکول ایپس، بُک مارکس اور وسائل کو بالکل اسی طرح استعمال کر سکتا ہے جیسے وہ کلاس میں کرتا ہے۔ اسکول بنیادی اصول سیٹ کرتا ہے۔</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> کے ساتھ</translation>
 <translation id="545484289444831485">تلاش کے مزید نتائج دیکھیں</translation>
+<translation id="5457082343331641453">اپنی تلاش میں شامل کریں</translation>
 <translation id="5457113250005438886">غلط</translation>
 <translation id="5457459357461771897">اپنے کمپیوٹر سے تصاویر، موسیقی اور دیگر میڈیا پڑھیں اور حذف کریں</translation>
 <translation id="5458214261780477893">ڈوراک</translation>
@@ -6417,6 +6430,7 @@
 <translation id="5816434091619127343">پرنٹر میں درخواست کردہ تبدیلیاں کرنے سے پرنٹر ناقابل استعمال ہو جائے گا۔</translation>
 <translation id="581659025233126501">مطابقت پذیری آن کریں</translation>
 <translation id="5817918615728894473">جوڑا بنائيں</translation>
+<translation id="5817963443108180228">واپسی پر خوش آمدید، <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">سبھی ایپلیکیشنز</translation>
 <translation id="5821565227679781414">شارٹ کٹ تخلیق کریں</translation>
 <translation id="5824976764713185207">صفحہ لوڈ ہو جانے کے بعد اسے خودکار طور پر پڑھیں</translation>
@@ -7017,6 +7031,7 @@
 <translation id="6265159465845424232">‏Microsoft فائلز کو Microsoft OneDrive میں کاپی یا منتقل کرنے سے پہلے پوچھیں</translation>
 <translation id="6265687851677020761">پورٹ ہٹائیں</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" /> سے منسلک ہو رہا ہے</translation>
+<translation id="6266984048393265562">پروفائل کو حسب ضرورت بنائیں</translation>
 <translation id="6267166720438879315">اپنی <ph name="HOST_NAME" /> پر توثیق کرنے کیلئے ایک سرٹیفیکیٹ منتخب کریں</translation>
 <translation id="6268252012308737255"><ph name="APP" /> کے ساتھ کھولیں</translation>
 <translation id="6270309713620950855">یاد دہانی خاموش کریں</translation>
@@ -7155,7 +7170,6 @@
 <translation id="6383382161803538830">‏Reading mode اس صفحے پر دستیاب نہیں ہے</translation>
 <translation id="638418309848716977">تعاون یافتہ لنکس</translation>
 <translation id="6384275966486438344">اپنی تلاش کی ترتیبات کو اس سے تبدیل کریں: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{بغیر نام کا گروپ - 1 ٹیب}other{بغیر نام کا گروپ - # ٹیبز}}</translation>
 <translation id="6385149369087767061">انٹرنیٹ سے منسلک ہوں اور دوبارہ کوشش کریں</translation>
 <translation id="6385382178401976503">کارڈ: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">‏وارننگ - تفصیلی لاگنگ فعال ہے، ذیل کے لاگز میں URLs یا دیگر حساس معلومات شامل ہو سکتی ہیں۔ براہ کرم جائزہ لے کر یقینی بنائیں کہ آپ یہ معلومات جمع کروا کر مطمئن ہیں۔</translation>
@@ -7234,6 +7248,7 @@
 <translation id="6445450263907939268">اگر آپ یہ تبدیلیاں نہ چاہیں تو، آپ اپنی پچھلی ترتیبات بحال کر سکتے ہیں۔</translation>
 <translation id="6446213738085045933">ڈیسک ٹاپ شارٹ کٹ بنائیں</translation>
 <translation id="6447842834002726250">کوکیز</translation>
+<translation id="6449554712554071184">ایسا کرنے سے آپ کے آلے سے گروپ مستقل طور پر حذف ہو جائے گا۔</translation>
 <translation id="6450876761651513209">رازداری سے متعلقہ اپنی ترتیبات تبدیل کریں</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> اور 1 دیگر ٹیب}other{<ph name="PAGE_TITLE" /> اور # دیگر ٹیبز}}</translation>
 <translation id="6451689256222386810">اگر آپ اپنا پاس فریز بھول گئے ہیں یا اس ترتیب کو تبدیل کرنا چاہتے ہیں تو <ph name="BEGIN_LINK" />مطابقت پذیری کو دوبارہ ترتیب دیں<ph name="END_LINK" />۔</translation>
@@ -7380,6 +7395,7 @@
 <translation id="6556866813142980365">واپس لائیں</translation>
 <translation id="6556903358015358733">تھیم اور وال پیپر</translation>
 <translation id="6557290421156335491">میرے شارٹ کٹس</translation>
+<translation id="6560061709899140565">دیگر کاسٹ سیشنز دکھائیں</translation>
 <translation id="6560151649238390891">تجویز داخل کر دی گئی</translation>
 <translation id="6561726789132298588">انٹر</translation>
 <translation id="6562117348069327379">ڈاؤن لوڈز ڈائرکٹری میں سسٹم لاگز اسٹور کریں۔</translation>
@@ -7469,6 +7485,7 @@
 <translation id="6635674640674343739">نیٹ ورک کنکشن قائم نہیں کیا جا سکتا۔ اپنا نیٹ ورک کنکشن چیک کریں اور دوبارہ کوشش کریں۔</translation>
 <translation id="663569763553406962">دیکھیں کہ کون سی ایکسٹینشنز کسی سائٹ کو پڑھ یا انہیں تبدیل کر سکتی ہیں</translation>
 <translation id="6635944431854494329">‏مالک ترتیبات &gt; اعلی &gt; Google کو خودکار طور پر ڈائیگناسٹک اور استعمال کا ڈیٹا بھیجیں سے اس خصوصیت کو کنٹرول کر سکتا ہے۔</translation>
+<translation id="6636572589916466933">اپنے <ph name="DEVICE_NAME" /> پر کاسٹ کرنے کی درخواست قبول کریں۔</translation>
 <translation id="6636623428211296678">ذیل میں مزید ترتیبات دریافت کریں یا ابھی مکمل کریں</translation>
 <translation id="6639554308659482635">‏SQLite میموری</translation>
 <translation id="6640268266988685324">ٹیب کھولیں</translation>
@@ -8153,6 +8170,7 @@
 <translation id="715396040729904728">launcher + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">اپنے تاثرات کا اشتراک کریں یا اپنے مسئلہ کی وضاحت کریں۔ اگر ممکن ہو تو اپنے مسئلے کو دوبارہ پیش کرنے کے لیے اقدامات شامل کریں۔</translation>
 <translation id="7154130902455071009">اپنے شروعاتی صفحہ کو اس پر تبدیل کریں: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">‏بہتر معیار کی ویڈیو حاصل کریں اور بیٹری لائف کی بچت کریں۔ ویڈیو صرف آپ کی Cast کیلئے فعال اسکرین پر ہی چلے گی۔</translation>
 <translation id="7159953856712257647">بطور ڈیفالٹ انسٹال ہے</translation>
 <translation id="7160182524506337403">اب آپ اپنے فون کی اطلاعات دیکھ سکتے ہیں</translation>
 <translation id="7165263843655074092">آپ کو اس آلے پر معیاری حفاظتی تحفظ حاصل ہو رہا ہے</translation>
@@ -9011,6 +9029,7 @@
 <translation id="7788948939674438635">سائٹس کو اپنے کی بورڈ کو مقفل کرنے کی اجازت نہ دیں</translation>
 <translation id="7789963078219276159">ابتدائی صفحہ کا پس منظر <ph name="CATEGORY" /> میں تبدیل کر دیا گیا ہے۔</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">‏اس Chromebook پر موجود فائلز</translation>
 <translation id="7791269138074599214">اندراج کا طریقہ</translation>
 <translation id="7791429245559955092">‏یہ ایپلیکیشن آپ کی فی الحال استعمال کردہ Chrome پروفائل پر انسٹال ہو جائے گی</translation>
 <translation id="7791436592012979144">معکوس اسکرولنگ فعال ہے</translation>
@@ -9040,6 +9059,7 @@
 <translation id="7810202088502699111">پاپ اپس کو اس صفحہ پر مسدود کر دیا گیا۔</translation>
 <translation id="7810367892333449285">‏آپ کے اندراج کا فارمیٹ <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ address‏<ph name="LPA_2" />$<ph name="LPA_3" />اختیاری مماثلت والی ID<ph name="LPA_4" /> ہونا چاہیے</translation>
 <translation id="7811263553491007091">دوبارہ کوشش کریں یا ذیل میں پہلے سے تیار کردہ تھیمز میں سے کسی ایک کو منتخب کریں۔</translation>
+<translation id="7814090115158024843">ان سائٹس پر کبھی بھی لکھنے میں مدد کرنے کی پیشکش نہ کریں</translation>
 <translation id="7814458197256864873">&amp;کاپی کریں</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> کے لیے شارٹ کٹ <ph name="SHORTCUT" /> میں ترمیم کریں</translation>
@@ -9271,8 +9291,10 @@
 <translation id="7974936243149753750">اوور سکین</translation>
 <translation id="7975504106303186033">‏آپ کو اس Chrome Education آلے کا اندراج ایک تعلیمی اکاؤنٹ میں کرنا ہوگا۔ نئے اکاؤنٹ کی خاطر سائن اپ کرنے کے لئے، براہ کرم g.co/workspace/edusignup ملاحظہ کریں۔</translation>
 <translation id="7977451675950311423">اگر آپ کوئی ایسا پاس ورڈ استعمال کرتے ہیں جس سے ڈیٹا کی خلاف ورزی میں سمجھوتہ کیا گیا ہو تو آپ کو متنبہ کرتا ہے۔</translation>
+<translation id="797824194429476746">اس آلے پر ٹیبز کھلے رہیں گے، لیکن گروپ مستقل طور پر حذف ہو جائے گا۔</translation>
 <translation id="7978412674231730200">نجی کلید</translation>
 <translation id="7978450511781612192">اس سے آپ اپنے اکاؤنٹ سے سائن آؤٹ ہو جائیں گے۔ آپ کے بُک مارکس، سرگزشت، پاس ورڈز اور بھی بہت کـچھ کی اب مطابقت پذیری نہیں کی جائے گی۔</translation>
+<translation id="7980066177668669492">‏‫Base64-encoded ASCII، متعدد سرٹیفکیٹس</translation>
 <translation id="7980084013673500153">‏اثاثہ ID: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" /> کے لیے محفوظ کردہ پاس کی کا استعمال کریں</translation>
 <translation id="7981662863948574132">‏آلے کی EID اور QR کوڈ کا پاپ اپ دکھائیں</translation>
@@ -9684,6 +9706,7 @@
 <translation id="8276242035951017580">کسی بھی ایپ کو آپ کا کیمرا استعمال کرنے کی اجازت نہیں ہے</translation>
 <translation id="8276560076771292512">خالی کیش اور ہارڈ ری لوڈ</translation>
 <translation id="8276850948802942358">فریق ثالث کوکیز استعمال کرنے کے لیے سائٹ کو عارضی اجازت دینے کے بارے میں مزید جانیں</translation>
+<translation id="8277907305629781277">آپ نے یہ پاس کی <ph name="DATE" /> کو تخلیق کی</translation>
 <translation id="8280267190418431666">آپ کی زبانوں میں ویب سائٹس</translation>
 <translation id="828180235270931531">دیگر دستیاب پرنٹرز</translation>
 <translation id="8281886186245836920">نظر انداز کریں</translation>
@@ -10362,7 +10385,6 @@
 <translation id="8784626084144195648">بنڈ اوسط</translation>
 <translation id="8785622406424941542">اسٹائلس</translation>
 <translation id="8786824282808281903">جب آپ کا بچہ یہ آئیکن دیکھتا ہے تو شناخت کے لیے یا خریداریوں کو منظوری دینے کے لیے فنگر پرنٹ کا استعمال کیا جا سکتا ہے۔</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{بغیر نام کا گروپ - 1 ٹیب}other{بغیر نام کا گروپ - # ٹیبز}}</translation>
 <translation id="8787752878731558379">‏ہمیں یہ بتا کر Chrome کو بہتر بنانے میں ہماری مدد کریں کہ آپ نے فریق ثالث کوکیز کی اجازت کیوں دی</translation>
 <translation id="8789898473175677810">‏کراس سائٹ ٹریکنگ کو کم کرنے اور فریق ثالث کوکیز کے استعمال کو روکنے کے لیے، Chrome ایک <ph name="LINK_BEGIN" />مشترکہ کوشش<ph name="LINK_END" /> کا حصہ ہے۔ لیکن ہم اس کام کو ذمہ داری سے کرنے کی کوشش کر رہے ہیں کیونکہ بہت سی سائٹس ڈیزائن کردہ طریقے کے مطابق کام کرنے کے لیے فریق ثالث کوکیز پر منحصر ہوتی ہیں۔ مثال کے طور پر، بہت سی سائٹس سائن ان کرنے کو آسان بنانے، سرایت کردہ چیٹ اور تبصرہ کے سسٹمز کو سپورٹ کرنے اور ادائیگی کی سروسز کے لیے فریق ثالث کوکیز کا استعمال کرتی ہیں۔ نیز، مشتہرین اکثر اشتہارات کی بہتر طور پر ذاتی نوعیت سازی کے لیے فریق ثالث کوکیز کا استعمال کرتے ہیں۔ یہ بات اہمیت رکھتی ہے کیونکہ سائٹس اکثر اخراجات کی ادائیگی کرنے اور اپنے آن لائن مواد کو بغیر کسی چارج کے برقرار رکھنے میں مدد کے لیے اشتہارات پر منحصر ہوتی ہیں۔</translation>
 <translation id="8791157330927639737">اپ ڈیٹ کرنے کے بارے میں مزید جانیں</translation>
@@ -10597,6 +10619,7 @@
 <translation id="8962863356073277855">‏URL فارمیٹ https://www.example.com ہونا چاہیے</translation>
 <translation id="8962918469425892674">یہ سائٹ موشن یا لائٹ سینسرز کا استعمال کر رہی ہے۔</translation>
 <translation id="8963117664422609631">سائٹ ترتیبات پر جائیں</translation>
+<translation id="8964795217937248330">ٹیب (ٹیبز) کو بند اور گروپ کو حذف کریں؟</translation>
 <translation id="8965037249707889821">پرانا پاس ورڈ درج کریں</translation>
 <translation id="8966809848145604011">دیگر پروفائلز</translation>
 <translation id="8967427617812342790">پڑھنے کی فہرست میں شامل کریں</translation>
@@ -11030,6 +11053,7 @@
 <translation id="979345485590886759">سائٹس آپ کے ماؤس پوائنٹر کو مقفل کرنے کے لیے کہہ سکتی ہیں</translation>
 <translation id="980731642137034229">کارروائی مینیو بٹن</translation>
 <translation id="981121421437150478">آف لائن</translation>
+<translation id="98235653036850093">آداب، <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">سبھی ٹیبز بند کریں</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> - کیمرا اور مائیکروفون سے ریکارڈنگ کی جا رہی ہے</translation>
 <translation id="984275831282074731">ادائیگی کے طریقے</translation>
diff --git a/chrome/app/resources/generated_resources_uz.xtb b/chrome/app/resources/generated_resources_uz.xtb
index 82b2f511..f8f77e7b 100644
--- a/chrome/app/resources/generated_resources_uz.xtb
+++ b/chrome/app/resources/generated_resources_uz.xtb
@@ -365,6 +365,7 @@
 <translation id="1260810365552581339">Linux tizimida boʻsh joy yetarli emas. <ph name="LINK_START" />Sozlamalar<ph name="LINK_END" /> orqali Linux uchun boʻsh joyni oshirishingiz va tiklashga qayta urinishingiz mumkin.</translation>
 <translation id="1261380933454402672">Oʻrtacha</translation>
 <translation id="126156426083987769">Demo rejimdagi qurilmalar litsenziyalari bilan muammo yuz berdi.</translation>
+<translation id="1261885284931493480">Varaq(lar) olib tashlanib, guruh oʻchirilsinmi?</translation>
 <translation id="1263231323834454256">Mutolaa ro‘yxati</translation>
 <translation id="1263733306853729545">Kiritish takliflarini varaqlashda <ph name="MINUS" /> va <ph name="EQUAL" /> tugmalaridan foydalaning</translation>
 <translation id="126387934568812801">Bu skrinshot va ochiq varaqlar nomlarini kiritish</translation>
@@ -874,6 +875,7 @@
 <translation id="1634224622052500893">Wi-Fi tarmoq topildi</translation>
 <translation id="1634783886312010422"><ph name="WEBSITE" /> saytidagi parolingizni allaqachon oʻzgartirdingizmi?</translation>
 <translation id="1636212173818785548">OK</translation>
+<translation id="1636542522761359943">Xush kelibsiz, <ph name="PROFILE_NAME" /></translation>
 <translation id="163712950892155760"><ph name="BEGIN_PARAGRAPH1" />Ilovalarga tegishli maʼlumotlar – bu (dasturchi oʻrnatgan sozlamalarga asoslanib) ilovalar tomonidan saqlangan har qanday maʼlumot, shuningdek, kontaktlar, xabarlar va suratlar boʻlishi mumkin. Zaxiralangan maʼlumotlar Google Drive omboringizdan joy egallamaydi.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Bu xizmatni Sozlamalar orqali oʻchirib qoʻyish mumkin.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="1637224376458524414">Bu xatcho‘pni iPhone’ga saqlang</translation>
@@ -910,6 +912,7 @@
 <translation id="1652862280638399816">MacOS Keychain bilan Parol menejeridan foydalanish uchun Chromium brauzerini qayta ishga tushiring va Keychainʼdan foydalanish ruxsatini bering. Qayta ishga tushirilgandan keyin varaqlar qayta ochiladi.</translation>
 <translation id="1653958716132599769">Oʻxshash varaqlarni guruhlash</translation>
 <translation id="1654580009054503925">Soʻrovlar chiqarishga ruxsat berilmagan</translation>
+<translation id="1654713139320245449">Cast qurilmalari topilmadi. Yordam kerakmi?</translation>
 <translation id="1656528038316521561">Orqa fon shaffofligi</translation>
 <translation id="1657406563541664238">Google’ga foydalanish statistikasi va ishdan chiqish hisobotlarini jo‘natish orqali <ph name="PRODUCT_NAME" />’ni takomillashtirishga yordam bering</translation>
 <translation id="1657937299377480641">Taʼlim manbalaridan foydalanadigan hisobga qayta kirish uchun ota-onangizdan ruxsat oling</translation>
@@ -1630,12 +1633,14 @@
 <translation id="2187895286714876935">Server sertifikatini import qilishda xatolik yuz berdi</translation>
 <translation id="2187906491731510095">Kengaytmalar yangilandi</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" /> ilovasini ochish</translation>
+<translation id="2188919919468240749">Varaqlar guruhi oʻchirilsinmi?</translation>
 <translation id="2190069059097339078">Wi-Fi ruxsat parametrlarini qabul qilish</translation>
 <translation id="219008588003277019">Native Client moduli: <ph name="NEXE_NAME" /></translation>
 <translation id="2190355936436201913">(bo‘sh)</translation>
 <translation id="2190967441465539539">Kamera va mikrofondan foydalanish uchun ruxsat yoʻq</translation>
 <translation id="2191754378957563929">Yoniq</translation>
 <translation id="2192505247865591433">Qayerdan:</translation>
+<translation id="219283042927675668">Guruhdagi varaqlar</translation>
 <translation id="2193365732679659387">Ishonch sozlamalari</translation>
 <translation id="2194856509914051091">Bularni hisobga olish kerak</translation>
 <translation id="2195331105963583686">Bundan keyin ham <ph name="DEVICE_TYPE" /> qurilmasidan foydalanish mumkin, faqatgina uning dasturlari va xavfsizlik sozlamalari avtomatik yangilanmaydi</translation>
@@ -1657,6 +1662,7 @@
 <translation id="2211043920024403606">Profil haqida</translation>
 <translation id="2211245494465528624">Sinxronlash parametrlarini boshqarish</translation>
 <translation id="221297410904507041">Tarix, cookie fayllari, kesh va boshqa maʼlumotlarni oʻchirish</translation>
+<translation id="2213410656650624348">Oʻrtacha</translation>
 <translation id="2214018885812055163">Umumiy jildlar</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 qator kod berkitilgan&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> qator kod berkitilgan&gt;}}</translation>
 <translation id="2215070081105889450">Ovozni ulashish uchun varaq yoki ekranni ulashing</translation>
@@ -1858,6 +1864,7 @@
 <translation id="2350133097354918058">Qayta ishga tushirildi</translation>
 <translation id="2350182423316644347">Ilova ishga tushirilmoqda...</translation>
 <translation id="235028206512346451">Qurilmangizdan uzoqlashsangiz, ekrani avtomatik bloklanadi. Qurilmangiz oldida boʻlganingizda doim ekran yoniq turadi. Ekran qulfidan foydalnmasangiz, qurilmangiz qulflanmasdan uyquga ketadi.</translation>
+<translation id="2352305801620974284">Bu qurilmada hisobga kirilganda Google hisobidagi parollar va boshqa maʼlumotlardan foydalanish mumkin.</translation>
 <translation id="2352662711729498748">&lt; 1 MB</translation>
 <translation id="2352810082280059586">Ekran qulfi qaydlari <ph name="LOCK_SCREEN_APP_NAME" /> ilovasiga avtomatik saqlanadi. Oxirgi qaydlar qulflangan ekranda ko‘rsatiladi.</translation>
 <translation id="2353297238722298836">Kamera va mikrofondan foydalanish mumkin</translation>
@@ -2039,6 +2046,7 @@
 <translation id="2473195200299095979">Bu sahifani tarjima qilish</translation>
 <translation id="2475982808118771221">Xatolik yuz berdi</translation>
 <translation id="247616523300581745">Bu fayllarni yashirish</translation>
+<translation id="2476435723907345463">Kirish kalitlariga ruxsat olib tashlandi</translation>
 <translation id="2476901513051581836">Oflayn xotira hajmi aniqlanmasa, xotirani tozalab boʻlmaydi.</translation>
 <translation id="2476974672882258506"><ph name="PARALLELS_DESKTOP" /> oʻchirib tashlanishi uchun Windows ishini yakunlang.</translation>
 <translation id="2477065602824695373">Bir nechta kalit tugma sozlangani sababli avto-skanerlash faolsizlantirildi.</translation>
@@ -2067,6 +2075,7 @@
 <translation id="249113932447298600">Kechirasiz, <ph name="DEVICE_LABEL" /> qurilmasi ayni vaqtda qo‘llab-quvvatlanmaydi.</translation>
 <translation id="2491587035099903063"><ph name="LANGUAGE" /> ovoz namunasini tinglash</translation>
 <translation id="2492461744635776704">Sertifikatni imzolash talabi tayyorlanmoqda</translation>
+<translation id="2492964937550251173">Varaq(lar) yopilib, guruh oʻchirilsinmi?</translation>
 <translation id="249330843868392562">Nutq sintezatori sozlamalarini ochish</translation>
 <translation id="2494555621641843783">Steam oʻrnatilmadi</translation>
 <translation id="2495141202137516054">Drive omboridan</translation>
@@ -2233,8 +2242,10 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" /> faylini xavfsiz yuklab olish imkonsiz.</translation>
 <translation id="2620245777360407679">Hozirda hotspotga ulangan qurilmalar</translation>
 <translation id="2620436844016719705">Tizim</translation>
+<translation id="262087792756666314">Bu funksiyaga tezkor ruxsat olish uchun yon panelning yuqori qismidagi "Mahkamlash" tugmasini bosing</translation>
 <translation id="2620900772667816510">Bluetooth super aniqlik (sr)</translation>
 <translation id="262154978979441594">Google Assistent ovoz modelini oʻqiting</translation>
+<translation id="2622280935687585828">Istisno saytlardan olib tashlash: <ph name="SITE_NAME" /></translation>
 <translation id="26224892172169984">Hech qanday sayt protokollarga ishlov bera olmasin</translation>
 <translation id="262373406453641243">Colemak</translation>
 <translation id="2624045385113367716">MIDI qurilmalarni boshqarish va qayta dasturlash uchun ruxsat berilgan</translation>
@@ -2408,6 +2419,7 @@
 <translation id="2743387203779672305">Vaqtincha xotiraga nusxalash</translation>
 <translation id="274362947316498129">Ilova <ph name="DEVICE_NAME" />dan foydalanmoqchi. Ruxsat berish uchun <ph name="DEVICE_NAME" /> maxfiylik kalitini oʻchiring.</translation>
 <translation id="2745080116229976798">Microsoft Malakalilarga Bo‘ysunish sertifikatlar xizmati</translation>
+<translation id="2747853844543618313"><ph name="DEVICE_NAME" /> translatsiya soʻrovi qabul qilinganini tekshiring.</translation>
 <translation id="2749756011735116528"><ph name="PRODUCT_NAME" /> hisobiga kirish</translation>
 <translation id="2749836841884031656">SIM</translation>
 <translation id="2749881179542288782">Grammatikani imlo bilan tekshirish</translation>
@@ -2778,6 +2790,7 @@
 <translation id="3021066826692793094">Kapalak</translation>
 <translation id="3021678814754966447">Freym kodini ko‘rish</translation>
 <translation id="3021902017511220299">Tekshirilmadi. Bu amalni administratoringiz bloklagan.</translation>
+<translation id="3022068420678496307">Bunda guruh Chromega Google hisobidan kirilgan barcha qurilmalarda oʻchiriladi.</translation>
 <translation id="3022361196600037287"><ph name="DEVICE" /> qurilmasi bu Chromebookdan olib tashlanadi va <ph name="PRIMARY_EMAIL" /> hisobiga saqlanmaydi.</translation>
 <translation id="3022978424994383087">Yana bir marta qaytaring</translation>
 <translation id="3023464535986383522">Teginib tinglash</translation>
@@ -3008,6 +3021,7 @@
 <translation id="3222066309010235055">Oldindan ishlov berish: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Bunga ulanish: <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Google Lens bilan bu sahifadagi istalgan narsani qidiring</translation>
+<translation id="3223109931751684474">Bu qurilmaning kirish kalitlariga ruxsatini olib tashlash</translation>
 <translation id="3223531857777746191">Asliga qaytarish tugmasi</translation>
 <translation id="3225084153129302039">Standart siyohrang avatar</translation>
 <translation id="3225319735946384299">Kodni imzolash</translation>
@@ -3332,6 +3346,7 @@
 <translation id="3473479545200714844">Ekran lupasi</translation>
 <translation id="3474218480460386727">Yangi soʻzlar kamida 99 harfdan iborat boʻlsin</translation>
 <translation id="3474624961160222204"><ph name="NAME" /> sifatida davom etish</translation>
+<translation id="3477772589943384839">Xotirani oʻrtacha tejash. Varaqlar uzoq vaqt davridan keyin nofaol holatga oʻtadi.</translation>
 <translation id="347785443197175480"><ph name="HOST" /> saytiga kamera va mikrofondan foydalanishga ruxsat berish</translation>
 <translation id="3479357084663933762">Deyteranomaliya</translation>
 <translation id="3479552764303398839">Hozir emas</translation>
@@ -4055,7 +4070,6 @@
 <translation id="3983586614702900908">noma’lum ishlab chiqaruvchining qurilmalari</translation>
 <translation id="3983764759749072418">Play Market ilovalari bu qurilma bilan ishlay oladi.</translation>
 <translation id="3983769721878416534">Bosishdan avvalgi kutish vaqti</translation>
-<translation id="3983793589497399077">Lens bilan qidirish uchun istalgan joyni bosing yoki torting</translation>
 <translation id="3984135167056005094">Email manzil biriktirilmasin</translation>
 <translation id="3984159763196946143">Demo rejimi ishga tushmadi</translation>
 <translation id="3984431586879874039">Bu sayt uchun elektron kalit axborotlariga ruxsat berilsinmi?</translation>
@@ -4092,6 +4106,7 @@
 <translation id="4010036441048359843">Uygʻu berishni yoqish</translation>
 <translation id="4010746393007464819">Debian 12 (Bookworm) yangilanishi chiqdi</translation>
 <translation id="4010917659463429001">Xatcho‘plaringizni mobil qurilmangizda ko‘rish uchun <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Tezkor kirish uchun bu funksiyani mahkamlash mumkin</translation>
 <translation id="4014432863917027322">“<ph name="EXTENSION_NAME" />” kengaytmasi tiklansinmi?</translation>
 <translation id="4015163439792426608">Kengaytmalar ishlatasizmi? Qulay joydan <ph name="BEGIN_LINK" />kengaytmalarni boshqaring<ph name="END_LINK" />.</translation>
 <translation id="4016762287427926315"><ph name="APP_NAME" /> ilovasiga bergan ruxsatlaringiz bu ilova uchun ham amal qiladi. <ph name="BEGIN_LINK" />Boshqarish<ph name="END_LINK" /></translation>
@@ -4177,6 +4192,7 @@
 <translation id="4078903002989614318">Saralash sozlamalari</translation>
 <translation id="4079140982534148664">Kengaytirilgan imlo tekshiruvini ishlatish</translation>
 <translation id="4082333918978320301">Hech qaysi sayt mikrofondan foydalana olmaydi</translation>
+<translation id="4083735423615351075">Varaqlar bu qurilmada ochiq qoladi, ammo guruh Chromega Google hisobidan kirilgan barcha qurilmalardan oʻchirib tashlanadi.</translation>
 <translation id="4084682180776658562">Xatcho‘p</translation>
 <translation id="4084835346725913160">“<ph name="TAB_NAME" />” oynasini yopish</translation>
 <translation id="4085298594534903246">Bu sahifada JavaScript bloklandi.</translation>
@@ -4186,6 +4202,7 @@
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="4087328411748538168">Oʻngda chiqarish</translation>
+<translation id="4088879333319441249">Varaqlar guruhi bekor qilinsinmi?</translation>
 <translation id="4089235344645910861">Sozlamalar saqlandi. Sinxronizatsiya boshlandi.</translation>
 <translation id="4089817585533500276">shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="4090103403438682346">Tekshirilgan ruxsat xizmatini yoqish</translation>
@@ -4395,6 +4412,7 @@
 <translation id="4261429981378979799">Kengaytma ruxsatlari</translation>
 <translation id="4262004481148703251">Ogohlantirishni yopish</translation>
 <translation id="4263223596040212967">Klaviatura tartibini tekshiring va qaytadan urining.</translation>
+<translation id="4263470758446311292">Xotirani maksimal tejash. Varaqlar qisqa vaqt davridan keyin nofaol holatga oʻtadi.</translation>
 <translation id="4265096510956307240">Shaxsni tasdiqlash</translation>
 <translation id="4265301768135164545">eSIM profilini <ph name="BEGIN_LINK" />qoʻlda<ph name="END_LINK" /> sozlash ham mumkin.</translation>
 <translation id="426564820080660648">Mavjud yangilanishlarni tekshirish uchun Ethernet, Wi-Fi yoki mobil internet orqali ulaning.</translation>
@@ -4714,6 +4732,7 @@
 <translation id="4503748371388753124">Kompyuter ishonch platformasi modulining (TPM) xavfsizlik qurilmasi bilan jihozlangan. Undan ChromeOS Flex platformasida ko‘plab jiddiy xavfsizlik funksiyalarini amalga oshirishda foydalanialdi. Batafsil ma’lumotni Chromebook yordam markazidan olishingiz mumkin: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Cookie fayllariga ruxsat berildi}=1{Cookie fayllariga ruxsat berildi, 1 ta istisno}other{Cookie fayllariga ruxsat berildi, {COUNT} ta istisno}}</translation>
 <translation id="4504940961672722399">Bu kengaytmani ikonkasi ustiga bosib yoki <ph name="EXTENSION_SHORTCUT" /> tugmalar birikmasini bosib faollashtiring.</translation>
+<translation id="4505469832694348179">Bu QR kod orqali Chromeni yuklab oling va Google hisobingizga kiring.</translation>
 <translation id="450552327874992444">Soʻz allaqachon kiritilgan</translation>
 <translation id="4507373251891673233"><ph name="HOST" /> saytida barcha kengaytmalar bloklangan</translation>
 <translation id="4507401683427517298">“Yorliq yaratish” ustiga bosing</translation>
@@ -5049,6 +5068,7 @@
 <translation id="4768332406694066911">Sizda haqiqiyligingizni tasdiqlovchi quyidagi tashkilotlar sertifikatlari mavjud</translation>
 <translation id="4769632191812288342">Standart himoya ostidasiz</translation>
 <translation id="4770119228883592393">Ruxsat talabi keldi, javob berish uchun ⌘ + Option + Pastga strelka tugmalarini bosing</translation>
+<translation id="4770755495532014179">Bu paroldan iPhoneda foydalaning</translation>
 <translation id="4773112038801431077">Linux tizimini yangilash</translation>
 <translation id="477548766361111120">Kengaytmaga bu saytni oʻqish va oʻzgartirishga ruxsat berish</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> ulandi</translation>
@@ -5218,6 +5238,7 @@
 <translation id="4890399733764921729">Ulanmadi. Moshqa mobil operator tomonidan qulflangan.</translation>
 <translation id="4890773143211625964">Qo‘shimcha printer sozlamalarini ko‘rsatish</translation>
 <translation id="4891089016822695758">Beta forum</translation>
+<translation id="4891795846939730995">Bu qurilmaning kirish kalitlariga ruxsatini qaytarish uchun sayt yoki lovaga saqlangan kalit orqali kiring</translation>
 <translation id="4892229439761351791">Sayt Bluetooth ishlatishi mumkin</translation>
 <translation id="4892328231620815052">Tayyor boʻlganingizda mutolaa roʻyxatingizni Bukmarklar va roʻyxatlar panelidan topasiz</translation>
 <translation id="489258173289528622">Batareya quvvatidan ishlayotganda kutish amali</translation>
@@ -5663,6 +5684,7 @@
 <translation id="5242724311594467048">“<ph name="EXTENSION_NAME" />” kengaytmasi ishga tushirilsinmi?</translation>
 <translation id="5243522832766285132">Bir necha daqiqadan keyin qayta urining</translation>
 <translation id="5244234799035360187">OneDrive ombori endi Fayllar ilovasida chiqadi</translation>
+<translation id="5244466461749935369">Hozircha qolsin</translation>
 <translation id="5244474230056479698"><ph name="EMAIL" /> hisobiga sinxronlanmoqda</translation>
 <translation id="5245610266855777041">Maktab hisobi bilan ishni boshlang</translation>
 <translation id="5246282308050205996"><ph name="APP_NAME" /> ilovasi ishdan chiqdi. Ilovani qayta ishga tushirish uchun, bu yerga bosing.</translation>
@@ -5931,6 +5953,7 @@
 <translation id="5453829744223920473">Farzandingiz oʻzining barcha maktab ilovalari, bukmarklari va resurslaridan xuddi sinfdagi kabi foydalanishi mumkin. Maktab asosiy qoidalarni belgilaydi.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" /> yordamida</translation>
 <translation id="545484289444831485">Boshqa qidiruv natijalari</translation>
+<translation id="5457082343331641453">Qidiruvga kiritish</translation>
 <translation id="5457113250005438886">Yaroqsiz</translation>
 <translation id="5457459357461771897">Kompyuteringizdagi rasmlar, musiqa va boshqa mediafayllarni ko‘rish va o‘chirib yuborishga ruxsat</translation>
 <translation id="5458214261780477893">Dvorak</translation>
@@ -6408,6 +6431,7 @@
 <translation id="5816434091619127343">So‘ralgan o‘zgartirishlar printerni ishdan chiqarishi mumkin.</translation>
 <translation id="581659025233126501">Sinxronizatsiyani yoqish</translation>
 <translation id="5817918615728894473">Ulanish</translation>
+<translation id="5817963443108180228">Qaytganingizdan mamnunmiz, <ph name="PROFILE_NAME" /></translation>
 <translation id="581911254119283028">barcha ilovalar</translation>
 <translation id="5821565227679781414">Yorliq yaratish</translation>
 <translation id="5824976764713185207">Sahifa yuklanishi bilan ekran avtomatik oʻqilsin</translation>
@@ -6447,6 +6471,7 @@
 <translation id="5846504156837627898">Sayt ruxsatlarini boshqarish</translation>
 <translation id="5846749317653566506">Ranglar tabiiy koʻrinishi uchun ranglarni tuzatish sozlamalarini moslash</translation>
 <translation id="5846807460505171493">Yangilanishlar va ilovalarni oʻrnating. Davom etish orqali siz bu qurilma Google, aloqa operatoringiz va qurilma ishlab chiqaruvchisidan dasturiy yangilanish va ilovalarni mobil internet orqali ham avtomatik ravishda yuklab olishi va oʻrnatishiga rozilik bildirgan hisoblanasiz. Ayrim ilovalar ilova ichida xaridlarni taklif etishi mumkin.</translation>
+<translation id="5848054741303781539">Mustaqil sozlash, joylashuv axborotisiz</translation>
 <translation id="5848319660029558352">Oʻqib eshittirish va matn formati</translation>
 <translation id="5849212445710944278">Allaqachon qo‘shilgan</translation>
 <translation id="584945105664698226">Ovoz tezligi</translation>
@@ -7007,6 +7032,7 @@
 <translation id="6265159465845424232">Microsoft fayllarini OneDrive xizmatiga koʻchirish yoki nusxalashdan oldin soʻralsin</translation>
 <translation id="6265687851677020761">Portni olib tashlash</translation>
 <translation id="6266532094411434237"><ph name="DEVICE" /> qurilmasiga ulanmoqda</translation>
+<translation id="6266984048393265562">Profilni moslash</translation>
 <translation id="6267166720438879315"><ph name="HOST_NAME" /> saytida haqiqiylik tekshiruvi uchun sertifikat tanlang</translation>
 <translation id="6268252012308737255"><ph name="APP" /> orqali ochish</translation>
 <translation id="6270309713620950855">Eslatma ovozi oʻchiq</translation>
@@ -7145,7 +7171,6 @@
 <translation id="6383382161803538830">Bu sahifada oʻqish rejimi ishlamaydi</translation>
 <translation id="638418309848716977">Mos havolalar</translation>
 <translation id="6384275966486438344"><ph name="SEARCH_HOST" /> qidiruv tizimidan foydalanish</translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Nomsiz guruh – 1 ta varaq}other{Nomsiz guruh – # ta varaq}}</translation>
 <translation id="6385149369087767061">Internetga ulanib, qaytadan urining</translation>
 <translation id="6385382178401976503">Bank kartasi: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Diqqat! Batafsil maʼlumotlarni qayd qilish funksiyasi yoqilgan. Ular quyida keltirilgan (jumladan, URL manzillari va boshqa maxfiy maʼlumotlar). Ularni Googlega yuborishga tayyormisiz?</translation>
@@ -7224,6 +7249,7 @@
 <translation id="6445450263907939268">Bu o‘zgarishlarni kiritishni istamagan bo‘lsangiz, avvalgi sozlamalarni tiklashingiz mumkin.</translation>
 <translation id="6446213738085045933">Ish stolida yorliq yaratish</translation>
 <translation id="6447842834002726250">Cookie fayllari</translation>
+<translation id="6449554712554071184">Bunda guruh qurilmadan butunlay oʻchirib tashlanadi.</translation>
 <translation id="6450876761651513209">Maxfiylik sozlamalarini o‘zgartirish</translation>
 <translation id="6451591602925140504">{NUM_PAGES,plural, =0{<ph name="PAGE_TITLE" />}=1{<ph name="PAGE_TITLE" /> va yana 1 ta varaq}other{<ph name="PAGE_TITLE" /> va yana # ta varaq}}</translation>
 <translation id="6451689256222386810">Agar kodli iborani unutsangiz yoki o‘zgartirmoqchi bo‘lsangiz, <ph name="BEGIN_LINK" />sinxronizatsiya sozlamalarini qayta tiklang<ph name="END_LINK" />.</translation>
@@ -7370,6 +7396,7 @@
 <translation id="6556866813142980365">Qaytarish</translation>
 <translation id="6556903358015358733">Mavzu va fon rasmi</translation>
 <translation id="6557290421156335491">Yorliqlarim</translation>
+<translation id="6560061709899140565">Boshqa translatsiya seanslarini chiqarish</translation>
 <translation id="6560151649238390891">Taklif joylandi</translation>
 <translation id="6561726789132298588">enter</translation>
 <translation id="6562117348069327379">Tizim jurnallarini Yuklanmalar jildida saqlash</translation>
@@ -7459,6 +7486,7 @@
 <translation id="6635674640674343739">Tarmoqqa ulanish sozlanmadi. Internetga ulanishni tekshiring va qayta urining.</translation>
 <translation id="663569763553406962">Saytda oʻqishi va yozishi mumkin kengaytmalarni ochish</translation>
 <translation id="6635944431854494329">Qurilma egasi bu funksiyani Sozlamalar &gt; Kengaytirilgan &gt; Google serverlariga diagnostika va foydalanish statistikasini avtomatik yuborish sahifasi orqali boshqarishi mumkin.</translation>
+<translation id="6636572589916466933"><ph name="DEVICE_NAME" /> qurilmangizda translatsiya soʻrovini qabul qiling</translation>
 <translation id="6636623428211296678">Quyida koʻproq sozlamalarni varaqlang yoki hozir yakunlang</translation>
 <translation id="6639554308659482635">SQLite xotirasi</translation>
 <translation id="6640268266988685324">Varaqni ochish</translation>
@@ -7477,6 +7505,7 @@
 <translation id="6648911618876616409">Jiddiy yangilanish o‘rnatish uchun tayyor. Boshlash uchun hisobingizga kiring.</translation>
 <translation id="6649018507441623493">Iltimos, kuting...</translation>
 <translation id="6650206238642452078">ChromeOS tizim hodisalariga obuna boʻlish</translation>
+<translation id="6650584564768559994">Xotirani munozanatli tejash. Varaqlar optimal vaqt davridan keyin nofaol holatga oʻtadi.</translation>
 <translation id="665061930738760572">&amp;Yangi oynada ochish</translation>
 <translation id="6651237644330755633">Saytlarni identifikatsiya qilishda ushbu sertifikat ishonchli deb hisoblansin</translation>
 <translation id="6651495917527016072">Wi-Fi tarmoqlarni telefon orqali sinxronlang. <ph name="LINK_BEGIN" />Batafsil<ph name="LINK_END" /></translation>
@@ -7734,6 +7763,7 @@
 <translation id="6831043979455480757">Tarjima</translation>
 <translation id="6832218595502288407">Chapga tekislash</translation>
 <translation id="6833479554815567477">Varaq <ph name="GROUP_NAME" /> guruhidan olib tashlandi – <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Muvozanatli (tavsiya etiladi)</translation>
 <translation id="6835762382653651563"><ph name="DEVICE_TYPE" /> qurilmasini yangilash uchun Internetga ulaning.</translation>
 <translation id="683630338945552556">Parollarni Google hisobiga saqlash va ishlatish</translation>
 <translation id="6839225236531462745">Sertifikatni o‘chirishda xatolik</translation>
@@ -8141,6 +8171,7 @@
 <translation id="715396040729904728">launcher + shift + <ph name="TOP_ROW_KEY" /></translation>
 <translation id="7154020516215182599">Fikr-mulohazangizni yuboring yoki muammoni tavsiflang. Iloji boʻlsa, muammoni takrorlash uchun qadamlarni kiriting.</translation>
 <translation id="7154130902455071009">Boshlash sahifani quyidagisiga almashtirish: <ph name="START_PAGE" /></translation>
+<translation id="7155161204362351654">Bu funksiya yordamida video sifati yaxshilanadi va batareya davomiyligi oshiriladi. Video faqat cast xususiyatli ekranlarda namoyish etiladi.</translation>
 <translation id="7159953856712257647">Standart oʻrnatildi</translation>
 <translation id="7160182524506337403">Endi siz telefoningizdagi bildirishnomalarni koʻra olasiz</translation>
 <translation id="7165263843655074092">Bu qurilmada standart xavfsizlik sozlamasi amal qiladi</translation>
@@ -8998,6 +9029,7 @@
 <translation id="7788948939674438635">Saytlarga klaviaturani qulflashni taqiqlash</translation>
 <translation id="7789963078219276159">Bosh sahifa fon rasmi almashtirildi: <ph name="CATEGORY" />.</translation>
 <translation id="7790689625219600437">PDF OCR</translation>
+<translation id="7790737481627460475">Mazkur Chromebook fayllari</translation>
 <translation id="7791269138074599214">Kiritish uslubi</translation>
 <translation id="7791429245559955092">Bu ilova joriy Chrome profiliga oʻrnatiladi</translation>
 <translation id="7791436592012979144">Teskari varaqlash yoniq</translation>
@@ -9027,6 +9059,7 @@
 <translation id="7810202088502699111">Qalqib chiquvchi oynalar bloklandi.</translation>
 <translation id="7810367892333449285">Xatosiz formatda kiritilishi zarur <ph name="LPA_0" />$<ph name="LPA_1" />SM-DP+ manzil<ph name="LPA_2" />$<ph name="LPA_3" />ixtiyoriy mos id<ph name="LPA_4" /></translation>
 <translation id="7811263553491007091">Qaytadan urining yoki quyida avval yaratilgan mavzulardan birini tanlang.</translation>
+<translation id="7814090115158024843">Bu saytlarda hech qachon yozishda yordam taklif qilinmasin</translation>
 <translation id="7814458197256864873">&amp;Nuxsa olish</translation>
 <translation id="7814857791038398352">Microsoft OneDrive</translation>
 <translation id="7815583197273433531"><ph name="EXTENSION_NAME" /> uchun <ph name="SHORTCUT" /> tezkor tugmasini tahrirlash</translation>
@@ -9258,8 +9291,10 @@
 <translation id="7974936243149753750">Ekran hoshiyasi</translation>
 <translation id="7975504106303186033">Bu qurilmani Chrome Education litsenziyasi bilan oʻquv hisobida roʻyxatdan oʻtkazing. Yangi hisob yaratish uchun g.co/workspace/edusignup sahifasini oching.</translation>
 <translation id="7977451675950311423">Maʼlumotlar sizishi natijasida oshkor boʻlgan paroldan foydalansangiz, sizni ogohlantiradi.</translation>
+<translation id="797824194429476746">Varaqlar bu qurilmada ochiq qoladi, ammo guruh butunlay oʻchirib tashlanadi.</translation>
 <translation id="7978412674231730200">Xususiy kalit</translation>
 <translation id="7978450511781612192">Google hisobingizdan chiqarilasiz. Xatcho‘p, tarix va parollaringiz boshqa sinxronlanmaydi.</translation>
+<translation id="7980066177668669492">Base64 shifrida kodlangan ASCII, bir nechta sertifikat</translation>
 <translation id="7980084013673500153">Obyekt identifikatori: <ph name="ASSET_ID" /></translation>
 <translation id="7981410461060625406"><ph name="APP_NAME" /> ilovasiga saqlangan kalit orqali kiring</translation>
 <translation id="7981662863948574132">Qurilma EID raqami va QR kod oynasini ochish</translation>
@@ -9382,6 +9417,7 @@
 <translation id="8066444921260601116">Ulanish oynasi</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> joylashuv axborotiga ruxsat</translation>
 <translation id="8070662218171013510">Sezgir aloqa</translation>
+<translation id="8071033114691184017">Bu paroldan iPhoneda foydalaning</translation>
 <translation id="8071432093239591881">Rasm sifatida chop etish</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Ilovaga tegishli axborotlar – bu, ilovalar tomonidan saqlangan (dasturchi o‘rnatgan sozlamalarga asoslanib) kontaktlar, xabarlar va rasmlar kabi maʼlumotlar<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Zaxiralangan axborotlar farzandingizning Drive ombori sigʻimiga ta’sir qilmaydi.<ph name="END_PARAGRAPH2" />
@@ -9670,6 +9706,7 @@
 <translation id="8276242035951017580">Hech qaysi ilova kameradan foydalana olmaydi</translation>
 <translation id="8276560076771292512">Keshni tozalash va qurilmani qaytadan ishga tushirish</translation>
 <translation id="8276850948802942358">Saytga tashqi cookie fayllaridan foydalanishga vaqtinchalik ruxsat berish haqida batafsil</translation>
+<translation id="8277907305629781277">Bu kalit ysatilgan sana: <ph name="DATE" /></translation>
 <translation id="8280267190418431666">Saytlar ona tilingizda</translation>
 <translation id="828180235270931531">Boshqa mavjud printerlar</translation>
 <translation id="8281886186245836920">Tashlab ketish</translation>
@@ -9949,6 +9986,7 @@
 <translation id="8482077254400484047">Nofaol varaqlar koʻrinishini shu yerdan boshqaring</translation>
 <translation id="8483248364096924578">IP manzil</translation>
 <translation id="8486666913807228950">Sababi: “Majburiy ochish” roʻyxatida <ph name="REVERT_RULE" /> teskari qoida topildi.</translation>
+<translation id="8487303289354211861">Mahkamlandi! Unga kirishda asboblar panelidagi yangi tugmadan foydalaning.</translation>
 <translation id="8487678622945914333">Yaqinlashtirish</translation>
 <translation id="8487699605742506766">Hotspot</translation>
 <translation id="8489156414266187072">Shaxsiy takliflar faqat sizning hisobda chiqadi</translation>
@@ -10347,7 +10385,6 @@
 <translation id="8784626084144195648">Guruhlar bo‘yicha o‘rtachasi</translation>
 <translation id="8785622406424941542">Stilus</translation>
 <translation id="8786824282808281903">Farzandingiz bu belgini koʻrganda, kimligini yoki xaridlarni tasdiqlash uchun barmoq izidan foydalanishi mumkin.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Nomsiz guruh – 1 ta varaq}other{Nomsiz guruh – # ta varaq}}</translation>
 <translation id="8787752878731558379">Tashqi cookie fayllarga nega ruxsat berganingiz sababini yozish orqali Chromeni yaxshilashimizga yordam bering</translation>
 <translation id="8789898473175677810">Chrome saytlararo kuzatuvni kamaytirish hamda tashqi cookie fayllari ishlatilishini tugatishga qaratilgan <ph name="LINK_BEGIN" />hamkorlik dasturining<ph name="LINK_END" /> ishtirokchisi hisoblanadi. Aksariyat saytlar tashqi cookie fayllaridan muvofiq tarzda foydalanishi sababli biz bu oʻzgarishlarni masʼuliyat bilan kiritishga harakat qilamiz. Masalan, aksariyat saytlar hisobga kirishni osonlashtirish, ichki joylangan chat va fikr qoldirish hamda toʻlov tizimlarini dastaklash maqsadida tashqi cookie fayllaridan foydalanishi mumkin. Shuningdek, reklama beruvchilar odatda moslashtirilgan reklamani yaxshilashda tashqi cookie fayllaridan foydalanishi mumkin. Bu juda muhim masala, chunki saytlar odatda bepul kontent taqdim etish uchun xarajatlarini qoplashda reklamadan foydalanishi mumkin.</translation>
 <translation id="8791157330927639737">Yangilash haqida batafsil</translation>
@@ -10582,6 +10619,7 @@
 <translation id="8962863356073277855">URL manzil https://www.example.com formatida boʻlsin</translation>
 <translation id="8962918469425892674">Bu sayt harakat yoki yorug‘lik sensorlaridan foydalanmoqda.</translation>
 <translation id="8963117664422609631">Sayt sozlamalarini ochish</translation>
+<translation id="8964795217937248330">Varaq(lar) yopilib, guruh oʻchirilsinmi?</translation>
 <translation id="8965037249707889821">Eski parolni kiriting</translation>
 <translation id="8966809848145604011">Boshqa profillar</translation>
 <translation id="8967427617812342790">Mutolaa ro‘yxatiga qo‘shish</translation>
@@ -10661,6 +10699,7 @@
 <translation id="9014674417732091912"><ph name="ROW_NUMBER" />-qatorga olindi</translation>
 <translation id="901668144954885282">Google Drive omboriga zaxiralash</translation>
 <translation id="9016827136585652292">maxfiylik ekrani tugmasi</translation>
+<translation id="9017055559700464094">Mahkamlandi! Endi unga asboblar panelidan kirish mumkin.</translation>
 <translation id="90181708067259747">Amal qilish muddati: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">O‘rnatildi.</translation>
 <translation id="901876615920222131">Guruhni qayta ochish uchun guruh ustiga bosing</translation>
@@ -10819,6 +10858,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Toʻliq foydalanish uchun <ph name="DEVICE_OS" /> tizimini tashqi diskka oʻrnating. Uni keyinroq kirish ekranidan oʻrnatish ham mumkin.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Oʻrnatish uchun tayyor boʻlmasangiz, uni USB orqali ishga tushirib, sinab koʻrishingiz mumkin. Mavjud operatsion tizim va maʼlumotlaringiz saqlanib qoladi, lekin xotira va unumdorlik cheklovlari oshishi mumkin.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Qadalgan ichki oyna sifatida ochish</translation>
+<translation id="9122788874051694311">Bu kalit Inkognito rejimidan tashqarida saqlansinmi?</translation>
 <translation id="9123287046453017203">Qurilmangiz dasturi eskirdi</translation>
 <translation id="9125910124977405374"><ph name="LANGUAGE_NAME" /> tiliga avtomatik tarjima qilinmasin</translation>
 <translation id="9126149354162942022">Kursor rangi</translation>
@@ -11013,6 +11053,7 @@
 <translation id="979345485590886759">Saytlar sichqoncha kursorini qulflash uchun ruxsat soʻrashi mumkin</translation>
 <translation id="980731642137034229">Amal menyusi tugmasi</translation>
 <translation id="981121421437150478">Oflayn</translation>
+<translation id="98235653036850093">Salom, <ph name="PROFILE_NAME" /></translation>
 <translation id="983192555821071799">Barcha varaqlarni yopish</translation>
 <translation id="983531994960412650"><ph name="WINDOW_TITLE" /> – Kamera va mikrofon yozib olmoqda</translation>
 <translation id="984275831282074731">To‘lov usullari</translation>
diff --git a/chrome/app/resources/generated_resources_vi.xtb b/chrome/app/resources/generated_resources_vi.xtb
index 42ac786..7d91dd3 100644
--- a/chrome/app/resources/generated_resources_vi.xtb
+++ b/chrome/app/resources/generated_resources_vi.xtb
@@ -4081,7 +4081,6 @@
 <translation id="3983586614702900908">thiết bị từ nhà cung cấp không xác định</translation>
 <translation id="3983764759749072418">Các ứng dụng trên Cửa hàng Play có quyền truy cập vào thiết bị này.</translation>
 <translation id="3983769721878416534">Độ trễ trước khi nhấp chuột</translation>
-<translation id="3983793589497399077">Nhấp vào một đối tượng hoặc kéo để chọn khu vực bạn muốn tìm kiếm bằng Ống kính</translation>
 <translation id="3984135167056005094">Không gửi địa chỉ email</translation>
 <translation id="3984159763196946143">Không thể khởi động chế độ trình diễn</translation>
 <translation id="3984431586879874039">Cho phép trang web này xem khóa bảo mật của bạn?</translation>
@@ -7183,7 +7182,6 @@
 <translation id="6383382161803538830">Chế độ đọc không hoạt động trên trang này</translation>
 <translation id="638418309848716977">Các đường liên kết được hỗ trợ</translation>
 <translation id="6384275966486438344">Thay đổi cài đặt tìm kiếm của bạn thành: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Nhóm chưa có tên – 1 thẻ}other{Nhóm chưa có tên – # thẻ}}</translation>
 <translation id="6385149369087767061">Hãy kết nối Internet rồi thử lại</translation>
 <translation id="6385382178401976503">Thẻ: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Cảnh báo – Tính năng ghi nhật ký chi tiết đang bật; những nhật ký dưới đây có thể bao gồm các URL hoặc thông tin nhạy cảm khác. Vui lòng xem lại và đảm bảo rằng bạn cảm thấy thoải mái khi gửi thông tin này.</translation>
@@ -10403,7 +10401,6 @@
 <translation id="8784626084144195648">Trung bình phân tổ</translation>
 <translation id="8785622406424941542">Bút cảm ứng</translation>
 <translation id="8786824282808281903">Khi biểu tượng này xuất hiện, con bạn có thể dùng vân tây để nhận dạng hoặc phê duyệt các giao dịch mua.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Nhóm chưa có tên – 1 thẻ}other{Nhóm chưa có tên – # thẻ}}</translation>
 <translation id="8787752878731558379">Hãy chia sẻ lý do bạn cho phép cookie của bên thứ ba để giúp chúng tôi cải thiện Chrome</translation>
 <translation id="8789898473175677810">Chrome cũng đóng góp vào <ph name="LINK_BEGIN" />nỗ lực chung<ph name="LINK_END" /> nhằm giảm hoạt động theo dõi trên nhiều trang web và loại bỏ việc sử dụng cookie của bên thứ ba. Tuy nhiên, chúng tôi đang cố gắng thực hiện mục tiêu này một cách có trách nhiệm vì nhiều trang web cần có cookie của bên thứ ba để hoạt động như dự kiến. Ví dụ: Nhiều trang web sử dụng cookie của bên thứ ba để đơn giản hoá quy trình đăng nhập, hỗ trợ hệ thống trò chuyện và bình luận được nhúng trên trang web cũng như hỗ trợ các dịch vụ thanh toán. Ngoài ra, các nhà quảng cáo thường sử dụng cookie của bên thứ ba để cá nhân hoá quảng cáo hiệu quả hơn. Mục đích sử dụng này rất quan trọng vì các trang web thường dựa vào quảng cáo để trang trải chi phí và duy trì việc cung cấp nội dung miễn phí trên mạng.</translation>
 <translation id="8791157330927639737">Tìm hiểu thêm về việc cập nhật</translation>
diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/resources/generated_resources_zh-CN.xtb
index 753059a..2d5f967 100644
--- a/chrome/app/resources/generated_resources_zh-CN.xtb
+++ b/chrome/app/resources/generated_resources_zh-CN.xtb
@@ -4049,7 +4049,6 @@
 <translation id="3983586614702900908">来自未知供应商的设备</translation>
 <translation id="3983764759749072418">Play 商店中的应用有权访问此设备。</translation>
 <translation id="3983769721878416534">点击前延迟</translation>
-<translation id="3983793589497399077">点击或拖动任意位置即可使用智能镜头搜索</translation>
 <translation id="3984135167056005094">不附带电子邮件地址</translation>
 <translation id="3984159763196946143">无法启动演示模式</translation>
 <translation id="3984431586879874039">允许此网站查看您的安全密钥?</translation>
@@ -7142,7 +7141,6 @@
 <translation id="6383382161803538830">此页面不支持朗读模式</translation>
 <translation id="638418309848716977">支持的链接</translation>
 <translation id="6384275966486438344">将您的搜索设置更改为:<ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{未命名群组 - 1 个标签页}other{未命名群组 - # 个标签页}}</translation>
 <translation id="6385149369087767061">请连接到互联网,然后重试</translation>
 <translation id="6385382178401976503">银行卡:<ph name="CARD" /></translation>
 <translation id="6385994920693662133">警告 - 详细记录功能已启用。以下日志中可能会包含网址或其他敏感信息。请检查并确保您同意提交这些信息。</translation>
@@ -10351,7 +10349,6 @@
 <translation id="8784626084144195648">按区段计算的平均值</translation>
 <translation id="8785622406424941542">触控笔</translation>
 <translation id="8786824282808281903">当您的孩子看到此图标时,他/她可以使用指纹验证身份或批准购买交易。</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{未命名群组 - 1 个标签页}other{未命名群组 - # 个标签页}}</translation>
 <translation id="8787752878731558379">请告诉我们您允许使用第三方 Cookie 的原因,以帮助我们改进 Chrome</translation>
 <translation id="8789898473175677810">Chrome 和<ph name="LINK_BEGIN" />许多浏览器共同致力于<ph name="LINK_END" />减少跨网站跟踪并逐步弃用第三方 Cookie。但我们力求以负责任的方式实现这一目标,因为许多网站都依赖第三方 Cookie 才能按预期运行。例如,许多网站使用第三方 Cookie 来简化登录流程、支持嵌入式聊天和评论系统,以及提供付款服务。广告主往往会使用第三方 Cookie 来更好地展示个性化广告。这一点很重要,因为网站通常依靠广告来支付费用,以便持续提供免费的在线内容。</translation>
 <translation id="8791157330927639737">详细了解更新</translation>
diff --git a/chrome/app/resources/generated_resources_zh-HK.xtb b/chrome/app/resources/generated_resources_zh-HK.xtb
index ba979a8..1c7b0c1 100644
--- a/chrome/app/resources/generated_resources_zh-HK.xtb
+++ b/chrome/app/resources/generated_resources_zh-HK.xtb
@@ -1668,6 +1668,7 @@
 <translation id="2211043920024403606">設定檔資料</translation>
 <translation id="2211245494465528624">管理同步處理選項</translation>
 <translation id="221297410904507041">刪除記錄、Cookie、快取等資料</translation>
+<translation id="2213410656650624348">中等</translation>
 <translation id="2214018885812055163">共用的資料夾</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;有 1 行代碼未有顯示&gt;}other{&lt;有 <ph name="NUMBER_OF_LINES" /> 行代碼未顯示&gt;}}</translation>
 <translation id="2215070081105889450">如要分享音訊,請改為分享分頁或畫面</translation>
@@ -2050,6 +2051,7 @@
 <translation id="2473195200299095979">翻譯這個網頁</translation>
 <translation id="2475982808118771221">發生錯誤</translation>
 <translation id="247616523300581745">隱藏這些檔案</translation>
+<translation id="2476435723907345463">已移除密鑰存取權</translation>
 <translation id="2476901513051581836">必須得知離線儲存空間大小,才能清理儲存空間。</translation>
 <translation id="2476974672882258506">關閉 Windows 即可解除安裝 <ph name="PARALLELS_DESKTOP" />。</translation>
 <translation id="2477065602824695373">由於您已設定多個按鈕裝置,因此自動掃瞄已關閉。</translation>
@@ -2244,6 +2246,7 @@
 <translation id="2620215283731032047">無法安全下載「<ph name="FILE_NAME" />」。</translation>
 <translation id="2620245777360407679">裝置目前已連線至熱點</translation>
 <translation id="2620436844016719705">系統</translation>
+<translation id="262087792756666314">你可以固定呢個功能方便存取;㩒一下側面板頂部嘅「固定」按鈕</translation>
 <translation id="2620900772667816510">超解像度藍牙</translation>
 <translation id="262154978979441594">訓練「Google 助理」語音模型</translation>
 <translation id="26224892172169984">不允許任何網站處理通訊協定</translation>
@@ -3019,6 +3022,7 @@
 <translation id="3222066309010235055">預先轉譯:<ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">連接至 <ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">透過「Google 智能鏡頭」搜尋此頁面上的所有內容</translation>
+<translation id="3223109931751684474">移除在此裝置的密鑰存取權</translation>
 <translation id="3223531857777746191">重設按鈕</translation>
 <translation id="3225084153129302039">預設紫色圖片</translation>
 <translation id="3225319735946384299">代碼簽名</translation>
@@ -3343,6 +3347,7 @@
 <translation id="3473479545200714844">放大鏡</translation>
 <translation id="3474218480460386727">新字詞請保持在 99 個字母內</translation>
 <translation id="3474624961160222204">以「<ph name="NAME" />」的身分繼續</translation>
+<translation id="3477772589943384839">節省中等記憶體。分頁會在較長時段過後進入閒置狀態。</translation>
 <translation id="347785443197175480">繼續允許 <ph name="HOST" /> 存取您的相機和麥克風</translation>
 <translation id="3479357084663933762">綠色弱視</translation>
 <translation id="3479552764303398839">略過</translation>
@@ -4064,7 +4069,6 @@
 <translation id="3983586614702900908">來自未知供應商的裝置</translation>
 <translation id="3983764759749072418">「Play 商店」應用程式可存取此裝置。</translation>
 <translation id="3983769721878416534">點擊前延遲</translation>
-<translation id="3983793589497399077">在任何地方按一下或拖曳,即可透過「智能鏡頭」搜尋</translation>
 <translation id="3984135167056005094">請勿包括電郵地址</translation>
 <translation id="3984159763196946143">無法啟動示範模式</translation>
 <translation id="3984431586879874039">要允許此網站查看您的安全密鑰嗎?</translation>
@@ -4101,6 +4105,7 @@
 <translation id="4010036441048359843">開啟突顯功能</translation>
 <translation id="4010746393007464819">可以升級至 Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">如要在所有裝置上查看書籤,請<ph name="GET_IOS_APP_LINK" />。</translation>
+<translation id="4012268176861210196">你可固定此功能,以便之後存取</translation>
 <translation id="4014432863917027322">修復「<ph name="EXTENSION_NAME" />」?</translation>
 <translation id="4015163439792426608">您有使用擴充程式嗎?集中<ph name="BEGIN_LINK" />管理擴充程式<ph name="END_LINK" />,輕鬆又方便。</translation>
 <translation id="4016762287427926315">如果你將權限授予「<ph name="APP_NAME" />」,這些應用程式亦會取得同樣的權限。<ph name="BEGIN_LINK" />管理<ph name="END_LINK" /></translation>
@@ -4402,6 +4407,7 @@
 <translation id="4261429981378979799">擴充程式權限</translation>
 <translation id="4262004481148703251">關閉警告</translation>
 <translation id="4263223596040212967">請檢查您的鍵盤版面配置,然後再試一次。</translation>
+<translation id="4263470758446311292">節省最多記憶體。分頁會在較短時段過後進入閒置狀態。</translation>
 <translation id="4265096510956307240">驗證身分</translation>
 <translation id="4265301768135164545">你亦可<ph name="BEGIN_LINK" />手動<ph name="END_LINK" />設定 eSIM 設定檔</translation>
 <translation id="426564820080660648">如要檢查更新,請使用乙太網絡、Wi-Fi 或流動數據。</translation>
@@ -4721,6 +4727,7 @@
 <translation id="4503748371388753124">您的電腦具有可信任平台模組 (TPM) 安全性裝置,ChromeOS Flex 需要透過該裝置來執行許多重要的安全防護功能。如要瞭解詳情,請瀏覽 Chromebook 說明中心:https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{已允許 Cookie}=1{已允許 Cookie,有 1 個例外情況}other{已允許 Cookie,有 {COUNT} 個例外情況}}</translation>
 <translation id="4504940961672722399">按一下這個圖示或按下 <ph name="EXTENSION_SHORTCUT" />,即可使用這項擴充功能。</translation>
+<translation id="4505469832694348179">使用此 QR 碼下載 Chrome,然後登入 Google 帳戶。</translation>
 <translation id="450552327874992444">已新增的字詞</translation>
 <translation id="4507373251891673233">您已封鎖所有來自 <ph name="HOST" /> 的擴充程式</translation>
 <translation id="4507401683427517298">按一下 [新增捷徑]</translation>
@@ -5056,6 +5063,7 @@
 <translation id="4768332406694066911">您具備下列組織的識別憑證</translation>
 <translation id="4769632191812288342">你將獲得標準保護功能</translation>
 <translation id="4770119228883592393">要求咗權限,㩒 ⌘ + Option + 向下箭咀就可以回覆</translation>
+<translation id="4770755495532014179">在 iPhone 上使用此密碼</translation>
 <translation id="4773112038801431077">升級 Linux</translation>
 <translation id="477548766361111120">允許擴充程式讀取並變更此網站</translation>
 <translation id="4776311127346151860">連接咗<ph name="DEVICE_NAME" /></translation>
@@ -5225,6 +5233,7 @@
 <translation id="4890399733764921729">無法連接。已由其他流動服務供應商鎖定。</translation>
 <translation id="4890773143211625964">顯示進階打印機選項</translation>
 <translation id="4891089016822695758">Chrome 測試版論壇</translation>
+<translation id="4891795846939730995">如要再次授予此裝置密鑰存取權,請使用已儲存的密鑰登入網站或應用程式</translation>
 <translation id="4892229439761351791">網站可以使用藍牙</translation>
 <translation id="4892328231620815052">準備就緒後,即可在「書籤」和「清單」中查看閱讀清單</translation>
 <translation id="489258173289528622">用緊電池時嘅閒置動作</translation>
@@ -6452,6 +6461,7 @@
 <translation id="5846504156837627898">管理網站權限</translation>
 <translation id="5846749317653566506">調整色彩校正設定,確保顏色呈現明顯變化</translation>
 <translation id="5846807460505171493">安裝更新和應用程式。繼續操作即代表您同意此裝置亦可自動下載及安裝由 Google、您的流動網絡供應商及裝置製造商提供的更新和應用程式 (可能會耗用流動數據)。其中部分應用程式可能會提供應用程式內購買項目。</translation>
+<translation id="5848054741303781539">手動設定,不使用位置</translation>
 <translation id="5848319660029558352">朗讀同文字格式設定</translation>
 <translation id="5849212445710944278">已加入</translation>
 <translation id="584945105664698226">語音速度</translation>
@@ -7150,7 +7160,6 @@
 <translation id="6383382161803538830">閱讀模式無法在此頁面上使用</translation>
 <translation id="638418309848716977">支援的連結</translation>
 <translation id="6384275966486438344">變更您的搜尋設定為:<ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{未命名的群組 - 1 個分頁}other{未命名的群組 - # 個分頁}}</translation>
 <translation id="6385149369087767061">請連接互聯網,然後再試一次</translation>
 <translation id="6385382178401976503">付款卡:<ph name="CARD" /></translation>
 <translation id="6385994920693662133">警告:已啟用詳細記錄功能;以下記錄可能包含網址或其他敏感資料。請審閱並確認您是否同意提交這些資料。</translation>
@@ -7482,6 +7491,7 @@
 <translation id="6648911618876616409">已準備好安裝重要更新。登入即可開始更新。</translation>
 <translation id="6649018507441623493">請稍候...</translation>
 <translation id="6650206238642452078">訂閱 ChromeOS 系統事件</translation>
+<translation id="6650584564768559994">平衡地節省記憶體。分頁會在最佳時間長度過後進入閒置狀態。</translation>
 <translation id="665061930738760572">在新視窗中開啟(&amp;N)</translation>
 <translation id="6651237644330755633">信任這個用來識別網站的憑證</translation>
 <translation id="6651495917527016072">將 Wi-Fi 網絡設定同步至您的手機。<ph name="LINK_BEGIN" />瞭解詳情<ph name="LINK_END" /></translation>
@@ -7739,6 +7749,7 @@
 <translation id="6831043979455480757">翻譯</translation>
 <translation id="6832218595502288407">靠左對齊</translation>
 <translation id="6833479554815567477">分頁已經由包含「<ph name="GROUP_CONTENTS" />」嘅「<ph name="GROUP_NAME" />」群組度移除</translation>
+<translation id="6833753236242482566">平衡 (建議)</translation>
 <translation id="6835762382653651563">請連接互聯網以更新 <ph name="DEVICE_TYPE" />。</translation>
 <translation id="683630338945552556">將密碼儲存至 Google 帳戶並自動填入</translation>
 <translation id="6839225236531462745">憑證刪除錯誤</translation>
@@ -9389,6 +9400,7 @@
 <translation id="8066444921260601116">連線對話框</translation>
 <translation id="8070572887926783747"><ph name="APP_NAME" /> 位置權限</translation>
 <translation id="8070662218171013510">觸感反應</translation>
+<translation id="8071033114691184017">在 iPhone 上使用此密碼</translation>
 <translation id="8071432093239591881">以圖片形式列印</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />應用程式資料泛指應用程式根據開發人員設定所儲存的任何資料,包括聯絡人、訊息和相片等資料。<ph name="END_PARAGRAPH1" />
 <ph name="BEGIN_PARAGRAPH2" />備份資料將不會佔用您子女的「雲端硬碟」儲存空間配額。<ph name="END_PARAGRAPH2" />
@@ -9956,6 +9968,7 @@
 <translation id="8482077254400484047">在此管理閒置分頁的外觀</translation>
 <translation id="8483248364096924578">IP 位址</translation>
 <translation id="8486666913807228950">原因:在「強制開啟方式」清單中找到反轉規則 <ph name="REVERT_RULE" />。</translation>
+<translation id="8487303289354211861">固定咗!你可以透過工具列嘅新按鈕用多次呢個功能</translation>
 <translation id="8487678622945914333">放大</translation>
 <translation id="8487699605742506766">熱點</translation>
 <translation id="8489156414266187072">個人建議只會在您的帳戶上顯示</translation>
@@ -10354,7 +10367,6 @@
 <translation id="8784626084144195648">二進位化平均</translation>
 <translation id="8785622406424941542">觸控筆</translation>
 <translation id="8786824282808281903">當子女看到此圖示時,可以使用指紋識別身份或核准購物交易。</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{未命名的群組 - 1 個分頁}other{未命名的群組 - # 個分頁}}</translation>
 <translation id="8787752878731558379">請說明你允許使用第三方 Cookie 的原因,協助我們改善 Chrome</translation>
 <translation id="8789898473175677810">Chrome 參與了<ph name="LINK_BEGIN" />合作計劃<ph name="LINK_END" />,旨在減少跨網站追蹤,並逐步淘汰第三方 Cookie。不過,我們致力以負責任的方式達成目的,因為很多網站都依賴第三方 Cookie 才能如期運作。例如,很多網站會使用第三方 Cookie 簡化登入程序、支援嵌入即時通訊和留言系統,以及收費服務。廣告客戶經常會使用第三方 Cookie,以提供更個人化的廣告。而網站經常會依賴廣告來協助支付開支,並繼續免費提供網上內容,因此這項功能非常重要。</translation>
 <translation id="8791157330927639737">進一步了解點樣更新</translation>
@@ -10668,6 +10680,7 @@
 <translation id="9014674417732091912">移去第 <ph name="ROW_NUMBER" /> 列</translation>
 <translation id="901668144954885282">備份至「Google 雲端硬碟」</translation>
 <translation id="9016827136585652292">私隱保護畫面切換</translation>
+<translation id="9017055559700464094">已固定!你可透過工具列再次使用此功能</translation>
 <translation id="90181708067259747">到期日:<ph name="CARD" /></translation>
 <translation id="9018218886431812662">安裝完成</translation>
 <translation id="901876615920222131">如要重新開啟群組,請按一下群組</translation>
@@ -10826,6 +10839,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />為獲得最佳體驗,請將 <ph name="DEVICE_OS" /> 安裝至內置磁碟。您亦可稍後從登入畫面進行安裝。<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />如果現在還不想安裝,可透過 USB 執行並試用 CloudReady 2.0。此操作會保留您現有的作業系統和資料,但系統的儲存空間和效能可能受限。<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">在固定分頁中開啟</translation>
+<translation id="9122788874051694311">要脫離無痕模式儲存此密鑰嗎?</translation>
 <translation id="9123287046453017203">您的裝置不是最新版本</translation>
 <translation id="9125910124977405374">將<ph name="LANGUAGE_NAME" />由自動翻譯嘅語言移除</translation>
 <translation id="9126149354162942022">游標顏色</translation>
diff --git a/chrome/app/resources/generated_resources_zh-TW.xtb b/chrome/app/resources/generated_resources_zh-TW.xtb
index 47bcd83..340261f 100644
--- a/chrome/app/resources/generated_resources_zh-TW.xtb
+++ b/chrome/app/resources/generated_resources_zh-TW.xtb
@@ -1658,6 +1658,7 @@
 <translation id="2211043920024403606">設定檔資訊</translation>
 <translation id="2211245494465528624">管理同步選項</translation>
 <translation id="221297410904507041">刪除歷史記錄、Cookie、快取和其他資料</translation>
+<translation id="2213410656650624348">中等</translation>
 <translation id="2214018885812055163">共用資料夾</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;還有 1 行未顯示&gt;}other{&lt;還有 <ph name="NUMBER_OF_LINES" /> 行未顯示&gt;}}</translation>
 <translation id="2215070081105889450">如要分享音訊,請改為分享分頁或螢幕畫面</translation>
@@ -2037,6 +2038,7 @@
 <translation id="2473195200299095979">翻譯這個網頁</translation>
 <translation id="2475982808118771221">發生錯誤</translation>
 <translation id="247616523300581745">隱藏這些檔案</translation>
+<translation id="2476435723907345463">已移除密碼金鑰存取權</translation>
 <translation id="2476901513051581836">離線儲存空間大小不明,因此無法清理儲存空間。</translation>
 <translation id="2476974672882258506">請關閉 Windows 以解除安裝 <ph name="PARALLELS_DESKTOP" />。</translation>
 <translation id="2477065602824695373">你已設定多個外接切換裝置,因此自動掃描功能已關閉。</translation>
@@ -2231,6 +2233,7 @@
 <translation id="2620215283731032047">無法安全下載「<ph name="FILE_NAME" />」。</translation>
 <translation id="2620245777360407679">目前已連上無線基地台的裝置</translation>
 <translation id="2620436844016719705">系統</translation>
+<translation id="262087792756666314">你可以固定這項功能以方便使用;請按一下側邊面板頂端的「固定」按鈕</translation>
 <translation id="2620900772667816510">高解析度藍牙</translation>
 <translation id="262154978979441594">訓練 Google 助理的語音模型</translation>
 <translation id="26224892172169984">禁止任何網站處理通訊協定</translation>
@@ -3006,6 +3009,7 @@
 <translation id="3222066309010235055">預先轉譯:<ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">連接到「<ph name="USB_VM_NAME" />」</translation>
 <translation id="3222857603094643834">透過 Google 智慧鏡頭搜尋這個頁面上的所有內容</translation>
+<translation id="3223109931751684474">移除這部裝置的密碼金鑰存取權</translation>
 <translation id="3223531857777746191">重設按鈕</translation>
 <translation id="3225084153129302039">預設的紫色顯示圖片</translation>
 <translation id="3225319735946384299">程式碼簽署</translation>
@@ -3330,6 +3334,7 @@
 <translation id="3473479545200714844">畫面放大鏡</translation>
 <translation id="3474218480460386727">新字詞請保持在 99 個字母以內</translation>
 <translation id="3474624961160222204">以「<ph name="NAME" />」的身分繼續</translation>
+<translation id="3477772589943384839">取得中等記憶體節省量。分頁會在較長時段過後進入閒置狀態。</translation>
 <translation id="347785443197175480">繼續允許 <ph name="HOST" /> 存取你的攝影機和麥克風</translation>
 <translation id="3479357084663933762">綠色弱</translation>
 <translation id="3479552764303398839">現在不要</translation>
@@ -4052,7 +4057,6 @@
 <translation id="3983586614702900908">製造商不明的裝置</translation>
 <translation id="3983764759749072418">Play 商店應用程式可以存取這個裝置。</translation>
 <translation id="3983769721878416534">點擊前延遲</translation>
-<translation id="3983793589497399077">在任何位置點選或拖曳,即可使用智慧鏡頭搜尋</translation>
 <translation id="3984135167056005094">不包含電子郵件地址</translation>
 <translation id="3984159763196946143">無法啟動展示模式</translation>
 <translation id="3984431586879874039">要允許這個網站查看你的安全金鑰嗎?</translation>
@@ -4089,6 +4093,7 @@
 <translation id="4010036441048359843">開啟醒目顯示功能</translation>
 <translation id="4010746393007464819">現在可以升級至 Debian 12 (Bookworm)</translation>
 <translation id="4010917659463429001">如要在行動裝置上取得你的書籤,請<ph name="GET_IOS_APP_LINK" />。</translation>
+<translation id="4012268176861210196">你可以固定這項功能以方便使用</translation>
 <translation id="4014432863917027322">修復「<ph name="EXTENSION_NAME" />」?</translation>
 <translation id="4015163439792426608">你有使用擴充功能嗎?<ph name="BEGIN_LINK" />集中管理擴充功能<ph name="END_LINK" />,輕鬆又方便。</translation>
 <translation id="4016762287427926315">如果你將權限授予「<ph name="APP_NAME" />」,這個應用程式也會取得同樣的權限。<ph name="BEGIN_LINK" />管理<ph name="END_LINK" /></translation>
@@ -4392,6 +4397,7 @@
 <translation id="4261429981378979799">擴充功能權限</translation>
 <translation id="4262004481148703251">忽略警告</translation>
 <translation id="4263223596040212967">請檢查你的鍵盤配置,然後再試一次。</translation>
+<translation id="4263470758446311292">取得最大記憶體節省量。分頁會在較短時段過後進入閒置狀態。</translation>
 <translation id="4265096510956307240">驗證身分</translation>
 <translation id="4265301768135164545">你也可以<ph name="BEGIN_LINK" />手動<ph name="END_LINK" />設定 eSIM 卡設定檔</translation>
 <translation id="426564820080660648">如要檢查更新,請使用 Wi-Fi 或行動數據。</translation>
@@ -4711,6 +4717,7 @@
 <translation id="4503748371388753124">你的電腦含有可信任平台模組 (TPM) 安全性裝置,可用於實作 ChromeOS Flex 中許多重要的安全性功能。如需瞭解詳情,請造訪 Chromebook 說明中心:https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{已允許 Cookie}=1{已允許 Cookie,有 1 個例外狀況}other{已允許 Cookie,有 {COUNT} 個例外狀況}}</translation>
 <translation id="4504940961672722399">按一下這個圖示或按下 <ph name="EXTENSION_SHORTCUT" />,即可使用這項擴充功能。</translation>
+<translation id="4505469832694348179">使用這個 QR code 下載 Chrome,然後登入 Google 帳戶。</translation>
 <translation id="450552327874992444">已新增該字詞</translation>
 <translation id="4507373251891673233">你已封鎖來自 <ph name="HOST" /> 的所有擴充功能</translation>
 <translation id="4507401683427517298">按一下「新增捷徑」</translation>
@@ -5046,6 +5053,7 @@
 <translation id="4768332406694066911">您有這些機構核發給您的憑證</translation>
 <translation id="4769632191812288342">目前採用標準防護機制</translation>
 <translation id="4770119228883592393">已要求權限,按下 ⌘ + Option + 向下鍵即可回覆</translation>
+<translation id="4770755495532014179">在 iPhone 上使用這組密碼</translation>
 <translation id="4773112038801431077">升級 Linux</translation>
 <translation id="477548766361111120">允許擴充功能讀取及變更這個網站</translation>
 <translation id="4776311127346151860">「<ph name="DEVICE_NAME" />」已連線</translation>
@@ -5215,6 +5223,7 @@
 <translation id="4890399733764921729">無法連線。目前綁定其他行動服務供應商。</translation>
 <translation id="4890773143211625964">顯示進階印表機選項</translation>
 <translation id="4891089016822695758">Beta 版論壇</translation>
+<translation id="4891795846939730995">如要再次授予這部裝置密碼金鑰存取權,請使用已儲存的密碼金鑰登入網站或應用程式</translation>
 <translation id="4892229439761351791">網站可以使用藍牙</translation>
 <translation id="4892328231620815052">準備好之後,可以前往「書籤」和「清單」查看閱讀清單</translation>
 <translation id="489258173289528622">使用電池時的閒置動作</translation>
@@ -6442,6 +6451,7 @@
 <translation id="5846504156837627898">管理網站權限</translation>
 <translation id="5846749317653566506">調整色彩校正設定,確保顏色呈現明顯變化</translation>
 <translation id="5846807460505171493">安裝更新內容和應用程式。如果您選擇繼續,即表示您允許這部裝置自動下載及安裝來自 Google、您的電信業者和裝置製造商的更新內容和應用程式,且可能會使用行動數據進行下載。部分應用程式可能會提供內購項目。</translation>
+<translation id="5848054741303781539">手動設定,不使用位置資訊</translation>
 <translation id="5848319660029558352">大聲朗讀和文字格式設定</translation>
 <translation id="5849212445710944278">已加入過了</translation>
 <translation id="584945105664698226">語音速度</translation>
@@ -7138,7 +7148,6 @@
 <translation id="6383382161803538830">這個頁面上無法使用閱讀模式</translation>
 <translation id="638418309848716977">支援的連結</translation>
 <translation id="6384275966486438344">將你的搜尋設定變更為:<ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{未命名的群組 - 1 個分頁}other{未命名的群組 - # 個分頁}}</translation>
 <translation id="6385149369087767061">請連線至網際網路,然後再試一次</translation>
 <translation id="6385382178401976503">卡片:<ph name="CARD" /></translation>
 <translation id="6385994920693662133">警告:詳細記錄功能已啟用;以下記錄可能包含網址或其他機密資訊,請檢閱並確認你同意提交這些資訊。</translation>
@@ -7470,6 +7479,7 @@
 <translation id="6648911618876616409">已準備好安裝重大更新。登入即可開始更新。</translation>
 <translation id="6649018507441623493">請稍候...</translation>
 <translation id="6650206238642452078">訂閱 ChromeOS 系統事件</translation>
+<translation id="6650584564768559994">取得平衡的記憶體節省量。分頁會在最佳時間長度過後進入閒置狀態。</translation>
 <translation id="665061930738760572">在新視窗中開啟(&amp;N)</translation>
 <translation id="6651237644330755633">信任這個用於識別網站的憑證</translation>
 <translation id="6651495917527016072">將 Wi-Fi 網路同步至你的手機。<ph name="LINK_BEGIN" />瞭解詳情<ph name="LINK_END" /></translation>
@@ -7727,6 +7737,7 @@
 <translation id="6831043979455480757">翻譯</translation>
 <translation id="6832218595502288407">靠左對齊</translation>
 <translation id="6833479554815567477">分頁已從包含「<ph name="GROUP_CONTENTS" />」的「<ph name="GROUP_NAME" />」群組中移除</translation>
+<translation id="6833753236242482566">平衡 (建議選項)</translation>
 <translation id="6835762382653651563">請連線至網際網路,以更新您的 <ph name="DEVICE_TYPE" />。</translation>
 <translation id="683630338945552556">將密碼儲存到 Google 帳戶並自動填入</translation>
 <translation id="6839225236531462745">憑證刪除錯誤</translation>
@@ -9378,6 +9389,7 @@
 <translation id="8066444921260601116">連線對話方塊</translation>
 <translation id="8070572887926783747">「<ph name="APP_NAME" />」的位置存取權</translation>
 <translation id="8070662218171013510">觸覺回饋</translation>
+<translation id="8071033114691184017">在 iPhone 上使用這組密碼</translation>
 <translation id="8071432093239591881">以圖片形式列印</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />應用程式資料泛指應用程式依據開發人員設定所儲存的任何資料,包括聯絡人、訊息和相片等。<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />備份資料不會計入貴子女帳戶的雲端硬碟儲存空間配額。<ph name="END_PARAGRAPH2" />
@@ -9945,6 +9957,7 @@
 <translation id="8482077254400484047">這裡可管理閒置分頁的外觀</translation>
 <translation id="8483248364096924578">IP 位址</translation>
 <translation id="8486666913807228950">原因:在「強制開啟方式」清單中找到反轉規則 <ph name="REVERT_RULE" />。</translation>
+<translation id="8487303289354211861">已固定!你可以透過工具列上的新按鈕再次使用這項功能</translation>
 <translation id="8487678622945914333">放大</translation>
 <translation id="8487699605742506766">無線基地台</translation>
 <translation id="8489156414266187072">個人建議只會在你的帳戶上顯示</translation>
@@ -10343,7 +10356,6 @@
 <translation id="8784626084144195648">二進位化平均</translation>
 <translation id="8785622406424941542">觸控筆</translation>
 <translation id="8786824282808281903">如果你的孩子看到這個圖示,就表示他們可以透過指紋進行身分認證或購買交易。</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{未命名的群組 - 1 個分頁}other{未命名的群組 - # 個分頁}}</translation>
 <translation id="8787752878731558379">請說明你允許使用第三方 Cookie 的原因,協助我們改善 Chrome</translation>
 <translation id="8789898473175677810">Chrome 屬於<ph name="LINK_BEGIN" />協作計畫<ph name="LINK_END" />的一部分,致力於減少跨網站追蹤,並逐步淘汰第三方 Cookie。但我們會盡力以負責任的方式進行淘汰,因為許多網站都需要使用第三方 Cookie 才能按照設計運作。舉例來說,許多網站會使用第三方 Cookie 簡化登入程序、支援嵌入式即時通訊和留言系統,以及提供付款服務。此外,廣告主通常會使用第三方 Cookie 放送更貼近需求的個人化廣告。這點非常重要,因為網站常需要仰賴廣告支付花費,讓使用者無須支付費用就能持續使用線上內容。</translation>
 <translation id="8791157330927639737">進一步瞭解如何更新</translation>
@@ -10657,6 +10669,7 @@
 <translation id="9014674417732091912">已移至第 <ph name="ROW_NUMBER" /> 列</translation>
 <translation id="901668144954885282">備份到 Google 雲端硬碟</translation>
 <translation id="9016827136585652292">切換隱私保護功能</translation>
+<translation id="9017055559700464094">已固定!你可以透過工具列再次使用這項功能</translation>
 <translation id="90181708067259747">到期日:<ph name="CARD" /></translation>
 <translation id="9018218886431812662">安裝完成</translation>
 <translation id="901876615920222131">按一下群組即可重新開啟</translation>
@@ -10815,6 +10828,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />為獲得最佳體驗,請將 <ph name="DEVICE_OS" /> 安裝至內部磁碟。你也可以之後再透過登入畫面安裝。<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />如果現在還不想安裝,可透過 USB 執行並試用此作業系統。這種做法可保留現有作業系統和資料,但儲存空間及效能可能會有所限制。<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">在固定分頁中開啟</translation>
+<translation id="9122788874051694311">要脫離無痕模式儲存這個密碼金鑰嗎?</translation>
 <translation id="9123287046453017203">這部裝置不是最新版本</translation>
 <translation id="9125910124977405374">將「<ph name="LANGUAGE_NAME" />」從自動翻譯的語言中移除</translation>
 <translation id="9126149354162942022">游標顏色</translation>
diff --git a/chrome/app/resources/generated_resources_zu.xtb b/chrome/app/resources/generated_resources_zu.xtb
index fdde7ea..0107ad3 100644
--- a/chrome/app/resources/generated_resources_zu.xtb
+++ b/chrome/app/resources/generated_resources_zu.xtb
@@ -1668,6 +1668,7 @@
 <translation id="2211043920024403606">Imininingwane yephrofayela</translation>
 <translation id="2211245494465528624">Phatha ongakhetha kukho kokuvumelanisa</translation>
 <translation id="221297410904507041">Sula umlando, amakhukhi, inqolobane, nokunye</translation>
+<translation id="2213410656650624348">Maphakathi</translation>
 <translation id="2214018885812055163">Amafolda abiwe</translation>
 <translation id="2214893006758804920">{LINE_COUNT,plural, =1{&lt;1 line not shown&gt;}one{&lt;<ph name="NUMBER_OF_LINES" /> lines not shown&gt;}other{&lt;<ph name="NUMBER_OF_LINES" /> lines not shown&gt;}}</translation>
 <translation id="2215070081105889450">Ukuze wabelane ngomsindo, yabelana ngethebhu noma isikrini esikhundleni salokho</translation>
@@ -2051,6 +2052,7 @@
 <translation id="2473195200299095979">Humusha leli khasi</translation>
 <translation id="2475982808118771221">Kuvele iphutha</translation>
 <translation id="247616523300581745">Fihla lawa mafayela</translation>
+<translation id="2476435723907345463">Ukufinyelela kokhiye wokudlula kususiwe</translation>
 <translation id="2476901513051581836">Ayikwazi ukuhlanza isitoreji kuze kube yilapho usayizi wesitoreji esingaxhunyiwe ku-inthanethi waziwa.</translation>
 <translation id="2476974672882258506">Vala i-Windows ukuze ukhiphe i-<ph name="PARALLELS_DESKTOP" />.</translation>
 <translation id="2477065602824695373">Njengoba usetha amaswishi amaningi, ukuskena okuzenzakalelayo kuvaliwe.</translation>
@@ -2245,6 +2247,7 @@
 <translation id="2620215283731032047"><ph name="FILE_NAME" />ayikwazi ukulandwa ngokuvikelekile.</translation>
 <translation id="2620245777360407679">Amadivayisi okwamanje axhunywe ku-hotspot</translation>
 <translation id="2620436844016719705">Isistimu</translation>
+<translation id="262087792756666314">Ungakwazi ukuphina lesi sakhi ukuze usifinyelele kalula; chofoza inkinobho Yokuphina phezulu kwephaneli eseceleni</translation>
 <translation id="2620900772667816510">I-Bluetooth Super Resolution</translation>
 <translation id="262154978979441594">Qeqesha Umsizi we-Google ngemodeli yezwi</translation>
 <translation id="26224892172169984">Ungavumeli noma yiliphi isayithi ukuthi liphathe amaphrothokholi</translation>
@@ -3020,6 +3023,7 @@
 <translation id="3222066309010235055">Nikezela ngaphambili: <ph name="PRERENDER_CONTENTS_NAME" /></translation>
 <translation id="3222779980972075989">Xhuma ku-<ph name="USB_VM_NAME" /></translation>
 <translation id="3222857603094643834">Sesha noma yini kuleli khasi nge-Google Lens</translation>
+<translation id="3223109931751684474">Susa ukufinyelela kokhiye bakho bokudlula kule divayisi</translation>
 <translation id="3223531857777746191">Setha kabusha inkinobho</translation>
 <translation id="3225084153129302039">Isithombe esizenzakalelayo esiphephuli</translation>
 <translation id="3225319735946384299">Ukusayina kwekhodi</translation>
@@ -3344,6 +3348,7 @@
 <translation id="3473479545200714844">Isisondezi-skrini</translation>
 <translation id="3474218480460386727">Sebenzisa amaletha angu-99 noma ambalwa kumagama amasha</translation>
 <translation id="3474624961160222204">Qhubeka njengo-<ph name="NAME" /></translation>
+<translation id="3477772589943384839">Thola ukonga inkumbulo okumaphakathi. Amathebhu akho angasebenzi ngemva kwesikhathi eside.</translation>
 <translation id="347785443197175480">Qhubeka uvumele i-<ph name="HOST" /> ukuthi ifinyelele kukhamela yakho nemakrofoni</translation>
 <translation id="3479357084663933762">I-Deuteranomaly</translation>
 <translation id="3479552764303398839">Hhayi manje</translation>
@@ -4066,7 +4071,6 @@
 <translation id="3983586614702900908">amadivayisi kusuka kumthengisi ongaziwa</translation>
 <translation id="3983764759749072418">Izinhlelo zokusebenza ze-Google Play Isitolo zinokufinyelela kule divayisi.</translation>
 <translation id="3983769721878416534">Bambezela ngaphambi kokuchofoza</translation>
-<translation id="3983793589497399077">Chofoza noma uhudule noma yikuphi ukuze useshe nge-Lens</translation>
 <translation id="3984135167056005094">Ungafaki ikheli le-imeyili</translation>
 <translation id="3984159763196946143">Ayikwazanga ukuqala imodi yedemo</translation>
 <translation id="3984431586879874039">Vumela leli sayithi ukuthi libone ukhiye wakho wokuqinisekisa ubunikazi?</translation>
@@ -4103,6 +4107,7 @@
 <translation id="4010036441048359843">Vula okuvelele</translation>
 <translation id="4010746393007464819">Ukuthuthukisa ku-Debian 12 (Bookworm) kuyatholakala</translation>
 <translation id="4010917659463429001">Ukuze uthole amabhukhimakhi kudivayisi yakho yeselula, <ph name="GET_IOS_APP_LINK" />.</translation>
+<translation id="4012268176861210196">Ungakwazi ukuphina lesi sakhi ukuze usifinyelele kalula</translation>
 <translation id="4014432863917027322">Lungisa i-"<ph name="EXTENSION_NAME" />"?</translation>
 <translation id="4015163439792426608">Usitholile isandiso? <ph name="BEGIN_LINK" />Phatha izandiso zakho<ph name="END_LINK" /> endaweni eyodwa kalula.</translation>
 <translation id="4016762287427926315">Izimvume ozivumelayo ze-<ph name="APP_NAME" /> zizovunyelwa kule app. <ph name="BEGIN_LINK" />Phatha<ph name="END_LINK" /></translation>
@@ -4406,6 +4411,7 @@
 <translation id="4261429981378979799">Izimvume zesandiso</translation>
 <translation id="4262004481148703251">Chitha isexwayiso</translation>
 <translation id="4263223596040212967">Hlola isendlalelo sekhibhodi yakho bese uyazama futhi.</translation>
+<translation id="4263470758446311292">Thola ukonga inkumbulo okuphezulu. Amathebhu akho angasebenzi ngemva kwesikhathi esifushane.</translation>
 <translation id="4265096510956307240">Qinisekisa ukuthi nguwe</translation>
 <translation id="4265301768135164545">Ungakwazi nokusetha iphrofayela ye-SIM <ph name="BEGIN_LINK" />mathupha<ph name="END_LINK" /></translation>
 <translation id="426564820080660648">Ukuze uhlolele izinhlelo zokusebenza, sicela usebenzise i-Ethernet, i-Wi-Fi noma idatha yeselula.</translation>
@@ -4725,6 +4731,7 @@
 <translation id="4503748371388753124">Ikhompyutha yakho iqukethe idivayisi yokuvikeleka ye-Trusted Platform Module (TPM), esetshenziselwa ukufaka izakhi zokuvikeleka ezibucayi kakhulu ku-ChromeOS Flex. Vakashela Isikhungo sosizo se-Chromebook ukuze ufunde kabanzi: https://support.google.com/chromebook/?p=tpm</translation>
 <translation id="4504374760782163539">{COUNT,plural, =0{Amakhukhi avunyelwe}=1{Amakhukhi avunyelwe, 1 okuhlukile}one{Amakhukhi avunyelwe, {COUNT} okwehlukile}other{Amakhukhi avunyelwe, {COUNT} okwehlukile}}</translation>
 <translation id="4504940961672722399">Sebenzisa lesi sandiso ngokuchofoza kulesi sithonjana noma ngokuchofoza ku-<ph name="EXTENSION_SHORTCUT" />.</translation>
+<translation id="4505469832694348179">Dawuniloda i-Chrome ngale khodi ye-QR, bese ungena ngemvume ku-Google Account yakho.</translation>
 <translation id="450552327874992444">Igama selivele lingeziwe</translation>
 <translation id="4507373251891673233">Uvimbe zonke izandiso ezisuka ku-<ph name="HOST" /></translation>
 <translation id="4507401683427517298">Chofoza okuthi “Engeza Isinqamuleli”</translation>
@@ -5060,6 +5067,7 @@
 <translation id="4768332406694066911">Unezitifiketi ezivela kulezi zinhlangano ezikukhombayo</translation>
 <translation id="4769632191812288342">Uthola ukuvikelwa okujwayelekile</translation>
 <translation id="4770119228883592393">Imvume iceliwe, cindezela u-⌘ + Option + Umcibisholo waphansi ukuze uphendule</translation>
+<translation id="4770755495532014179">Sebenzisa le phasiwedi ku-iPhone yakho</translation>
 <translation id="4773112038801431077">Thuthukisa i-Linux</translation>
 <translation id="477548766361111120">Vumela isandiso ukuthi sifunde futhi siguqule leli sayithi</translation>
 <translation id="4776311127346151860"><ph name="DEVICE_NAME" /> ixhunyiwe</translation>
@@ -5229,6 +5237,7 @@
 <translation id="4890399733764921729">Ayikwazi ukuxhuma. Kukhiywe omunye umhlinzeki weselula.</translation>
 <translation id="4890773143211625964">Bonisa izinketho ezithuthukile zephrinta</translation>
 <translation id="4891089016822695758">Iforamu ye-Beta</translation>
+<translation id="4891795846939730995">Ukuze unikeze le divayisi ukufinyelela kokhiye bakho bokudlula futhi, ngena ngemvume kusayithi noma ku-app ngokhiye wokudlula olondoloziwe</translation>
 <translation id="4892229439761351791">Isayithi lingasebenzisa i-Bluetooth</translation>
 <translation id="4892328231620815052">Uma usulungile, thola uhlu lwakho lokufunda kokuthi Amabhukhimakhi kanye Nohlu</translation>
 <translation id="489258173289528622">Isenzo sokungenzi lutho ngenkathi ikwibhethri</translation>
@@ -6459,6 +6468,7 @@
 <translation id="5846504156837627898">Phatha Izimvume Zesayithi</translation>
 <translation id="5846749317653566506">Lungisa amasethingi okulungisa umbala ukuze wenze isiqiniseko sokuthi imibala ihlukile</translation>
 <translation id="5846807460505171493">Faka izibuyekezo nezinhlelo zokusebenza. Ngokuqhubeka, uyavuma ukuthi le divayisi ingalanda ngokuzenzakalelayo futhi ifake izibuyekezo nezinhlelo zokusebenza kusuka ku-Google, inkampani yakho yenethiwekhi, kanye nomkhiqizi wedivayisi yakho, okungenzeka basebenzisa idatha yeselula. Ezinye zalezi nhlelo zokusebenza zinganikezela ngokuthenga okuphakathi nohlelo.</translation>
+<translation id="5848054741303781539">Setha mathupha, hhayi ukusebenzisa indawo</translation>
 <translation id="5848319660029558352">Funda Uphimise Nokufometha kombhalo</translation>
 <translation id="5849212445710944278">Sekuvele kungeziwe</translation>
 <translation id="584945105664698226">Isivinini sezwi</translation>
@@ -7157,7 +7167,6 @@
 <translation id="6383382161803538830">Imodi yokufunda ayitholakali kuleli khasi</translation>
 <translation id="638418309848716977">Izixhumanisi ezisekelwayo</translation>
 <translation id="6384275966486438344">Guqula izilungiselelo zakho zosesho: <ph name="SEARCH_HOST" /></translation>
-<translation id="63849924261838903">{NUM_TABS,plural, =1{Iqembu elingaqanjwanga - ithebhu e-1}one{Iqembu elingaqanjwanga - amathebhu angu-#}other{Iqembu elingaqanjwanga - amathebhu angu-#}}</translation>
 <translation id="6385149369087767061">Xhumeka ku-inthanethi uphinde uzame futhi</translation>
 <translation id="6385382178401976503">Ikhadi: <ph name="CARD" /></translation>
 <translation id="6385994920693662133">Isexwayiso - ukuloga okunemininingwane kunikwe amandla, amalogu angafaka ama-URL noma olunye ulwazi olubucayi. Sicela ubuyekeze uphinde uqinisekise ukuthi ukhululekile ukuthumela lolu lwazi.</translation>
@@ -7491,6 +7500,7 @@
 <translation id="6648911618876616409">Isibuyekezo esibalulekile silungele ukufakwa. Ngena ngemvume ukuze uqalise.</translation>
 <translation id="6649018507441623493">Linda kancane...</translation>
 <translation id="6650206238642452078">Bhalisela imicimbi yesistimu ye-ChromeOS</translation>
+<translation id="6650584564768559994">Thola ukonga inkumbulo okubhalansile. Amathebhu akho angasebenzi ngemva kwesikhathi esikahle.</translation>
 <translation id="665061930738760572">Vula kuwindi &amp;elisha</translation>
 <translation id="6651237644330755633">Themba lesi sitifiketi sokukhomba amawebhusayithi</translation>
 <translation id="6651495917527016072">Vumelanisa amanethiwekhi e-Wi-Fi nefoni yakho. <ph name="LINK_BEGIN" />Funda kabanzi<ph name="LINK_END" /></translation>
@@ -7748,6 +7758,7 @@
 <translation id="6831043979455480757">Humusha</translation>
 <translation id="6832218595502288407">Hlela ngokuqondisa ngakwesobunxele</translation>
 <translation id="6833479554815567477">Ithebhu isusiwe kuqembu le-<ph name="GROUP_NAME" /> - <ph name="GROUP_CONTENTS" /></translation>
+<translation id="6833753236242482566">Kubhalansile (kunconyiwe)</translation>
 <translation id="6835762382653651563">Sicela uxhume ku-inthanethi ukuze ubuyekeze i-<ph name="DEVICE_TYPE" /> yakho.</translation>
 <translation id="683630338945552556">Sebenzisa futhi ulondoloze amaphasiwedi ku-Google Account yakho</translation>
 <translation id="6839225236531462745">Iphutha lokususa isitifiketi</translation>
@@ -9396,6 +9407,7 @@
 <translation id="8066444921260601116">Ibhokisi lokuxhuma</translation>
 <translation id="8070572887926783747">Imvume yendawo ku-<ph name="APP_NAME" /></translation>
 <translation id="8070662218171013510">Impendulo ezwakalayo</translation>
+<translation id="8071033114691184017">Sebenzisa Le Phasiwedi Ku-iPhone Yakho</translation>
 <translation id="8071432093239591881">Phrinta njengesithombe</translation>
 <translation id="8073499153683482226"><ph name="BEGIN_PARAGRAPH1" />Idatha yohlelo lokusebenza kungaba inoma iyiphi idatha leyo uhlelo lokusebenza eyilondolozile (ngokususelwe kuzilungiselelo zikanjiniyela), kufaka phakathi idatha efana noxhumana nabo, imilayezo, nezithombe.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Idatha yesipele ngeke ibalelwe kusitoreji sedrayivu sengane yakho.<ph name="END_PARAGRAPH2" />
@@ -9963,6 +9975,7 @@
 <translation id="8482077254400484047">Lawula ukubukeka kwamathebhu angasebenzi lapha</translation>
 <translation id="8483248364096924578">Ikheli lasesizindenise-inthanethi</translation>
 <translation id="8486666913807228950">Isizathu: Isimiso esiphenduliwe esithi <ph name="REVERT_RULE" /> sitholwe ohlwini oluthi "Vula ngempoqo kokuthi".</translation>
+<translation id="8487303289354211861">Kuphiniwe! Ungakwazi ukufinyelela lesi sakhi futhi enkinobheni entsha kubha yamathuluzi</translation>
 <translation id="8487678622945914333">Sondeza isithombe</translation>
 <translation id="8487699605742506766">I-Hotspot</translation>
 <translation id="8489156414266187072">Iziphakamiso zomuntu siqu ziboniswa ku-akhawunti yakho kuphela</translation>
@@ -10362,7 +10375,6 @@
 <translation id="8784626084144195648">Imaphakathi elibhiniwe</translation>
 <translation id="8785622406424941542">I-Stylus</translation>
 <translation id="8786824282808281903">Lapho ingane yakho ibona lesi sithonjana, isigxivizo somunwe singatshenziselwa ukuhlonza noma ukuvumela ukuthenga.</translation>
-<translation id="8787575090331305835">{NUM_TABS,plural, =1{Iqembu Elingaqanjwanga - Ithebhu e-1}one{Iqembu Elingaqanjwanga - Amathebhu angu-#}other{Iqembu Elingaqanjwanga - Amathebhu angu-#}}</translation>
 <translation id="8787752878731558379">Sisize sithuthukise i-Chrome ngokusitshela ukuthi kungani uvumele amakhukhi ezinkampani ezingahlangene ngqo</translation>
 <translation id="8789898473175677810">I-Chrome iyingxenye <ph name="LINK_BEGIN" />yemizamo ehlanganyelwayo<ph name="LINK_END" /> yokunciphisa ukulandelela kumasayithi amaningi nokuqeda ukusetshenziswa kwamakhukhi alabo abangahlangene ngqo. Kodwa sizama ukukwenza ngendlela ehlelekile ngoba amasayithi amaningi ancike kumakhukhi alabo abangahlangene ngqo ukuze asebenze ngendlela ahlelwe ngayo. Ngokwesibonelo, amasayithi amaningi asebenzisa amakhukhi alabo abangahlangene ngqo ukuze enze ukungena ngemvume kube lula, ukuze asekele amasistimu ashumekiwe engxoxo namazwana, nakumasevisi okukhokha. Nabakhangisi bavame ukusebenzisa amakhukhi alabo abangahlangene ngqo ukuze benze ukuthi izikhangiso ziqondaniswe kangcono nomuntu siqu. Lokho kubalulekile ngoba amasayithi avame ukuncika ezikhangisweni ukuba zisize ekukhokheleni izindleko futhi agcine okuqukethwe kwawo okuku-inthanethi kumahhala.</translation>
 <translation id="8791157330927639737">Funda kabanzi mayelana nezidingo zesistimu</translation>
@@ -10676,6 +10688,7 @@
 <translation id="9014674417732091912">Iye kumugqa ongu-<ph name="ROW_NUMBER" /></translation>
 <translation id="901668144954885282">Yenza isipele ku-Google Drayivu</translation>
 <translation id="9016827136585652292">guqula isikrini sobumfihlo</translation>
+<translation id="9017055559700464094">Kuphiniwe! Sebenzisa lesi sakhi futhi kubha yamathuluzi</translation>
 <translation id="90181708067259747">Ilanga lokuphelelwa isikhathi: <ph name="CARD" /></translation>
 <translation id="9018218886431812662">Ukufaka kuqedile</translation>
 <translation id="901876615920222131">Ukuze uvule kabusha iqembu, chofoza eqenjini</translation>
@@ -10834,6 +10847,7 @@
 <translation id="9120693811286642342"><ph name="BEGIN_PARAGRAPH1" />Ukuze uthole umuzwa ohamba phambili, faka i-<ph name="DEVICE_OS" /> kwidiski lakho langaphakathi. Ungase futhi uyifake ngokuhamba kwesikhathi kusuka kwisikrini sokungena ngemvume.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />Uma ungakulungele ukuyifaka, ungayisebenzisa kusuka ku-USB ukuze uyizame. Lokhu kuzogcina i-OS ekhona kakade kanye nedatha, kodwa ungase ubone imikhawulo yesitoreji neyokusebenza.<ph name="END_PARAGRAPH2" /></translation>
 <translation id="9121814364785106365">Vula njengethebhu ephiniwe</translation>
+<translation id="9122788874051694311">Londoloza lo khiye wokudlula ngaphandle kwe-Incognito?</translation>
 <translation id="9123287046453017203">Idivayisi yakho ayikho esikhathini</translation>
 <translation id="9125910124977405374">Susa i-<ph name="LANGUAGE_NAME" /> ezilimini ezihunyushwe ngokuzenzekelayo</translation>
 <translation id="9126149354162942022">Umbala we-cursor</translation>
diff --git a/chrome/app/resources/google_chrome_strings_af.xtb b/chrome/app/resources/google_chrome_strings_af.xtb
index 0e5133e..711c776 100644
--- a/chrome/app/resources/google_chrome_strings_af.xtb
+++ b/chrome/app/resources/google_chrome_strings_af.xtb
@@ -49,6 +49,7 @@
 <translation id="1640672724030957280">Laai tans af …</translation>
 <translation id="1662146548738125461">Meer oor Chrome OS Flex</translation>
 <translation id="1674870198290878346">Maak skakel in 'n incognitovenster in Chrome oop</translation>
+<translation id="1679594062619799116">Jy kan jou Google-rekening se wagwoorde in Chrome gebruik terwyl jy aangemeld is</translation>
 <translation id="1682634494516646069">Google Chrome kan nie sy datagids lees of daarheen skryf nie:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -184,6 +185,7 @@
 <translation id="3564543103555793392">Wanneer jy by Chrome aanmeld, kan jy boekmerke, wagwoorde en meer stoor en dit dan op jou foon gebruik</translation>
 <translation id="3576528680708590453">Jou stelseladministrateur het Google Chrome opgestel om 'n alternatiewe blaaier oop te maak om na <ph name="TARGET_URL_HOSTNAME" /> toe te gaan.</translation>
 <translation id="3582972582564653026">Sinkroniseer en personaliseer Chrome op al jou toestelle</translation>
+<translation id="3583751698304738917">Jy het reeds in ’n ander Chrome-profiel as <ph name="USER_EMAIL_ADDRESS" /> aangemeld</translation>
 <translation id="3595784445906693824">Meld in ’n nuwe profiel by Chrome aan?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Jou administrateur vereis dat jy Chrome herbegin om 'n opdatering toe te pas}=1{Jou administrateur vereis dat jy Chrome herbegin om 'n opdatering toe te pas. Jou incognitovenster sal nie weer oopgemaak word nie.}other{Jou administrateur vereis dat jy Chrome herbegin om 'n opdatering toe te pas. Jou # incognitovensters sal nie weer oopgemaak word nie.}}</translation>
 <translation id="3622797965165704966">Nou is dit makliker om Chrome met jou Google-rekening en op gedeelde rekenaars te gebruik.</translation>
@@ -358,6 +360,7 @@
 <translation id="6288788894729749483">Stel Chrome as jou verstek om veilig dinge aanlyn te doen, te skep en te verken</translation>
 <translation id="6291089322031436445">Chrome Dev-programme</translation>
 <translation id="6291549208091401781">Google Chrome is reeds vir alle gebruikers op jou rekenaar geïnstalleer.</translation>
+<translation id="6319856120645568262">Chrome het toestemming nodig om jou omgewing te karteer en jou hande na te spoor</translation>
 <translation id="6326175484149238433">Verwyder van Chrome af</translation>
 <translation id="6327105987658262776">Geen opdatering is beskikbaar nie.</translation>
 <translation id="6360449101159168105">Geheue is beskikbaar gemaak terwyl hierdie oortjie onaktief was om Chrome vinnig te hou. Jy kan kies om hierdie werf altyd daarvan uit te sluit om onaktief te wees.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_am.xtb b/chrome/app/resources/google_chrome_strings_am.xtb
index d7e7c46..88b37cd0 100644
--- a/chrome/app/resources/google_chrome_strings_am.xtb
+++ b/chrome/app/resources/google_chrome_strings_am.xtb
@@ -48,6 +48,7 @@
 <translation id="1640672724030957280">በማውረድ ላይ...</translation>
 <translation id="1662146548738125461">ስለChromeOS Flex</translation>
 <translation id="1674870198290878346">አገናኝ በChrome ማንነት የ&amp;ማያሳውቅ መስኮት ውስጥ ክፈት</translation>
+<translation id="1679594062619799116">በመለያዎ ውስጥ ሲገቡ ከGoogle መለያዎ ውስጥ የይለፍ ቃላትዎን በChrome ውስጥ መጠቀም ይችላሉ</translation>
 <translation id="1682634494516646069">Google Chrome የውሂብ አቃፊውን ማንበብ እና እሱ ላይ መጻፍ አይችልም፦
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -183,6 +184,7 @@
 <translation id="3564543103555793392">ወደ Chrome ሲገቡ ዕልባቶችን፣ የይለፍ ቃላትን እና ሌሎችንም ማስቀመጥ እና ከዚያ በስልክዎ ላይ መጠቀም ይችላሉ</translation>
 <translation id="3576528680708590453">የእርስዎ የስርዓት አስተዳዳሪ <ph name="TARGET_URL_HOSTNAME" />ን ለመድረስ Google Chrome ተለዋጭ አሳሽ እንዲከፍት አዋቅሮታል።</translation>
 <translation id="3582972582564653026">Chromeን በመላ መሣሪያዎችዎ ላይ ያስምሩ እና ግላዊነት ያላብሱ</translation>
+<translation id="3583751698304738917">አስቀድመው በሌላ የChrome መገለጫ እንደ <ph name="USER_EMAIL_ADDRESS" /> ገብተዋል</translation>
 <translation id="3595784445906693824">በአዲስ መገለጫ ወደ Chrome ይግቡ?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{አንድ ዝማኔ ለመተግበር አስተዳዳሪዎ Chromeን ዳግም እንዲያስጀምሩት ይፈልግብዎታል}=1{አንድ ዝማኔ ለመተግበር አስተዳዳሪዎ Chromeን ዳግም እንዲያስጀምሩት ይፈልግብዎታል። የእርስዎ ማንነት የማያሳውቅ መስኮት ዳግም አይከፈትም}one{አንድ ዝማኔ ለመተግበር አስተዳዳሪዎ Chromeን ዳግም እንዲያስጀምሩት ይፈልግብዎታል። የእርስዎ # ማንነት የማያሳውቁ መስኮቶች ዳግም አይከፈቱም}other{አንድ ዝማኔ ለመተግበር አስተዳዳሪዎ Chromeን ዳግም እንዲያስጀምሩት ይፈልግብዎታል። የእርስዎ # ማንነት የማያሳውቁ መስኮቶች ዳግም አይከፈቱም}}</translation>
 <translation id="3622797965165704966">አሁን Chromeን ከGoogle መለያዎ ጋር እና በተጋሩ ኮምፒውተሮች ላይ መጠቀም ይበልጥ ቀላል ነው።</translation>
@@ -357,6 +359,7 @@
 <translation id="6288788894729749483">መስመር ላይ ደህንነቱ በተጠበቀ ሁኔታ ለመሥራት፣ ለመፍጠር እና ለማሰስ Chromeን እንደ ነባሪ ያቀናብሩት</translation>
 <translation id="6291089322031436445">Chrome Dev መተግበሪያዎች</translation>
 <translation id="6291549208091401781">Google Chrome ቀደም ብሎ በእርስዎ ኮምፒውተር ላይ ላሉ ተጠቃሚዎች ተጭኗል።</translation>
+<translation id="6319856120645568262">Chrome አካባቢዎን በካርታ ለመንደፍ እና የእጆችዎን እንቅስቃሴዎች ለመከታተል ፈቃድ ይፈልጋል</translation>
 <translation id="6326175484149238433">ከChrome አስወግድ</translation>
 <translation id="6327105987658262776">ምንም ዝማኔ የለም።</translation>
 <translation id="6360449101159168105">ይህ ትር ቦዝኖ ሳለ Chromeን ፈጣን እንደሆነ ለማቆየት ማህደረ ትውስታ ነፃ ተደርጓል። ይህን ጣቢያ ሁልጊዜ ከመቦዘን ማግለል መምረጥ ይችላሉ።</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ar.xtb b/chrome/app/resources/google_chrome_strings_ar.xtb
index 087e7868..eb861e1 100644
--- a/chrome/app/resources/google_chrome_strings_ar.xtb
+++ b/chrome/app/resources/google_chrome_strings_ar.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">جارٍ التنزيل...</translation>
 <translation id="1662146548738125461">‏لمحة عن نظام التشغيل ChromeOS Flex</translation>
 <translation id="1674870198290878346">‏فتح الرابط في نافذة تصفح متخفٍ في Chrome</translation>
+<translation id="1679594062619799116">‏يمكنك استخدام كلمات المرور من حسابك على Google بعد تسجيل الدخول إليه في Chrome</translation>
 <translation id="1682634494516646069">‏يتعذر على Google Chrome القراءة والكتابة في دليل البيانات الخاص به:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -182,6 +183,7 @@
 <translation id="3564543103555793392">‏عند تسجيل الدخول إلى متصفّح Chrome، يمكنك حفظ الإشارات المرجعية وكلمات المرور وغيرها، ثم استخدامها على هاتفك</translation>
 <translation id="3576528680708590453">‏ضَبَط مشرف النظام Google Chrome لفتح متصفِّح بديل للوصول إلى <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">‏يمكنك مزامنة Chrome وتخصيصه على جميع أجهزتك.</translation>
+<translation id="3583751698304738917">‏سبق أن سجّلت الدخول باستخدام <ph name="USER_EMAIL_ADDRESS" /> في ملف شخصي آخر على Chrome</translation>
 <translation id="3595784445906693824">‏هل تريد تسجيل الدخول إلى Chrome في ملف شخصي جديد؟</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{‏يطلب المشرف إعادة تشغيل Chrome لتطبيق تحديث.}=1{‏يطلب المشرف إعادة تشغيل Chrome لتطبيق تحديث. لن تتم إعادة فتح نافذة التصفح المتخفي.}two{‏يطلب المشرف إعادة تشغيل Chrome لتطبيق تحديث. لن تتم إعادة فتح نافذتَي التصفح المتخفي.}few{‏يطلب المشرف إعادة تشغيل Chrome لتطبيق تحديث. لن تتم إعادة فتح نوافذ التصفّح المتخفي البالغ عددها #.}many{‏يطلب المشرف إعادة تشغيل Chrome لتطبيق تحديث. لن تتم إعادة فتح نوافذ التصفّح المتخفي البالغ عددها #.}other{‏يطلب المشرف إعادة تشغيل Chrome لتطبيق تحديث. لن تتم إعادة فتح نوافذ التصفّح المتخفي البالغ عددها #.}}</translation>
 <translation id="3622797965165704966">‏الآن أصبح استخدام Chrome مع حسابك في Google وفي أجهزة الكمبيوتر المشتركة أكثر سهولة.</translation>
@@ -354,6 +356,7 @@
 <translation id="6288788894729749483">‏اضبط Chrome كمتصفّح تلقائي لتتمكَّن من تنفيذ المهام وإنشاء المحتوى والتصفُّح على الإنترنت بأمان تام</translation>
 <translation id="6291089322031436445">‏تطبيقات إصدار مطوري البرامج من Chrome</translation>
 <translation id="6291549208091401781">‏تم تثبيت Google Chrome من قبل لجميع المستخدمين على الكمبيوتر.</translation>
+<translation id="6319856120645568262">‏يحتاج Chrome إلى إذن لتتبُّع اليدين وإنشاء خريطة للبيئة المحيطة بك</translation>
 <translation id="6326175484149238433">‏إزالة من Chrome</translation>
 <translation id="6327105987658262776">ما مِن تحديث متوفّر.</translation>
 <translation id="6360449101159168105">‏عندما كانت علامة التبويب هذه غير نشطة، تم إخلاء مساحة في الذاكرة للحفاظ على سرعة Chrome. يمكنك اختيار أن يظل هذا الموقع الإلكتروني نشطًا دائمًا.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_be.xtb b/chrome/app/resources/google_chrome_strings_be.xtb
index 114edfa..460a8c31 100644
--- a/chrome/app/resources/google_chrome_strings_be.xtb
+++ b/chrome/app/resources/google_chrome_strings_be.xtb
@@ -48,6 +48,7 @@
 <translation id="1640672724030957280">Ідзе спампоўванне…</translation>
 <translation id="1662146548738125461">Пра Chrome OS Flex</translation>
 <translation id="1674870198290878346">Адкрыць спасылку ў акне інко&amp;гніта ў Chrome</translation>
+<translation id="1679594062619799116">Калі вы ўвайшлі ва Уліковы запіс Google, вы можаце выкарыстоўваць паролі з яго ў Chrome</translation>
 <translation id="1682634494516646069">Google Chrome не можа чытаць з каталога даных і запісваць у яго:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -183,6 +184,7 @@
 <translation id="3564543103555793392">Калі ўвайсці ў Chrome, вы зможаце захоўваць закладкі, паролі і іншыя даныя, а затым выкарыстоўваць іх на тэлефоне</translation>
 <translation id="3576528680708590453">Ваш сістэмны адміністратар наладзіў Google Chrome, каб адкрыць альтэрнатыўны браўзер для доступу да <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Сінхранізуйце і персаналізуйце Chrome на сваіх прыладах</translation>
+<translation id="3583751698304738917">Вы ўжо ўвайшлі ў іншы профіль Chrome як <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="3595784445906693824">Увайсці ў Chrome праз новы профіль?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Ваш адміністратар патрабуе перазапусціць Chrome для ўсталявання абнаўлення}=1{Ваш адміністратар патрабуе перазапусціць Chrome для ўсталявання абнаўлення. Акно ў рэжыме інкогніта не будзе адкрыта паўторна.}one{Ваш адміністратар патрабуе перазапусціць Chrome для ўсталявання абнаўлення. # акно ў рэжыме інкогніта не будзе адкрыта паўторна.}few{Ваш адміністратар патрабуе перазапусціць Chrome для ўсталявання абнаўлення. # акны ў рэжыме інкогніта не будуць адкрыты паўторна.}many{Ваш адміністратар патрабуе перазапусціць Chrome для ўсталявання абнаўлення. # вокнаў у рэжыме інкогніта не будуць адкрыты паўторна.}other{Ваш адміністратар патрабуе перазапусціць Chrome для ўсталявання абнаўлення. # акна ў рэжыме інкогніта не будуць адкрыты паўторна.}}</translation>
 <translation id="3622797965165704966">Цяпер выкарыстоўваць Chrome з Уліковым запісам Google стала прасцей і на агульнадаступных камп'ютарах.</translation>
@@ -357,6 +359,7 @@
 <translation id="6288788894729749483">Зрабіце Chrome стандартным браўзерам, каб бяспечна працаваць, ствараць і шукаць новае ў інтэрнэце</translation>
 <translation id="6291089322031436445">Праграмы Chrome для распрацоўшчыкаў</translation>
 <translation id="6291549208091401781">Google Chrome зараз усталяваны для ўсіх карыстальнікаў на камп'ютары.</translation>
+<translation id="6319856120645568262">Браўзеру Chrome патрабуецца дазвол на стварэнне карты вашага асяроддзя і адсочванне рук.</translation>
 <translation id="6326175484149238433">Выдаліць з Chrome</translation>
 <translation id="6327105987658262776">Няма даступных абнаўленняў.</translation>
 <translation id="6360449101159168105">Гэта ўкладка была неактыўнай, і памяць была вызвалена, каб забяспечыць хуткую работу Chrome. Вы можаце дадаць гэты сайт да выключэнняў, каб ён ніколі не адзначаўся як неактыўны.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_bn.xtb b/chrome/app/resources/google_chrome_strings_bn.xtb
index d8427d98..af2ceb1 100644
--- a/chrome/app/resources/google_chrome_strings_bn.xtb
+++ b/chrome/app/resources/google_chrome_strings_bn.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">ডাউনলোড হচ্ছে...</translation>
 <translation id="1662146548738125461">ChromeOS Flex সম্পর্কে</translation>
 <translation id="1674870198290878346">Chrome-এ ছদ্মবেশী উইন্ডোতে লিঙ্ক খুলুন</translation>
+<translation id="1679594062619799116">আপনি সাইন-ইন করে থাকাকালীন, Chrome-এ আপনার Google অ্যাকাউন্ট থেকে নিজের পাসওয়ার্ড ব্যবহার করতে পারবেন</translation>
 <translation id="1682634494516646069">Google Chrome-এর ডেটা নির্দেশিকা পড়তে এবং লিখতে পারে না:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -182,6 +183,7 @@
 <translation id="3564543103555793392">Chrome-এ সাইন-ইন করা থাকলে, আপনি বুকমার্ক, পাসওয়ার্ড এবং আরও অনেক কিছু সেভ করতে পারবেন, তারপরে আপনার ফোনে সেগুলি ব্যবহার করুন</translation>
 <translation id="3576528680708590453"><ph name="TARGET_URL_HOSTNAME" /> অ্যাক্সেস করতে অন্য ব্রাউজার খোলার জন্য আপনার সিস্টেম অ্যাডমিনিস্ট্রেটর Google Chrome কনফিগার করেছেন।</translation>
 <translation id="3582972582564653026">আপনার সব ডিভাইস জুড়ে Chrome সিঙ্ক করুন এবং নিজের মতো সাজিয়ে নিন</translation>
+<translation id="3583751698304738917">আপনি আগে থেকেই অন্য Chrome প্রোফাইলে <ph name="USER_EMAIL_ADDRESS" /> হিসেবে সাইন-ইন করেছেন</translation>
 <translation id="3595784445906693824">নতুন প্রোফাইলের মাধ্যমে Chrome-এ সাইন-ইন করবেন?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{একটি আপডেট প্রয়োগ করতে আপনার অ্যাডমিনিস্ট্রেটর আপনাকে Chrome আবার চালু করতে বলছেন}=1{একটি আপডেট প্রয়োগ করতে আপনার অ্যাডমিনিস্ট্রেটর আপনাকে Chrome আবার চালু করতে বলছেন। আপনার ছদ্মবেশী উইন্ডো আবার খুলবে না।}one{একটি আপডেট প্রয়োগ করতে আপনার অ্যাডমিনিস্ট্রেটর আপনাকে Chrome আবার চালু করতে বলছেন। আপনার #টি ছদ্মবেশী উইন্ডো আবার খুলবে না।}other{একটি আপডেট প্রয়োগ করতে আপনার অ্যাডমিনিস্ট্রেটর আপনাকে Chrome আবার চালু করতে বলছেন। আপনার #টি ছদ্মবেশী উইন্ডো আবার খুলবে না।}}</translation>
 <translation id="3622797965165704966">এখন আপনার Google অ্যাকাউন্ট ও শেয়ার করা কম্পিউটারগুলিতে Chrome ব্যবহার করা আরো সহজ৷</translation>
@@ -354,6 +356,7 @@
 <translation id="6288788894729749483">অনলাইনে নিরাপদে কাজ, তৈরি ও এক্সপ্লোর করতে, Chrome-কে আপনার ডিফল্ট ব্রাউজার হিসেবে সেট করুন</translation>
 <translation id="6291089322031436445">Chrome ডেভেলপার অ্যাপ</translation>
 <translation id="6291549208091401781">Google Chrome ইতোমধ্যে আপনার কম্পিউটারের সকল ব্যবহারকারীর জন্য ইনস্টল করা হয়েছে।</translation>
+<translation id="6319856120645568262">আপনার আশপাশ সম্পর্কে জানতে ও হাত ট্র্যাক করতে Chrome-এর অনুমতি প্রয়োজন</translation>
 <translation id="6326175484149238433">Chrome থেকে সরান</translation>
 <translation id="6327105987658262776">কোনও আপডেট উপলভ্য নেই।</translation>
 <translation id="6360449101159168105">Chrome যাতে দ্রুত কাজ করে সেই জন্য এই ট্যাব বন্ধ থাকাকালীন মেমরি খালি করা হয়েছে। এই সাইটটি অ্যাক্টিভ রাখার বিকল্প সব সময় বেছে নিতে পারবেন।</translation>
diff --git a/chrome/app/resources/google_chrome_strings_de.xtb b/chrome/app/resources/google_chrome_strings_de.xtb
index e12c733..184ea96 100644
--- a/chrome/app/resources/google_chrome_strings_de.xtb
+++ b/chrome/app/resources/google_chrome_strings_de.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">Download wird ausgeführt...</translation>
 <translation id="1662146548738125461">Über Chrome OS Flex</translation>
 <translation id="1674870198290878346">Link in Chrome-Inkognitofenster öffnen</translation>
+<translation id="1679594062619799116">Du kannst die Passwörter aus deinem Google-Konto in Chrome verwenden, solange du angemeldet bist</translation>
 <translation id="1682634494516646069">Google Chrome kann im folgenden Datenverzeichnis weder lesen noch schreiben: <ph name="USER_DATA_DIRECTORY" />.</translation>
 <translation id="1698376642261615901">Google Chrome ist ein Webbrowser, der Webseiten und Apps in Sekundenschnelle lädt und dabei äußerst stabil und nutzerfreundlich ist. Dank des integrierten Malware- und Phishing-Schutzes kannst du bedenkenlos im Internet surfen.</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome wird in einer Stunde neu gestartet}other{Chrome wird in # Stunden neu gestartet}}</translation>
@@ -180,6 +181,7 @@
 <translation id="3564543103555793392">Wenn du dich in Chrome anmeldest, kannst du Lesezeichen, Passwörter und andere Daten speichern und sie dann auf deinem Smartphone verwenden</translation>
 <translation id="3576528680708590453">Dein Systemadministrator hat Google Chrome so konfiguriert, dass <ph name="TARGET_URL_HOSTNAME" /> in einem alternativen Browser geöffnet wird.</translation>
 <translation id="3582972582564653026">Chrome auf allen deinen Geräten synchronisieren und personalisieren</translation>
+<translation id="3583751698304738917">Du bist in einem anderen Chrome-Profil bereits als <ph name="USER_EMAIL_ADDRESS" /> angemeldet</translation>
 <translation id="3595784445906693824">In einem neuen Profil in Chrome anmelden?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Laut deinem Administrator musst du Chrome neu starten, um ein Update durchzuführen}=1{Laut deinem Administrator musst du Chrome neu starten, um ein Update durchzuführen. Dein Inkognitofenster wird nicht wieder geöffnet.}other{Laut deinem Administrator musst du Chrome neu starten, um ein Update durchzuführen. Deine # Inkognitofenster werden nicht wieder geöffnet.}}</translation>
 <translation id="3622797965165704966">Du kannst Chrome jetzt noch einfacher mit deinem Google-Konto und auf gemeinsam genutzten Computern verwenden.</translation>
@@ -350,6 +352,7 @@
 <translation id="6288788894729749483">Chrome lässt sich als Standardbrowser festlegen, sodass du im Internet sicher surfen, erkunden und Inhalte erstellen kannst</translation>
 <translation id="6291089322031436445">Chrome Dev-Apps</translation>
 <translation id="6291549208091401781">Google Chrome ist bereits für alle Nutzer auf deinem Computer installiert.</translation>
+<translation id="6319856120645568262">Chrome benötigt eine Berechtigung für das Erstellen einer Karte deiner Umgebung und das Hand-Tracking</translation>
 <translation id="6326175484149238433">Aus Chrome entfernen</translation>
 <translation id="6327105987658262776">Es ist kein Update verfügbar.</translation>
 <translation id="6360449101159168105">Während dieser Tab inaktiv war, wurde Arbeitsspeicher freigegeben, damit Chrome schnell bleibt. Du kannst festlegen, dass diese Website nie inaktiv sein soll.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_el.xtb b/chrome/app/resources/google_chrome_strings_el.xtb
index 21d8841..2de118d 100644
--- a/chrome/app/resources/google_chrome_strings_el.xtb
+++ b/chrome/app/resources/google_chrome_strings_el.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">Γίνεται λήψη…</translation>
 <translation id="1662146548738125461">Σχετικά με το ChromeOS Flex</translation>
 <translation id="1674870198290878346">Άνοιγμα Συνδέσμου σε Παράθυρο ανών&amp;υμης περιήγησης Chrome</translation>
+<translation id="1679594062619799116">Μπορείτε να χρησιμοποιήσετε τους κωδικούς πρόσβασης από τον Λογαριασμό σας Google στο Chrome ενώ είστε συνδεδεμένοι</translation>
 <translation id="1682634494516646069">Το Google Chrome δεν έχει δυνατότητα ανάγνωσης και εγγραφής στον κατάλογο δεδομένων του:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -182,6 +183,7 @@
 <translation id="3564543103555793392">Όταν συνδέεστε στο Chrome, μπορείτε να αποθηκεύετε σελιδοδείκτες, κωδικούς πρόσβασης και άλλα και έπειτα να τα χρησιμοποιείτε στο τηλέφωνό σας</translation>
 <translation id="3576528680708590453">Ο διαχειριστής συστήματος έχει διαμορφώσει το Google Chrome έτσι ώστε να ανοίγει άλλο πρόγραμμα περιήγησης για την πρόσβαση στη διεύθυνση <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Συγχρονίστε και εξατομικεύστε το Chrome στις συσκευές σας</translation>
+<translation id="3583751698304738917">Είστε ήδη συνδεδεμένοι ως <ph name="USER_EMAIL_ADDRESS" /> σε ένα άλλο προφίλ Chrome</translation>
 <translation id="3595784445906693824">Σύνδεση στο Chrome σε ένα νέο προφίλ;</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Ο διαχειριστής σας απαιτεί να επανεκκινήσετε το Chrome, προκειμένου να εφαρμοστεί μια ενημέρωση.}=1{Ο διαχειριστής σας απαιτεί να επανεκκινήσετε το Chrome, προκειμένου να εφαρμοστεί μια ενημέρωση. Το παράθυρο για ανώνυμη περιήγηση δεν θα ανοίξει ξανά.}other{Ο διαχειριστής σας απαιτεί να επανεκκινήσετε το Chrome, προκειμένου να εφαρμοστεί μια ενημέρωση. Τα # παράθυρα για ανώνυμη περιήγηση δεν θα ανοίξουν ξανά.}}</translation>
 <translation id="3622797965165704966">Τώρα μπορείτε να χρησιμοποιείτε πιο εύκολα το Chrome με το Λογαριασμό σας Google και σε κοινόχρηστους υπολογιστές.</translation>
@@ -354,6 +356,7 @@
 <translation id="6288788894729749483">Ορίστε το Chrome ως προεπιλογή για την ασφαλή εκτέλεση, δημιουργία και εξερεύνηση στο διαδίκτυο</translation>
 <translation id="6291089322031436445">Εφαρμογές Chrome Dev</translation>
 <translation id="6291549208091401781">Το Google Chrome είναι ήδη εγκατεστημένο για όλους τους χρήστες στον υπολογιστή σας.</translation>
+<translation id="6319856120645568262">Το Chrome χρειάζεται άδεια για να χαρτογραφήσει τον περιβάλλοντα χώρο και να παρακολουθεί τα χέρια σας</translation>
 <translation id="6326175484149238433">Κατάργηση από το Chrome</translation>
 <translation id="6327105987658262776">Δεν υπάρχει διαθέσιμη ενημέρωση.</translation>
 <translation id="6360449101159168105">Ενώ αυτή η καρτέλα ήταν ανενεργή, ελευθερώθηκε μνήμη για να παραμείνει γρήγορο το Chrome. Μπορείτε να επιλέξετε να εξαιρείται πάντα αυτός ο ιστότοπος, ώστε να παραμένει ενεργός.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_en-GB.xtb b/chrome/app/resources/google_chrome_strings_en-GB.xtb
index e865a61..e575f576 100644
--- a/chrome/app/resources/google_chrome_strings_en-GB.xtb
+++ b/chrome/app/resources/google_chrome_strings_en-GB.xtb
@@ -48,6 +48,7 @@
 <translation id="1640672724030957280">Downloading ...</translation>
 <translation id="1662146548738125461">About Chrome OS Flex</translation>
 <translation id="1674870198290878346">Open Link in Chrome Inco&amp;gnito Window</translation>
+<translation id="1679594062619799116">You can use your passwords from your Google Account in Chrome while you're signed in</translation>
 <translation id="1682634494516646069">Google Chrome cannot read and write to its data directory:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -183,6 +184,7 @@
 <translation id="3564543103555793392">When you sign in to Chrome, you can save bookmarks, passwords and more, then use them on your phone</translation>
 <translation id="3576528680708590453">Your system administrator has configured Google Chrome to open an alternative browser to access <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Sync and personalise Chrome across your devices</translation>
+<translation id="3583751698304738917">You're already signed in as <ph name="USER_EMAIL_ADDRESS" /> in another Chrome profile</translation>
 <translation id="3595784445906693824">Sign in to Chrome in a new profile?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Your administrator requires that you relaunch Chrome to apply an update}=1{Your administrator requires that you relaunch Chrome to apply an update. Your Incognito window won't reopen.}other{Your administrator requires that you relaunch Chrome to apply an update. Your # Incognito windows won't reopen.}}</translation>
 <translation id="3622797965165704966">Now it's easier to use Chrome with your Google Account and on shared computers.</translation>
@@ -357,6 +359,7 @@
 <translation id="6288788894729749483">Set Chrome as your default to safely do, create and explore online</translation>
 <translation id="6291089322031436445">Chrome Dev Apps</translation>
 <translation id="6291549208091401781">Google Chrome is already installed for all users on your computer.</translation>
+<translation id="6319856120645568262">Chrome needs permission to map your surroundings and track your hands</translation>
 <translation id="6326175484149238433">Remove from Chrome</translation>
 <translation id="6327105987658262776">No update is available.</translation>
 <translation id="6360449101159168105">While this tab was inactive, memory was freed up to keep Chrome fast. You can choose to always exclude this site from being inactive.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_et.xtb b/chrome/app/resources/google_chrome_strings_et.xtb
index 52e6f43..6d98513 100644
--- a/chrome/app/resources/google_chrome_strings_et.xtb
+++ b/chrome/app/resources/google_chrome_strings_et.xtb
@@ -46,6 +46,7 @@
 <translation id="1640672724030957280">Allalaadimine ...</translation>
 <translation id="1662146548738125461">Teave Chrome OS Flexi kohta</translation>
 <translation id="1674870198290878346">Ava link Chrome'i inko&amp;gnito aknas</translation>
+<translation id="1679594062619799116">Kui olete sisse logitud, saate Chrome'is kasutada oma Google'i kontol olevaid paroole</translation>
 <translation id="1682634494516646069">Google Chrome ei saa andmekataloogi lugeda ega sellesse kirjutada:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -181,6 +182,7 @@
 <translation id="3564543103555793392">Kui logite Chrome'i sisse, saate salvestada järjehoidjaid, paroole ja muud ning seejärel kasutada neid oma telefonis</translation>
 <translation id="3576528680708590453">Teie süsteemiadministraator on konfigureerinud Google Chrome'i avama alternatiivset brauserit, et saada juurdepääs lehele <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Sünkroonige ja isikupärastage Chrome kõigis oma seadmetes</translation>
+<translation id="3583751698304738917">Olete juba ühel teisel Chrome'i profiilil kasutajana <ph name="USER_EMAIL_ADDRESS" /> sisse logitud</translation>
 <translation id="3595784445906693824">Kas logida Chrome'i sisse uuel profiilil?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Administraator nõuab, et käivitaksite Chrome'i värskenduse rakendamiseks uuesti}=1{Administraator nõuab, et käivitaksite Chrome'i värskenduse rakendamiseks uuesti. Teie inkognito akent ei avata uuesti.}other{Administraator nõuab, et käivitaksite Chrome'i värskenduse rakendamiseks uuesti. Teie # inkognito akent ei avata uuesti.}}</translation>
 <translation id="3622797965165704966">Nüüd on Chrome'i lihtsam kasutada Google'i kontoga ja jagatud arvutites.</translation>
@@ -353,6 +355,7 @@
 <translation id="6288788894729749483">Määrake Chrome vaikebrauseriks, et veebis turvaliselt toiminguid teha, luua ja avastada</translation>
 <translation id="6291089322031436445">Chrome Devi rakendused</translation>
 <translation id="6291549208091401781">Google Chrome on arvutisse kõigi kasutajate jaoks juba installitud.</translation>
+<translation id="6319856120645568262">Chrome vajab teie ümbruse kaardistamiseks ja teie käte jälgimiseks luba</translation>
 <translation id="6326175484149238433">Eemalda Chrome'ist</translation>
 <translation id="6327105987658262776">Ühtegi uuendust ei ole saadaval.</translation>
 <translation id="6360449101159168105">Ajal, mil see vaheleht oli inaktiivne, vabastati mälu, et Chrome oleks jätkuvalt kiire. Soovi korral võite selle saidi inaktiivseks muutumise alati välistada.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_fa.xtb b/chrome/app/resources/google_chrome_strings_fa.xtb
index cd7df427..8a1d8c982 100644
--- a/chrome/app/resources/google_chrome_strings_fa.xtb
+++ b/chrome/app/resources/google_chrome_strings_fa.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">در حال بارگیری…</translation>
 <translation id="1662146548738125461">‏درباره ChromeOS Flex</translation>
 <translation id="1674870198290878346">‏باز کردن پیوند در پنجره &amp;ناشناس Chrome</translation>
+<translation id="1679594062619799116">‏وقتی به سیستم وارد شده باشید می‌توانید از گذرواژه‌های «حساب Google» خود در Chrome استفاده کنید</translation>
 <translation id="1682634494516646069">‏Google Chrome نمی‌تواند مسیر داده‌های خود را بخواند یا در آن بنویسد: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">‏Google Chrome یک مرورگر وب است که برنامه‌های کاربردی و صفحات وب را در یک چشم به هم زدن اجرا و باز می‌کند. استفاده از آن سریع و آسان است و همیشه در دسترس است. با برنامه‌های حفاظت دربرابر رمزگیری و بدافزار تعبیه شده در Google Chrome، وب را با امنیت بیشتر مرور کنید.</translation>
 <translation id="1713301662689114961">{0,plural, =1{‏Chrome یک ساعت دیگر راه‌اندازی مجدد می‌شود}one{‏Chrome # ساعت دیگر راه‌اندازی مجدد می‌شود}other{‏Chrome # ساعت دیگر راه‌اندازی مجدد می‌شود}}</translation>
@@ -180,6 +181,7 @@
 <translation id="3564543103555793392">‏وقتی به سیستم Chrome وارد می‌شوید، می‌توانید نشانک‌ها، گذرواژه‌ها، و اطلاعات دیگر را ذخیره کنید و در تلفنتان از آن‌ها استفاده کنید</translation>
 <translation id="3576528680708590453">‏سرپرست سیستم برای باز شدن مرورگری دیگر جهت دسترسی به <ph name="TARGET_URL_HOSTNAME" />، Google Chrome را پیکربندی کرده است.</translation>
 <translation id="3582972582564653026">‏Chrome را در همه دستگاه‌هایتان همگام‌سازی و شخصی‌سازی کنید</translation>
+<translation id="3583751698304738917">‏قبلاً با <ph name="USER_EMAIL_ADDRESS" /> در نمایه Chrome دیگری به سیستم وارد شده‌اید</translation>
 <translation id="3595784445906693824">‏در نمایه جدید به سیستم Chrome وارد می‌شوید؟</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{‏سرپرست سیستم لازم می‌داند برای اعمال به‌روزرسانی، Chrome را راه‌اندازی مجدد کنید}=1{‏سرپرست سیستم لازم می‌داند برای اعمال به‌روزرسانی، Chrome را راه‌اندازی مجدد کنید. پنجره ناشناس بازگشایی نمی‌شود.}one{‏سرپرست سیستم لازم می‌داند برای اعمال به‌روزرسانی، Chrome را راه‌اندازی مجدد کنید. # پنجره ناشناس بازگشایی نمی‌شود.}other{‏سرپرست سیستم لازم می‌داند برای اعمال به‌روزرسانی، Chrome را راه‌اندازی مجدد کنید. # پنجره ناشناس بازگشایی نمی‌شود.}}</translation>
 <translation id="3622797965165704966">‏اکنون استفاده از Chrome با حساب Google شما و در رایانه‌های مشترک آسان‌تر شده است.</translation>
@@ -350,6 +352,7 @@
 <translation id="6288788894729749483">‏برای انجام کارها، یا ایجاد و کاوش محتوا در فضای آنلاین، Chrome را به‌عنوان مرورگر پیش‌فرضتان تنظیم کنید</translation>
 <translation id="6291089322031436445">‏برنامه‌های Chrome نسخه Dev</translation>
 <translation id="6291549208091401781">‏Google Chrome از قبل برای همه کاربران این رایانه نصب شده است.</translation>
+<translation id="6319856120645568262">‏‫Chrome برای نقشه‌برداری از محیط اطراف و ردیابی دستان شما به اجازه نیاز دارد</translation>
 <translation id="6326175484149238433">‏حذف از Chrome</translation>
 <translation id="6327105987658262776">به‌روزرسانی دردسترس نیست.</translation>
 <translation id="6360449101159168105">‏وقتی این برگه غیرفعال بود، مقداری از حافظه آزاد شد تا سرعت Chrome حفظ شود. می‌توانید انتخاب کنید این سایت همیشه از غیرفعال شدن مستثنی شود.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_fi.xtb b/chrome/app/resources/google_chrome_strings_fi.xtb
index 74ebf17..a3ad59c 100644
--- a/chrome/app/resources/google_chrome_strings_fi.xtb
+++ b/chrome/app/resources/google_chrome_strings_fi.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">Ladataan...</translation>
 <translation id="1662146548738125461">Tietoa ChromeOS Flexistä</translation>
 <translation id="1674870198290878346">Avaa linkki Chromen inco&amp;gnito-ikkunassa</translation>
+<translation id="1679594062619799116">Voit käyttää Google-tilisi salasanoja Chromessa, kun olet kirjautuneena sisään</translation>
 <translation id="1682634494516646069">Chrome ei voi lukea tietohakemistoaan <ph name="USER_DATA_DIRECTORY" /> tai kirjoittaa siihen</translation>
 <translation id="1698376642261615901">Google Chrome on verkkoselain, jolla voit avata verkkosivuja ja sovelluksia salamannopeasti. Se on nopea, vakaa ja helppokäyttöinen. Selaa verkkoa turvallisemmin Google Chromen haittaohjelma- ja tietojenkalastelusuojauksen avulla.</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome käynnistetään uudelleen tunnin kuluttua}other{Chrome käynnistetään uudelleen # tunnin kuluttua}}</translation>
@@ -180,6 +181,7 @@
 <translation id="3564543103555793392">Kun kirjaudut Chromeen, voit tallentaa esimerkiksi kirjanmerkkejä ja salasanoja ja käyttää niitä puhelimellasi</translation>
 <translation id="3576528680708590453">Järjestelmänvalvojasi on määrittänyt Chromen käynnistämään vaihtoehtoisen selaimen, kun <ph name="TARGET_URL_HOSTNAME" /> avataan.</translation>
 <translation id="3582972582564653026">Voit synkronoida Chromen ja tehdä siitä yksilöllisemmän kaikilla laitteilla.</translation>
+<translation id="3583751698304738917">Olet jo kirjautunut sisään tilillä <ph name="USER_EMAIL_ADDRESS" /> toisessa Chrome-profiilissa</translation>
 <translation id="3595784445906693824">Haluatko kirjautua Chromeen uudella profiililla?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Ylläpitäjä vaatii Chromen uudelleenkäynnistystä, jotta päivitys voidaan ottaa käyttöön.}=1{Ylläpitäjä vaatii Chromen uudelleenkäynnistystä, jotta päivitys voidaan ottaa käyttöön. Incognito-ikkunaasi ei avata uudelleen.}other{Ylläpitäjä vaatii Chromen uudelleenkäynnistystä, jotta päivitys voidaan ottaa käyttöön. # incognito-ikkunaasi ei avata uudelleen.}}</translation>
 <translation id="3622797965165704966">Nyt voit helpommin käyttää Chromea Google-tililläsi ja jaetuilla tietokoneilla.</translation>
@@ -350,6 +352,7 @@
 <translation id="6288788894729749483">Valitse Chrome oletusselaimeksi, niin voit tehdä, luoda ja tutkia asioita turvallisesti verkossa</translation>
 <translation id="6291089322031436445">Chromen kehittäjäversion sovellukset</translation>
 <translation id="6291549208091401781">Google Chrome on jo asennettuna kaikille tietokoneen käyttäjille.</translation>
+<translation id="6319856120645568262">Chrome tarvitsee luvan ympäristösi kartoittamiseen ja käsiesi liikkeiden seuraamiseen</translation>
 <translation id="6326175484149238433">Poista Chromesta</translation>
 <translation id="6327105987658262776">Päivityksiä ei ole saatavilla.</translation>
 <translation id="6360449101159168105">Kun tämä välilehti ei ollut aktiivinen, muistia vapautettiin Chromen pitämiseksi nopeana. Voit halutessasi valita, että tämä sivusto ei ole koskaan ei-aktiivinen.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_gl.xtb b/chrome/app/resources/google_chrome_strings_gl.xtb
index ed8567be..d0e0b7ad 100644
--- a/chrome/app/resources/google_chrome_strings_gl.xtb
+++ b/chrome/app/resources/google_chrome_strings_gl.xtb
@@ -48,6 +48,7 @@
 <translation id="1640672724030957280">Descargando…</translation>
 <translation id="1662146548738125461">Acerca de Chrome OS Flex</translation>
 <translation id="1674870198290878346">Abrir ligazón nunha ventá do modo de incó&amp;gnito de Chrome</translation>
+<translation id="1679594062619799116">Poderás usar os contrasinais da túa Conta de Google en Chrome mentres teñas a sesión iniciada</translation>
 <translation id="1682634494516646069">Google Chrome non pode ler nin escribir no seu directorio de datos:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -183,6 +184,7 @@
 <translation id="3564543103555793392">Cando inicias sesión en Chrome, podes gardar marcadores, contrasinais e moito máis para poder usalos despois no teléfono</translation>
 <translation id="3576528680708590453">A persoa que administra o teu sistema configurou Google Chrome para abrir outro navegador co obxectivo de acceder a <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Sincroniza e personaliza Chrome nos teus dispositivos</translation>
+<translation id="3583751698304738917">Xa tes a sesión iniciada como <ph name="USER_EMAIL_ADDRESS" /> noutro perfil de Chrome</translation>
 <translation id="3595784445906693824">Queres iniciar sesión en Chrome cun perfil novo?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{O teu administrador require que reinicies Chrome para aplicar unha actualización}=1{O teu administrador require que reinicies Chrome para aplicar unha actualización. A ventá do modo de incógnito non se volverá abrir.}other{O teu administrador require que reinicies Chrome para aplicar unha actualización. As # ventás do modo de incógnito non se volverán abrir.}}</translation>
 <translation id="3622797965165704966">Agora é máis fácil utilizar Chrome coa túa conta de Google e en ordenadores compartidos.</translation>
@@ -357,6 +359,7 @@
 <translation id="6288788894729749483">Define Chrome como o teu navegador predeterminado para levar a cabo accións e crear e explorar contido de forma segura</translation>
 <translation id="6291089322031436445">Aplicacións de Chrome Dev</translation>
 <translation id="6291549208091401781">Google Chrome xa está instalado para todos os usuarios no teu ordenador.</translation>
+<translation id="6319856120645568262">Chrome necesita permiso para analizar o que te rodea e facer un seguimento das mans</translation>
 <translation id="6326175484149238433">Eliminar de Chrome</translation>
 <translation id="6327105987658262776">Non hai ningunha actualización dispoñible.</translation>
 <translation id="6360449101159168105">Mentres esta pestana estaba inactiva, liberouse memoria para que Chrome siga funcionando rápido. Podes optar por excluír este sitio para que nunca estea inactivo.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_gu.xtb b/chrome/app/resources/google_chrome_strings_gu.xtb
index 7d8574d..6f8ae03 100644
--- a/chrome/app/resources/google_chrome_strings_gu.xtb
+++ b/chrome/app/resources/google_chrome_strings_gu.xtb
@@ -49,6 +49,7 @@
 <translation id="1640672724030957280">ડાઉનલોડ કરી રહ્યું છે...</translation>
 <translation id="1662146548738125461">ChromeOS Flex વિશે</translation>
 <translation id="1674870198290878346">Chrome છુ&amp;પી વિંડોમાં લિંક ખોલો</translation>
+<translation id="1679594062619799116">તમે સાઇન ઇન થયા હો એ દરમિયાન Chromeમાં તમારા Google એકાઉન્ટમાંના તમારા પાસવર્ડનો ઉપયોગ તમે કરી શકો છો</translation>
 <translation id="1682634494516646069">Google Chrome એની ડેટા ડિરેક્ટરી વાંચી અથવા લખી શકતુંં નથી:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -184,6 +185,7 @@
 <translation id="3564543103555793392">જ્યારે તમે તમારા Chromeમાં સાઇન ઇન કરો છો, ત્યારે તમે બુકમાર્ક, પાસવર્ડ અને બીજું ઘણું સાચવી શકો છો, જે તમારા ફોન પરના ઉપયોગ કરતાં વધુ સરળ છે</translation>
 <translation id="3576528680708590453">તમારા સિસ્ટમ વ્યવસ્થાપકે <ph name="TARGET_URL_HOSTNAME" />ને ઍક્સેસ કરવા Google Chromeને વૈકલ્પિક બ્રાઉઝર ખોલવા માટે ગોઠવેલું છે.</translation>
 <translation id="3582972582564653026">તમારા બધા ડિવાઇસ પર Chromeને સિંક કરો અને મનગમતું બનાવો</translation>
+<translation id="3583751698304738917">તમે પહેલેથી Chromeની અન્ય પ્રોફાઇલમાં <ph name="USER_EMAIL_ADDRESS" /> તરીકે સાઇન ઇન થયા છો</translation>
 <translation id="3595784445906693824">નવી પ્રોફાઇલમાં Chromeમાં સાઇન ઇન કરીએ?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{અપડેટ લાગુ કરવા માટે તમે Chromeને ફરીથી લૉન્ચ કરો એવું તમારા વ્યવસ્થાપક ઇચ્છે છે}=1{અપડેટ લાગુ કરવા માટે તમે Chromeને ફરીથી લૉન્ચ કરો એવું તમારા વ્યવસ્થાપક ઇચ્છે છે. તમારી છુપી વિન્ડો ફરીથી ખૂલશે નહીં.}one{અપડેટ લાગુ કરવા માટે તમે Chromeને ફરીથી લૉન્ચ કરો એવું તમારા વ્યવસ્થાપક ઇચ્છે છે. તમારી # છુપી વિન્ડો ફરીથી ખૂલશે નહીં.}other{અપડેટ લાગુ કરવા માટે તમે Chromeને ફરીથી લૉન્ચ કરો એવું તમારા વ્યવસ્થાપક ઇચ્છે છે. તમારી # છુપી વિન્ડો ફરીથી ખૂલશે નહીં.}}</translation>
 <translation id="3622797965165704966">હવે તમારા Google એકાઉન્ટ સાથે અને શેર કરેલા કમ્પ્યુટર પર Chromeનો ઉપયોગ કરવો વધુ સરળ છે.</translation>
@@ -358,6 +360,7 @@
 <translation id="6288788894729749483">સલામત રીતે ઑનલાઇન વસ્તુઓ કરવા, બનાવવા, અને શોધખોળ કરવા માટે, Chromeને તમારા ડિફૉલ્ટ બ્રાઉઝર તરીકે સેટ કરો</translation>
 <translation id="6291089322031436445">Chrome Dev ઍપ્લિકેશનો</translation>
 <translation id="6291549208091401781">Google Chrome, તમારા કમ્પ્યુટર પર પહેલાંથી તમામ વપરાશકર્તાઓ માટે ઇન્સ્ટૉલ કરેલ છે.</translation>
+<translation id="6319856120645568262">તમારી આસપાસના વિસ્તારો અને તમારા હાથને ટ્રૅક કરવા માટે, Chromeને પરવાનગીની જરૂર છે</translation>
 <translation id="6326175484149238433">Chrome માંથી દૂર કરો</translation>
 <translation id="6327105987658262776">કોઈ અપડેટ ઉપલબ્ધ નથી.</translation>
 <translation id="6360449101159168105">જ્યારે આ ટૅબ નિષ્ક્રિય હતું, ત્યારે Chromeને ઝડપી રાખવા માટે મેમરી ખાલી કરવામાં આવી હતી. તમે આ સાઇટને નિષ્ક્રિય રહેવામાંથી બાકાત રાખવાનું હંમેશા પસંદ કરી શકો છો.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_hu.xtb b/chrome/app/resources/google_chrome_strings_hu.xtb
index 325e311..8fcfcf9 100644
--- a/chrome/app/resources/google_chrome_strings_hu.xtb
+++ b/chrome/app/resources/google_chrome_strings_hu.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">Letöltés...</translation>
 <translation id="1662146548738125461">A ChromeOS Flex névjegye</translation>
 <translation id="1674870198290878346">Link megnyitása Chrome-inko&amp;gnitóablakban</translation>
+<translation id="1679594062619799116">Használhatja a Google-fiókjában tárolt jelszavait a Chrome-ban, amikor be van jelentkezve.</translation>
 <translation id="1682634494516646069">A Chrome nem tudja olvasni és írni az adatkönyvtárát: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">A Google Chrome olyan böngésző, amely villámgyorsan futtatja a weboldalakat és az alkalmazásokat. Gyors, stabil és könnyen használható. A beépített, adathalászat és a kártékony programok elleni védelemmel biztonságosabban böngészhet az interneten.</translation>
 <translation id="1713301662689114961">{0,plural, =1{A Chrome 1 órán belül újraindul}other{A Chrome # órán belül újraindul}}</translation>
@@ -180,6 +181,7 @@
 <translation id="3564543103555793392">Amikor bejelentkezik a Chrome-ba, könyvjelzőket, jelszavakat és egyebeket menthet, majd használhatja őket a telefonján</translation>
 <translation id="3576528680708590453">Rendszergazdája úgy állította be a Google Chrome-ot, hogy másik böngészőt nyisson meg a(z) <ph name="TARGET_URL_HOSTNAME" /> eléréséhez.</translation>
 <translation id="3582972582564653026">Szinkronizálhatja és személyre szabhatja a Chrome-ot minden eszközén</translation>
+<translation id="3583751698304738917">Már be van jelentkezve a(z) <ph name="USER_EMAIL_ADDRESS" /> fiókkal egy másik Chrome-profilban.</translation>
 <translation id="3595784445906693824">Új profillal jelentkezik be a Chrome-ba?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{A rendszergazda előírta, hogy újra kell indítania a Chrome-ot a frissítés alkalmazásához.}=1{A rendszergazda előírta, hogy újra kell indítania a Chrome-ot a frissítés alkalmazásához. Az inkognitó ablak nem fog újra megnyílni.}other{A rendszergazda előírta, hogy újra kell indítania a Chrome-ot a frissítés alkalmazásához. A(z) # inkognitó ablak nem fog újra megnyílni.}}</translation>
 <translation id="3622797965165704966">Google-fiókjával most még egyszerűbben használhatja a Chrome-ot közösen használt számítógépeken.</translation>
@@ -350,6 +352,7 @@
 <translation id="6288788894729749483">Az online tartalmak biztonságos kezeléséhez, létrehozásához és felfedezéséhez beállíthatja a Chrome-ot alapértelmezett böngészőként</translation>
 <translation id="6291089322031436445">Chrome Dev-alkalmazások</translation>
 <translation id="6291549208091401781">A Google Chrome már telepítve van az összes felhasználó számára a számítógépen.</translation>
+<translation id="6319856120645568262">A Chrome-nak engedélyre van szüksége ahhoz, hogy feltérképezhesse az Ön környezetét, és nyomon követhesse a kezét</translation>
 <translation id="6326175484149238433">Eltávolítás a Chrome-ból</translation>
 <translation id="6327105987658262776">Nincs rendelkezésre álló frissítés.</translation>
 <translation id="6360449101159168105">Amíg ez a lap inaktív volt, a rendszer memóriát szabadított fel, hogy a Chrome gyors maradjon. Dönthet úgy, hogy mindig kizárja ezt a webhelyet az inaktív állapotból.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_id.xtb b/chrome/app/resources/google_chrome_strings_id.xtb
index 70bc487..508cefbb 100644
--- a/chrome/app/resources/google_chrome_strings_id.xtb
+++ b/chrome/app/resources/google_chrome_strings_id.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">Mengunduh...</translation>
 <translation id="1662146548738125461">Tentang ChromeOS Flex</translation>
 <translation id="1674870198290878346">Buka Link di Jendela Sa&amp;maran Chrome</translation>
+<translation id="1679594062619799116">Anda dapat menggunakan sandi dari Akun Google Anda di Chrome saat login</translation>
 <translation id="1682634494516646069">Google Chrome tidak dapat membaca dan menulis ke direktori datanya: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome adalah browser web yang menjalankan halaman dan aplikasi web secepat kilat. Cepat, stabil, dan mudah digunakan. Jelajahi web secara lebih aman dengan perlindungan terhadap software perusak dan phishing yang disertakan dalam Google Chrome.</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome akan diluncurkan ulang dalam 1 jam}other{Chrome akan diluncurkan ulang dalam # jam}}</translation>
@@ -180,6 +181,7 @@
 <translation id="3564543103555793392">Saat login ke Chrome, Anda dapat menyimpan bookmark, sandi, dan data lainnya, lalu menggunakannya di ponsel</translation>
 <translation id="3576528680708590453">Administrator sistem Anda telah mengonfigurasi Google Chrome untuk membuka browser alternatif guna mengakses <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Menyinkronkan dan mempersonalisasi Chrome di perangkat Anda</translation>
+<translation id="3583751698304738917">Anda sudah login sebagai <ph name="USER_EMAIL_ADDRESS" /> di profil Chrome lain</translation>
 <translation id="3595784445906693824">Login ke Chrome di profil baru?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Administrator mewajibkan Anda meluncurkan kembali Chrome untuk menerapkan update}=1{Administrator mewajibkan Anda meluncurkan kembali Chrome untuk menerapkan update. Jendela Samaran Anda tidak akan dibuka kembali.}other{Administrator mewajibkan Anda meluncurkan kembali Chrome untuk menerapkan update. # jendela Samaran Anda tidak akan dibuka kembali.}}</translation>
 <translation id="3622797965165704966">Kini, menggunakan Chrome dengan Akun Google Anda dan di komputer bersama jadi lebih mudah.</translation>
@@ -350,6 +352,7 @@
 <translation id="6288788894729749483">Setel Chrome sebagai browser default Anda untuk beraktivitas, berkreasi, dan menjelajah secara online dengan aman</translation>
 <translation id="6291089322031436445">Aplikasi Chrome Dev</translation>
 <translation id="6291549208091401781">Google Chrome sudah terpasang untuk semua pengguna di komputer Anda.</translation>
+<translation id="6319856120645568262">Chrome memerlukan izin untuk memetakan lingkungan dan melacak tangan Anda</translation>
 <translation id="6326175484149238433">Hapus dari Chrome</translation>
 <translation id="6327105987658262776">Tidak ada update yang tersedia.</translation>
 <translation id="6360449101159168105">Saat tab ini tidak aktif, memori akan dikosongkan agar Chrome tetap cepat. Anda dapat memilih untuk selalu mengecualikan situs ini agar tetap aktif.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_it.xtb b/chrome/app/resources/google_chrome_strings_it.xtb
index ff9baad4..83e31c4b 100644
--- a/chrome/app/resources/google_chrome_strings_it.xtb
+++ b/chrome/app/resources/google_chrome_strings_it.xtb
@@ -46,6 +46,7 @@
 <translation id="1640672724030957280">Download in corso...</translation>
 <translation id="1662146548738125461">Informazioni su ChromeOS Flex</translation>
 <translation id="1674870198290878346">Apri link in una finestra di navigazione in inco&amp;gnito di Chrome</translation>
+<translation id="1679594062619799116">Puoi usare le password presenti nel tuo Account Google in Chrome dopo aver eseguito l'accesso</translation>
 <translation id="1682634494516646069">Google Chrome non è in grado di leggere e scrivere nella directory dei dati: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome è un browser web che apre pagine e applicazioni web con grande velocità. È veloce, stabile e facile da utilizzare. Esplora il Web in modo più sicuro grazie alla protezione contro malware e phishing incorporata in Google Chrome.</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome verrà riavviato tra un'ora}other{Chrome verrà riavviato tra # ore}}</translation>
@@ -179,6 +180,7 @@
 <translation id="3564543103555793392">Se accedi a Chrome, puoi salvare preferiti, password e altri dati per poi utilizzarli sul tuo smartphone</translation>
 <translation id="3576528680708590453">L'amministratore di sistema ha configurato Google Chrome per l'apertura di un browser alternativo per accedere a <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Sincronizza e personalizza Chrome sui tuoi dispositivi</translation>
+<translation id="3583751698304738917">Hai già eseguito l'accesso come <ph name="USER_EMAIL_ADDRESS" /> in un altro profilo Chrome</translation>
 <translation id="3595784445906693824">Accedere a Chrome in un nuovo profilo?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{L'amministratore richiede il riavvio di Chrome per installare un aggiornamento}=1{L'amministratore richiede il riavvio di Chrome per installare un aggiornamento. La finestra di navigazione in incognito non verrà riaperta.}other{L'amministratore richiede il riavvio di Chrome per installare un aggiornamento. Le # finestre di navigazione in incognito non verranno riaperte.}}</translation>
 <translation id="3622797965165704966">Ora è più facile utilizzare Chrome con il tuo Account Google e sui computer condivisi.</translation>
@@ -349,6 +351,7 @@
 <translation id="6288788894729749483">Imposta Chrome come browser predefinito per svolgere attività, creare ed esplorare online in tutta sicurezza</translation>
 <translation id="6291089322031436445">App di Chrome Dev</translation>
 <translation id="6291549208091401781">Google Chrome è già installato per tutti gli utenti sul computer.</translation>
+<translation id="6319856120645568262">Chrome deve avere l'autorizzazione per mappare l'ambiente circostante e monitorare le tue mani</translation>
 <translation id="6326175484149238433">Rimuovi da Chrome</translation>
 <translation id="6327105987658262776">Nessun aggiornamento disponibile.</translation>
 <translation id="6360449101159168105">Mentre questa scheda non era attiva, la memoria è stata liberata per mantenere Chrome veloce. Puoi scegliere di escludere sempre il sito dall'inattività.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ja.xtb b/chrome/app/resources/google_chrome_strings_ja.xtb
index 79efc6ad..fcd9b89 100644
--- a/chrome/app/resources/google_chrome_strings_ja.xtb
+++ b/chrome/app/resources/google_chrome_strings_ja.xtb
@@ -46,6 +46,7 @@
 <translation id="1640672724030957280">ダウンロードしています...</translation>
 <translation id="1662146548738125461">ChromeOS Flex について</translation>
 <translation id="1674870198290878346">Chrome のシークレット ウインドウでリンクを開く(&amp;G)</translation>
+<translation id="1679594062619799116">ログイン中は、Google アカウントに保存したパスワードを Chrome で使用できます</translation>
 <translation id="1682634494516646069">Google Chrome はこのデータ ディレクトリへの読み書きを実行できません: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome は、ウェブページやアプリケーションを高速に実行できるスピードと、高い安定性を兼ね備えた非常に使いやすいウェブブラウザです。不正なソフトウェアやフィッシングに対する保護機能が組み込まれており、ウェブを安全にブラウジングできます。</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome は 1 時間後に再起動されます}other{Chrome は # 時間後に再起動されます}}</translation>
@@ -179,6 +180,7 @@
 <translation id="3564543103555793392">Chrome にログインすると、ブックマークやパスワードなどの設定を保存して、スマートフォンで使用できます</translation>
 <translation id="3576528680708590453">システム管理者が、<ph name="TARGET_URL_HOSTNAME" /> へのアクセスに代替ブラウザを開くよう Google Chrome を設定しています。</translation>
 <translation id="3582972582564653026">同期してカスタマイズした Chrome をどのデバイスでも使用できます</translation>
+<translation id="3583751698304738917">別の Chrome プロフィールに <ph name="USER_EMAIL_ADDRESS" /> としてすでにログインしています</translation>
 <translation id="3595784445906693824">新しいプロフィールで Chrome にログインしますか?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{管理者が、アップデートを適用するために Chrome を再起動するよう求めています}=1{管理者が、アップデートを適用するために Chrome を再起動するよう求めています。シークレット ウィンドウは、再起動後は自動的には開きません。}other{管理者が、アップデートを適用するために Chrome を再起動するよう求めています。現在開いている # 個のシークレット ウィンドウは、再起動後は自動的には開きません。}}</translation>
 <translation id="3622797965165704966">共有パソコンの Chrome で Google アカウントが簡単に使用できるようになりました。</translation>
@@ -349,6 +351,7 @@
 <translation id="6288788894729749483">Chrome を既定として設定すると、オンラインの作業や作成、検索を安全に行うことができます</translation>
 <translation id="6291089322031436445">Chrome Dev アプリ</translation>
 <translation id="6291549208091401781">Google Chrome は既にパソコンのすべてのユーザー対してインストールされています。</translation>
+<translation id="6319856120645568262">Chrome にシーン認識とハンド トラッキングを許可する必要があります</translation>
 <translation id="6326175484149238433">Chrome から削除</translation>
 <translation id="6327105987658262776">利用できるアップデートはありません。</translation>
 <translation id="6360449101159168105">Chrome を高速に保つため、このタブがアクティブでないときにメモリを解放しました。このサイトを常にアクティブにするよう選択できます。</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ka.xtb b/chrome/app/resources/google_chrome_strings_ka.xtb
index 09b9652..fee5ec1 100644
--- a/chrome/app/resources/google_chrome_strings_ka.xtb
+++ b/chrome/app/resources/google_chrome_strings_ka.xtb
@@ -48,6 +48,7 @@
 <translation id="1640672724030957280">მიმდინარეობს ჩამოტვირთვა…</translation>
 <translation id="1662146548738125461">ChromeOS Flex-ის შესახებ</translation>
 <translation id="1674870198290878346">ბმულის გახსნა Chrome-ის ინკო&amp;გნიტო ფანჯარაში</translation>
+<translation id="1679594062619799116">სანამ შესული ხართ Chromium-ში შეძლებთ თქვენს Google ანგარიშში არსებული პაროლების გამოყენებას</translation>
 <translation id="1682634494516646069">Google Chrome ვერ ახერხებს თავის მონაცემთა დირექტორიაში წაკითხვას და ჩაწერის განხორციელებას:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -183,6 +184,7 @@
 <translation id="3564543103555793392">Chrome-ში შესვლის შემდეგ შეგიძლიათ სანიშნეების, პაროლებისა და სხვა მონაცემების შენახვა, რომ შემდეგ ისინი თქვენს ტელეფონში გამოიყენოთ</translation>
 <translation id="3576528680708590453">თქვენი სისტემის ადმინისტრატორმა მოახდინა Google Chrome-ის კონფიგურაცია იმგვარად, რომ <ph name="TARGET_URL_HOSTNAME" />-ზე წვდომისთვის საჭიროა ალტერნატიული ბრაუზერის გახსნა.</translation>
 <translation id="3582972582564653026">მოახდინეთ Chrome-ის სინქრონიზაცია და პერსონალიზება თქვენს ყველა მოწყობილობას შორის</translation>
+<translation id="3583751698304738917">თქვენ უკვე შესული ხართ Chrome-ის სხვა პროფილში როგორც <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="3595784445906693824">გსურთ, შეხვიდეთ Chrome-ის ახალ პროფილში?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{განახლების მისასადაგებლად თქვენი ადმინისტრატორი მოითხოვს Chrome-ის ხელახლა გაშვებას}=1{განახლების მისასადაგებლად თქვენი ადმინისტრატორი მოითხოვს Chrome-ის ხელახლა გაშვებას. თქვენი ინკოგნიტო ფანჯარა ხელახლა არ გაიხსნება.}other{განახლების მისასადაგებლად თქვენი ადმინისტრატორი მოითხოვს Chrome-ის ხელახლა გაშვებას. თქვენი # ინკოგნიტო ფანჯარა ხელახლა არ გაიხსნება.}}</translation>
 <translation id="3622797965165704966">ადვილი გახდა თქვენი Google-ის ანგარიშის მეშვეობით Chrome-ის გამოყენება და საერთო მოხმარების კომპიუტერებზეც.</translation>
@@ -357,6 +359,7 @@
 <translation id="6288788894729749483">დააყენეთ Chrome ნაგულისხმევ ბრაუზერად, რათა უსაფრთხოდ შექმნათ კონტენტი და დაათვალიეროთ ვები</translation>
 <translation id="6291089322031436445">Chrome Dev აპები</translation>
 <translation id="6291549208091401781">Google Chrome უკვე დაინსტალირებულია თქვენი კომპიუტერის ყველა მომხმარებლისთვის.</translation>
+<translation id="6319856120645568262">თქვენი გარემოს მოსანიშნად და თქვენი ხელებისთვის თვალის მიდევნებისთვის Chrome საჭრიროებს ნებართვას</translation>
 <translation id="6326175484149238433">Chrome-იდან წაშლა</translation>
 <translation id="6327105987658262776">განახლებები ხელმისაწვდომი არ არის.</translation>
 <translation id="6360449101159168105">სანამ ეს ჩანართი უმოქმედო იყო, Chrome-ის სისწრაფის შესანარჩუნებლად მეხსიერება გათავისუფლდა. სურვილისამებრ, შეგიძლიათ აირჩიოთ, რომ ეს საიტი ყოველთვის გამოირიცხოს უმოქმედოთა რიგებიდან.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_kk.xtb b/chrome/app/resources/google_chrome_strings_kk.xtb
index f7f48c0..f87fe6df 100644
--- a/chrome/app/resources/google_chrome_strings_kk.xtb
+++ b/chrome/app/resources/google_chrome_strings_kk.xtb
@@ -48,6 +48,7 @@
 <translation id="1640672724030957280">Жүктеп алынып жатыр…</translation>
 <translation id="1662146548738125461">ChromeOS Flex туралы ақпарат</translation>
 <translation id="1674870198290878346">Сілтемені Chrome инкогнито терезесінде ашу</translation>
+<translation id="1679594062619799116">Google аккаунтыңызға кіріп отырған кезде, Chrome-да аккаунттағы құпия сөздеріңізді пайдалана аласыз.</translation>
 <translation id="1682634494516646069">Google Chrome өзінің деректер каталогін оқуы және жазуы мүмкін емес:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -183,6 +184,7 @@
 <translation id="3564543103555793392">Chrome-ға кірген кезде, бетбелгілерді, құпия сөздерді және т.б. сақтап, оларды телефонда пайдалануға болады.</translation>
 <translation id="3576528680708590453">Жүйе әкімшісі Google Chrome браузерін <ph name="TARGET_URL_HOSTNAME" /> бетіне кіргенде қосымша браузер ашылатын етіп конфигурациялады.</translation>
 <translation id="3582972582564653026">Chrome браузерін барлық құрылғыларда синхрондап, параметрлерін жекелендіріңіз.</translation>
+<translation id="3583751698304738917">Басқа Chrome профилінде әлдеқашан <ph name="USER_EMAIL_ADDRESS" /> ретінде кіргенсіз.</translation>
 <translation id="3595784445906693824">Chrome-ға жаңа профильмен кіру қажет пе?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Жаңартылған нұсқаны қолдану үшін әкімшіңіз Chrome браузерін қайта іске қосуыңызды талап етеді.}=1{Жаңартылған нұсқаны қолдану үшін әкімшіңіз Chrome браузерін қайта іске қосуыңызды талап етеді. Инкогнито терезесі қайта ашылмайды.}other{Жаңартылған нұсқаны қолдану үшін әкімшіңіз Chrome браузерін қайта іске қосуыңызды талап етеді. # инкогнито терезесі қайта ашылмайды.}}</translation>
 <translation id="3622797965165704966">Енді Chrome қолданбасын Google аккаунтымен және ортақ компьютерлерде пайдалану жеңілірек.</translation>
@@ -357,6 +359,7 @@
 <translation id="6288788894729749483">Интернетті қауіпсіз пайдалану, шығармашылықпен айналысу және зерттеу үшін Chrome-ды әдепкі браузер ретінде орнатыңыз.</translation>
 <translation id="6291089322031436445">Chrome Dev қолданбалары</translation>
 <translation id="6291549208091401781">Google Chrome компьютердегі барлық пайдаланушылар үшін әлдеқашан орнатылған.</translation>
+<translation id="6319856120645568262">Chrome-ға айналаңызды картаға түсіруге және қолыңызды бақылауға рұқсат қажет.</translation>
 <translation id="6326175484149238433">Chrome бағдарламасынан жою</translation>
 <translation id="6327105987658262776">Ешқандай жаңарту жоқ.</translation>
 <translation id="6360449101159168105">Бұл қойынды әрекетсіз тұрған кезде, Chrome жылдам жұмыс істеуі үшін, жад босатылды. Сіз бұл сайтты әрекетсіз тұру тізімінен әрдайым шығарып отыру опциясын таңдай аласыз.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_kn.xtb b/chrome/app/resources/google_chrome_strings_kn.xtb
index 5e1cd64f..a095dc9 100644
--- a/chrome/app/resources/google_chrome_strings_kn.xtb
+++ b/chrome/app/resources/google_chrome_strings_kn.xtb
@@ -46,6 +46,7 @@
 <translation id="1640672724030957280">ಡೌನ್‌ಲೋಡ್ ಆಗುತ್ತಿದೆ...</translation>
 <translation id="1662146548738125461">ChromeOS Flex ಕುರಿತು</translation>
 <translation id="1674870198290878346">ಲಿಂಕ್‌ ಅನ್ನು ಅ&amp;ದೃಶ್ಯ ವಿಂಡೋದಲ್ಲಿ ತೆರೆಯಿರಿ</translation>
+<translation id="1679594062619799116">ನೀವು ಸೈನ್ ಇನ್ ಆಗಿರುವಾಗ Chrome ನಲ್ಲಿ ನಿಮ್ಮ Google ಖಾತೆಯಿಂದ ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ನೀವು ಬಳಸಬಹುದು</translation>
 <translation id="1682634494516646069">Google Chrome ಗೆ ಇದರ ಡೇಟಾ ಡೈರೆಕ್ಟರಿಯನ್ನು ಓದಲಾಗುವುದಿಲ್ಲ ಮತ್ತು ಬರೆಯಲಾಗುವುದಿಲ್ಲ:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -181,6 +182,7 @@
 <translation id="3564543103555793392">ನೀವು Chrome ಗೆ ಸೈನ್ ಇನ್ ಮಾಡಿದಾಗ, ನೀವು ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಪಾಸ್‌ವರ್ಡ್‌ಗಳು ಹಾಗೂ ಮುಂತಾದವುಗಳನ್ನು ಸೇವ್‌ ಮಾಡಬಹುದು, ನಂತರ ಅವುಗಳನ್ನು ನಿಮ್ಮ ಫೋನ್‌ನಲ್ಲಿ ಬಳಸಬಹುದು</translation>
 <translation id="3576528680708590453"><ph name="TARGET_URL_HOSTNAME" /> ಗೆ ಪ್ರವೇಶಿಸಲು ಒಂದು ಪರ್ಯಾಯ ಬ್ರೌಸರ್ ತೆರೆಯುವಂತೆ ನಿಮ್ಮ ಸಿಸ್ಟಂ ನಿರ್ವಾಹಕರು Google Chrome ಅನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿದ್ದಾರೆ.</translation>
 <translation id="3582972582564653026">ನಿಮ್ಮ ಎಲ್ಲಾ ಸಾಧನಗಳಲ್ಲಿ Chrome ಅನ್ನು ಸಿಂಕ್ ಮಾಡಿ ಮತ್ತು ವೈಯಕ್ತೀಕರಿಸಿ</translation>
+<translation id="3583751698304738917">ನೀವು ಈಗಾಗಲೇ ಮತ್ತೊಂದು Chrome ಪ್ರೊಫೈಲ್‌ನಲ್ಲಿ <ph name="USER_EMAIL_ADDRESS" /> ಮೂಲಕ ಸೈನ್ ಇನ್ ಮಾಡಿದ್ದೀರಿ</translation>
 <translation id="3595784445906693824">ಹೊಸ ಪ್ರೊಫೈಲ್‌ನಲ್ಲಿ Chrome ಗೆ ಸೈನ್‌ ಇನ್‌ ಮಾಡಬೇಕೆ?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{ಅಪ್‌ಡೇಟ್‌ ಅನ್ವಯಿಸಲು ನೀವು Chrome ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಬೇಕೆಂದು ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ಬಯಸುತ್ತಾರೆ}=1{ಅಪ್‌ಡೇಟ್‌ ಅನ್ವಯಿಸಲು ನೀವು Chrome ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಬೇಕೆಂದು ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ಬಯಸುತ್ತಾರೆ. ನಿಮ್ಮ ಅಜ್ಞಾತ ವಿಂಡೋವನ್ನು ತೆರೆಯಲಾಗುವುದಿಲ್ಲ.}one{ಅಪ್‌ಡೇಟ್‌ ಅನ್ವಯಿಸಲು ನೀವು Chrome ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಬೇಕೆಂದು ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ಬಯಸುತ್ತಾರೆ. ನಿಮ್ಮ # ಅಜ್ಞಾತ ವಿಂಡೋಗಳನ್ನು ತೆರೆಯಲಾಗುವುದಿಲ್ಲ.}other{ಅಪ್‌ಡೇಟ್‌ ಅನ್ವಯಿಸಲು ನೀವು Chrome ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸಬೇಕೆಂದು ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ಬಯಸುತ್ತಾರೆ. ನಿಮ್ಮ # ಅಜ್ಞಾತ ವಿಂಡೋಗಳನ್ನು ತೆರೆಯಲಾಗುವುದಿಲ್ಲ.}}</translation>
 <translation id="3622797965165704966">ನಿಮ್ಮ Google ಖಾತೆಯ ಮೂಲಕ ಮತ್ತು ಹಂಚಿದ ಕಂಪ್ಯೂಟರ್‌ಗಳಲ್ಲಿ Chrome ಬಳಕೆ ಈಗ ತುಂಬಾ ಸುಲಭವಾಗಿದೆ.</translation>
@@ -351,6 +353,7 @@
 <translation id="6288788894729749483">ಆನ್‌ಲೈನ್‌ನಲ್ಲಿ ಸುರಕ್ಷಿತವಾಗಿ ಮಾಡಲು, ರಚಿಸಲು ಮತ್ತು ಎಕ್ಸ್‌ಪ್ಲೋರ್ ಮಾಡಲು Chrome ಅನ್ನು ನಿಮ್ಮ ಡೀಫಾಲ್ಟ್ ಬ್ರೌಸರ್ ಆಗಿ ಸೆಟ್‌ ಮಾಡಿ</translation>
 <translation id="6291089322031436445">Chrome Dev ಅಪ್ಲಿಕೇಶನ್‌ಗಳು</translation>
 <translation id="6291549208091401781">ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನಲ್ಲಿನ ಎಲ್ಲ ಬಳಕೆದಾರರಿಗೆ ಈಗಾಗಲೇ Google Chrome ಸ್ಥಾಪಿತವಾಗಿದೆ.</translation>
+<translation id="6319856120645568262">ನಿಮ್ಮ ಸುತ್ತಲಿನ ಪರಿಸರವನ್ನು ನಕ್ಷೆ ಮಾಡಲು ಮತ್ತು ನಿಮ್ಮ ಕೈಗಳನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಲು Chrome ಗೆ ಅನುಮತಿಯ ಅಗತ್ಯವಿದೆ</translation>
 <translation id="6326175484149238433">Chrome ನಿಂದ ತೆಗೆದುಹಾಕು</translation>
 <translation id="6327105987658262776">ಯಾವುದೇ ಅಪ್‌ಡೇಟ್‌‌ ಲಭ್ಯವಿಲ್ಲ.</translation>
 <translation id="6360449101159168105">ಈ ಟ್ಯಾಬ್ ನಿಷ್ಕ್ರಿಯವಾಗಿದ್ದಾಗ, Chrome ವೇಗವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಮೆಮೊರಿಯನ್ನು ಮುಕ್ತಗೊಳಿಸಿದೆ. ಈ ಸೈಟ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯವಾಗಿರದಂತೆ ಎಲ್ಲಾ ಸಮಯದಲ್ಲೂ ಹೊರಗಿಡಲು ನೀವು ಆಯ್ಕೆ ಮಾಡಬಹುದು.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ko.xtb b/chrome/app/resources/google_chrome_strings_ko.xtb
index 9cae43c5..d2004538 100644
--- a/chrome/app/resources/google_chrome_strings_ko.xtb
+++ b/chrome/app/resources/google_chrome_strings_ko.xtb
@@ -49,6 +49,7 @@
 <translation id="1640672724030957280">다운로드 중...</translation>
 <translation id="1662146548738125461">ChromeOS Flex 정보</translation>
 <translation id="1674870198290878346">Chrome 시크릿 창에서 링크 열기(&amp;G)</translation>
+<translation id="1679594062619799116">로그인한 상태로 Chrome에서 Google 계정의 비밀번호를 사용할 수 있습니다</translation>
 <translation id="1682634494516646069">Chrome에서 다음 데이터 디렉터리를 읽고 쓸 수 없습니다.
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -184,6 +185,7 @@
 <translation id="3564543103555793392">Chrome에 로그인하면 북마크, 비밀번호 등을 저장하여 휴대전화에서 사용할 수 있습니다.</translation>
 <translation id="3576528680708590453">시스템 관리자가 <ph name="TARGET_URL_HOSTNAME" /> 액세스를 위해 다른 브라우저를 실행하도록 Chrome을 구성했습니다.</translation>
 <translation id="3582972582564653026">모든 기기에서 Chrome을 동기화하고 맞춤설정하세요.</translation>
+<translation id="3583751698304738917">이미 다른 Chrome 프로필에 <ph name="USER_EMAIL_ADDRESS" /> 계정으로 로그인되어 있습니다</translation>
 <translation id="3595784445906693824">새 프로필로 Chrome에 로그인하시겠습니까?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{관리자의 요구에 따라 업데이트를 적용하려면 Chrome을 다시 실행해야 합니다.}=1{관리자의 요구에 따라 업데이트를 적용하려면 Chrome을 다시 실행해야 합니다. 시크릿 창이 다시 열리지 않습니다.}other{관리자의 요구에 따라 업데이트를 적용하려면 Chrome을 다시 실행해야 합니다. 시크릿 창 #개가 다시 열리지 않습니다.}}</translation>
 <translation id="3622797965165704966">이제 Google 계정으로 공유 컴퓨터에서 Chrome을 손쉽게 사용할 수 있습니다.</translation>
@@ -358,6 +360,7 @@
 <translation id="6288788894729749483">Chrome을 기본 브라우저로 설정하여 온라인에서 안전하게 작업하고, 만들고, 탐색하세요.</translation>
 <translation id="6291089322031436445">Chrome 개발자 앱</translation>
 <translation id="6291549208091401781">컴퓨터에 Chrome이 이미 설치되어 있으며 모든 사용자가 사용할 수 있습니다.</translation>
+<translation id="6319856120645568262">Chrome에서 주변 환경을 매핑하고 손을 추적하려면 권한이 필요합니다</translation>
 <translation id="6326175484149238433">Chrome에서 삭제</translation>
 <translation id="6327105987658262776">사용 가능한 업데이트가 없습니다.</translation>
 <translation id="6360449101159168105">이 탭이 비활성 상태인 동안 Chrome의 속도를 빠르게 유지하기 위해 메모리를 확보했습니다. 이 사이트가 비활성 상태가 되지 않도록 항상 제외할 수 있습니다.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ky.xtb b/chrome/app/resources/google_chrome_strings_ky.xtb
index cad7cb0d2..85f9a805 100644
--- a/chrome/app/resources/google_chrome_strings_ky.xtb
+++ b/chrome/app/resources/google_chrome_strings_ky.xtb
@@ -49,6 +49,7 @@
 <translation id="1640672724030957280">Жүктөлүп алынууда...</translation>
 <translation id="1662146548738125461">ChromeOS Flex жөнүндө маалымат</translation>
 <translation id="1674870198290878346">Шилтемени Chrome'дун жашы&amp;руун терезесинде ачуу</translation>
+<translation id="1679594062619799116">Кирип турганыңызда Chrome'догу Google аккаунтуңуздан сырсөздөрдү колдоно аласыз</translation>
 <translation id="1682634494516646069">Google Chrome дайындар каталогун окуп, ага жаза албайт:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -184,6 +185,7 @@
 <translation id="3564543103555793392">Chrome'го киргениңизде, кыстармаларды, сырсөздөрдү жана башкаларды сактап, анан аларды телефонуңузда колдоно аласыз</translation>
 <translation id="3576528680708590453">Тутумуңуздун администратору Google Chrome'ду <ph name="TARGET_URL_HOSTNAME" /> шилтемесин кошумча серепчиде ачылгыдай кылып конфигурациялады.</translation>
 <translation id="3582972582564653026">Chrome'ду бардык түзмөктөрүңүздө шайкештирип, жекелештиресиз</translation>
+<translation id="3583751698304738917">Мурунтан эле башка Chrome профилинен <ph name="USER_EMAIL_ADDRESS" /> катары киргенсиз</translation>
 <translation id="3595784445906693824">Chromium'го жаңы профилден киресизби?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Администраторуңуз жаңыртууну колдонуу үчүн Chrome'ду кайра иштетүүнү талап кылууда}=1{Администраторуңуз жаңыртууну колдонуу үчүн Chrome'ду кайра иштетүүнү талап кылууда. Жашыруун терезеңиз кайра ачылбайт.}other{Администраторуңуз жаңыртууну колдонуу үчүн Chrome'ду кайра иштетүүнү талап кылууда. # жашыруун терезеңиз кайра ачылбайт.}}</translation>
 <translation id="3622797965165704966">Эми Google Аккаунтуңуз аркылуу жана бөлүшүлгөн компьютерлерден Chrome'до иштөө алдаганча жеңилирээк болуп калды.</translation>
@@ -358,6 +360,7 @@
 <translation id="6288788894729749483">Онлайн режиминде коопсуз аткаруу, түзүү жана изилдөө үчүн Chrome'ду демейки серепчи катары коюңуз</translation>
 <translation id="6291089322031436445">Chrome Dev Колдонмолору</translation>
 <translation id="6291549208091401781">Google Chrome компьютериңиздеги бардык колдонуучулар үчүн орнотулуп коюлган.</translation>
+<translation id="6319856120645568262">Chrome'го айланаңызды картага түшүрүп, колго көз салууга уруксат керек</translation>
 <translation id="6326175484149238433">Chrome'дон алып салуу</translation>
 <translation id="6327105987658262776">Жаңыртуулар жок.</translation>
 <translation id="6360449101159168105">Бул өтмөк жигерсиз болуп турганда, Chrome'дун тез бойдон кармоо үчүн эстутум бошотулган. Бул сайтты жигерсиз абалда болуудан ар дайым чыгара аласыз.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_lt.xtb b/chrome/app/resources/google_chrome_strings_lt.xtb
index 938fa81..d3075c6 100644
--- a/chrome/app/resources/google_chrome_strings_lt.xtb
+++ b/chrome/app/resources/google_chrome_strings_lt.xtb
@@ -49,6 +49,7 @@
 <translation id="1640672724030957280">Atsisiunčiama...</translation>
 <translation id="1662146548738125461">Apie „ChromeOS Flex“</translation>
 <translation id="1674870198290878346">Atidaryti nuorodą „Chrome“ inko&amp;gnito lange</translation>
+<translation id="1679594062619799116">Galite naudoti slaptažodžius iš „Google“ paskyros naršyklėje „Chrome“, kol esate prisijungę</translation>
 <translation id="1682634494516646069">„Google Chrome“ negali skaityti ir rašyti į duomenų katalogą:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -184,6 +185,7 @@
 <translation id="3564543103555793392">Prisijungę prie „Chrome“ galite išsaugoti žymes, slaptažodžius ir kt., tada naudoti juos telefone</translation>
 <translation id="3576528680708590453">Sistemos administratorius sukonfigūravo „Google Chrome“ atidaryti alternatyvią naršyklę, norint pasiekti <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Sinchronizuokite ir suasmeninkite „Chrome“ skirtinguose įrenginiuose</translation>
+<translation id="3583751698304738917">Jau esate prisijungę kaip <ph name="USER_EMAIL_ADDRESS" /> kitame „Chrome“ profilyje</translation>
 <translation id="3595784445906693824">Prisijungti prie „Chrome“ naujame profilyje?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Administratorius reikalauja paleisti „Chrome“ iš naujo, kad būtų galima pritaikyti naujinį}=1{Administratorius reikalauja paleisti „Chrome“ iš naujo, kad būtų galima pritaikyti naujinį. Inkognito langas nebus atidarytas iš naujo.}one{Administratorius reikalauja paleisti „Chrome“ iš naujo, kad būtų galima pritaikyti naujinį. # inkognito langas nebus atidarytas iš naujo.}few{Administratorius reikalauja paleisti „Chrome“ iš naujo, kad būtų galima pritaikyti naujinį. # inkognito langai nebus atidaryti iš naujo.}many{Administratorius reikalauja paleisti „Chrome“ iš naujo, kad būtų galima pritaikyti naujinį. # inkognito lango nebus atidaryta iš naujo.}other{Administratorius reikalauja paleisti „Chrome“ iš naujo, kad būtų galima pritaikyti naujinį. # inkognito langų nebus atidaryta iš naujo.}}</translation>
 <translation id="3622797965165704966">Dabar galite lengviau naudoti „Chrome“ naudodami „Google“ paskyrą ir bendrinamus kompiuterius.</translation>
@@ -358,6 +360,7 @@
 <translation id="6288788894729749483">Nustatykite „Chrome“ kaip numatytąją naršyklę, kad galėtumėte saugiai veikti, kurti ir naršyti prisijungę</translation>
 <translation id="6291089322031436445">„Chrome Dev“ programos</translation>
 <translation id="6291549208091401781">„Google Chrome“ jau įdiegta visiems kompiuterio naudotojams.</translation>
+<translation id="6319856120645568262">„Chrome“ reikia leidimo susieti jūsų aplinką ir stebėti jūsų rankas</translation>
 <translation id="6326175484149238433">Pašalinti iš „Chrome“</translation>
 <translation id="6327105987658262776">Naujini nėra.</translation>
 <translation id="6360449101159168105">Kol šis skirtukas buvo neaktyvus, atmintis buvo atlaisvinta, kad „Chrome“ veiktų sparčiai. Galite pasirinkti visada išskirti šią svetainę, kad būtų aktyvi.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_lv.xtb b/chrome/app/resources/google_chrome_strings_lv.xtb
index 61f2102..bd13196 100644
--- a/chrome/app/resources/google_chrome_strings_lv.xtb
+++ b/chrome/app/resources/google_chrome_strings_lv.xtb
@@ -46,6 +46,7 @@
 <translation id="1640672724030957280">Notiek lejupielāde...</translation>
 <translation id="1662146548738125461">Par Chrome OS Flex</translation>
 <translation id="1674870198290878346">Atvērt saiti Chrome inko&amp;gnito režīma logā</translation>
+<translation id="1679594062619799116">Kad esat pierakstījies, pārlūkā Chrome varat izmantot paroles no sava Google konta</translation>
 <translation id="1682634494516646069">Google Chrome nevar nolasīt savu datu direktoriju un ierakstīt tajā:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -181,6 +182,7 @@
 <translation id="3564543103555793392">Pierakstoties pārlūkā Chrome, varat saglabāt grāmatzīmes, paroles un citus datus un pēc tam izmantot tos savā tālrunī.</translation>
 <translation id="3576528680708590453">Sistēmas administrators ir konfigurējis pārlūku Google Chrome, lai vietne <ph name="TARGET_URL_HOSTNAME" /> tiktu atvērta papildu pārlūkā.</translation>
 <translation id="3582972582564653026">Chrome sinhronizēšana un personalizēšana visās jūsu ierīcēs</translation>
+<translation id="3583751698304738917">Ar kontu <ph name="USER_EMAIL_ADDRESS" /> jau esat pierakstījies citā Chrome profilā</translation>
 <translation id="3595784445906693824">Vai pierakstīties pārlūkā Chrome, izmantojot jaunu profilu?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Lai lietotu atjauninājumu, administrators pieprasa restartēt pārlūku Chrome.}=1{Lai lietotu atjauninājumu, administrators pieprasa restartēt pārlūku Chrome. Jūsu inkognito režīma logs netiks atkārtoti atvērts.}zero{Lai lietotu atjauninājumu, administrators pieprasa restartēt pārlūku Chrome. # jūsu inkognito režīma logi netiks atkārtoti atvērti.}one{Lai lietotu atjauninājumu, administrators pieprasa restartēt pārlūku Chrome. # jūsu inkognito režīma logs netiks atkārtoti atvērts.}other{Lai lietotu atjauninājumu, administrators pieprasa restartēt pārlūku Chrome. # jūsu inkognito režīma logi netiks atkārtoti atvērti.}}</translation>
 <translation id="3622797965165704966">Tagad pārlūkā Chrome ir vieglāk izmantot Google kontu, kā arī ir atvieglota lietošana datoros, ko izmanto vairākas personas.</translation>
@@ -353,6 +355,7 @@
 <translation id="6288788894729749483">Iestatiet Chrome kā noklusējuma pārlūku drošai darbībai, satura veidošanai un izpētei tiešsaistē.</translation>
 <translation id="6291089322031436445">Chrome Dev lietotnes</translation>
 <translation id="6291549208091401781">Pārlūks Google Chrome jau ir instalēts visiem jūsu datora lietotājiem.</translation>
+<translation id="6319856120645568262">Pārlūkam Chrome ir nepieciešama atļauja jūsu apkārtnes kartēšanai un roku kustību izsekošanai</translation>
 <translation id="6326175484149238433">Noņemt no pārlūka Chrome</translation>
 <translation id="6327105987658262776">Atjauninājums nav pieejams.</translation>
 <translation id="6360449101159168105">Kamēr šī cilne nebija aktīva, tika atbrīvota atmiņa pārlūka Chrome ātrākai darbībai. Varat izvēlēties vienmēr saglabāt šo vietni aktīvu.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_mn.xtb b/chrome/app/resources/google_chrome_strings_mn.xtb
index 1cf382a6..284ed66 100644
--- a/chrome/app/resources/google_chrome_strings_mn.xtb
+++ b/chrome/app/resources/google_chrome_strings_mn.xtb
@@ -49,6 +49,7 @@
 <translation id="1640672724030957280">Татаж байна...</translation>
 <translation id="1662146548738125461">ChromeOS Flex-н тухай</translation>
 <translation id="1674870198290878346">Холбоосыг Chrome-н нууцлалтай цонхонд нээх</translation>
+<translation id="1679594062619799116">Та Google Бүртгэлээрээ нэвтэрсэн үедээ нууц үгээ Chrome-д ашиглаж болно</translation>
 <translation id="1682634494516646069">Google Chrome нь өөрийн өгөгдлийн хадгалалтын сан руу уншуулж бас бичиж чадахгүй:
 
  <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -184,6 +185,7 @@
 <translation id="3564543103555793392">Та Chrome-д нэвтрэх үедээ хавчуурга, нууц үг болон бусад зүйлийг хадгалаад, дараа нь утсан дээрээ ашиглах боломжтой</translation>
 <translation id="3576528680708590453">Таны системийн админ Google Chrome-г <ph name="TARGET_URL_HOSTNAME" />-д хандахын тулд өөр хөтөч нээхээр тохируулсан байна.</translation>
 <translation id="3582972582564653026">Төхөөрөмжүүддээ Chrome-г синк хийж, хувийн болгох</translation>
+<translation id="3583751698304738917">Та <ph name="USER_EMAIL_ADDRESS" /> хаягаараа Chrome-н өөр профайлд аль хэдийн нэвтэрсэн байна</translation>
 <translation id="3595784445906693824">Шинэ профайлаар Chrome-д нэвтрэх үү?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Шинэчлэлтийг хэрэгжүүлэхийн тулд Chrome-г дахин ачаалахыг таны администратор танаас шаардаж байна}=1{Шинэчлэлтийг хэрэгжүүлэхийн тулд Chrome-г дахин ачаалахыг таны администратор танаас шаардаж байна. Таны нууцлалтай цонхыг дахин нээхгүй.}other{Шинэчлэлтийг хэрэгжүүлэхийн тулд Chrome-г дахин ачаалахыг таны администратор танаас шаардаж байна. Таны # нууцлалтай цонхыг дахин нээхгүй.}}</translation>
 <translation id="3622797965165704966">Одоо та Google хаягаа ашиглан мөн өөр бусад компьютер дээр Chrome-г ашиглахад хялбар боллоо.</translation>
@@ -358,6 +360,7 @@
 <translation id="6288788894729749483">Аюулгүй хийх, үүсгэх, онлайнаар судлахын тулд Chrome-г өгөгдмөлөөрөө тохируулаарай</translation>
 <translation id="6291089322031436445">Chrome Dev Апп</translation>
 <translation id="6291549208091401781">Google Chrome-г таны компьютерийн бүх хэрэглэгчид суулгасан.</translation>
+<translation id="6319856120645568262">Таны орчин тойрныг зураглаж, гарыг тань тандахад Chrome-д зөвшөөрөл шаардлагатай</translation>
 <translation id="6326175484149238433">Chrome-оос устга</translation>
 <translation id="6327105987658262776">Шинэчлэлт боломжгүй байна.</translation>
 <translation id="6360449101159168105">Энэ табыг идэвхгүй үед Chrome-г хурдан байлгахын тулд санах ойг чөлөөлсөн. Та энэ сайтыг идэвхгүй болохоос үргэлж хасахаар сонгох боломжтой.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ne.xtb b/chrome/app/resources/google_chrome_strings_ne.xtb
index fb42aed..2829bb7 100644
--- a/chrome/app/resources/google_chrome_strings_ne.xtb
+++ b/chrome/app/resources/google_chrome_strings_ne.xtb
@@ -49,6 +49,7 @@
 <translation id="1640672724030957280">डाउनलोड गरिँदै छ...</translation>
 <translation id="1662146548738125461">ChromeOS Flex का बारेमा जानकारी</translation>
 <translation id="1674870198290878346">लिंकलाई Chrome को इन्कोग्निटो विन्डोमा खोल्नुहोस्</translation>
+<translation id="1679594062619799116">तपाईं साइन इन भएका बेला Chrome मा आफ्नो Google खाताको पासवर्ड प्रयोग गर्न सक्नुहुन्छ</translation>
 <translation id="1682634494516646069">Google Chromeले यसको डाटा निर्देशिका पढ्न वा लेख्न सक्दैन: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome एक वेब ब्राउजर हो जसले वेबपृष्ठहरू र एपहरू तडित गतिमा चालू गर्छ। यो छिटो, स्थिर र प्रयोग गर्न सजिलो छ। Google Chrome मा मालवेयर र फिसिङ सुरक्षाको साथमा थप सुरक्षाको साथमा वेब ब्राउज गर्नुहोस्।</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome एक घन्टामा पुनः सुरु हुने छ}other{Chrome # एक घन्टामा पुनः सुरु हुने छ}}</translation>
@@ -182,6 +183,7 @@
 <translation id="3564543103555793392">तपाईंले Chrome मा साइन इन गरेपछि तपाईं बुकमार्क तथा पासवर्डलगायतका कुराहरू सेभ गर्न अनि आफ्नो फोनमा ती कुरा प्रयोग गर्न सक्नुहुन्छ</translation>
 <translation id="3576528680708590453">तपाईंको प्रणालीका प्रशासकले <ph name="TARGET_URL_HOSTNAME" /> माथि पहुँच गर्नका लागि वैकल्पिक ब्राउजर खोल्न Google Chrome कन्फिगर गरेको छ।</translation>
 <translation id="3582972582564653026">आफ्ना यन्त्रहरूभरि Chrome लाई सिंक तथा वैयक्तीकृत गर्नुहोस्</translation>
+<translation id="3583751698304738917">तपाईंले <ph name="USER_EMAIL_ADDRESS" /> का रूपमा अर्को Chrome प्रोफाइलमा साइन इन गरिसक्नुभएको छ</translation>
 <translation id="3595784445906693824">नयाँ प्रोफाइल बनाएर Chrome मा साइन इन गर्ने हो?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{तपाईंका व्यवस्थापकका अनुसार तपाईंले यो अद्यावधिक लागू गर्न Chrome पुनः सुरु गर्नु पर्ने हुन्छ}=1{तपाईंका व्यवस्थापकका अनुसार तपाईंले यो अद्यावधिक लागू गर्न Chrome पुनः सुरु गर्नु पर्ने हुन्छ। तपाईंको इन्कोग्निटो विन्डो पुनः खुल्ने छैन।}other{तपाईंका व्यवस्थापकका अनुसार तपाईंले यो अद्यावधिक लागू गर्न Chrome पुनः सुरु गर्नु पर्ने हुन्छ। तपाईंका # वटा इन्कोग्निटो विन्डो पुनः खुल्ने छैनन्।}}</translation>
 <translation id="3622797965165704966">अब Chrome तपाइँको Google खाता र साझा गरिएका कम्प्युटरहरूमा प्रयोग गर्न सजिलो भएको छ।</translation>
@@ -354,6 +356,7 @@
 <translation id="6288788894729749483">अनलाइनमार्फत सुरक्षित तरिकाले कुनै काम गर्न, कुनै सामग्री बनाउन र कुनै विषयका बारेमा जानकारी खोज्न Chrome लाई डिफल्ट ब्राउजरका रूपमा सेट गर्नुहोस्</translation>
 <translation id="6291089322031436445">Chrome Dev एपहरू</translation>
 <translation id="6291549208091401781">तपाईँको कम्प्युटरमा पहिले नै सबै प्रयोगकर्ताहरूका लागि Google Chrome को स्थापना गरिएको छ।</translation>
+<translation id="6319856120645568262">Chrome लाई तपाईंका वरिपरिको नक्सा बनाउने र तपाईंका हातको चाल ट्र्याक गर्ने अनुमति दिनु पर्ने हुन्छ</translation>
 <translation id="6326175484149238433">Chrome बाट हटाउनुहोस्</translation>
 <translation id="6327105987658262776">कुनै पनि अपडेट उपलब्ध छैन।</translation>
 <translation id="6360449101159168105">यो ट्याब निष्क्रिय हुँदा Chrome छिटो चल्ने बनाइराख्न मेमोरी खाली गरिएको थियो। तपाईं यो साइटलाई जुनसुकै बेला सक्रिय राखिराख्ने विकल्प छनौट गर्न सक्नुहुन्छ।</translation>
diff --git a/chrome/app/resources/google_chrome_strings_no.xtb b/chrome/app/resources/google_chrome_strings_no.xtb
index b8607d28..b11169b 100644
--- a/chrome/app/resources/google_chrome_strings_no.xtb
+++ b/chrome/app/resources/google_chrome_strings_no.xtb
@@ -46,6 +46,7 @@
 <translation id="1640672724030957280">Laster ned …</translation>
 <translation id="1662146548738125461">Om ChromeOS Flex</translation>
 <translation id="1674870198290878346">Åpne linken i et inko&amp;gnitovindu i Chrome</translation>
+<translation id="1679594062619799116">Du kan bruke passordene fra Google-kontoen din i Chrome mens du er logget på</translation>
 <translation id="1682634494516646069">Google Chrome kan ikke lese og skrive til sin egen datakatalog: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome er en nettleser som kjører nettsider og programmer i ekspressfart. Den er rask, stabil og enkel å bruke. Google Chrome har innebygd beskyttelse mot skadelig programvare og svindelforsøk (nettfisking), slik at du kan føle deg tryggere når du surfer på nettet.</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome startes på nytt om én time}other{Chrome startes på nytt om # timer}}</translation>
@@ -179,6 +180,7 @@
 <translation id="3564543103555793392">Når du logger på Chrome, kan du lagre bokmerker, passord med mer og deretter bruke dem på telefonen</translation>
 <translation id="3576528680708590453">Systemadministratoren din har konfigurert at Google Chrome skal åpne <ph name="TARGET_URL_HOSTNAME" /> i en annen nettleser.</translation>
 <translation id="3582972582564653026">Synkroniser og gi Chrome et personlig preg på alle enhetene dine</translation>
+<translation id="3583751698304738917">Du er allerede logget på som <ph name="USER_EMAIL_ADDRESS" /> i en annen Chrome-profil</translation>
 <translation id="3595784445906693824">Vil du logge på Chrome i en ny profil?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Administratoren din krever at du starter Chrome på nytt for å ta i bruk en oppdatering}=1{Administratoren din krever at du starter Chrome på nytt for å ta i bruk en oppdatering. Inkognitovinduet ditt blir ikke gjenåpnet.}other{Administratoren din krever at du starter Chrome på nytt for å ta i bruk en oppdatering. De # inkognitovinduene dine blir ikke gjenåpnet.}}</translation>
 <translation id="3622797965165704966">Nå er det enklere å bruke Chrome med Google-kontoen din og på datamaskiner du deler med andre.</translation>
@@ -349,6 +351,7 @@
 <translation id="6288788894729749483">Angi Chrome som standardnettleser for å gjøre ting, skape og utforske på nettet på en trygg måte</translation>
 <translation id="6291089322031436445">Chrome Dev-apper</translation>
 <translation id="6291549208091401781">Google Chrome er allerede installert for alle brukerne på datamaskinen din.</translation>
+<translation id="6319856120645568262">Chrome trenger tillatelse til å kartlegge omgivelsene dine og spore hendene dine</translation>
 <translation id="6326175484149238433">Fjern fra Chrome</translation>
 <translation id="6327105987658262776">Ingen oppdatering er tilgjengelig.</translation>
 <translation id="6360449101159168105">Mens denne fanen var inaktiv, ble minnet frigjort for å holde Chrome rask. Du kan velge å alltid ekskludere dette nettstedet fra å gjøres inaktivt.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_pt-PT.xtb b/chrome/app/resources/google_chrome_strings_pt-PT.xtb
index 3bb54aa3..4e22474 100644
--- a/chrome/app/resources/google_chrome_strings_pt-PT.xtb
+++ b/chrome/app/resources/google_chrome_strings_pt-PT.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">A transferir...</translation>
 <translation id="1662146548738125461">Acerca do ChromeOS Flex</translation>
 <translation id="1674870198290878346">Abrir link numa janela de nave&amp;gação anónima do Chrome</translation>
+<translation id="1679594062619799116">Pode usar as palavras-passe da sua Conta Google no Chrome enquanto tem sessão iniciada</translation>
 <translation id="1682634494516646069">O Google Chrome não consegue ler e escrever no respetivo diretório de dados: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">O Google Chrome é um navegador de internet que executa páginas Web e aplicações de forma extremamente rápida. É rápido, estável e fácil de utilizar. Navegue na Web com mais segurança com proteção contra phishing e programas maliciosos incorporada no Google Chrome.</translation>
 <translation id="1713301662689114961">{0,plural, =1{O Chrome será reiniciado dentro de uma hora}other{O Chrome será reiniciado dentro de # horas}}</translation>
@@ -180,6 +181,7 @@
 <translation id="3564543103555793392">Quando inicia sessão no Chrome, pode guardar marcadores, palavras-passe e muito mais, e usá-los no telemóvel</translation>
 <translation id="3576528680708590453">O administrador do seu sistema configurou o Google Chrome para abrir um navegador alternativo, de modo a aceder a <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Sincronizar e personalizar o Chrome em todos os dispositivos</translation>
+<translation id="3583751698304738917">Já tem sessão iniciada como <ph name="USER_EMAIL_ADDRESS" /> noutro perfil do Chrome</translation>
 <translation id="3595784445906693824">Iniciar sessão no Chrome num novo perfil?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{O seu administrador necessita que reinicie o Chrome para aplicar uma atualização.}=1{O seu administrador necessita que reinicie o Chrome para aplicar uma atualização. Não é possível reabrir a sua janela de navegação anónima.}other{O seu administrador necessita que reinicie o Chrome para aplicar uma atualização. Não é possível reabrir as suas # janelas de navegação anónima.}}</translation>
 <translation id="3622797965165704966">Agora é mais fácil utilizar o Chrome com a sua Conta Google e em computadores partilhados.</translation>
@@ -350,6 +352,7 @@
 <translation id="6288788894729749483">Defina o Chrome como o navegador predefinido para fazer, criar e explorar online em segurança</translation>
 <translation id="6291089322031436445">Apps do Chrome Dev</translation>
 <translation id="6291549208091401781">O Google Chrome já está instalado para todos os utilizadores no seu computador.</translation>
+<translation id="6319856120645568262">O Chrome precisa de autorização para mapear o ambiente à sua volta e acompanhar as suas mãos</translation>
 <translation id="6326175484149238433">Remover do Chrome</translation>
 <translation id="6327105987658262776">Nenhuma atualização disponível.</translation>
 <translation id="6360449101159168105">Enquanto este separador estava inativo, foi libertada memória para manter o Chrome rápido. Pode optar por evitar sempre que este site fique inativo.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ro.xtb b/chrome/app/resources/google_chrome_strings_ro.xtb
index 1387d84a..327d84a 100644
--- a/chrome/app/resources/google_chrome_strings_ro.xtb
+++ b/chrome/app/resources/google_chrome_strings_ro.xtb
@@ -46,6 +46,7 @@
 <translation id="1640672724030957280">Se descarcă…</translation>
 <translation id="1662146548738125461">Despre sistemul de operare Chrome Flex</translation>
 <translation id="1674870198290878346">Deschide linkul într-o fereastră Chrome inco&amp;gnito</translation>
+<translation id="1679594062619799116">Poți folosi parolele din Contul Google în Chrome după ce te conectezi</translation>
 <translation id="1682634494516646069">Google Chrome nu poate citi și scrie în directorul propriu de date: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome este un browser web care rulează pagini web și aplicații cu o viteză extraordinară. Este rapid, stabil și ușor de utilizat. Navigați pe web beneficiind de mai multă siguranță datorită protecției împotriva programelor malware și a phishingului, care este încorporată în Google Chrome.</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome se va relansa într-o oră}few{Chrome se va relansa în # ore}other{Chrome se va relansa în # de ore}}</translation>
@@ -179,6 +180,7 @@
 <translation id="3564543103555793392">Când te conectezi la Chrome, poți să salvezi marcajele, parolele și multe altele, apoi să le folosești pe telefon</translation>
 <translation id="3576528680708590453">Administratorul sistemului a configurat Google Chrome astfel încât să deschidă un browser secundar pentru a accesa <ph name="TARGET_URL_HOSTNAME" />.</translation>
 <translation id="3582972582564653026">Sincronizează și personalizează Chrome pe toate dispozitivele</translation>
+<translation id="3583751698304738917">Te-ai conectat deja ca <ph name="USER_EMAIL_ADDRESS" /> în alt profil Chrome</translation>
 <translation id="3595784445906693824">Te conectezi la Chrome într-un profil nou?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Administratorul solicită să relansezi Chrome pentru a aplica o actualizare}=1{Administratorul solicită să relansezi Chrome pentru a aplica o actualizare. Fereastra incognito nu se va mai deschide.}few{Administratorul solicită să relansezi Chrome pentru a aplica o actualizare. Cele # ferestre incognito nu se vor mai deschide.}other{Administratorul solicită să relansezi Chrome pentru a aplica o actualizare. Cele # de ferestre incognito nu se vor mai deschide.}}</translation>
 <translation id="3622797965165704966">Acum este mai ușor să folosiți Chrome cu Contul Google și pe computerele utilizate în comun.</translation>
@@ -349,6 +351,7 @@
 <translation id="6288788894729749483">Setează Chrome ca prestabilit pentru a face, a crea și a explora în siguranță online</translation>
 <translation id="6291089322031436445">Aplicații Chrome Dev</translation>
 <translation id="6291549208091401781">Google Chrome este instalat deja pentru toți utilizatorii de pe computerul tău.</translation>
+<translation id="6319856120645568262">Chrome are nevoie de permisiune pentru a mapa împrejurimile și a-ți urmări mâinile</translation>
 <translation id="6326175484149238433">Eliminați din Chrome</translation>
 <translation id="6327105987658262776">Nu este disponibilă nicio actualizare.</translation>
 <translation id="6360449101159168105">Cât timp fila a fost inactivă, memoria a fost eliberată pentru a menține viteza ridicată a browserului Chrome. Poți alege ca acest site să nu fie mereu inactiv.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_si.xtb b/chrome/app/resources/google_chrome_strings_si.xtb
index 80089d732..bbda533c 100644
--- a/chrome/app/resources/google_chrome_strings_si.xtb
+++ b/chrome/app/resources/google_chrome_strings_si.xtb
@@ -48,6 +48,7 @@
 <translation id="1640672724030957280">බාගනිමින්...</translation>
 <translation id="1662146548738125461">ChromeOS Flex පිළිබඳ</translation>
 <translation id="1674870198290878346">සබැඳිය Chrome අ&amp;ප්‍රසිද්ධ කවුළුව තුළ විවෘත කරන්න</translation>
+<translation id="1679594062619799116">ඔබට ඔබ පුරනය වී සිටින අතරතුර Chrome තුළ ඔබේ Google ගිණුමෙන් ඔබේ මුරපද භාවිත කළ හැක</translation>
 <translation id="1682634494516646069">Google Chrome හට එහි දත්ත නාමාවලිය කියවීම හෝ ලිවීම කළ නොහැක:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -183,6 +184,7 @@
 <translation id="3564543103555793392">ඔබ Chrome හට පුරන විට, ඔබට පිටුසන්, මුරපද, සහ තවත් ඒවා සුරැකී පසුව ඔබේ දුරකථනය මත ඒවා භාවිත කළ හැක</translation>
 <translation id="3576528680708590453">ඔබේ පද්ධති පරිපාලකයා <ph name="TARGET_URL_HOSTNAME" /> වෙත ප්‍රවේශ වීමට වෛකල්පික බ්‍රවුසරයක් විවෘත කිරීමට Google Chrome වින්‍යාස කර ඇත.</translation>
 <translation id="3582972582564653026">ඔබගේ උපාංග හරහා Chrome සමමුහුර්ත කර පෞද්ගලීකරණය කරන්න</translation>
+<translation id="3583751698304738917">ඔබ දැනටමත් තව Chrome පැතිඩකක් තුළ <ph name="USER_EMAIL_ADDRESS" /> ලෙස පුරනය වී ඇත</translation>
 <translation id="3595784445906693824">Chrome වෙත නව පැතිකඩකින් පුරන්නද?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{යාවත්කාලීනයක් යෙදීමට ඔබ Chrome නැවත ආරම්භ කිරීම පරිපාලකයාට අවශ්‍ය වේ}=1{යාවත්කාලීනයක් යෙදීමට ඔබ Chrome නැවත ආරම්භ කිරීම පරිපාලකයාට අවශ්‍ය වේ. ඔබේ අප්‍රසිද්ධ කවුළුව යළි විවෘත නොවෙයි.}one{යාවත්කාලීනයක් යෙදීමට ඔබ Chrome නැවත ආරම්භ කිරීම පරිපාලකයාට අවශ්‍ය වේ. ඔබේ අප්‍රසිද්ධ කවුළු # යළි විවෘත නොවෙයි.}other{යාවත්කාලීනයක් යෙදීමට ඔබ Chrome නැවත ආරම්භ කිරීම පරිපාලකයාට අවශ්‍ය වේ. ඔබේ අප්‍රසිද්ධ කවුළු # යළි විවෘත නොවෙයි.}}</translation>
 <translation id="3622797965165704966">දැන් Chrome ඔබගේ Google ගිණුම සහ බෙදාගත් පරිගණක මත භාවිතා කිරීමට වඩාත් පහසුයි.</translation>
@@ -357,6 +359,7 @@
 <translation id="6288788894729749483">සබැඳිව ආරක්‍ෂිතව ඉටු කිරීමට, සෑදීමට, සහ ගවේෂණ කිරීමට Chrome ඔබේ පෙරනිමි කරන්න</translation>
 <translation id="6291089322031436445">Chrome Dev යෙදුම්</translation>
 <translation id="6291549208091401781">ඔබේ පරිගණකය මත සියලුම පරිශීලකයින් සඳහා Google Chrome දැනටමත් ස්ථාපනය කර ඇත.</translation>
+<translation id="6319856120645568262">ඔබේ වටපිටාව සිතියම් කිරීමට සහ ඔබේ අත් හඹා යාමට Chrome හට අවසරය අවශ්‍ය ය</translation>
 <translation id="6326175484149238433">Chrome වෙතින් ඉවත් කරන්න</translation>
 <translation id="6327105987658262776">යාවත්කාලීනයක් නොමැත.</translation>
 <translation id="6360449101159168105">මෙම පටිත්ත අක්‍රියව තිබෙන අතරේ, Chrome වේගවත්ව තබා ගැනීම සඳහා මතකය නිදහස් කරන ලදි. ඔබට මෙම අඩවිය අක්‍රිය වීමෙන් සැම විට බැහැර කිරීමට තෝරා ගත හැක.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_sk.xtb b/chrome/app/resources/google_chrome_strings_sk.xtb
index 7817998..b84f6b0 100644
--- a/chrome/app/resources/google_chrome_strings_sk.xtb
+++ b/chrome/app/resources/google_chrome_strings_sk.xtb
@@ -49,6 +49,7 @@
 <translation id="1640672724030957280">Sťahuje sa…</translation>
 <translation id="1662146548738125461">Chrome OS Flex</translation>
 <translation id="1674870198290878346">Otvoriť odkaz v okne inko&amp;gnito Chromu</translation>
+<translation id="1679594062619799116">Kým máte aktívne prihlásenie, môžete používať heslá zo svojho účtu Google v Chrome</translation>
 <translation id="1682634494516646069">Prehliadač Google Chrome nemôže čítať ani zapisovať do adresára s údajmi: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome je webový prehliadač, ktorý spúšťa webové stránky a aplikácie rýchlosťou blesku. Je rýchly, stabilný a jednoduchý. Má v sebe vstavanú ochranu pred škodlivým softvérom a neoprávneným získavaním údajov, vďaka ktorej je prehliadanie webu bezpečnejšie.</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome sa znova spustí o 1 hodinu}few{Chrome sa znova spustí o # hodiny}many{Chrome sa znova spustí o # hodiny}other{Chrome sa znova spustí o # hodín}}</translation>
@@ -182,6 +183,7 @@
 <translation id="3564543103555793392">Keď sa prihlásite do Chromu, môžete ukladať záložky, heslá aj ďalší obsah a potom tieto položky používať v telefóne</translation>
 <translation id="3576528680708590453">Správca systému nakonfiguroval Google Chrome, aby web <ph name="TARGET_URL_HOSTNAME" /> otváral v alternatívnom prehliadači.</translation>
 <translation id="3582972582564653026">Synchronizujte a prispôsobte si Chrome v rôznych zariadeniach</translation>
+<translation id="3583751698304738917">Ako <ph name="USER_EMAIL_ADDRESS" /> ste sa už prihlásili v inom profile Chromu</translation>
 <translation id="3595784445906693824">Chcete sa prihlásiť do Chromu v novom profile?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Správca požaduje nové spustenie Chromu, aby sa použila aktualizácia}=1{Správca požaduje nové spustenie Chromu, aby sa použila aktualizácia. Vaše okno inkognito sa neotvorí.}few{Správca požaduje nové spustenie Chromu, aby sa použila aktualizácia. Vaše # okná inkognito sa neotvoria.}many{Správca požaduje nové spustenie Chromu, aby sa použila aktualizácia. Your # Incognito windows won't reopen.}other{Správca požaduje nové spustenie Chromu, aby sa použila aktualizácia. Vašich # okien inkognito sa neotvorí.}}</translation>
 <translation id="3622797965165704966">Teraz je používanie prehliadača Chrome s účtom Google a na zdieľaných počítačoch oveľa ľahšie.</translation>
@@ -356,6 +358,7 @@
 <translation id="6288788894729749483">Nastavte si Chrome ako predvolený prehliadač, aby ste mohli bezpečne pracovať, tvoriť a prehliadať internet</translation>
 <translation id="6291089322031436445">Aplikácie pre Chrome vo verzii pre vývojárov</translation>
 <translation id="6291549208091401781">Google Chrome už majú nainštalovaný všetci používatelia na vašom počítači.</translation>
+<translation id="6319856120645568262">Chrome potrebuje povolenie mapovať vaše okolie a sledovať vaše ruky</translation>
 <translation id="6326175484149238433">Odstrániť z Chromu</translation>
 <translation id="6327105987658262776">K dispozícii nie je žiadna aktualizácia.</translation>
 <translation id="6360449101159168105">Keď bola táto karta neaktívna, bola uvoľnená pamäť, aby Chrome zostal rýchly. Môžete nastaviť, aby bol tento web vždy vylúčený z nečinnosti.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_sl.xtb b/chrome/app/resources/google_chrome_strings_sl.xtb
index f57f150..7d9f275 100644
--- a/chrome/app/resources/google_chrome_strings_sl.xtb
+++ b/chrome/app/resources/google_chrome_strings_sl.xtb
@@ -49,6 +49,7 @@
 <translation id="1640672724030957280">Prenos ...</translation>
 <translation id="1662146548738125461">O sistemu ChromeOS Flex</translation>
 <translation id="1674870198290878346">Odpiranje povezave v Chromovem oknu brez belež&amp;enja zgodovine</translation>
+<translation id="1679594062619799116">Gesla iz računa Google lahko uporabljate v Chromu, ko ste prijavljeni</translation>
 <translation id="1682634494516646069">Google Chrome ne more brati svojega imenika s podatki ali pisati vanj:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -184,6 +185,7 @@
 <translation id="3564543103555793392">Ko se prijavite v Chrome, lahko shranite zaznamke, gesla in drugo, nato jih uporabljate v telefonu</translation>
 <translation id="3576528680708590453">Skrbnik sistema je Google Chrome nastavil tako, da za dostop do <ph name="TARGET_URL_HOSTNAME" /> odpre drug brskalnik.</translation>
 <translation id="3582972582564653026">V vseh svojih napravah sinhronizirajte in prilagodite Chrome</translation>
+<translation id="3583751698304738917">V drugem profilu za Chrome ste že prijavljeni kot <ph name="USER_EMAIL_ADDRESS" /></translation>
 <translation id="3595784445906693824">Se želite v Chromu prijaviti v novem profilu?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Skrbnik zahteva, da za uveljavitev te posodobitve znova zaženete Chrome.}=1{Skrbnik zahteva, da za uveljavitev te posodobitve znova zaženete Chrome. Anonimno okno se ne bo znova odprlo.}one{Skrbnik zahteva, da za uveljavitev te posodobitve znova zaženete Chrome. # anonimno okno se ne bo znova odprlo.}two{Skrbnik zahteva, da za uveljavitev te posodobitve znova zaženete Chrome. # anonimni okni se ne bosta znova odprli.}few{Skrbnik zahteva, da za uveljavitev te posodobitve znova zaženete Chrome. # anonimna okna se ne bodo znova odprla.}other{Skrbnik zahteva, da za uveljavitev te posodobitve znova zaženete Chrome. # anonimnih oken se ne bo znova odprlo.}}</translation>
 <translation id="3622797965165704966">Zdaj je Chrome lažje uporabljati z Google Računom in v računalnikih, ki so v skupni rabi.</translation>
@@ -358,6 +360,7 @@
 <translation id="6288788894729749483">Nastavite Chrome kot privzeto možnost za varno spletno delo, ustvarjanje in raziskovanje v spletu</translation>
 <translation id="6291089322031436445">Aplikacije za Chrome Dev</translation>
 <translation id="6291549208091401781">Google Chrome je že nameščen za vse uporabnike v računalniku.</translation>
+<translation id="6319856120645568262">Chrome potrebuje dovoljenje za ustvarjanje zemljevida vašega okolja in sledenje rokam</translation>
 <translation id="6326175484149238433">Odstrani iz Chroma</translation>
 <translation id="6327105987658262776">Na voljo ni nobena posodobitev.</translation>
 <translation id="6360449101159168105">Ko je bil ta zavihek neaktiven, je bil pomnilnik sproščen, da je bil Chrome še naprej hiter. Izberete lahko, da to spletno mesto ni nikoli neaktivno.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_te.xtb b/chrome/app/resources/google_chrome_strings_te.xtb
index ae3cec98..77f51f5 100644
--- a/chrome/app/resources/google_chrome_strings_te.xtb
+++ b/chrome/app/resources/google_chrome_strings_te.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">డౌన్‌లోడ్ చేయబడుతోంది...</translation>
 <translation id="1662146548738125461">ChromeOS Flex గురించి</translation>
 <translation id="1674870198290878346">Chrome అజ్ఞా&amp;త విండోలో లింక్‌ను తెరువు</translation>
+<translation id="1679594062619799116">మీరు సైన్ ఇన్ చేసినప్పుడు Chromeలో మీ Google ఖాతా నుండి మీ పాస్‌వర్డ్‌లను ఉపయోగించవచ్చు</translation>
 <translation id="1682634494516646069">Google Chrome దీని డేటా డైరెక్టరీని చదవలేదు మరియు దీనిలో రాయ‌లేదు: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome అనేది మెరుపు వేగంతో వెబ్‌పేజీలను మరియు యాప్‌ల‌ను అమలు చేసే వెబ్ బ్రౌజర్. ఇది వేగమైనది, సామర్థ్యం కలది మరియు ఉపయోగించడానికి సులభమైంది. Google Chromeలో నిర్మితమైన మాల్‌వేర్‌ మరియు ఫిషింగ్ భద్రతతో మరింత సురక్షితంగా వెబ్‌ను బ్రౌజ్ చేయండి.</translation>
 <translation id="1713301662689114961">{0,plural, =1{ఒక గంటలో Chrome తిరిగి ప్రారంభించబడుతుంది}other{# గంటల్లో Chrome తిరిగి ప్రారంభించబడుతుంది}}</translation>
@@ -180,6 +181,7 @@
 <translation id="3564543103555793392">మీరు Chromeకి సైన్ ఇన్ చేసినప్పుడు, మీరు బుక్‌మార్క్‌లు, పాస్‌వర్డ్‌లు, అలాగే మరిన్నింటిని సేవ్ చేయవచ్చు, ఆపై వాటిని మీ ఫోన్‌లో ఉపయోగించవచ్చు</translation>
 <translation id="3576528680708590453"><ph name="TARGET_URL_HOSTNAME" />‌ను యాక్సెస్ చేయడం కోసం ఒక ప్రత్యామ్నాయ బ్రౌజర్‌ను తెరిచే విధంగా Google Chromeను మీ సిస్టమ్ నిర్వాహకులు కాన్ఫిగర్ చేశారు.</translation>
 <translation id="3582972582564653026">మీ పరికరాల అంతటా Chromeను సింక్ చేయండి మరియు వ్యక్తిగతీకరించండి</translation>
+<translation id="3583751698304738917">మీరు ఇప్పటికే మరొక Chrome ప్రొఫైల్‌లో <ph name="USER_EMAIL_ADDRESS" />‌గా సైన్ ఇన్ చేశారు</translation>
 <translation id="3595784445906693824">కొత్త ప్రొఫైల్‌లో Chromeకి సైన్ ఇన్ చేయాలా?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromeను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు}=1{అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromeను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు. మీ అజ్ఞాత విండో మళ్లీ తెరవబడదు.}other{అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromeను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు. మీ # అజ్ఞాత విండోలు మళ్లీ తెరవబడవు.}}</translation>
 <translation id="3622797965165704966">ఇప్పుడు మీ Google ఖాతాతో, షేర్ చేయ‌బ‌డిన కంప్యూటర్‌ల‌లో Chromeను సులభంగా ఉపయోగించవచ్చు.</translation>
@@ -350,6 +352,7 @@
 <translation id="6288788894729749483">ఆన్‌లైన్‌లో సురక్షితంగా పని చేయడానికి, క్రియేట్ చేయడానికి, అన్వేషించడానికి Chromeను మీ డిఫాల్ట్ బ్రౌజర్‌గా సెట్ చేయండి</translation>
 <translation id="6291089322031436445">Chrome డెవలపర్ యాప్‌లు</translation>
 <translation id="6291549208091401781">మీ కంప్యూటర్‌లోని వినియోగదారులందరికీ Google Chrome ఇప్పటికే ఇన్‌స్టాల్ చేయబడింది.</translation>
+<translation id="6319856120645568262">మీ పరిసరాలను మ్యాప్ చేయడానికి, మీ చేతి సంజ్ఞలు అలాగే కదలికలను ట్రాక్ చేయడానికి Chromeకు అనుమతి అవసరం</translation>
 <translation id="6326175484149238433">Chrome నుండి తీసివేయండి</translation>
 <translation id="6327105987658262776">అప్‌డేట్ ఏదీ అందుబాటులో లేదు.</translation>
 <translation id="6360449101159168105">ఈ ట్యాబ్ ఇన్‌యాక్టివ్‌గా ఉన్నప్పుడు, Chromeను వేగంగా ఉంచడానికి మెమరీ ఖాళీ చేయబడింది. మీరు ఏ సమయంలోనైనా ఈ సైట్ ఇన్‌యాక్టివ్‌గా ఉండకుండా మినహాయించడాన్ని ఎంచుకోవచ్చు.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_uk.xtb b/chrome/app/resources/google_chrome_strings_uk.xtb
index b76bfdb3..4490ecd 100644
--- a/chrome/app/resources/google_chrome_strings_uk.xtb
+++ b/chrome/app/resources/google_chrome_strings_uk.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">Завантаження...</translation>
 <translation id="1662146548738125461">Про ОС Chrome Flex</translation>
 <translation id="1674870198290878346">Відкрити посилання в аноні&amp;мному вікні Chrome</translation>
+<translation id="1679594062619799116">Увійшовши в Chrome, ви можете використовувати паролі з облікового запису Google</translation>
 <translation id="1682634494516646069">Google Chrome не може читати та записувати у свій каталог даних: <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome – це веб-переглядач, який запускає веб-сторінки та програми з блискавичною швидкістю. Він швидкий, надійний і зручний у користуванні. Вбудований у Google Chrome захист від шкідливих програм і фішингу гарантує ще більшу безпеку під час перегляду веб-сторінок.</translation>
 <translation id="1713301662689114961">{0,plural, =1{Chrome перезапуститься через годину}one{Chrome перезапуститься через # годину}few{Chrome перезапуститься через # години}many{Chrome перезапуститься через # годин}other{Chrome перезапуститься через # години}}</translation>
@@ -180,6 +181,7 @@
 <translation id="3564543103555793392">Увійшовши в Chrome, ви можете зберігати закладки, паролі тощо, а потім використовувати їх на телефоні</translation>
 <translation id="3576528680708590453">Ваш системний адміністратор налаштував Chrome відкривати сторінку <ph name="TARGET_URL_HOSTNAME" /> в альтернативному веб-переглядачі.</translation>
 <translation id="3582972582564653026">Синхронізуйте та персоналізуйте роботу Chrome на всіх своїх пристроях</translation>
+<translation id="3583751698304738917">Ви вже ввійшли як <ph name="USER_EMAIL_ADDRESS" /> в іншому профілі Chrome</translation>
 <translation id="3595784445906693824">Увійти в Chrome у новий профіль?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Адміністратор вимагає перезапустити Chrome, щоб застосувати оновлення}=1{Адміністратор вимагає перезапустити Chrome, щоб застосувати оновлення. Вікно в режимі анонімного перегляду не відновиться й не відкриється знову.}one{Адміністратор вимагає перезапустити Chrome, щоб застосувати оновлення. # вікно в режимі анонімного перегляду не відновиться й не відкриється знову.}few{Адміністратор вимагає перезапустити Chrome, щоб застосувати оновлення. # вікна в режимі анонімного перегляду не відновляться й не відкриються знову.}many{Адміністратор вимагає перезапустити Chrome, щоб застосувати оновлення. # вікон в режимі анонімного перегляду не відновляться й не відкриються знову.}other{Адміністратор вимагає перезапустити Chrome, щоб застосувати оновлення. # вікна в режимі анонімного перегляду не відновиться й не відкриється знову.}}</translation>
 <translation id="3622797965165704966">Користуватися Chrome у своєму обліковому записі Google на спільних комп’ютерах стало легше.</translation>
@@ -350,6 +352,7 @@
 <translation id="6288788894729749483">Зробіть Chrome вебпереглядачем за умовчанням, щоб безпечно працювати, творити й переглядати контент в Інтернеті</translation>
 <translation id="6291089322031436445">Версія Chrome для розробників додатків</translation>
 <translation id="6291549208091401781">Google Chrome уже встановлено для всіх користувачів на вашому комп’ютері.</translation>
+<translation id="6319856120645568262">Вебпереглядачу Chrome потрібен дозвіл, щоб створити карту оточення й відстежувати ваші руки</translation>
 <translation id="6326175484149238433">Видалити з Chrome</translation>
 <translation id="6327105987658262776">Немає оновлень.</translation>
 <translation id="6360449101159168105">Коли ця вкладка була неактивною, система звільнила оперативну пам’ять, щоб прискорити роботу Chrome. Ви можете назавжди вимкнути перехід у неактивний режим для цього сайту.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ur.xtb b/chrome/app/resources/google_chrome_strings_ur.xtb
index 66cbed5..0546adee 100644
--- a/chrome/app/resources/google_chrome_strings_ur.xtb
+++ b/chrome/app/resources/google_chrome_strings_ur.xtb
@@ -48,6 +48,7 @@
 <translation id="1640672724030957280">ڈاؤن لوڈ ہو رہی ہے…</translation>
 <translation id="1662146548738125461">‏ChromeOS Flex کا تعارف</translation>
 <translation id="1674870198290878346">‏لنک کو Chrome &amp;پوشیدگی ونڈو میں کھولیں</translation>
+<translation id="1679594062619799116">‏سائن ان ہونے کے دوران، آپ Chrome میں اپنے Google اکاؤنٹ کے اپنے پاس ورڈز کا استعمال کر سکتے ہیں</translation>
 <translation id="1682634494516646069">‏Google Chrome اپنے ڈیٹا ڈائریکٹری کو پڑھ یا اس میں لکھ نہیں سکتا ہے:
 
 <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -183,6 +184,7 @@
 <translation id="3564543103555793392">‏جب آپ Chrome میں سائن ان کرتے ہیں، تو آپ بُک مارکس، پاس ورڈز اور بہت کچھ محفوظ کر سکتے ہیں، پھر انہیں اپنے فون پر استعمال کر سکتے ہیں</translation>
 <translation id="3576528680708590453">‏آپ کے سسٹم کے منتظم نے <ph name="TARGET_URL_HOSTNAME" /> تک رسائی حاصل کرنے کے لیے Google Chrome کو ایک متبادل براؤزر کھولنے کے لیے کنفیگر کیا ہے۔</translation>
 <translation id="3582972582564653026">‏اپنے آلات پر Chrome کو مطابقت پذیر اور ذاتی نوعیت کا بنائیں</translation>
+<translation id="3583751698304738917">‏آپ دوسری Chrome پروفائل میں پہلے ہی سے بطور <ph name="USER_EMAIL_ADDRESS" /> سائن ان ہیں</translation>
 <translation id="3595784445906693824">‏نئی پروفائل میں Chrome میں سائن ان کریں؟</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{‏آپ کے منتظم کا مطالبہ ہے کہ آپ اپ ڈیٹ کو لاگو کرنے کیلئے Chrome کو بند کر کے دوبارہ چلائیں}=1{‏آپ کے منتظم کا مطالبہ ہے کہ آپ اپ ڈیٹ کو لاگو کرنے کیلئے Chrome کو بند کر کے دوبارہ چلائیں۔ آپ کی پوشیدگی ونڈو دوبارہ نہیں کھلے گی۔}other{‏آپ کے منتظم کا مطالبہ ہے کہ آپ اپ ڈیٹ کو لاگو کرنے کیلئے Chrome کو بند کر کے دوبارہ چلائیں۔ آپ کی # پوشیدگی ونڈوز دوبارہ نہیں کھلیں گی۔}}</translation>
 <translation id="3622797965165704966">‏اب آپ کے Google اکاؤنٹ کے ساتھ اور اشتراک کردہ کمپیوٹرز پر Chrome کو استعمال کرنا آسان تر ہے۔</translation>
@@ -357,6 +359,7 @@
 <translation id="6288788894729749483">‏آن لائن محفوظ طریقے سے انجام دینے، تخلیق کرنے اور دریافت کرنے کے لیے Chrome کو اپنے ڈیفالٹ کے طور پر سیٹ کریں</translation>
 <translation id="6291089322031436445">‏Chrome Dev ایپس</translation>
 <translation id="6291549208091401781">‏Google Chrome پہلے سے ہی آپ کے کمپیوٹر پر سبھی صارفین کیلئے انسٹال ہے۔</translation>
+<translation id="6319856120645568262">‏آپ کے اطراف کا نقشہ بنانے اور آپ کے ہاتھوں کو ٹریک کرنے کیلئے، Chrome کو اجازت درکار ہے</translation>
 <translation id="6326175484149238433">‏Chrome سے ہٹائیں</translation>
 <translation id="6327105987658262776">کوئی اپ ڈیٹ دستیاب نہیں ہے۔</translation>
 <translation id="6360449101159168105">‏جب یہ ٹیب غیر فعال تھا تو Chrome کو تیز رکھنے کے لیے میموری خالی کر دی گئی تھی۔ آپ اس سائٹ کو ہمیشہ غیر فعال ہونے سے خارج کرنے کا انتخاب کر سکتے ہیں۔</translation>
diff --git a/chrome/app/resources/google_chrome_strings_uz.xtb b/chrome/app/resources/google_chrome_strings_uz.xtb
index b44090b..427b74e 100644
--- a/chrome/app/resources/google_chrome_strings_uz.xtb
+++ b/chrome/app/resources/google_chrome_strings_uz.xtb
@@ -47,6 +47,7 @@
 <translation id="1640672724030957280">Yuklab olinmoqda...</translation>
 <translation id="1662146548738125461">ChromeOS Flex haqida</translation>
 <translation id="1674870198290878346">Havolani Chromening &amp;inkognito oynasida ochish</translation>
+<translation id="1679594062619799116">Chromega Google hisobidan kirilganda hisobdagi parollardan foydalanish mumkin</translation>
 <translation id="1682634494516646069">Google Chrome brauzeri quyidagi jildda ma’lumotlarni o‘qish va yozish amallarini bajara olmadi:
 <ph name="USER_DATA_DIRECTORY" /></translation>
 <translation id="1698376642261615901">Google Chrome – veb sahifalarni va ilovalarni bir necha soniyada ochadigan brauzer. U tez, barqaror va undan foydalanish oson. Google Chrome brauzerining firibgarlik va zararli dasturlardan saqlovchi ichki o‘rnatilgan himoya vositasi Internetdagi faoliyatni maksimal havfsizlik bilan ta’minlaydi.</translation>
@@ -181,6 +182,7 @@
 <translation id="3564543103555793392">Chromega kirish orqali bukmarklar, parollar va boshqa maʼlumotlarni saqlash va telefonda ishlatish mumkin.</translation>
 <translation id="3576528680708590453">Chrome <ph name="TARGET_URL_HOSTNAME" /> havolasini muqobil brauzerda ochishi tizim administratori tomonidan sozlangan.</translation>
 <translation id="3582972582564653026">Chrome brauzerini barcha qurilmalringizda sinxronlang va o‘zingizga moslab oling</translation>
+<translation id="3583751698304738917">Siz allaqachon boshqa Chrome profilidan (<ph name="USER_EMAIL_ADDRESS" />) kirgansiz</translation>
 <translation id="3595784445906693824">Chromega yangi profil orqali kirasizmi?</translation>
 <translation id="3596080736082218006">{COUNT,plural, =0{Administrator yangilishlarni oʻrnatish uchun Chrome brauzerini qayta ishga tushirishni talab qilmoqda}=1{Administrator yangilishlarni oʻrnatish uchun Chrome brauzerini qayta ishga tushirishni talab qilmoqda Inkognito oynalar qayta ochilmaydi.}other{Administrator yangilishlarni oʻrnatish uchun Chrome brauzerini qayta ishga tushirishni talab qilmoqda # ta inkognito oyna qayta ochilmaydi.}}</translation>
 <translation id="3622797965165704966">Endi Google hisobida Chrome bilan ishlash yanada qulay bo‘ladi, jumladan umumiy kompyuterlarda ham.</translation>
@@ -355,6 +357,7 @@
 <translation id="6288788894729749483">Internetda xavfsiz ishlash, ijod qilish va kezish uchun Chromeni asosiy brauzer etib tayinlang</translation>
 <translation id="6291089322031436445">Chrome Dev ilovalari</translation>
 <translation id="6291549208091401781">Google Chrome allaqachon kompyuterdagi barcha foydalanuvchilar uchun o‘rnatilgan.</translation>
+<translation id="6319856120645568262">Chrome atrofingiz xaritasini yaratish va qoʻllaringiz holatini kuzatishga ruxsat olmoqchi</translation>
 <translation id="6326175484149238433">Chrome‘dan olib tashlash</translation>
 <translation id="6327105987658262776">Hech qanday yangilanish mavjud emas.</translation>
 <translation id="6360449101159168105">Bu varaq nofaol boʻlganida Chrome tezroq ishlashi uchun xotira boʻshatiladi. Bu saytni har doim nofaol boʻlmasligini tanlash mumkin.</translation>
diff --git a/chrome/app/theme/default_100_percent/google_chrome b/chrome/app/theme/default_100_percent/google_chrome
index e31fd74..0fbd111 160000
--- a/chrome/app/theme/default_100_percent/google_chrome
+++ b/chrome/app/theme/default_100_percent/google_chrome
@@ -1 +1 @@
-Subproject commit e31fd741c41c140585441c8121119bfa64b0d8a6
+Subproject commit 0fbd11198295f3dfb0b5eca1ecdd552350447971
diff --git a/chrome/app/theme/default_200_percent/google_chrome b/chrome/app/theme/default_200_percent/google_chrome
index cf09779..467ceaa 160000
--- a/chrome/app/theme/default_200_percent/google_chrome
+++ b/chrome/app/theme/default_200_percent/google_chrome
@@ -1 +1 @@
-Subproject commit cf09779445a996a4a6771dd96962c8db66687ec9
+Subproject commit 467ceaa55947ede56a7d4b99c8a6748c3b0fd611
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index d2e0184..f71855d 100644
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -1098,12 +1098,8 @@
     "password_manager/profile_password_store_factory.h",
     "performance_manager/chrome_browser_main_extra_parts_performance_manager.cc",
     "performance_manager/chrome_content_browser_client_performance_manager_part.cc",
-    "performance_manager/decorators/frozen_frame_aggregator.cc",
-    "performance_manager/decorators/frozen_frame_aggregator.h",
     "performance_manager/decorators/helpers/page_live_state_decorator_helper.cc",
     "performance_manager/decorators/helpers/page_live_state_decorator_helper.h",
-    "performance_manager/decorators/page_aggregator.cc",
-    "performance_manager/decorators/page_aggregator.h",
     "performance_manager/mechanisms/working_set_trimmer.cc",
     "performance_manager/mechanisms/working_set_trimmer.h",
     "performance_manager/metrics/memory_pressure_metrics.cc",
@@ -2375,6 +2371,7 @@
     "//components/password_manager/content/common",
     "//components/password_manager/core/browser",
     "//components/password_manager/core/browser:password_manager_buildflags",
+    "//components/password_manager/core/browser:password_switches",
     "//components/password_manager/core/browser/affiliation:affiliation_fetching",
     "//components/password_manager/core/browser/export",
     "//components/password_manager/core/browser/features:password_features",
@@ -2777,7 +2774,7 @@
     sources += [ "net/net_error_diagnostics_dialog_stub.cc" ]
   }
 
-  if (!is_android && !is_chromeos) {
+  if (is_win || is_mac || is_linux) {
     deps += [ "//chrome/browser/ui/webui/app_home:mojo_bindings" ]
   }
 
@@ -6955,7 +6952,7 @@
     ]
   }
 
-  if (is_win || is_android) {
+  if (is_win || is_android || is_linux) {
     sources += [
       "metrics/chrome_metrics_service_crash_reporter.cc",
       "metrics/chrome_metrics_service_crash_reporter.h",
@@ -8788,7 +8785,7 @@
       "//ui/webui/resources/cr_components/app_management:mojo_bindings",
     ]
 
-    if (!is_chromeos) {
+    if (is_win || is_mac || is_linux) {
       public_deps += [ "//chrome/browser/ui/webui/app_home:mojo_bindings" ]
     }
   }
diff --git a/chrome/browser/ash/BUILD.gn b/chrome/browser/ash/BUILD.gn
index 8f78d374..c0b621b 100644
--- a/chrome/browser/ash/BUILD.gn
+++ b/chrome/browser/ash/BUILD.gn
@@ -689,6 +689,8 @@
     "attestation/tpm_challenge_key_with_timeout.h",
     "audio/audio_survey_handler.cc",
     "audio/audio_survey_handler.h",
+    "audio/cras_audio_handler_delegate_impl.cc",
+    "audio/cras_audio_handler_delegate_impl.h",
     "base/locale_util.cc",
     "base/locale_util.h",
     "bluetooth/bluetooth_log_controller.cc",
@@ -976,6 +978,8 @@
     "customization/customization_wallpaper_util.h",
     "data_migration/data_migration_factory.cc",
     "data_migration/data_migration_factory.h",
+    "dbus/arc_tracing_service_provider.cc",
+    "dbus/arc_tracing_service_provider.h",
     "dbus/ash_dbus_helper.cc",
     "dbus/ash_dbus_helper.h",
     "dbus/chrome_features_service_provider.cc",
@@ -5559,6 +5563,7 @@
     "attestation/tpm_challenge_key_subtle_unittest.cc",
     "attestation/tpm_challenge_key_unittest.cc",
     "audio/audio_survey_handler_unittest.cc",
+    "audio/cras_audio_handler_delegate_impl_unittest.cc",
     "bluetooth/bluetooth_log_controller_unittest.cc",
     "bluetooth/debug_logs_manager_unittest.cc",
     "borealis/borealis_app_launcher_unittest.cc",
diff --git a/chrome/browser/ash/app_list/search/essential_search/essential_search_manager.cc b/chrome/browser/ash/app_list/search/essential_search/essential_search_manager.cc
index 29b09d1..510309c0 100644
--- a/chrome/browser/ash/app_list/search/essential_search/essential_search_manager.cc
+++ b/chrome/browser/ash/app_list/search/essential_search/essential_search_manager.cc
@@ -208,7 +208,7 @@
   std::unique_ptr<net::CanonicalCookie> cc(net::CanonicalCookie::Create(
       google_url, cookie_header, base::Time::Now(),
       std::nullopt /* server_time */, std::nullopt /* cookie_partition_key */,
-      /*block_truncated=*/true, net::CookieSourceType::kOther,
+      net::CookieSourceType::kOther,
       /*status=*/nullptr));
 
   if (!cc) {
diff --git a/chrome/browser/ash/arc/session/arc_service_launcher.cc b/chrome/browser/ash/arc/session/arc_service_launcher.cc
index d18f5aa6..22d5c28 100644
--- a/chrome/browser/ash/arc/session/arc_service_launcher.cc
+++ b/chrome/browser/ash/arc/session/arc_service_launcher.cc
@@ -17,7 +17,7 @@
 #include "ash/components/arc/clipboard/arc_clipboard_bridge.h"
 #include "ash/components/arc/compat_mode/arc_resize_lock_manager.h"
 #include "ash/components/arc/crash_collector/arc_crash_collector_bridge.h"
-#include "ash/components/arc/disk_quota/arc_disk_quota_bridge.h"
+#include "ash/components/arc/disk_space/arc_disk_space_bridge.h"
 #include "ash/components/arc/ime/arc_ime_service.h"
 #include "ash/components/arc/keyboard_shortcut/arc_keyboard_shortcut_bridge.h"
 #include "ash/components/arc/media_session/arc_media_session_bridge.h"
@@ -258,8 +258,7 @@
   ArcClipboardBridge::GetForBrowserContext(profile);
   ArcCrashCollectorBridge::GetForBrowserContext(profile);
   ArcDigitalGoodsBridge::GetForBrowserContext(profile);
-  ArcDiskQuotaBridge::GetForBrowserContext(profile)->SetAccountId(
-      multi_user_util::GetAccountIdFromProfile(profile));
+  ArcDiskSpaceBridge::GetForBrowserContext(profile);
   ArcEnterpriseReportingService::GetForBrowserContext(profile);
   ArcFileSystemBridge::GetForBrowserContext(profile);
   ArcFileSystemMounter::GetForBrowserContext(profile);
@@ -453,7 +452,7 @@
   ArcClipboardBridge::EnsureFactoryBuilt();
   ArcCrashCollectorBridge::EnsureFactoryBuilt();
   ArcDigitalGoodsBridge::EnsureFactoryBuilt();
-  ArcDiskQuotaBridge::EnsureFactoryBuilt();
+  ArcDiskSpaceBridge::EnsureFactoryBuilt();
   ArcDocumentsProviderRootMapFactory::GetInstance();
   ArcEnterpriseReportingService::EnsureFactoryBuilt();
   ArcFileSystemMounter::EnsureFactoryBuilt();
diff --git a/chrome/browser/ash/arc/tracing/overview_tracing_handler.cc b/chrome/browser/ash/arc/tracing/overview_tracing_handler.cc
index 25ea9d2..27c5cd6 100644
--- a/chrome/browser/ash/arc/tracing/overview_tracing_handler.cc
+++ b/chrome/browser/ash/arc/tracing/overview_tracing_handler.cc
@@ -434,6 +434,10 @@
   return active_trace_ != nullptr;
 }
 
+bool OverviewTracingHandler::arc_window_is_active() const {
+  return arc_active_window_ != nullptr;
+}
+
 base::TimeTicks OverviewTracingHandler::SystemTicksNow() {
   return TRACE_TIME_TICKS_NOW();
 }
diff --git a/chrome/browser/ash/arc/tracing/overview_tracing_handler.h b/chrome/browser/ash/arc/tracing/overview_tracing_handler.h
index 6f00556..f0c2b8a 100644
--- a/chrome/browser/ash/arc/tracing/overview_tracing_handler.h
+++ b/chrome/browser/ash/arc/tracing/overview_tracing_handler.h
@@ -98,6 +98,7 @@
   void StopTracing();
 
   bool is_tracing() const;
+  bool arc_window_is_active() const;
 
  private:
   GraphicsModelReadyCb graphics_model_ready_;
diff --git a/chrome/browser/ash/audio/DEPS b/chrome/browser/ash/audio/DEPS
index e36418cc..cd9e477 100644
--- a/chrome/browser/ash/audio/DEPS
+++ b/chrome/browser/ash/audio/DEPS
@@ -16,4 +16,12 @@
   # directory basis. See //tools/chromeos/gen_deps.sh for details.
   "+chrome/browser/ash/hats",
   "+chrome/browser/profiles",
+  "+chrome/browser/ui/settings_window_manager_chromeos.h",
 ]
+
+specific_include_rules = {
+  "cras_audio_handler_delegate_impl_unittest.cc": [
+    "+chrome/browser/ui/chrome_pages.h",
+    "+chrome/test/base/browser_with_test_window_test.h",
+  ],
+}
\ No newline at end of file
diff --git a/chrome/browser/ash/audio/cras_audio_handler_delegate_impl.cc b/chrome/browser/ash/audio/cras_audio_handler_delegate_impl.cc
new file mode 100644
index 0000000..1e98dd9a
--- /dev/null
+++ b/chrome/browser/ash/audio/cras_audio_handler_delegate_impl.cc
@@ -0,0 +1,19 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/ash/audio/cras_audio_handler_delegate_impl.h"
+
+#include "ash/webui/settings/public/constants/routes.mojom.h"
+#include "chrome/browser/profiles/profile_manager.h"
+#include "chrome/browser/ui/settings_window_manager_chromeos.h"
+
+namespace ash {
+
+void CrasAudioHandlerDelegateImpl::OpenSettingsAudioPage() const {
+  chrome::SettingsWindowManager::GetInstance()->ShowOSSettings(
+      ProfileManager::GetActiveUserProfile(),
+      chromeos::settings::mojom::kAudioSubpagePath);
+}
+
+}  // namespace ash
diff --git a/chrome/browser/ash/audio/cras_audio_handler_delegate_impl.h b/chrome/browser/ash/audio/cras_audio_handler_delegate_impl.h
new file mode 100644
index 0000000..38ad2de
--- /dev/null
+++ b/chrome/browser/ash/audio/cras_audio_handler_delegate_impl.h
@@ -0,0 +1,28 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_ASH_AUDIO_CRAS_AUDIO_HANDLER_DELEGATE_IMPL_H_
+#define CHROME_BROWSER_ASH_AUDIO_CRAS_AUDIO_HANDLER_DELEGATE_IMPL_H_
+
+#include "chromeos/ash/components/audio/cras_audio_handler.h"
+
+namespace ash {
+
+// A Delegate class that implements the CrasAudioHandler::Delegate, to expose
+// the chrome browser functionality to ash.
+class CrasAudioHandlerDelegateImpl : public CrasAudioHandler::Delegate {
+ public:
+  CrasAudioHandlerDelegateImpl() = default;
+  CrasAudioHandlerDelegateImpl(const CrasAudioHandlerDelegateImpl&) = delete;
+  CrasAudioHandlerDelegateImpl& operator=(const CrasAudioHandlerDelegateImpl&) =
+      delete;
+  ~CrasAudioHandlerDelegateImpl() override = default;
+
+  // CrasAudioHandler::Delegate:
+  void OpenSettingsAudioPage() const override;
+};
+
+}  // namespace ash
+
+#endif  // CHROME_BROWSER_ASH_AUDIO_CRAS_AUDIO_HANDLER_DELEGATE_IMPL_H_
diff --git a/chrome/browser/ash/audio/cras_audio_handler_delegate_impl_unittest.cc b/chrome/browser/ash/audio/cras_audio_handler_delegate_impl_unittest.cc
new file mode 100644
index 0000000..63e668e
--- /dev/null
+++ b/chrome/browser/ash/audio/cras_audio_handler_delegate_impl_unittest.cc
@@ -0,0 +1,69 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/ash/audio/cras_audio_handler_delegate_impl.h"
+
+#include "ash/webui/settings/public/constants/routes.mojom.h"
+#include "chrome/browser/ui/chrome_pages.h"
+#include "chrome/browser/ui/settings_window_manager_chromeos.h"
+#include "chrome/test/base/browser_with_test_window_test.h"
+#include "url/gurl.h"
+
+namespace ash {
+
+namespace {
+
+class TestSettingsWindowManager : public chrome::SettingsWindowManager {
+ public:
+  void ShowChromePageForProfile(Profile* profile,
+                                const GURL& gurl,
+                                int64_t display_id,
+                                apps::LaunchCallback callback) override {
+    last_url_ = gurl;
+    if (callback) {
+      std::move(callback).Run(apps::LaunchResult(apps::State::kSuccess));
+    }
+  }
+  const GURL& last_url() { return last_url_; }
+
+ private:
+  GURL last_url_;
+};
+
+// Use BrowserWithTestWindowTest because it sets up ash::Shell, ash::SystemTray,
+// ProfileManager, etc.
+class CrasAudioHandlerDelegateImplTest : public BrowserWithTestWindowTest {
+ public:
+  void SetUp() override {
+    BrowserWithTestWindowTest::SetUp();
+    cras_audio_handler_delegate_impl_ =
+        std::make_unique<CrasAudioHandlerDelegateImpl>();
+    settings_window_manager_ = std::make_unique<TestSettingsWindowManager>();
+    chrome::SettingsWindowManager::SetInstanceForTesting(
+        settings_window_manager_.get());
+  }
+
+  void TearDown() override {
+    chrome::SettingsWindowManager::SetInstanceForTesting(nullptr);
+    settings_window_manager_.reset();
+    cras_audio_handler_delegate_impl_.reset();
+    BrowserWithTestWindowTest::TearDown();
+  }
+
+ protected:
+  std::unique_ptr<CrasAudioHandlerDelegateImpl>
+      cras_audio_handler_delegate_impl_;
+  std::unique_ptr<TestSettingsWindowManager> settings_window_manager_;
+};
+
+TEST_F(CrasAudioHandlerDelegateImplTest, OpenSettingsAudioPage) {
+  cras_audio_handler_delegate_impl_->OpenSettingsAudioPage();
+  EXPECT_EQ(
+      settings_window_manager_->last_url(),
+      chrome::GetOSSettingsUrl(chromeos::settings::mojom::kAudioSubpagePath));
+}
+
+}  // namespace
+
+}  // namespace ash
diff --git a/chrome/browser/ash/chrome_browser_main_parts_ash.cc b/chrome/browser/ash/chrome_browser_main_parts_ash.cc
index 87a6cc59..1f536a5 100644
--- a/chrome/browser/ash/chrome_browser_main_parts_ash.cc
+++ b/chrome/browser/ash/chrome_browser_main_parts_ash.cc
@@ -57,6 +57,7 @@
 #include "chrome/browser/ash/arc/memory_pressure/container_app_killer.h"
 #include "chrome/browser/ash/arc/session/arc_service_launcher.h"
 #include "chrome/browser/ash/audio/audio_survey_handler.h"
+#include "chrome/browser/ash/audio/cras_audio_handler_delegate_impl.h"
 #include "chrome/browser/ash/bluetooth/bluetooth_log_controller.h"
 #include "chrome/browser/ash/bluetooth/hats_bluetooth_revamp_trigger_impl.h"
 #include "chrome/browser/ash/boot_times_recorder.h"
@@ -68,6 +69,7 @@
 #include "chrome/browser/ash/crosapi/lacros_availability_policy_observer.h"
 #include "chrome/browser/ash/crosapi/lacros_data_backward_migration_mode_policy_observer.h"
 #include "chrome/browser/ash/crostini/crostini_unsupported_action_notifier.h"
+#include "chrome/browser/ash/dbus/arc_tracing_service_provider.h"
 #include "chrome/browser/ash/dbus/ash_dbus_helper.h"
 #include "chrome/browser/ash/dbus/chrome_features_service_provider.h"
 #include "chrome/browser/ash/dbus/component_updater_service_provider.h"
@@ -179,6 +181,7 @@
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/startup_data.h"
 #include "chrome/browser/task_manager/task_manager_interface.h"
+#include "chrome/browser/tracing/chrome_tracing_delegate.h"
 #include "chrome/browser/ui/ash/assistant/assistant_browser_delegate_impl.h"
 #include "chrome/browser/ui/ash/assistant/assistant_state_client.h"
 #include "chrome/browser/ui/ash/fwupd_download_client_impl.h"
@@ -520,6 +523,14 @@
             std::make_unique<DlpFilesPolicyServiceProvider>()));
 
     if (arc::IsArcVmEnabled()) {
+      if (ChromeTracingDelegate::IsSystemWideTracingEnabled()) {
+        arc_tracing_service_ = CrosDBusService::Create(
+            system_bus, arc::tracing::kArcTracingServiceName,
+            dbus::ObjectPath(arc::tracing::kArcTracingServicePath),
+            CrosDBusService::CreateServiceProviderList(
+                std::make_unique<ArcTracingServiceProvider>()));
+      }
+
       libvda_service_ = CrosDBusService::Create(
           system_bus, libvda::kLibvdaServiceName,
           dbus::ObjectPath(libvda::kLibvdaServicePath),
@@ -577,6 +588,7 @@
     LoginState::Shutdown();
     NetworkCertLoader::Shutdown();
     TPMTokenLoader::Shutdown();
+    arc_tracing_service_.reset();
     proxy_resolution_service_.reset();
     kiosk_info_service_.reset();
     metrics_event_service_.reset();
@@ -631,6 +643,7 @@
   std::unique_ptr<CrosDBusService> fusebox_service_;
   std::unique_ptr<CrosDBusService> mojo_connection_service_;
   std::unique_ptr<CrosDBusService> dlp_files_policy_service_;
+  std::unique_ptr<CrosDBusService> arc_tracing_service_;
 };
 
 }  // namespace internal
@@ -784,9 +797,10 @@
       media_controller_manager;
   content::GetMediaSessionService().BindMediaControllerManager(
       media_controller_manager.InitWithNewPipeAndPassReceiver());
-  CrasAudioHandler::Initialize(
+  CrasAudioHandler::InitializeDelegate(
       std::move(media_controller_manager),
-      new AudioDevicesPrefHandlerImpl(g_browser_process->local_state()));
+      new AudioDevicesPrefHandlerImpl(g_browser_process->local_state()),
+      std::make_unique<CrasAudioHandlerDelegateImpl>());
 
   audio_survey_handler_ = std::make_unique<AudioSurveyHandler>();
 
diff --git a/chrome/browser/ash/dbus/DEPS b/chrome/browser/ash/dbus/DEPS
index 218ceba..0f0183c 100644
--- a/chrome/browser/ash/dbus/DEPS
+++ b/chrome/browser/ash/dbus/DEPS
@@ -17,6 +17,7 @@
   "+chrome/browser/ash/app_mode",
   "+chrome/browser/ash/arc/fileapi",
   "+chrome/browser/ash/arc/session",
+  "+chrome/browser/ash/arc/tracing",
   "+chrome/browser/ash/arc/video",
   "+chrome/browser/ash/borealis",
   "+chrome/browser/ash/crostini",
diff --git a/chrome/browser/ash/dbus/arc_tracing_service_provider.cc b/chrome/browser/ash/dbus/arc_tracing_service_provider.cc
new file mode 100644
index 0000000..d4a322e
--- /dev/null
+++ b/chrome/browser/ash/dbus/arc_tracing_service_provider.cc
@@ -0,0 +1,139 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/ash/dbus/arc_tracing_service_provider.h"
+
+#include "base/containers/span.h"
+#include "base/files/file_path.h"
+#include "base/functional/bind.h"
+#include "base/strings/string_util.h"
+#include "base/task/thread_pool.h"
+#include "chrome/browser/ash/arc/tracing/overview_tracing_handler.h"
+#include "chrome/browser/browser_process.h"
+#include "dbus/bus.h"
+#include "dbus/message.h"
+#include "third_party/cros_system_api/dbus/service_constants.h"
+
+namespace ash {
+namespace {
+constexpr int kMaxStatusMessagesCount = 20;
+constexpr char kTraceStartedMsg[] = "Trace started";
+}  // namespace
+
+ArcTracingServiceProvider::ArcTracingServiceProvider() = default;
+
+ArcTracingServiceProvider::~ArcTracingServiceProvider() = default;
+
+void ArcTracingServiceProvider::Start(
+    scoped_refptr<dbus::ExportedObject> exported_object) {
+  exported_object->ExportMethod(
+      arc::tracing::kArcTracingInterfaceName,
+      arc::tracing::kArcTracingStartMethod,
+      base::BindRepeating(&ArcTracingServiceProvider::StartTrace,
+                          weak_ptr_factory_.GetWeakPtr()),
+      base::BindOnce(&ArcTracingServiceProvider::OnExported,
+                     weak_ptr_factory_.GetWeakPtr()));
+  exported_object->ExportMethod(
+      arc::tracing::kArcTracingInterfaceName,
+      arc::tracing::kArcTracingGetStatusMethod,
+      base::BindRepeating(&ArcTracingServiceProvider::GetStatus,
+                          weak_ptr_factory_.GetWeakPtr()),
+      base::BindOnce(&ArcTracingServiceProvider::OnExported,
+                     weak_ptr_factory_.GetWeakPtr()));
+}
+
+void ArcTracingServiceProvider::AddStatusMessage(std::string_view status) {
+  msgs_.emplace_back(status);
+  if (msgs_.size() > kMaxStatusMessagesCount) {
+    msgs_.pop_front();
+  }
+}
+
+void ArcTracingServiceProvider::OnExported(const std::string& interface_name,
+                                           const std::string& method_name,
+                                           bool success) {
+  LOG_IF(ERROR, !success) << "Failed to export " << interface_name << "."
+                          << method_name;
+}
+
+void ArcTracingServiceProvider::OnTraceEnd(
+    std::unique_ptr<arc::OverviewTracingResult> result) {
+  if (result->path.empty()) {
+    AddStatusMessage(result->status);
+  } else {
+    AddStatusMessage(
+        base::StrCat({result->status, ": ", result->path.value()}));
+  }
+  // Do this in a separate task because the handler may still have code to run
+  // after we return.
+  base::SingleThreadTaskRunner::GetCurrentDefault()->DeleteSoon(
+      FROM_HERE, std::move(handler_));
+}
+
+void ArcTracingServiceProvider::StartTrace(
+    dbus::MethodCall* method_call,
+    dbus::ExportedObject::ResponseSender response_sender) {
+  if (handler_) {
+    std::move(response_sender)
+        .Run(dbus::ErrorResponse::FromMethodCall(method_call, DBUS_ERROR_FAILED,
+                                                 "Trace already in progress"));
+    return;
+  }
+
+  dbus::MessageReader reader(method_call);
+
+  double max_trace_seconds;
+  if (!reader.PopDouble(&max_trace_seconds)) {
+    std::move(response_sender)
+        .Run(dbus::ErrorResponse::FromMethodCall(
+            method_call, DBUS_ERROR_INVALID_ARGS,
+            "Expect max trace time as type double in seconds"));
+    return;
+  }
+  auto handler = std::make_unique<arc::OverviewTracingHandler>(
+      arc::OverviewTracingHandler::ArcWindowFocusChangeCb());
+
+  auto max_trace_time = base::Seconds(max_trace_seconds);
+  if (max_trace_time < base::Seconds(1)) {
+    std::move(response_sender)
+        .Run(dbus::ErrorResponse::FromMethodCall(
+            method_call, DBUS_ERROR_INVALID_ARGS,
+            "Max trace seconds out of range; must be >= 1"));
+    return;
+  }
+
+  if (!handler->arc_window_is_active()) {
+    std::move(response_sender)
+        .Run(dbus::ErrorResponse::FromMethodCall(method_call, DBUS_ERROR_FAILED,
+                                                 "ARC window isn't active"));
+    return;
+  }
+
+  handler_ = std::move(handler);
+  handler_->set_graphics_model_ready_cb(base::BindRepeating(
+      &ArcTracingServiceProvider::OnTraceEnd, weak_ptr_factory_.GetWeakPtr()));
+  handler_->set_start_build_model_cb(
+      base::BindRepeating(&ArcTracingServiceProvider::AddStatusMessage,
+                          weak_ptr_factory_.GetWeakPtr(), "Building model..."));
+  handler_->StartTracing(base::FilePath("/tmp"), max_trace_time);
+
+  auto response = dbus::Response::FromMethodCall(method_call);
+  dbus::MessageWriter writer(response.get());
+  writer.AppendString(kTraceStartedMsg);
+  AddStatusMessage(kTraceStartedMsg);
+  std::move(response_sender).Run(std::move(response));
+}
+
+void ArcTracingServiceProvider::GetStatus(
+    dbus::MethodCall* method_call,
+    dbus::ExportedObject::ResponseSender response_sender) {
+  auto response = dbus::Response::FromMethodCall(method_call);
+  dbus::MessageWriter writer(response.get());
+  for (const auto& msg : msgs_) {
+    writer.AppendString(msg);
+  }
+  std::move(response_sender).Run(std::move(response));
+}
+
+}  // namespace ash
diff --git a/chrome/browser/ash/dbus/arc_tracing_service_provider.h b/chrome/browser/ash/dbus/arc_tracing_service_provider.h
new file mode 100644
index 0000000..ec70720
--- /dev/null
+++ b/chrome/browser/ash/dbus/arc_tracing_service_provider.h
@@ -0,0 +1,77 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_ASH_DBUS_ARC_TRACING_SERVICE_PROVIDER_H_
+#define CHROME_BROWSER_ASH_DBUS_ARC_TRACING_SERVICE_PROVIDER_H_
+
+#include <deque>
+#include <string>
+
+#include "base/memory/ref_counted.h"
+#include "base/memory/weak_ptr.h"
+#include "chromeos/ash/components/dbus/services/cros_dbus_service.h"
+#include "dbus/exported_object.h"
+#include "mojo/public/cpp/system/handle.h"
+
+namespace dbus {
+class MethodCall;
+}  // namespace dbus
+
+namespace arc {
+class OverviewTracingHandler;
+struct OverviewTracingResult;
+}  // namespace arc
+
+namespace ash {
+
+// This class exports a D-Bus method that libvda will call to establish a
+// mojo pipe to the VideoAcceleratorFactory interface.
+class ArcTracingServiceProvider
+    : public CrosDBusService::ServiceProviderInterface {
+ public:
+  ArcTracingServiceProvider();
+
+  ArcTracingServiceProvider(const ArcTracingServiceProvider&) = delete;
+  ArcTracingServiceProvider& operator=(const ArcTracingServiceProvider&) =
+      delete;
+
+  ~ArcTracingServiceProvider() override;
+
+  // CrosDBusService::ServiceProviderInterface:
+  void Start(scoped_refptr<dbus::ExportedObject> exported_object) override;
+
+ private:
+  // Adds a message to the circular log buffer, possibly removing the oldest
+  // entry.
+  void AddStatusMessage(std::string_view status);
+
+  // Called from ExportedObject when a handler is exported as a D-Bus
+  // method or failed to be exported.
+  void OnExported(const std::string& interface_name,
+                  const std::string& method_name,
+                  bool success);
+
+  void OnTraceEnd(std::unique_ptr<arc::OverviewTracingResult> result);
+
+  void StartTrace(dbus::MethodCall* method_call,
+                  dbus::ExportedObject::ResponseSender response_sender);
+
+  // Responds with (Gets) the messages in the circular log buffer, oldest first.
+  void GetStatus(dbus::MethodCall* method_call,
+                 dbus::ExportedObject::ResponseSender response_sender);
+
+  // This is only present if a trace is running.
+  std::unique_ptr<arc::OverviewTracingHandler> handler_;
+
+  // The last few status messages.
+  std::deque<std::string> msgs_;
+
+  // Keep this last so that all weak pointers will be invalidated at the
+  // beginning of destruction.
+  base::WeakPtrFactory<ArcTracingServiceProvider> weak_ptr_factory_{this};
+};
+
+}  // namespace ash
+
+#endif  // CHROME_BROWSER_ASH_DBUS_ARC_TRACING_SERVICE_PROVIDER_H_
diff --git a/chrome/browser/ash/login/wizard_controller.cc b/chrome/browser/ash/login/wizard_controller.cc
index 4316bfa..23fc2653 100644
--- a/chrome/browser/ash/login/wizard_controller.cc
+++ b/chrome/browser/ash/login/wizard_controller.cc
@@ -61,6 +61,7 @@
 #include "chrome/browser/ash/login/screens/arc_vm_data_migration_screen.h"
 #include "chrome/browser/ash/login/screens/assistant_optin_flow_screen.h"
 #include "chrome/browser/ash/login/screens/base_screen.h"
+#include "chrome/browser/ash/login/screens/categories_selection_screen.h"
 #include "chrome/browser/ash/login/screens/choobe_screen.h"
 #include "chrome/browser/ash/login/screens/consolidated_consent_screen.h"
 #include "chrome/browser/ash/login/screens/consumer_update_screen.h"
@@ -108,6 +109,7 @@
 #include "chrome/browser/ash/login/screens/osauth/password_selection_screen.h"
 #include "chrome/browser/ash/login/screens/osauth/recovery_eligibility_screen.h"
 #include "chrome/browser/ash/login/screens/packaged_license_screen.h"
+#include "chrome/browser/ash/login/screens/personalized_recommend_apps_screen.h"
 #include "chrome/browser/ash/login/screens/pin_setup_screen.h"
 #include "chrome/browser/ash/login/screens/quick_start_screen.h"
 #include "chrome/browser/ash/login/screens/recommend_apps_screen.h"
@@ -127,9 +129,10 @@
 #include "chrome/browser/ash/login/screens/user_creation_screen.h"
 #include "chrome/browser/ash/login/screens/welcome_screen.h"
 #include "chrome/browser/ash/login/screens/wrong_hwid_screen.h"
-// LINT.ThenChange(//tools/metrics/histograms/metadata/oobe/histograms.xml)
 #include "chrome/browser/ash/login/screens/categories_selection_screen.h"
-#include "chrome/browser/ash/login/screens/personalized_recommend_apps_screen.h"
+// Add new screens before this block. Add screens and exit reasons to
+// OOBE histograms.
+// LINT.ThenChange(//tools/metrics/histograms/metadata/oobe/histograms.xml)
 #include "chrome/browser/ash/login/session/user_session_manager.h"
 #include "chrome/browser/ash/login/startup_utils.h"
 #include "chrome/browser/ash/login/ui/login_display_host.h"
diff --git a/chrome/browser/browsing_data/browsing_data_remover_browsertest.cc b/chrome/browser/browsing_data/browsing_data_remover_browsertest.cc
index 6de4775..c150fe2 100644
--- a/chrome/browser/browsing_data/browsing_data_remover_browsertest.cc
+++ b/chrome/browser/browsing_data/browsing_data_remover_browsertest.cc
@@ -3,12 +3,14 @@
 // found in the LICENSE file.
 
 #include <stddef.h>
+
 #include <memory>
 #include <string>
 
 #include "base/feature_list.h"
 #include "base/functional/bind.h"
 #include "base/functional/callback.h"
+#include "base/metrics/histogram_samples.h"
 #include "base/path_service.h"
 #include "base/run_loop.h"
 #include "base/strings/stringprintf.h"
@@ -40,6 +42,7 @@
 #include "components/content_settings/core/browser/host_content_settings_map.h"
 #include "components/history/core/common/pref_names.h"
 #include "components/metrics/content/subprocess_metrics_provider.h"
+#include "components/nacl/common/buildflags.h"
 #include "components/password_manager/core/browser/features/password_features.h"
 #include "components/password_manager/core/browser/features/password_manager_features_util.h"
 #include "components/prefs/pref_service.h"
@@ -100,6 +103,8 @@
 using content::BrowserThread;
 using content::BrowsingDataFilterBuilder;
 
+using testing::UnorderedElementsAreArray;
+
 namespace {
 static const char* kExampleHost = "example.com";
 static const char* kLocalHost = "localhost";
@@ -128,6 +133,23 @@
       return base::Time();
   }
 }
+
+std::vector<std::string> GetHistogramSuffixes(
+    const base::HistogramTester& tester,
+    const std::string& prefix) {
+  std::vector<std::string> types;
+  for (const auto& entry : tester.GetTotalCountsForPrefix(prefix)) {
+    types.push_back(entry.first.substr(prefix.length()));
+  }
+  return types;
+}
+
+void AppendRange(std::vector<std::string>& target,
+                 const std::vector<std::string_view> append) {
+  // Use std append_range() when c++23 is available.
+  target.insert(target.end(), append.begin(), append.end());
+}
+
 }  // namespace
 
 class BrowsingDataRemoverBrowserTest
@@ -645,6 +667,25 @@
     run_loop.Run();
   }
 
+  auto filter_builder = BrowsingDataFilterBuilder::Create(
+      BrowsingDataFilterBuilder::Mode::kDelete);
+  filter_builder->AddRegisterableDomain("example.com");
+  RemoveWithFilterAndWait(chrome_browsing_data_remover::FILTERABLE_DATA_TYPES,
+                          std::move(filter_builder));
+
+  // This data type doesn't implement per-origin deletion so just test that
+  // nothing got removed.
+  {
+    base::RunLoop run_loop;
+    webrtc_video_perf_history->GetPerfInfo(
+        media::mojom::WebrtcPredictionFeatures::New(features), kFrameRate,
+        base::BindLambdaForTesting([&](bool smooth) {
+          EXPECT_FALSE(smooth);
+          run_loop.Quit();
+        }));
+    run_loop.Run();
+  }
+
   // Clear history.
   RemoveAndWait(chrome_browsing_data_remover::DATA_TYPE_HISTORY);
 
@@ -1041,6 +1082,97 @@
       }));
 }
 
+const char kDelegateHistogramPrefix[] =
+    "History.ClearBrowsingData.Duration.ChromeTask.";
+const char kImplHistogramPrefix[] = "History.ClearBrowsingData.Duration.Task.";
+
+// Add data types here that support filtering and only delete data that matches
+// the BrowsingDataFilterBuilder.
+const std::vector<std::string_view> kSupportsOriginFilteringImpl{
+    "AuthCache",           "EmbedderData",     "HttpCache",
+    "NetworkErrorLogging", "PreflightCache",   "ReportingCache",
+    "SharedDictionary",    "StoragePartition", "Synchronous",
+    "TrustTokens",
+};
+const std::vector<std::string_view> kSupportsOriginFilteringDelegate{
+#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_WIN)
+    "CdmLicenses",
+#endif
+    "Cookies",           "DisableAutoSigninForProfilePasswords",
+    "DomainReliability", "MediaDeviceSalts",
+    "Synchronous",
+};
+
+// This test ensures that all deletions that are part of FILTERABLE_DATA_TYPES
+// fully support the BrowsingDataFilterBuilder if they are running for
+// origin-specific deletions. Ideally, every web-visible data type should
+// support filtering. If you implemented filtering already, just add your type
+// to kSupportsOriginFiltering above.
+//
+// If it is not important that your data is cleared with per-origin deletions,
+// you can add your type to kDoesNotSupportOriginFiltering and ensure that
+// deletions are only performed when the filter builder
+// MatchesMostOriginsAndDomains().
+IN_PROC_BROWSER_TEST_F(BrowsingDataRemoverBrowserTest, FullyFilteredDataTypes) {
+  base::HistogramTester tester;
+  auto filter_builder = BrowsingDataFilterBuilder::Create(
+      BrowsingDataFilterBuilder::Mode::kDelete);
+  filter_builder->AddRegisterableDomain("example.com");
+  RemoveWithFilterAndWait(chrome_browsing_data_remover::FILTERABLE_DATA_TYPES,
+                          std::move(filter_builder));
+
+  EXPECT_THAT(GetHistogramSuffixes(tester, kImplHistogramPrefix),
+              UnorderedElementsAreArray(kSupportsOriginFilteringImpl));
+  EXPECT_THAT(GetHistogramSuffixes(tester, kDelegateHistogramPrefix),
+              UnorderedElementsAreArray(kSupportsOriginFilteringDelegate));
+}
+
+// Add data types here that do not support the BrowsingDataFilterBuilder.
+// These deletions should only run when the mode of the filter builder is
+// "kPreserve" and MatchesMostOriginsAndDomains() is true. Otherwise data for
+// these types will be cleared when per-origin deletions like those from the
+// Clear-Site-Data header are performed.
+const std::vector<std::string_view> kDoesNotSupportOriginFilteringImpl{
+    "CodeCaches",
+    "NetworkHistory",
+};
+const std::vector<std::string_view> kDoesNotSupportOriginFilteringDelegate{
+    "FaviconCacheExpiration",
+#if BUILDFLAG(ENABLE_DOWNGRADE_PROCESSING)
+    "UserDataSnapshot",
+#endif
+    "WebrtcEventLogs",
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+    "TpmAttestationKeys",
+#endif
+#if BUILDFLAG(ENABLE_NACL)
+    "NaclCache",
+    "PnaclCache",
+#endif
+};
+
+// See comment on FullyFilteredDataTypes test for advice when this test fails.
+IN_PROC_BROWSER_TEST_F(BrowsingDataRemoverBrowserTest, AllFilterableDataTypes) {
+  base::HistogramTester tester;
+  auto filter_builder = BrowsingDataFilterBuilder::Create(
+      BrowsingDataFilterBuilder::Mode::kPreserve);
+  filter_builder->AddRegisterableDomain("example.com");
+  RemoveWithFilterAndWait(chrome_browsing_data_remover::FILTERABLE_DATA_TYPES,
+                          std::move(filter_builder));
+
+  std::vector<std::string> all_impl_types;
+  AppendRange(all_impl_types, kSupportsOriginFilteringImpl);
+  AppendRange(all_impl_types, kDoesNotSupportOriginFilteringImpl);
+  EXPECT_THAT(GetHistogramSuffixes(tester, kImplHistogramPrefix),
+              UnorderedElementsAreArray(all_impl_types));
+
+  std::vector<std::string> all_delegate_types;
+  AppendRange(all_delegate_types, kSupportsOriginFilteringDelegate);
+  AppendRange(all_delegate_types, kDoesNotSupportOriginFilteringDelegate);
+  EXPECT_THAT(GetHistogramSuffixes(tester, kDelegateHistogramPrefix),
+              UnorderedElementsAreArray(all_delegate_types));
+}
+
 // Parameterized to run tests for different deletion time ranges.
 class BrowsingDataRemoverBrowserTestP
     : public BrowsingDataRemoverBrowserTest,
diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
index 7d0b4b30..bb991e9 100644
--- a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
+++ b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
@@ -831,13 +831,15 @@
         ContentSettingsType::SITE_ENGAGEMENT, base::Time(), base::Time::Max(),
         website_settings_filter);
 
-    if (MediaEngagementService::IsEnabled()) {
-      MediaEngagementService::Get(profile_)->ClearDataBetweenTime(delete_begin_,
-                                                                  delete_end_);
-    }
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
+      if (MediaEngagementService::IsEnabled()) {
+        MediaEngagementService::Get(profile_)->ClearDataBetweenTime(
+            delete_begin_, delete_end_);
+      }
 
-    PermissionActionsHistoryFactory::GetForProfile(profile_)->ClearHistory(
-        delete_begin_, delete_end_);
+      PermissionActionsHistoryFactory::GetForProfile(profile_)->ClearHistory(
+          delete_begin_, delete_end_);
+    }
   }
 
   if ((remove_mask & constants::DATA_TYPE_SITE_USAGE_DATA) ||
@@ -1066,39 +1068,48 @@
     // dependencies or reimplement the relevant part of WebCacheManager
     // in content/browser.
     // TODO(crbug.com/40657761): add a test for this.
-    for (content::RenderProcessHost::iterator iter =
-             content::RenderProcessHost::AllHostsIterator();
-         !iter.IsAtEnd(); iter.Advance()) {
-      content::RenderProcessHost* render_process_host = iter.GetCurrentValue();
-      if (render_process_host->GetBrowserContext() == profile_ &&
-          render_process_host->IsInitializedAndNotDead()) {
-        web_cache::WebCacheManager::GetInstance()->ClearCacheForProcess(
-            render_process_host->GetID());
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
+      for (content::RenderProcessHost::iterator iter =
+               content::RenderProcessHost::AllHostsIterator();
+           !iter.IsAtEnd(); iter.Advance()) {
+        content::RenderProcessHost* render_process_host =
+            iter.GetCurrentValue();
+        if (render_process_host->GetBrowserContext() == profile_ &&
+            render_process_host->IsInitializedAndNotDead()) {
+          web_cache::WebCacheManager::GetInstance()->ClearCacheForProcess(
+              render_process_host->GetID());
+        }
       }
     }
 
 #if BUILDFLAG(ENABLE_NACL)
-    nacl::NaClBrowser::GetInstance()->ClearValidationCache(UIThreadTrampoline(
-        CreateTaskCompletionClosure(TracingDataType::kNaclCache)));
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
+      nacl::NaClBrowser::GetInstance()->ClearValidationCache(UIThreadTrampoline(
+          CreateTaskCompletionClosure(TracingDataType::kNaclCache)));
 
-    pnacl::PnaclHost::GetInstance()->ClearTranslationCacheEntriesBetween(
-        delete_begin_, delete_end_,
-        UIThreadTrampoline(
-            CreateTaskCompletionClosure(TracingDataType::kPnaclCache)));
+      pnacl::PnaclHost::GetInstance()->ClearTranslationCacheEntriesBetween(
+          delete_begin_, delete_end_,
+          UIThreadTrampoline(
+              CreateTaskCompletionClosure(TracingDataType::kPnaclCache)));
+    }
 #endif
 
-    browsing_data::RemovePrerenderCacheData(
-        prerender::NoStatePrefetchManagerFactory::GetForBrowserContext(
-            profile_));
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
+      browsing_data::RemovePrerenderCacheData(
+          prerender::NoStatePrefetchManagerFactory::GetForBrowserContext(
+              profile_));
+    }
 
 #if BUILDFLAG(IS_ANDROID)
 #if BUILDFLAG(ENABLE_FEED_V2)
-    // Don't bridge through if the service isn't present, which means we're
-    // probably running in a native unit test.
-    feed::FeedService* service =
-        feed::FeedServiceFactory::GetForBrowserContext(profile_);
-    if (service) {
-      service->ClearCachedData();
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
+      // Don't bridge through if the service isn't present, which means
+      // we're probably running in a native unit test.
+      feed::FeedService* service =
+          feed::FeedServiceFactory::GetForBrowserContext(profile_);
+      if (service) {
+        service->ClearCachedData();
+      }
     }
 #endif  // BUILDFLAG(ENABLE_FEED_V2)
 
@@ -1120,18 +1131,19 @@
 #endif
 
     // TODO(crbug.com/41380998): Remove null-check.
-    auto* webrtc_event_log_manager = WebRtcEventLogManager::GetInstance();
-    if (webrtc_event_log_manager) {
-      webrtc_event_log_manager->ClearCacheForBrowserContext(
-          profile_, delete_begin_, delete_end_,
-          CreateTaskCompletionClosure(TracingDataType::kWebrtcEventLogs));
-    } else {
-      LOG(ERROR) << "WebRtcEventLogManager not instantiated.";
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
+      auto* webrtc_event_log_manager = WebRtcEventLogManager::GetInstance();
+      if (webrtc_event_log_manager) {
+        webrtc_event_log_manager->ClearCacheForBrowserContext(
+            profile_, delete_begin_, delete_end_,
+            CreateTaskCompletionClosure(TracingDataType::kWebrtcEventLogs));
+      } else {
+        LOG(ERROR) << "WebRtcEventLogManager not instantiated.";
+      }
     }
 
     // Mark cached favicons as expired to force redownload on next visit.
-    if (filter_builder->GetMode() ==
-        BrowsingDataFilterBuilder::Mode::kPreserve) {
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
       history::HistoryService* history_service =
           HistoryServiceFactory::GetForProfile(
               profile_, ServiceAccessType::EXPLICIT_ACCESS);
@@ -1156,7 +1168,7 @@
     // On Chrome OS, delete any content protection platform keys.
     // Platform keys do not support filtering by domain, so skip this if
     // clearing only a specified set of sites.
-    if (filter_builder->GetMode() != BrowsingDataFilterBuilder::Mode::kDelete) {
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
       const user_manager::User* user =
           ash::ProfileHelper::Get()->GetUserByProfile(profile_);
       if (!user) {
@@ -1277,9 +1289,11 @@
   //
   // TODO(alexmos): Support finer-grained filtering based on time ranges and
   // |filter|. For now, conservatively delete all saved isolated origins.
-  if (remove_mask &
-      (constants::DATA_TYPE_ISOLATED_ORIGINS | constants::DATA_TYPE_HISTORY))
+  if (remove_mask & (constants::DATA_TYPE_ISOLATED_ORIGINS |
+                     constants::DATA_TYPE_HISTORY) &&
+      filter_builder->MatchesMostOriginsAndDomains()) {
     browsing_data::RemoveSiteIsolationData(prefs);
+  }
 
   if (remove_mask & constants::DATA_TYPE_HISTORY) {
     network::mojom::NetworkContext* network_context =
@@ -1317,7 +1331,7 @@
   //////////////////////////////////////////////////////////////////////////////
   // Remove external protocol data.
   if (remove_mask & constants::DATA_TYPE_EXTERNAL_PROTOCOL_DATA &&
-      filter_builder->GetMode() == BrowsingDataFilterBuilder::Mode::kPreserve) {
+      filter_builder->MatchesMostOriginsAndDomains()) {
     ExternalProtocolHandler::ClearData(profile_);
   }
 
@@ -1339,7 +1353,8 @@
   // site data are cleared, or when history is cleared. This is because clearing
   // cookies or history implies forgetting that the user has logged into sites.
   if (remove_mask &
-      (constants::DATA_TYPE_SITE_DATA | constants::DATA_TYPE_HISTORY)) {
+          (constants::DATA_TYPE_SITE_DATA | constants::DATA_TYPE_HISTORY) &&
+      filter_builder->MatchesMostOriginsAndDomains()) {
     login_detection::prefs::RemoveLoginDetectionData(prefs);
   }
 
diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h
index cffe328..e9e8363 100644
--- a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h
+++ b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h
@@ -100,9 +100,9 @@
 
   // For debugging purposes. Please add new deletion tasks at the end.
   // This enum is recorded in a histogram, so don't change or reuse ids.
-  // Entries must also be added to ChromeBrowsingDataRemoverTasks in enums.xml
-  // and History.ClearBrowsingData.Duration.ChromeTask.{Task}
-  // in histograms/metadata/history/histograms.xml.
+  // Entries must also be added to ChromeBrowsingDataRemoverTasks in
+  // enums.xml and History.ClearBrowsingData.Duration.ChromeTask.{Task} in
+  // histograms/metadata/history/histograms.xml.
   enum class TracingDataType {
     kSynchronous = 1,
     kHistory = 2,
diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate_unittest.cc b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate_unittest.cc
index 4064b92..8ae9d42e 100644
--- a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate_unittest.cc
+++ b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate_unittest.cc
@@ -4049,6 +4049,20 @@
   EXPECT_EQ(3u, prefs->GetDict(kPermissionActionsPrefPath)
                     .FindList("notifications")
                     ->size());
+
+  auto filter_builder = BrowsingDataFilterBuilder::Create(
+      BrowsingDataFilterBuilder::Mode::kDelete);
+  filter_builder->AddRegisterableDomain("example.com");
+  BlockUntilOriginDataRemoved(first_recorded_time, third_recorded_time,
+                              constants::DATA_TYPE_SITE_USAGE_DATA,
+                              std::move(filter_builder));
+
+  // This data type doesn't implement per-origin deletion so just test that
+  // nothing got removed.
+  EXPECT_EQ(3u, prefs->GetDict(kPermissionActionsPrefPath)
+                    .FindList("notifications")
+                    ->size());
+
   // Remove the first and the second element.
   BlockUntilBrowsingDataRemoved(first_recorded_time, third_recorded_time,
                                 constants::DATA_TYPE_SITE_USAGE_DATA, false);
diff --git a/chrome/browser/chromeos/enterprise/floating_sso/cookie_sync_conversions_unittest.cc b/chrome/browser/chromeos/enterprise/floating_sso/cookie_sync_conversions_unittest.cc
index ec736a4cf..6b2b393 100644
--- a/chrome/browser/chromeos/enterprise/floating_sso/cookie_sync_conversions_unittest.cc
+++ b/chrome/browser/chromeos/enterprise/floating_sso/cookie_sync_conversions_unittest.cc
@@ -128,8 +128,7 @@
   net::CookieInclusionStatus status;
   std::unique_ptr<net::CanonicalCookie> cookie = net::CanonicalCookie::Create(
       GURL(kUrlForTesting), cookie_line, creation_time, server_time,
-      partition_key_with_nonce, /*block_truncated=*/true,
-      net::CookieSourceType::kHTTP, &status);
+      partition_key_with_nonce, net::CookieSourceType::kHTTP, &status);
 
   ASSERT_TRUE(cookie);
 
diff --git a/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc b/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc
index 65bc890..fb6998f 100644
--- a/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc
+++ b/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc
@@ -45,6 +45,7 @@
 #include "components/enterprise/common/proto/connectors.pb.h"
 #include "components/policy/core/common/chrome_schema.h"
 #include "components/prefs/pref_service.h"
+#include "components/safe_browsing/content/browser/web_ui/safe_browsing_ui.h"
 #include "components/safe_browsing/core/common/features.h"
 #include "components/safe_browsing/core/common/safe_browsing_prefs.h"
 #include "components/url_matcher/url_matcher.h"
@@ -831,6 +832,12 @@
   }
 }
 
+bool ContentAnalysisDelegate::ShouldNotUploadLargePage(size_t page_size) {
+  return data_.settings.cloud_or_local_settings.is_cloud_analysis() &&
+         page_size > BinaryUploadService::kMaxUploadSizeBytes &&
+         data_.settings.block_large_files;
+}
+
 void ContentAnalysisDelegate::PrepareImageRequest() {
   // The request is considered complete if there is no image or if the image is
   // too large compared to the maximum size.
@@ -878,7 +885,18 @@
     if (!page_content_type_.empty()) {
       request->set_content_type(page_content_type_);
     }
-    UploadPageForDeepScanning(std::move(request));
+    if (ShouldNotUploadLargePage(page_size_bytes_)) {
+      // The request shouldn't be finished early synchronously so that
+      // `UploadData()` can return "false" to `CreateForWebContents()` and let
+      // it initialize the tab modal dialog.
+      content::GetUIThreadTaskRunner({})->PostTask(
+          FROM_HERE,
+          base::BindOnce(&ContentAnalysisDelegate::FinishLargeDataRequestEarly,
+                         weak_ptr_factory_.GetWeakPtr(), std::move(request),
+                         BinaryUploadService::Result::FILE_TOO_LARGE));
+    } else {
+      UploadPageForDeepScanning(std::move(request));
+    }
   }
 }
 
@@ -1078,6 +1096,22 @@
   }
 }
 
+void ContentAnalysisDelegate::FinishLargeDataRequestEarly(
+    std::unique_ptr<safe_browsing::BinaryUploadService::Request> request,
+    safe_browsing::BinaryUploadService::Result result) {
+  // We add the request here in case we never actually uploaded anything, so
+  // it wasn't added in OnGetRequestData
+  safe_browsing::WebUIInfoSingleton::GetInstance()->AddToDeepScanRequests(
+      request->per_profile_request(), /*access_token*/ "", /*upload_info*/
+      "Skipped - Large data blocked", request->content_analysis_request());
+  safe_browsing::WebUIInfoSingleton::GetInstance()->AddToDeepScanResponses(
+      /*token=*/"", safe_browsing::BinaryUploadService::ResultToString(result),
+      enterprise_connectors::ContentAnalysisResponse());
+
+  request->FinishRequest(result,
+                         enterprise_connectors::ContentAnalysisResponse());
+}
+
 std::string ContentAnalysisDelegate::GetContentTransferMethod() const {
   switch (data_.reason) {
     case enterprise_connectors::ContentAnalysisRequest::UNKNOWN:
diff --git a/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.h b/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.h
index c14f29c3..0bd5b17 100644
--- a/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.h
+++ b/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.h
@@ -343,6 +343,9 @@
   // LCAC cannot establish connection with local client.
   bool ShouldFailOpenWithoutLocalClient(bool should_allow_by_default);
 
+  // Helper function to decide if the page request should be terminated early.
+  bool ShouldNotUploadLargePage(size_t page_size);
+
   // Prepares an upload request for the text in `data_`. If `data_.text` is
   // empty, this method does nothing.
   // TODO(crbug.com/40839522): Move to TextRequestHandler.
@@ -406,6 +409,10 @@
   // for the requests of this ContentAnalysisDelegate instance.
   void AckAllRequests();
 
+  void FinishLargeDataRequestEarly(
+      std::unique_ptr<safe_browsing::BinaryUploadService::Request> request,
+      safe_browsing::BinaryUploadService::Result result);
+
   // Returns the BinaryUploadService used to upload content for deep scanning.
   // Virtual to override in tests.
   virtual safe_browsing::BinaryUploadService* GetBinaryUploadService();
diff --git a/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate_browsertest.cc b/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate_browsertest.cc
index 23a2e1a..b684b36b0 100644
--- a/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate_browsertest.cc
+++ b/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate_browsertest.cc
@@ -1170,7 +1170,9 @@
   // When the resumable protocol is in use and the `blocked_password_protected`
   // setting is off, the final verdict is determined by the server, not by the
   // policy value. So this specific scenario only applies to multi-part upload.
-  if (is_resumable() && setting_param() == false) {
+  //
+  // TODO(b/341264970): Add test support when setting_param is on.
+  if (is_resumable() && !setting_param()) {
     return;
   }
 
@@ -1271,7 +1273,9 @@
   // When the resumable protocol is in use and the `blocked_large_files` setting
   // is off, the final verdict is determined by the server, not by the policy
   // value. So this specific testcase only applies to multi-part upload.
-  if (is_resumable() && setting_param() == false) {
+  //
+  // TODO(b/341264970): Add test support when setting_param is on.
+  if (is_resumable() && !setting_param()) {
     return;
   }
 
@@ -1371,6 +1375,15 @@
 
 IN_PROC_BROWSER_TEST_P(ContentAnalysisDelegateBlockingSettingBrowserTest,
                        BlockLargePages) {
+  // When the resumable protocol is in use and the `blocked_large_files` setting
+  // is off, the final verdict is determined by the server, not by the policy
+  // value. So this specific testcase only applies to multi-part upload.
+  //
+  // TODO(b/341264970): Add test support when setting_param is on.
+  if (is_resumable() && !setting_param()) {
+    return;
+  }
+
   base::ScopedAllowBlockingForTesting allow_blocking;
 
   // Set up delegate and upload service.
@@ -1409,6 +1422,30 @@
   ASSERT_TRUE(ContentAnalysisDelegate::IsEnabled(browser()->profile(),
                                                  GURL(kTestUrl), &data, PRINT));
 
+  // The page should be reported as unscanned.
+  test::EventReportValidator validator(client());
+  validator.ExpectUnscannedFileEvent(
+      /*url*/ "about:blank",
+      /*tab_url*/ "about:blank",
+      /*source*/ "",
+      /*destination*/ "",
+      /*filename*/ "about:blank",
+      // python3 -c "print('a' * (51 * 1024 * 1024), end='')" |\
+      // sha256sum |  tr '[:lower:]' '[:upper:]'
+      /*sha*/ "",
+      /*trigger*/ SafeBrowsingPrivateEventRouter::kTriggerPagePrint,
+      /*reason*/ "FILE_TOO_LARGE",
+      /*mimetypes*/ DocMimeTypes(),
+      /*size*/ std::nullopt,
+      /*result*/
+      expected_result() ? safe_browsing::EventResultToString(
+                              safe_browsing::EventResult::ALLOWED)
+                        : safe_browsing::EventResultToString(
+                              safe_browsing::EventResult::BLOCKED),
+      /*username*/ kUserName,
+      /*profile_identifier*/ GetProfileIdentifier(),
+      /*content_transfer_method*/ std::nullopt);
+
   bool called = false;
   base::RunLoop run_loop;
   SetQuitClosure(run_loop.QuitClosure());
@@ -1427,12 +1464,17 @@
           }),
       safe_browsing::DeepScanAccessPoint::PRINT);
 
-  FakeBinaryUploadServiceStorage()->ReturnAuthorizedResponse();
+  // If the block setting is on, the large page content won't be sent for deep
+  // scanning, so no authorization is needed.
+  if (!setting_param()) {
+    FakeBinaryUploadServiceStorage()->ReturnAuthorizedResponse();
+  }
 
   run_loop.Run();
   EXPECT_TRUE(called);
 
-  // Ensure the ContentAnalysisDelegate is destroyed before the end of the test.
+  // Ensure the ContentAnalysisDelegate is destroyed before the end of the
+  // test.
   content_analysis_run_loop.Run();
 }
 
diff --git a/chrome/browser/enterprise/connectors/test/deep_scanning_test_utils.cc b/chrome/browser/enterprise/connectors/test/deep_scanning_test_utils.cc
index 387f77a5..d05d7fd 100644
--- a/chrome/browser/enterprise/connectors/test/deep_scanning_test_utils.cc
+++ b/chrome/browser/enterprise/connectors/test/deep_scanning_test_utils.cc
@@ -55,7 +55,7 @@
     const std::string& expected_trigger,
     const std::string& expected_reason,
     const std::set<std::string>* expected_mimetypes,
-    int64_t expected_content_size,
+    std::optional<int64_t> expected_content_size,
     const std::string& expected_result,
     const std::string& expected_profile_username,
     const std::string& expected_profile_identifier,
diff --git a/chrome/browser/enterprise/connectors/test/deep_scanning_test_utils.h b/chrome/browser/enterprise/connectors/test/deep_scanning_test_utils.h
index 777da4c8..31f1f57 100644
--- a/chrome/browser/enterprise/connectors/test/deep_scanning_test_utils.h
+++ b/chrome/browser/enterprise/connectors/test/deep_scanning_test_utils.h
@@ -145,7 +145,7 @@
       const std::string& expected_trigger,
       const std::string& expected_reason,
       const std::set<std::string>* expected_mimetypes,
-      int64_t expected_content_size,
+      std::optional<int64_t> expected_content_size,
       const std::string& expected_result,
       const std::string& expected_profile_username,
       const std::string& expected_profile_identifier,
diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUILD.gn
index 5a4e58d3..1153d97 100644
--- a/chrome/browser/extensions/BUILD.gn
+++ b/chrome/browser/extensions/BUILD.gn
@@ -1244,6 +1244,7 @@
       "//chromeos/ash/components/proximity_auth",
       "//chromeos/ash/components/settings",
       "//chromeos/ash/components/system",
+      "//chromeos/ash/components/tether:tether",
       "//chromeos/ash/components/tpm",
       "//chromeos/ash/services/assistant/public/cpp",
       "//chromeos/ash/services/chromebox_for_meetings/public/cpp",
diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chrome/browser/extensions/api/settings_private/prefs_util.cc
index 6063502..a81aa61f 100644
--- a/chrome/browser/extensions/api/settings_private/prefs_util.cc
+++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc
@@ -87,6 +87,7 @@
 #include "chrome/browser/extensions/api/settings_private/chromeos_resolve_time_zone_by_geolocation_on_off.h"
 #include "chromeos/ash/components/settings/cros_settings.h"
 #include "chromeos/ash/components/settings/cros_settings_names.h"
+#include "chromeos/ash/components/tether/pref_names.h"
 #include "chromeos/ash/services/assistant/public/cpp/assistant_prefs.h"
 #include "chromeos/components/quick_answers/public/cpp/quick_answers_prefs.h"
 #include "components/account_manager_core/pref_names.h"
@@ -447,6 +448,10 @@
       settings_api::PrefType::kString;
   (*s_allowlist)[::prefs::kNearbySharingDataUsageName] =
       settings_api::PrefType::kNumber;
+
+  // Instant Hotspot
+  (*s_allowlist)[::ash::tether::prefs::kNotificationsEnabled] =
+      settings_api::PrefType::kBoolean;
 #endif
 
   // Search page.
diff --git a/chrome/browser/extensions/installed_loader.cc b/chrome/browser/extensions/installed_loader.cc
index 709b0b0..ea3f6c6 100644
--- a/chrome/browser/extensions/installed_loader.cc
+++ b/chrome/browser/extensions/installed_loader.cc
@@ -564,7 +564,7 @@
         // status.
         if (dev_mode_enabled) {
           base::UmaHistogramEnumeration(
-              "Extensions.NonWebstoreLocationWithDeveloperModeOn.Enabled",
+              "Extensions.NonWebstoreLocationWithDeveloperModeOn.Enabled2",
               location);
         } else {
           base::UmaHistogramEnumeration(
@@ -910,7 +910,7 @@
         !disabled_extension->from_webstore()) {
       if (dev_mode_enabled) {
         base::UmaHistogramEnumeration(
-            "Extensions.NonWebstoreLocationWithDeveloperModeOn.Disabled",
+            "Extensions.NonWebstoreLocationWithDeveloperModeOn.Disabled2",
             location);
       } else {
         base::UmaHistogramEnumeration(
diff --git a/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/feed/sections/SectionHeaderViewTest.java b/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/feed/sections/SectionHeaderViewTest.java
index f1e4a89..fd9f06dc 100644
--- a/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/feed/sections/SectionHeaderViewTest.java
+++ b/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/feed/sections/SectionHeaderViewTest.java
@@ -31,7 +31,6 @@
 import org.chromium.base.test.BaseRobolectricTestRunner;
 import org.chromium.base.test.util.Features;
 import org.chromium.base.test.util.Features.DisableFeatures;
-import org.chromium.base.test.util.Features.EnableFeatures;
 import org.chromium.base.test.util.JniMocker;
 import org.chromium.chrome.browser.feature_engagement.TrackerFactory;
 import org.chromium.chrome.browser.feed.componentinterfaces.SurfaceCoordinator.StreamTabId;
@@ -93,7 +92,6 @@
 
     @Test
     @SmallTest
-    @EnableFeatures({ChromeFeatureList.SURFACE_POLISH})
     public void mainContentTopMarginTest() {
         mSectionHeaderView.onFinishInflate();
 
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
index 1e18eee..01b3bd3 100644
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -3505,12 +3505,12 @@
   {
     "name": "enable-openxr-android",
     "owners": [ "alcooper@chromium.org", "bajones@chromium.org", "bialpio@chromium.org", "xr-dev@chromium.org" ],
-    "expiry_milestone": 127
+    "expiry_milestone": 140
   },
   {
     "name": "enable-openxr-extended",
     "owners": [ "alcooper@chromium.org", "bajones@chromium.org", "bialpio@chromium.org", "xr-dev@chromium.org" ],
-    "expiry_milestone": 127
+    "expiry_milestone": 140
   },
   {
     "name": "enable-palm-suppression",
@@ -3734,11 +3734,6 @@
     "expiry_milestone": 130
   },
   {
-    "name": "enable-secure-payment-confirmation-extensions",
-    "owners": [ "slobodan@chromium.org", "chrome-payments-team@google.com" ],
-    "expiry_milestone": 123
-  },
-  {
     "name": "enable-segmentation-platform-android-home-module-ranker",
     "owners": ["ritikagup@google.com",  "hanxi@chromium.org", "clank-start@chromium.org" ],
     "expiry_milestone": 140
diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/browser/metrics/chrome_metrics_service_client.cc
index cc1d2c83..980c35d 100644
--- a/chrome/browser/metrics/chrome_metrics_service_client.cc
+++ b/chrome/browser/metrics/chrome_metrics_service_client.cc
@@ -199,7 +199,7 @@
 #include "components/metrics/motherboard_metrics_provider.h"
 #endif
 
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
 #include "chrome/browser/metrics/chrome_metrics_service_crash_reporter.h"
 #endif
 
@@ -231,10 +231,10 @@
 // Needs to be kept in sync with the writer in
 // third_party/crashpad/crashpad/handler/handler_main.cc.
 const char kCrashpadHistogramAllocatorName[] = "CrashpadMetrics";
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
 base::LazyInstance<ChromeMetricsServiceCrashReporter>::Leaky g_crash_reporter =
     LAZY_INSTANCE_INITIALIZER;
-#endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID)
+#endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
 
 #if BUILDFLAG(IS_WIN)
 // Needs to be kept in sync with the writer in PlatformExperienceHelper.
@@ -612,12 +612,12 @@
 void ChromeMetricsServiceClient::OnEnvironmentUpdate(std::string* environment) {
   // TODO(https://bugs.chromium.org/p/crashpad/issues/detail?id=135): call this
   // on Mac when the Crashpad API supports it.
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
   // Register the environment with the crash reporter. Note that there is a
   // window from startup to this point during which crash reports will not have
   // an environment set.
   g_crash_reporter.Get().OnEnvironmentUpdate(*environment);
-#endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID)
+#endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
 }
 
 void ChromeMetricsServiceClient::MergeSubprocessHistograms() {
diff --git a/chrome/browser/metrics/structured/ash_event_storage.cc b/chrome/browser/metrics/structured/ash_event_storage.cc
index 5cafb674..31c14660 100644
--- a/chrome/browser/metrics/structured/ash_event_storage.cc
+++ b/chrome/browser/metrics/structured/ash_event_storage.cc
@@ -52,7 +52,7 @@
   if (IsPreUserStorageReadable()) {
     RepeatedPtrField<StructuredEventProto> events =
         std::move(*pre_user_events()->mutable_events());
-    pre_user_events_->QueueWrite();
+    pre_user_events_->Purge();
     return events;
   }
 
@@ -61,7 +61,7 @@
 
   RepeatedPtrField<StructuredEventProto> events =
       std::move(*user_events()->mutable_events());
-  user_events_->QueueWrite();
+  user_events_->Purge();
   return events;
 }
 
diff --git a/chrome/browser/new_tab_page/feature_promo_helper/new_tab_page_feature_promo_helper_unittest.cc b/chrome/browser/new_tab_page/feature_promo_helper/new_tab_page_feature_promo_helper_unittest.cc
index 27948cc..89b37fe 100644
--- a/chrome/browser/new_tab_page/feature_promo_helper/new_tab_page_feature_promo_helper_unittest.cc
+++ b/chrome/browser/new_tab_page/feature_promo_helper/new_tab_page_feature_promo_helper_unittest.cc
@@ -14,7 +14,6 @@
 #include "components/user_education/common/feature_promo_controller.h"
 #include "components/user_education/test/mock_feature_promo_controller.h"
 #include "testing/gmock/include/gmock/gmock.h"
-#include "ui/base/ui_base_features.h"
 
 class NewTabPageFeaturePromoHelperTest : public BrowserWithTestWindowTest {
  protected:
@@ -40,8 +39,7 @@
   void SetChromeRefresh2023() {
     iph_feature_list_.Reset();
     iph_feature_list_.InitAndEnableFeatures(
-        {feature_engagement::kIPHDesktopCustomizeChromeRefreshFeature,
-         features::kChromeRefresh2023});
+        {feature_engagement::kIPHDesktopCustomizeChromeRefreshFeature});
   }
 
   NewTabPageFeaturePromoHelper* helper() { return helper_.get(); }
diff --git a/chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.cc b/chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.cc
index 8766c37..7a72f7d0 100644
--- a/chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.cc
+++ b/chrome/browser/performance_manager/chrome_browser_main_extra_parts_performance_manager.cc
@@ -15,9 +15,7 @@
 #include "build/build_config.h"
 #include "build/chromeos_buildflags.h"
 #include "chrome/browser/browser_process.h"
-#include "chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h"
 #include "chrome/browser/performance_manager/decorators/helpers/page_live_state_decorator_helper.h"
-#include "chrome/browser/performance_manager/decorators/page_aggregator.h"
 #include "chrome/browser/performance_manager/metrics/memory_pressure_metrics.h"
 #include "chrome/browser/performance_manager/metrics/metrics_provider_desktop.h"
 #include "chrome/browser/performance_manager/metrics/page_resource_monitor.h"
@@ -28,9 +26,11 @@
 #include "chrome/browser/performance_manager/user_tuning/profile_discard_opt_out_list_helper.h"
 #include "chrome/browser/profiles/profile_manager.h"
 #include "chrome/browser/sessions/session_restore.h"
+#include "components/performance_manager/decorators/page_aggregator.h"
 #include "components/performance_manager/embedder/graph_features.h"
 #include "components/performance_manager/embedder/performance_manager_lifetime.h"
 #include "components/performance_manager/embedder/performance_manager_registry.h"
+#include "components/performance_manager/freezing/frozen_frame_aggregator.h"
 #include "components/performance_manager/graph/policies/bfcache_policy.h"
 #include "components/performance_manager/graph/policies/process_priority_policy.h"
 #include "components/performance_manager/performance_manager_feature_observer_client.h"
diff --git a/chrome/browser/performance_manager/policies/urgent_page_discarding_policy_unittest.cc b/chrome/browser/performance_manager/policies/urgent_page_discarding_policy_unittest.cc
index 88886d4..eb08de0 100644
--- a/chrome/browser/performance_manager/policies/urgent_page_discarding_policy_unittest.cc
+++ b/chrome/browser/performance_manager/policies/urgent_page_discarding_policy_unittest.cc
@@ -9,11 +9,11 @@
 #include "base/memory/memory_pressure_listener.h"
 #include "base/memory/raw_ptr.h"
 #include "base/time/time.h"
-#include "chrome/browser/performance_manager/decorators/page_aggregator.h"
 #include "chrome/browser/performance_manager/policies/page_discarding_helper.h"
 #include "chrome/browser/performance_manager/policies/policy_features.h"
 #include "chrome/browser/performance_manager/test_support/page_discarding_utils.h"
 #include "components/memory_pressure/fake_memory_pressure_monitor.h"
+#include "components/performance_manager/decorators/page_aggregator.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 namespace performance_manager {
diff --git a/chrome/browser/performance_manager/test_support/page_discarding_utils.cc b/chrome/browser/performance_manager/test_support/page_discarding_utils.cc
index 5f2ab58..272b215 100644
--- a/chrome/browser/performance_manager/test_support/page_discarding_utils.cc
+++ b/chrome/browser/performance_manager/test_support/page_discarding_utils.cc
@@ -5,8 +5,8 @@
 #include "chrome/browser/performance_manager/test_support/page_discarding_utils.h"
 
 #include "base/time/time.h"
-#include "chrome/browser/performance_manager/decorators/page_aggregator.h"
 #include "chrome/browser/performance_manager/policies/page_discarding_helper.h"
+#include "components/performance_manager/decorators/page_aggregator.h"
 #include "components/performance_manager/graph/frame_node_impl.h"
 #include "components/performance_manager/graph/graph_impl.h"
 #include "components/performance_manager/graph/page_node_impl.h"
diff --git a/chrome/browser/platform_util_mac.mm b/chrome/browser/platform_util_mac.mm
index bbc4e6b..89668e2 100644
--- a/chrome/browser/platform_util_mac.mm
+++ b/chrome/browser/platform_util_mac.mm
@@ -38,15 +38,16 @@
 
 void ShowItemInFolder(Profile* profile, const base::FilePath& full_path) {
   DCHECK([NSThread isMainThread]);
-  NSURL* url = base::apple::FilePathToNSURL(full_path);
 
   // The Finder creates a new window on each `full_path` reveal. Skip
   // revealing the path during testing to avoid an avalanche of new
   // Finder windows.
-  if (WorkspacePathRevealDisabledForTest()) {
+  if (WorkspacePathRevealDisabledForTest() ||
+      !internal::AreShellOperationsAllowed()) {
     return;
   }
 
+  NSURL* url = base::apple::FilePathToNSURL(full_path);
   [[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:@[ url ]];
 }
 
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
index 975d74c..69701f6 100644
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -2323,8 +2323,6 @@
 #if !BUILDFLAG(IS_ANDROID)
   registry->RegisterIntegerPref(prefs::kChromeDataRegionSetting, 0);
 #endif
-
-  registry->RegisterIntegerPref(prefs::kLensOverlayStartCount, 0);
 }
 
 void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
diff --git a/chrome/browser/profiles/profile_keyed_service_browsertest.cc b/chrome/browser/profiles/profile_keyed_service_browsertest.cc
index 7e56ce9..650ce85c 100644
--- a/chrome/browser/profiles/profile_keyed_service_browsertest.cc
+++ b/chrome/browser/profiles/profile_keyed_service_browsertest.cc
@@ -195,7 +195,6 @@
 #endif
           features::kPersistentOriginTrials,
           features::kSidePanelPinning,
-          features::kChromeRefresh2023,
 #if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
           omnibox::kOnDeviceTailModel,
           omnibox::kOnDeviceHeadProviderNonIncognito,
diff --git a/chrome/browser/resources/app_home/BUILD.gn b/chrome/browser/resources/app_home/BUILD.gn
index ad875877..e35bf57 100644
--- a/chrome/browser/resources/app_home/BUILD.gn
+++ b/chrome/browser/resources/app_home/BUILD.gn
@@ -4,8 +4,7 @@
 
 import("//ui/webui/resources/tools/build_webui.gni")
 
-assert(!is_android)
-assert(!is_chromeos)
+assert(is_win || is_mac || is_linux)
 
 build_webui("build") {
   grd_prefix = "app_home"
diff --git a/chrome/browser/resources/ash/settings/internet_page/internet_page.html b/chrome/browser/resources/ash/settings/internet_page/internet_page.html
index f7edf06..bd3c89a 100644
--- a/chrome/browser/resources/ash/settings/internet_page/internet_page.html
+++ b/chrome/browser/resources/ash/settings/internet_page/internet_page.html
@@ -181,6 +181,7 @@
         </div>
       </template>
       <settings-internet-subpage
+          prefs="{{prefs}}"
           default-network="[[defaultNetwork]]"
           device-state="[[getDeviceState_(subpageType_, deviceStates)]]"
           tether-device-state="[[getTetherDeviceState_(deviceStates)]]"
diff --git a/chrome/browser/resources/ash/settings/internet_page/internet_subpage.html b/chrome/browser/resources/ash/settings/internet_page/internet_subpage.html
index f143caaf..2cdfe58 100644
--- a/chrome/browser/resources/ash/settings/internet_page/internet_subpage.html
+++ b/chrome/browser/resources/ash/settings/internet_page/internet_subpage.html
@@ -12,6 +12,17 @@
     margin-top: calc(-1*var(--cr-section-vertical-margin));
   }
 
+  #instant-tether-notifications-toggle {
+    border-bottom: var(--cr-separator-line);
+    min-height: var(--cr-section-min-height);
+  }
+
+  #your-device-hotspots-header {
+    color: var(--cros-text-color-primary);
+    font: var(--cros-button-1-font);
+    margin-bottom: 5px;
+  }
+
   /* Set padding on children instead of the container itself to ensure that
       separator lines can fill the entire width of the page. */
   #networkListDiv > * {
@@ -116,6 +127,16 @@
   </cr-link-row>
 </template>
 
+
+<template is="dom-if" if="[[shouldShowTetherNotificationControl_(deviceState)]]">
+  <settings-toggle-button
+     id="instant-tether-notifications-toggle"
+     label="$i18n{internetTetherNotificationControlTitle}"
+     sub-label="$i18n{internetTetherNotificationControlDescription}"
+     pref="{{prefs.tether.notifications_enabled}}">
+  </settings-toggle-button>
+</template>
+
 <template is="dom-if" if="[[deviceIsEnabled_(deviceState)]]">
   <div id="networkListDiv" class="layout vertical flex">
     <!-- VPN only header for built-in VPNs. -->
@@ -139,6 +160,9 @@
     <!-- List of networks (empty if no networks exist). -->
     <template is="dom-if"
         if="[[shouldShowNetworkList_(networkStateList_, deviceState)]]">
+      <template is="dom-if" if="[[shouldShowTetherDeviceListHeader_(deviceState)]]">
+          <div id="your-device-hotspots-title">$i18n{internetYourDeviceHotspots}</div>
+      </template>
       <network-list id="networkList" show-buttons
           show-technology-badge="[[showTechnologyBadge_]]"
           networks="[[networkStateList_]]"
diff --git a/chrome/browser/resources/ash/settings/internet_page/internet_subpage.ts b/chrome/browser/resources/ash/settings/internet_page/internet_subpage.ts
index 272c3ab..90c4529 100644
--- a/chrome/browser/resources/ash/settings/internet_page/internet_subpage.ts
+++ b/chrome/browser/resources/ash/settings/internet_page/internet_subpage.ts
@@ -23,12 +23,14 @@
 import './cellular_networks_list.js';
 import './network_always_on_vpn.js';
 import './internet_subpage_menu.js';
+import '/shared/settings/prefs/prefs.js';
 
+import {PrefsMixin, PrefsMixinInterface} from '/shared/settings/prefs/prefs_mixin.js';
+import {I18nMixin, I18nMixinInterface} from 'chrome://resources/ash/common/cr_elements/i18n_mixin.js';
 import {CrPolicyNetworkBehaviorMojo, CrPolicyNetworkBehaviorMojoInterface} from 'chrome://resources/ash/common/network/cr_policy_network_behavior_mojo.js';
 import {MojoInterfaceProviderImpl} from 'chrome://resources/ash/common/network/mojo_interface_provider.js';
 import {NetworkListenerBehavior, NetworkListenerBehaviorInterface} from 'chrome://resources/ash/common/network/network_listener_behavior.js';
 import {OncMojo} from 'chrome://resources/ash/common/network/onc_mojo.js';
-import {I18nMixin, I18nMixinInterface} from 'chrome://resources/ash/common/cr_elements/i18n_mixin.js';
 import {assert, assertNotReached} from 'chrome://resources/js/assert.js';
 import {loadTimeData} from 'chrome://resources/js/load_time_data.js';
 import {AlwaysOnVpnMode, AlwaysOnVpnProperties, CrosNetworkConfigInterface, FilterType, GlobalPolicy, NO_LIMIT, VpnProvider, VpnType} from 'chrome://resources/mojo/chromeos/services/network_config/public/mojom/cros_network_config.mojom-webui.js';
@@ -50,9 +52,11 @@
           NetworkListenerBehavior,
           CrPolicyNetworkBehaviorMojo,
         ],
-        DeepLinkingMixin(RouteOriginMixin(I18nMixin(PolymerElement)))) as {
+        DeepLinkingMixin(
+            PrefsMixin(RouteOriginMixin(I18nMixin(PolymerElement))))) as {
       new (): PolymerElement & I18nMixinInterface & RouteOriginMixinInterface &
-          DeepLinkingMixinInterface & NetworkListenerBehaviorInterface &
+          PrefsMixinInterface & DeepLinkingMixinInterface &
+          NetworkListenerBehaviorInterface &
           CrPolicyNetworkBehaviorMojoInterface,
     };
 
@@ -968,6 +972,28 @@
   }
 
   /**
+   * Tells whether the Tether notification control should be displayed. It is
+   * displayed when instant-hotspot-rebrand is enabled and there are Tether
+   * networks.
+   */
+  private shouldShowTetherNotificationControl_(
+      deviceState: OncMojo.DeviceStateProperties|undefined): boolean {
+    return !!deviceState && deviceState.type === NetworkType.kTether &&
+        this.isInstantHotspotRebrandEnabled_;
+  }
+
+  /*
+   * Says whether header for the Tether network list should be displayed.
+   * Returns true if the rebrand is enabled and the device state is Tether
+   */
+  private shouldShowTetherDeviceListHeader_(deviceState:
+                                                OncMojo.DeviceStateProperties|
+                                            undefined): boolean {
+    return !!deviceState && deviceState.type === NetworkType.kTether &&
+        this.isInstantHotspotRebrandEnabled_;
+  }
+
+  /**
    * Generates the list of VPN services available for always-on. It keeps from
    * the network list only the supported technologies.
    */
diff --git a/chrome/browser/resources/chromeos/accessibility/accessibility_common/facegaze/facegaze.ts b/chrome/browser/resources/chromeos/accessibility/accessibility_common/facegaze/facegaze.ts
index c6e10fa..58bdff2 100644
--- a/chrome/browser/resources/chromeos/accessibility/accessibility_common/facegaze/facegaze.ts
+++ b/chrome/browser/resources/chromeos/accessibility/accessibility_common/facegaze/facegaze.ts
@@ -15,7 +15,10 @@
   private onInitCallbackForTest_: (() => void)|undefined;
   private initialized_ = false;
   declare private cameraStreamReadyPromise_: Promise<void>;
+  declare private cameraStreamClosedPromise_: Promise<void>;
   private cameraStreamReadyResolver_?: () => void;
+  private cameraStreamClosedResolver_?: () => void;
+  private cameraStreamWindowId_ = -1;
 
   constructor() {
     this.mouseController_ = new MouseController();
@@ -23,6 +26,9 @@
     this.cameraStreamReadyPromise_ = new Promise(resolve => {
       this.cameraStreamReadyResolver_ = resolve;
     });
+    this.cameraStreamClosedPromise_ = new Promise(resolve => {
+      this.cameraStreamClosedResolver_ = resolve;
+    });
     this.init_();
   }
 
@@ -51,7 +57,12 @@
           'accessibility_common/facegaze/camera_stream.html'),
       type: chrome.windows.CreateType.PANEL,
     };
-    chrome.windows.create(params, () => {
+    chrome.windows.create(params, (win) => {
+      if (!win || win.id === undefined) {
+        return;
+      }
+
+      this.cameraStreamWindowId_ = win.id;
       chrome.runtime.onMessage.addListener(message => {
         if (message.type === 'faceLandmarkerResult') {
           this.processFaceLandmarkerResult_(message.result);
@@ -97,6 +108,11 @@
   /** Destructor to remove any listeners. */
   onFaceGazeDisabled(): void {
     this.mouseController_.stopEventListeners();
+    if (this.cameraStreamWindowId_ !== -1) {
+      chrome.windows.remove(this.cameraStreamWindowId_, () => {
+        this.cameraStreamClosedResolver_!();
+      });
+    }
   }
 
   /** Allows tests to wait for FaceGaze to be fully initialized. */
diff --git a/chrome/browser/resources/chromeos/accessibility/accessibility_common/facegaze/facegaze_test.js b/chrome/browser/resources/chromeos/accessibility/accessibility_common/facegaze/facegaze_test.js
index 726f58b..cc23194 100644
--- a/chrome/browser/resources/chromeos/accessibility/accessibility_common/facegaze/facegaze_test.js
+++ b/chrome/browser/resources/chromeos/accessibility/accessibility_common/facegaze/facegaze_test.js
@@ -793,3 +793,15 @@
       keyEvents[9].type);
   assertEquals(KeyCode.LEFT, keyEvents[9].keyCode);
 });
+
+AX_TEST_F('FaceGazeTest', 'ClosesCameraStream', async function() {
+  await this.getFaceGaze().cameraStreamReadyPromise_;
+  let win = chrome.extension.getViews().find(
+      view => view.location.href.includes('camera_stream.html'));
+  assertTrue(!!win);
+  this.getFaceGaze().onFaceGazeDisabled();
+  await this.getFaceGaze().cameraStreamClosedPromise_;
+  win = chrome.extension.getViews().find(
+      view => view.location.href.includes('camera_stream.html'));
+  assertFalse(!!win);
+});
diff --git a/chrome/browser/resources/lens/overlay/BUILD.gn b/chrome/browser/resources/lens/overlay/BUILD.gn
index 0c5fd165..1ddde6a 100644
--- a/chrome/browser/resources/lens/overlay/BUILD.gn
+++ b/chrome/browser/resources/lens/overlay/BUILD.gn
@@ -38,7 +38,6 @@
   }
 
   web_component_files = [
-    "cursor_tooltip.ts",
     "initial_toast.ts",
     "lens_overlay_app.ts",
     "object_layer.ts",
diff --git a/chrome/browser/resources/lens/overlay/cursor_tooltip.html b/chrome/browser/resources/lens/overlay/cursor_tooltip.html
deleted file mode 100644
index ed112318..0000000
--- a/chrome/browser/resources/lens/overlay/cursor_tooltip.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<style>
-
-    #cursorTooltip {
-      background-color: #131D1ECC;
-      border-radius: 8px;
-      left: var(--offset-left);
-      padding: 6px 16px 6px 12px;
-      pointer-events: none;
-      position: absolute;
-      transform: translateX(-50%);
-      transition: opacity 200ms ease-out;
-      top: var(--offset-top);
-    }
-
-    #cursorTooltipContainer.hidden {
-      visibility: hidden;
-    }
-
-    .tooltip-text {
-      color: white;
-      font-size: 12px;
-      line-height: 20px;
-      vertical-align: middle;
-    }
-
-  </style>
-  <div id="cursorTooltipContainer"
-  class$="[[getHiddenCursorClass(isPointerInside, canShowTooltipFromPrefs)]]">
-    <div id="cursorTooltip">
-      <span class="tooltip-text">[[tooltipMessage]]</span>
-    </div>
-  </div>
\ No newline at end of file
diff --git a/chrome/browser/resources/lens/overlay/cursor_tooltip.ts b/chrome/browser/resources/lens/overlay/cursor_tooltip.ts
deleted file mode 100644
index d743f0c..0000000
--- a/chrome/browser/resources/lens/overlay/cursor_tooltip.ts
+++ /dev/null
@@ -1,153 +0,0 @@
-// Copyright 2024 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-import './strings.m.js';
-
-import {I18nMixin} from '//resources/cr_elements/i18n_mixin.js';
-import {loadTimeData} from '//resources/js/load_time_data.js';
-import {PolymerElement} from '//resources/polymer/v3_0/polymer/polymer_bundled.min.js';
-
-import {getTemplate} from './cursor_tooltip.html.js';
-import {toPixels} from './values_converter.js';
-
-export interface CursorTooltipData {
-  tooltipType: CursorTooltipType;
-}
-
-export enum CursorTooltipType {
-  REGION_SEARCH = 0,
-  TEXT_HIGHLIGHT = 1,
-  CLICK_SEARCH = 2,
-  LIVE_PAGE = 3,
-}
-
-export interface CursorTooltipElement {
-  $: {
-    cursorTooltip: HTMLElement,
-  };
-}
-
-const CursorTooltipElementBase = I18nMixin(PolymerElement);
-
-/*
- * Element responsible for showing the cursor tooltip.
- */
-export class CursorTooltipElement extends CursorTooltipElementBase {
-  static get is() {
-    return 'cursor-tooltip';
-  }
-
-  static get template() {
-    return getTemplate();
-  }
-
-  static get properties() {
-    return {
-      canShowTooltipFromPrefs: {
-        type: Boolean,
-        value: () => loadTimeData.getBoolean('canShowTooltipFromPrefs'),
-        reflectToAttribute: true,
-      },
-
-      tooltipMessage: {
-        type: String,
-        value: '',
-        reflectToAttribute: true,
-      },
-
-      isPointerInside: Boolean,
-    };
-  }
-
-  // The tooltip message string.
-  private tooltipMessage: string;
-
-  // The queued tooltip message string.
-  private queuedTooltipMessage: string;
-
-  // Whether or not the pointer is inside the web contents.
-  private isPointerInside: boolean;
-
-  // The queued tooltip offset pixels.
-  private queuedOffsetLeftPx = 0;
-
-  // The queued tooltip offset pixels.
-  private queuedOffsetTopPx = 0;
-
-  // Whether or not to pause tooltip changes. If true, the tooltip changes
-  // will be queued and applied when this becomes unset. This allows the
-  // tooltip to know what to display as soon as the pointer is released
-  // if the user is selecting something, without changing the tooltip
-  // during the selection.
-  private shouldPauseTooltipChanges = false;
-
-  markPointerEnteredContentArea() {
-    this.isPointerInside = true;
-  }
-
-  markPointerLeftContentArea() {
-    this.isPointerInside = false;
-  }
-
-  setPauseTooltipChanges(shouldPauseTooltipChanges: boolean) {
-    this.shouldPauseTooltipChanges = shouldPauseTooltipChanges;
-    if (!shouldPauseTooltipChanges) {
-      this.setTooltipFromQueued();
-    }
-  }
-
-  setTooltip(type: CursorTooltipType) {
-    let offsetLeftPx = 0;
-    let offsetTopPx = 0;
-    if (type === CursorTooltipType.LIVE_PAGE) {
-      offsetTopPx = 24;
-      this.queuedTooltipMessage = this.i18n('cursorTooltipLivePageMessage');
-    } else {
-      // Add half the width of the cursor tooltip icon.
-      offsetLeftPx += 16;
-      // Add the height of the cursor tooltip icon, plus 8px.
-      offsetTopPx += 40;
-      // LINT.IfChange(CursorOffsetValues)
-      if (type === CursorTooltipType.REGION_SEARCH) {
-        offsetTopPx += 6;
-        offsetLeftPx += 3;
-        this.queuedTooltipMessage = this.i18n('cursorTooltipDragMessage');
-      } else if (type === CursorTooltipType.TEXT_HIGHLIGHT) {
-        offsetTopPx += 8;
-        offsetLeftPx += 3;
-        this.queuedTooltipMessage =
-            this.i18n('cursorTooltipTextHighlightMessage');
-      } else if (type === CursorTooltipType.CLICK_SEARCH) {
-        offsetTopPx += 8;
-        offsetLeftPx += 4;
-        this.queuedTooltipMessage = this.i18n('cursorTooltipClickMessage');
-      }
-      // LINT.ThenChange(//chrome/browser/resources/lens/overlay/selection_overlay.ts:CursorOffsetValues)
-    }
-    this.queuedOffsetLeftPx = offsetLeftPx;
-    this.queuedOffsetTopPx = offsetTopPx;
-    if (!this.shouldPauseTooltipChanges) {
-      this.setTooltipFromQueued();
-    }
-  }
-
-  private setTooltipFromQueued() {
-    this.style.setProperty('--offset-top', toPixels(this.queuedOffsetTopPx));
-    this.style.setProperty('--offset-left', toPixels(this.queuedOffsetLeftPx));
-    this.tooltipMessage = this.queuedTooltipMessage;
-  }
-
-  private getHiddenCursorClass(
-      isPointerInside: boolean, canShowTooltipFromPrefs: boolean): string {
-    return (isPointerInside && canShowTooltipFromPrefs) ? '' : 'hidden';
-  }
-}
-
-declare global {
-  interface HTMLElementTagNameMap {
-    'cursor-tooltip': CursorTooltipElement;
-  }
-}
-
-customElements.define(CursorTooltipElement.is, CursorTooltipElement);
diff --git a/chrome/browser/resources/lens/overlay/lens_overlay_app.html b/chrome/browser/resources/lens/overlay/lens_overlay_app.html
index ec23026..c9e7091d 100644
--- a/chrome/browser/resources/lens/overlay/lens_overlay_app.html
+++ b/chrome/browser/resources/lens/overlay/lens_overlay_app.html
@@ -51,25 +51,14 @@
     opacity: 0;
   }
 
-  cursor-tooltip {
-    left: 0;
-    position: fixed;
-    top: 0;
-    /* Don't display the tooltip until the cursor location is determined. */
-    transform: scale(0);
-    width: 100%;
-  }
 
   initial-toast {
     pointer-events: none;
   }
 </style>
-<div class="app-container"
-    on-selection-overlay-clicked="handleSelectionOverlayClicked"
-    on-pointer-released="handlePointerReleased"
-    on-screenshot-rendered="onScreenshotRendered"
-    on-pointerenter="handlePointerEnter"
-    on-pointerleave="handlePointerLeave">
+<div class="app-container" on-selection-overlay-clicked="closeInitialToast"
+    on-pointer-released="hideInitialToastGradient"
+    on-screenshot-rendered="onScreenshotRendered">
   <div id="backgroundScrim" on-click="onBackgroundScrimClicked"
       hidden$="[[!isImageRendered]]"></div>
   <lens-selection-overlay screenshot-data-uri="[[screenshotDataUri]]"
@@ -84,5 +73,4 @@
         on-click="onCloseButtonClick" aria-label="$i18n{close}"
         title="$i18n{close}"></cr-icon-button>
   </div>
-  <cursor-tooltip id="cursorTooltip"></cursor-tooltip>
 </div>
\ No newline at end of file
diff --git a/chrome/browser/resources/lens/overlay/lens_overlay_app.ts b/chrome/browser/resources/lens/overlay/lens_overlay_app.ts
index dc09629..ff162f0 100644
--- a/chrome/browser/resources/lens/overlay/lens_overlay_app.ts
+++ b/chrome/browser/resources/lens/overlay/lens_overlay_app.ts
@@ -2,21 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-import './cursor_tooltip.js';
 import './initial_toast.js';
 import './selection_overlay.js';
 import '//resources/cr_elements/cr_icon_button/cr_icon_button.js';
 
 import type {CrIconButtonElement} from '//resources/cr_elements/cr_icon_button/cr_icon_button.js';
 import {assert} from '//resources/js/assert.js';
-import {EventTracker} from '//resources/js/event_tracker.js';
 import type {BigBuffer} from '//resources/mojo/mojo/public/mojom/base/big_buffer.mojom-webui.js';
 import type {BigString} from '//resources/mojo/mojo/public/mojom/base/big_string.mojom-webui.js';
 import {PolymerElement} from '//resources/polymer/v3_0/polymer/polymer_bundled.min.js';
 
 import {BrowserProxyImpl} from './browser_proxy.js';
 import type {BrowserProxy} from './browser_proxy.js';
-import type {CursorTooltipData, CursorTooltipElement} from './cursor_tooltip.js';
 import type {InitialToastElement} from './initial_toast.js';
 import {getTemplate} from './lens_overlay_app.html.js';
 
@@ -34,7 +31,6 @@
     closeButton: CrIconButtonElement,
     feedbackButton: CrIconButtonElement,
     initialToast: InitialToastElement,
-    cursorTooltip: CursorTooltipElement,
   };
 }
 
@@ -72,8 +68,6 @@
   private isClosing: boolean = false;
 
 
-  private eventTracker_: EventTracker = new EventTracker();
-
   private browserProxy: BrowserProxy = BrowserProxyImpl.getInstance();
   private listenerIds: number[];
 
@@ -91,10 +85,6 @@
       }),
     ];
     window.addEventListener('keyup', maybeCloseOverlay);
-    this.eventTracker_.add(
-        document, 'set-cursor-tooltip', (e: CustomEvent<CursorTooltipData>) => {
-          this.$.cursorTooltip.setTooltip(e.detail.tooltipType);
-        });
   }
 
   override disconnectedCallback() {
@@ -103,20 +93,6 @@
         id => assert(this.browserProxy.callbackRouter.removeListener(id)));
     this.listenerIds = [];
     window.removeEventListener('keyup', maybeCloseOverlay);
-    this.eventTracker_.removeAll();
-  }
-
-  override ready() {
-    super.ready();
-    this.addEventListener('pointermove', this.updateCursorPosition.bind(this));
-  }
-
-  private handlePointerEnter() {
-    this.$.cursorTooltip.markPointerEnteredContentArea();
-  }
-
-  private handlePointerLeave() {
-    this.$.cursorTooltip.markPointerLeftContentArea();
   }
 
   private onBackgroundScrimClicked() {
@@ -160,14 +136,12 @@
     this.screenshotDataUri = new TextDecoder().decode(buffer);
   }
 
-  private handleSelectionOverlayClicked() {
+  private closeInitialToast() {
     this.$.initialToast.triggerHideMessageAnimation();
-    this.$.cursorTooltip.setPauseTooltipChanges(true);
   }
 
-  private handlePointerReleased() {
+  private hideInitialToastGradient() {
     this.$.initialToast.triggerHideScrimAnimation();
-    this.$.cursorTooltip.setPauseTooltipChanges(false);
   }
 
   private onScreenshotRendered() {
@@ -180,11 +154,6 @@
       return '';
     }
   }
-
-  private updateCursorPosition(event: PointerEvent) {
-    this.$.cursorTooltip.style.transform =
-        `translate3d(${event.clientX}px, ${event.clientY}px, 0)`;
-  }
 }
 
 declare global {
diff --git a/chrome/browser/resources/lens/overlay/object_layer.ts b/chrome/browser/resources/lens/overlay/object_layer.ts
index bae1824a7..07ccc211 100644
--- a/chrome/browser/resources/lens/overlay/object_layer.ts
+++ b/chrome/browser/resources/lens/overlay/object_layer.ts
@@ -10,7 +10,6 @@
 import type {DomRepeat} from '//resources/polymer/v3_0/polymer/polymer_bundled.min.js';
 
 import {BrowserProxyImpl} from './browser_proxy.js';
-import {type CursorTooltipData, CursorTooltipType} from './cursor_tooltip.js';
 import {CenterRotatedBox_CoordinateType} from './geometry.mojom-webui.js';
 import type {CenterRotatedBox} from './geometry.mojom-webui.js';
 import type {LensPageCallbackRouter} from './lens.mojom-webui.js';
@@ -183,12 +182,6 @@
       composed: true,
       detail: {cursor: CursorType.POINTER},
     }));
-    this.dispatchEvent(
-        new CustomEvent<CursorTooltipData>('set-cursor-tooltip', {
-          bubbles: true,
-          composed: true,
-          detail: {tooltipType: CursorTooltipType.CLICK_SEARCH},
-        }));
   }
 
   private onSegmentationUnhovered() {
@@ -199,12 +192,6 @@
       composed: true,
       detail: {cursor: CursorType.DEFAULT},
     }));
-    this.dispatchEvent(
-        new CustomEvent<CursorTooltipData>('set-cursor-tooltip', {
-          bubbles: true,
-          composed: true,
-          detail: {tooltipType: CursorTooltipType.REGION_SEARCH},
-        }));
   }
 
   private handlePointerEnter(event: PointerEvent) {
diff --git a/chrome/browser/resources/lens/overlay/selection_overlay.html b/chrome/browser/resources/lens/overlay/selection_overlay.html
index f7b5688..8223553 100644
--- a/chrome/browser/resources/lens/overlay/selection_overlay.html
+++ b/chrome/browser/resources/lens/overlay/selection_overlay.html
@@ -82,8 +82,6 @@
     pointer-events: none;
     position: fixed;
     top: 0;
-    /* Prevents displaying the icon until the cursor location is determined. */
-    transform: scale(0);
     width: 32px;
     z-index: 2;
   }
diff --git a/chrome/browser/resources/lens/overlay/selection_overlay.ts b/chrome/browser/resources/lens/overlay/selection_overlay.ts
index c23d086..0906d9ab 100644
--- a/chrome/browser/resources/lens/overlay/selection_overlay.ts
+++ b/chrome/browser/resources/lens/overlay/selection_overlay.ts
@@ -19,7 +19,6 @@
 import {PolymerElement} from '//resources/polymer/v3_0/polymer/polymer_bundled.min.js';
 
 import {BrowserProxyImpl} from './browser_proxy.js';
-import {type CursorTooltipData, CursorTooltipType} from './cursor_tooltip.js';
 import type {ObjectLayerElement} from './object_layer.js';
 import {focusShimmerOnRegion, ShimmerControlRequester, unfocusShimmer} from './overlay_shimmer.js';
 import type {OverlayShimmerElement} from './overlay_shimmer.js';
@@ -276,7 +275,6 @@
     }
   }
 
-  // LINT.IfChange(CursorOffsetValues)
   // Called on text hover and drag.
   private setCursorToText() {
     // Set body cursor style to handle dragging.
@@ -309,26 +307,13 @@
     this.cursorOffsetX = 3;
     this.cursorOffsetY = 6;
   }
-  // LINT.ThenChange(//chrome/browser/resources/lens/overlay/cursor_tooltip.ts:CursorOffsetValues)
 
   private handlePointerEnter() {
     this.isPointerInside = true;
-    this.dispatchEvent(
-        new CustomEvent<CursorTooltipData>('set-cursor-tooltip', {
-          bubbles: true,
-          composed: true,
-          detail: {tooltipType: CursorTooltipType.REGION_SEARCH},
-        }));
   }
 
   private handlePointerLeave() {
     this.isPointerInside = false;
-    this.dispatchEvent(
-        new CustomEvent<CursorTooltipData>('set-cursor-tooltip', {
-          bubbles: true,
-          composed: true,
-          detail: {tooltipType: CursorTooltipType.LIVE_PAGE},
-        }));
 
     // Unfocus the shimmer from the cursor. If the cursor is dragging, force
     // shimmer to follow cursor.
diff --git a/chrome/browser/resources/lens/overlay/text_layer.ts b/chrome/browser/resources/lens/overlay/text_layer.ts
index f34b066..a197b09 100644
--- a/chrome/browser/resources/lens/overlay/text_layer.ts
+++ b/chrome/browser/resources/lens/overlay/text_layer.ts
@@ -11,7 +11,6 @@
 import type {DomRepeat} from '//resources/polymer/v3_0/polymer/polymer_bundled.min.js';
 
 import {BrowserProxyImpl} from './browser_proxy.js';
-import {type CursorTooltipData, CursorTooltipType} from './cursor_tooltip.js';
 import {CenterRotatedBox_CoordinateType} from './geometry.mojom-webui.js';
 import {bestHit} from './hit.js';
 import type {CursorData, TextContextMenuData} from './selection_overlay.js';
@@ -171,24 +170,12 @@
     this.dispatchEvent(new CustomEvent<CursorData>(
         'set-cursor',
         {bubbles: true, composed: true, detail: {cursor: CursorType.TEXT}}));
-    this.dispatchEvent(
-        new CustomEvent<CursorTooltipData>('set-cursor-tooltip', {
-          bubbles: true,
-          composed: true,
-          detail: {tooltipType: CursorTooltipType.TEXT_HIGHLIGHT},
-        }));
   }
 
   private handlePointerLeave() {
     this.dispatchEvent(new CustomEvent<CursorData>(
         'set-cursor',
         {bubbles: true, composed: true, detail: {cursor: CursorType.DEFAULT}}));
-    this.dispatchEvent(
-        new CustomEvent<CursorTooltipData>('set-cursor-tooltip', {
-          bubbles: true,
-          composed: true,
-          detail: {tooltipType: CursorTooltipType.REGION_SEARCH},
-        }));
   }
 
   handleDownGesture(event: GestureEvent): boolean {
diff --git a/chrome/browser/resources/lens/overlay/values_converter.ts b/chrome/browser/resources/lens/overlay/values_converter.ts
index 38f24716..1ca9826 100644
--- a/chrome/browser/resources/lens/overlay/values_converter.ts
+++ b/chrome/browser/resources/lens/overlay/values_converter.ts
@@ -9,8 +9,3 @@
 export function toPercent(value: number): string {
   return `${value * 100}%`;
 }
-
-// Takes the value and returns a string in the form '__px';
-export function toPixels(value: number): string {
-  return `${value}px`;
-}
diff --git a/chrome/browser/resources/password_manager/checkup_list_item.html b/chrome/browser/resources/password_manager/checkup_list_item.html
index 6c1ab26..0c8f185 100644
--- a/chrome/browser/resources/password_manager/checkup_list_item.html
+++ b/chrome/browser/resources/password_manager/checkup_list_item.html
@@ -67,12 +67,12 @@
 </style>
 <div id="separator" class="hr" hidden="[[first]]"></div>
 <div id="list-item" focus-row-container>
-  <site-favicon url="[[getGroupIcon_(group)]]" domain="[[getGroupName_(group)]]"
-      aria-hidden="true">
+  <site-favicon url="[[getGroupIcon_(group, item)]]" 
+      domain="[[getGroupName_(group, item)]]" aria-hidden="true">
   </site-favicon>
   <div id="credentialInfo">
     <div id="shownUrl" class="label text-elide">
-      [[getGroupName_(group)]]
+      [[getGroupName_(group, item)]]
     </div>
     <div id="usernameContainer" class="cr-secondary-text label">
       <span id="username" class="text-elide">[[item.username]]</span>
@@ -93,7 +93,7 @@
   <template is="dom-if" if="[[item.changePasswordUrl]]">
     <div class="button-container" id="changeButton">
       <cr-button id="changePasswordButton" on-click="onChangePasswordClick_"
-          aria-label$="[[getChangeButtonAriaLabel_(group)]]">
+          aria-label$="[[getChangeButtonAriaLabel_(group, item)]]">
         $i18n{changePassword}
         <iron-icon icon="cr:open-in-new" id="change-password-link-icon">
         </iron-icon>
@@ -108,7 +108,8 @@
     <span id="changePasswordInApp">$i18n{changePasswordInApp}</span>
   </template>
   <cr-icon-button class="icon-more-vert" id="more" title="$i18n{moreActions}"
-      on-click="onMoreClick_" aria-label$="[[getMoreButtonAriaLabel_(group)]]">
+      on-click="onMoreClick_" 
+      aria-label$="[[getMoreButtonAriaLabel_(group, item)]]">
   </cr-icon-button>
 </div>
 <template is="dom-if" if="[[showEditPasswordDisclaimer_]]" restamp>
diff --git a/chrome/browser/resources/settings/settings_menu/settings_menu.ts b/chrome/browser/resources/settings/settings_menu/settings_menu.ts
index f349e2a4..41cbdf0 100644
--- a/chrome/browser/resources/settings/settings_menu/settings_menu.ts
+++ b/chrome/browser/resources/settings/settings_menu/settings_menu.ts
@@ -128,9 +128,9 @@
   }
 
   private onSelectorActivate_(event: CustomEvent<{selected: string}>) {
-    this.setSelectedUrl_(event.detail.selected);
+    const path = event.detail.selected;
+    this.setSelectedUrl_(path);
 
-    const path = new URL(event.detail.selected).pathname;
     const route = Router.getInstance().getRouteForPath(path);
     assert(route, 'settings-menu has an entry with an invalid route.');
     Router.getInstance().navigateTo(
diff --git a/chrome/browser/resources/webui_gallery/BUILD.gn b/chrome/browser/resources/webui_gallery/BUILD.gn
index 18c39312..2f383a0 100644
--- a/chrome/browser/resources/webui_gallery/BUILD.gn
+++ b/chrome/browser/resources/webui_gallery/BUILD.gn
@@ -15,7 +15,11 @@
     "webui_gallery.html",
   ]
 
-  css_files = [ "demos/demo.css" ]
+  css_files = [
+    "demos/cr_action_menu/cr_action_menu_demo.css",
+    "demos/demo.css",
+    "demos/demo_lit.css",
+  ]
 
   # Files holding a Polymer or native custom element definition AND have an
   # equivalent .html template file.
@@ -52,6 +56,7 @@
 
   ts_deps = [
     "//chrome/browser/resources/side_panel/shared:build_ts",
+    "//third_party/lit/v3_0:build_ts",
     "//third_party/polymer/v3_0:library",
     "//ui/webui/resources/cr_components/color_change_listener:build_ts",
     "//ui/webui/resources/cr_elements:build_ts",
diff --git a/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.css b/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.css
new file mode 100644
index 0000000..18dd32f4
--- /dev/null
+++ b/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.css
@@ -0,0 +1,110 @@
+/* Copyright 2024 The Chromium Authors
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file. */
+
+/* #css_wrapper_metadata_start
+ * #type=style-lit
+ * #import=../demo_lit.css.js
+ * #import=//resources/cr_elements/cr_shared_vars.css.js
+ * #scheme=relative
+ * #include=demo-lit
+ * #css_wrapper_metadata_end */
+
+.demos {
+  align-items: center;
+  border: var(--cr-hairline);
+  display: flex;
+  height: 150px;
+  justify-content: center;
+  padding: 16px;
+  position: relative;
+}
+
+.min-max-anchor {
+  position: absolute;
+  margin: 0;
+}
+
+.min-max-anchor.top-left {
+  top: 16px;
+  left: 16px;
+}
+
+.min-max-anchor.top-right {
+  top: 16px;
+  right: 16px;
+}
+
+.min-max-anchor.bottom-left {
+  bottom: 16px;
+  left: 16px;
+}
+
+.min-max-anchor.bottom-right {
+  bottom: 16px;
+  right: 16px;
+}
+
+#anchorAlignmentDemoOptions {
+  align-items: flex-start;
+  display: flex;
+  flex-direction: column;
+  gap: 4px;
+  margin-block-end: 4px;
+}
+
+.anchor-alignment-option {
+  align-items: center;
+  display: flex;
+  gap: 4px;
+}
+
+#anchorAlignmentDemo {
+  width: 200px;
+  height: 100px;
+  display: flex;
+  position: relative;
+  border: dashed 1px var(--cr-primary-text-color);
+  white-space: nowrap;
+  padding: 16px;
+}
+
+.anchor-alignment-label {
+  position: absolute;
+  font-size: 11px;
+  text-align: center;
+  width: fit-content;
+  height: fit-content;
+  font-style: italic;
+  padding: 2px;
+}
+
+.anchor-alignment-label.center {
+  top: 50%;
+  left: 50%;
+  transform: translate(-50%, -50%);
+}
+
+.anchor-alignment-label.start-y {
+  bottom: 100%;
+  left: 50%;
+  transform: translateX(-50%);
+}
+
+.anchor-alignment-label.end-y {
+  top: 100%;
+  left: 50%;
+  transform: translateX(-50%);
+}
+
+.anchor-alignment-label.start-x {
+  top: 50%;
+  right: 100%;
+  transform: translateY(-50%);
+}
+
+.anchor-alignment-label.end-x {
+  top: 50%;
+  left: 100%;
+  transform: translateY(-50%);
+}
diff --git a/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.html b/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.html
index 883ed24..42c9627c 100644
--- a/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.html
+++ b/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.html
@@ -1,104 +1,3 @@
-<style include="demo">
-  .demos {
-    align-items: center;
-    border: var(--cr-hairline);
-    display: flex;
-    height: 150px;
-    justify-content: center;
-    padding: 16px;
-    position: relative;
-  }
-
-  .min-max-anchor {
-    position: absolute;
-    margin: 0;
-  }
-
-  .min-max-anchor.top-left {
-    top: 16px;
-    left: 16px;
-  }
-
-  .min-max-anchor.top-right {
-    top: 16px;
-    right: 16px;
-  }
-
-  .min-max-anchor.bottom-left {
-    bottom: 16px;
-    left: 16px;
-  }
-
-  .min-max-anchor.bottom-right {
-    bottom: 16px;
-    right: 16px;
-  }
-
-  #anchorAlignmentDemoOptions {
-    align-items: flex-start;
-    display: flex;
-    flex-direction: column;
-    gap: 4px;
-    margin-block-end: 4px;
-  }
-
-  .anchor-alignment-option {
-    align-items: center;
-    display: flex;
-    gap: 4px;
-  }
-
-  #anchorAlignmentDemo {
-    width: 200px;
-    height: 100px;
-    display: flex;
-    position: relative;
-    border: dashed 1px var(--cr-primary-text-color);
-    white-space: nowrap;
-    padding: 16px;
-  }
-
-  .anchor-alignment-label {
-    position: absolute;
-    font-size: 11px;
-    text-align: center;
-    width: fit-content;
-    height: fit-content;
-    font-style: italic;
-    padding: 2px;
-  }
-
-  .anchor-alignment-label.center {
-    top: 50%;
-    left: 50%;
-    transform: translate(-50%, -50%);
-  }
-
-  .anchor-alignment-label.start-y {
-    bottom: 100%;
-    left: 50%;
-    transform: translateX(-50%);
-  }
-
-  .anchor-alignment-label.end-y {
-    top: 100%;
-    left: 50%;
-    transform: translateX(-50%);
-  }
-
-  .anchor-alignment-label.start-x {
-    top: 50%;
-    right: 100%;
-    transform: translateY(-50%);
-  }
-
-  .anchor-alignment-label.end-x {
-    top: 50%;
-    left: 100%;
-    transform: translateY(-50%);
-  }
-</style>
-
 <h1>cr-action-menu</h1>
 
 <h2>Typical action menu</h2>
@@ -107,12 +6,12 @@
       title="Show menu"
       aria-haspopup="menu"
       iron-icon="cr:more-vert"
-      on-click="onShowAnchoredMenuClick_">
+      @click="${this.onShowAnchoredMenuClick_}">
   </cr-icon-button>
 </div>
 
 <h2>As context menu</h2>
-<div class="demos" on-contextmenu="onContextMenu_">
+<div class="demos" @contextmenu="${this.onContextMenu_}">
   Right-click anywhere in this area.
 </div>
 
@@ -122,18 +21,18 @@
 
   <cr-icon-button class="min-max-anchor top-left"
       iron-icon="cr:add"
-      on-click="onShowMinMaxMenu_">
+      @click="${this.onShowMinMaxMenu_}">
   </cr-icon-button>
-  <button class="min-max-anchor top-right"
-      on-click="onShowMinMaxMenu_">
+  <cr-button class="min-max-anchor top-right"
+      @click="${this.onShowMinMaxMenu_}">
     Open menu
-  </button>
+  </cr-button>
   <cr-icon-button class="min-max-anchor bottom-left"
       iron-icon="cr20:menu"
-      on-click="onShowMinMaxMenu_">
+      @click="${this.onShowMinMaxMenu_}">
   </cr-icon-button>
   <cr-button class="min-max-anchor bottom-right"
-      on-click="onShowMinMaxMenu_">
+      @click="${this.onShowMinMaxMenu_}">
     Open menu
   </cr-icon-button>
 </div>
@@ -142,33 +41,37 @@
 <div id="anchorAlignmentDemoOptions">
   <div class="anchor-alignment-option">
     <label id="alignmentXLabel">x alignment</label>
-    <select
-        aria-labelledby="alignmentXLabel"
-        value="{{customAlignmentX_::input}}">
-      <template is="dom-repeat" items="[[alignmentOptions_]]">
-        <option value="[[item]]"
-            selected$="[[isSelectedAlignment_(customAlignmentX_, item)]]">
-          [[item]]
+    <select aria-labelledby="alignmentXLabel"
+        .value="${this.customAlignmentX_}"
+        @change="${this.onCustomAlignmentXChanged_}">
+      ${this.alignmentOptions_.map(item => html`
+        <option .value="${item}"
+            ?selected="${this.isSelectedAlignment_(
+                this.customAlignmentX_, item)}">
+          ${item}
         </option>
-      </template>
+      `)}
     </select>
   </div>
 
   <div class="anchor-alignment-option">
     <label id="alignmentYLabel">y alignment</label>
-    <select
-        aria-labelledby="alignmentYLabel"
-        value="{{customAlignmentY_::input}}">
-      <template is="dom-repeat" items="[[alignmentOptions_]]">
-        <option value="[[item]]"
-            selected$="[[isSelectedAlignment_(customAlignmentY_, item)]]">
-          [[item]]
+    <select aria-labelledby="alignmentYLabel"
+        .value="${this.customAlignmentY_}"
+        @change="${this.onCustomAlignmentYChanged_}">
+      ${this.alignmentOptions_.map(item => html`
+        <option .value="${item}"
+            ?selected="${this.isSelectedAlignment_(
+                this.customAlignmentY_, item)}">
+          ${item}
         </option>
-      </template>
+      `)}
     </select>
   </div>
 
-  <cr-button on-click="onAnchorAlignmentDemoClick_">Show at anchor</cr-button>
+  <cr-button @click="${this.onAnchorAlignmentDemoClick_}">
+    Show at anchor
+  </cr-button>
 </div>
 
 <div class="demos">
@@ -184,12 +87,8 @@
 </div>
 
 <cr-action-menu id="menu">
-  <button class="dropdown-item" on-click="onMenuItem1Click_">
-    Menu item 1
-  </button>
-  <button class="dropdown-item" on-click="onMenuItem2Click_">
-    Menu item 2
-  </button>
+  <button class="dropdown-item">Menu item 1</button>
+  <button class="dropdown-item">Menu item 2</button>
   <hr>
   <button class="dropdown-item" disabled>Menu item 3</button>
 </cr-action-menu>
diff --git a/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.ts b/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.ts
index 7006c96..7aa4be65 100644
--- a/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.ts
+++ b/chrome/browser/resources/webui_gallery/demos/cr_action_menu/cr_action_menu_demo.ts
@@ -6,16 +6,17 @@
 import '//resources/cr_elements/cr_button/cr_button.js';
 import '//resources/cr_elements/cr_icon_button/cr_icon_button.js';
 import '//resources/cr_elements/icons_lit.html.js';
-import '//resources/cr_elements/cr_shared_vars.css.js';
-import '../demo.css.js';
 
 import type {CrActionMenuElement} from '//resources/cr_elements/cr_action_menu/cr_action_menu.js';
 import {AnchorAlignment} from '//resources/cr_elements/cr_action_menu/cr_action_menu.js';
-import {PolymerElement} from '//resources/polymer/v3_0/polymer/polymer_bundled.min.js';
+import {CrLitElement} from '//resources/lit/v3_0/lit.rollup.js';
 
-import {getTemplate} from './cr_action_menu_demo.html.js';
+import {getCss} from './cr_action_menu_demo.css.js';
+import {getHtml} from './cr_action_menu_demo.html.js';
 
-interface CrActionMenuDemoElement {
+type AnchorAlignmentKey = keyof typeof AnchorAlignment;
+
+export interface CrActionMenuDemoElement {
   $: {
     menu: CrActionMenuElement,
     minMaxContainer: HTMLDivElement,
@@ -23,51 +24,49 @@
   };
 }
 
-class CrActionMenuDemoElement extends PolymerElement {
+export class CrActionMenuDemoElement extends CrLitElement {
   static get is() {
     return 'cr-action-menu-demo';
   }
 
-  static get template() {
-    return getTemplate();
+  static override get styles() {
+    return getCss();
   }
 
-  static get properties() {
+  override render() {
+    return getHtml.bind(this)();
+  }
+
+  static override get properties() {
     return {
-      alignmentOptions_: Array,
-      customAlignmentX_: {
-        type: String,
-        value: 'CENTER',
-      },
-      customAlignmentY_: {
-        type: String,
-        value: 'CENTER',
-      },
-      statusText_: String,
+      alignmentOptions_: {type: Array},
+      customAlignmentX_: {type: String},
+      customAlignmentY_: {type: String},
+      statusText_: {type: String},
     };
   }
 
-  private alignmentOptions_: Array<keyof typeof AnchorAlignment> = [
+  protected alignmentOptions_: AnchorAlignmentKey[] = [
     'BEFORE_START',
     'AFTER_START',
     'CENTER',
     'BEFORE_END',
     'AFTER_END',
   ];
-  private customAlignmentX_: keyof typeof AnchorAlignment;
-  private customAlignmentY_: keyof typeof AnchorAlignment;
+  protected customAlignmentX_: AnchorAlignmentKey = 'CENTER';
+  protected customAlignmentY_: AnchorAlignmentKey = 'CENTER';
 
-  private onShowAnchoredMenuClick_(event: MouseEvent) {
+  protected onShowAnchoredMenuClick_(event: MouseEvent) {
     this.$.menu.showAt(event.target as HTMLElement);
   }
 
-  private onContextMenu_(event: MouseEvent) {
+  protected onContextMenu_(event: MouseEvent) {
     event.preventDefault();
     this.$.menu.close();
     this.$.menu.showAtPosition({top: event.clientY, left: event.clientX});
   }
 
-  private onShowMinMaxMenu_(event: MouseEvent) {
+  protected onShowMinMaxMenu_(event: MouseEvent) {
     const minMaxContainerRect = this.$.minMaxContainer.getBoundingClientRect();
     const config = {
       minX: minMaxContainerRect.left,
@@ -78,17 +77,27 @@
     this.$.menu.showAt(event.target as HTMLElement, config);
   }
 
-  private onAnchorAlignmentDemoClick_() {
+  protected onAnchorAlignmentDemoClick_() {
     this.$.menu.showAt(this.$.anchorAlignmentDemo, {
       anchorAlignmentX: AnchorAlignment[this.customAlignmentX_],
       anchorAlignmentY: AnchorAlignment[this.customAlignmentY_],
     });
   }
 
-  private isSelectedAlignment_(
-      selectedAlignment: AnchorAlignment, option: AnchorAlignment) {
+  protected isSelectedAlignment_(
+      selectedAlignment: AnchorAlignmentKey, option: AnchorAlignmentKey) {
     return selectedAlignment === option;
   }
+
+  protected onCustomAlignmentXChanged_(e: Event) {
+    this.customAlignmentX_ =
+        (e.target as HTMLSelectElement).value as AnchorAlignmentKey;
+  }
+
+  protected onCustomAlignmentYChanged_(e: Event) {
+    this.customAlignmentY_ =
+        (e.target as HTMLSelectElement).value as AnchorAlignmentKey;
+  }
 }
 
 export const tagName = CrActionMenuDemoElement.is;
diff --git a/chrome/browser/resources/webui_gallery/demos/demo_lit.css b/chrome/browser/resources/webui_gallery/demos/demo_lit.css
new file mode 100644
index 0000000..eb431b9
--- /dev/null
+++ b/chrome/browser/resources/webui_gallery/demos/demo_lit.css
@@ -0,0 +1,10 @@
+/* Copyright 2024 The Chromium Authors
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file. */
+
+/* #css_wrapper_metadata_start
+ * #type=style-lit
+ * #css_wrapper_metadata_end */
+
+/* Purposefully empty since this style is generated at build time from the
+ * equivalent Polymer version. */
diff --git a/chrome/browser/safe_browsing/chrome_password_protection_service.cc b/chrome/browser/safe_browsing/chrome_password_protection_service.cc
index 5ca11a97..58062f0 100644
--- a/chrome/browser/safe_browsing/chrome_password_protection_service.cc
+++ b/chrome/browser/safe_browsing/chrome_password_protection_service.cc
@@ -1658,7 +1658,7 @@
   if (!variations_service)
     return false;
   return base::Contains(GetExcludedCountries(),
-                        variations_service->GetStoredPermanentCountry());
+                        variations_service->GetLatestCountry());
 }
 
 PasswordReuseEvent::SyncAccountType
diff --git a/chrome/browser/safe_browsing/chrome_password_protection_service_browsertest.cc b/chrome/browser/safe_browsing/chrome_password_protection_service_browsertest.cc
index 670f1a1..b85da7a 100644
--- a/chrome/browser/safe_browsing/chrome_password_protection_service_browsertest.cc
+++ b/chrome/browser/safe_browsing/chrome_password_protection_service_browsertest.cc
@@ -49,7 +49,7 @@
 #include "components/signin/public/identity_manager/account_info.h"
 #include "components/signin/public/identity_manager/identity_test_environment.h"
 #include "components/user_manager/user_names.h"
-#include "components/variations/service/variations_service.h"
+#include "components/variations/pref_names.h"
 #include "content/public/browser/browser_context.h"
 #include "content/public/browser/navigation_handle.h"
 #include "content/public/browser/web_contents.h"
@@ -221,17 +221,17 @@
 
 IN_PROC_BROWSER_TEST_F(ChromePasswordProtectionServiceBrowserTest,
                        VerifyIsInExcludedCountry) {
-  variations::VariationsService* variations_service =
-      g_browser_process->variations_service();
   const std::string non_excluded_countries[] = {"be", "br", "ca", "de", "es",
                                                 "fr", "ie", "in", "jp", "nl",
                                                 "ru", "se", "us"};
   ChromePasswordProtectionService* service = GetService(/*is_incognito=*/false);
   for (auto country : non_excluded_countries) {
-    variations_service->OverrideStoredPermanentCountry(country);
+    g_browser_process->local_state()->SetString(
+        variations::prefs::kVariationsCountry, country);
     EXPECT_FALSE(service->IsInExcludedCountry());
   }
-  variations_service->OverrideStoredPermanentCountry("cn");
+  g_browser_process->local_state()->SetString(
+      variations::prefs::kVariationsCountry, "cn");
   EXPECT_TRUE(service->IsInExcludedCountry());
 }
 
diff --git a/chrome/browser/safe_browsing/url_lookup_service_browsertest.cc b/chrome/browser/safe_browsing/url_lookup_service_browsertest.cc
new file mode 100644
index 0000000..d325b3f
--- /dev/null
+++ b/chrome/browser/safe_browsing/url_lookup_service_browsertest.cc
@@ -0,0 +1,50 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "components/safe_browsing/core/browser/realtime/url_lookup_service.h"
+
+#include "chrome/browser/browser_process.h"
+#include "chrome/browser/profiles/profile.h"
+#include "chrome/browser/safe_browsing/url_lookup_service_factory.h"
+#include "chrome/browser/ui/browser.h"
+#include "chrome/test/base/in_process_browser_test.h"
+#include "components/prefs/pref_service.h"
+#include "components/safe_browsing/core/common/safe_browsing_prefs.h"
+#include "components/variations/pref_names.h"
+#include "content/public/test/browser_test.h"
+
+namespace safe_browsing {
+
+class SafeBrowsingUrlLookupServiceTest : public InProcessBrowserTest {
+ public:
+  SafeBrowsingUrlLookupServiceTest() = default;
+  SafeBrowsingUrlLookupServiceTest(const SafeBrowsingUrlLookupServiceTest&) =
+      delete;
+  SafeBrowsingUrlLookupServiceTest& operator=(
+      const SafeBrowsingUrlLookupServiceTest&) = delete;
+};
+
+IN_PROC_BROWSER_TEST_F(SafeBrowsingUrlLookupServiceTest,
+                       ServiceRespectsLocationChanges) {
+  safe_browsing::SetSafeBrowsingState(
+      browser()->profile()->GetPrefs(),
+      safe_browsing::SafeBrowsingState::ENHANCED_PROTECTION);
+  auto* url_lookup_service =
+      RealTimeUrlLookupServiceFactory::GetForProfile(browser()->profile());
+
+  // By default for ESB, full URL lookups should be enabled.
+  EXPECT_TRUE(url_lookup_service->CanPerformFullURLLookup());
+
+  // Changing to CN should disable the lookups.
+  g_browser_process->local_state()->SetString(
+      variations::prefs::kVariationsCountry, "cn");
+  EXPECT_FALSE(url_lookup_service->CanPerformFullURLLookup());
+
+  // Changing to US should re-enable the lookups.
+  g_browser_process->local_state()->SetString(
+      variations::prefs::kVariationsCountry, "us");
+  EXPECT_TRUE(url_lookup_service->CanPerformFullURLLookup());
+}
+
+}  // namespace safe_browsing
diff --git a/chrome/browser/search/background/ntp_background_service_unittest.cc b/chrome/browser/search/background/ntp_background_service_unittest.cc
index 74e08da..d190d0b 100644
--- a/chrome/browser/search/background/ntp_background_service_unittest.cc
+++ b/chrome/browser/search/background/ntp_background_service_unittest.cc
@@ -147,9 +147,6 @@
 }
 
 TEST_P(NtpBackgroundServiceTest, CollectionRequestWithGM3Enabled) {
-  base::test::ScopedFeatureList scoped_feature_list;
-  scoped_feature_list.InitWithFeatures({features::kChromeRefresh2023}, {});
-
   g_browser_process->SetApplicationLocale("foo");
   service()->FetchCollectionInfo();
   base::RunLoop().RunUntilIdle();
diff --git a/chrome/browser/search/background/ntp_custom_background_service_unittest.cc b/chrome/browser/search/background/ntp_custom_background_service_unittest.cc
index 5216fb4..73eaad6 100644
--- a/chrome/browser/search/background/ntp_custom_background_service_unittest.cc
+++ b/chrome/browser/search/background/ntp_custom_background_service_unittest.cc
@@ -805,9 +805,6 @@
 // SetUserColorAndBrowserColorVariant() instead of
 // BuildAutogeneratedThemeFromColor().
 TEST_F(NtpCustomBackgroundServiceTest, TestUpdateCustomBackgroundColorGM3) {
-  base::test::ScopedFeatureList scoped_feature_list;
-  scoped_feature_list.InitWithFeatures({features::kChromeRefresh2023}, {});
-
   // Create image that is one color so that we know what the extracted color
   // will be.
   SkBitmap bitmap;
diff --git a/chrome/browser/shortcuts/BUILD.gn b/chrome/browser/shortcuts/BUILD.gn
index 8212d92..b0a2a71 100644
--- a/chrome/browser/shortcuts/BUILD.gn
+++ b/chrome/browser/shortcuts/BUILD.gn
@@ -39,6 +39,7 @@
       "//chrome/app/theme:chrome_unscaled_resources_grit",
       "//chrome/browser/profiles:profile",
       "//chrome/common:channel_info",
+      "//chrome/common:chrome_features",
       "//components/webapps/common",
       "//components/webapps/common:mojo_bindings",
       "//content/public/browser",
@@ -172,6 +173,7 @@
     "//base/test:test_support",
     "//build:branding_buildflags",
     "//chrome/app/theme:chrome_unscaled_resources_grit",
+    "//chrome/common:chrome_features",
     "//testing/gtest",
     "//ui/base",
     "//ui/gfx:test_support",
diff --git a/chrome/browser/shortcuts/create_shortcut_for_current_web_contents_task.cc b/chrome/browser/shortcuts/create_shortcut_for_current_web_contents_task.cc
index 13d0209..f38e3ee 100644
--- a/chrome/browser/shortcuts/create_shortcut_for_current_web_contents_task.cc
+++ b/chrome/browser/shortcuts/create_shortcut_for_current_web_contents_task.cc
@@ -8,10 +8,12 @@
 #include "base/memory/weak_ptr.h"
 #include "base/metrics/histogram_functions.h"
 #include "base/task/bind_post_task.h"
+#include "chrome/browser/platform_util.h"  // nogncheck (crbug.com/335727004)
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/shortcuts/document_icon_fetcher.h"
 #include "chrome/browser/shortcuts/icon_badging.h"
 #include "chrome/browser/shortcuts/shortcut_creator.h"
+#include "chrome/common/chrome_features.h"
 #include "content/public/browser/render_frame_host.h"
 #include "content/public/browser/visibility.h"
 #include "content/public/browser/web_contents.h"
@@ -182,8 +184,17 @@
                                   /*task_result=*/fetch_result.error()));
   } else {
     auto result_callback =
-        base::BindOnce([](ShortcutCreatorResult result) {
+        base::BindOnce([](const base::FilePath& shortcut_path,
+                          ShortcutCreatorResult result) {
           base::UmaHistogramEnumeration("Shortcuts.Creation.Result", result);
+          if (result != ShortcutCreatorResult::kError &&
+              base::FeatureList::IsEnabled(
+                  features::kShortcutsNotAppsRevealDesktop)) {
+            CHECK(!shortcut_path.empty());
+            // Profile information is not needed to show the created shortcut in
+            // the path on Windows, Mac and Linux.
+            platform_util::ShowItemInFolder(/*profile=*/nullptr, shortcut_path);
+          }
           return (result == ShortcutCreatorResult::kError)
                      ? ShortcutCreationTaskResult::kShortcutCreationFailure
                      : ShortcutCreationTaskResult::kShortcutCreationSuccess;
diff --git a/chrome/browser/shortcuts/shortcut_creation_browsertest.cc b/chrome/browser/shortcuts/shortcut_creation_browsertest.cc
index 271590f..eb404b1 100644
--- a/chrome/browser/shortcuts/shortcut_creation_browsertest.cc
+++ b/chrome/browser/shortcuts/shortcut_creation_browsertest.cc
@@ -10,6 +10,7 @@
 #include "base/test/scoped_feature_list.h"
 #include "base/test/scoped_path_override.h"
 #include "base/test/test_future.h"
+#include "chrome/browser/platform_util_internal.h"  // nogncheck (crbug.com/335727004)
 #include "chrome/browser/shortcuts/create_shortcut_for_current_web_contents_task.h"
 #include "chrome/browser/shortcuts/shortcut_creator.h"
 #include "chrome/browser/ui/browser.h"
@@ -29,7 +30,7 @@
 class ShortcutCreationBrowserTest : public InProcessBrowserTest {
  public:
   ShortcutCreationBrowserTest() {
-    feature_list_.InitAndEnableFeature(features::kShortcutsNotApps);
+    platform_util::internal::DisableShellOperationsForTesting();
   }
 
   void SetUpOnMainThread() override {
@@ -41,7 +42,7 @@
   }
 
  private:
-  base::test::ScopedFeatureList feature_list_;
+  base::test::ScopedFeatureList feature_list_{features::kShortcutsNotApps};
   base::ScopedPathOverride desktop_{base::DIR_USER_DESKTOP};
 };
 
diff --git a/chrome/browser/shortcuts/shortcut_creator.h b/chrome/browser/shortcuts/shortcut_creator.h
index 17d86a2..a7dfb0b 100644
--- a/chrome/browser/shortcuts/shortcut_creator.h
+++ b/chrome/browser/shortcuts/shortcut_creator.h
@@ -24,7 +24,9 @@
   kMaxValue = kError
 };
 
-using ShortcutCreatorCallback = base::OnceCallback<void(ShortcutCreatorResult)>;
+using ShortcutCreatorCallback =
+    base::OnceCallback<void(const base::FilePath& created_shortcut_path,
+                            ShortcutCreatorResult shortcut_creation_result)>;
 
 // Requirements for ShortcutMetadata to be valid:
 // - The `shortcut_url` must be valid.
diff --git a/chrome/browser/shortcuts/shortcut_creator_linux.cc b/chrome/browser/shortcuts/shortcut_creator_linux.cc
index 84e8d41..7cf69bef 100644
--- a/chrome/browser/shortcuts/shortcut_creator_linux.cc
+++ b/chrome/browser/shortcuts/shortcut_creator_linux.cc
@@ -76,7 +76,7 @@
 
 }  // namespace
 
-ShortcutCreatorResult CreateShortcutOnLinuxDesktop(
+ShortcutCreatorOutput CreateShortcutOnLinuxDesktop(
     const std::string& shortcut_name,
     const GURL& shortcut_url,
     const gfx::Image& icon,
@@ -86,7 +86,7 @@
   // resolution before writing any data, removing some cleanup.
   base::FilePath icon_directory = profile_path.Append(kWebShortcutsIconDirName);
   if (!base::CreateDirectory(icon_directory)) {
-    return ShortcutCreatorResult::kError;
+    return {.result = ShortcutCreatorResult::kError};
   }
   EmitIconStorageCountMetric(icon_directory);
 
@@ -94,12 +94,12 @@
       shell_integration_linux::GetUniqueWebShortcutFilename(shortcut_name);
 
   if (!desktop_file_basename) {
-    return ShortcutCreatorResult::kError;
+    return {.result = ShortcutCreatorResult::kError};
   }
 
   base::FilePath desktop_path;
   if (!base::PathService::Get(base::DIR_USER_DESKTOP, &desktop_path)) {
-    return ShortcutCreatorResult::kError;
+    return {.result = ShortcutCreatorResult::kError};
   }
 
   base::FilePath shortcut_desktop_location =
@@ -119,13 +119,13 @@
   std::string desktop_file_contents =
       shell_integration_linux::GetDesktopFileContentsForUrlShortcut(
           shortcut_name, shortcut_url, icon_path, profile_path);
-  ShortcutCreatorResult file_creation_result =
+  ShortcutCreatorResult shortcut_file_creation_result =
       CreateExecutableFile(shortcut_desktop_location, desktop_file_contents);
-  switch (file_creation_result) {
+  switch (shortcut_file_creation_result) {
     case ShortcutCreatorResult::kError:
       // Attempt to clean up the icon.
       base::DeleteFile(icon_path);
-      return ShortcutCreatorResult::kError;
+      return {.result = ShortcutCreatorResult::kError};
     case ShortcutCreatorResult::kSuccessWithErrors:
       non_fatal_failure = true;
       break;
@@ -140,8 +140,11 @@
   if (error_code != EXIT_SUCCESS) {
     non_fatal_failure = true;
   }
-  return non_fatal_failure ? ShortcutCreatorResult::kSuccessWithErrors
-                           : ShortcutCreatorResult::kSuccess;
+
+  auto success_result = non_fatal_failure
+                            ? ShortcutCreatorResult::kSuccessWithErrors
+                            : ShortcutCreatorResult::kSuccess;
+  return {.shortcut_path = shortcut_desktop_location, .result = success_result};
 }
 
 namespace {
@@ -161,12 +164,13 @@
   CHECK(image);
   CHECK_EQ(image->Size().width(), 128);
   LinuxXdgWrapperImpl wrapper_impl;
-  ShortcutCreatorResult result = CreateShortcutOnLinuxDesktop(
+  ShortcutCreatorOutput result = CreateShortcutOnLinuxDesktop(
       base::UTF16ToUTF8(shortcut_metadata.shortcut_title),
       shortcut_metadata.shortcut_url, *image, shortcut_metadata.profile_path,
       g_xdg_wrapper_override ? *g_xdg_wrapper_override : wrapper_impl);
   base::SequencedTaskRunner::GetCurrentDefault()->PostTask(
-      FROM_HERE, base::BindOnce(std::move(complete), result));
+      FROM_HERE,
+      base::BindOnce(std::move(complete), result.shortcut_path, result.result));
 }
 
 scoped_refptr<base::SequencedTaskRunner> GetShortcutsTaskRunner() {
diff --git a/chrome/browser/shortcuts/shortcut_creator_linux.h b/chrome/browser/shortcuts/shortcut_creator_linux.h
index cbb0c01..5f214da 100644
--- a/chrome/browser/shortcuts/shortcut_creator_linux.h
+++ b/chrome/browser/shortcuts/shortcut_creator_linux.h
@@ -22,6 +22,13 @@
 namespace shortcuts {
 class LinuxXdgWrapper;
 
+// Output of the shortcut creation flow, consisting of the path where the
+// shortcut was created and the creation result.
+struct ShortcutCreatorOutput {
+  base::FilePath shortcut_path;
+  ShortcutCreatorResult result = ShortcutCreatorResult::kError;
+};
+
 // Creates a shortcut on the user's desktop and installs it into the system's
 // desktop menu. The icon is written into the user's profile directory. This
 // method makes blocking calls and must be called on an appropriate task runner.
@@ -36,7 +43,7 @@
 // - The base::DIR_USER_DESKTOP path service variable.
 // To test, use the ShortcutCreatorLinuxTestSupport to capture these
 // side-effects.
-ShortcutCreatorResult CreateShortcutOnLinuxDesktop(
+ShortcutCreatorOutput CreateShortcutOnLinuxDesktop(
     const std::string& shortcut_name,
     const GURL& shortcut_url,
     const gfx::Image& icon,
diff --git a/chrome/browser/shortcuts/shortcut_creator_linux_unittest.cc b/chrome/browser/shortcuts/shortcut_creator_linux_unittest.cc
index 4cd8a22..2207c4c 100644
--- a/chrome/browser/shortcuts/shortcut_creator_linux_unittest.cc
+++ b/chrome/browser/shortcuts/shortcut_creator_linux_unittest.cc
@@ -98,9 +98,10 @@
   EXPECT_FALSE(base::DirectoryExists(GetShortcutIconDir()));
 
   FakeLinuxXdgWrapper xdg_wrapper;
-  ShortcutCreatorResult result = CreateShortcutOnLinuxDesktop(
+  ShortcutCreatorOutput creation_metadata = CreateShortcutOnLinuxDesktop(
       "Test Name", kUrl, std::move(image), profile_path(), xdg_wrapper);
-  EXPECT_EQ(ShortcutCreatorResult::kSuccess, result);
+  EXPECT_EQ(ShortcutCreatorResult::kSuccess, creation_metadata.result);
+  EXPECT_TRUE(base::PathExists(creation_metadata.shortcut_path));
 
   EXPECT_TRUE(base::PathExists(shortcut_icon_path));
   EXPECT_THAT(LoadIcon(shortcut_icon_path),
@@ -113,14 +114,18 @@
       GetShortcutIconDir().Append(kShortcutBaseName);
 
   FakeLinuxXdgWrapper xdg_wrapper;
-  ShortcutCreatorResult result = CreateShortcutOnLinuxDesktop(
+  ShortcutCreatorOutput creation_metadata = CreateShortcutOnLinuxDesktop(
       "Test Name", kUrl, std::move(image), profile_path(), xdg_wrapper);
-  EXPECT_EQ(ShortcutCreatorResult::kSuccess, result);
+  EXPECT_EQ(ShortcutCreatorResult::kSuccess, creation_metadata.result);
+
+  const base::FilePath& shortcut_path = creation_metadata.shortcut_path;
+  EXPECT_TRUE(base::PathExists(shortcut_path));
 
   ASSERT_EQ(xdg_wrapper.GetInstalls().size(), 1u);
   base::FilePath desktop_file = xdg_wrapper.GetInstalls()[0];
   EXPECT_EQ(GetUserDesktopPath().AppendASCII("chrome-Test_Name.desktop"),
             desktop_file);
+  EXPECT_EQ(shortcut_path, desktop_file);
   std::string file;
   ASSERT_TRUE(base::ReadFileToString(desktop_file, &file));
 
diff --git a/chrome/browser/shortcuts/shortcut_creator_mac.mm b/chrome/browser/shortcuts/shortcut_creator_mac.mm
index 412f3c5..469b8ab 100644
--- a/chrome/browser/shortcuts/shortcut_creator_mac.mm
+++ b/chrome/browser/shortcuts/shortcut_creator_mac.mm
@@ -39,7 +39,8 @@
 
   base::FilePath desktop_path;
   if (!base::PathService::Get(base::DIR_USER_DESKTOP, &desktop_path)) {
-    std::move(complete).Run(Result::kError);
+    std::move(complete).Run(/*created_shortcut_path=*/base::FilePath(),
+                            Result::kError);
     return;
   }
 
@@ -54,7 +55,8 @@
       desktop_path.Append(*base_name)
           .AddExtensionASCII(ChromeWeblocFile::kFileExtension));
   if (target_path.empty()) {
-    std::move(complete).Run(Result::kError);
+    std::move(complete).Run(/*created_shortcut_path=*/base::FilePath(),
+                            Result::kError);
     return;
   }
 
@@ -63,7 +65,8 @@
   if (!profile_path_name.has_value() ||
       !ChromeWeblocFile(shortcut_url, *profile_path_name)
            .SaveToFile(target_path)) {
-    std::move(complete).Run(Result::kError);
+    std::move(complete).Run(/*created_shortcut_path=*/base::FilePath(),
+                            Result::kError);
     return;
   }
 
@@ -113,7 +116,7 @@
                            : Result::kSuccess;
               },
               target_path)
-              .Then(std::move(complete)));
+              .Then(base::BindOnce(std::move(complete), target_path)));
 }
 
 scoped_refptr<base::SequencedTaskRunner> GetShortcutsTaskRunner() {
diff --git a/chrome/browser/shortcuts/shortcut_creator_mac_unittest.mm b/chrome/browser/shortcuts/shortcut_creator_mac_unittest.mm
index c373a2a..5a8212de 100644
--- a/chrome/browser/shortcuts/shortcut_creator_mac_unittest.mm
+++ b/chrome/browser/shortcuts/shortcut_creator_mac_unittest.mm
@@ -100,17 +100,21 @@
   gfx::ImageFamily images =
       CreateImageFamily({{.size = 128, .color = SK_ColorMAGENTA}});
 
-  base::test::TestFuture<ShortcutCreatorResult> future;
+  base::test::TestFuture<const base::FilePath&, ShortcutCreatorResult> future;
 
   ShortcutMetadata metadata(profile_path(), GURL("https://example.com/test"),
                             u"Test Name", std::move(images));
 
   CreateShortcutOnUserDesktop(std::move(metadata), future.GetCallback());
   ASSERT_TRUE(future.Wait());
-  EXPECT_EQ(ShortcutCreatorResult::kSuccess, future.Get());
+  EXPECT_EQ(ShortcutCreatorResult::kSuccess,
+            future.Get<ShortcutCreatorResult>());
+
+  const base::FilePath& current_shortcut_path = future.Get<base::FilePath>();
 
   const base::FilePath expected_path =
       GetUserDesktopPath().AppendASCII("Test Name.crwebloc");
+  ASSERT_EQ(current_shortcut_path, expected_path);
   ASSERT_TRUE(base::PathExists(expected_path));
 
   std::optional<ChromeWeblocFile> file =
@@ -133,16 +137,19 @@
                                         {.size = 256, .color = SK_ColorGREEN}};
   gfx::ImageFamily images = CreateImageFamily(image_descs);
 
-  base::test::TestFuture<ShortcutCreatorResult> future;
+  base::test::TestFuture<const base::FilePath&, ShortcutCreatorResult> future;
   ShortcutMetadata metadata(profile_path(), GURL("https://example.com/test"),
                             u"Test Name", std::move(images));
 
   CreateShortcutOnUserDesktop(std::move(metadata), future.GetCallback());
   ASSERT_TRUE(future.Wait());
-  EXPECT_EQ(ShortcutCreatorResult::kSuccess, future.Get());
+  EXPECT_EQ(ShortcutCreatorResult::kSuccess,
+            future.Get<ShortcutCreatorResult>());
+  const base::FilePath& current_shortcut_path = future.Get<base::FilePath>();
 
   const base::FilePath expected_path =
       GetUserDesktopPath().AppendASCII("Test Name.crwebloc");
+  ASSERT_EQ(current_shortcut_path, expected_path);
   ASSERT_TRUE(base::PathExists(expected_path));
 
   NSImage* icon = [NSWorkspace.sharedWorkspace
diff --git a/chrome/browser/shortcuts/shortcut_creator_win.cc b/chrome/browser/shortcuts/shortcut_creator_win.cc
index f479fe9..77ce845c 100644
--- a/chrome/browser/shortcuts/shortcut_creator_win.cc
+++ b/chrome/browser/shortcuts/shortcut_creator_win.cc
@@ -69,7 +69,8 @@
   base::FilePath desktop;
   if (!base::PathService::Get(base::DIR_USER_DESKTOP, &desktop) ||
       desktop.empty()) {
-    std::move(complete).Run(ShortcutCreatorResult::kError);
+    std::move(complete).Run(/*created_shortcut_path=*/base::FilePath(),
+                            ShortcutCreatorResult::kError);
     return;
   }
   base::FilePath shortcut_path = desktop.Append(base::StrCat(
@@ -87,10 +88,15 @@
   bool res =
       CreateOrUpdateShortcutLink(shortcut_path, target_and_args_properties,
                                  base::win::ShortcutOperation::kCreateAlways);
+
+  auto final_result_callback =
+      res ? base::BindOnce(std::move(complete), shortcut_path,
+                           ShortcutCreatorResult::kSuccess)
+          : base::BindOnce(std::move(complete),
+                           /*created_shortcut_path=*/base::FilePath(),
+                           ShortcutCreatorResult::kError);
   base::SequencedTaskRunner::GetCurrentDefault()->PostTask(
-      FROM_HERE,
-      base::BindOnce(std::move(complete), res ? ShortcutCreatorResult::kSuccess
-                                              : ShortcutCreatorResult::kError));
+      FROM_HERE, std::move(final_result_callback));
 }
 
 scoped_refptr<base::SequencedTaskRunner> GetShortcutsTaskRunner() {
diff --git a/chrome/browser/shortcuts/shortcut_creator_win_unittest.cc b/chrome/browser/shortcuts/shortcut_creator_win_unittest.cc
index 589c1a0..36e21b3 100644
--- a/chrome/browser/shortcuts/shortcut_creator_win_unittest.cc
+++ b/chrome/browser/shortcuts/shortcut_creator_win_unittest.cc
@@ -8,6 +8,7 @@
 #include <functional>
 
 #include "base/base_paths.h"
+#include "base/files/file_path.h"
 #include "base/files/file_util.h"
 #include "base/files/scoped_temp_dir.h"
 #include "base/hash/hash.h"
@@ -23,6 +24,7 @@
 #include "chrome/browser/profiles/profile_shortcut_manager_win.h"
 #include "chrome/browser/shortcuts/platform_util_win.h"
 #include "chrome/browser/shortcuts/shortcut_creation_test_support.h"
+#include "chrome/common/chrome_features.h"
 #include "chrome/common/chrome_switches.h"
 #include "testing/gtest/include/gtest/gtest.h"
 #include "ui/gfx/image/image.h"
@@ -60,7 +62,7 @@
   void SetUp() override {
     ASSERT_TRUE(default_profile_path_.CreateUniqueTempDir());
   }
-  void VerifyShortcut() const;
+  void VerifyShortcut(const base::FilePath& current_shortcut_path) const;
   const base::FilePath& default_profile_path() const {
     return default_profile_path_.GetPath();
   }
@@ -72,7 +74,8 @@
   base::test::SingleThreadTaskEnvironment task_environment_;
 };
 
-void ShortcutCreatorWinTest::VerifyShortcut() const {
+void ShortcutCreatorWinTest::VerifyShortcut(
+    const base::FilePath& current_shortcut_path) const {
   base::win::ShortcutProperties properties;
   properties.set_target(GetChromeProxyPath());
   std::string url_hash =
@@ -87,16 +90,18 @@
                                                       /*incognito=*/false),
        L" --", base::ASCIIToWide(switches::kIgnoreProfileDirectoryIfNotExists),
        L" ", base::ASCIIToWide(kUrl.spec())}));
-  const base::FilePath shortcut_path =
+  const base::FilePath expected_shortcut_path =
       GetUserDesktopPath().AppendASCII(kShortcutFileName);
-  ASSERT_TRUE(base::PathExists(shortcut_path));
-  base::win::ValidateShortcut(shortcut_path, properties);
+  ASSERT_EQ(expected_shortcut_path, current_shortcut_path);
+  ASSERT_TRUE(base::PathExists(current_shortcut_path));
+  base::win::ValidateShortcut(current_shortcut_path, properties);
   // TODO(b/333024272): Verify images in .ico file are correct.
 
   // Verify that the shortcut matchers work correctly as well.
-  EXPECT_THAT(shortcut_path, IsShortcutForUrl(kUrl));
-  EXPECT_THAT(shortcut_path, IsShortcutForProfile(default_profile_path()));
-  EXPECT_THAT(shortcut_path, IsShortcutWithTitle(kShortcutName));
+  EXPECT_THAT(expected_shortcut_path, IsShortcutForUrl(kUrl));
+  EXPECT_THAT(expected_shortcut_path,
+              IsShortcutForProfile(default_profile_path()));
+  EXPECT_THAT(expected_shortcut_path, IsShortcutWithTitle(kShortcutName));
 }
 
 TEST_F(ShortcutCreatorWinTest, ShortcutCreated) {
@@ -107,13 +112,14 @@
 
   ShortcutMetadata metadata(default_profile_path(), kUrl, kShortcutName,
                             std::move(images));
-  base::test::TestFuture<ShortcutCreatorResult> future;
+  base::test::TestFuture<const base::FilePath&, ShortcutCreatorResult> future;
 
   CreateShortcutOnUserDesktop(std::move(metadata), future.GetCallback());
   ASSERT_TRUE(future.Wait());
-  EXPECT_EQ(ShortcutCreatorResult::kSuccess, future.Get());
+  EXPECT_EQ(ShortcutCreatorResult::kSuccess,
+            future.Get<ShortcutCreatorResult>());
 
-  VerifyShortcut();
+  VerifyShortcut(future.Get<base::FilePath>());
 }
 
 }  // namespace
diff --git a/chrome/browser/tab_contents/form_interaction_tab_helper_unittest.cc b/chrome/browser/tab_contents/form_interaction_tab_helper_unittest.cc
index 4f9d0b0..f19fcb1 100644
--- a/chrome/browser/tab_contents/form_interaction_tab_helper_unittest.cc
+++ b/chrome/browser/tab_contents/form_interaction_tab_helper_unittest.cc
@@ -11,13 +11,13 @@
 #include "base/run_loop.h"
 #include "base/task/task_traits.h"
 #include "base/test/bind.h"
-#include "chrome/browser/performance_manager/test_support/page_aggregator.h"
 #include "chrome/test/base/chrome_render_view_host_test_harness.h"
 #include "components/performance_manager/embedder/performance_manager_registry.h"
 #include "components/performance_manager/performance_manager_impl.h"
 #include "components/performance_manager/public/performance_manager.h"
 #include "components/performance_manager/test_support/graph_impl.h"
 #include "components/performance_manager/test_support/mock_graphs.h"
+#include "components/performance_manager/test_support/page_aggregator.h"
 #include "components/performance_manager/test_support/test_harness_helper.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
diff --git a/chrome/browser/tabpersistence/android/java/src/org/chromium/chrome/browser/tabpersistence/FlatBufferTabStateSerializer.java b/chrome/browser/tabpersistence/android/java/src/org/chromium/chrome/browser/tabpersistence/FlatBufferTabStateSerializer.java
index 12e775a8..275e35ac 100644
--- a/chrome/browser/tabpersistence/android/java/src/org/chromium/chrome/browser/tabpersistence/FlatBufferTabStateSerializer.java
+++ b/chrome/browser/tabpersistence/android/java/src/org/chromium/chrome/browser/tabpersistence/FlatBufferTabStateSerializer.java
@@ -97,7 +97,7 @@
                 || webContentsState.buffer().limit() == 0) {
             return new byte[] {};
         }
-        ByteBuffer buffer = webContentsState.buffer();
+        ByteBuffer buffer = webContentsState.buffer().asReadOnlyBuffer();
         byte[] contentsStateBytes = new byte[buffer.limit()];
         buffer.rewind();
         buffer.get(contentsStateBytes);
diff --git a/chrome/browser/tpcd/metadata/devtools_observer_browsertest.cc b/chrome/browser/tpcd/metadata/devtools_observer_browsertest.cc
index b95fbd5..fa3db2cf 100644
--- a/chrome/browser/tpcd/metadata/devtools_observer_browsertest.cc
+++ b/chrome/browser/tpcd/metadata/devtools_observer_browsertest.cc
@@ -194,15 +194,9 @@
   raw_ptr<TpcdMetadataDevtoolsObserver> devtools_observer_ = nullptr;
 };
 
-// TODO(https://crbug.com/341211478): Flaky on Linux ChromiumOS MSan Tests and
-// Windows
-#if defined(MEMORY_SANITIZER) || BUILDFLAG(IS_WIN)
-#define MAYBE_EmitsDevtoolsIssues DISABLED_EmitsDevtoolsIssues
-#else
-#define MAYBE_EmitsDevtoolsIssues EmitsDevtoolsIssues
-#endif
+// TODO(https://crbug.com/341211478): Flaky.
 IN_PROC_BROWSER_TEST_F(TpcdMetadataDevtoolsObserverBrowserTest,
-                       MAYBE_EmitsDevtoolsIssues) {
+                       DISABLED_EmitsDevtoolsIssues) {
   AddCookieAccess("a.test", "b.test", /*is_ad_tagged=*/false);
   WaitForIssueAndCheck({"b.test"}, 50u, true);
 
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java
index c6c7bf6..9416b23 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java
@@ -1149,8 +1149,6 @@
         // addresses cases where hardware keyboard is attached to a device, or where user explicitly
         // called the keyboard back after we hid it.
         if (mDelegate.isKeyboardActive()) {
-            mDropdownViewInfoListBuilder.setDropdownHeightWithKeyboardActive(newHeight);
-
             if (!mNativeInitialized || mAutocomplete == null) return;
 
             int suggestionHeight =
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilder.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilder.java
index c675d9f..c0bd9e2 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilder.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilder.java
@@ -9,7 +9,6 @@
 
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
-import androidx.annotation.Px;
 import androidx.annotation.VisibleForTesting;
 
 import org.chromium.base.supplier.Supplier;
@@ -41,8 +40,6 @@
 
 /** Builds DropdownItemViewInfo list from AutocompleteResult for the Suggestions list. */
 class DropdownItemViewInfoListBuilder {
-    private @Px static final int DROPDOWN_HEIGHT_UNKNOWN = -1;
-    private static final int DEFAULT_SIZE_OF_VISIBLE_GROUP = 5;
 
     private final @NonNull List<SuggestionProcessor> mPriorityOrderedSuggestionProcessors;
     private final @NonNull Supplier<Tab> mActivityTabSupplier;
@@ -52,12 +49,10 @@
     private @Nullable Supplier<ShareDelegate> mShareDelegateSupplier;
     private @NonNull Optional<OmniboxImageSupplier> mImageSupplier;
     private @NonNull BookmarkState mBookmarkState;
-    private @Px int mDropdownHeight;
 
     DropdownItemViewInfoListBuilder(
             @NonNull Supplier<Tab> tabSupplier, @NonNull BookmarkState bookmarkState) {
         mPriorityOrderedSuggestionProcessors = new ArrayList<>();
-        mDropdownHeight = DROPDOWN_HEIGHT_UNKNOWN;
         mActivityTabSupplier = tabSupplier;
         mImageSupplier = Optional.empty();
         mBookmarkState = bookmarkState;
@@ -157,26 +152,6 @@
     }
 
     /**
-     * Specify dropdown list height in pixels. The height is subsequentially used to determine
-     * number of visible suggestions and perform partial suggestion ordering based on their
-     * visibility.
-     *
-     * <p>Note that this mechanism is effective as long as grouping is not in use in zero-prefix
-     * context. At the time this mechanism was created, zero-prefix context never presented mixed
-     * URL and (non-reactive) search suggestions, but instead presented either a list of specialized
-     * suggestions (eg. clipboard, query tiles) mixed with reactive suggestions, a plain list of
-     * search suggestions, or a plain list of recent URLs. This gives us the chance to measure the
-     * height of the dropdown list before the actual grouping takes effect. If the above situation
-     * changes, we may need to revisit the logic here, and possibly cache the heights in different
-     * states (eg. portrait mode, split screen etc) to get better results.
-     *
-     * @param dropdownHeight Updated height of the dropdown item list.
-     */
-    void setDropdownHeightWithKeyboardActive(@Px int dropdownHeight) {
-        mDropdownHeight = dropdownHeight;
-    }
-
-    /**
      * Respond to omnibox session state change.
      *
      * @param activated Indicates whether omnibox session is activated.
@@ -201,35 +176,6 @@
     }
 
     /**
-     * Adaptive Suggestions logic: perform partial grouping by Search vs URL on the
-     * AutocompleteResult.
-     *
-     * @param autocompleteResult the result to apply adaptive suggestions to
-     */
-    @VisibleForTesting
-    void performPartialGroupingBySearchVsUrl(AutocompleteResult autocompleteResult) {
-        // When Adaptive Suggestions are set, perform partial grouping by search vs url.
-        // Take action only if we have more suggestions to offer than just a default match and
-        // one suggestion (otherwise no need to perform grouping).
-        if (autocompleteResult.getSuggestionsList().size() > 2) {
-            final int firstSuggestionWithHeader =
-                    getIndexOfFirstSuggestionWithHeader(autocompleteResult);
-            final int numVisibleSuggestions = getVisibleSuggestionsCount(autocompleteResult);
-            // TODO(crbug.com/40127424): this should either infer the count from UI height or supply
-            // the default value if height is not known. For the time being we group the entire list
-            // to mimic the native behavior.
-            if (firstSuggestionWithHeader > 1) {
-                autocompleteResult.groupSuggestionsBySearchVsURL(
-                        1, Math.min(numVisibleSuggestions, firstSuggestionWithHeader));
-            }
-            if (numVisibleSuggestions < firstSuggestionWithHeader) {
-                autocompleteResult.groupSuggestionsBySearchVsURL(
-                        numVisibleSuggestions, firstSuggestionWithHeader);
-            }
-        }
-    }
-
-    /**
      * Create a vertical suggestions group ("section").
      *
      * <p>The logic creates a vertically stacked set of suggestions that belong to the same
@@ -362,10 +308,6 @@
             mPriorityOrderedSuggestionProcessors.get(index).onSuggestionsReceived();
         }
 
-        if (!OmniboxFeatures.sGroupingFrameworkForNonZPS.isEnabled()) {
-            performPartialGroupingBySearchVsUrl(autocompleteResult);
-        }
-
         var newMatches = autocompleteResult.getSuggestionsList();
         int newMatchesCount = newMatches.size();
         var viewInfoList = new ArrayList<DropdownItemViewInfo>();
@@ -426,75 +368,6 @@
     }
 
     /**
-     * @param autocompleteResult The AutocompleteResult to analyze.
-     * @return Number of suggestions immediately visible to the user upon presenting the list. Does
-     *     not include the suggestions with headers, or VOICE_SUGGEST suggestions that have been
-     *     injected by Java provider.
-     */
-    @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
-    int getVisibleSuggestionsCount(AutocompleteResult autocompleteResult) {
-        // For cases where we don't know how many suggestions can fit in the visile screen area,
-        // make an assumption regarding the group size.
-        if (mDropdownHeight == DROPDOWN_HEIGHT_UNKNOWN) {
-            return Math.min(
-                    autocompleteResult.getSuggestionsList().size(), DEFAULT_SIZE_OF_VISIBLE_GROUP);
-        }
-
-        final List<AutocompleteMatch> suggestions = autocompleteResult.getSuggestionsList();
-
-        @Px int calculatedSuggestionsHeight = 0;
-        int lastVisibleIndex;
-        for (lastVisibleIndex = 0; lastVisibleIndex < suggestions.size(); lastVisibleIndex++) {
-            final AutocompleteMatch suggestion = suggestions.get(lastVisibleIndex);
-            // We do not include suggestions with headers in partial grouping, so terminate early.
-            if (suggestion.getGroupId() != AutocompleteMatch.INVALID_GROUP) {
-                break;
-            }
-
-            final SuggestionProcessor processor =
-                    getProcessorForSuggestion(suggestion, lastVisibleIndex);
-
-            int itemHeight = processor.getMinimumViewHeight();
-
-            // Evaluate suggestion and determine whether it should be considered visible or
-            // concealed based on the degree to which it is exposed.
-            // Suggestions exposed 50% or more (where at least half of the suggestion's height is
-            // visible) are considered visible. Suggestions concealed 50% or more (more than half of
-            // the usggestion's height is hidden) are considered fully concealed.
-            if (calculatedSuggestionsHeight + (itemHeight / 2) <= mDropdownHeight) {
-                // 50% or more of the content exposed.
-                calculatedSuggestionsHeight += itemHeight;
-            } else {
-                break;
-            }
-        }
-
-        return lastVisibleIndex;
-    }
-
-    /**
-     * Returns the index of the first suggestion that has an associated group header ID.
-     *
-     * <ul>
-     *   <li>If no suggestions have group header ID set, returns the size of the list.
-     *   <li>If all suggestions have group header ID set, returns 0.
-     * </ul>
-     */
-    int getIndexOfFirstSuggestionWithHeader(AutocompleteResult autocompleteResult) {
-        final List<AutocompleteMatch> suggestions = autocompleteResult.getSuggestionsList();
-        // Suggestions with headers, if present, are always shown last. Iterate from the bottom of
-        // the list to avoid scanning entire list when there are no headers.
-        for (int suggestionIndex = suggestions.size() - 1;
-                suggestionIndex >= 0;
-                suggestionIndex--) {
-            if (suggestions.get(suggestionIndex).getGroupId() == AutocompleteMatch.INVALID_GROUP) {
-                return suggestionIndex + 1;
-            }
-        }
-        return 0;
-    }
-
-    /**
      * Search for Processor that will handle the supplied suggestion at specific position.
      *
      * @param suggestion The suggestion to be processed.
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilderUnitTest.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilderUnitTest.java
index 6a17a72c..2634ddb 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilderUnitTest.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilderUnitTest.java
@@ -10,9 +10,7 @@
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.atLeastOnce;
 import static org.mockito.Mockito.clearInvocations;
-import static org.mockito.Mockito.doNothing;
 import static org.mockito.Mockito.inOrder;
-import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.verifyNoMoreInteractions;
@@ -46,16 +44,13 @@
 import org.chromium.components.omnibox.AutocompleteMatch;
 import org.chromium.components.omnibox.AutocompleteMatchBuilder;
 import org.chromium.components.omnibox.AutocompleteResult;
-import org.chromium.components.omnibox.GroupsProto;
 import org.chromium.components.omnibox.GroupsProto.GroupConfig;
 import org.chromium.components.omnibox.GroupsProto.GroupsInfo;
-import org.chromium.components.omnibox.OmniboxFeatures;
 import org.chromium.components.omnibox.OmniboxSuggestionType;
 import org.chromium.components.omnibox.suggestions.OmniboxSuggestionUiType;
 import org.chromium.ui.modelutil.PropertyModel;
 
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.List;
 
 /** Tests for {@link DropdownItemViewInfoListBuilder}. */
@@ -76,7 +71,6 @@
 
     @Before
     public void setUp() {
-        OmniboxFeatures.sGroupingFrameworkForNonZPS.setForTesting(true);
         when(mMockSuggestionProcessor.createModel())
                 .thenAnswer((mock) -> new PropertyModel(SuggestionCommonProperties.ALL_KEYS));
         when(mMockSuggestionProcessor.getViewTypeId()).thenReturn(OmniboxSuggestionUiType.DEFAULT);
@@ -336,251 +330,6 @@
     }
 
     @Test
-    public void visibleSuggestions_missingDropdownHeightAssumesDefaultGroupSize() {
-        final AutocompleteMatchBuilder builder =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST);
-        when(mMockSuggestionProcessor.doesProcessSuggestion(any(AutocompleteMatch.class), anyInt()))
-                .thenReturn(true);
-        // Create AutocompleteResult with a lot of suggestions.
-        final AutocompleteMatch match = builder.build();
-        final AutocompleteResult result =
-                AutocompleteResult.fromCache(
-                        Arrays.asList(
-                                match, match, match, match, match, match, match, match, match,
-                                match),
-                        null);
-        Assert.assertEquals(5, mBuilder.getVisibleSuggestionsCount(result));
-
-        // Same, with a shorter list of suggestions; in this case we don't know the height of the
-        // dropdown view, so we assume we can comfortably fit 5 suggestions.
-        final AutocompleteResult shortResult =
-                AutocompleteResult.fromCache(
-                        Arrays.asList(match, match, match, match, match), null);
-        Assert.assertEquals(5, mBuilder.getVisibleSuggestionsCount(shortResult));
-    }
-
-    @Test
-    public void visibleSuggestions_computeNumberOfVisibleSuggestionsFromDropdownHeight() {
-        when(mMockSuggestionProcessor.doesProcessSuggestion(any(AutocompleteMatch.class), anyInt()))
-                .thenReturn(true);
-        when(mMockSuggestionProcessor.getMinimumViewHeight()).thenReturn(10);
-
-        final AutocompleteMatchBuilder builder =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST);
-        final AutocompleteMatch match = builder.build();
-        final AutocompleteResult result =
-                AutocompleteResult.fromCache(
-                        Arrays.asList(
-                                match, match, match, match, match, match, match, match, match,
-                                match),
-                        null);
-
-        mBuilder.setDropdownHeightWithKeyboardActive(60);
-        Assert.assertEquals(6, mBuilder.getVisibleSuggestionsCount(result));
-
-        mBuilder.setDropdownHeightWithKeyboardActive(90);
-        Assert.assertEquals(9, mBuilder.getVisibleSuggestionsCount(result));
-
-        mBuilder.setDropdownHeightWithKeyboardActive(30);
-        Assert.assertEquals(3, mBuilder.getVisibleSuggestionsCount(result));
-    }
-
-    @Test
-    public void visibleSuggestions_partiallyVisibleSuggestionsAreCountedAsVisible() {
-        final AutocompleteMatchBuilder builder =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST);
-        when(mMockSuggestionProcessor.doesProcessSuggestion(any(AutocompleteMatch.class), anyInt()))
-                .thenReturn(true);
-        final AutocompleteMatch match = builder.build();
-        final AutocompleteResult result =
-                AutocompleteResult.fromCache(
-                        Arrays.asList(
-                                match, match, match, match, match, match, match, match, match,
-                                match),
-                        null);
-
-        when(mMockSuggestionProcessor.getMinimumViewHeight()).thenReturn(10);
-        mBuilder.setDropdownHeightWithKeyboardActive(45);
-        Assert.assertEquals(5, mBuilder.getVisibleSuggestionsCount(result));
-
-        // 40% of the next suggestion exposed - still not sufficient to be considered "visible".
-        mBuilder.setDropdownHeightWithKeyboardActive(54);
-        Assert.assertEquals(5, mBuilder.getVisibleSuggestionsCount(result));
-
-        // 50% of the next suggestion exposed - considered "visible".
-        mBuilder.setDropdownHeightWithKeyboardActive(55);
-        Assert.assertEquals(6, mBuilder.getVisibleSuggestionsCount(result));
-    }
-
-    @Test
-    public void visibleSuggestions_queriesCorrespondingProcessorsToDetermineViewAllocation() {
-        final SuggestionProcessor mockProcessor1 = mock(SuggestionProcessor.class);
-        final SuggestionProcessor mockProcessor2 = mock(SuggestionProcessor.class);
-        mBuilder.registerSuggestionProcessor(mockProcessor1);
-        mBuilder.registerSuggestionProcessor(mockProcessor2);
-        final AutocompleteMatchBuilder builder =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST);
-        final AutocompleteMatch match1 = builder.setDescription("1").build();
-        final AutocompleteMatch match2 = builder.setDescription("2").build();
-        final AutocompleteMatch match3 = builder.setDescription("3").build();
-        final AutocompleteResult result =
-                AutocompleteResult.fromCache(Arrays.asList(match1, match2, match3), null);
-
-        // Heights reported by processors for suggestions 1, 2 and 3.
-        when(mMockSuggestionProcessor.doesProcessSuggestion(eq(match1), anyInt())).thenReturn(true);
-        when(mMockSuggestionProcessor.getMinimumViewHeight()).thenReturn(10);
-        when(mockProcessor1.doesProcessSuggestion(eq(match2), anyInt())).thenReturn(true);
-        when(mockProcessor1.getMinimumViewHeight()).thenReturn(20);
-        when(mockProcessor2.doesProcessSuggestion(eq(match3), anyInt())).thenReturn(true);
-        when(mockProcessor2.getMinimumViewHeight()).thenReturn(30);
-
-        mBuilder.setDropdownHeightWithKeyboardActive(
-                90); // fits all three suggestions and then some.
-        Assert.assertEquals(3, mBuilder.getVisibleSuggestionsCount(result));
-
-        mBuilder.setDropdownHeightWithKeyboardActive(
-                45); // fits 2 suggestions fully, and 3rd partially.
-        Assert.assertEquals(3, mBuilder.getVisibleSuggestionsCount(result));
-
-        mBuilder.setDropdownHeightWithKeyboardActive(30); // fits only 2 suggestions.
-        Assert.assertEquals(2, mBuilder.getVisibleSuggestionsCount(result));
-
-        mBuilder.setDropdownHeightWithKeyboardActive(
-                20); // fits one suggestion fully and one partially.
-        Assert.assertEquals(2, mBuilder.getVisibleSuggestionsCount(result));
-
-        mBuilder.setDropdownHeightWithKeyboardActive(10); // fits only one suggestion.
-        Assert.assertEquals(1, mBuilder.getVisibleSuggestionsCount(result));
-
-        mBuilder.setDropdownHeightWithKeyboardActive(5); // fits one suggestion partiall.
-        Assert.assertEquals(1, mBuilder.getVisibleSuggestionsCount(result));
-    }
-
-    @Test
-    public void performPartialGroupingBySearchVsUrl_noActionWithNoMatches() {
-        AutocompleteResult mockResult = mock(AutocompleteResult.class);
-        when(mockResult.getSuggestionsList()).thenReturn(Arrays.asList());
-        mBuilder.performPartialGroupingBySearchVsUrl(mockResult);
-        verify(mockResult).getSuggestionsList();
-        verifyNoMoreInteractions(mockResult);
-    }
-
-    @Test
-    public void performPartialGroupingBySearchVsUrl_noActionWithTooFewMatches() {
-        // Adaptive Suggestions needs a Default match (always first, cannot be moved) and
-        // at least two more that need to be grouped or rearranged.
-        final AutocompleteMatch match =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST)
-                        .build();
-        AutocompleteResult mockResult = mock(AutocompleteResult.class);
-        when(mockResult.getSuggestionsList()).thenReturn(Arrays.asList(match, match));
-        mBuilder.performPartialGroupingBySearchVsUrl(mockResult);
-        verify(mockResult).getSuggestionsList();
-        verifyNoMoreInteractions(mockResult);
-    }
-
-    @Test
-    public void performPartialGroupingBySearchVsUrl_groupSuggestionsAboveFold() {
-        // Adaptive Suggestions needs a Default match (always first, cannot be moved) and
-        // at least two more that need to be grouped or rearranged.
-        when(mMockSuggestionProcessor.doesProcessSuggestion(any(), anyInt())).thenReturn(true);
-        when(mMockSuggestionProcessor.getMinimumViewHeight()).thenReturn(10);
-        mBuilder.setDropdownHeightWithKeyboardActive(50);
-
-        final AutocompleteMatch search =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST)
-                        .build();
-        AutocompleteResult mockResult = mock(AutocompleteResult.class);
-        when(mockResult.getSuggestionsList()).thenReturn(Arrays.asList(search, search, search));
-        mBuilder.performPartialGroupingBySearchVsUrl(mockResult);
-        verify(mockResult, atLeastOnce()).getSuggestionsList();
-        verify(mockResult).groupSuggestionsBySearchVsURL(1, 3);
-        verifyNoMoreInteractions(mockResult);
-    }
-
-    @Test
-    public void performPartialGroupingBySearchVsUrl_groupSuggestionsAboveAndBelowFold() {
-        // Adaptive Suggestions needs a Default match (always first, cannot be moved) and
-        // at least two more that need to be grouped or rearranged.
-        when(mMockSuggestionProcessor.doesProcessSuggestion(any(), anyInt())).thenReturn(true);
-        when(mMockSuggestionProcessor.getMinimumViewHeight()).thenReturn(10);
-        mBuilder.setDropdownHeightWithKeyboardActive(30);
-
-        final AutocompleteMatch search =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST)
-                        .build();
-        AutocompleteResult mockResult = mock(AutocompleteResult.class);
-        when(mockResult.getSuggestionsList())
-                .thenReturn(Arrays.asList(search, search, search, search, search));
-        mBuilder.performPartialGroupingBySearchVsUrl(mockResult);
-        verify(mockResult, atLeastOnce()).getSuggestionsList();
-        verify(mockResult).groupSuggestionsBySearchVsURL(1, 3);
-        verify(mockResult).groupSuggestionsBySearchVsURL(3, 5);
-        verifyNoMoreInteractions(mockResult);
-    }
-
-    @Test
-    public void performPartialGroupingBySearchVsUrl_matchesWithHeaderAreNotPromotedAboveURLs() {
-        OmniboxFeatures.sGroupingFrameworkForNonZPS.setForTesting(false);
-        final SuggestionProcessor mockProcessor = mock(SuggestionProcessor.class);
-        mBuilder.registerSuggestionProcessor(mockProcessor);
-        final AutocompleteMatch match1 =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST)
-                        .build();
-        final AutocompleteMatch match2 =
-                new AutocompleteMatchBuilder(OmniboxSuggestionType.NAVSUGGEST).build();
-        final AutocompleteMatch match3 =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST)
-                        .setGroupId(1)
-                        .build();
-
-        // Simulate 6 suggestions by repeating the three above.
-        AutocompleteResult mockResult = mock(AutocompleteResult.class);
-        when(mockResult.getSuggestionsList())
-                .thenReturn(Arrays.asList(match1, match2, match1, match2, match3, match3));
-        var groupsInfo = GroupsInfo.newBuilder();
-        groupsInfo.putGroupConfigs(1, GroupsProto.GroupConfig.getDefaultInstance());
-        when(mockResult.getGroupsInfo()).thenReturn(groupsInfo.build());
-        doNothing().when(mockResult).groupSuggestionsBySearchVsURL(anyInt(), anyInt());
-
-        when(mMockSuggestionProcessor.doesProcessSuggestion(any(), anyInt())).thenReturn(true);
-        when(mMockSuggestionProcessor.getMinimumViewHeight()).thenReturn(10);
-
-        // Scenario 1: everything fits above keyboard. Last 2 suggestions are not touched.
-        mBuilder.setDropdownHeightWithKeyboardActive(90);
-        mBuilder.buildDropdownViewInfoList(mockResult);
-        verify(mockResult, times(1)).groupSuggestionsBySearchVsURL(1, 4);
-        verify(mockResult, times(1)).groupSuggestionsBySearchVsURL(anyInt(), anyInt());
-        clearInvocations(mockResult);
-
-        // Scenario 2: Suggestions to group fit just above the keyboard
-        mBuilder.setDropdownHeightWithKeyboardActive(35);
-        mBuilder.buildDropdownViewInfoList(mockResult);
-        verify(mockResult, times(1)).groupSuggestionsBySearchVsURL(1, 4);
-        verify(mockResult, times(1)).groupSuggestionsBySearchVsURL(anyInt(), anyInt());
-        clearInvocations(mockResult);
-
-        // Scenario 3a: Some suggestions to group fit above the keyboard
-        mBuilder.setDropdownHeightWithKeyboardActive(25);
-        mBuilder.buildDropdownViewInfoList(mockResult);
-        verify(mockResult, times(1)).groupSuggestionsBySearchVsURL(1, 3);
-        verify(mockResult, times(1)).groupSuggestionsBySearchVsURL(3, 4);
-        verify(mockResult, times(2)).groupSuggestionsBySearchVsURL(anyInt(), anyInt());
-        clearInvocations(mockResult);
-
-        // Scenario 3b: Some suggestions to group fit above the keyboard
-        mBuilder.setDropdownHeightWithKeyboardActive(15);
-        mBuilder.buildDropdownViewInfoList(mockResult);
-        verify(mockResult, times(1)).groupSuggestionsBySearchVsURL(1, 2);
-        verify(mockResult, times(1)).groupSuggestionsBySearchVsURL(2, 4);
-        verify(mockResult, times(2)).groupSuggestionsBySearchVsURL(anyInt(), anyInt());
-        clearInvocations(mockResult);
-
-        // Skipping scenario where all suggestions are below the keyboard, because in this scenario
-        // the user can't realistically interact with them.
-    }
-
-    @Test
     public void buildVerticalSuggestionsGroup_withoutGroupHeader_noPreviousGroup() {
         var match =
                 AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST)
@@ -737,48 +486,4 @@
         assertEquals(captor.getAllValues().get(0), captor.getAllValues().get(1));
         assertEquals(captor.getValue(), result.get(1).model);
     }
-
-    @Test
-    public void visibleSuggestions_updatedVisibleGroupEligibilityLogic() {
-        final SuggestionProcessor mockProcessor = mock(SuggestionProcessor.class);
-        mBuilder.registerSuggestionProcessor(mockProcessor);
-        final AutocompleteMatchBuilder builder =
-                AutocompleteMatchBuilder.searchWithType(OmniboxSuggestionType.SEARCH_SUGGEST);
-        final AutocompleteMatch match1 = builder.setDescription("1").build();
-        final AutocompleteMatch match2 = builder.setDescription("2").build();
-        final AutocompleteResult result =
-                AutocompleteResult.fromCache(Arrays.asList(match1, match2), null);
-
-        // Each suggestion is 20dp tall, asking 40dp total space.
-        when(mMockSuggestionProcessor.doesProcessSuggestion(any(), anyInt())).thenReturn(true);
-        when(mMockSuggestionProcessor.getMinimumViewHeight()).thenReturn(20);
-
-        // Given 40dp area, both suggestions should be fully exposed.
-        mBuilder.setDropdownHeightWithKeyboardActive(40);
-        Assert.assertEquals(2, mBuilder.getVisibleSuggestionsCount(result));
-
-        // Given 30dp area, both suggestions should be still considered fully visible:
-        // One suggestion is 100% exposed, the other is 50% exposed
-        mBuilder.setDropdownHeightWithKeyboardActive(30);
-        Assert.assertEquals(2, mBuilder.getVisibleSuggestionsCount(result));
-
-        // Given 29dp area, one of the suggestions is no longer considered exposed.
-        // 9dp is less than 50% of the 20dp it needs.
-        mBuilder.setDropdownHeightWithKeyboardActive(29);
-        Assert.assertEquals(1, mBuilder.getVisibleSuggestionsCount(result));
-
-        // Given 20dp area, one of the suggestions is fully concealed.
-        mBuilder.setDropdownHeightWithKeyboardActive(20);
-        Assert.assertEquals(1, mBuilder.getVisibleSuggestionsCount(result));
-
-        // Given 10dp area, one of the suggestions is still considered exposed,
-        // while the other is fully conealed. This is because 10dp is 50% of required 20dp.
-        mBuilder.setDropdownHeightWithKeyboardActive(10);
-        Assert.assertEquals(1, mBuilder.getVisibleSuggestionsCount(result));
-
-        // Given 9dp area, none of the suggestions are considered visible.
-        // There's not enough space to show even one of them.
-        mBuilder.setDropdownHeightWithKeyboardActive(9);
-        Assert.assertEquals(0, mBuilder.getVisibleSuggestionsCount(result));
-    }
 }
diff --git a/chrome/browser/ui/android/plus_addresses/plus_address_creation_controller_android.cc b/chrome/browser/ui/android/plus_addresses/plus_address_creation_controller_android.cc
index 652c0c7..e8c180b 100644
--- a/chrome/browser/ui/android/plus_addresses/plus_address_creation_controller_android.cc
+++ b/chrome/browser/ui/android/plus_addresses/plus_address_creation_controller_android.cc
@@ -155,8 +155,8 @@
 void PlusAddressCreationControllerAndroid::RecordModalShownDuration(
     const PlusAddressMetrics::PlusAddressModalCompletionStatus status) {
   if (modal_shown_time_.has_value()) {
-    PlusAddressMetrics::RecordModalShownDuration(
-        status, clock_->Now() - modal_shown_time_.value());
+    PlusAddressMetrics::RecordModalShownOutcome(
+        status, clock_->Now() - modal_shown_time_.value(), /*refresh_count=*/0);
     modal_shown_time_.reset();
   }
 }
diff --git a/chrome/browser/ui/android/signin/java/res/layout/history_sync_landscape_view.xml b/chrome/browser/ui/android/signin/java/res/layout/history_sync_landscape_view.xml
index 265d098..e389a70 100644
--- a/chrome/browser/ui/android/signin/java/res/layout/history_sync_landscape_view.xml
+++ b/chrome/browser/ui/android/signin/java/res/layout/history_sync_landscape_view.xml
@@ -47,7 +47,7 @@
             android:id="@+id/sync_consent_scroll_view"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
-            android:layout_above="@id/sync_consent_details_description"
+            android:layout_above="@id/history_sync_footer"
             android:fadeScrollbars="false"
             android:fillViewport="true">
 
@@ -58,19 +58,21 @@
                 android:orientation="vertical">
 
                 <TextView
-                    android:id="@+id/sync_consent_title"
+                    android:id="@+id/history_sync_title"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:gravity="start"
+                    android:text="@string/history_sync_title"
                     android:textAppearance="@style/TextAppearance.Headline.Primary"/>
 
                 <org.chromium.ui.widget.TextViewWithLeading
-                    android:id="@+id/sync_consent_subtitle"
+                    android:id="@+id/history_sync_subtitle"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginEnd="105dp"
                     android:paddingVertical="8dp"
                     android:gravity="start"
+                    android:text="@string/history_sync_subtitle"
                     android:textAppearance="@style/TextAppearance.TextMedium.Secondary"
                     app:leading="@dimen/text_size_medium_leading"/>
 
@@ -83,7 +85,7 @@
         </ScrollView>
 
         <org.chromium.ui.widget.TextViewWithLeading
-            android:id="@+id/sync_consent_details_description"
+            android:id="@+id/history_sync_footer"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_marginBottom="16dp"
@@ -92,4 +94,4 @@
             android:textAppearance="@style/TextAppearance.TextSmall.Secondary"
             app:leading="@dimen/text_size_small_leading" />
     </RelativeLayout>
-</org.chromium.chrome.browser.ui.signin.history_sync.HistorySyncView>
\ No newline at end of file
+</org.chromium.chrome.browser.ui.signin.history_sync.HistorySyncView>
diff --git a/chrome/browser/ui/android/signin/java/res/layout/history_sync_portrait_view.xml b/chrome/browser/ui/android/signin/java/res/layout/history_sync_portrait_view.xml
index b607c4c..2b7b8bb0 100644
--- a/chrome/browser/ui/android/signin/java/res/layout/history_sync_portrait_view.xml
+++ b/chrome/browser/ui/android/signin/java/res/layout/history_sync_portrait_view.xml
@@ -64,20 +64,22 @@
                 </RelativeLayout>
 
             <org.chromium.ui.widget.TextViewWithLeading
-                android:id="@+id/sync_consent_title"
+                android:id="@+id/history_sync_title"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginBottom="8dp"
                 android:gravity="center"
+                android:text="@string/history_sync_title"
                 android:textAppearance="@style/TextAppearance.Headline.Primary"
                 app:leading="@dimen/headline_size_leading" />
 
             <org.chromium.ui.widget.TextViewWithLeading
-                android:id="@+id/sync_consent_subtitle"
+                android:id="@+id/history_sync_subtitle"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginBottom="16dp"
                 android:gravity="center"
+                android:text="@string/history_sync_subtitle"
                 android:textAppearance="@style/TextAppearance.TextMedium.Secondary"
                 app:leading="@dimen/text_size_medium_leading" />
 
@@ -115,7 +117,7 @@
         android:visibility="gone"/>
 
     <org.chromium.ui.widget.TextViewWithLeading
-        android:id="@+id/sync_consent_details_description"
+        android:id="@+id/history_sync_footer"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_marginTop="12dp"
diff --git a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncMediator.java b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncMediator.java
index d94387e..b31caf43 100644
--- a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncMediator.java
+++ b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncMediator.java
@@ -60,8 +60,8 @@
         // When the email address is not displayable, fall back on the other string.
         String footerString =
                 showEmailInFooter && profileData.hasDisplayableEmailAddress()
-                        ? context.getString(R.string.history_sync_signed_in_footer, mAccountEmail)
-                        : context.getString(R.string.history_sync_footer);
+                        ? context.getString(R.string.history_sync_footer_with_email, mAccountEmail)
+                        : context.getString(R.string.history_sync_footer_without_email);
         mModel =
                 HistorySyncProperties.createModel(
                         profileData, this::onAcceptClicked, this::onDeclineClicked, footerString);
diff --git a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncTest.java b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncTest.java
index 7487e1bc..0a9e23eb 100644
--- a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncTest.java
+++ b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncTest.java
@@ -95,16 +95,16 @@
         buildHistorySyncCoordinator();
 
         histogramWatcher.assertExpected();
-        onView(withId(R.id.sync_consent_title)).check(matches(isDisplayed()));
-        onView(withId(R.id.sync_consent_subtitle)).check(matches(isDisplayed()));
+        onView(withId(R.id.history_sync_title)).check(matches(isDisplayed()));
+        onView(withId(R.id.history_sync_subtitle)).check(matches(isDisplayed()));
         onView(withId(R.id.history_sync_account_image)).check(matches(isDisplayed()));
         onView(withId(R.id.history_sync_illustration)).check(matches(isDisplayed()));
-        onView(withText(R.string.signin_accept_button)).check(matches(isDisplayed()));
-        onView(withText(R.string.no_thanks)).check(matches(isDisplayed()));
+        onView(withText(R.string.history_sync_primary_action)).check(matches(isDisplayed()));
+        onView(withText(R.string.history_sync_secondary_action)).check(matches(isDisplayed()));
         onView(
                         allOf(
-                                withId(R.id.sync_consent_details_description),
-                                withText(R.string.history_sync_footer)))
+                                withId(R.id.history_sync_footer),
+                                withText(R.string.history_sync_footer_without_email)))
                 .check(matches(isDisplayed()));
     }
 
@@ -115,13 +115,13 @@
                 mActivityTestRule
                         .getActivity()
                         .getString(
-                                R.string.history_sync_signed_in_footer,
+                                R.string.history_sync_footer_with_email,
                                 mSigninTestRule.getPrimaryAccount(ConsentLevel.SIGNIN).getEmail());
 
         buildHistorySyncCoordinator(
                 /* showEmailInFooter= */ true, /* shouldSignOutOnDecline= */ false);
 
-        onView(allOf(withId(R.id.sync_consent_details_description), withText(expectedFooter)))
+        onView(allOf(withId(R.id.history_sync_footer), withText(expectedFooter)))
                 .check(matches(isDisplayed()));
     }
 
@@ -133,7 +133,7 @@
                 HistogramWatcher.newSingleRecordWatcher(
                         "Signin.HistorySyncOptIn.Completed", SIGNIN_ACCESS_POINT);
 
-        onView(withText(R.string.signin_accept_button)).perform(click());
+        onView(withText(R.string.history_sync_primary_action)).perform(click());
 
         histogramWatcher.assertExpected();
         verify(mSyncServiceMock).setSelectedType(UserSelectableType.HISTORY, true);
@@ -149,7 +149,7 @@
                 HistogramWatcher.newSingleRecordWatcher(
                         "Signin.HistorySyncOptIn.Declined", SIGNIN_ACCESS_POINT);
 
-        onView(withText(R.string.no_thanks)).perform(click());
+        onView(withText(R.string.history_sync_secondary_action)).perform(click());
 
         histogramWatcher.assertExpected();
         verifyNoInteractions(mSyncServiceMock);
@@ -166,7 +166,7 @@
                 HistogramWatcher.newSingleRecordWatcher(
                         "Signin.HistorySyncOptIn.Declined", SIGNIN_ACCESS_POINT);
 
-        onView(withText(R.string.no_thanks)).perform(click());
+        onView(withText(R.string.history_sync_secondary_action)).perform(click());
 
         histogramWatcher.assertExpected();
         verifyNoInteractions(mSyncServiceMock);
@@ -212,6 +212,6 @@
                             .getActivity()
                             .setContentView(mHistorySyncCoordinator.getView());
                 });
-        ViewUtils.waitForVisibleView(allOf(withId(R.id.sync_consent_title), isDisplayed()));
+        ViewUtils.waitForVisibleView(allOf(withId(R.id.history_sync_title), isDisplayed()));
     }
 }
diff --git a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncView.java b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncView.java
index f788ed6..6f0875ac 100644
--- a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncView.java
+++ b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/history_sync/HistorySyncView.java
@@ -33,14 +33,7 @@
 
         // TODO(crbug.com/41493766): Set up scrollView.
         mAccountImage = findViewById(R.id.history_sync_account_image);
-        TextView title = findViewById(R.id.sync_consent_title);
-        TextView subtitle = findViewById(R.id.sync_consent_subtitle);
-        mDetailsDescription = findViewById(R.id.sync_consent_details_description);
-
-        // TODO(crbug.com/41493766): Confirm that these are the correct title and subtitle strings.
-        // Using group C from the strings variation experiment as a placeholder in the meantime.
-        title.setText(R.string.history_sync_consent_title_c);
-        subtitle.setText(R.string.history_sync_consent_subtitle_c);
+        mDetailsDescription = findViewById(R.id.history_sync_footer);
     }
 
     ImageView getAccountImageView() {
@@ -69,8 +62,8 @@
             mDeclineButton.setVisibility(VISIBLE);
         }
         assert mAcceptButton != null && mDeclineButton != null;
-        mAcceptButton.setText(R.string.signin_accept_button);
-        mDeclineButton.setText(R.string.no_thanks);
+        mAcceptButton.setText(R.string.history_sync_primary_action);
+        mDeclineButton.setText(R.string.history_sync_secondary_action);
     }
 
     private void createButtonBar() {
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
index c088a8a..15220da 100644
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -3337,10 +3337,10 @@
       <message name="IDS_SIGNIN_TITLE" desc="Title for the screen that asks users to sign-in and turn on Sync. [CHAR_LIMIT=27]">
         Turn on sync?
       </message>
-      <message name="IDS_HISTORY_SYNC_CONSENT_TITLE_C" desc="This string appears as a heading on a full-page screen that asks users if they want to turn on history sync. Typing refers to typing urls in the address bar. The tone should be informative and inviting. [CHAR_LIMIT=35]">
-        Save time and type less
+      <message name="IDS_HISTORY_SYNC_TITLE" desc="Title of a page that asks users to start syncing their tabs and browsing history, so they can get back to sites they visited more quickly without having to type them, for example by seeing these sites suggested in the Omnibox.">
+        Save time, type less
       </message>
-      <message name="IDS_HISTORY_SYNC_CONSENT_SUBTITLE_C" desc="This string appears as a subheading on a full-page screen that asks users if they want to turn on browsing history sync. Sync is short for synchronization. The tone should be informative and inviting. [CHAR_LIMIT=100]">
+      <message name="IDS_HISTORY_SYNC_SUBTITLE" desc="Text of a page that asks users to start syncing their tabs and browsing history, so they can get back to sites they visited more quickly without having to type them, for example by seeing these sites suggested in the Omnibox.">
         To quickly get back to sites you’ve visited, sync your tabs and history
       </message>
       <message name="IDS_SIGNIN_SYNC_TITLE" desc="Title of Sync feature for the screen that asks users to sign-in and turn on Sync.">
@@ -3352,12 +3352,17 @@
       <message name="IDS_SIGNIN_DETAILS_DESCRIPTION" desc="Message with a link to customize Sync settings. Shown on the screen that asks the user to turn on Sync.">
         You can always choose what to sync in <ph name="BEGIN_LINK1">&lt;LINK1&gt;</ph>settings<ph name="END_LINK1">&lt;/LINK1&gt;</ph>.
       </message>
-      <!-- TODO(b/41493786): replace strings with final version and set as translateable -->
-      <message name="IDS_HISTORY_SYNC_SIGNED_IN_FOOTER" translateable="false">
-        You are signed in as <ph name="EMAIL">%1$s<ex>jane.doe@example.com</ex></ph>. You can always choose what to sync in settings. Google may personalize Search and other services based on your history.
+      <message name="IDS_HISTORY_SYNC_FOOTER_WITH_EMAIL" desc="Small text above the main button on a page that asks users to start syncing their tabs and browsing history. The first sentence reminds the user that they're signed in with a certain account. The second sentence is meant to reassure users that they can always change their mind and opt out again. The third sentence explains how history data may be used to personalise the user's experience in other services. The tone should be friendly and reassuring.">
+        You are signed in as <ph name="EMAIL">%1$s<ex>jane.doe@example.com</ex></ph>. You can stop syncing anytime in settings. Google may personalize Search and other services based on your history.
       </message>
-      <message name="IDS_HISTORY_SYNC_FOOTER" translateable="false">
-        You can always choose what to sync in settings. Google may personalize Search and other services based on your history.
+      <message name="IDS_HISTORY_SYNC_FOOTER_WITHOUT_EMAIL" desc="Small text above the main button on a page that asks users to start syncing their tabs and browsing history. The first sentence is meant to reassure users that they can always change their mind and opt out again. Separately, the second sentence explains how history data may be used to personalise the user's experience in other services.  The tone should be friendly and reassuring.">
+        You can stop syncing anytime in settings. Google may personalize Search and other services based on your history.
+      </message>
+      <message name="IDS_HISTORY_SYNC_PRIMARY_ACTION" desc="Text for the confirmation button on the history sync screen that asks users to start syncing their tabs and browsing history. By clicking this button users sign in and turn on history sync. [CHAR_LIMIT=20]">
+        Yes, I’m in
+      </message>
+      <message name="IDS_HISTORY_SYNC_SECONDARY_ACTION" desc="Text for the decline button on the history sync screen that asks users to start syncing their tabs and browsing history. By clicking this button users decline to turn on history sync and dismiss the screen. [CHAR_LIMIT=20]">
+        No thanks
       </message>
       <message name="IDS_SIGNIN_ACCEPT_BUTTON" desc="Text for the confirmation button in the sign-in screen. By clicking this button users signs in and turns on Sync. [CHAR_LIMIT=20]">
         Yes, I'm in
@@ -6253,6 +6258,18 @@
       <message name="IDS_PDF_TRANSIENT_TAB_TITLE" desc="This string is shown as the temporary tab title when a PDF file is loading in a tab. The tab title will be updated to the actual PDF file name once available.">
         Loading PDF…
       </message>
+
+      <!-- Tab declutter -->
+      <message name="IDS_ARCHIVED_TAB_CARD_TITLE" desc="Shown in the tab switcher to prompt the user to review their inactive tabs. Indicates how many tabs are inactive.">
+        {ARCHIVED_TAB_COUNT, plural,
+          =1 {Inactive tab (1)}
+          other {Inactive tabs (#)}}
+      </message>
+      <message name="IDS_ARCHIVED_TAB_CARD_SUBTITLE" desc="Shown in the tab switcher to inform the user how long the relevant tabs have been in active for.">
+        {INACTIVE_TIME_DAYS, plural,
+          =1 {Not used for 1 day or more}
+          other {Not used for # days or more}}
+      </message>
     </messages>
   </release>
 </grit>
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_ARCHIVED_TAB_CARD_SUBTITLE.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_ARCHIVED_TAB_CARD_SUBTITLE.png.sha1
new file mode 100644
index 0000000..cdba628
--- /dev/null
+++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_ARCHIVED_TAB_CARD_SUBTITLE.png.sha1
@@ -0,0 +1 @@
+0c7a3d318d703782a8b16e48fb966b9b62081b4c
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_ARCHIVED_TAB_CARD_TITLE.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_ARCHIVED_TAB_CARD_TITLE.png.sha1
new file mode 100644
index 0000000..cdba628
--- /dev/null
+++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_ARCHIVED_TAB_CARD_TITLE.png.sha1
@@ -0,0 +1 @@
+0c7a3d318d703782a8b16e48fb966b9b62081b4c
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_CONSENT_SUBTITLE_C.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_CONSENT_SUBTITLE_C.png.sha1
deleted file mode 100644
index a7cd267..0000000
--- a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_CONSENT_SUBTITLE_C.png.sha1
+++ /dev/null
@@ -1 +0,0 @@
-e70ffaa2304cdfbee6743c0cb0314e1d7f1ea8fe
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_CONSENT_TITLE_C.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_CONSENT_TITLE_C.png.sha1
deleted file mode 100644
index a7cd267..0000000
--- a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_CONSENT_TITLE_C.png.sha1
+++ /dev/null
@@ -1 +0,0 @@
-e70ffaa2304cdfbee6743c0cb0314e1d7f1ea8fe
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_FOOTER_WITHOUT_EMAIL.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_FOOTER_WITHOUT_EMAIL.png.sha1
new file mode 100644
index 0000000..9ff250e9
--- /dev/null
+++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_FOOTER_WITHOUT_EMAIL.png.sha1
@@ -0,0 +1 @@
+e514e38964e58e0cbf03e56ece789a5b47da4cc6
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_FOOTER_WITH_EMAIL.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_FOOTER_WITH_EMAIL.png.sha1
new file mode 100644
index 0000000..edf98791
--- /dev/null
+++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_FOOTER_WITH_EMAIL.png.sha1
@@ -0,0 +1 @@
+9bb9ae266b70bfada59fc2165c7c715f95501ae9
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_PRIMARY_ACTION.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_PRIMARY_ACTION.png.sha1
new file mode 100644
index 0000000..9ff250e9
--- /dev/null
+++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_PRIMARY_ACTION.png.sha1
@@ -0,0 +1 @@
+e514e38964e58e0cbf03e56ece789a5b47da4cc6
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_SECONDARY_ACTION.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_SECONDARY_ACTION.png.sha1
new file mode 100644
index 0000000..9ff250e9
--- /dev/null
+++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_SECONDARY_ACTION.png.sha1
@@ -0,0 +1 @@
+e514e38964e58e0cbf03e56ece789a5b47da4cc6
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_SUBTITLE.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_SUBTITLE.png.sha1
new file mode 100644
index 0000000..9ff250e9
--- /dev/null
+++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_SUBTITLE.png.sha1
@@ -0,0 +1 @@
+e514e38964e58e0cbf03e56ece789a5b47da4cc6
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_TITLE.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_TITLE.png.sha1
new file mode 100644
index 0000000..9ff250e9
--- /dev/null
+++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_HISTORY_SYNC_TITLE.png.sha1
@@ -0,0 +1 @@
+e514e38964e58e0cbf03e56ece789a5b47da4cc6
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_af.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_af.xtb
index a0ea648e..0e8cfdd 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_af.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_af.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Soek</translation>
 <translation id="1384704387250346179">Vertaal prent met Google Lens <ph name="BEGIN_NEW" />Nuut<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> dae gelede aktief</translation>
+<translation id="1390418506739274310">Jy kan moontlik die geskiedenis sien van ander apps wat skakels in Chrome oopmaak. Jou Google-rekening kan dalk ander vorme van blaaigeskiedenis hê by <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Om voort te gaan, sal <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> jou naam, e-posadres en profielfoto met hierdie werf deel. Besoek hierdie werf se <ph name="BEGIN_LINK1" />diensbepalings<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096">Soek met <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Donkertema</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">URL’e wat jy besoek, word na Google toe gestuur om te voorspel watter werwe jy dalk volgende sal besoek, en om vir jou bykomende inligting te wys oor die bladsy wat jy besoek</translation>
 <translation id="3026955690410463085">Sluit skakel in</translation>
 <translation id="3027644380269727216">Gegrond op jou aktiwiteit op ’n werf. Hierdie instelling is aan.</translation>
+<translation id="3027950907978057636">Vanaf <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Geen vooraflaai nie</translation>
 <translation id="3029704984691124060">Wagwoordfrases stem nie ooreen nie</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Kry hulp<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">As jy jou boekmerke ook in jou Google-rekening stoor, kan jy produkpryse in Chrome naspoor en kennisgewings kry wanneer die prys daal</translation>
 <translation id="3227557059438308877">Google Chrome as 'n sekuriteitsleutel</translation>
 <translation id="3232293466644486101">Vee blaaierdata uit …</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> oortjies is uitgevee</translation>
 <translation id="3232754137068452469">Webprogram</translation>
 <translation id="3236059992281584593">1 minuut oor</translation>
 <translation id="3237087289225714896">Standaardvooraflaai:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">Ontsluit om jou wagwoord te sien</translation>
 <translation id="5517095782334947753">Jy het boekmerke, geskiedenis, wagwoorde en ander instellings van <ph name="FROM_ACCOUNT" /> af.</translation>
 <translation id="5524843473235508879">Herleiding is geblokkeer.</translation>
+<translation id="5526281268548144413">Kan nie op verskeie vensters toegemaak word nie</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# min. gelede}other{# min. gelede}}</translation>
 <translation id="5548606607480005320">Veiligheidskontrole</translation>
 <translation id="5554520618550346933">Wanneer jy ’n wagwoord gebruik, waarsku Chrome jou as dit aanlyn gepubliseer is. Wanneer dit gedoen word, word jou wagwoorde en gebruikername geënkripteer sodat niemand, insluitend Google, hulle kan lees nie.</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">Opsioneel</translation>
 <translation id="7762668264895820836">SD-kaart <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Voeg adres by</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> oortjie is uitgevee</translation>
 <translation id="7772032839648071052">Bevestig wagfrase</translation>
 <translation id="7772375229873196092">Maak <ph name="APP_NAME" /> toe</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" /> \u2026 en nog <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" /> \u2026 en nog <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_am.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_am.xtb
index 93eb823f..9651130a 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_am.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_am.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">ፍለጋ </translation>
 <translation id="1384704387250346179">ምስልን በGoogle ሌንስ <ph name="BEGIN_NEW" />አዲስ<ph name="END_NEW" /> ያስተርጉሙ</translation>
 <translation id="1386674309198842382">ገባሪ ከ<ph name="LAST_UPDATED" /> ቀናት በፊት</translation>
+<translation id="1390418506739274310">በChrome ውስጥ አገናኞችን ከሚከፍቱ ሌሎች መተግበሪያዎች ታሪክን ማየት ይችላሉ። የእርስዎ Google መለያ <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> ላይ ሌሎች የአሰሳ ታሪክ ዓይነቶች ሊኖረው ይችላል።</translation>
 <translation id="13931502444227376">ለመቀጠል <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> የእርስዎን ስም፣ ኢሜይል አድራሻ እና የመገለጫ ሥዕል ለዚህ ጣቢያ ያጋራል። የዚህን ጣቢያ <ph name="BEGIN_LINK1" />የአገልግሎት ውል<ph name="END_LINK1" /> ይመልከቱ።</translation>
 <translation id="1397811292916898096">በ<ph name="PRODUCT_NAME" /> ይፈልጉ</translation>
 <translation id="1407069428457324124">ጠቆር ያለ ገጽታ</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">እርስዎ የሚጎበኟቸው ዩአርኤሎች ቀጥሎ የትኛዎቹን ጣቢያዎች ሊጎበኙ እንደሚችሉ ለመተንበይ እና እየጎበኙ ስላሉት ገጽ ተጨማሪ መረጃን ለማሳየት ወደ Google ይላካሉ</translation>
 <translation id="3026955690410463085">አገናኝ ያካትቱ</translation>
 <translation id="3027644380269727216">በአንድ ጣቢያ ላይ ባለዎት እንቅስቃሴ ላይ የተመሠረተ። ይህ ቅንብር በርቷል።</translation>
+<translation id="3027950907978057636">ከ<ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">ቅድሚያ መጫን የለም</translation>
 <translation id="3029704984691124060">የይለፍ ሐረጎቹ አይዛመዱም</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />እገዛ ያግኙ<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ar.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ar.xtb
index e5c75f1..5cc3cae 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ar.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ar.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">البحث</translation>
 <translation id="1384704387250346179">‏ترجمة الصور مع "عدسة Google‏" <ph name="BEGIN_NEW" />جديد<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">نشط قبل <ph name="LAST_UPDATED" /> يوم</translation>
+<translation id="1390418506739274310">‏قد يظهر لك السجلّ من خلال التطبيقات الأخرى التي تفتح الروابط في Chrome. قد يتضمّن حسابك على Google نماذج أخرى من سجلّ التصفّح في <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">للمتابعة، سيشارك <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> اسمك وعنوان بريدك الإلكتروني وصورة ملفك الشخصي مع هذا الموقع الإلكتروني. يُرجى الاطّلاع على <ph name="BEGIN_LINK1" />بنود الخدمة<ph name="END_LINK1" /> لهذا الموقع الإلكتروني.</translation>
 <translation id="1397811292916898096">البحث باستخدام <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">المظهر الداكن</translation>
@@ -390,6 +391,7 @@
 <translation id="3003253259757197230">‏يتم إرسال عناوين URL التي تزورها إلى Google لتوقُّع المواقع الإلكترونية التي ستزورها بعد ذلك ولعرض معلومات إضافية عن الصفحة الحالية التي تزورها.</translation>
 <translation id="3026955690410463085">تم تضمين الرابط في المشاركة</translation>
 <translation id="3027644380269727216">تستند هذه الاقتراحات إلى نشاطك على المواقع الإلكترونية. هذا الإعداد مفعَّل.</translation>
+<translation id="3027950907978057636">من "<ph name="APP_LABEL" />"</translation>
 <translation id="3029276696788198026">إيقاف التحميل المُسبق</translation>
 <translation id="3029704984691124060">عبارات المرور غير متطابقة</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />الحصول على مساعدة<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_be.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_be.xtb
index 1badd4e..5a4823a 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_be.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_be.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Пошук</translation>
 <translation id="1384704387250346179">Перакласці ў Аб'ектыве <ph name="BEGIN_NEW" />Навінка<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Апошнія дзеянні: <ph name="LAST_UPDATED" /> сут таму</translation>
+<translation id="1390418506739274310">Вы можаце бачыць гісторыю з іншых праграм, спасылкі з якіх адкрываюцца ў Chrome. На сайце <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> размешчаны іншыя формы запісу гісторыі прагляду сайтаў для вашага Уліковага запісу Google.</translation>
 <translation id="13931502444227376">Каб працягнуць, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> абагуліць ваша імя, адрас электроннай пошты і відарыс профілю з гэтым сайтам. Азнаёмцеся з <ph name="BEGIN_LINK1" />умовамі выкарыстання<ph name="END_LINK1" /> сайта.</translation>
 <translation id="1397811292916898096">Шукаць з дапамогай <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Цёмная тэма</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">URL-адрасы старонак, якія вы наведваеце, адпраўляюцца ў Google, каб можна было прадказваць, якія сайты вы можаце наведаць далей, і паказваць вам дадатковую інфармацыю пра старонку, на якой вы знаходзіцеся</translation>
 <translation id="3026955690410463085">Абагуліць разам са спасылкай</translation>
 <translation id="3027644380269727216">Выкарыстоўваюцца даныя пра вашы дзеянні на сайце. Гэта налада ўключана.</translation>
+<translation id="3027950907978057636">Крыніца: <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Без перадзагрузкі</translation>
 <translation id="3029704984691124060">Фразы-паролі не супадаюць</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Даведка<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">Калі вы захаваеце закладкі таксама ў сваім Уліковым запісе Google, вы зможаце сачыць за цэнамі на тавары ў Chrome і атрымліваць апавяшчэнні аб іх зніжэнні</translation>
 <translation id="3227557059438308877">Google Chrome як ключ бяспекі</translation>
 <translation id="3232293466644486101">Выдаліць даныя пра работу ў браўзеры…</translation>
+<translation id="3232459301230493791">Выдалена ўкладак: <ph name="TAB_COUNT" /></translation>
 <translation id="3232754137068452469">Вэб-праграма</translation>
 <translation id="3236059992281584593">Засталася 1 хвіліна</translation>
 <translation id="3237087289225714896">Стандартная перадзагрузка:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">Каб паглядзець пароль, трэба зняць блакіроўку</translation>
 <translation id="5517095782334947753">У вас ёсць закладкі, гісторыя, паролі і іншыя налады з уліковага запісу <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Перанакіраванне заблакіравана.</translation>
+<translation id="5526281268548144413">Нельга закрыць у некалькіх вокнах</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# хв таму}one{# хв таму}few{# хв таму}many{# хв таму}other{# хв таму}}</translation>
 <translation id="5548606607480005320">Праверка бяспекі</translation>
 <translation id="5554520618550346933">Chrome папярэджвае, калі пароль, які вы выкарыстоўваеце, быў апублікаваны ў інтэрнэце. Пры гэтым вашы паролі і імёны карыстальніка зашыфраваны – прачытаць іх не можа ніхто, нават Google.</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">Неабавязкова</translation>
 <translation id="7762668264895820836">SD-карта <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Дадаць адрас</translation>
+<translation id="776533689993750361">Выдалена <ph name="TAB_COUNT" /> укладка</translation>
 <translation id="7772032839648071052">Пацвердзіце фразу-пароль</translation>
 <translation id="7772375229873196092">Закрыццё праграмы "<ph name="APP_NAME" />"</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}one{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}few{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}many{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bg.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bg.xtb
index e54820b..bea7303 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bg.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bg.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Ако също така запазвате отметките си в профила си в Google, можете да проследявате цените на продуктите в Chrome и да получавате известия при понижение на цената</translation>
 <translation id="3227557059438308877">Google Chrome като ключ за сигурност</translation>
 <translation id="3232293466644486101">Изтриване на данните за сърфирането…</translation>
+<translation id="3232459301230493791">Изтрихте <ph name="TAB_COUNT" /> раздела</translation>
 <translation id="3232754137068452469">Уеб приложение</translation>
 <translation id="3236059992281584593">Остава 1 мин</translation>
 <translation id="3237087289225714896">Стандартно предварително зареждане:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Отключете, за да видите паролата си</translation>
 <translation id="5517095782334947753">Имате отметки, история, пароли и други настройки от <ph name="FROM_ACCOUNT" /></translation>
 <translation id="5524843473235508879">Блокирано бе пренасочване.</translation>
+<translation id="5526281268548144413">Затварянето в няколко прозореца не е възможно</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Преди # мин}other{Преди # мин}}</translation>
 <translation id="5548606607480005320">Проверка на безопасността</translation>
 <translation id="5554520618550346933">Когато използвате парола, Chrome ще ви предупреди, ако тя е публикувана онлайн. Когато го прави, паролите и потребителските ви имена са шифровани, така че да не могат да бъдат прочетени от никого, включително от Google.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">По избор</translation>
 <translation id="7762668264895820836">SD карта <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Добавяне на адрес</translation>
+<translation id="776533689993750361">Изтрихте <ph name="TAB_COUNT" /> раздел</translation>
 <translation id="7772032839648071052">Потвърдете пропуска</translation>
 <translation id="7772375229873196092">Затваряне на <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 и още <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 и още <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bn.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bn.xtb
index 2d441fb..72b0de31 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bn.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bn.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Search</translation>
 <translation id="1384704387250346179">Google Lens <ph name="BEGIN_NEW" />নতুন<ph name="END_NEW" />-এর সাহায্যে ছবি অনুবাদ করুন</translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> দিন আগে ব্যবহার করা হয়েছে</translation>
+<translation id="1390418506739274310">Chrome-এ লিঙ্ক খোলে, এমন অন্যান্য অ্যাপ থেকে আপনি ইতিহাস দেখতে পেতে পারেন। <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> লিঙ্কে আপনার Google অ্যাকাউন্টের অন্যান্য ধরনের ব্রাউজিং ইতিহাস থাকতে পারে।</translation>
 <translation id="13931502444227376">চালিয়ে যেতে, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> আপনার নাম, ইমেল আইডি ও প্রোফাইল ছবি এই সাইটের সাথে শেয়ার করবে। এই সাইটের <ph name="BEGIN_LINK1" />পরিষেবার শর্তাবলী<ph name="END_LINK1" /> দেখুন।</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> এর সাহায্যে খুঁজুন</translation>
 <translation id="1407069428457324124">ডার্ক থিম</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">আপনি পরবর্তী কোন কোন সাইটে যেতে পারেন সেই বিষয়ে অনুমান করতে আপনার ভিজিট করা URL Google-কে পাঠানো হয় এবং আপনি ভিজিট করেছেন এমন পেজ সম্পর্কে অতিরিক্ত তথ্য দেখাতেও এটি করা হয়</translation>
 <translation id="3026955690410463085">লিঙ্ক যোগ করুন</translation>
 <translation id="3027644380269727216">সাইটে আপনার অ্যাক্টিভিটির উপর ভিত্তি করে। এই সেটিংটি চালু করা আছে।</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" /> থেকে</translation>
 <translation id="3029276696788198026">প্রিলোড করার প্রয়োজন নেই</translation>
 <translation id="3029704984691124060">পাসফ্রেজসমূহ মেলে না</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />সহায়তা পান<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">এছাড়াও, আপনি বুকমার্ক Google অ্যাকাউন্টে সেভ করলে Chrome-এ প্রোডাক্টের দাম ট্র্যাক করার সুবিধা পাবেন এবং সেই সাথে প্রোডাক্টের দাম কমলে আপনাকে বিজ্ঞপ্তি দিয়ে জানানো হবে।</translation>
 <translation id="3227557059438308877">নিরাপত্তা কী হিসেবে Google Chrome ব্যবহার</translation>
 <translation id="3232293466644486101">ব্রাউজ করা ডেটা মুছে দিন…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" />টি ট্যাব মুছে ফেলা হয়েছে</translation>
 <translation id="3232754137068452469">ওয়েব অ্যাপ</translation>
 <translation id="3236059992281584593">১ মিনিট বাকি আছে</translation>
 <translation id="3237087289225714896">স্ট্যান্ডার্ড প্রিলোডিং:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">আপনার পাসওয়ার্ড দেখতে আনলক করুন</translation>
 <translation id="5517095782334947753">আপনার জন্য <ph name="FROM_ACCOUNT" /> থেকে বুকমার্কস, ইতিহাস, পাসওয়ার্ড এবং অন্যান্য সেটিংস আছে।</translation>
 <translation id="5524843473235508879">রিডাইরেক্ট ব্লক করা হয়েছে।</translation>
+<translation id="5526281268548144413">একাধিক উইন্ডো জুড়ে ট্যাব বন্ধ করা যাবে না</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# মিনিট আগে}one{# মিনিট আগে}other{# মিনিট আগে}}</translation>
 <translation id="5548606607480005320">নিরাপত্তা সংক্রান্ত পরীক্ষা</translation>
 <translation id="5554520618550346933">আপনি পাসওয়ার্ড ব্যবহার করার সময়, সেটি অনলাইনে প্রকাশিত হয়েছে কিনা সেই সম্পর্কে Chrome সতর্ক করে। এটি করার সময় আপনার পাসওয়ার্ড ও ইউজারনেম এনক্রিপ্ট করা থাকে, তাই সেগুলি কেউ দেখতে পাবে না, এমনকি Google-ও না।</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">ঐচ্ছিক</translation>
 <translation id="7762668264895820836"><ph name="SD_CARD_NUMBER" /> টি এসডি কার্ড</translation>
 <translation id="7764225426217299476">ঠিকানা যোগ করুন</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" />টি ট্যাব মুছে ফেলা হয়েছে</translation>
 <translation id="7772032839648071052">পাসফ্রেজ নিশ্চিত করুন</translation>
 <translation id="7772375229873196092"><ph name="APP_NAME" /> বন্ধ করুন</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 এবং <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> আরও অনেক}one{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 এবং <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> আরও অনেক}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 এবং <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> আরও অনেক}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_cs.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_cs.xtb
index 2710b99..4cede9b 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_cs.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_cs.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Pokud si záložky uložíte také do účtu Google, můžete v Chromu sledovat ceny produktů a dostávat upozornění, když cena klesne</translation>
 <translation id="3227557059438308877">Google Chrome jako bezpečnostní klíč</translation>
 <translation id="3232293466644486101">Vymazat údaje o prohlížení…</translation>
+<translation id="3232459301230493791">Smazané karty: <ph name="TAB_COUNT" /></translation>
 <translation id="3232754137068452469">Webová aplikace</translation>
 <translation id="3236059992281584593">Zbývá: 1 min</translation>
 <translation id="3237087289225714896">Standardní předběžné načítání:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Chcete-li zobrazit heslo, odemkněte zařízení</translation>
 <translation id="5517095782334947753">Máte záložky, historii, hesla a další nastavení z účtu <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Bylo zablokováno přesměrování.</translation>
+<translation id="5526281268548144413">Nelze zavřít ve více oknech</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{před # min}few{před # min}many{před # min}other{před # min}}</translation>
 <translation id="5548606607480005320">Bezpečnostní kontrola</translation>
 <translation id="5554520618550346933">Když použijete heslo, Chrome vás upozorní, pokud bylo zveřejněno online. Vaše hesla a uživatelská jména jsou při tom šifrována, takže je nemůže nikdo zobrazit (ani Google).</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Volitelné</translation>
 <translation id="7762668264895820836">SD karta <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Přidat adresu</translation>
+<translation id="776533689993750361">Smazané karty: <ph name="TAB_COUNT" /></translation>
 <translation id="7772032839648071052">Potvrďte heslovou frázi</translation>
 <translation id="7772375229873196092">Zavřít aplikaci <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" /> a <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> další}few{<ph name="PAYMENT_METHOD_PREVIEW" /> a <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> další}many{<ph name="PAYMENT_METHOD_PREVIEW" /> a <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> další}other{<ph name="PAYMENT_METHOD_PREVIEW" /> a <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> dalších}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_da.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_da.xtb
index 243618f..031d78bf 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_da.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_da.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Hvis du også gemmer dine bogmærker på din Google-konto, kan du holde øje med produktpriser i Chrome og få besked, når prisen falder</translation>
 <translation id="3227557059438308877">Google Chrome som sikkerhedsnøgle</translation>
 <translation id="3232293466644486101">Slet browserdata…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> faner er slettet</translation>
 <translation id="3232754137068452469">Webapp</translation>
 <translation id="3236059992281584593">1 minut tilbage</translation>
 <translation id="3237087289225714896">Standardforudindlæsning:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Lås op for at se din adgangskode</translation>
 <translation id="5517095782334947753">Du har bogmærker, historik, adgangskoder og andre indstillinger fra <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Omdirigeringen blev blokeret.</translation>
+<translation id="5526281268548144413">Kan ikke lukkes i flere vinduer</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{For # min. siden}one{# min ago}other{For # min. siden}}</translation>
 <translation id="5548606607480005320">Sikkerhedstjek</translation>
 <translation id="5554520618550346933">Når du bruger en adgangskode, underretter Chrome dig, hvis den er blevet afsløret online. I forbindelse med dette krypteres dine adgangskoder og brugernavne, så de kan ikke læses af nogen, heller ikke Google.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Valgfrit</translation>
 <translation id="7762668264895820836">SD-kort <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Tilføj adresse</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> fane er slettet</translation>
 <translation id="7772032839648071052">Bekræft adgangssætning</translation>
 <translation id="7772375229873196092">Luk <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 og <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> mere}one{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 og <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> mere}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 og <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> mere}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_de.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_de.xtb
index ef32560d..6ec99bbc 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_de.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_de.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Durchsuchen</translation>
 <translation id="1384704387250346179">Bild mit Google Lens übersetzen <ph name="BEGIN_NEW" />Neu<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Vor <ph name="LAST_UPDATED" /> Tagen aktiv</translation>
+<translation id="1390418506739274310">Möglicherweise siehst du den Verlauf von anderen Apps, die Links in Chrome öffnen. Unter <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> sind möglicherweise weitere Arten von Browserverlaufsdaten für dein Google-Konto gespeichert.</translation>
 <translation id="13931502444227376"><ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> teilt zum Fortfahren deinen Namen, deine E-Mail-Adresse und dein Profilbild mit dieser Website. Die Nutzungsbedingungen der Website <ph name="BEGIN_LINK1" />findest du hier<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096">Mit <ph name="PRODUCT_NAME" /> suchen</translation>
 <translation id="1407069428457324124">Dunkles Design</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">URLs von Websites, die du besuchst, werden an Google gesendet, um Prognosen zu erstellen, welche Websites du möglicherweise als Nächstes besuchen wirst, und um dir zusätzliche Informationen über die Seite anzuzeigen, auf der du gerade bist</translation>
 <translation id="3026955690410463085">Link hinzufügen</translation>
 <translation id="3027644380269727216">Basierend auf deinen Aktivitäten auf einer Website. Diese Einstellung ist aktiviert.</translation>
+<translation id="3027950907978057636">Von <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Kein Vorabladen</translation>
 <translation id="3029704984691124060">Passphrasen stimmen nicht überein.</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Hilfe aufrufen<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_el.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_el.xtb
index f8dc872d..1f09237 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_el.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_el.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Αναζήτηση</translation>
 <translation id="1384704387250346179">Μετάφραση εικόνας με Google Lens <ph name="BEGIN_NEW" />Νέο<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Ενεργή <ph name="LAST_UPDATED" /> ημέρες πριν</translation>
+<translation id="1390418506739274310">Μπορεί να δείτε το ιστορικό από άλλες εφαρμογές που ανοίγουν συνδέσμους στο Chrome. Ο Λογαριασμός Google ενδέχεται να διαθέτει άλλες μορφές ιστορικού περιήγησης στη διεύθυνση <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Για να συνεχίσετε, το <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> θα κοινοποιήσει το όνομα, τη διεύθυνση ηλεκτρονικού ταχυδρομείου και τη φωτογραφία προφίλ σας σε αυτόν τον ιστότοπο. Ανατρέξτε στους <ph name="BEGIN_LINK1" />όρους παροχής υπηρεσιών<ph name="END_LINK1" /> αυτού του ιστοτόπου.</translation>
 <translation id="1397811292916898096">Αναζήτηση με <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Σκούρο θέμα</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Τα URL που επισκέπτεστε αποστέλλονται στην Google για την πρόβλεψη των ιστοτόπων που ενδέχεται να επισκεφτείτε στη συνέχεια και την εμφάνιση πρόσθετων πληροφοριών σχετικά με τη σελίδα που επισκέπτεστε.</translation>
 <translation id="3026955690410463085">Συμπερίληψη συνδέσμου</translation>
 <translation id="3027644380269727216">Βάσει της δραστηριότητάς σας σε έναν ιστότοπο. Αυτή η ρύθμιση είναι ενεργοποιημένη.</translation>
+<translation id="3027950907978057636">Από <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Χωρίς προφόρτωση</translation>
 <translation id="3029704984691124060">Οι φράσεις πρόσβασης δεν συμφωνούν</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Λάβετε βοήθεια<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb
index 84a979ce..2c80ade 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Search</translation>
 <translation id="1384704387250346179">Translate image with Google Lens <ph name="BEGIN_NEW" />New<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Active <ph name="LAST_UPDATED" /> days ago</translation>
+<translation id="1390418506739274310">You may see the history from other apps that open links in Chrome. Your Google Account may have other forms of browsing history at <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">To continue, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> will share your name, email address and profile picture with this site. See this site's <ph name="BEGIN_LINK1" />Terms of Service<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096">Search with <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Dark theme</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">URLs that you visit are sent to Google to predict what sites you might visit next and to show you additional info about the page that you're visiting</translation>
 <translation id="3026955690410463085">Include link</translation>
 <translation id="3027644380269727216">Based on your activity on a site. This setting is on.</translation>
+<translation id="3027950907978057636">From <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">No preloading</translation>
 <translation id="3029704984691124060">Passphrases do not match</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Get help<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_es-419.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_es-419.xtb
index 498485a..eddc7508 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_es-419.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_es-419.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Si también guardas tus favoritos en tu Cuenta de Google, puedes realizar un seguimiento de precios de productos en Chrome y recibir notificaciones cuando haya reducciones de los precios</translation>
 <translation id="3227557059438308877">Google Chrome como llave de seguridad</translation>
 <translation id="3232293466644486101">Borrar datos de navegación…</translation>
+<translation id="3232459301230493791">Se borraron <ph name="TAB_COUNT" /> pestañas</translation>
 <translation id="3232754137068452469">Aplicación web</translation>
 <translation id="3236059992281584593">1 minuto restante</translation>
 <translation id="3237087289225714896">Precarga estándar:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Desbloquea la pantalla para ver tu contraseña</translation>
 <translation id="5517095782334947753">Tienes favoritos, historial, contraseñas y otras opciones de configuración de <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Se bloqueó el redireccionamiento</translation>
+<translation id="5526281268548144413">No se pueden cerrar en varias ventanas</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Hace # min}other{Hace # min}}</translation>
 <translation id="5548606607480005320">Verificación de seguridad</translation>
 <translation id="5554520618550346933">Cuando usas una contraseña, Chrome te advierte si se publicó en línea. Cuando lo haces, se encriptan tus contraseñas y nombres de usuario para que nadie, ni siquiera Google, pueda leer esta información.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Opcional</translation>
 <translation id="7762668264895820836">Tarjeta SD <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Agregar dirección</translation>
+<translation id="776533689993750361">Se borró <ph name="TAB_COUNT" /> pestaña</translation>
 <translation id="7772032839648071052">Confirmar frase de contraseña</translation>
 <translation id="7772375229873196092">Cerrar <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" /> y <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> más}other{<ph name="PAYMENT_METHOD_PREVIEW" /> y <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> más}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_et.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_et.xtb
index fb8c94e..042caea4 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_et.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_et.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Otsi</translation>
 <translation id="1384704387250346179">Tõlgi pilt Google Lensiga <ph name="BEGIN_NEW" />Uus<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Aktiivne <ph name="LAST_UPDATED" /> päeva tagasi</translation>
+<translation id="1390418506739274310">Võite näha ajalugu muudest rakendustest, mis avavad linke Chrome'is. Aadressil <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> võib teie Google'i kontol olla muus vormis sirvimisajalugu.</translation>
 <translation id="13931502444227376">Jätkamiseks jagab <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> selle saidiga teie nime, e-posti aadressi ja profiilipilti. Vaadake selle saidi <ph name="BEGIN_LINK1" />teenusetingimusi<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096">Otsi teenusega <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Tume teema</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Teie külastatavad URL-id saadetakse Google'ile, et prognoosida, milliseid saite võiksite järgmisena külastada, ja pakkuda lisateavet lehe kohta, mida külastate</translation>
 <translation id="3026955690410463085">Link on kaasatud</translation>
 <translation id="3027644380269727216">Põhinevad teie tegevusel konkreetsel saidil. See seade on sisse lülitatud.</translation>
+<translation id="3027950907978057636">Rakendusest <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Eellaadimine puudub</translation>
 <translation id="3029704984691124060">Paroolid ei ühti</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Küsige abi<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_eu.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_eu.xtb
index 7912a8e..56c0ae9e 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_eu.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_eu.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Era berean, laster-markak Google-ko kontuan gordetzen badituzu, Chrome-n produktuen prezioen jarraipena egin ahal izango duzu, eta prezioak jaisten direnean jakinarazpenak jaso</translation>
 <translation id="3227557059438308877">Erabili Google Chrome segurtasun-giltza gisa</translation>
 <translation id="3232293466644486101">Ezabatu arakatze-datuak…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> fitxa ezabatu dira</translation>
 <translation id="3232754137068452469">Sareko aplikazioa</translation>
 <translation id="3236059992281584593">Minutu bat gelditzen da</translation>
 <translation id="3237087289225714896">Aurrez kargatzeko modu arrunta:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Desblokeatu pasahitza ikusteko</translation>
 <translation id="5517095782334947753"><ph name="FROM_ACCOUNT" /> kontuko laster-markak, historia, pasahitzak eta beste ezarpen batzuk dituzu.</translation>
 <translation id="5524843473235508879">Birbideratzea blokeatu da.</translation>
+<translation id="5526281268548144413">Ezin dira itxi leiho batean baino gehiagotan</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Duela # minutu}other{Duela # minutu}}</translation>
 <translation id="5548606607480005320">Segurtasun-egiaztapena</translation>
 <translation id="5554520618550346933">Pasahitz bat erabiltzen duzunean, Chrome-k sarean argitaratu den ala ez jakinarazten dizu. Horretarako, pasahitzak eta erabiltzaile-izenak enkriptatzen ditu inork irakurri ezin ditzan, ezta Google-k ere.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Aukerakoa</translation>
 <translation id="7762668264895820836"><ph name="SD_CARD_NUMBER" />. SD txartela</translation>
 <translation id="7764225426217299476">Gehitu helbidea</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> fitxa ezabatu da</translation>
 <translation id="7772032839648071052">Berretsi pasaesaldia</translation>
 <translation id="7772375229873196092">Itxi <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" /> eta beste <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" /> eta beste <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fa.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fa.xtb
index a48c1a4..afe7be2 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fa.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fa.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">جستجو</translation>
 <translation id="1384704387250346179">‏ترجمه تصویر با «لنز Google» <ph name="BEGIN_NEW" />جدید<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">آخرین فعالیت: <ph name="LAST_UPDATED" /> روز قبل</translation>
+<translation id="1390418506739274310">‏ممکن است سابقه را از برنامه‌های دیگری که پیوندها را در Chrome باز می‌کنند مشاهده کنید. ممکن است «حساب Google» شما انواع دیگری از سابقه مرور در <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> داشته باشد.</translation>
 <translation id="13931502444227376">برای ادامه دادن، <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> نام، نشانی ایمیل، و عکس نمایه‌تان را با این سایت هم‌رسانی خواهد کرد. <ph name="BEGIN_LINK1" />شرایط خدمات<ph name="END_LINK1" /> این سایت را ببینید.</translation>
 <translation id="1397811292916898096">جستجو با <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">زمینه تاریک</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">‏نشانی‌های وبی که بازدید می‌کنید به Google ارسال می‌شود تا پیش‌بینی شود ممکن است بعداً از چه سایت‌هایی بازدید کنید و همچنین اطلاعات بیشتری درباره صفحه‌ای که بازدید می‌کنید به شما نشان داده می‌شود</translation>
 <translation id="3026955690410463085">لحاظ کردن پیوند</translation>
 <translation id="3027644380269727216">براساس فعالیت شما در سایت. این تنظیم روشن است.</translation>
+<translation id="3027950907978057636">از <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">گزینه پیش‌بارگذاری وجود ندارد</translation>
 <translation id="3029704984691124060">عبارت‌های عبور مطابقت ندارند</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />دریافت راهنمایی<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fi.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fi.xtb
index 6e54241..2a62d45 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fi.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fi.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Haku</translation>
 <translation id="1384704387250346179">Käännä kuva Google Lensilla <ph name="BEGIN_NEW" />Uusi<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Aktiivinen <ph name="LAST_UPDATED" /> päivää sitten</translation>
+<translation id="1390418506739274310">Saatat nähdä muiden sellaisten sovellusten historian, jotka avaavat linkkejä Chromessa. Google-tililläsi voi olla muita selaushistoriatietoja osoitteessa <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Jos jatkat, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> jakaa nimesi, sähköpostiosoitteesi, osoitteesi ja profiilikuvasi tälle sivustolle. Katso sivuston <ph name="BEGIN_LINK1" />käyttöehdot<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096">Hae hakukoneella <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Tumma teema</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Avaamasi URL-osoitteet lähetetään Googlelle, jotta seuraavaksi mahdollisesti avaamasi sivustot voidaan ennakoida, ja sivusta voidaan näyttää lisätietoa</translation>
 <translation id="3026955690410463085">Sisällytä linkki</translation>
 <translation id="3027644380269727216">Perustuu toimintaasi sivustolla. Tämä asetus on päällä.</translation>
+<translation id="3027950907978057636">Lähde: <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Ei esilatausta</translation>
 <translation id="3029704984691124060">Tunnuslauseet eivät vastaa toisiaan.</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Tutustu ohjeisiin<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">Jos tallennat kirjanmerkit myös Google-tilillesi, voit seurata tuotteiden hintoja Chromessa ja saada ilmoituksen, kun hinta laskee</translation>
 <translation id="3227557059438308877">Google Chrome suojausavaimena</translation>
 <translation id="3232293466644486101">Poista selausdata…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> välilehteä poistettu</translation>
 <translation id="3232754137068452469">Verkkosovellus</translation>
 <translation id="3236059992281584593">1 minuutti jäljellä</translation>
 <translation id="3237087289225714896">Vakioesilataus:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">Avaa lukitus nähdäksesi salasanan</translation>
 <translation id="5517095782334947753">Tililläsi <ph name="FROM_ACCOUNT" /> on kirjanmerkkejä, salasanoja ja muita asetuksia.</translation>
 <translation id="5524843473235508879">Uudelleenohjaus estetty</translation>
+<translation id="5526281268548144413">Ei voi sulkea useista ikkunoista</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# min sitten}other{# min sitten}}</translation>
 <translation id="5548606607480005320">Turvatarkistus</translation>
 <translation id="5554520618550346933">Kun käytät salasanaa, Chrome varoittaa, jos se on julkaistu verkossa. Tätä varten salasanat ja käyttäjänimet salataan, joten kukaan (myöskään Google) ei voi lukea niitä.</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">Valinnainen</translation>
 <translation id="7762668264895820836">SD-kortti <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Lisää osoite</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> välilehteä poistettu</translation>
 <translation id="7772032839648071052">Vahvista tunnuslause</translation>
 <translation id="7772375229873196092">Sulje <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ja <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> muu}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ja <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> muuta}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr.xtb
index c805e2be..5cb42a2 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Si vous enregistrez également vos favoris dans votre compte Google, vous pouvez suivre le prix de produits dans Chrome et être averti lorsqu'ils baissent</translation>
 <translation id="3227557059438308877">Utiliser Google Chrome comme clé de sécurité</translation>
 <translation id="3232293466644486101">Supprimer les données de navigation…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> onglets supprimés</translation>
 <translation id="3232754137068452469">Application Web</translation>
 <translation id="3236059992281584593">1 minute restante</translation>
 <translation id="3237087289225714896">Préchargement standard :</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Déverrouillez pour afficher votre mot de passe</translation>
 <translation id="5517095782334947753">Vous disposez des favoris, de l'historique, des mots de passe et d'autres paramètres du compte <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Redirection bloquée.</translation>
+<translation id="5526281268548144413">Impossible de fermer les onglets ouverts dans plusieurs fenêtres</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Il y a # min}one{Il y a # min}other{Il y a # min}}</translation>
 <translation id="5548606607480005320">Contrôle de sécurité</translation>
 <translation id="5554520618550346933">Lorsque vous utilisez un mot de passe, Chrome vous avertit s'il a été publié en ligne. Lors de cette opération, vos mots de passe et vos noms d'utilisateur sont chiffrés afin que personne ne puisse les consulter, y compris Google.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Facultatif</translation>
 <translation id="7762668264895820836">Carte SD <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Ajouter une adresse</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> onglet supprimé</translation>
 <translation id="7772032839648071052">Confirmez la phrase secrète</translation>
 <translation id="7772375229873196092">Fermer <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 et <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> de plus}one{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 et <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> de plus}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 et <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> de plus}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_gl.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_gl.xtb
index ec1cd50..5e940d9 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_gl.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_gl.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Buscar</translation>
 <translation id="1384704387250346179">Traducir imaxe con Google Lens <ph name="BEGIN_NEW" />Novo<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Dispositivo activo hai <ph name="LAST_UPDATED" />días</translation>
+<translation id="1390418506739274310">Podes ver o historial doutras aplicacións que abran ligazóns en Chrome. Ademais, a túa Conta de Google pode ter outro contido do historial de navegación en <ph name="BEGIN_LINK" />history.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Para continuar, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> compartirá o teu nome, enderezo de correo electrónico e imaxe do perfil con este sitio. Consulta as <ph name="BEGIN_LINK1" />condicións de servizo<ph name="END_LINK1" /> deste sitio.</translation>
 <translation id="1397811292916898096">Buscar con <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Tema escuro</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Os URL aos que accedas enviaranse a Google para predicir que sitios poderías visitar despois e para mostrarche información adicional sobre a páxina que esteas consultando</translation>
 <translation id="3026955690410463085">Incluír ligazón</translation>
 <translation id="3027644380269727216">En función da túa actividade nun sitio. Esta opción de configuración está activada.</translation>
+<translation id="3027950907978057636">De <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Sen precarga</translation>
 <translation id="3029704984691124060">Os contrasinais non coinciden</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Obter axuda<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_gu.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_gu.xtb
index b967899..b96532a 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_gu.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_gu.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">શોધો</translation>
 <translation id="1384704387250346179">Google Lensથી છબીનો અનુવાદ કરો <ph name="BEGIN_NEW" />નવું<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> દિવસ પહેલાં સક્રિય હતું</translation>
+<translation id="1390418506739274310">Chromeમાં અન્ય ઍપ દ્વારા ખોલવામાં આવતી લિંકનો ઇતિહાસ કદાચ તમે જોઈ શકશો. તમારા Google એકાઉન્ટમાં <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> પર બ્રાઉઝિંગ ઇતિહાસના અન્ય સ્વરૂપો હોઈ શકે છે.</translation>
 <translation id="13931502444227376">આગળ વધવા માટે, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> તમારું નામ, ઇમેઇલ ઍડ્રેસ અને પ્રોફાઇલ ફોટો આ સાઇટ સાથે શેર કરશે. આ સાઇટની <ph name="BEGIN_LINK1" />સેવાની શરતો<ph name="END_LINK1" /> જુઓ.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> વડે શોધો</translation>
 <translation id="1407069428457324124">ઘેરી થીમ</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">તમે આના પછી કઈ સાઇટની મુલાકાત લેશો તેનું પૂર્વાનુમાન લગાવવા માટે તેમજ તમે જેની મુલાકાત લઈ રહ્યાં હો તે પેજ વિશે વધારાની માહિતી તમને બતાવવા માટે, તમે જેની મુલાકાત લો છો તે URLs Googleને મોકલવામાં આવે છે</translation>
 <translation id="3026955690410463085">લિંકનો સમાવેશ કરો</translation>
 <translation id="3027644380269727216">કોઈ સાઇટ પરની તમારી પ્રવૃત્તિના આધારે. આ સેટિંગ ચાલુ છે.</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" />માંથી</translation>
 <translation id="3029276696788198026">પહેલેથી લોડ કરેલો કોઈ વિકલ્પ નથી</translation>
 <translation id="3029704984691124060">પાસફ્રેઝેસ મેળ ખાતા નથી</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />સહાય મેળવો<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hu.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hu.xtb
index 4a3057186..99a50175c 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hu.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hu.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Keresés</translation>
 <translation id="1384704387250346179">Google Lens-képfordítás <ph name="BEGIN_NEW" />Új<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> napja volt aktív</translation>
+<translation id="1390418506739274310">Előfordulhat, hogy más olyan alkalmazásokból származó előzményeket is lát, amelyek a Chrome-ban nyitják meg a linkeket. Előfordulhat, hogy a böngészési előzmények más formái még megtalálhatók Google-fiókjában a <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> webhelyen.</translation>
 <translation id="13931502444227376">A folytatáshoz a(z) <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> megosztja az Ön nevét, e-mail-címét és profilképét ezzel a webhellyel. Tekintse meg a szóban forgó webhely <ph name="BEGIN_LINK1" />általános szerződési feltételeit<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096">Keresőmotor: <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Sötét téma</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Az Ön által felkeresett URL-ek el lesznek küldve a Google-nak, hogy előrejelezzük, mely webhelyeket fogja esetleg legközelebb felkeresni, valamint hogy további információkat jelenítsünk meg az aktuálisan megnyitott oldalról.</translation>
 <translation id="3026955690410463085">Link hozzáadása</translation>
 <translation id="3027644380269727216">A webhelyen végzett tevékenységei alapján. Ez a beállítás be van kapcsolva.</translation>
+<translation id="3027950907978057636">Innen: <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Nincs előtöltés</translation>
 <translation id="3029704984691124060">Az összetett jelszavak nem egyeznek</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Kérjen segítséget<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hy.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hy.xtb
index 56bc052..d02c73d 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hy.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hy.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Պահելով էջանիշները Google հաշվում՝ դուք կարող եք հետագծել ապրանքների գները Chrome-ում և ստանալ զեղչերի մասին ծանուցումներ</translation>
 <translation id="3227557059438308877">Google Chrome-ը որպես անվտանգության բանալի</translation>
 <translation id="3232293466644486101">Ջնջել այցելությունների պատմությունը…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> ներդիր ջնջվեց</translation>
 <translation id="3232754137068452469">Վեբ ծրագիր</translation>
 <translation id="3236059992281584593">Մնացել է 1 րոպե</translation>
 <translation id="3237087289225714896">Սովորական նախաբեռնում՝</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Գաղտնաբառը տեսնելու համար ապակողպեք էկրանը</translation>
 <translation id="5517095782334947753">Դուք էջանիշներ, պատմություն, գաղտնաբառեր և այլ կարգավորումներ ունեք <ph name="FROM_ACCOUNT" /> հաշվից:</translation>
 <translation id="5524843473235508879">Վերահասցեավորումն արգելափակված է:</translation>
+<translation id="5526281268548144413">Հնարավոր չէ փակել ներդիրները, որոնք բացված են մեկից ավելի պատուհանում</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# ր առաջ}one{# ր առաջ}other{# ր առաջ}}</translation>
 <translation id="5548606607480005320">Անվտանգության ստուգում</translation>
 <translation id="5554520618550346933">Երբ գաղտնաբառ եք օգտագործում, Chrome-ը զգուշացնում է ձեզ, եթե այն հրապարակվել է համացանցում։ Այդ ժամանակ ձեր գաղտնաբառերը և օգտանունները գաղտնագրվում են, այնպես որ ոչ ոք, այդ թվում՝ Google-ը, չի կարող կարդալ դրանք։</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Կամընտիր</translation>
 <translation id="7762668264895820836">SD քարտ <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Ավելացնել հասցե</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> ներդիր ջնջվեց</translation>
 <translation id="7772032839648071052">Հաստատեք անցաբառը</translation>
 <translation id="7772375229873196092">Փակել <ph name="APP_NAME" />-ը</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ու վճարման ևս <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> եղանակ}one{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ու վճարման ևս <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> եղանակ}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ու վճարման ևս <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> եղանակ}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_id.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_id.xtb
index f3faf55..d5cc5a2 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_id.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_id.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Telusuri</translation>
 <translation id="1384704387250346179">Terjemahkan gambar dengan Google Lens <ph name="BEGIN_NEW" />Baru<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Aktif <ph name="LAST_UPDATED" /> hari lalu</translation>
+<translation id="1390418506739274310">Anda mungkin melihat histori dari aplikasi lain yang membuka link di Chrome. Akun Google Anda mungkin memiliki bentuk histori penjelajahan lainnya di <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Untuk melanjutkan, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> akan membagikan nama, alamat email, dan foto profil Anda ke situs ini. Lihat <ph name="BEGIN_LINK1" />persyaratan layanan<ph name="END_LINK1" /> situs ini.</translation>
 <translation id="1397811292916898096">Telusuri dengan <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Tema gelap</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">URL yang Anda buka akan dikirim ke Google untuk memprediksi situs yang mungkin Anda buka berikutnya dan menampilkan info tambahan tentang halaman yang sedang Anda buka</translation>
 <translation id="3026955690410463085">Sertakan link</translation>
 <translation id="3027644380269727216">Berdasarkan aktivitas Anda di situs. Setelan ini aktif.</translation>
+<translation id="3027950907978057636">Dari <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Tidak ada pramuat</translation>
 <translation id="3029704984691124060">Frasa sandi tidak cocok</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Dapatkan bantuan<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb
index 24cdf4c..f85d122 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Cerca</translation>
 <translation id="1384704387250346179">Traduci l'immagine con Google Lens <ph name="BEGIN_NEW" />Novità<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Attivo <ph name="LAST_UPDATED" /> giorni fa</translation>
+<translation id="1390418506739274310">Potresti vedere la cronologia di altre app che aprono link in Chrome. Il tuo Account Google potrebbe avere altre forme di cronologia di navigazione all'indirizzo <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Per continuare, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> condividerà il tuo nome, il tuo indirizzo email e l'immagine del tuo profilo con questo sito. Vedi i <ph name="BEGIN_LINK1" />Termini di servizio<ph name="END_LINK1" /> di questo sito.</translation>
 <translation id="1397811292916898096">Cerca con <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Tema scuro</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Gli URL che visiti vengono inviati a Google per prevedere quali siti potresti visitare in futuro e per mostrarti informazioni aggiuntive sulla pagina che stai visitando</translation>
 <translation id="3026955690410463085">Includi link</translation>
 <translation id="3027644380269727216">In base alla tua attività svolta su un sito. Questa impostazione è attiva.</translation>
+<translation id="3027950907978057636">Da <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Nessun precaricamento</translation>
 <translation id="3029704984691124060">Le passphrase non corrispondono</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Richiedi assistenza<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ja.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ja.xtb
index 8eaedce4..1751658 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ja.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ja.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">検索</translation>
 <translation id="1384704387250346179">Google レンズで画像を翻訳 <ph name="BEGIN_NEW" />New<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">最終同期: <ph name="LAST_UPDATED" /> 日前</translation>
+<translation id="1390418506739274310">Chrome でリンクを開く他のアプリの履歴が表示されることがあります。お使いの Google アカウントの <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> に、他の形式の閲覧履歴が記録されている場合があります。</translation>
 <translation id="13931502444227376">続行すると、<ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> からこのサイトに名前、メールアドレス、プロフィール画像が共有されます。このサイトの<ph name="BEGIN_LINK1" />利用規約<ph name="END_LINK1" />を確認してください。</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> で検索</translation>
 <translation id="1407069428457324124">ダークモード</translation>
@@ -390,6 +391,7 @@
 <translation id="3003253259757197230">アクセスした URL が Google に送信され、次にアクセスするサイトの予測と、アクセスしているページに関する追加情報の表示が行われます</translation>
 <translation id="3026955690410463085">リンクを含める</translation>
 <translation id="3027644380269727216">ユーザーのウェブサイト上でのアクティビティに基づいて提案されます。この設定は有効になっています。</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" /> から</translation>
 <translation id="3029276696788198026">プリロードなし</translation>
 <translation id="3029704984691124060">パスフレーズが一致しません</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />ヘルプ<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ka.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ka.xtb
index 9607f2c4..a1b08cd 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ka.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ka.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">ძიება</translation>
 <translation id="1384704387250346179">თარგმნეთ სურათი Google Lens-ით <ph name="BEGIN_NEW" />სიახლე<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">აქტიური იყო <ph name="LAST_UPDATED" /> დღის წინ</translation>
+<translation id="1390418506739274310">ისტორიის ნახვას შეძლებთ ნებისმიერი სხვა აპიდან, რომელიც ბმულებს Chrome-ში ხსნის. თქვენს Google ანგარიშში შეიძლება ინახებოდეს სხვა ტიპის დათვალიერების ისტორიაც, რომელიც ხელმისაწვდომია მისამართზე <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">გასაგრძელებლად <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> ამ საიტს გაუზიარებს თქვენს სახელს, ელფოსტის მისამართსა და პროფილის სურათს. გაეცანით ამ საიტის <ph name="BEGIN_LINK1" />მომსახურების პირობებს<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" />-ით ძიება</translation>
 <translation id="1407069428457324124">მუქი თემა</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">თქვენ მიერ მონახულებული URL-ები ეგზავნება Google-ს იმის პროგნოზირებისთვის, თუ რომელი საიტების მონახულებას მოისურვებთ შემდგომში, ასევე, თქვენ მიერ მონახულებული გვერდის შესახებ დამატებითი ინფორმაციის საჩვენებლად</translation>
 <translation id="3026955690410463085">ბმულის დართვა</translation>
 <translation id="3027644380269727216">ეფუძნება თქვენს აქტივობას საიტზე. ეს პარამეტრი ჩართულია.</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" />-დან</translation>
 <translation id="3029276696788198026">წინასწარ ჩატვირთვის გარეშე</translation>
 <translation id="3029704984691124060">კოდური ფრაზები ერთმანეთს არ ემთხვევა</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />მიიღეთ დახმარება<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_kk.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_kk.xtb
index 0125bbf..8f4658c 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_kk.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_kk.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Іздеу</translation>
 <translation id="1384704387250346179">Google Lens арқылы аудару <ph name="BEGIN_NEW" />Жаңа<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> күн бұрын қосылған.</translation>
+<translation id="1390418506739274310">Сілтемелерді Chrome-нан ашатын кейбір қолданбалардың тарихы көрсетілуі ықтимал. <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> мекенжайында Google аккаунтымен браузерді қолдану тарихының басқа түрлері болуы мүмкін.</translation>
 <translation id="13931502444227376">Жалғастыру үшін <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> аты-жөніңізді, электрондық мекенжайыңызды және профиль суретіңізді осы сайтпен бөліседі. Сайттың <ph name="BEGIN_LINK1" />қызмет көрсету шарттарын<ph name="END_LINK1" /> қараңыз.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> арқылы іздеу</translation>
 <translation id="1407069428457324124">Қараңғы режим</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Сіз кірген URL мекенжайлары Google-ға жіберіледі. Осылайша Google келесіде қандай сайтқа кіруіңіз мүмкін екендігін болжай алады және сіз кіріп жатқан бет туралы қосымша ақпаратты көрсете алады.</translation>
 <translation id="3026955690410463085">Сілтеме қосу</translation>
 <translation id="3027644380269727216">Сайттағы әрекетіңізге негізделген. Бұл параметр қосулы.</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" /> қолданбасынан</translation>
 <translation id="3029276696788198026">Алдын ала жүктемеу</translation>
 <translation id="3029704984691124060">Құпия фразалар сәйкес келмейді</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Анықтама алу<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_kn.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_kn.xtb
index b53d423a..5270260 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_kn.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_kn.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">ಹುಡುಕಿ</translation>
 <translation id="1384704387250346179">Google Lens ಬಳಸಿ ಚಿತ್ರವನ್ನು ಅನುವಾದಿಸಿ <ph name="BEGIN_NEW" />ಹೊಸತು<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> ದಿನಗಳ ಹಿಂದೆ ಸಕ್ರಿಯ</translation>
+<translation id="1390418506739274310">Chrome ನಲ್ಲಿ ಇತರ ಆ್ಯಪ್‌ಗಳಿಂದ ತೆರೆಯಲಾದ ಲಿಂಕ್‌ಗಳ ಇತಿಹಾಸವನ್ನು ನೀವು ನೋಡಲು ಸಾಧ್ಯವಾಗಬಹುದು. ನಿಮ್ಮ Google ಖಾತೆಯು <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> ನಲ್ಲಿ ಇತರ ವಿಧಗಳ ಬ್ರೌಸಿಂಗ್ ಇತಿಹಾಸವನ್ನು ಹೊಂದಿರಬಹುದು.</translation>
 <translation id="13931502444227376">ಮುಂದುವರಿಸಲು, ಈ ಸೈಟ್‌ನ ಜೊತೆಗೆ <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> ನಿಮ್ಮ ಹೆಸರು, ಇಮೇಲ್ ವಿಳಾಸ ಮತ್ತು ಪ್ರೊಫೈಲ್ ಚಿತ್ರವನ್ನು ಹಂಚಿಕೊಳ್ಳುತ್ತದೆ. ಈ ಸೈಟ್‌ನ <ph name="BEGIN_LINK1" />ಸೇವಾ ನಿಯಮಗಳನ್ನು<ph name="END_LINK1" /> ನೋಡಿ.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> ಮೂಲಕ ಹುಡುಕಿ</translation>
 <translation id="1407069428457324124">ಡಾರ್ಕ್ ಥೀಮ್</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">ನೀವು ಮುಂದೆ ಯಾವ ಸೈಟ್‌ಗಳಿಗೆ ಭೇಟಿ ನೀಡಬಹುದು ಎಂಬುದನ್ನು ಊಹಿಸಲು ಮತ್ತು ನೀವು ಭೇಟಿ ನೀಡುವ ಪುಟದ ಕುರಿತಾದ ಹೆಚ್ಚುವರಿ ಮಾಹಿತಿಯನ್ನು ನಿಮಗೆ ತೋರಿಸಲು ನೀವು ಭೇಟಿ ನೀಡುವ URL ಗಳನ್ನು Google ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ</translation>
 <translation id="3026955690410463085">ಲಿಂಕ್ ಸೇರಿಸಿ</translation>
 <translation id="3027644380269727216">ಸೈಟ್‌ ಒಂದರಲ್ಲಿನ ನಿಮ್ಮ ಚಟುವಟಿಕೆಯನ್ನು ಆಧರಿಸಿ. ಈ ಸೆಟ್ಟಿಂಗ್ ಆನ್ ಆಗಿದೆ.</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" /> ನಿಂದ</translation>
 <translation id="3029276696788198026">ಮುಂಚಿತವಾಗಿ ಲೋಡ್ ಮಾಡುವಿಕೆ ಇಲ್ಲ</translation>
 <translation id="3029704984691124060">ಪಾಸ್‌ಫ್ರೇಸ್‌ಗಳು ಹೊಂದಿಕೆಯಾಗುವುದಿಲ್ಲ</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />ಸಹಾಯ ಪಡೆಯಿರಿ<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ko.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ko.xtb
index 2131f3d..e7181ea 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ko.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ko.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">검색</translation>
 <translation id="1384704387250346179">Google 렌즈로 이미지 번역 <ph name="BEGIN_NEW" />New<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" />일 전 동기화됨</translation>
+<translation id="1390418506739274310">Chrome에서 링크를 열어 다른 앱의 방문 기록을 볼 수 있습니다. Google 계정의 내 활동(<ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />)에는 방문 기록이 다른 형식으로 남아 있을 수도 있습니다.</translation>
 <translation id="13931502444227376">계속하려면 <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" />에서 내 이름, 이메일 주소, 프로필 사진을 이 사이트와 공유해야 합니다. 사이트의 <ph name="BEGIN_LINK1" />서비스 약관<ph name="END_LINK1" />을 확인하세요.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" />에서 검색</translation>
 <translation id="1407069428457324124">어두운 테마</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">다음에 방문할 사이트를 예측하고 현재 방문 중인 페이지에 관한 추가 정보를 표시하기 위해 내가 방문한 URL이 Google에 전송됩니다.</translation>
 <translation id="3026955690410463085">링크 포함</translation>
 <translation id="3027644380269727216">사이트 내 활동을 기반으로 추천됩니다. 이 설정을 사용하고 있습니다.</translation>
+<translation id="3027950907978057636">출처: <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">미리 로드 안함</translation>
 <translation id="3029704984691124060">암호가 일치하지 않습니다.</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />도움 받기<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ky.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ky.xtb
index caf8048..1ef8adf 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ky.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ky.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Издөө</translation>
 <translation id="1384704387250346179">Google Lens аркылуу которуу <ph name="BEGIN_NEW" />Жаңы<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> күн мурун жигердүү болгон</translation>
+<translation id="1390418506739274310">Chrome'до шилтемелерди ачкан башка колдонмолордун таржымалын көрө аласыз. Google аккаунтуңузда көрүлгөн вебсайттардын башка түрлөрү <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> дарегинде болушу мүмкүн.</translation>
 <translation id="13931502444227376">Улантуу үчүн <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> аты-жөнүңүздү, электрондук почтаңыздын дарегин жана профилиңиздин сүрөтүн ушул сайт менен бөлүшөт. Бул сайттын <ph name="BEGIN_LINK1" />тейлөө шарттарын<ph name="END_LINK1" /> карап көрүңүз.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> аркылуу издөө</translation>
 <translation id="1407069428457324124">Караңгы тема</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Кийин кайсы сайттарга кирериңизди болжолдоо жана өткүңүз келген барак жөнүндө кошумча маалыматты көрсөтүү үчүн сиз баш баккан URL даректери Google'га жөнөтүлүп турат</translation>
 <translation id="3026955690410463085">Шилтеме кошуу</translation>
 <translation id="3027644380269727216">Сайттагы аракеттериңиздин негизинде көрсөтүлөт. Бул параметр күйүк.</translation>
+<translation id="3027950907978057636">Кимден: <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Алдын ала жүктөлбөйт</translation>
 <translation id="3029704984691124060">Купуя сөз айкаштары дал келген жок</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Жардам алыңыз<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lo.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lo.xtb
index cf7df35..c3ff082 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lo.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lo.xtb
@@ -428,6 +428,7 @@
 <translation id="3226612997184048185">ນອກຈາກນັ້ນ, ຫາກທ່ານບັນທຶກບຸກມາກຂອງທ່ານໃນບັນຊີ Google ຂອງທ່ານ, ທ່ານສາມາດຕິດຕາມລາຄາຜະລິດຕະພັນໃນ Chrome ແລະ ຮັບການແຈ້ງເຕືອນເມື່ອລາຄາຫຼຸດລົງໄດ້</translation>
 <translation id="3227557059438308877">Google Chrome ເປັນກະແຈຄວາມປອດໄພ</translation>
 <translation id="3232293466644486101">ລຶບຂໍ້ມູນການທ່ອງເວັບ…</translation>
+<translation id="3232459301230493791">ລຶບ <ph name="TAB_COUNT" /> ແຖບແລ້ວ</translation>
 <translation id="3232754137068452469">ແອັບຂອງເວັບ</translation>
 <translation id="3236059992281584593">ຍັງເຫຼືອ 1 ນາທີ</translation>
 <translation id="3237087289225714896">ການໂຫຼດກ່ອນລ່ວງໜ້າແບບມາດຕະຖານ:</translation>
@@ -866,6 +867,7 @@
 <translation id="5515439363601853141">ປົດລັອກເພື່ອເບິ່ງລະຫັດຜ່ານຂອງທ່ານ</translation>
 <translation id="5517095782334947753">ທ່ານມີບຸກມາກ, ປະຫວັດ, ລະຫັດຜ່ານ ແລະ ການຕັ້ງຄ່າອື່ນຈາກ <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">ບລັອກການປ່ຽນເສັ້ນທາງແລ້ວ.</translation>
+<translation id="5526281268548144413">ບໍ່ສາມາດປິດຂ້າມຫຼາຍໜ້າຈໍໄດ້</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# ນທ ກ່ອນ}other{# ນທ ກ່ອນ}}</translation>
 <translation id="5548606607480005320">ການກວດສອບຄວາມປອດໄພ</translation>
 <translation id="5554520618550346933">ເມື່ອທ່ານໃຊ້ລະຫັດຜ່ານ, Chrome ຈະເຕືອນທ່ານຫາກມີການເຜີຍແຜ່ລະຫັດຜ່ານທາງອອນລາຍ. ໃນເວລາກວດສອບ, ລະຫັດຜ່ານ ແລະ ຊື່ຜູ້ໃຊ້ຂອງທ່ານຈະຖືກເຂົ້າລະຫັດໄວ້, ເພື່ອບໍ່ໃຫ້ໃຜກໍຕາມສາມາດອ່ານຂໍ້ມູນດັ່ງກ່າວໄດ້, ຮວມທັງ Google ນຳ.</translation>
@@ -1343,6 +1345,7 @@
 <translation id="7759809451544302770">ທາງ​ເລືອກ</translation>
 <translation id="7762668264895820836">SD ກາດ <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">ເພີ່ມ​ທີ່​ຢູ່</translation>
+<translation id="776533689993750361">ລຶບ <ph name="TAB_COUNT" /> ແຖບແລ້ວ</translation>
 <translation id="7772032839648071052">ຢືນ​ຢັນວະລີຜ່ານ</translation>
 <translation id="7772375229873196092">ປິດ <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ແລະ ອີກ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ວິທີການຈ່າຍເງິນ}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ແລະ ອີກ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ວິທີການຈ່າຍເງິນ}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lt.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lt.xtb
index fbc7cc0..79abe96 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lt.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lt.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Ieškoti</translation>
 <translation id="1384704387250346179">Versti vaizdą su „Google Lens“ <ph name="BEGIN_NEW" />Nauja<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Aktyvus prieš <ph name="LAST_UPDATED" /> d.</translation>
+<translation id="1390418506739274310">Galite matyti kitų programų, kurios atidaro nuorodas naršyklėje „Chrome“, istoriją. „Google“ paskyroje gali būti kito tipo naršymo istorijos, kuri pasiekiama adresu <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Kad būtų galima tęsti, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> bendrins jūsų vardą ir pavardę, el. pašto adresą ir profilio nuotrauką su šia svetaine. Žr. svetainės <ph name="BEGIN_LINK1" />paslaugų teikimo sąlygas<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096">Paieška su „<ph name="PRODUCT_NAME" />“</translation>
 <translation id="1407069428457324124">Tamsioji tema</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">URL, kuriais lankotės, siunčiami „Google“, kad numatytų, kokiose svetainėse galite vėliau apsilankyti, ir parodytų papildomos informacijos apie puslapį, kuriame lankotės</translation>
 <translation id="3026955690410463085">Įtraukti nuorodą</translation>
 <translation id="3027644380269727216">Pagrįsta jūsų veikla svetainėje. Šis nustatymas įjungtas.</translation>
+<translation id="3027950907978057636">Iš „<ph name="APP_LABEL" />“</translation>
 <translation id="3029276696788198026">Neįkelti iš anksto</translation>
 <translation id="3029704984691124060">Slaptafrazės neatitinka</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Gaukite pagalbos<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">Jei taip pat išsaugosite žymes „Google“ paskyroje, galėsite stebėti produktų kainas naršyklėje „Chrome“ ir gauti pranešimą, kai kaina sumažės</translation>
 <translation id="3227557059438308877">„Google Chrome“ kaip saugos raktas</translation>
 <translation id="3232293466644486101">Ištrinti naršymo duomenis…</translation>
+<translation id="3232459301230493791">Ištrinta skirtukų: <ph name="TAB_COUNT" /></translation>
 <translation id="3232754137068452469">Žiniatinklio programa</translation>
 <translation id="3236059992281584593">Liko 1 min.</translation>
 <translation id="3237087289225714896">Įprastas išankstinis įkėlimas:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">Atrakinkite, kad galėtumėte peržiūrėti slaptažodį</translation>
 <translation id="5517095782334947753">Turite žymių, istorijos duomenų, slaptažodžių ir kitų nustatymų iš <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Peradresavimas užblokuotas.</translation>
+<translation id="5526281268548144413">Negalima uždaryti keliuose languose</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Prieš # minutę}one{Prieš # minutę}few{Prieš # minutes}many{Prieš # minutės}other{Prieš # minučių}}</translation>
 <translation id="5548606607480005320">Saugos patikra</translation>
 <translation id="5554520618550346933">Kai naudojate slaptažodį, „Chrome“ įspėja jus, jei jis paskelbtas internete. Tai atliekant, slaptažodžiai ir naudotojų vardai užšifruojami, kad niekas negalėtų jų perskaityti, įskaitant „Google“.</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">Pasirenkama</translation>
 <translation id="7762668264895820836">SD kortelė Nr. <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Pridėti adresą</translation>
+<translation id="776533689993750361">Ištrinta skirtukų: <ph name="TAB_COUNT" /></translation>
 <translation id="7772032839648071052">Patvirtinti slaptafrazę</translation>
 <translation id="7772375229873196092">Uždaryti „<ph name="APP_NAME" />“</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}one{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}few{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}many{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lv.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lv.xtb
index 271eb75..f20ef253 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lv.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lv.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Meklēt</translation>
 <translation id="1384704387250346179">Tulkot attēlu ar Google Lens <ph name="BEGIN_NEW" />Jaunums<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Aktīvs pirms <ph name="LAST_UPDATED" /> dienām</translation>
+<translation id="1390418506739274310">Var būt redzama vēsture no citām lietotnēm, kuru saites tiek atvērtas pārlūkā Chrome. Jūsu Google kontam var būt citu veidu pārlūkošanas vēstures dati vietnē <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Lai turpinātu, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> kopīgos jūsu vārdu, e-pasta adresi un profila attēlu ar šo vietni. Skatiet šīs vietnes <ph name="BEGIN_LINK1" />pakalpojumu sniegšanas noteikumus<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096">Meklēt, izmantojot meklētājprogramu <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Tumšais motīvs</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Uzņēmumam Google tiek sūtīti jūsu apmeklētie vietrāži URL, lai prognozētu, kuras vietnes jūs varētu apmeklēt turpmāk, un rādītu jums papildinformāciju par apmeklēto lapu.</translation>
 <translation id="3026955690410463085">Iekļaut saiti</translation>
 <translation id="3027644380269727216">Pamatojoties uz jūsu darbībām vietnē. Šis iestatījums ir ieslēgts.</translation>
+<translation id="3027950907978057636">No <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Nav iepriekšējas ielādes</translation>
 <translation id="3029704984691124060">Ieejas frāzes neatbilst.</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Saņemt palīdzību<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">Ja saglabāsiet grāmatzīmes arī Google kontā, varēsiet izsekot produktu cenām pārlūkā Chrome un saņemt paziņojumus par cenu kritumiem.</translation>
 <translation id="3227557059438308877">Pārlūka Google Chrome izmantošana drošības atslēgas vietā</translation>
 <translation id="3232293466644486101">Dzēst pārlūkošanas datus…</translation>
+<translation id="3232459301230493791">Izdzēsta(-as) <ph name="TAB_COUNT" /> cilne(-es).</translation>
 <translation id="3232754137068452469">Tīmekļa lietotne</translation>
 <translation id="3236059992281584593">Atlikusi 1 min</translation>
 <translation id="3237087289225714896">Standarta iepriekšēja ielāde:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">Atbloķējiet, lai skatītu paroli</translation>
 <translation id="5517095782334947753">Ir pieejamas grāmatzīmes, vēsture, paroles un citi iestatījumi no konta <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Novirzīšana ir bloķēta.</translation>
+<translation id="5526281268548144413">Cilnes nevar aizvērt vairākos logos.</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Pirms # min}zero{Pirms # min}one{Pirms # min}other{Pirms # min}}</translation>
 <translation id="5548606607480005320">Drošības pārbaude</translation>
 <translation id="5554520618550346933">Pārlūkā Chrome tiek parādīts brīdinājums, ja izmantojat paroli, kas ir publicēta tiešsaistē. To darot, jūsu paroles un lietotājvārdi tiek šifrēti, lai neviens tos nevarētu lasīt, tostarp Google.</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">Neobligātas</translation>
 <translation id="7762668264895820836">SD karte <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Pievienot adresi</translation>
+<translation id="776533689993750361">Izdzēsta <ph name="TAB_COUNT" /> cilne.</translation>
 <translation id="7772032839648071052">Apstipriniet ieejas frāzi</translation>
 <translation id="7772375229873196092">Aizvērt <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />… un vēl <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}zero{<ph name="PAYMENT_METHOD_PREVIEW" />… un vēl <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}one{<ph name="PAYMENT_METHOD_PREVIEW" />… un vēl <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" />… un vēl <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mk.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mk.xtb
index 22f8387..5422773 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mk.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mk.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Ако ги зачувувате и вашите обележувачи во вашата сметка на Google, може да ги следите цените на производите во Chrome и да добивате известувања кога ќе се намали цената</translation>
 <translation id="3227557059438308877">Google Chrome како безбедносен клуч</translation>
 <translation id="3232293466644486101">Избришете ги податоците од прелистување…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> картички се избришани</translation>
 <translation id="3232754137068452469">Веб-апликација</translation>
 <translation id="3236059992281584593">Остана 1 минута</translation>
 <translation id="3237087289225714896">Стандардно вчитување однапред:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Отклучете за да ја прикажете лозинката</translation>
 <translation id="5517095782334947753">Имате обележувачи, историја, лозинки и други поставки од <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Пренасочувањето е блокирано.</translation>
+<translation id="5526281268548144413">Не може да се затворат во повеќе прозорци</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Пред # мин.}one{Пред # мин.}other{Пред # мин.}}</translation>
 <translation id="5548606607480005320">Безбедносна проверка</translation>
 <translation id="5554520618550346933">Кога користите лозинка, Chrome ве предупредува ако е објавена онлајн. Кога го прави ова, вашите лозинки и кориснички имиња се шифрирани така што не може да ги прочита никој, па дури ни Google.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Изборно</translation>
 <translation id="7762668264895820836">SD-картичка <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Додај адреса</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> картичка е избришана</translation>
 <translation id="7772032839648071052">Потврди лозинка</translation>
 <translation id="7772375229873196092">Затвори <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />… и уште <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}one{<ph name="PAYMENT_METHOD_PREVIEW" />… и уште <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" />… и уште <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mn.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mn.xtb
index 9de73c5..10f8697 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mn.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mn.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Хайлт</translation>
 <translation id="1384704387250346179">Google Lens-р зураг орчуул <ph name="BEGIN_NEW" />Шинэ<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> өдрийн өмнөөс идэвхтэй</translation>
+<translation id="1390418506739274310">Chrome-р холбоос нээдэг бусад аппын хөтчийн түүх танд харагдаж болно. Таны Google Бүртгэл <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> дээр өөр хэлбэрийн хөтчийн түүхтэй байж магадгүй.</translation>
 <translation id="13931502444227376">Үргэлжүүлэхийн тулд <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> таны нэр, имэйл хаяг болон профайл зургийг энэ сайттай хуваалцана. Энэ сайтын <ph name="BEGIN_LINK1" />үйлчилгээний нөхцөлийг<ph name="END_LINK1" /> харна уу.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" />-р хайх</translation>
 <translation id="1407069428457324124">Бараан загвар</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Таныг дараа ямар сайтуудад зочилж магадгүй болохыг таамаглах болон таны зочилж буй хуудасны тухай нэмэлт мэдээлэл харуулахын тулд таны зочилсон URL-уудыг Google-д илгээнэ</translation>
 <translation id="3026955690410463085">Холбоос оруулна уу</translation>
 <translation id="3027644380269727216">Таны сайт дээрх үйл ажиллагаанд тулгуурласан. Энэ тохиргоо асаалттай байна.</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" />-с</translation>
 <translation id="3029276696788198026">Урьдчилан ачаалахгүй</translation>
 <translation id="3029704984691124060">Нэвтрэх хэллэг тохирохгүй байна</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Тусламж авах<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">Хэрэв та мөн хавчуургаа Google Бүртгэлдээ хадгалдаг бол бүтээгдэхүүний үнийг Chrome-д хянаж, үнэ буурах үед мэдэгдэл авах боломжтой</translation>
 <translation id="3227557059438308877">Google Chrome-г аюулгүй байдлын түлхүүр болгох</translation>
 <translation id="3232293466644486101">Интернэтээр үзсэн өгөгдлийг устгах…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> табыг устгасан</translation>
 <translation id="3232754137068452469">Веб Апп</translation>
 <translation id="3236059992281584593">1 минут үлдсэн</translation>
 <translation id="3237087289225714896">Стандарт урьдчилан ачаалал:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">Нууц үгээ харах бол түгжээг тайлна уу</translation>
 <translation id="5517095782334947753">Танд <ph name="FROM_ACCOUNT" />-н хавчуурга, түүх, нууц үг болон бусад тохиргоо байна.</translation>
 <translation id="5524843473235508879">Дахин чиглүүлэхийг блок хийсэн.</translation>
+<translation id="5526281268548144413">Олон цонхон дээр хаалттай байж болохгүй</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# минутын өмнө}other{# минутын өмнө}}</translation>
 <translation id="5548606607480005320">Аюулгүй байдлын шалгалт</translation>
 <translation id="5554520618550346933">Таныг нууц үг ашиглах үед үүнийг онлайнд нийтэлсэн тохиолдолд Chrome танд сануулна. Үүнийг хийх үед таны нууц үг болон хэрэглэгчийн нэрийг шифрлэх бөгөөд ингэснээр Google-г оруулаад хэн ч тэдгээрийг унших боломжгүй.</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">Сонголтын</translation>
 <translation id="7762668264895820836">SD Карт <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Хаяг нэмэх</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> табыг устгасан</translation>
 <translation id="7772032839648071052">Нэвтрэх үгүүдийг баталгаажуул</translation>
 <translation id="7772375229873196092"><ph name="APP_NAME" />-г хаах</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 болон бусад <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 болон бусад <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mr.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mr.xtb
index b77133a..a57e1c2 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mr.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mr.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">तुम्ही तुमच्या Google खाते मध्ये बुकमार्कदेखील सेव्ह केले असल्यास, तुम्ही Chrome उत्पादनाच्या किमती ट्रॅक करू शकता आणि किंमत कमी झाल्यावर सूचना मिळवू शकता</translation>
 <translation id="3227557059438308877">सिक्युरिटी की म्हणून Google Chrome</translation>
 <translation id="3232293466644486101">ब्राउझिंग डेटा हटवा…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> टॅब हटवले आहेत</translation>
 <translation id="3232754137068452469">वेब अ‍ॅप</translation>
 <translation id="3236059992281584593">1 मिनिट शिल्लक</translation>
 <translation id="3237087289225714896">साधारण प्रीलोडिंग:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">तुमचा पासवर्ड पाहण्यासाठी अनलॉक करा</translation>
 <translation id="5517095782334947753">आपल्याकडे <ph name="FROM_ACCOUNT" /> मधील बुकमार्क, इतिहास, पासवर्ड आणि अन्य सेटिंग्ज आहेत.</translation>
 <translation id="5524843473235508879">रीडिरेक्‍ट ब्लॉक केले.</translation>
+<translation id="5526281268548144413">एकाहून अधिक विंडोवर बंद केले जाऊ शकत नाहीत</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# मिनिटापूर्वी}other{# मिनिटांपूर्वी}}</translation>
 <translation id="5548606607480005320">सुरक्षा तपासणी</translation>
 <translation id="5554520618550346933">तुम्ही पासवर्ड वापरता, तेव्हा तो ऑनलाइन प्रकाशित झाला असल्यास Chrome तुम्हाला चेतावणी देते. हे करत असताना, तुमचे पासवर्ड आणि वापरकर्ता नावे या गोष्टी एंक्रिप्ट केल्या जातात, जेणेकरून Google च्या समावेशासह इतर कोणीही त्या वाचू शकणार नाही.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">पर्यायी</translation>
 <translation id="7762668264895820836">SD कार्ड <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">पत्ता जोडा</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> टॅब हटवला आहे</translation>
 <translation id="7772032839648071052">सांकेतिक पासफ्रेझ निश्चित करा</translation>
 <translation id="7772375229873196092"><ph name="APP_NAME" /> बंद करा</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 आणि <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> अधिक}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 आणि <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> अधिक}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_my.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_my.xtb
index 0ce8f77..faaa93c8 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_my.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_my.xtb
@@ -428,6 +428,7 @@
 <translation id="3226612997184048185">သင့် Google Account တွင် လိပ်စာများလည်း သိမ်းထားပါက Chrome တွင် ထုတ်ကုန်ဈေးများကို ခြေရာခံနိုင်ပြီး ဈေးကျသွားပါက အကြောင်းကြားချက် ရယူနိုင်ပါသည်</translation>
 <translation id="3227557059438308877">Google Chrome ကို 'လုံခြုံရေးကီး' အဖြစ်</translation>
 <translation id="3232293466644486101">ဖွင့်ကြည့်ထားသည့်မှတ်တမ်းဒေတာကို ဖျက်ရန်…</translation>
+<translation id="3232459301230493791">တဘ် <ph name="TAB_COUNT" /> ခု ဖျက်လိုက်သည်</translation>
 <translation id="3232754137068452469">ဝဘ် အက်ပ်</translation>
 <translation id="3236059992281584593">၁ မိနစ် ကျန်သည်</translation>
 <translation id="3237087289225714896">ပုံမှန် ကြိုဖွင့်မှု-</translation>
@@ -866,6 +867,7 @@
 <translation id="5515439363601853141">သင့်စကားဝှက်ကိုကြည့်ရန် ဖွင့်ပါ</translation>
 <translation id="5517095782334947753">သင့်ထံတွင် <ph name="FROM_ACCOUNT" /> မှ စာညှပ်များ၊ မှတ်တမ်း၊ စကားဝှက်များနှင့် အခြားဆက်တင်များ ရှိပါသည်။</translation>
 <translation id="5524843473235508879">တစ်ဆင့်ပြန်ညွှန်ခြင်းကို ပိတ်ထားသည်။</translation>
+<translation id="5526281268548144413">ဝင်းဒိုးအများအပြားတွင် ပိတ်၍မရပါ</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{ပြီးခဲ့သော # မိနစ်}other{ပြီးခဲ့သော # မိနစ်}}</translation>
 <translation id="5548606607480005320">လုံခြုံရေး စစ်ဆေးမှု</translation>
 <translation id="5554520618550346933">သင်စကားဝှက်သုံးသောအခါ ၎င်းကို အွန်လိုင်းတွင် ထုတ်ဝေထားခြင်း ရှိ၊ မရှိ Chrome က သတိပေးပါသည်။ ဤသို့စစ်ဆေးသည့်အခါ သင်၏စကားဝှက်နှင့် အသုံးပြုသူအမည်များကို အသွင်ဝှက်ထားသောကြောင့် Google အပါအဝင် မည်သူမျှ ၎င်းတို့ကို ဖတ်၍မရပါ။</translation>
@@ -1342,6 +1344,7 @@
 <translation id="7759809451544302770">လိုချင်မှ လုပ်ရန်</translation>
 <translation id="7762668264895820836">SD ကတ် <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">လိပ်စာများ ထည့်သွင်းပါ</translation>
+<translation id="776533689993750361">တဘ် <ph name="TAB_COUNT" /> ခု ဖျက်လိုက်သည်</translation>
 <translation id="7772032839648071052">စကားစုဝှက်ကို အတည်ပြုရန်</translation>
 <translation id="7772375229873196092"><ph name="APP_NAME" /> ကိုပိတ်ပါ</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 နှင့် နောက်ထပ် <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ခု}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 နှင့် နောက်ထပ် <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ခု}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ne.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ne.xtb
index 891e5d14..4d49f41a 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ne.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ne.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">खोज्नुहोस्</translation>
 <translation id="1384704387250346179">Google लेन्स प्रयोग गरी फोटोमा भएका कुरा अनुवाद गर्नुहोस् <ph name="BEGIN_NEW" />नयाँ<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> दिनअघि सक्रिय</translation>
+<translation id="1390418506739274310">तपाईं Chrome मा लिंक खोल्ने अन्य एपहरूको हिस्ट्री देख्न सक्नुहुन्छ। तपाईंको Google खातामा रहेको <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> मा अन्य स्वरूपमा ब्राउजिङ हिस्ट्री सेभ गरिएको हुन सक्छ।</translation>
 <translation id="13931502444227376"><ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> ले जारी राख्ने प्रयोजनका लागि यो साइटसँग तपाईंको नाम, इमेल ठेगाना र प्रोफाइल फोटो सेयर गर्ने छ। यो साइटको <ph name="BEGIN_LINK1" />सेवाका सर्तहरू<ph name="END_LINK1" /> हेर्नुहोस्।</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> मार्फत खोज्नुहोस्</translation>
 <translation id="1407069428457324124">अँध्यारो थिम</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">तपाईंले यसपछि खोल्न सक्ने साइट पूर्वानुमान गर्ने र तपाईंले हेरिरहनुभएको पेजसम्बन्धी थप जानकारी देखाउने प्रयोजनका लागि तपाईंले खोल्ने URL हरू Google मा पठाइन्छन्</translation>
 <translation id="3026955690410463085">लिंक समावेश गर्नुहोस्</translation>
 <translation id="3027644380269727216">तपाईंले कुनै साइटमा गरेका गतिविधिका आधारमा। यो सेटिङ अन छ।</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" /> को ब्राउजिङ हिस्ट्री</translation>
 <translation id="3029276696788198026">कुनै पनि पेज प्रिलोड नगर्नुहोस्</translation>
 <translation id="3029704984691124060">पासफ्रेजहरू मेल खाँदैनन्</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />मद्दत प्राप्त गर्नुहोस्<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_no.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_no.xtb
index b70440e..78231fd 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_no.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_no.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Søk</translation>
 <translation id="1384704387250346179">Oversett bildet med Google Lens <ph name="BEGIN_NEW" />Nyhet<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Aktiv for <ph name="LAST_UPDATED" /> dager siden</translation>
+<translation id="1390418506739274310">Du kan se loggen fra andre apper som åpner linker i Chrome. Det kan hende Google-kontoen din har andre typer nettleserlogger på <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">For at du skal kunne fortsette, må <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> dele navnet ditt, e-postadressen din og profilbildet ditt med dette nettstedet. Se <ph name="BEGIN_LINK1" />vilkårene for bruk<ph name="END_LINK1" /> av dette nettstedet.</translation>
 <translation id="1397811292916898096">Søk med <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Mørkt tema</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Nettadresser du besøker, sendes til Google for å forutsi hvilke nettsteder du kanskje kommer til å besøke etterpå, og for å vise deg mer informasjon om siden du besøker</translation>
 <translation id="3026955690410463085">Inkluder link</translation>
 <translation id="3027644380269727216">Basert på aktiviteten din på et nettsted. Denne innstillingen er på.</translation>
+<translation id="3027950907978057636">Fra <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Ingen forhåndslasting</translation>
 <translation id="3029704984691124060">Passordfrasene stemmer ikke overens</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Få hjelp<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_or.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_or.xtb
index bd4adfa..f5a5646 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_or.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_or.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">ଯଦି ଆପଣ ଆପଣଙ୍କ Google ଆକାଉଣ୍ଟରେ ବୁକମାର୍କଗୁଡ଼ିକୁ ସେଭ କରନ୍ତି, ତେବେ ଆପଣ Chromeରେ ପ୍ରଡକ୍ଟ ମୂଲ୍ୟଗୁଡ଼ିକୁ ଟ୍ରାକ କରିପାରିବେ ଏବଂ ମୂଲ୍ୟ ହ୍ରାସ ହେଲେ ସୂଚନା ପାଇପାରିବେ</translation>
 <translation id="3227557059438308877">ଏକ ସୁରକ୍ଷା କୀ ଭାବେ Google Chromeର ବ୍ୟବହାର</translation>
 <translation id="3232293466644486101">ବ୍ରାଉଜିଂ ଡାଟାକୁ ଡିଲିଟ କରନ୍ତୁ…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> ଟାବକୁ ଡିଲିଟ କରାଯାଇଛି</translation>
 <translation id="3232754137068452469">ୱେବ୍ ଆପ୍</translation>
 <translation id="3236059992281584593">ଅବଶିଷ୍ଟ 1 ମିନଟ୍‌ ଅଛି</translation>
 <translation id="3237087289225714896">ଷ୍ଟାଣ୍ଡାର୍ଡ ପ୍ରିଲୋଡିଂ:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">ଆପଣଙ୍କର ପାସ୍‍ୱର୍ଡ ଦେଖିବା ପାଇଁ ଅନ୍‍ଲକ୍ କରନ୍ତୁ</translation>
 <translation id="5517095782334947753"><ph name="FROM_ACCOUNT" />ରୁ ଆପଣଙ୍କ ପାଖରେ ବୁକ୍‌ମାର୍କ, ଇତିବୃତ୍ତି, ପାସ୍‌ୱାର୍ଡ ଏବଂ ଅନ୍ୟ ସେଟିଂସ୍‌ ଅଛି।</translation>
 <translation id="5524843473235508879">ରିଡାଇରେକ୍ଟ ଅବରୋଧ କରାଯାଇଛି।</translation>
+<translation id="5526281268548144413">ଏକାଧିକ ୱିଣ୍ଡୋରେ ବନ୍ଦ କରାଯାଇପାରିବ ନାହିଁ</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# ମିନିଟ ପୂର୍ବେ}other{# ମିନିଟ ପୂର୍ବେ}}</translation>
 <translation id="5548606607480005320">ସୁରକ୍ଷା ଯାଞ୍ଚ</translation>
 <translation id="5554520618550346933">ଆପଣ ଏକ ପାସୱାର୍ଡ ବ୍ୟବହାର କରିବା ସମୟରେ, ଯଦି ଏହାକୁ ଅନଲାଇନରେ ବ୍ୟବହାର କରାଯାଇଛି ତେବେ Chrome ଆପଣଙ୍କୁ ଚେତାବନୀ ଦିଏ। ଏହା କରିବା ସମୟରେ, ଆପଣଙ୍କ ପାସୱାର୍ଡ ଏବଂ ଉପଯୋଗକର୍ତ୍ତାନାମଗୁଡ଼ିକୁ ଏନକ୍ରିପ୍ଟ କରାଯାଇଥାଏ, ତେଣୁ Google ସମେତ କୌଣସି ବ୍ୟକ୍ତି ସେଗୁଡ଼ିକୁ ପଢ଼ିପାରିବେ ନାହିଁ।</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">ଇଚ୍ଛାଧୀନ</translation>
 <translation id="7762668264895820836">SD କାର୍ଡ <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">ଠିକଣା ଯୋଗ କରନ୍ତୁ</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> ଟାବକୁ ଡିଲିଟ କରାଯାଇଛି</translation>
 <translation id="7772032839648071052">ପାସ୍‍‍ଫ୍ରେଜ୍ ସୁନିଶ୍ଚିତ କରନ୍ତୁ</translation>
 <translation id="7772375229873196092"><ph name="APP_NAME" /> ବନ୍ଦ କରନ୍ତୁ</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ଓ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ଅଧିକ}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ଓ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ଅଧିକ}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pa.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pa.xtb
index 00a3c18..5c77e86 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pa.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pa.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">ਜੇ ਤੁਸੀਂ ਵੀ ਆਪਣੇ Google ਖਾਤੇ ਵਿੱਚ ਆਪਣੇ ਬੁੱਕਮਾਰਕ ਨੂੰ ਰੱਖਿਅਤ ਕਰਦੇ ਹੋ ਤਾਂ, ਤੁਸੀਂ Chrome ਵਿੱਚ ਉਤਪਾਦਾਂ ਦੀਆਂ ਕੀਮਤਾਂ ਨੂੰ ਟਰੈਕ ਕਰ ਸਕਦੇ ਹੋ ਅਤੇ ਕੀਮਤਾਂ ਡਿੱਗਣ 'ਤੇ ਸੂਚਨਾ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੇ ਹੋ</translation>
 <translation id="3227557059438308877">Google Chrome ਨੂੰ ਤੁਹਾਡੇ ਫ਼ੋਨ ਦੀ ਸੁਰੱਖਿਆ ਕੁੰਜੀ ਵਜੋਂ ਵਰਤਣਾ</translation>
 <translation id="3232293466644486101">ਬ੍ਰਾਊਜ਼ਿੰਗ ਡਾਟਾ ਮਿਟਾਓ…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> ਟੈਬਾਂ ਨੂੰ ਮਿਟਾਇਆ ਗਿਆ</translation>
 <translation id="3232754137068452469">ਵੈੱਬ ਐਪ</translation>
 <translation id="3236059992281584593">1 ਮਿੰਟ ਬਾਕੀ</translation>
 <translation id="3237087289225714896">ਮਿਆਰੀ ਪ੍ਰੀਲੋਡਿੰਗ:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">ਆਪਣਾ ਪਾਸਵਰਡ ਦੇਖਣ ਲਈ ਅਣਲਾਕ ਕਰੋ</translation>
 <translation id="5517095782334947753">ਤੁਹਾਡੇ ਕੋਲ <ph name="FROM_ACCOUNT" /> ਤੋਂ ਬੁੱਕਮਾਰਕ, ਇਤਿਹਾਸ, ਪਾਸਵਰਡ ਅਤੇ ਹੋਰ ਸੈਟਿੰਗਾਂ ਹਨ।</translation>
 <translation id="5524843473235508879">ਰੀਡਾਇਰੈਕਟ ਨੂੰ ਬਲਾਕ ਕੀਤਾ ਗਿਆ।</translation>
+<translation id="5526281268548144413">ਇਨ੍ਹਾਂ ਨੂੰ ਇੱਕ ਤੋਂ ਵੱਧ ਵਿੰਡੋਆਂ 'ਤੇ ਬੰਦ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# ਮਿੰਟ ਪਹਿਲਾਂ}one{# ਮਿੰਟ ਪਹਿਲਾਂ}other{# ਮਿੰਟ ਪਹਿਲਾਂ}}</translation>
 <translation id="5548606607480005320">ਸੁਰੱਖਿਆ ਜਾਂਚ</translation>
 <translation id="5554520618550346933">ਜਦੋਂ ਤੁਸੀਂ ਪਾਸਵਰਡ ਵਰਤਦੇ ਹੋ, ਤਾਂ Chrome ਉਸਦੇ ਆਨਲਾਈਨ ਪ੍ਰਕਾਸ਼ਿਤ ਹੋਣ ਦੀ ਸਥਿਤੀ ਵਿੱਚ ਤੁਹਾਨੂੰ ਚਿਤਾਵਨੀ ਦਿੰਦਾ ਹੈ। ਅਜਿਹਾ ਕਰਨ ਵੇਲੇ, ਤੁਹਾਡੇ ਪਾਸਵਰਡ ਅਤੇ ਵਰਤੋਂਕਾਰ ਨਾਮ ਇਨਕ੍ਰਿਪਟ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਇਸ ਲਈ ਉਹ Google ਸਮੇਤ ਕਿਸੇ ਵੱਲੋਂ ਵੀ ਪੜ੍ਹੇ ਨਹੀਂ ਜਾ ਸਕਦੇ।</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">ਵਿਕਲਪਿਕ</translation>
 <translation id="7762668264895820836">SD ਕਾਰਡ <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">ਪਤਾ ਜੋੜੋ</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> ਟੈਬ ਨੂੰ ਮਿਟਾਇਆ ਗਿਆ</translation>
 <translation id="7772032839648071052">ਪਾਸਫਰੇਜ਼ ਦੀ ਪੁਸ਼ਟੀ ਕਰੋ</translation>
 <translation id="7772375229873196092"><ph name="APP_NAME" /> ਨੂੰ ਬੰਦ ਕਰੋ</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ਅਤੇ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ਹੋਰ}one{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ਅਤੇ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ਹੋਰ}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ਅਤੇ <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ਹੋਰ}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-BR.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-BR.xtb
index fad45f1f..6a4ab92 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-BR.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-BR.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Se você também salvar seus favoritos na Conta do Google, poderá monitorar os preços dos produtos no Chrome e receber notificações quando houver reduções</translation>
 <translation id="3227557059438308877">Google Chrome como chave de segurança</translation>
 <translation id="3232293466644486101">Excluir dados de navegação…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> guias excluídas</translation>
 <translation id="3232754137068452469">App da Web</translation>
 <translation id="3236059992281584593">Um minuto restante</translation>
 <translation id="3237087289225714896">Pré-carregamento padrão:</translation>
@@ -865,6 +866,7 @@
 <translation id="5515439363601853141">Desbloqueie para ver sua senha</translation>
 <translation id="5517095782334947753">Você tem favoritos, histórico, senhas e outras configurações da conta <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Redirecionamento bloqueado.</translation>
+<translation id="5526281268548144413">Não é possível fechar em várias janelas</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# min atrás}one{# min atrás}other{# min atrás}}</translation>
 <translation id="5548606607480005320">Confirmação de segurança</translation>
 <translation id="5554520618550346933">Quando você usa uma senha, o Chrome avisa se ela foi publicada on-line. Quando isso é feito, as senhas e os nomes de usuário são criptografados para que não possam ser lidos por ninguém, nem mesmo o Google.</translation>
@@ -1342,6 +1344,7 @@
 <translation id="7759809451544302770">Opcional</translation>
 <translation id="7762668264895820836">Cartão SD <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Adicionar endereço</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> guia excluída</translation>
 <translation id="7772032839648071052">Confirmar senha</translation>
 <translation id="7772375229873196092">Fechar <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 e mais <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}one{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 e mais <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 e mais <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-PT.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-PT.xtb
index 775e671..d40cbad 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-PT.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-PT.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Pesquisar</translation>
 <translation id="1384704387250346179">Traduzir imagem com Google Lens <ph name="BEGIN_NEW" />Novo<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Ativo há <ph name="LAST_UPDATED" /> dias</translation>
+<translation id="1390418506739274310">Pode ver o histórico de outras apps que abrem links no Chrome. A sua Conta Google pode ter outras formas do histórico de navegação em <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Para continuar, o fornecedor <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> vai partilhar o seu nome, endereço de email e imagem do perfil com este site. Consulte os <ph name="BEGIN_LINK1" />termos de utilização<ph name="END_LINK1" /> deste site.</translation>
 <translation id="1397811292916898096">Pesquisar com o <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Tema escuro</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Os URLs que visitar são enviados para a Google para prever os sites que pode visitar a seguir e para lhe mostrar informações adicionais sobre a página que está a visitar</translation>
 <translation id="3026955690410463085">Incluir link</translation>
 <translation id="3027644380269727216">Com base na sua atividade num site. Esta definição está ativada.</translation>
+<translation id="3027950907978057636">De <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Sem pré-carregamento</translation>
 <translation id="3029704984691124060">As frases de acesso não coincidem</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Obter ajuda<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ro.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ro.xtb
index 51befe7..36f8336 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ro.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ro.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Caută</translation>
 <translation id="1384704387250346179">Tradu imaginea cu Google Lens <ph name="BEGIN_NEW" />Nou<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Activ acum <ph name="LAST_UPDATED" /> zile</translation>
+<translation id="1390418506739274310">Poți vedea istoricul din alte aplicații care deschid linkuri în Chrome. Contul Google poate să ofere alte forme ale istoricului de navigare la <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Pentru a continua, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> va permite accesul site-ului la numele, adresa de e-mail și fotografia ta de profil. Vezi <ph name="BEGIN_LINK1" />termenii și condițiile<ph name="END_LINK1" /> acestui site.</translation>
 <translation id="1397811292916898096">Caută folosind <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Temă întunecată</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Adresele URL pe care le accesezi se trimit la Google pentru a anticipa site-urile pe care le-ai putea accesa în continuare și pentru a afișa informații suplimentare despre pagina pe care o accesezi</translation>
 <translation id="3026955690410463085">Include linkul</translation>
 <translation id="3027644380269727216">Pe baza activității tale pe un site. Setarea este activată.</translation>
+<translation id="3027950907978057636">Din <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Fără preîncărcare</translation>
 <translation id="3029704984691124060">Expresiile de acces nu corespund</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Obține ajutor<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">Dacă salvezi marcajele și în Contul Google, poți să urmărești prețurile produselor în Chrome și să primești notificări când scad</translation>
 <translation id="3227557059438308877">Google Chrome drept cheie de securitate</translation>
 <translation id="3232293466644486101">Șterge datele de navigare…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> file au fost șterse</translation>
 <translation id="3232754137068452469">Aplicație web</translation>
 <translation id="3236059992281584593">1 min. rămas</translation>
 <translation id="3237087289225714896">Preîncărcare standard:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">Deblochează pentru a vedea parola</translation>
 <translation id="5517095782334947753">Ai marcajele, istoricul, parolele și alte setări din <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Redirecționarea a fost blocată.</translation>
+<translation id="5526281268548144413">Nu pot fi închise în mai multe ferestre</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Acum # minut}few{Acum # minute}other{Acum # de minute}}</translation>
 <translation id="5548606607480005320">Verificare de siguranță</translation>
 <translation id="5554520618550346933">Când folosești o parolă, Chrome te avertizează dacă a fost publicată online. Când face acest lucru, parolele și numele tale de utilizator sunt criptate, astfel încât să nu fie descifrate de nimeni, nici măcar de Google.</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">Opțional</translation>
 <translation id="7762668264895820836">Cardul SD <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Adaugă o adresă</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> filă a fost ștearsă</translation>
 <translation id="7772032839648071052">Confirmă expresia de acces</translation>
 <translation id="7772375229873196092">Închide <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 și încă <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}few{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 și încă <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 și încă <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb
index f0bf272..a3a21e69 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">සොයන්න</translation>
 <translation id="1384704387250346179">Google Lens සමග රූපය පරිවර්තනය ක. <ph name="BEGIN_NEW" />නව<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">දින <ph name="LAST_UPDATED" /> කට පෙර ක්‍රියාත්මකයි</translation>
+<translation id="1390418506739274310">ඔබ Chrome තුළ සබැඳි විවෘත කරන වෙනත් යෙදුම්වලින් ඉතිහාසය දකීවි. ඔබේ Google ගිණුමට <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> තුළ බ්‍රවුස් කිරීමේ ඉතිහාසයේ වෙනත් ආකාර තිබේවි.</translation>
 <translation id="13931502444227376">ඉදිරියට යාමට, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> ඔබගේ නම, ඉ-තැපැල් ලිපිනය සහ පැතිකඩ පින්තූරය මෙම අඩවිය සමග බෙදා ගනු ඇත. මෙම අඩවියේ <ph name="BEGIN_LINK1" />සේවා නියම<ph name="END_LINK1" /> බලන්න.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> සමඟ සොයන්න</translation>
 <translation id="1407069428457324124">අඳුරු තේමාව</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">ඔබ පිවිසෙන URL ලිපින ඔබ මීළඟට පිවිසිය හැකි අඩවි මොනවා දැයි පුරෝකථනය කිරීමට සහ ඔබ පිවිසෙන පිටුව පිළිබඳ අතිරේක තතු පෙන්වීමට Google වෙත යවනු ලැබේ</translation>
 <translation id="3026955690410463085">සබැඳිය ඇතුළත් කරන්න</translation>
 <translation id="3027644380269727216">අඩවියක ඔබේ ක්‍රියාකාරකම් මත පදනම්ව. මෙම සැකසීම ක්‍රියාත්මකයි.</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" /> සිට</translation>
 <translation id="3029276696788198026">පූර්ව පූරණය නැත</translation>
 <translation id="3029704984691124060">රහස්පද නොගැලපේ</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />උදවු ගන්න<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sk.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sk.xtb
index 311eccb..a87818b1 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sk.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sk.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Vyhľadávanie</translation>
 <translation id="1384704387250346179">Preklad obrázka funkciou Google Lens <ph name="BEGIN_NEW" />Novinka<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Aktívne pred <ph name="LAST_UPDATED" /> dňami</translation>
+<translation id="1390418506739274310">Môžete si zobraziť históriu z iných aplikácií, ktoré otvárajú odkazy v Chrome. Váš účet Google môže mať ďalšie formy histórie prehliadania na <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Ak chcete pokračovať, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> bude s týmto webom zdieľať vaše meno, e‑mailovú adresu a profilovú fotku. Pozrite si <ph name="BEGIN_LINK1" />zmluvné podmienky<ph name="END_LINK1" /> tohto webu.</translation>
 <translation id="1397811292916898096">Hľadať pomocou vyhľadávača <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Tmavý motív</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Webové adresy, ktoré navštevujete, sa odosielajú Googlu, aby mohol predpokladať weby, ktoré navštívite ako ďalšie, a zobrazovať vám ďalšie informácie o navštevovanej stránke</translation>
 <translation id="3026955690410463085">Zahŕňať odkaz</translation>
 <translation id="3027644380269727216">Založené na vašej aktivite na webe. Toto nastavenie je zapnuté.</translation>
+<translation id="3027950907978057636">Z aplikácie <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Bez prednačítavania</translation>
 <translation id="3029704984691124060">Prístupové frázy sa nezhodujú</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Získať pomoc<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sl.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sl.xtb
index e1e157ee..071d58a 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sl.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sl.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Išči</translation>
 <translation id="1384704387250346179">Prevedi sliko z Googlom Lens <ph name="BEGIN_NEW" />Novo<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">Aktivna pred toliko dnevi: <ph name="LAST_UPDATED" /></translation>
+<translation id="1390418506739274310">Morda bo prikazana zgodovina drugih aplikacij, ki odpirajo povezave v Chromu. V računu Google so morda druge vrste zgodovine brskanja na <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Če želite nadaljevati, bo ponudnik <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> delil vaše ime, e-poštni naslov in profilno sliko s tem spletnim mestom. Oglejte si <ph name="BEGIN_LINK1" />pogoje storitve<ph name="END_LINK1" /> tega spletnega mesta.</translation>
 <translation id="1397811292916898096">Iskanje z iskalnikom <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Temna tema</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">URL-ji, ki jih obiščete, se pošljejo Googlu zaradi predvidevanja, katera spletna mesta boste morda obiskali, in zaradi prikaza dodatnih informacij o strani, ki ste jo obiskali</translation>
 <translation id="3026955690410463085">Vključi povezavo</translation>
 <translation id="3027644380269727216">Na podlagi vaše dejavnosti na spletnem mestu. Ta nastavitev je vklopljena.</translation>
+<translation id="3027950907978057636">Iz aplikacije <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Brez vnaprejšnjega nalaganja</translation>
 <translation id="3029704984691124060">Gesli se ne ujemata</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Poiščite pomoč<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">Če v računu Google shranite tudi zaznamke, lahko v Chromu spremljate cene izdelkov in prejmete obvestilo, ko se cena zniža</translation>
 <translation id="3227557059438308877">Google Chrome kot varnostni ključ</translation>
 <translation id="3232293466644486101">Izbriši podatke brskanja …</translation>
+<translation id="3232459301230493791">Izbrisanih je toliko zavihkov: <ph name="TAB_COUNT" /></translation>
 <translation id="3232754137068452469">Spletna aplikacija</translation>
 <translation id="3236059992281584593">Še 1 min</translation>
 <translation id="3237087289225714896">Standardno vnaprejšnje nalaganje:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">Odklenite, če si želite ogledati geslo</translation>
 <translation id="5517095782334947753">Iz računa <ph name="FROM_ACCOUNT" /> imate zaznamke, zgodovino, gesla in druge nastavitve.</translation>
 <translation id="5524843473235508879">Preusmeritev je bila blokirana.</translation>
+<translation id="5526281268548144413">Ni mogoče zapreti v več oknih</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Pred # min}one{Pred # min}two{Pred # min}few{Pred # min}other{Pred # min}}</translation>
 <translation id="5548606607480005320">Varnostno preverjanje</translation>
 <translation id="5554520618550346933">Ko uporabite geslo, vas Chrome opozori, če je bilo objavljeno v spletu. Pri tem so vaša gesla in uporabniška imena šifrirana, da jih ne more prebrati nihče, vključno z Googlom.</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">Izbirno</translation>
 <translation id="7762668264895820836">Kartica SD <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Dodaj naslov</translation>
+<translation id="776533689993750361">Izbrisan je <ph name="TAB_COUNT" /> zavihek</translation>
 <translation id="7772032839648071052">Potrdi geslo</translation>
 <translation id="7772375229873196092">Zapri aplikacijo <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}one{<ph name="PAYMENT_METHOD_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}two{<ph name="PAYMENT_METHOD_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}few{<ph name="PAYMENT_METHOD_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sq.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sq.xtb
index 94bd702..cde774f 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sq.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sq.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Nëse i ruan faqeshënuesit e tu vetëm në "Llogarinë tënde të Google", mund t'i monitorosh çmimet e produkteve në Chrome dhe të marrësh njoftime kur të ulet çmimi</translation>
 <translation id="3227557059438308877">Google Chrome si çelës sigurie</translation>
 <translation id="3232293466644486101">Fshi të dhënat e shfletimit…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> skeda u fshinë</translation>
 <translation id="3232754137068452469">Aplikacioni i uebit</translation>
 <translation id="3236059992281584593">1 minutë e mbetur</translation>
 <translation id="3237087289225714896">Ngarkimi paraprak standard:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Shkyçe për të parë fjalëkalimin</translation>
 <translation id="5517095782334947753">Ke faqeshënues, historik, fjalëkalime dhe cilësime të tjera nga <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Ridrejtimi u bllokua.</translation>
+<translation id="5526281268548144413">Nuk mund të mbyllen në disa dritare</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# minuta më parë}other{# minuta më parë}}</translation>
 <translation id="5548606607480005320">Kontrolli i sigurisë</translation>
 <translation id="5554520618550346933">Kur përdor një fjalëkalim, Chrome të paralajmëron nëse ai është publikuar online. Kur vepron kështu, fjalëkalimet dhe emrat e tu të përdoruesit enkriptohen, në mënyrë që të mos lexohen nga askush, duke përfshirë Google.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Opsionale</translation>
 <translation id="7762668264895820836">Karta SD <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Shto adresë</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> skedë u fshi</translation>
 <translation id="7772032839648071052">Konfirmo shprehjen e kalimit</translation>
 <translation id="7772375229873196092">Mbyll <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 dhe <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> tjetër}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 dhe <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> të tjera}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sw.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sw.xtb
index 330e446..c64b1de 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sw.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sw.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Iwapo pia unahifadhi alamisho kwenye Akaunti yako ya Google, unaweza kufuatilia bei za bidhaa katika Chrome na upate arifa bei inapopunguzwa</translation>
 <translation id="3227557059438308877">Google Chrome kama Ufunguo wa Usalama</translation>
 <translation id="3232293466644486101">Futa data ya kuvinjari…</translation>
+<translation id="3232459301230493791">Umefuta vichupo <ph name="TAB_COUNT" /></translation>
 <translation id="3232754137068452469">Programu ya Wavuti</translation>
 <translation id="3236059992281584593">Imesalia dakika 1</translation>
 <translation id="3237087289225714896">Upakiaji mapema wa kawaida:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Fungua ili uangalie nenosiri lako</translation>
 <translation id="5517095782334947753">Una alamisho, historia, manenosiri na mipangilio mingine kutoka <ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Imezuia shughuli ya kuelekeza kwingine.</translation>
+<translation id="5526281268548144413">Haviwezi kufungwa kwenye madirisha mengi</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Dak # iliyopita}other{Dak # zilizopita}}</translation>
 <translation id="5548606607480005320">Angalizo la usalama</translation>
 <translation id="5554520618550346933">Unapotumia nenosiri, Chrome hukutahadharisha iwapo limechapishwa mtandaoni. Wakati inafanya hivyo, manenosiri na majina yako ya mtumiaji huwa yamesimbwa kwa njia fiche, kwa hivyo hayawezi kusomwa na mtu mwingine, ikiwemo Google.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Ya hiari</translation>
 <translation id="7762668264895820836">Kadi ya SD ya <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Ongeza anwani</translation>
+<translation id="776533689993750361">Umefuta kichupo <ph name="TAB_COUNT" /></translation>
 <translation id="7772032839648071052">Thibitisha kaulisiri</translation>
 <translation id="7772375229873196092">Funga <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 na <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> zaidi}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 na <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> zaidi}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ta.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ta.xtb
index e8379f0..26b2181 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ta.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ta.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">உங்கள் Google கணக்கில் புக்மார்க்குகளையும் நீங்கள் சேமித்தால், Chromeமில் தயாரிப்பு விலைகளைக் கண்காணிக்கலாம், விலை குறையும்போது அதற்கான அறிவிப்புகளைப் பெறலாம்</translation>
 <translation id="3227557059438308877">Google Chromeமைப் பாதுகாப்பு விசையாகப் பயன்படுத்தும் வசதி</translation>
 <translation id="3232293466644486101">உலாவிய தரவை நீக்கு…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> பக்கங்கள் நீக்கப்பட்டன</translation>
 <translation id="3232754137068452469">இணைய ஆப்ஸ்</translation>
 <translation id="3236059992281584593">1 நிமிடம் மீதமுள்ளது</translation>
 <translation id="3237087289225714896">இயல்பான முன்கூட்டிய ஏற்றுதல்:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">கடவுச்சொல்லைப் பார்க்க, அன்லாக் செய்யவும்</translation>
 <translation id="5517095782334947753"><ph name="FROM_ACCOUNT" /> இன் புக்மார்க்குகள், வரலாறு, கடவுச்சொற்கள் மற்றும் பிற அமைப்புகள் உள்ளன.</translation>
 <translation id="5524843473235508879">திசைதிருப்புவது தடுக்கப்பட்டது.</translation>
+<translation id="5526281268548144413">பல சாளரங்களில் உள்ள பக்கங்கள் மூடப்படாது</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# நிமி முன்பு}other{# நிமி முன்பு}}</translation>
 <translation id="5548606607480005320">பாதுகாப்புச் சரிபார்ப்பு</translation>
 <translation id="5554520618550346933">நீங்கள் ஒரு கடவுச்சொல்லைப் பயன்படுத்தும்போது, அது ஆன்லைனில் ஏற்கெனவே வெளியாகி இருந்தால் அது குறித்து Chrome உங்களை எச்சரிக்கும். இதைச் செய்யும்போது உங்கள் கடவுச்சொற்களும் பயனர்பெயர்களும் என்கிரிப்ஷன் செய்யப்படுவதால் Google உட்பட எவராலும் அவற்றைக் கண்டறிய முடியாது.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">விரும்பினால்</translation>
 <translation id="7762668264895820836">SD கார்டு <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">முகவரியைச் சேர்</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> பக்கம் நீக்கப்பட்டது</translation>
 <translation id="7772032839648071052">கடவுச்சொற்றொடரை உறுதி செய்க</translation>
 <translation id="7772375229873196092"><ph name="APP_NAME" />ஐ மூடு</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 மற்றும் <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> கட்டண முறை}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 மற்றும் <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> கட்டண முறைகள்}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb
index bae7159..46205101 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">సెర్చ్</translation>
 <translation id="1384704387250346179"><ph name="BEGIN_NEW" />కొత్తది<ph name="END_NEW" /> Google Lensతో ఇమేజ్‌ను అనువదించండి</translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> రోజుల క్రితం యాక్టివ్‌గా ఉంది</translation>
+<translation id="1390418506739274310">మీరు Chromeలో లింక్‌లను తెరిచే ఇతర యాప్‌ల నుండి హిస్టరీని చూడవచ్చు. మీ Google ఖాతా <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />వెబ్‌సైట్‌లో ఇతర ఫారమ్‌లో ఉన్న బ్రౌజింగ్ హిస్టరీని కలిగి ఉండవచ్చు.</translation>
 <translation id="13931502444227376">కొనసాగించడానికి, మీ పేరు, ఈమెయిల్ అడ్రస్, ప్రొఫైల్ ఫోటోను <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> ఈ సైట్‌తో షేర్ చేస్తుంది. ఈ సైట్ <ph name="BEGIN_LINK1" />సర్వీస్ నియమాలను<ph name="END_LINK1" /> చూడండి.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" />తో వెతకండి</translation>
 <translation id="1407069428457324124">ముదురు రూపం</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">మీరు చూసే URLలు మీరు తర్వాత ఏ సైట్‌లను చూడవచ్చో అంచనా వేయడానికి, మీరు చూసే పేజీ గురించిన అదనపు సమాచారాన్ని మీకు చూపడానికి Googleకు పంపబడతాయి</translation>
 <translation id="3026955690410463085">లింక్‌ను చేర్చండి</translation>
 <translation id="3027644380269727216">సైట్‌లోని మీ యాక్టివిటీ ఆధారంగా. ఈ సెట్టింగ్ ఆన్ చేయబడింది.</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" /> నుండి</translation>
 <translation id="3029276696788198026">ప్రీ - లోడింగ్ అందుబాటులో లేదు</translation>
 <translation id="3029704984691124060">రహస్య పదబంధాలు సరిపోలలేదు</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />సహాయం పొందండి<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_tr.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_tr.xtb
index 7e9bce7..35dce531 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_tr.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_tr.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Google Hesabınıza yer işaretlerinizi de kaydediyorsanız Chrome'da ürün fiyatlarını takip edebilir ve fiyat düştüğünde bildirim alabilirsiniz</translation>
 <translation id="3227557059438308877">Güvenlik Anahtarı olarak Google Chrome</translation>
 <translation id="3232293466644486101">Tarama verilerini silme</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> sekme silindi</translation>
 <translation id="3232754137068452469">Web Uygulaması</translation>
 <translation id="3236059992281584593">1 dk. kaldı</translation>
 <translation id="3237087289225714896">Standart önceden yükleme:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Şifrenizi görüntülemek için kilidi açın</translation>
 <translation id="5517095782334947753"><ph name="FROM_ACCOUNT" /> hesabından yer işaretleri, geçmiş, şifreler ve diğer ayarlarınız var.</translation>
 <translation id="5524843473235508879">Yönlendirme engellendi.</translation>
+<translation id="5526281268548144413">Birden fazla pencerede kapatılamaz</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# dk. önce}other{# dk. önce}}</translation>
 <translation id="5548606607480005320">Güvenlik kontrolü</translation>
 <translation id="5554520618550346933">Kullandığınız bir şifre internette yayınlanmışsa Chrome sizi uyarır. Bu işlem sırasında şifreleriniz ve kullanıcı adlarınız şifrelendiğinden, Google dahil olmak üzere hiç kimse tarafından okunamaz.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">İsteğe bağlı</translation>
 <translation id="7762668264895820836">SD Kart <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Adres ekle</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> sekme silindi</translation>
 <translation id="7772032839648071052">Parolayı onayla</translation>
 <translation id="7772375229873196092"><ph name="APP_NAME" /> penceresini kapat</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ve <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ödeme yöntemi daha}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 ve <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ödeme yöntemi daha}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uk.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uk.xtb
index b95a8444..214af7a 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uk.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uk.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Пошук</translation>
 <translation id="1384704387250346179">Переклад через Об'єктив <ph name="BEGIN_NEW" />Нове<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382">У мережі <ph name="LAST_UPDATED" /> дн. тому</translation>
+<translation id="1390418506739274310">Ви можете побачити історію інших додатків, які відкривають посилання в Chrome. Історія вебперегляду може також зберігатись у вашому обліковому записі Google на сторінці <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />.</translation>
 <translation id="13931502444227376">Щоб продовжити, <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> надасть ваші ім’я, електронну адресу й зображення профілю цьому сайту. Перегляньте <ph name="BEGIN_LINK1" />Умови використання<ph name="END_LINK1" /> цього сайту.</translation>
 <translation id="1397811292916898096">Шукати в <ph name="PRODUCT_NAME" /></translation>
 <translation id="1407069428457324124">Темна тема</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">URL-адреси сторінок, які ви відвідуєте, надсилаються в Google, щоб ми могли показувати вам додаткову інформацію про них і передбачати, які сайти ви можете відвідати наступними</translation>
 <translation id="3026955690410463085">Додати посилання</translation>
 <translation id="3027644380269727216">На основі ваших дій на сайті. Це налаштування ввімкнено.</translation>
+<translation id="3027950907978057636">З додатка <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Без попереднього завантаження</translation>
 <translation id="3029704984691124060">Парольні фрази не збігаються</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Довідка<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ur.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ur.xtb
index 9e1010b..62271aee 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ur.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ur.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">تلاش کریں</translation>
 <translation id="1384704387250346179">‏Google لینز سے تصویر کا ترجمہ کریں <ph name="BEGIN_NEW" />نیا<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> دن پہلے فعال تھا</translation>
+<translation id="1390418506739274310">‏آپ Chrome میں لنکس کو کھولنے والی دیگر ایپس کی سرگزشت دیکھ سکتے ہیں۔ ممکن ہے کہ <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> پر آپ کے Google اکاؤنٹ میں براؤزنگ کی سرگزشت کی دیگر شکلیں موجود ہوں۔</translation>
 <translation id="13931502444227376">جاری رکھنے کے لیے، <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> اس سائٹ کے ساتھ آپ کے نام، ای میل پتہ اور پروفائل کی تصویر کا اشتراک کرے گا۔ اس سائٹ کی <ph name="BEGIN_LINK1" />سروس کی شرائط<ph name="END_LINK1" /> دیکھیں۔</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> کے ساتھ تلاش کریں</translation>
 <translation id="1407069428457324124">گہری تھیم</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">‏آپ کے ملاحظہ کردہ URLs آپ اگلی بار کون سی سائٹس ملاحظہ کر سکتے ہیں اس بات کی پیشنگوئی کرنے کے لیے اور آپ کو آپ کے ملاحظہ کئے جانے والے صفحے کے بارے میں اضافی معلومات دکھانے کے لیے Google کو بھیجے جاتے ہیں</translation>
 <translation id="3026955690410463085">لنک شامل کریں</translation>
 <translation id="3027644380269727216">سائٹ پر آپ کی سرگرمی کی بنیاد پر۔ یہ ترتیب آن ہے۔</translation>
+<translation id="3027950907978057636"><ph name="APP_LABEL" /> سے</translation>
 <translation id="3029276696788198026">کوئی بھی پیشگی لوڈنگ نہیں</translation>
 <translation id="3029704984691124060">پاس فریزز مماثل نہیں ہیں</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />مدد حاصل کریں<ph name="END_LINK" /></translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb
index 753f901..18d28282 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb
@@ -82,6 +82,7 @@
 <translation id="1383876407941801731">Qidiruv</translation>
 <translation id="1384704387250346179">Google Lens yordamida tarjima <ph name="BEGIN_NEW" />Yangi<ph name="END_NEW" /></translation>
 <translation id="1386674309198842382"><ph name="LAST_UPDATED" /> kun oldin onlayn edi</translation>
+<translation id="1390418506739274310">Havolalarni Chrome orqali ochadigan boshqa ilovalar tarixini koʻrish mumkin. Google hisobingiz orqali bajargan internetdagi faoliyatingizni <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" /> orqali koʻrishingiz mumkin.</translation>
 <translation id="13931502444227376">Davom etish uchun <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> ism, email manzil va profil rasmingizni bu sayt bilan ulashadi. Bu saytning <ph name="BEGIN_LINK1" />xizmat shartlari<ph name="END_LINK1" />.</translation>
 <translation id="1397811292916898096"><ph name="PRODUCT_NAME" /> orqali qidirish</translation>
 <translation id="1407069428457324124">Tungi mavzu</translation>
@@ -389,6 +390,7 @@
 <translation id="3003253259757197230">Kelgusida qaysi saytlarga tashrif buyurishingizni bashorat qilish va kiriladigan sahifa haqida qoʻshimcha maʼlumotlarni koʻrsatish uchun kirilgan URL manzillar Googlega yuboriladi.</translation>
 <translation id="3026955690410463085">Havolani kiritish</translation>
 <translation id="3027644380269727216">Saytdagi harakatlaringiz asosida. Bu sozlama yoniq.</translation>
+<translation id="3027950907978057636">Manba: <ph name="APP_LABEL" /></translation>
 <translation id="3029276696788198026">Oldindan yuklanmaydi</translation>
 <translation id="3029704984691124060">Kodli iboralar bir xil emas</translation>
 <translation id="3036750288708366620"><ph name="BEGIN_LINK" />Yordam markazi<ph name="END_LINK" /></translation>
@@ -426,6 +428,7 @@
 <translation id="3226612997184048185">Bukmarklarni Google hisobingizda ham saqlasangiz, Chromeʼda mahsulot narxlarini kuzatishingiz va narx tushganda xabar olasiz.</translation>
 <translation id="3227557059438308877">Google Chromeni elektron kalit sifatida ishlatish</translation>
 <translation id="3232293466644486101">Brauzer maʼlumotlarini oʻchirish…</translation>
+<translation id="3232459301230493791"><ph name="TAB_COUNT" /> ta varaq oʻchirildi</translation>
 <translation id="3232754137068452469">Veb-ilova</translation>
 <translation id="3236059992281584593">1 daqiqa qoldi</translation>
 <translation id="3237087289225714896">Standart oldindan yuklash:</translation>
@@ -864,6 +867,7 @@
 <translation id="5515439363601853141">Paolni ko‘rish uchun qulfni oching</translation>
 <translation id="5517095782334947753"><ph name="FROM_ACCOUNT" /> hisobiga tegishli xatcho‘p, tarix, parol va boshqa sozlamalar mavjud.</translation>
 <translation id="5524843473235508879">Yo‘naltirish bloklandi.</translation>
+<translation id="5526281268548144413">Bir nechta oynada bajarish imkonsiz</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# daqiqa oldin}other{# daqiqa oldin}}</translation>
 <translation id="5548606607480005320">Xavfsizlik tekshiruvi</translation>
 <translation id="5554520618550346933">Paroldan foydalansangiz, u internetga chiqib ketgan boʻlsa, Chrome sizni ogohlantiradi. Bunda parolingiz va foydalanuvchi nomingiz shifrlanadi, hatto Google xodimlariga ham koʻrinmaydi.</translation>
@@ -1341,6 +1345,7 @@
 <translation id="7759809451544302770">Ixtiyoriy</translation>
 <translation id="7762668264895820836">SD karta <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Manzil kiritish</translation>
+<translation id="776533689993750361"><ph name="TAB_COUNT" /> ta varaq oʻchirildi</translation>
 <translation id="7772032839648071052">Kodli iborani tasdiqlang</translation>
 <translation id="7772375229873196092">“<ph name="APP_NAME" />” oynasini yopish</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 va yana <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ta}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 va yana <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ta}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-HK.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-HK.xtb
index 6fcadf7..7e809bd 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-HK.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-HK.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">如果一併將書籤儲存在 Google 帳戶中,便可以在 Chrome 中追蹤產品價格,並在降價時收到通知</translation>
 <translation id="3227557059438308877">以 Google Chrome 作為安全密鑰</translation>
 <translation id="3232293466644486101">刪除瀏覽資料…</translation>
+<translation id="3232459301230493791">已刪除 <ph name="TAB_COUNT" /> 個分頁</translation>
 <translation id="3232754137068452469">網絡應用程式</translation>
 <translation id="3236059992281584593">尚餘 1 分鐘</translation>
 <translation id="3237087289225714896">標準預先載入模式:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">解鎖即可查看您的密碼</translation>
 <translation id="5517095782334947753">您有來自 <ph name="FROM_ACCOUNT" /> 的書籤、記錄、密碼和其他設定。</translation>
 <translation id="5524843473235508879">已禁止重新導向。</translation>
+<translation id="5526281268548144413">無法關閉多個視窗中的分頁</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# 分鐘前}other{# 分鐘前}}</translation>
 <translation id="5548606607480005320">安全檢查</translation>
 <translation id="5554520618550346933">使用密碼時,如果密碼已在網上發佈,Chrome 將會提醒你。核對時,您的密碼和使用者名稱將會加密,任何人 (包括 Google) 均無法讀取。</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">選用</translation>
 <translation id="7762668264895820836">SD 卡 <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">新增地址</translation>
+<translation id="776533689993750361">已刪除 <ph name="TAB_COUNT" /> 個分頁</translation>
 <translation id="7772032839648071052">確認複雜密碼</translation>
 <translation id="7772375229873196092">關閉 <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 和另外 <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> 種付款方式}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 和另外 <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> 種付款方式}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-TW.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-TW.xtb
index 5f1d0cb..4b04dc9 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-TW.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-TW.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">如果一併將書籤儲存在 Google 帳戶中,就可以在 Chrome 中追蹤產品價格,並在降價時收到通知</translation>
 <translation id="3227557059438308877">使用 Google Chrome 做為安全金鑰</translation>
 <translation id="3232293466644486101">刪除瀏覽資料…</translation>
+<translation id="3232459301230493791">已刪除 <ph name="TAB_COUNT" /> 個分頁</translation>
 <translation id="3232754137068452469">網頁應用程式</translation>
 <translation id="3236059992281584593">還剩 1 分鐘</translation>
 <translation id="3237087289225714896">標準預先載入模式:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">解鎖即可查看你的密碼</translation>
 <translation id="5517095782334947753">你有來自 <ph name="FROM_ACCOUNT" /> 的書籤、歷史記錄、密碼和其他設定。</translation>
 <translation id="5524843473235508879">已禁止重新導向。</translation>
+<translation id="5526281268548144413">無法關閉多個視窗中的分頁</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{# 分鐘前}other{# 分鐘前}}</translation>
 <translation id="5548606607480005320">安全檢查</translation>
 <translation id="5554520618550346933">如果你使用的密碼已公布在網路上,Chrome 就會發出警告。在比對過程中,系統會加密你的密碼和使用者名稱,因此任何人 (包括 Google) 都無法讀取。</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">選用</translation>
 <translation id="7762668264895820836">SD 卡 <ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">新增地址</translation>
+<translation id="776533689993750361">已刪除 <ph name="TAB_COUNT" /> 個分頁</translation>
 <translation id="7772032839648071052">確認通關密語</translation>
 <translation id="7772375229873196092">關閉 <ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 和另外 <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> 種付款方式}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 和另外 <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> 種付款方式}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zu.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zu.xtb
index 7fe43ae5..26548f3 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zu.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zu.xtb
@@ -426,6 +426,7 @@
 <translation id="3226612997184048185">Uma futhi ulondoloza amabhukhimakhi ku-Google Account yakho, ungakwazi ukulandelela izintengo zomkhiqizo ku-Chrome futhi uthole isaziso uma intengo yehla.</translation>
 <translation id="3227557059438308877">I-Google Chrome Njengokhiye Wokuqinisekisa Ubunikazi</translation>
 <translation id="3232293466644486101">Sula idatha yopheqululo…</translation>
+<translation id="3232459301230493791">Amathebhu angu-<ph name="TAB_COUNT" /> asuliwe</translation>
 <translation id="3232754137068452469">Uhlelo lokusebenza lwewebhu</translation>
 <translation id="3236059992281584593">1 iminithi elisele</translation>
 <translation id="3237087289225714896">Ukulayisha kusengaphambili okujwayelekile:</translation>
@@ -864,6 +865,7 @@
 <translation id="5515439363601853141">Vula ukuze ubuke iphasiwedi yakho</translation>
 <translation id="5517095782334947753">Unamabhukhimakhi, umlando, amaphasiwedi, nezinye izilungiselelo kusukela ku-<ph name="FROM_ACCOUNT" />.</translation>
 <translation id="5524843473235508879">Ukuqondiswa kabusha kuvinjiwe.</translation>
+<translation id="5526281268548144413">Ayikwazi ukuvalwa kumawindi amaningi</translation>
 <translation id="5528925345478618296">{MINUTES,plural, =1{Umzuzu ongu-# odlule}one{Umzuzu ongu-# odlule}other{Umzuzu ongu-# odlule}}</translation>
 <translation id="5548606607480005320">Ukuhlolwa kokuphepha</translation>
 <translation id="5554520618550346933">Uma usebenzisa iphasiwedi, i-Chrome iyakuxwayisa uma ishicilelwe ku-inthanethi. Uma yenza lokhu, amaphasiwedi akho namagama abasebenzisi ayabethelwa, ngakho awakwazi ukufundwa yinoma ubani, kubandakanya ne-Google.</translation>
@@ -1341,6 +1343,7 @@
 <translation id="7759809451544302770">Ongakukhetha</translation>
 <translation id="7762668264895820836">Ikhadi le-SD elingu-<ph name="SD_CARD_NUMBER" /></translation>
 <translation id="7764225426217299476">Engeza ikheli</translation>
+<translation id="776533689993750361">Ithebhu elingu-<ph name="TAB_COUNT" /> lisuliwe</translation>
 <translation id="7772032839648071052">Qinisekisa umushwana wokungena</translation>
 <translation id="7772375229873196092">Vala i-<ph name="APP_NAME" /></translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 nokungu-<ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ngaphezulu}one{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 nokungu-<ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ngaphezulu}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 nokungu-<ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" /> ngaphezulu}}</translation>
diff --git a/chrome/browser/ui/ash/login_screen_client_impl.cc b/chrome/browser/ui/ash/login_screen_client_impl.cc
index fe30729..7c78fad 100644
--- a/chrome/browser/ui/ash/login_screen_client_impl.cc
+++ b/chrome/browser/ui/ash/login_screen_client_impl.cc
@@ -13,6 +13,7 @@
 #include "ash/webui/settings/public/constants/routes.mojom.h"
 #include "ash/webui/settings/public/constants/setting.mojom-shared.h"
 #include "base/check_is_test.h"
+#include "base/debug/dump_without_crashing.h"
 #include "base/functional/bind.h"
 #include "base/functional/callback_helpers.h"
 #include "base/memory/scoped_refptr.h"
@@ -426,12 +427,21 @@
 
 void LoginScreenClientImpl::ShowGaiaSigninInternal(
     const AccountId& prefilled_account) {
+  // It is possible that the call will come during the session start and after
+  // the LoginDisplayHost destruction. Ignore such calls.
   if (ash::LoginDisplayHost::default_host()) {
-    // Login screen case.
     ash::LoginDisplayHost::default_host()->ShowGaiaDialog(prefilled_account);
-  } else {
-    // Lock screen case.
+  } else if (session_manager::SessionManager::Get()->session_state() ==
+             session_manager::SessionState::LOCKED) {
     ash::LockScreenStartReauthDialog::Show();
+  } else {
+    // TODO(b/332715260): In general this shouldn't happen, however there might
+    // be transition states when pending calls still arrive. It should be safe
+    // to remove the DumpWithoutCrashing if the number of reports will be low.
+    base::debug::DumpWithoutCrashing();
+    LOG(WARNING) << __func__ << ": ignoring the call, session state: "
+                 << static_cast<int>(session_manager::SessionManager::Get()
+                                         ->session_state());
   }
 }
 
diff --git a/chrome/browser/ui/autofill/autofill_context_menu_manager.cc b/chrome/browser/ui/autofill/autofill_context_menu_manager.cc
index f803a2b..af29e3b 100644
--- a/chrome/browser/ui/autofill/autofill_context_menu_manager.cc
+++ b/chrome/browser/ui/autofill/autofill_context_menu_manager.cc
@@ -11,20 +11,24 @@
 #include "base/functional/bind.h"
 #include "base/memory/weak_ptr.h"
 #include "base/notimplemented.h"
+#include "base/notreached.h"
 #include "base/ranges/algorithm.h"
 #include "base/values.h"
 #include "chrome/app/chrome_command_ids.h"
 #include "chrome/app/vector_icons/vector_icons.h"
 #include "chrome/browser/browser_process.h"
+#include "chrome/browser/password_manager/chrome_password_manager_client.h"
 #include "chrome/browser/plus_addresses/plus_address_service_factory.h"
 #include "chrome/browser/ui/autofill/address_bubbles_controller.h"
 #include "chrome/browser/ui/browser.h"
 #include "chrome/browser/ui/browser_finder.h"
 #include "chrome/browser/ui/chrome_pages.h"
+#include "chrome/browser/ui/passwords/ui_utils.h"
 #include "chrome/grit/generated_resources.h"
 #include "components/autofill/content/browser/content_autofill_client.h"
 #include "components/autofill/content/browser/content_autofill_driver.h"
 #include "components/autofill/core/browser/address_data_manager.h"
+#include "components/autofill/core/browser/autofill_driver.h"
 #include "components/autofill/core/browser/autofill_feedback_data.h"
 #include "components/autofill/core/browser/browser_autofill_manager.h"
 #include "components/autofill/core/browser/data_model/autofill_profile.h"
@@ -41,13 +45,16 @@
 #include "components/feature_engagement/public/feature_constants.h"
 #include "components/password_manager/content/browser/content_password_manager_driver.h"
 #include "components/password_manager/core/browser/features/password_features.h"
+#include "components/password_manager/core/browser/password_manager_client.h"
 #include "components/password_manager/core/browser/password_manager_util.h"
+#include "components/password_manager/core/common/password_manager_pref_names.h"
 #include "components/plus_addresses/features.h"
 #include "components/plus_addresses/plus_address_service.h"
 #include "components/strings/grit/components_strings.h"
 #include "components/variations/service/variations_service.h"
 #include "components/vector_icons/vector_icons.h"
 #include "content/public/browser/global_routing_id.h"
+#include "content/public/browser/web_contents.h"
 #include "ui/base/l10n/l10n_util.h"
 #include "ui/base/models/menu_model.h"
 
@@ -122,6 +129,29 @@
   NOTREACHED_NORETURN();
 }
 
+// Returns true if the given id is one generated for autofill context menu.
+bool IsAutofillCustomCommandId(
+    AutofillContextMenuManager::CommandId command_id) {
+  static constexpr auto kAutofillCommands = base::MakeFixedFlatSet<int>(
+      {IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_ADDRESS,
+       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PAYMENTS,
+       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PLUS_ADDRESS,
+       IDC_CONTENT_CONTEXT_AUTOFILL_FEEDBACK,
+       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS,
+       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SELECT_PASSWORD,
+       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_IMPORT_PASSWORDS,
+       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SUGGEST_PASSWORD});
+  return kAutofillCommands.contains(command_id.value());
+}
+
+bool IsLikelyDogfoodClient() {
+  auto* variations_service = g_browser_process->variations_service();
+  if (!variations_service) {
+    return false;
+  }
+  return variations_service->IsLikelyDogfoodClient();
+}
+
 base::Value::Dict LoadTriggerFormAndFieldLogs(
     AutofillManager& manager,
     const LocalFrameToken& frame_token,
@@ -153,47 +183,8 @@
   return trigger_form_logs;
 }
 
-bool IsLikelyDogfoodClient() {
-  auto* variations_service = g_browser_process->variations_service();
-  if (!variations_service) {
-    return false;
-  }
-  return variations_service->IsLikelyDogfoodClient();
-}
-
-bool ShouldAddPlusAddressManualFallbackItem(
-    ContentAutofillDriver& autofill_driver) {
-  auto* web_contents = content::WebContents::FromRenderFrameHost(
-      autofill_driver.render_frame_host());
-  const plus_addresses::PlusAddressService* plus_address_service =
-      PlusAddressServiceFactory::GetForBrowserContext(
-          web_contents->GetBrowserContext());
-  AutofillClient& client = autofill_driver.GetAutofillManager().client();
-  return plus_address_service &&
-         plus_address_service->SupportsPlusAddresses(
-             client.GetLastCommittedPrimaryMainFrameOrigin(),
-             client.IsOffTheRecord()) &&
-         base::FeatureList::IsEnabled(
-             plus_addresses::features::kPlusAddressFallbackFromContextMenu);
-}
-
 }  // namespace
 
-// static
-bool AutofillContextMenuManager::IsAutofillCustomCommandId(
-    CommandId command_id) {
-  static constexpr auto kAutofillCommands = base::MakeFixedFlatSet<int>(
-      {IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_ADDRESS,
-       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PAYMENTS,
-       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PLUS_ADDRESS,
-       IDC_CONTENT_CONTEXT_AUTOFILL_FEEDBACK,
-       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS,
-       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SELECT_PASSWORD,
-       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_IMPORT_PASSWORDS,
-       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SUGGEST_PASSWORD});
-  return kAutofillCommands.contains(command_id.value());
-}
-
 AutofillContextMenuManager::AutofillContextMenuManager(
     PersonalDataManager* personal_data_manager,
     RenderViewContextMenuBase* delegate,
@@ -226,180 +217,61 @@
   if (!rfh) {
     return;
   }
-  ContentAutofillDriver* driver =
+  ContentAutofillDriver* autofill_driver =
       ContentAutofillDriver::GetForRenderFrameHost(rfh);
-  if (!driver) {
+  if (!autofill_driver) {
     return;
   }
-  AutofillManager& manager = driver->GetAutofillManager();
-
   CHECK(IsAutofillCustomCommandId(CommandId(command_id)));
 
   if (command_id == IDC_CONTENT_CONTEXT_AUTOFILL_FEEDBACK) {
-    ExecuteAutofillFeedbackCommand(driver->GetFrameToken(), manager);
+    ExecuteAutofillFeedbackCommand(autofill_driver->GetFrameToken(),
+                                   autofill_driver->GetAutofillManager());
     return;
   }
 
   if (command_id == IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_ADDRESS) {
-    ExecuteFallbackForAddressesCommand(manager);
+    ExecuteFallbackForAddressesCommand(*autofill_driver);
     return;
   }
 
   if (command_id == IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PAYMENTS) {
-    ExecuteFallbackForPaymentsCommand(manager);
+    ExecuteFallbackForPaymentsCommand(*autofill_driver);
     return;
   }
 
   if (command_id == IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PLUS_ADDRESS) {
-    ExecuteFallbackForPlusAddressesCommand(*driver);
+    ExecuteFallbackForPlusAddressesCommand(*autofill_driver);
     return;
   }
 
   if (command_id ==
       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SELECT_PASSWORD) {
-    // TODO(b/321678141): Execute this command.
-    NOTIMPLEMENTED();
+    ExecuteFallbackForPasswordsCommand(*autofill_driver);
     return;
   }
 
+  content::WebContents* web_contents =
+      content::WebContents::FromRenderFrameHost(rfh);
   if (command_id ==
       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_IMPORT_PASSWORDS) {
-    // TODO(b/321678141): Execute this command.
-    NOTIMPLEMENTED();
+    // This function also records metrics.
+    NavigateToManagePasswordsPage(
+        chrome::FindBrowserWithTab(web_contents),
+        password_manager::ManagePasswordsReferrer::kPasswordContextMenu);
     return;
   }
 
   if (command_id ==
       IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SUGGEST_PASSWORD) {
-    // TODO(b/321678141): Execute this command.
-    NOTIMPLEMENTED();
+    // This function also records metrics.
+    password_manager_util::UserTriggeredManualGenerationFromContextMenu(
+        ChromePasswordManagerClient::FromWebContents(web_contents),
+        autofill::ContentAutofillClient::FromWebContents(web_contents));
     return;
   }
 }
 
-void AutofillContextMenuManager::ExecuteAutofillFeedbackCommand(
-    const LocalFrameToken& frame_token,
-    AutofillManager& manager) {
-  // The cast is safe since the context menu is only available on Desktop.
-  auto& client = static_cast<ContentAutofillClient&>(manager.client());
-  Browser* browser = chrome::FindBrowserWithTab(&client.GetWebContents());
-  chrome::ShowFeedbackPage(
-      browser, feedback::kFeedbackSourceAutofillContextMenu,
-      /*description_template=*/std::string(),
-      /*description_placeholder_text=*/kFeedbackPlaceholder,
-      /*category_tag=*/"dogfood_autofill_feedback",
-      /*extra_diagnostics=*/std::string(),
-      /*autofill_metadata=*/
-      data_logs::FetchAutofillFeedbackData(
-          &manager,
-          LoadTriggerFormAndFieldLogs(manager, frame_token, params_)));
-}
-
-void AutofillContextMenuManager::ExecuteFallbackForAddressesCommand(
-    AutofillManager& manager) {
-  auto& driver = static_cast<ContentAutofillDriver&>(manager.driver());
-  AutofillField* field = GetAutofillField(manager, driver.GetFrameToken());
-  if (!field && !base::FeatureList::IsEnabled(
-                    features::kAutofillForUnclassifiedFieldsAvailable)) {
-    // The field should generally exist, since the fallback option is only shown
-    // when the field can be retrieved. But if the website removed the field
-    // before the entry was select, it might not be available anymore.
-    //
-    // Note that, when `features::kAutofillForUnclassifiedFieldsAvailable` is
-    // enabled Autofill is always available, regardless of whether
-    // `AutofillField` exists or not.
-    return;
-  }
-
-  if (personal_data_manager_->address_data_manager().GetProfiles().empty() &&
-      base::FeatureList::IsEnabled(
-          features::kAutofillForUnclassifiedFieldsAvailable)) {
-    content::RenderFrameHost* rfh = driver.render_frame_host();
-    auto* web_contents = content::WebContents::FromRenderFrameHost(rfh);
-    AddressBubblesController::SetUpAndShowAddNewAddressBubble(
-        web_contents,
-        base::BindOnce(
-            [](AddressDataManager* adm,
-               content::GlobalRenderFrameHostId frame_id,
-               uint64_t field_renderer_id,
-               AutofillClient::AddressPromptUserDecision decision,
-               base::optional_ref<const AutofillProfile> profile) {
-              bool new_address_saved =
-                  decision ==
-                  AutofillClient::AddressPromptUserDecision::kEditAccepted;
-              if (new_address_saved && profile.has_value()) {
-                adm->AddChangeCallback(base::BindOnce(
-                    [](content::GlobalRenderFrameHostId frame_id,
-                       uint64_t field_renderer_id) {
-                      content::RenderFrameHost* rfh =
-                          content::RenderFrameHost::FromID(frame_id);
-                      if (!rfh) {
-                        return;
-                      }
-                      ContentAutofillDriver* driver =
-                          ContentAutofillDriver::GetForRenderFrameHost(rfh);
-                      if (!driver) {
-                        return;
-                      }
-
-                      driver->browser_events().RendererShouldTriggerSuggestions(
-                          /*field_id=*/{driver->GetFrameToken(),
-                                        FieldRendererId(field_renderer_id)},
-                          AutofillSuggestionTriggerSource::
-                              kManualFallbackAddress);
-                    },
-                    frame_id, field_renderer_id));
-                adm->AddProfile(*profile);
-              }
-
-              LogAddNewAddressPromptOutcome(
-                  new_address_saved
-                      ? autofill_metrics::AutofillAddNewAddressPromptOutcome::
-                            kSaved
-                      : autofill_metrics::AutofillAddNewAddressPromptOutcome::
-                            kCanceled);
-
-              if (new_address_saved) {
-                autofill_metrics::LogManuallyAddedAddress(
-                    autofill_metrics::AutofillManuallyAddedAddressSurface::
-                        kContextMenuPrompt);
-              }
-            },
-            // `PersonalDataManager`, as a keyed service, will always outlive
-            // the bubble, which is bound to a tab.
-            &personal_data_manager_->address_data_manager(), rfh->GetGlobalId(),
-            params_.field_renderer_id));
-  } else {
-    driver.browser_events().RendererShouldTriggerSuggestions(
-        /*field_id=*/{driver.GetFrameToken(),
-                      FieldRendererId(params_.field_renderer_id)},
-        AutofillSuggestionTriggerSource::kManualFallbackAddress);
-  }
-  LogManualFallbackContextMenuEntryAccepted(
-      static_cast<BrowserAutofillManager&>(manager), FillingProduct::kAddress);
-}
-
-void AutofillContextMenuManager::ExecuteFallbackForPaymentsCommand(
-    AutofillManager& manager) {
-  auto& driver = static_cast<ContentAutofillDriver&>(manager.driver());
-  driver.browser_events().RendererShouldTriggerSuggestions(
-      FieldGlobalId(driver.GetFrameToken(),
-                    FieldRendererId(params_.field_renderer_id)),
-      AutofillSuggestionTriggerSource::kManualFallbackPayments);
-  LogManualFallbackContextMenuEntryAccepted(
-      static_cast<BrowserAutofillManager&>(manager),
-      FillingProduct::kCreditCard);
-}
-
-void AutofillContextMenuManager::ExecuteFallbackForPlusAddressesCommand(
-    AutofillDriver& driver) {
-  driver.RendererShouldTriggerSuggestions(
-      /*field_id=*/{driver.GetFrameToken(),
-                    FieldRendererId(params_.field_renderer_id)},
-      AutofillSuggestionTriggerSource::kManualFallbackPlusAddresses);
-  // TODO(b/327566698): Add metrics.
-}
-
 void AutofillContextMenuManager::MaybeAddAutofillFeedbackItem() {
   content::RenderFrameHost* rfh = delegate_->GetRenderFrameHost();
   if (!rfh) {
@@ -503,36 +375,7 @@
     menu_model_->SetIsNewFeatureAt(menu_model_->GetItemCount() - 1, true);
   }
   if (add_passwords_fallback) {
-    // TODO(b/321678141): If the user has passwords saved, assign "Select
-    // password" entry instead.
-    int regular_password_entry_command_id =
-        IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_IMPORT_PASSWORDS;
-    int regular_password_entry_string_id =
-        IDS_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_IMPORT_PASSWORDS;
-
-    // TODO(b/321678141): Update strings once we have UX decision.
-    if (password_manager_util::ManualPasswordGenerationEnabled(
-            password_manager_driver)) {
-      // If the user is syncing, create a passwords submenu. The submenu
-      // contains the regular passwords manual fallback entry, plus an extra
-      // entry for generating passwords.
-      passwords_submenu_model_.AddItemWithStringId(
-          regular_password_entry_command_id, regular_password_entry_string_id);
-
-      passwords_submenu_model_.AddItemWithStringId(
-          IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SUGGEST_PASSWORD,
-          IDS_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SUGGEST_PASSWORD);
-
-      menu_model_->AddSubMenuWithStringId(
-          IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS,
-          IDS_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS,
-          &passwords_submenu_model_);
-    } else {
-      // If the user is not syncing, add the regular passwords manual fallback
-      // passwords entry.
-      menu_model_->AddItemWithStringId(regular_password_entry_command_id,
-                                       regular_password_entry_string_id);
-    }
+    AddPasswordsManualFallbackItems(*password_manager_driver);
   }
   // TODO(b/327566698): Log metrics for plus address fallbacks, too.
   // TODO(b/321678141): Log metrics for passwords manual fallback, too.
@@ -541,6 +384,22 @@
   menu_model_->AddSeparator(ui::NORMAL_SEPARATOR);
 }
 
+bool AutofillContextMenuManager::ShouldAddPlusAddressManualFallbackItem(
+    ContentAutofillDriver& autofill_driver) {
+  auto* web_contents = content::WebContents::FromRenderFrameHost(
+      autofill_driver.render_frame_host());
+  const plus_addresses::PlusAddressService* plus_address_service =
+      PlusAddressServiceFactory::GetForBrowserContext(
+          web_contents->GetBrowserContext());
+  AutofillClient& client = autofill_driver.GetAutofillManager().client();
+  return plus_address_service &&
+         plus_address_service->SupportsPlusAddresses(
+             client.GetLastCommittedPrimaryMainFrameOrigin(),
+             client.IsOffTheRecord()) &&
+         base::FeatureList::IsEnabled(
+             plus_addresses::features::kPlusAddressFallbackFromContextMenu);
+}
+
 bool AutofillContextMenuManager::ShouldAddAddressManualFallbackItem(
     ContentAutofillDriver& autofill_driver) {
   if (!personal_data_manager_->address_data_manager()
@@ -593,33 +452,62 @@
              password_manager::features::kPasswordManualFallbackAvailable);
 }
 
-void AutofillContextMenuManager::LogManualFallbackContextMenuEntryAccepted(
-    BrowserAutofillManager& manager,
-    const FillingProduct filling_product) {
-    auto& driver = static_cast<ContentAutofillDriver&>(manager.driver());
-    AutofillField* field = GetAutofillField(manager, driver.GetFrameToken());
-    if (filling_product == FillingProduct::kAddress) {
-      const bool is_address_field =
-          field && IsAddressType(field->Type().GetStorableType());
-      if (is_address_field) {
-        // Address manual fallback was triggered from a classified address
-        // field.
-        manager.GetAutocompleteUnrecognizedFallbackEventLogger()
-            .ContextMenuEntryAccepted(
-                /*address_field_has_ac_unrecognized=*/field
-                    ->ShouldSuppressSuggestionsAndFillingByDefault());
-      } else {
-        manager.GetManualFallbackEventLogger().ContextMenuEntryAccepted(
-            FillingProduct::kAddress);
-      }
-    } else if (filling_product == FillingProduct::kCreditCard &&
-               !(field &&
-                 field->Type().group() == FieldTypeGroup::kCreditCard)) {
-      // Only log payments manual fallback when triggered from a field that is
-      // not classified as payments.
-      manager.GetManualFallbackEventLogger().ContextMenuEntryAccepted(
-          FillingProduct::kCreditCard);
-    }
+void AutofillContextMenuManager::AddPasswordsManualFallbackItems(
+    ContentPasswordManagerDriver& password_manager_driver) {
+  int regular_password_entry_command_id;
+  int regular_password_entry_string_id;
+
+  password_manager::PasswordManagerClient* client =
+      password_manager_driver.GetPasswordManager()->GetClient();
+  const bool user_is_syncing =
+      password_manager_util::ManualPasswordGenerationEnabled(
+          &password_manager_driver);
+  const bool user_has_passwords_saved =
+      client->GetPrefs()->GetBoolean(
+          password_manager::prefs::
+              kAutofillableCredentialsProfileStoreLoginDatabase) ||
+      client->GetPrefs()->GetBoolean(
+          password_manager::prefs::
+              kAutofillableCredentialsAccountStoreLoginDatabase);
+
+  // TODO(b/321678141): Update strings once we have UX decision.
+  if (user_has_passwords_saved) {
+    regular_password_entry_command_id =
+        IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SELECT_PASSWORD;
+    regular_password_entry_string_id =
+        user_is_syncing
+            ? IDS_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SELECT_PASSWORD
+            : IDS_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS;
+  } else {
+    // If the user doesn't have passwords saved, display "Import passwords"
+    // option.
+    regular_password_entry_command_id =
+        IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_IMPORT_PASSWORDS;
+    regular_password_entry_string_id =
+        IDS_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_IMPORT_PASSWORDS;
+  }
+
+  if (user_is_syncing) {
+    // If the user is syncing, create a passwords submenu. The submenu
+    // contains the regular passwords manual fallback entry, plus an extra
+    // entry for generating passwords.
+    passwords_submenu_model_.AddItemWithStringId(
+        regular_password_entry_command_id, regular_password_entry_string_id);
+
+    passwords_submenu_model_.AddItemWithStringId(
+        IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SUGGEST_PASSWORD,
+        IDS_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SUGGEST_PASSWORD);
+
+    menu_model_->AddSubMenuWithStringId(
+        IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS,
+        IDS_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS,
+        &passwords_submenu_model_);
+  } else {
+    // If the user is not syncing, add the regular passwords manual fallback
+    // passwords entry.
+    menu_model_->AddItemWithStringId(regular_password_entry_command_id,
+                                     regular_password_entry_string_id);
+  }
 }
 
 void AutofillContextMenuManager::LogManualFallbackContextMenuEntryShown(
@@ -657,6 +545,186 @@
           payments_option_shown_for_field_not_classified_as_payments);
 }
 
+void AutofillContextMenuManager::LogManualFallbackContextMenuEntryAccepted(
+    AutofillDriver& autofill_driver,
+    FillingProduct filling_product) {
+  BrowserAutofillManager& manager = static_cast<BrowserAutofillManager&>(
+      autofill_driver.GetAutofillManager());
+  AutofillField* field =
+      GetAutofillField(manager, autofill_driver.GetFrameToken());
+
+  switch (filling_product) {
+    case FillingProduct::kAddress: {
+      const bool is_address_field =
+          field && IsAddressType(field->Type().GetStorableType());
+      if (is_address_field) {
+        // Address manual fallback was triggered from a classified address
+        // field.
+        manager.GetAutocompleteUnrecognizedFallbackEventLogger()
+            .ContextMenuEntryAccepted(
+                /*address_field_has_ac_unrecognized=*/field
+                    ->ShouldSuppressSuggestionsAndFillingByDefault());
+      } else {
+        manager.GetManualFallbackEventLogger().ContextMenuEntryAccepted(
+            filling_product);
+      }
+    } break;
+    case FillingProduct::kCreditCard:
+      if (!(field && field->Type().group() == FieldTypeGroup::kCreditCard)) {
+        // Only log payments manual fallback when triggered from a field that is
+        // not classified as payments.
+        manager.GetManualFallbackEventLogger().ContextMenuEntryAccepted(
+            filling_product);
+      }
+      break;
+    // TODO(b/327566698): Add metrics for plus addresses.
+    case FillingProduct::kPlusAddresses:
+    // TODO(b/321678141): Add metrics for passwords.
+    case FillingProduct::kPassword:
+      NOTIMPLEMENTED();
+      break;
+    case FillingProduct::kNone:
+    case FillingProduct::kMerchantPromoCode:
+    case FillingProduct::kIban:
+    case FillingProduct::kAutocomplete:
+    case FillingProduct::kCompose:
+      NOTREACHED();
+  }
+}
+
+void AutofillContextMenuManager::ExecuteAutofillFeedbackCommand(
+    const LocalFrameToken& frame_token,
+    AutofillManager& manager) {
+  // The cast is safe since the context menu is only available on Desktop.
+  auto& client = static_cast<ContentAutofillClient&>(manager.client());
+  Browser* browser = chrome::FindBrowserWithTab(&client.GetWebContents());
+  chrome::ShowFeedbackPage(
+      browser, feedback::kFeedbackSourceAutofillContextMenu,
+      /*description_template=*/std::string(),
+      /*description_placeholder_text=*/kFeedbackPlaceholder,
+      /*category_tag=*/"dogfood_autofill_feedback",
+      /*extra_diagnostics=*/std::string(),
+      /*autofill_metadata=*/
+      data_logs::FetchAutofillFeedbackData(
+          &manager,
+          LoadTriggerFormAndFieldLogs(manager, frame_token, params_)));
+}
+
+void AutofillContextMenuManager::ExecuteFallbackForPlusAddressesCommand(
+    AutofillDriver& autofill_driver) {
+  autofill_driver.RendererShouldTriggerSuggestions(
+      /*field_id=*/{autofill_driver.GetFrameToken(),
+                    FieldRendererId(params_.field_renderer_id)},
+      AutofillSuggestionTriggerSource::kManualFallbackPlusAddresses);
+  LogManualFallbackContextMenuEntryAccepted(autofill_driver,
+                                            FillingProduct::kPlusAddresses);
+}
+
+void AutofillContextMenuManager::ExecuteFallbackForPaymentsCommand(
+    AutofillDriver& autofill_driver) {
+  autofill_driver.RendererShouldTriggerSuggestions(
+      /*field_id=*/{autofill_driver.GetFrameToken(),
+                    FieldRendererId(params_.field_renderer_id)},
+      AutofillSuggestionTriggerSource::kManualFallbackPayments);
+  LogManualFallbackContextMenuEntryAccepted(autofill_driver,
+                                            FillingProduct::kCreditCard);
+}
+
+void AutofillContextMenuManager::ExecuteFallbackForPasswordsCommand(
+    AutofillDriver& autofill_driver) {
+  autofill_driver.RendererShouldTriggerSuggestions(
+      /*field_id=*/{autofill_driver.GetFrameToken(),
+                    FieldRendererId(params_.field_renderer_id)},
+      AutofillSuggestionTriggerSource::kManualFallbackPasswords);
+  LogManualFallbackContextMenuEntryAccepted(autofill_driver,
+                                            FillingProduct::kPassword);
+}
+
+void AutofillContextMenuManager::ExecuteFallbackForAddressesCommand(
+    ContentAutofillDriver& autofill_driver) {
+  AutofillManager& manager = autofill_driver.GetAutofillManager();
+  AutofillField* field =
+      GetAutofillField(manager, autofill_driver.GetFrameToken());
+  if (!field && !base::FeatureList::IsEnabled(
+                    features::kAutofillForUnclassifiedFieldsAvailable)) {
+    // The field should generally exist, since the fallback option is only shown
+    // when the field can be retrieved. But if the website removed the field
+    // before the entry was select, it might not be available anymore.
+    //
+    // Note that, when `features::kAutofillForUnclassifiedFieldsAvailable` is
+    // enabled Autofill is always available, regardless of whether
+    // `AutofillField` exists or not.
+    return;
+  }
+
+  if (personal_data_manager_->address_data_manager().GetProfiles().empty() &&
+      base::FeatureList::IsEnabled(
+          features::kAutofillForUnclassifiedFieldsAvailable)) {
+    content::RenderFrameHost* rfh = autofill_driver.render_frame_host();
+    auto* web_contents = content::WebContents::FromRenderFrameHost(rfh);
+    AddressBubblesController::SetUpAndShowAddNewAddressBubble(
+        web_contents,
+        base::BindOnce(
+            [](AddressDataManager* adm,
+               content::GlobalRenderFrameHostId frame_id,
+               uint64_t field_renderer_id,
+               AutofillClient::AddressPromptUserDecision decision,
+               base::optional_ref<const AutofillProfile> profile) {
+              bool new_address_saved =
+                  decision ==
+                  AutofillClient::AddressPromptUserDecision::kEditAccepted;
+              if (new_address_saved && profile.has_value()) {
+                adm->AddChangeCallback(base::BindOnce(
+                    [](content::GlobalRenderFrameHostId frame_id,
+                       uint64_t field_renderer_id) {
+                      content::RenderFrameHost* rfh =
+                          content::RenderFrameHost::FromID(frame_id);
+                      if (!rfh) {
+                        return;
+                      }
+                      AutofillDriver* driver =
+                          ContentAutofillDriver::GetForRenderFrameHost(rfh);
+                      if (!driver) {
+                        return;
+                      }
+
+                      driver->RendererShouldTriggerSuggestions(
+                          /*field_id=*/{driver->GetFrameToken(),
+                                        FieldRendererId(field_renderer_id)},
+                          AutofillSuggestionTriggerSource::
+                              kManualFallbackAddress);
+                    },
+                    frame_id, field_renderer_id));
+                adm->AddProfile(*profile);
+              }
+
+              LogAddNewAddressPromptOutcome(
+                  new_address_saved
+                      ? autofill_metrics::AutofillAddNewAddressPromptOutcome::
+                            kSaved
+                      : autofill_metrics::AutofillAddNewAddressPromptOutcome::
+                            kCanceled);
+
+              if (new_address_saved) {
+                autofill_metrics::LogManuallyAddedAddress(
+                    autofill_metrics::AutofillManuallyAddedAddressSurface::
+                        kContextMenuPrompt);
+              }
+            },
+            // `PersonalDataManager`, as a keyed service, will always outlive
+            // the bubble, which is bound to a tab.
+            &personal_data_manager_->address_data_manager(), rfh->GetGlobalId(),
+            params_.field_renderer_id));
+  } else {
+    autofill_driver.browser_events().RendererShouldTriggerSuggestions(
+        /*field_id=*/{autofill_driver.GetFrameToken(),
+                      FieldRendererId(params_.field_renderer_id)},
+        AutofillSuggestionTriggerSource::kManualFallbackAddress);
+  }
+  LogManualFallbackContextMenuEntryAccepted(autofill_driver,
+                                            FillingProduct::kAddress);
+}
+
 AutofillField* AutofillContextMenuManager::GetAutofillField(
     AutofillManager& manager,
     const LocalFrameToken& frame_token) const {
diff --git a/chrome/browser/ui/autofill/autofill_context_menu_manager.h b/chrome/browser/ui/autofill/autofill_context_menu_manager.h
index c679c1b9a..3d3dcad 100644
--- a/chrome/browser/ui/autofill/autofill_context_menu_manager.h
+++ b/chrome/browser/ui/autofill/autofill_context_menu_manager.h
@@ -22,7 +22,6 @@
 namespace autofill {
 
 class AutofillField;
-class BrowserAutofillManager;
 class PersonalDataManager;
 
 // `AutofillContextMenuManager` is responsible for adding/executing Autofill
@@ -38,9 +37,6 @@
   // it's initialization.
   using CommandId = base::StrongAlias<class CommandIdTag, int>;
 
-  // Returns true if the given id is one generated for autofill context menu.
-  static bool IsAutofillCustomCommandId(CommandId command_id);
-
   AutofillContextMenuManager(PersonalDataManager* personal_data_manager,
                              RenderViewContextMenuBase* delegate,
                              ui::SimpleMenuModel* menu_model);
@@ -66,10 +62,6 @@
   }
 
  private:
-  // Triggers the feedback flow for Autofill command.
-  void ExecuteAutofillFeedbackCommand(const LocalFrameToken& frame_token,
-                                      AutofillManager& manager);
-
   // Conditionally adds the feedback manual fallback item if Autofill is
   // available for the field.
   void MaybeAddAutofillFeedbackItem();
@@ -79,6 +71,11 @@
   // suggest.
   void MaybeAddAutofillManualFallbackItems();
 
+  // Checks if the plus address context menu entry can be shown for the
+  // currently focused field.
+  bool ShouldAddPlusAddressManualFallbackItem(
+      ContentAutofillDriver& autofill_driver);
+
   // Checks if the manual fallback context menu entry can be shown for the
   // currently focused field.
   bool ShouldAddAddressManualFallbackItem(
@@ -89,6 +86,16 @@
   bool ShouldAddPasswordsManualFallbackItem(
       password_manager::ContentPasswordManagerDriver& password_manager_driver);
 
+  // Adds the passwords manual fallback context menu entries.
+  // If the user has passwords saved, display "Select password" (if the user
+  // is syncing) or "Passwords" (if the user is not syncing) option.
+  // The latter doesn't open a submenu, instead it behaves like the "Select
+  // password" entry.
+  // If the user doesn't have passwords saved, display "Import passwords".
+  // Additionally, a syncing user will have a "Suggest password" entry.
+  void AddPasswordsManualFallbackItems(
+      password_manager::ContentPasswordManagerDriver& password_manager_driver);
+
   // Emits metrics about showing the manual fallback context menu entries to the
   // user.
   // `address_option_shown` specifies whether address manual fallback was
@@ -102,21 +109,30 @@
   // shown to the user. `filling_product` defines which manual fallback option
   // was accepted.
   void LogManualFallbackContextMenuEntryAccepted(
-      BrowserAutofillManager& manager,
+      AutofillDriver& autofill_driver,
       const FillingProduct filling_product);
 
-  // Triggers Autofill address suggestions on the field that the context menu
-  // was opened on.
-  void ExecuteFallbackForAddressesCommand(AutofillManager& manager);
-
-  // Triggers Autofill payments suggestions on the field that the context menu
-  // was opened on.
-  void ExecuteFallbackForPaymentsCommand(AutofillManager& manager);
+  // Triggers the feedback flow for Autofill command.
+  void ExecuteAutofillFeedbackCommand(const LocalFrameToken& frame_token,
+                                      AutofillManager& manager);
 
   // Triggers Plus Address suggestions on the field that the context menu was
   // opened on.
   void ExecuteFallbackForPlusAddressesCommand(AutofillDriver& driver);
 
+  // Triggers Autofill payments suggestions on the field that the context menu
+  // was opened on.
+  void ExecuteFallbackForPaymentsCommand(AutofillDriver& driver);
+
+  // Triggers passwords suggestions on the field that the context menu was
+  // opened on.
+  void ExecuteFallbackForPasswordsCommand(AutofillDriver& driver);
+
+  // Triggers Autofill address suggestions on the field that the context menu
+  // was opened on.
+  void ExecuteFallbackForAddressesCommand(
+      ContentAutofillDriver& autofill_driver);
+
   // Gets the `AutofillField` described by the `params_` from the `manager`.
   // The `frame_token` is used to map from the `params_` renderer id to a global
   // id.
diff --git a/chrome/browser/ui/autofill/autofill_context_menu_manager_browsertest.cc b/chrome/browser/ui/autofill/autofill_context_menu_manager_browsertest.cc
index 13132a1..5b451c5c 100644
--- a/chrome/browser/ui/autofill/autofill_context_menu_manager_browsertest.cc
+++ b/chrome/browser/ui/autofill/autofill_context_menu_manager_browsertest.cc
@@ -13,10 +13,16 @@
 #include "base/command_line.h"
 #include "base/functional/bind.h"
 #include "base/test/metrics/histogram_tester.h"
+#include "base/test/run_until.h"
 #include "base/test/scoped_feature_list.h"
 #include "chrome/app/chrome_command_ids.h"
 #include "chrome/browser/autofill/autofill_uitest_util.h"
 #include "chrome/browser/autofill/personal_data_manager_factory.h"
+#include "chrome/browser/password_manager/account_password_store_factory.h"
+#include "chrome/browser/password_manager/chrome_password_manager_client.h"
+#include "chrome/browser/password_manager/password_manager_uitest_util.h"
+#include "chrome/browser/password_manager/passwords_navigation_observer.h"
+#include "chrome/browser/password_manager/profile_password_store_factory.h"
 #include "chrome/browser/plus_addresses/plus_address_service_factory.h"
 #include "chrome/browser/renderer_context_menu/render_view_context_menu_test_util.h"
 #include "chrome/browser/signin/signin_browser_test_base.h"
@@ -43,9 +49,15 @@
 #include "components/autofill/core/browser/test_personal_data_manager.h"
 #include "components/autofill/core/common/autofill_features.h"
 #include "components/autofill/core/common/autofill_prefs.h"
+#include "components/autofill/core/common/password_generation_util.h"
 #include "components/keyed_service/content/browser_context_dependency_manager.h"
 #include "components/keyed_service/core/keyed_service.h"
+#include "components/keyed_service/core/service_access_type.h"
 #include "components/password_manager/core/browser/features/password_features.h"
+#include "components/password_manager/core/browser/manage_passwords_referrer.h"
+#include "components/password_manager/core/browser/password_form.h"
+#include "components/password_manager/core/browser/password_store/password_store_interface.h"
+#include "components/password_manager/core/common/password_manager_pref_names.h"
 #include "components/plus_addresses/features.h"
 #include "components/plus_addresses/plus_address_service.h"
 #include "components/plus_addresses/plus_address_test_utils.h"
@@ -58,9 +70,12 @@
 #include "components/variations/service/variations_service.h"
 #include "content/public/browser/browser_context.h"
 #include "content/public/test/browser_test.h"
+#include "content/public/test/browser_test_utils.h"
 #include "testing/gtest/include/gtest/gtest.h"
 #include "ui/base/l10n/l10n_util.h"
 #include "ui/base/models/menu_model.h"
+#include "url/gurl.h"
+#include "url/origin.h"
 
 namespace autofill {
 
@@ -835,9 +850,10 @@
 
   void SetUpOnMainThread() override {
     BaseAutofillContextMenuManagerTest::SetUpOnMainThread();
-    FormData form = CreateAndAttachPasswordForm();
+    form_ = CreateAndAttachPasswordForm();
     autofill_context_menu_manager()->set_params_for_testing(
-        CreateContextMenuParams(form.renderer_id, form.fields[0].renderer_id(),
+        CreateContextMenuParams(form_.renderer_id,
+                                form_.fields[0].renderer_id(),
                                 blink::mojom::FormControlType::kInputPassword));
   }
 
@@ -847,15 +863,18 @@
         ->SetSelectedType(syncer::UserSelectableType::kPasswords, sync_enabled);
   }
 
+  FormData& form() { return form_; }
+
  private:
   base::test::ScopedFeatureList feature_{
       password_manager::features::kPasswordManualFallbackAvailable};
   base::CallbackListSubscription subscription_;
+  FormData form_;
 };
 
 IN_PROC_BROWSER_TEST_F(
     PasswordsFallbackTest,
-    SyncingUser_ManualFallbackWithGeneratePasswordOptionAdded) {
+    SyncingUser_NoPasswordsSaved_ManualFallbackAddedWithGeneratePasswordOptionAndImportPasswordsOption) {
   UpdateSyncStatus(/*sync_enabled=*/true);
   autofill_context_menu_manager()->AppendItems();
   EXPECT_THAT(menu_model(),
@@ -864,13 +883,241 @@
 
 IN_PROC_BROWSER_TEST_F(
     PasswordsFallbackTest,
-    NotSyncingUserManualFallbackWithoutGeneratePasswordOptionAdded) {
+    NotSyncingUser_NoPasswordsSaved_ManualFallbackAddedWithImportPasswordsOption) {
   UpdateSyncStatus(/*sync_enabled=*/false);
   autofill_context_menu_manager()->AppendItems();
   EXPECT_THAT(menu_model(), OnlyPasswordsNotSyncingFallbackAdded(
                                 /*has_passwords_saved=*/false));
 }
 
+IN_PROC_BROWSER_TEST_F(PasswordsFallbackTest,
+                       SelectPasswordTriggersSuggestions) {
+  EXPECT_CALL(
+      *driver(),
+      RendererShouldTriggerSuggestions(
+          FieldGlobalId{LocalFrameToken(main_rfh()->GetFrameToken().value()),
+                        form().fields[0].renderer_id()},
+          AutofillSuggestionTriggerSource::kManualFallbackPasswords));
+
+  autofill_context_menu_manager()->ExecuteCommand(
+      IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SELECT_PASSWORD);
+}
+
+IN_PROC_BROWSER_TEST_F(
+    PasswordsFallbackTest,
+    ImportPasswordsTriggersOpeningPaswordManagerTabAndRecordsMetrics) {
+  base::HistogramTester histogram_tester;
+  ASSERT_NE(web_contents()->GetLastCommittedURL(),
+            "chrome://password-manager/");
+
+  autofill_context_menu_manager()->ExecuteCommand(
+      IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_IMPORT_PASSWORDS);
+
+  EXPECT_TRUE(base::test::RunUntil([&]() {
+    return web_contents()->GetLastCommittedURL() ==
+           "chrome://password-manager/";
+  }));
+  histogram_tester.ExpectUniqueSample(
+      "PasswordManager.ManagePasswordsReferrer",
+      password_manager::ManagePasswordsReferrer::kPasswordContextMenu,
+      /*expected_bucket_count=*/1);
+}
+
+class PasswordsFallbackWithUIInteractionsTest
+    : public BaseAutofillContextMenuManagerTest {
+  void SetUpOnMainThread() override {
+    // Note that the `SetUpOnMainThread()` of the parent class is intentionally
+    // not called, while `TearDownOnMainThread()` is intentionally let to be
+    // called.
+    //
+    // Load an HTML with password forms so that the test can execute JS on the
+    // forms.
+    ASSERT_TRUE(embedded_test_server()->Start());
+    PasswordsNavigationObserver observer(web_contents());
+    const GURL url =
+        embedded_test_server()->GetURL("/password/password_form.html");
+    ASSERT_TRUE(ui_test_utils::NavigateToURL(browser(), url));
+    ASSERT_TRUE(observer.Wait());
+
+    // The next lines perform the same set up as the parent class
+    // `BaseAutofillContextMenuManagerTest()`, with the exception that a
+    // password form is created and attached.
+    personal_data_ = PersonalDataManagerFactory::GetForProfile(profile());
+    menu_model_ = std::make_unique<ui::SimpleMenuModel>(nullptr);
+    render_view_context_menu_ = std::make_unique<TestRenderViewContextMenu>(
+        *main_rfh(), content::ContextMenuParams());
+    render_view_context_menu_->Init();
+    autofill_context_menu_manager_ =
+        std::make_unique<AutofillContextMenuManager>(
+            personal_data_, render_view_context_menu_.get(), menu_model_.get());
+
+    FormData form = CreateAndAttachPasswordForm();
+    autofill_context_menu_manager()->set_params_for_testing(
+        CreateContextMenuParams(form.renderer_id, form.fields[0].renderer_id(),
+                                blink::mojom::FormControlType::kInputPassword));
+  }
+
+ private:
+  base::test::ScopedFeatureList feature_{
+      password_manager::features::kPasswordManualFallbackAvailable};
+};
+
+IN_PROC_BROWSER_TEST_F(
+    PasswordsFallbackWithUIInteractionsTest,
+    SuggestPasswordTriggersPasswordGenerationAndRecordsMetrics) {
+  base::HistogramTester histogram_tester;
+
+  // Focus on a password field so that the agent can allow password generation.
+  // It is not relevant (and also no in the scope of the test) whether the
+  // password field looks the same as the one provided to
+  // `AutofillContextMenuManager`. The agent just needs to know that a password
+  // field has focus in order to allow password generation.
+  ASSERT_TRUE(content::ExecJs(
+      web_contents(), "document.getElementById('password_field').focus();"));
+  TestGenerationPopupObserver generation_popup_observer;
+  ChromePasswordManagerClient::FromWebContents(web_contents())
+      ->SetTestObserver(&generation_popup_observer);
+  ASSERT_FALSE(generation_popup_observer.popup_showing());
+
+  autofill_context_menu_manager()->ExecuteCommand(
+      IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PASSWORDS_SUGGEST_PASSWORD);
+  generation_popup_observer.WaitForStatus(
+      TestGenerationPopupObserver::GenerationPopup::kShown);
+  EXPECT_TRUE(generation_popup_observer.popup_showing());
+  histogram_tester.ExpectUniqueSample(
+      "PasswordGeneration.Event",
+      autofill::password_generation::PASSWORD_GENERATION_CONTEXT_MENU_PRESSED,
+      /*expected_bucket_count=*/1);
+
+  // Hide the password generation popup to avoid the test crashing.
+  ChromePasswordManagerClient::FromWebContents(web_contents())
+      ->PasswordGenerationRejectedByTyping();
+}
+
+enum class PasswordDatabaseEntryType {
+  kNormal,
+  kBlocklisted,
+  kFederated,
+  kUsernameOnly,
+};
+
+// Not all password database entries are autofillable. This tests fixture goes
+// through all relevant categories of password database entries: normal
+// credentials, blocklisted entries, federated credentials and username-only
+// credentials. Only the first category is autofillable.
+// The tests in this fixture test that the "Select password" entry is displayed
+// if and only if they have at least one normal credential in the password
+// database.
+class PasswordsFallbackWithPasswordDatabaseEntriesTest
+    : public PasswordsFallbackTest,
+      public testing::WithParamInterface<
+          std::tuple<bool, PasswordDatabaseEntryType>> {
+ public:
+  void AddPasswordToStore() {
+    password_manager::PasswordStoreInterface* password_store =
+        use_profile_store()
+            ? ProfilePasswordStoreFactory::GetForProfile(
+                  browser()->profile(), ServiceAccessType::IMPLICIT_ACCESS)
+                  .get()
+            : AccountPasswordStoreFactory::GetForProfile(
+                  browser()->profile(), ServiceAccessType::IMPLICIT_ACCESS)
+                  .get();
+
+    password_manager::PasswordForm password_form;
+    password_form.signon_realm = "http://test.com";
+    password_form.url = GURL("http://test.com");
+    switch (password_database_entry_type()) {
+      case PasswordDatabaseEntryType::kNormal:
+        break;
+      case PasswordDatabaseEntryType::kBlocklisted:
+        password_form.blocked_by_user = true;
+        break;
+      case PasswordDatabaseEntryType::kFederated:
+        password_form.federation_origin =
+            url::Origin::Create(GURL("http://test.com"));
+        break;
+      case PasswordDatabaseEntryType::kUsernameOnly:
+        password_form.scheme =
+            password_manager::PasswordForm::Scheme::kUsernameOnly;
+        break;
+    }
+
+    const std::string pref =
+        use_profile_store()
+            ? password_manager::prefs::
+                  kAutofillableCredentialsProfileStoreLoginDatabase
+            : password_manager::prefs::
+                  kAutofillableCredentialsAccountStoreLoginDatabase;
+
+    if (!has_autofillable_credentials()) {
+      // `base::test::RunUntil()` can detect whether a change in the prefs
+      // occur, but cannot detect anything if the prefs don't change. The pref
+      // is set to `true`, because it is expected to turn to `false` when
+      // `PasswordStoreInterface::AddLogin()` is called.
+      password_manager_client()->GetPrefs()->SetBoolean(pref, true);
+    }
+
+    password_store->AddLogin(password_form);
+    ASSERT_TRUE(base::test::RunUntil([&]() {
+      return password_manager_client()->GetPrefs()->GetBoolean(pref) ==
+             has_autofillable_credentials();
+    })) << "Adding the login timed out.";
+  }
+
+  ChromePasswordManagerClient* password_manager_client() {
+    return ChromePasswordManagerClient::FromWebContents(web_contents());
+  }
+
+  // If false, then use account store.
+  bool use_profile_store() { return std::get<0>(GetParam()); }
+
+  PasswordDatabaseEntryType password_database_entry_type() {
+    return std::get<1>(GetParam());
+  }
+
+  bool has_autofillable_credentials() {
+    return password_database_entry_type() == PasswordDatabaseEntryType::kNormal;
+  }
+
+ private:
+  base::test::ScopedFeatureList feature_{
+      password_manager::features::kPasswordManualFallbackAvailable};
+};
+
+IN_PROC_BROWSER_TEST_P(
+    PasswordsFallbackWithPasswordDatabaseEntriesTest,
+    SyncingUser_HasPasswordDatabaseEntries_ManualFallbackAddedWithGeneratePasswordOption) {
+  UpdateSyncStatus(/*sync_enabled=*/true);
+  AddPasswordToStore();
+
+  autofill_context_menu_manager()->AppendItems();
+  EXPECT_THAT(menu_model(),
+              OnlyPasswordsSyncingFallbackAdded(
+                  /*has_passwords_saved=*/has_autofillable_credentials()));
+}
+
+IN_PROC_BROWSER_TEST_P(
+    PasswordsFallbackWithPasswordDatabaseEntriesTest,
+    NotSyncingUser_HasPasswordDatabaseEntries_ManualFallbackAddedWithoutGeneratePasswordOption) {
+  UpdateSyncStatus(/*sync_enabled=*/false);
+  AddPasswordToStore();
+
+  autofill_context_menu_manager()->AppendItems();
+  EXPECT_THAT(menu_model(),
+              OnlyPasswordsNotSyncingFallbackAdded(
+                  /*has_passwords_saved=*/has_autofillable_credentials()));
+}
+
+INSTANTIATE_TEST_SUITE_P(
+    PasswordsFallbackTest,
+    PasswordsFallbackWithPasswordDatabaseEntriesTest,
+    testing::Combine(
+        testing::Bool(),
+        testing::Values(PasswordDatabaseEntryType::kNormal,
+                        PasswordDatabaseEntryType::kBlocklisted,
+                        PasswordDatabaseEntryType::kFederated,
+                        PasswordDatabaseEntryType::kUsernameOnly)));
+
 class PasswordsFallbackWithGuestProfileTest : public PasswordsFallbackTest {
  public:
 #if BUILDFLAG(IS_CHROMEOS_ASH)
@@ -903,6 +1150,8 @@
 #endif
 
  private:
+  base::test::ScopedFeatureList feature_{
+      password_manager::features::kPasswordManualFallbackAvailable};
   raw_ptr<Browser> guest_browser_ = nullptr;
 };
 
diff --git a/chrome/browser/ui/browser_actions_unittest.cc b/chrome/browser/ui/browser_actions_unittest.cc
index fdeb168..370e85c 100644
--- a/chrome/browser/ui/browser_actions_unittest.cc
+++ b/chrome/browser/ui/browser_actions_unittest.cc
@@ -16,8 +16,7 @@
     feature_list_.InitWithFeatures(
         /*enabled_features=*/std::vector<
             base::test::FeatureRef>{features::kSidePanelPinning,
-                                    features::kToolbarPinning,
-                                    features::kChromeRefresh2023},
+                                    features::kToolbarPinning},
         /*disabled_features=*/{});
   }
 
diff --git a/chrome/browser/ui/browser_command_controller_browsertest.cc b/chrome/browser/ui/browser_command_controller_browsertest.cc
index bf4c204..b88cc397 100644
--- a/chrome/browser/ui/browser_command_controller_browsertest.cc
+++ b/chrome/browser/ui/browser_command_controller_browsertest.cc
@@ -83,9 +83,7 @@
 class BrowserCommandControllerBrowserTestRefreshOnly
     : public BrowserCommandControllerBrowserTest {
  public:
-  BrowserCommandControllerBrowserTestRefreshOnly() {
-    scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023}, {});
-  }
+  BrowserCommandControllerBrowserTestRefreshOnly() = default;
   BrowserCommandControllerBrowserTestRefreshOnly(
       const BrowserCommandControllerBrowserTestRefreshOnly&) = delete;
   BrowserCommandControllerBrowserTestRefreshOnly& operator=(
@@ -117,9 +115,6 @@
     net::NetworkChangeNotifier::CreateMockIfNeeded();
     browser()->command_controller()->TabStateChanged();
   }
-
- private:
-  base::test::ScopedFeatureList scoped_feature_list_;
 };
 
 // Verify that showing a constrained window disables find.
diff --git a/chrome/browser/ui/browser_commands_browsertest.cc b/chrome/browser/ui/browser_commands_browsertest.cc
index 90f3887..61aa564 100644
--- a/chrome/browser/ui/browser_commands_browsertest.cc
+++ b/chrome/browser/ui/browser_commands_browsertest.cc
@@ -34,8 +34,7 @@
 class BrowserCommandsTest : public InProcessBrowserTest {
  public:
   BrowserCommandsTest() : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {
-    feature_list_.InitWithFeatures(
-        {features::kTabOrganization, features::kChromeRefresh2023}, {});
+    feature_list_.InitWithFeatures({features::kTabOrganization}, {});
   }
 
   base::test::ScopedFeatureList feature_list_;
diff --git a/chrome/browser/ui/color/material_new_tab_page_color_mixer_unittest.cc b/chrome/browser/ui/color/material_new_tab_page_color_mixer_unittest.cc
index 808f599..3fc2012 100644
--- a/chrome/browser/ui/color/material_new_tab_page_color_mixer_unittest.cc
+++ b/chrome/browser/ui/color/material_new_tab_page_color_mixer_unittest.cc
@@ -9,7 +9,6 @@
 #include "chrome/browser/ui/color/chrome_color_mixers.h"
 #include "components/search/ntp_features.h"
 #include "testing/gtest/include/gtest/gtest.h"
-#include "ui/base/ui_base_features.h"
 #include "ui/color/color_mixers.h"
 #include "ui/color/color_provider.h"
 #include "ui/color/color_provider_key.h"
@@ -36,7 +35,7 @@
 
 TEST_F(MaterialNewTabPageColorMixerTest, NtpModulesRedesignedDisabled) {
   feature_list().InitWithFeatures(
-      /* enabled_features */ {features::kChromeRefresh2023},
+      /* enabled_features */ {},
       /* disabled_features */ {ntp_features::kNtpModulesRedesigned});
 
   AddMaterialColorMixers();
@@ -49,8 +48,8 @@
 
 TEST_F(MaterialNewTabPageColorMixerTest, NtpModulesRedesignedEnabled) {
   feature_list().InitWithFeatures(
-      /* enabled_features */ {ntp_features::kNtpModulesRedesigned,
-                              features::kChromeRefresh2023},
+      /* enabled_features */
+      {ntp_features::kNtpModulesRedesigned},
       /* disabled_features */ {});
 
   AddMaterialColorMixers();
diff --git a/chrome/browser/ui/lens/lens_overlay_controller.cc b/chrome/browser/ui/lens/lens_overlay_controller.cc
index 8d82747..5e81d9e 100644
--- a/chrome/browser/ui/lens/lens_overlay_controller.cc
+++ b/chrome/browser/ui/lens/lens_overlay_controller.cc
@@ -30,7 +30,6 @@
 #include "chrome/browser/ui/views/side_panel/side_panel_coordinator.h"
 #include "chrome/browser/ui/views/side_panel/side_panel_util.h"
 #include "chrome/browser/ui/webui/util/image_util.h"
-#include "chrome/common/pref_names.h"
 #include "chrome/common/webui_url_constants.h"
 #include "chrome/grit/generated_resources.h"
 #include "components/lens/lens_features.h"
@@ -290,13 +289,6 @@
     return;
   }
 
-  // Increment the counter for the number of times the Lens Overlay has been
-  // started.
-  int lens_overlay_start_count =
-      pref_service_->GetInteger(prefs::kLensOverlayStartCount);
-  pref_service_->SetInteger(prefs::kLensOverlayStartCount,
-                            lens_overlay_start_count + 1);
-
   // Create the results side panel coordinator when showing the UI if it does
   // not already exist for this tab's web contents.
   if (!results_side_panel_coordinator_) {
diff --git a/chrome/browser/ui/lens/lens_overlay_controller_browsertest.cc b/chrome/browser/ui/lens/lens_overlay_controller_browsertest.cc
index 46946b1..05a78045 100644
--- a/chrome/browser/ui/lens/lens_overlay_controller_browsertest.cc
+++ b/chrome/browser/ui/lens/lens_overlay_controller_browsertest.cc
@@ -485,10 +485,9 @@
   }
 
   void VerifySearchQueryParameters(const GURL& url_to_process) {
-    EXPECT_THAT(
-        url_to_process.spec(),
-        testing::MatchesRegex(std::string(kResultsSearchBaseUrl) +
-                              ".*q=.*&gsc=1&masfc=c&hl=.*&biw=\\d+&bih=\\d+"));
+    EXPECT_THAT(url_to_process.spec(),
+                testing::MatchesRegex(std::string(kResultsSearchBaseUrl) +
+                                      ".*q=.*&gsc=1&hl=.*&biw=\\d+&bih=\\d+"));
   }
 
   void CloseOverlayAndWaitForOff(LensOverlayController* controller,
@@ -1630,7 +1629,7 @@
   // Loading a url in the side panel should show the results page.
   const GURL first_search_url(
       "https://www.google.com/"
-      "search?source=chrome.cr.menu&q=oranges&lns_mode=text&gsc=1&masfc=c&"
+      "search?source=chrome.cr.menu&q=oranges&lns_mode=text&gsc=1&"
       "hl=en-US");
   controller->LoadURLInResultsFrame(first_search_url);
   EXPECT_TRUE(content::WaitForLoadStop(
@@ -1652,7 +1651,7 @@
   // Loading a second url in the side panel should show the results page.
   const GURL second_search_url(
       "https://www.google.com/"
-      "search?source=chrome.cr.menu&q=kiwi&lns_mode=text&gsc=1&masfc=c&hl="
+      "search?source=chrome.cr.menu&q=kiwi&lns_mode=text&gsc=1&hl="
       "en-US");
   // We can't use content::WaitForLoadStop here since the last navigation is
   // successful.
@@ -1720,7 +1719,7 @@
   // Loading a url in the side panel should show the results page.
   const GURL first_search_url(
       "https://www.google.com/"
-      "search?source=chrome.cr.menu&q=oranges&lns_mode=text&gsc=1&masfc=c&"
+      "search?source=chrome.cr.menu&q=oranges&lns_mode=text&gsc=1&"
       "hl=en-US");
   controller->IssueTextSelectionRequestForTesting("oranges", 20, 200);
   EXPECT_TRUE(content::WaitForLoadStop(
@@ -1744,7 +1743,7 @@
   // Loading a second url in the side panel should show the results page.
   const GURL second_search_url(
       "https://www.google.com/"
-      "search?source=chrome.cr.menu&q=kiwi&lns_mode=text&gsc=1&masfc=c&hl="
+      "search?source=chrome.cr.menu&q=kiwi&lns_mode=text&gsc=1&hl="
       "en-US");
   // We can't use content::WaitForLoadStop here since the last navigation is
   // successful.
@@ -1826,14 +1825,14 @@
 
   // Loading a url in the side panel should show the results page.
   const GURL first_search_url(
-      "https://www.google.com/search?q=oranges&gsc=1&masfc=c&hl=en-US");
+      "https://www.google.com/search?q=oranges&gsc=1&hl=en-US");
   controller->LoadURLInResultsFrame(first_search_url);
   EXPECT_TRUE(content::WaitForLoadStop(
       controller->GetSidePanelWebContentsForTesting()));
 
   // Loading a second url in the side panel should show the results page.
   const GURL second_search_url(
-      "https://www.google.com/search?q=kiwi&gsc=1&masfc=c&hl=en-US");
+      "https://www.google.com/search?q=kiwi&gsc=1&hl=en-US");
   // We can't use content::WaitForLoadStop here since the last navigation is
   // successful.
   content::TestNavigationObserver observer(
diff --git a/chrome/browser/ui/lens/lens_overlay_dismissal_source.h b/chrome/browser/ui/lens/lens_overlay_dismissal_source.h
index e88462b..1f667c0 100644
--- a/chrome/browser/ui/lens/lens_overlay_dismissal_source.h
+++ b/chrome/browser/ui/lens/lens_overlay_dismissal_source.h
@@ -56,7 +56,7 @@
 
   kMaxValue = kFullscreened
 };
-// LINT.ThenChange(//tools/metrics/histograms/metadata/others/enums.xml:LensOverlayDismissalSource)
+// LINT.ThenChange(//tools/metrics/histograms/metadata/lens/enums.xml:LensOverlayDismissalSource)
 
 }  // namespace lens
 
diff --git a/chrome/browser/ui/lens/lens_overlay_invocation_source.h b/chrome/browser/ui/lens/lens_overlay_invocation_source.h
index 24b59cd..b24ba8f 100644
--- a/chrome/browser/ui/lens/lens_overlay_invocation_source.h
+++ b/chrome/browser/ui/lens/lens_overlay_invocation_source.h
@@ -38,7 +38,7 @@
 
   kMaxValue = kOmnibox
 };
-// LINT.ThenChange(//tools/metrics/histograms/metadata/others/enums.xml:LensOverlayInvocationSource)
+// LINT.ThenChange(//tools/metrics/histograms/metadata/lens/enums.xml:LensOverlayInvocationSource)
 
 }  // namespace lens
 
diff --git a/chrome/browser/ui/lens/lens_overlay_url_builder.cc b/chrome/browser/ui/lens/lens_overlay_url_builder.cc
index 503ae473..4fabe79 100644
--- a/chrome/browser/ui/lens/lens_overlay_url_builder.cc
+++ b/chrome/browser/ui/lens/lens_overlay_url_builder.cc
@@ -100,8 +100,6 @@
   new_url = net::AppendOrReplaceQueryParameter(
       new_url, kSearchCompanionParameterKey, kSearchCompanionParameterValue);
   new_url = net::AppendOrReplaceQueryParameter(
-      new_url, kAmbientParameterKey, kAmbientParameterValue);
-  new_url = net::AppendOrReplaceQueryParameter(
       new_url, kLanguageCodeParameterKey,
       g_browser_process->GetApplicationLocale());
   return new_url;
@@ -116,6 +114,8 @@
   }
 
   GURL new_url = url_to_modify;
+  new_url = net::AppendOrReplaceQueryParameter(new_url, kAmbientParameterKey,
+                                               kAmbientParameterValue);
   omnibox::SearchContext search_context;
   if (page_url.has_value()) {
     search_context.set_webpage_url(page_url->spec());
@@ -243,8 +243,6 @@
   std::string temp_output_string;
   return net::GetValueForKeyInQuery(url, kSearchCompanionParameterKey,
                                     &temp_output_string) &&
-         net::GetValueForKeyInQuery(url, kAmbientParameterKey,
-                                    &temp_output_string) &&
          net::GetValueForKeyInQuery(url, kLanguageCodeParameterKey,
                                     &temp_output_string);
 }
diff --git a/chrome/browser/ui/lens/lens_overlay_url_builder_unittest.cc b/chrome/browser/ui/lens/lens_overlay_url_builder_unittest.cc
index 3393d0a..90d5c67 100644
--- a/chrome/browser/ui/lens/lens_overlay_url_builder_unittest.cc
+++ b/chrome/browser/ui/lens/lens_overlay_url_builder_unittest.cc
@@ -70,7 +70,7 @@
   std::string text_query = "Apples";
   std::map<std::string, std::string> additional_params;
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&masfc=c&hl=%s",
+      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&hl=%s",
       kResultsSearchBaseUrl, text_query.c_str(), kLanguage);
 
   EXPECT_EQ(lens::BuildTextOnlySearchURL(
@@ -98,7 +98,7 @@
                           std::make_optional<std::string>(kPageTitle));
 
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&masfc=c&hl=%s",
+      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&hl=%s",
       kResultsSearchBaseUrl, text_query.c_str(), kLanguage);
 
   EXPECT_EQ(lens::BuildTextOnlySearchURL(
@@ -116,7 +116,7 @@
                           std::make_optional<std::string>(kPageTitle));
 
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&masfc=c&hl=%s&"
+      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&hl=%s&masfc=c&"
       "mactx=%s",
       kResultsSearchBaseUrl, text_query.c_str(), kLanguage,
       expected_search_context.c_str());
@@ -135,7 +135,7 @@
       std::make_optional<GURL>(kPageUrl), /*page_title=*/std::nullopt);
 
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&masfc=c&hl=%s&"
+      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&hl=%s&masfc=c&"
       "mactx=%s",
       kResultsSearchBaseUrl, text_query.c_str(), kLanguage,
       expected_search_context.c_str());
@@ -154,7 +154,7 @@
       /*page_url=*/std::nullopt, std::make_optional<std::string>(kPageTitle));
 
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&masfc=c&hl=%s&"
+      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&hl=%s&masfc=c&"
       "mactx=%s",
       kResultsSearchBaseUrl, text_query.c_str(), kLanguage,
       expected_search_context.c_str());
@@ -171,7 +171,7 @@
   std::string text_query = "";
   std::map<std::string, std::string> additional_params;
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&q=&lns_mode=text&gsc=1&masfc=c&hl=%s",
+      "%s?source=chrome.cr.menu&q=&lns_mode=text&gsc=1&hl=%s",
       kResultsSearchBaseUrl, kLanguage);
 
   EXPECT_EQ(lens::BuildTextOnlySearchURL(
@@ -188,7 +188,7 @@
   std::string escaped_text_query =
       base::EscapeQueryParamValue(text_query, /*use_plus=*/true);
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&masfc=c&hl=%s",
+      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&hl=%s",
       kResultsSearchBaseUrl, escaped_text_query.c_str(), kLanguage);
 
   EXPECT_EQ(lens::BuildTextOnlySearchURL(
@@ -205,7 +205,7 @@
   std::string escaped_text_query =
       base::EscapeQueryParamValue(text_query, /*use_plus=*/true);
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&masfc=c&hl=%s",
+      "%s?source=chrome.cr.menu&q=%s&lns_mode=text&gsc=1&hl=%s",
       kResultsSearchBaseUrl, escaped_text_query.c_str(), kLanguage);
 
   EXPECT_EQ(lens::BuildTextOnlySearchURL(
@@ -233,7 +233,7 @@
   request_id->set_image_sequence_id(image_sequence_id);
 
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&gsc=1&masfc=c&hl=%s&q=%s&lns_mode=mu&"
+      "%s?source=chrome.cr.menu&gsc=1&hl=%s&q=%s&lns_mode=mu&"
       "gsessionid=&udm=24&vsrid=%s",
       kResultsSearchBaseUrl, kLanguage, escaped_text_query.c_str(),
       EncodeRequestId(request_id.get()).c_str());
@@ -263,7 +263,7 @@
   request_id->set_image_sequence_id(image_sequence_id);
 
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&gsc=1&masfc=c&hl=%s&q=%s&lns_mode=mu&"
+      "%s?source=chrome.cr.menu&gsc=1&hl=%s&q=%s&lns_mode=mu&"
       "gsessionid=%s&udm=24&vsrid=%s",
       kResultsSearchBaseUrl, kLanguage, escaped_text_query.c_str(),
       search_session_id.c_str(), EncodeRequestId(request_id.get()).c_str());
@@ -297,7 +297,7 @@
                         &encoded_request_id);
 
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&gsc=1&masfc=c&hl=%s&q=&lns_mode=un&"
+      "%s?source=chrome.cr.menu&gsc=1&hl=%s&q=&lns_mode=un&"
       "gsessionid=%s&udm=26&vsrid=%s",
       kResultsSearchBaseUrl, kLanguage, search_session_id.c_str(),
       encoded_request_id.c_str());
@@ -332,7 +332,7 @@
                         &encoded_request_id);
 
   std::string expected_url = base::StringPrintf(
-      "%s?source=chrome.cr.menu&param=value&gsc=1&masfc=c&hl=%s&q=&lns_"
+      "%s?source=chrome.cr.menu&param=value&gsc=1&hl=%s&q=&lns_"
       "mode=un&gsessionid=%s&udm=26&"
       "vsrid=%s",
       kResultsSearchBaseUrl, kLanguage, search_session_id.c_str(),
@@ -346,13 +346,13 @@
 }
 
 TEST_F(LensOverlayUrlBuilderTest, HasCommonSearchQueryParameters) {
-  const GURL url(base::StringPrintf("%s?gsc=1&masfc=c&hl=%s",
-                                    kResultsSearchBaseUrl, kLanguage));
+  const GURL url(
+      base::StringPrintf("%s?gsc=1&hl=%s", kResultsSearchBaseUrl, kLanguage));
   EXPECT_TRUE(lens::HasCommonSearchQueryParameters(url));
 }
 
 TEST_F(LensOverlayUrlBuilderTest, HasCommonSearchQueryParametersWithoutLocale) {
-  const GURL url(base::StringPrintf("%s?gsc=1&masfc=c", kResultsSearchBaseUrl));
+  const GURL url(base::StringPrintf("%s?gsc=1", kResultsSearchBaseUrl));
   EXPECT_FALSE(lens::HasCommonSearchQueryParameters(url));
 }
 
@@ -363,24 +363,8 @@
   EXPECT_FALSE(lens::HasCommonSearchQueryParameters(failing_url1));
 
   const GURL failing_url2(
-      base::StringPrintf("%s?masfc=c", kResultsSearchBaseUrl));
-  EXPECT_FALSE(lens::HasCommonSearchQueryParameters(failing_url2));
-
-  const GURL failing_url3(
       base::StringPrintf("%s?hl=%s", kResultsSearchBaseUrl, kLanguage));
-  EXPECT_FALSE(lens::HasCommonSearchQueryParameters(failing_url3));
-
-  const GURL failing_url4(
-      base::StringPrintf("%s?gsc=1&masfc=c", kResultsSearchBaseUrl));
-  EXPECT_FALSE(lens::HasCommonSearchQueryParameters(failing_url4));
-
-  const GURL failing_url5(
-      base::StringPrintf("%s?masfc=c&hl=%s", kResultsSearchBaseUrl, kLanguage));
-  EXPECT_FALSE(lens::HasCommonSearchQueryParameters(failing_url5));
-
-  const GURL failing_url6(
-      base::StringPrintf("%s?gsc=1&hl=%s", kResultsSearchBaseUrl, kLanguage));
-  EXPECT_FALSE(lens::HasCommonSearchQueryParameters(failing_url6));
+  EXPECT_FALSE(lens::HasCommonSearchQueryParameters(failing_url2));
 }
 
 TEST_F(LensOverlayUrlBuilderTest,
@@ -462,11 +446,11 @@
   std::string viewport_width = "400";
   std::string viewport_height = "500";
   std::string initial_url =
-      base::StringPrintf("%s?q=%s&gsc=1&masfc=c&hl=%s&biw=%s&bih=%s",
+      base::StringPrintf("%s?q=%s&gsc=1&hl=%s&biw=%s&bih=%s",
                          kResultsSearchBaseUrl, text_query.c_str(), kLanguage,
                          viewport_width.c_str(), viewport_height.c_str());
   std::string expected_url =
-      base::StringPrintf("%s?q=%s&gsc=1&masfc=c&hl=%s", kResultsSearchBaseUrl,
+      base::StringPrintf("%s?q=%s&gsc=1&hl=%s", kResultsSearchBaseUrl,
                          text_query.c_str(), kLanguage);
 
   EXPECT_EQ(lens::RemoveUrlViewportParams(GURL(initial_url)),
diff --git a/chrome/browser/ui/lens/lens_untrusted_ui.cc b/chrome/browser/ui/lens/lens_untrusted_ui.cc
index bfba0a4..be6cbd3 100644
--- a/chrome/browser/ui/lens/lens_untrusted_ui.cc
+++ b/chrome/browser/ui/lens/lens_untrusted_ui.cc
@@ -9,7 +9,6 @@
 #include "chrome/browser/ui/lens/lens_overlay_controller.h"
 #include "chrome/browser/ui/webui/searchbox/realbox_handler.h"
 #include "chrome/browser/ui/webui/webui_util.h"
-#include "chrome/common/pref_names.h"
 #include "chrome/common/webui_url_constants.h"
 #include "chrome/grit/generated_resources.h"
 #include "chrome/grit/lens_untrusted_resources.h"
@@ -23,9 +22,6 @@
 
 namespace lens {
 
-// The number of times to show cursor tooltips.
-constexpr int kNumTimesToShowCursorTooltips = 5;
-
 LensUntrustedUI::LensUntrustedUI(content::WebUI* web_ui)
     : UntrustedTopChromeWebUIController(web_ui) {
   // This code path is invoked for both the overlay WebUI and the sidepanel
@@ -46,17 +42,6 @@
                                   IDS_LENS_OVERLAY_TOAST_DISMISS_MESSAGE);
   html_source->AddLocalizedString("initialToastMessage",
                                   IDS_LENS_OVERLAY_INITIAL_TOAST_MESSAGE);
-  html_source->AddLocalizedString("cursorTooltipDragMessage",
-                                  IDS_LENS_OVERLAY_CURSOR_TOOLTIP_DRAG_MESSAGE);
-  html_source->AddLocalizedString(
-      "cursorTooltipTextHighlightMessage",
-      IDS_LENS_OVERLAY_CURSOR_TOOLTIP_TEXT_HIGHLIGHT_MESSAGE);
-  html_source->AddLocalizedString(
-      "cursorTooltipClickMessage",
-      IDS_LENS_OVERLAY_CURSOR_TOOLTIP_CLICK_MESSAGE);
-  html_source->AddLocalizedString(
-      "cursorTooltipLivePageMessage",
-      IDS_LENS_OVERLAY_CURSOR_TOOLTIP_LIVE_PAGE_MESSAGE);
   html_source->AddLocalizedString("translate", IDS_LENS_OVERLAY_TRANSLATE);
 
   // Add finch flags
@@ -122,14 +107,6 @@
   html_source->AddLocalizedString("searchBoxHint",
                                   IDS_GOOGLE_SEARCH_BOX_EMPTY_HINT_MULTIMODAL);
   html_source->AddBoolean("searchboxInSidePanel", true);
-
-  // Determine if the cursor tooltip should appear.
-  Profile* profile = Profile::FromWebUI(web_ui);
-  int lens_overlay_start_count =
-      profile->GetPrefs()->GetInteger(prefs::kLensOverlayStartCount);
-  html_source->AddBoolean(
-      "canShowTooltipFromPrefs",
-      lens_overlay_start_count <= kNumTimesToShowCursorTooltips);
 }
 
 void LensUntrustedUI::BindInterface(
diff --git a/chrome/browser/ui/performance_controls/performance_intervention_button_controller.cc b/chrome/browser/ui/performance_controls/performance_intervention_button_controller.cc
index ba0d727..277a1c54 100644
--- a/chrome/browser/ui/performance_controls/performance_intervention_button_controller.cc
+++ b/chrome/browser/ui/performance_controls/performance_intervention_button_controller.cc
@@ -4,15 +4,20 @@
 
 #include "chrome/browser/ui/performance_controls/performance_intervention_button_controller.h"
 
+#include "base/containers/contains.h"
 #include "base/functional/bind.h"
 #include "chrome/browser/feature_engagement/tracker_factory.h"
 #include "chrome/browser/performance_manager/public/user_tuning/performance_detection_manager.h"
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/ui/browser.h"
+#include "chrome/browser/ui/tabs/tab_strip_model.h"
+#include "chrome/browser/ui/tabs/tab_strip_model_observer.h"
 #include "chrome/browser/user_education/user_education_service.h"
 #include "chrome/browser/user_education/user_education_service_factory.h"
 #include "components/feature_engagement/public/feature_constants.h"
 #include "components/feature_engagement/public/tracker.h"
+#include "components/performance_manager/public/resource_attribution/page_context.h"
+#include "content/public/browser/web_contents.h"
 
 PerformanceInterventionButtonController::
     PerformanceInterventionButtonController(
@@ -27,6 +32,7 @@
   const PerformanceDetectionManager::ResourceTypeSet resource_types = {
       PerformanceDetectionManager::ResourceType::kCpu};
   detection_manager->AddActionableTabsObserver(resource_types, this);
+  browser->tab_strip_model()->AddObserver(this);
 }
 
 PerformanceInterventionButtonController::
@@ -36,6 +42,8 @@
         PerformanceDetectionManager::GetInstance();
     detection_manager->RemoveActionableTabsObserver(this);
   }
+
+  browser_->tab_strip_model()->RemoveObserver(this);
 }
 
 void PerformanceInterventionButtonController::OnActionableTabListChanged(
@@ -60,3 +68,46 @@
     delegate_->Hide();
   }
 }
+
+void PerformanceInterventionButtonController::OnTabStripModelChanged(
+    TabStripModel* tab_strip_model,
+    const TabStripModelChange& change,
+    const TabStripSelectionChange& selection) {
+  if (selection.active_tab_changed()) {
+    std::optional<resource_attribution::PageContext> current_page_context =
+        resource_attribution::PageContext::FromWebContents(
+            selection.new_contents);
+
+    if (!current_page_context.has_value()) {
+      return;
+    }
+
+    // Invalidate the actionable tab list since one of the actionable tabs is no
+    // longer eligible and taking action on the remaining tabs no longer improve
+    // resource health.
+    if (base::Contains(actionable_cpu_tabs_, current_page_context.value())) {
+      actionable_cpu_tabs_.clear();
+      delegate_->Hide();
+      return;
+    }
+  }
+
+  if (change.type() == TabStripModelChange::kRemoved) {
+    for (const TabStripModelChange::RemovedTab& tab :
+         change.GetRemove()->contents) {
+      std::optional<resource_attribution::PageContext> removed_page_context =
+          resource_attribution::PageContext::FromWebContents(tab.contents);
+      CHECK(removed_page_context.has_value());
+      const auto iter_position =
+          std::remove(actionable_cpu_tabs_.begin(), actionable_cpu_tabs_.end(),
+                      removed_page_context);
+      if (iter_position != actionable_cpu_tabs_.end()) {
+        actionable_cpu_tabs_.erase(iter_position);
+      }
+    }
+
+    if (actionable_cpu_tabs_.empty()) {
+      delegate_->Hide();
+    }
+  }
+}
diff --git a/chrome/browser/ui/performance_controls/performance_intervention_button_controller.h b/chrome/browser/ui/performance_controls/performance_intervention_button_controller.h
index 28961bf..97b3fef 100644
--- a/chrome/browser/ui/performance_controls/performance_intervention_button_controller.h
+++ b/chrome/browser/ui/performance_controls/performance_intervention_button_controller.h
@@ -8,8 +8,10 @@
 #include "base/memory/weak_ptr.h"
 #include "chrome/browser/performance_manager/public/user_tuning/performance_detection_manager.h"
 #include "chrome/browser/ui/performance_controls/performance_intervention_button_controller_delegate.h"
+#include "chrome/browser/ui/tabs/tab_strip_model_observer.h"
 
 class Browser;
+class TabStripModel;
 
 namespace {
 
@@ -22,7 +24,8 @@
 // performance health and update the visibility of the intervention toolbar
 // button through a delegate interface.
 class PerformanceInterventionButtonController
-    : public PerformanceDetectionManager::ActionableTabsObserver {
+    : public TabStripModelObserver,
+      public PerformanceDetectionManager::ActionableTabsObserver {
  public:
   PerformanceInterventionButtonController(
       PerformanceInterventionButtonControllerDelegate* delegate,
@@ -39,6 +42,12 @@
       PerformanceDetectionManager::ResourceType type,
       PerformanceDetectionManager::ActionableTabsResult result) override;
 
+  // TabStripModelObserver:
+  void OnTabStripModelChanged(
+      TabStripModel* tab_strip_model,
+      const TabStripModelChange& change,
+      const TabStripSelectionChange& selection) override;
+
  private:
   raw_ptr<PerformanceInterventionButtonControllerDelegate> delegate_ = nullptr;
   const raw_ptr<Browser> browser_;
diff --git a/chrome/browser/ui/plus_addresses/plus_address_creation_controller_desktop.h b/chrome/browser/ui/plus_addresses/plus_address_creation_controller_desktop.h
index 4152e7d..e51f075d 100644
--- a/chrome/browser/ui/plus_addresses/plus_address_creation_controller_desktop.h
+++ b/chrome/browser/ui/plus_addresses/plus_address_creation_controller_desktop.h
@@ -70,9 +70,10 @@
   // This is set by OnPlusAddressReserved and cleared when the dialog is closed.
   std::optional<PlusProfile> plus_profile_;
 
-  // Record the time between `modal_shown_time_` and now as modal shown duration
-  // and clear `modal_shown_time_`.
-  void RecordModalShownDuration(
+  // Records the time between `modal_shown_time_` and now as modal shown
+  // duration and the number of refresh attempts. Resets both
+  // `modal_shown_time_` and `reserve_response_count_`.
+  void RecordModalShownOutcome(
       const PlusAddressMetrics::PlusAddressModalCompletionStatus status);
 
   raw_ptr<base::Clock> clock_ = base::DefaultClock::GetInstance();
@@ -80,6 +81,9 @@
   std::optional<base::Time> modal_shown_time_;
   std::optional<PlusAddressMetrics::PlusAddressModalCompletionStatus>
       modal_error_status_;
+  // The number of responses from calls to reserve a plus address that a user
+  // has made. This equals 1 + number of refreshes.
+  int reserve_response_count_ = 0;
 
   base::WeakPtrFactory<PlusAddressCreationControllerDesktop> weak_ptr_factory_{
       this};
diff --git a/chrome/browser/ui/plus_addresses/plus_address_creation_view.h b/chrome/browser/ui/plus_addresses/plus_address_creation_view.h
index c810a42c..95c5dd2e 100644
--- a/chrome/browser/ui/plus_addresses/plus_address_creation_view.h
+++ b/chrome/browser/ui/plus_addresses/plus_address_creation_view.h
@@ -23,6 +23,7 @@
   DECLARE_CLASS_ELEMENT_IDENTIFIER_VALUE(kPlusAddressErrorTextElementId);
   DECLARE_CLASS_ELEMENT_IDENTIFIER_VALUE(kPlusAddressConfirmButtonElementId);
   DECLARE_CLASS_ELEMENT_IDENTIFIER_VALUE(kPlusAddressCancelButtonElementId);
+  DECLARE_CLASS_ELEMENT_IDENTIFIER_VALUE(kPlusAddressRefreshButtonElementId);
   DECLARE_CLASS_ELEMENT_IDENTIFIER_VALUE(kPlusAddressSuggestedEmailElementId);
 
   // Updates the view to either show the plus address in the bottom sheet and
diff --git a/chrome/browser/ui/side_panel/companion/companion_utils_unittest.cc b/chrome/browser/ui/side_panel/companion/companion_utils_unittest.cc
index d8218ee..9ae99cf 100644
--- a/chrome/browser/ui/side_panel/companion/companion_utils_unittest.cc
+++ b/chrome/browser/ui/side_panel/companion/companion_utils_unittest.cc
@@ -27,8 +27,8 @@
  public:
   CompanionUtilsTest() {
     scoped_feature_list_.InitWithFeatures(
-        {::features::kSidePanelPinning, ::features::kChromeRefresh2023,
-         ::features::kResponsiveToolbar, features::internal::kSidePanelCompanionChromeOS},
+        {::features::kSidePanelPinning, ::features::kResponsiveToolbar,
+         features::internal::kSidePanelCompanionChromeOS},
         {});
   }
   ~CompanionUtilsTest() override = default;
diff --git a/chrome/browser/ui/tabs/organization/tab_organization_service_unittest.cc b/chrome/browser/ui/tabs/organization/tab_organization_service_unittest.cc
index a79e2c0d..1a9245f4 100644
--- a/chrome/browser/ui/tabs/organization/tab_organization_service_unittest.cc
+++ b/chrome/browser/ui/tabs/organization/tab_organization_service_unittest.cc
@@ -92,8 +92,7 @@
 
  private:
   void SetUp() override {
-    feature_list_.InitWithFeatures(
-        {features::kTabOrganization, features::kChromeRefresh2023}, {});
+    feature_list_.InitWithFeatures({features::kTabOrganization}, {});
     TabOrganizationUtils::GetInstance()->SetIgnoreOptGuideForTesting(true);
     profile_ = std::make_unique<TestingProfile>();
     service_ = std::make_unique<TabOrganizationService>(profile_.get());
diff --git a/chrome/browser/ui/tabs/tab_menu_model_unittest.cc b/chrome/browser/ui/tabs/tab_menu_model_unittest.cc
index 9687985..fa91c19 100644
--- a/chrome/browser/ui/tabs/tab_menu_model_unittest.cc
+++ b/chrome/browser/ui/tabs/tab_menu_model_unittest.cc
@@ -47,8 +47,7 @@
 TEST_F(TabMenuModelTest, OrganizeTabs) {
   TabOrganizationUtils::GetInstance()->SetIgnoreOptGuideForTesting(true);
   base::test::ScopedFeatureList feature_list;
-  feature_list.InitWithFeatures(
-      {features::kTabOrganization, features::kChromeRefresh2023}, {});
+  feature_list.InitWithFeatures({features::kTabOrganization}, {});
 
   chrome::NewTab(browser());
   TabMenuModel model(&delegate_, browser()->tab_menu_model_delegate(),
diff --git a/chrome/browser/ui/tabs/tab_strip_model_browsertest.cc b/chrome/browser/ui/tabs/tab_strip_model_browsertest.cc
index c045cf45..4bd493f 100644
--- a/chrome/browser/ui/tabs/tab_strip_model_browsertest.cc
+++ b/chrome/browser/ui/tabs/tab_strip_model_browsertest.cc
@@ -176,8 +176,7 @@
 class TabStripModelBrowserTest : public InProcessBrowserTest {
  public:
   TabStripModelBrowserTest() {
-    feature_list_.InitWithFeatures(
-        {features::kTabOrganization, features::kChromeRefresh2023}, {});
+    feature_list_.InitWithFeatures({features::kTabOrganization}, {});
   }
 
   base::test::ScopedFeatureList feature_list_;
diff --git a/chrome/browser/ui/toolbar/app_menu_model_unittest.cc b/chrome/browser/ui/toolbar/app_menu_model_unittest.cc
index 08ba3e1..2a4f860 100644
--- a/chrome/browser/ui/toolbar/app_menu_model_unittest.cc
+++ b/chrome/browser/ui/toolbar/app_menu_model_unittest.cc
@@ -155,8 +155,7 @@
 class TestAppMenuModelCR2023 : public AppMenuModelTest {
  public:
   TestAppMenuModelCR2023() {
-    feature_list_.InitWithFeatures(
-        {features::kTabOrganization, features::kChromeRefresh2023}, {});
+    feature_list_.InitWithFeatures({features::kTabOrganization}, {});
   }
 
   TestAppMenuModelCR2023(const TestAppMenuModelCR2023&) = delete;
@@ -372,8 +371,7 @@
 TEST_F(TestAppMenuModelCR2023, PerformanceItemElevated) {
   feature_list_.Reset();
   feature_list_.InitWithFeatures(
-      /*enabled_features=*/{features::kChromeRefresh2023,
-                            performance_manager::features::
+      /*enabled_features=*/{performance_manager::features::
                                 kPerformanceControlsSidePanel},
       /*disabled_features=*/{});
   AppMenuModel model(this, browser());
diff --git a/chrome/browser/ui/toolbar/pinned_toolbar/pinned_toolbar_actions_model_browsertest.cc b/chrome/browser/ui/toolbar/pinned_toolbar/pinned_toolbar_actions_model_browsertest.cc
index b947dad..691a75d4 100644
--- a/chrome/browser/ui/toolbar/pinned_toolbar/pinned_toolbar_actions_model_browsertest.cc
+++ b/chrome/browser/ui/toolbar/pinned_toolbar/pinned_toolbar_actions_model_browsertest.cc
@@ -92,8 +92,7 @@
   PinnedToolbarActionsModelBrowserTest() {
     scoped_feature_list_.InitWithFeatures(
         {features::kSidePanelPinning,
-         companion::features::internal::kSidePanelCompanion,
-         features::kChromeRefresh2023},
+         companion::features::internal::kSidePanelCompanion},
         {});
   }
 
diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc
index dff2228..d4495e3 100644
--- a/chrome/browser/ui/ui_features.cc
+++ b/chrome/browser/ui/ui_features.cc
@@ -184,14 +184,20 @@
 BASE_FEATURE(kPreloadTopChromeWebUI,
              "PreloadTopChromeWebUI",
              base::FEATURE_DISABLED_BY_DEFAULT);
+const char kPreloadTopChromeWebUIModeName[] = "preload-mode";
+const char kPreloadTopChromeWebUIModePreloadOnWarmupName[] =
+    "preload-on-warmup";
+const char kPreloadTopChromeWebUIModePreloadOnMakeContentsName[] =
+    "preload-on-make-contents";
 constexpr base::FeatureParam<PreloadTopChromeWebUIMode>::Option
     kPreloadTopChromeWebUIModeOptions[] = {
-        {PreloadTopChromeWebUIMode::kPreloadOnWarmup, "preload-on-warmup"},
+        {PreloadTopChromeWebUIMode::kPreloadOnWarmup,
+         kPreloadTopChromeWebUIModePreloadOnWarmupName},
         {PreloadTopChromeWebUIMode::kPreloadOnMakeContents,
-         "preload-on-make-contents"},
+         kPreloadTopChromeWebUIModePreloadOnMakeContentsName},
 };
 const base::FeatureParam<PreloadTopChromeWebUIMode> kPreloadTopChromeWebUIMode{
-    &kPreloadTopChromeWebUI, "preload-mode",
+    &kPreloadTopChromeWebUI, kPreloadTopChromeWebUIModeName,
     PreloadTopChromeWebUIMode::kPreloadOnMakeContents,
     &kPreloadTopChromeWebUIModeOptions};
 
diff --git a/chrome/browser/ui/ui_features.h b/chrome/browser/ui/ui_features.h
index 1af255da..5818560c 100644
--- a/chrome/browser/ui/ui_features.h
+++ b/chrome/browser/ui/ui_features.h
@@ -122,6 +122,9 @@
   kPreloadOnWarmup = 0,
   kPreloadOnMakeContents = 1
 };
+extern const char kPreloadTopChromeWebUIModeName[];
+extern const char kPreloadTopChromeWebUIModePreloadOnWarmupName[];
+extern const char kPreloadTopChromeWebUIModePreloadOnMakeContentsName[];
 extern const base::FeatureParam<PreloadTopChromeWebUIMode>
     kPreloadTopChromeWebUIMode;
 
diff --git a/chrome/browser/ui/views/controls/subpage_view.cc b/chrome/browser/ui/views/controls/subpage_view.cc
index 6c295cc..f470b18 100644
--- a/chrome/browser/ui/views/controls/subpage_view.cc
+++ b/chrome/browser/ui/views/controls/subpage_view.cc
@@ -38,7 +38,11 @@
       ->SetOrientation(views::LayoutOrientation::kVertical);
 }
 
-SubpageView::~SubpageView() = default;
+SubpageView::~SubpageView() {
+  if (title_) {
+    title_->RemoveObserver(this);
+  }
+}
 
 void SubpageView::SetTitle(const std::u16string& title) {
   title_->SetText(title);
@@ -91,6 +95,11 @@
     title_width -= close_button_width;
   }
   title_->SetMaximumWidth(title_width);
+  // We need to observe the `title_` view for destruction in order to clear the
+  // raw_ptr to prevent a dangling reference. This is because the `title_` is
+  // owned by a view other than this view. That other view is destroyed prior
+  // to the destruction of this view.
+  title_->AddObserver(this);
 
   bubble_frame_view_->SetTitleView(std::move(title_view));
 }
@@ -121,5 +130,12 @@
   bubble_frame_view_->SetFootnoteView(std::move(footnote_view));
 }
 
+void SubpageView::OnViewIsDeleting(views::View* view) {
+  if (view == title_.get()) {
+    title_->RemoveObserver(this);
+    title_ = nullptr;
+  }
+}
+
 BEGIN_METADATA(SubpageView)
 END_METADATA
diff --git a/chrome/browser/ui/views/controls/subpage_view.h b/chrome/browser/ui/views/controls/subpage_view.h
index d3f52c8..eb4c74e 100644
--- a/chrome/browser/ui/views/controls/subpage_view.h
+++ b/chrome/browser/ui/views/controls/subpage_view.h
@@ -10,6 +10,7 @@
 #include "ui/base/metadata/metadata_header_macros.h"
 #include "ui/views/controls/button/button.h"
 #include "ui/views/view.h"
+#include "ui/views/view_observer.h"
 
 namespace views {
 // class Button;
@@ -29,7 +30,7 @@
 // |________________________________________________|
 // ||content view|                                  |
 // *-------------------------------------------------*
-class SubpageView : public views::View {
+class SubpageView : public views::View, public views::ViewObserver {
   METADATA_HEADER(SubpageView, views::View)
 
  public:
@@ -50,6 +51,9 @@
  private:
   void SetUpSubpageTitle(views::Button::PressedCallback callback);
 
+  // ViewObserver:
+  void OnViewIsDeleting(views::View* view) override;
+
   const raw_ptr<views::BubbleFrameView> bubble_frame_view_;
   raw_ptr<views::Label> title_ = nullptr;
   raw_ptr<views::View> content_view_ = nullptr;
diff --git a/chrome/browser/ui/views/extensions/chooser_dialog_view.cc b/chrome/browser/ui/views/extensions/chooser_dialog_view.cc
index 76161bf..b0f3335 100644
--- a/chrome/browser/ui/views/extensions/chooser_dialog_view.cc
+++ b/chrome/browser/ui/views/extensions/chooser_dialog_view.cc
@@ -21,7 +21,6 @@
 #include "ui/views/controls/button/label_button.h"
 #include "ui/views/controls/link.h"
 #include "ui/views/controls/styled_label.h"
-#include "ui/views/layout/fill_layout.h"
 
 ChooserDialogView::ChooserDialogView(
     std::unique_ptr<permissions::ChooserController> chooser_controller) {
@@ -42,12 +41,14 @@
 
   DCHECK(chooser_controller);
 
+  SetUseDefaultFillLayout(true);
   SetButtonLabel(ui::DIALOG_BUTTON_OK, chooser_controller->GetOkButtonLabel());
   SetButtonLabel(ui::DIALOG_BUTTON_CANCEL,
                  chooser_controller->GetCancelButtonLabel());
 
   device_chooser_content_view_ =
-      new DeviceChooserContentView(this, std::move(chooser_controller));
+      AddChildView(std::make_unique<DeviceChooserContentView>(
+          this, std::move(chooser_controller)));
   device_chooser_content_view_->SetBorder(views::CreateEmptyBorder(
       ChromeLayoutProvider::Get()->GetDialogInsetsForContentType(
           views::DialogContentType::kControl,
@@ -83,18 +84,6 @@
   return GetCancelButton();
 }
 
-views::View* ChooserDialogView::GetContentsView() {
-  return device_chooser_content_view_;
-}
-
-views::Widget* ChooserDialogView::GetWidget() {
-  return device_chooser_content_view_->GetWidget();
-}
-
-const views::Widget* ChooserDialogView::GetWidget() const {
-  return device_chooser_content_view_->GetWidget();
-}
-
 void ChooserDialogView::OnSelectionChanged() {
   DialogModelChanged();
 }
diff --git a/chrome/browser/ui/views/extensions/chooser_dialog_view.h b/chrome/browser/ui/views/extensions/chooser_dialog_view.h
index 70cca99..58d5882 100644
--- a/chrome/browser/ui/views/extensions/chooser_dialog_view.h
+++ b/chrome/browser/ui/views/extensions/chooser_dialog_view.h
@@ -35,11 +35,6 @@
   bool IsDialogButtonEnabled(ui::DialogButton button) const override;
   views::View* GetInitiallyFocusedView() override;
 
-  // views::DialogDelegateView:
-  views::View* GetContentsView() override;
-  views::Widget* GetWidget() override;
-  const views::Widget* GetWidget() const override;
-
   // views::TableViewObserver:
   void OnSelectionChanged() override;
 
diff --git a/chrome/browser/ui/views/external_protocol_dialog.cc b/chrome/browser/ui/views/external_protocol_dialog.cc
index b2ceba64..9d6bb67d 100644
--- a/chrome/browser/ui/views/external_protocol_dialog.cc
+++ b/chrome/browser/ui/views/external_protocol_dialog.cc
@@ -100,14 +100,14 @@
       false /* checkbox_selected */, ExternalProtocolHandler::BLOCK));
   SetModalType(ui::MODAL_TYPE_CHILD);
 
-  message_box_view_ =
-      new views::MessageBoxView(GetMessageTextForOrigin(initiating_origin_));
+  message_box_view_ = AddChildView(std::make_unique<views::MessageBoxView>(
+      GetMessageTextForOrigin(initiating_origin_)));
 
   ChromeLayoutProvider* provider = ChromeLayoutProvider::Get();
   set_margins(provider->GetDialogInsetsForContentType(
       views::DialogContentType::kText, views::DialogContentType::kText));
 
-  SetLayoutManager(std::make_unique<views::FillLayout>());
+  SetUseDefaultFillLayout(true);
 
   Profile* profile =
       Profile::FromBrowserContext(web_contents->GetBrowserContext());
@@ -180,18 +180,6 @@
       url_, web_contents_.get(), initiator_document_);
 }
 
-views::View* ExternalProtocolDialog::GetContentsView() {
-  return message_box_view_;
-}
-
-views::Widget* ExternalProtocolDialog::GetWidget() {
-  return message_box_view_ ? message_box_view_->GetWidget() : nullptr;
-}
-
-const views::Widget* ExternalProtocolDialog::GetWidget() const {
-  return message_box_view_ ? message_box_view_->GetWidget() : nullptr;
-}
-
 void ExternalProtocolDialog::SetRememberSelectionCheckboxCheckedForTesting(
     bool checked) {
   message_box_view_->SetCheckBoxSelected(checked);
diff --git a/chrome/browser/ui/views/external_protocol_dialog.h b/chrome/browser/ui/views/external_protocol_dialog.h
index 9694496..22feb5b 100644
--- a/chrome/browser/ui/views/external_protocol_dialog.h
+++ b/chrome/browser/ui/views/external_protocol_dialog.h
@@ -44,9 +44,6 @@
       const views::SizeBounds& available_size) const override;
   bool ShouldShowCloseButton() const override;
   std::u16string GetWindowTitle() const override;
-  views::View* GetContentsView() override;
-  views::Widget* GetWidget() override;
-  const views::Widget* GetWidget() const override;
 
  private:
   friend class test::ExternalProtocolDialogTestApi;
diff --git a/chrome/browser/ui/views/frame/browser_view_browsertest.cc b/chrome/browser/ui/views/frame/browser_view_browsertest.cc
index d1ac433..9c4f8bed 100644
--- a/chrome/browser/ui/views/frame/browser_view_browsertest.cc
+++ b/chrome/browser/ui/views/frame/browser_view_browsertest.cc
@@ -110,15 +110,6 @@
   raw_ptr<DevToolsWindow> devtools_;
 };
 
-class BrowserViewTestRefreshOnly : public BrowserViewTest {
- public:
-  BrowserViewTestRefreshOnly() {
-    scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023}, {});
-  }
-
- private:
-  base::test::ScopedFeatureList scoped_feature_list_;
-};
 namespace {
 
 // Used to simulate scenario in a crash. When WebContentsDestroyed() is invoked
@@ -254,8 +245,7 @@
 }
 
 // Verifies that the side panel's rounded corner is being correctly layed out.
-IN_PROC_BROWSER_TEST_F(BrowserViewTestRefreshOnly,
-                       SidePanelRoundedCornerLayout) {
+IN_PROC_BROWSER_TEST_F(BrowserViewTest, SidePanelRoundedCornerLayout) {
   SidePanelCoordinator* coordinator =
       SidePanelUtil::GetSidePanelCoordinatorForBrowser((browser()));
   coordinator->SetNoDelaysForTesting(true);
diff --git a/chrome/browser/ui/views/media_preview/camera_preview/video_stream_view.cc b/chrome/browser/ui/views/media_preview/camera_preview/video_stream_view.cc
index c1c2de2..f0580bd 100644
--- a/chrome/browser/ui/views/media_preview/camera_preview/video_stream_view.cc
+++ b/chrome/browser/ui/views/media_preview/camera_preview/video_stream_view.cc
@@ -14,13 +14,15 @@
 #include "media/base/video_transformation.h"
 #include "ui/base/l10n/l10n_util.h"
 #include "ui/base/metadata/metadata_impl_macros.h"
+#include "ui/color/color_provider.h"
 #include "ui/compositor/compositor.h"
 #include "ui/gfx/canvas.h"
 
 VideoStreamView::VideoStreamView()
-    : current_aspect_ratio_(video_format_comparison::kDefaultAspectRatio),
+    : targeted_aspect_ratio_(video_format_comparison::kDefaultAspectRatio),
       rounded_radius_(ChromeLayoutProvider::Get()->GetCornerRadiusMetric(
-          views::Emphasis::kHigh)) {
+          views::Emphasis::kHigh)),
+      preview_base_color_(SK_ColorBLACK) {
   SetAccessibilityProperties(
       ax::mojom::Role::kImage,
       l10n_util::GetStringUTF16(
@@ -55,25 +57,10 @@
 void VideoStreamView::ScheduleFramePaint(
     scoped_refptr<media::VideoFrame> frame) {
   latest_frame_ = std::move(frame);
-
-  if (!has_updated_preferred_size_) {
-    if (latest_frame_) {
-      // Caps the height to keep vertical videos from taking up too much
-      // vertical space.
-      current_aspect_ratio_ =
-          std::max(video_format_comparison::kMinAspectRatio,
-                   video_format_comparison::GetFrameAspectRatio(
-                       latest_frame_->natural_size()));
-    }
-    PreferredSizeChanged();
-    has_updated_preferred_size_ = true;
-  }
-
   SchedulePaint();
 }
 
 void VideoStreamView::ClearFrame() {
-  has_updated_preferred_size_ = false;
   video_renderer_.ResetCache();
   latest_frame_.reset();
   rendered_frame_count_ = 0;
@@ -86,29 +73,41 @@
 }
 
 void VideoStreamView::OnPaint(gfx::Canvas* canvas) {
+  const auto background_rect = SkRect::MakeWH(width(), height());
+  canvas->sk_canvas()->clipRRect(
+      SkRRect::MakeRectXY(background_rect, rounded_radius_, rounded_radius_),
+      /*do_anti_alias=*/true);
+
+  cc::PaintFlags background_flags;
+  background_flags.setAntiAlias(true);
+  background_flags.setColor(preview_base_color_);
+  canvas->sk_canvas()->drawRect(background_rect, background_flags);
+
   if (!latest_frame_) {
-    gfx::RectF background_rect(width(), height());
-    cc::PaintFlags background_flags;
-    background_flags.setAntiAlias(true);
-    canvas->DrawRoundRect(background_rect, rounded_radius_, background_flags);
     return;
   }
 
   ++rendered_frame_count_;
 
-  // Centers the video frame horizontally in the view
-  int rendered_frame_width =
-      height() * video_format_comparison::GetFrameAspectRatio(
-                     latest_frame_->natural_size());
-  float x = (width() - rendered_frame_width) / 2.0;
+  int rendered_frame_width = width();
+  int rendered_frame_height = height();
+  float x = 0;
+  float y = 0;
 
-  canvas->sk_canvas()->clipRRect(
-      SkRRect::MakeRectXY(
-          SkRect::MakeXYWH(x, 0, rendered_frame_width, height()),
-          rounded_radius_, rounded_radius_),
-      /*do_anti_alias=*/true);
+  float frame_aspect_ratio = video_format_comparison::GetFrameAspectRatio(
+      latest_frame_->natural_size());
 
-  const gfx::RectF dest_rect(x, 0, rendered_frame_width, height());
+  if (frame_aspect_ratio < targeted_aspect_ratio_) {
+    // Centers the video frame horizontally in the view.
+    rendered_frame_width = height() * frame_aspect_ratio;
+    x = (width() - rendered_frame_width) / 2.0;
+  } else {
+    // Centers the video frame vertically in the view.
+    rendered_frame_height = width() / frame_aspect_ratio;
+    y = (height() - rendered_frame_height) / 2.0;
+  }
+
+  const gfx::RectF dest_rect(x, y, rendered_frame_width, rendered_frame_height);
   cc::PaintFlags flags;
   // Select high quality frame scaling.
   flags.setFilterQuality(cc::PaintFlags::FilterQuality::kHigh);
@@ -121,7 +120,7 @@
 }
 
 int VideoStreamView::GetHeightForWidth(int w) const {
-  return w / current_aspect_ratio_;
+  return w / targeted_aspect_ratio_;
 }
 
 gfx::Size VideoStreamView::CalculatePreferredSize(
@@ -129,8 +128,9 @@
   return gfx::Size(width(), GetHeightForWidth(width()));
 }
 
-void VideoStreamView::OnBoundsChanged(const gfx::Rect& previous_bounds) {
-  has_updated_preferred_size_ = false;
+void VideoStreamView::OnThemeChanged() {
+  views::View::OnThemeChanged();
+  preview_base_color_ = GetColorProvider()->GetColor(ui::kColorSysSurface2);
 }
 
 BEGIN_METADATA(VideoStreamView)
diff --git a/chrome/browser/ui/views/media_preview/camera_preview/video_stream_view.h b/chrome/browser/ui/views/media_preview/camera_preview/video_stream_view.h
index 93eef964..f38146a 100644
--- a/chrome/browser/ui/views/media_preview/camera_preview/video_stream_view.h
+++ b/chrome/browser/ui/views/media_preview/camera_preview/video_stream_view.h
@@ -38,12 +38,12 @@
   int GetHeightForWidth(int w) const override;
   gfx::Size CalculatePreferredSize(
       const views::SizeBounds& /*available_size*/) const override;
-  void OnBoundsChanged(const gfx::Rect& previous_bounds) override;
+  void OnThemeChanged() override;
 
  private:
-  float current_aspect_ratio_;
-  bool has_updated_preferred_size_ = false;
+  const float targeted_aspect_ratio_;
   const int rounded_radius_;
+  SkColor preview_base_color_;
   media::PaintCanvasVideoRenderer video_renderer_;
   scoped_refptr<media::VideoFrame> latest_frame_;
   scoped_refptr<viz::RasterContextProvider> raster_context_provider_;
diff --git a/chrome/browser/ui/views/omnibox/omnibox_popup_view_views_browsertest.cc b/chrome/browser/ui/views/omnibox/omnibox_popup_view_views_browsertest.cc
index 6baca64a..a2f9660 100644
--- a/chrome/browser/ui/views/omnibox/omnibox_popup_view_views_browsertest.cc
+++ b/chrome/browser/ui/views/omnibox/omnibox_popup_view_views_browsertest.cc
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+#include "chrome/browser/ui/views/omnibox/omnibox_popup_view_views.h"
+
 #include <memory>
 
 #include "base/strings/utf_string_conversions.h"
@@ -17,7 +19,6 @@
 #include "chrome/browser/ui/color/chrome_color_id.h"
 #include "chrome/browser/ui/views/frame/browser_view.h"
 #include "chrome/browser/ui/views/location_bar/location_bar_view.h"
-#include "chrome/browser/ui/views/omnibox/omnibox_popup_view_views.h"
 #include "chrome/browser/ui/views/omnibox/omnibox_popup_view_views_test.h"
 #include "chrome/browser/ui/views/omnibox/omnibox_result_view.h"
 #include "chrome/browser/ui/views/omnibox/omnibox_view_views.h"
@@ -464,7 +465,7 @@
   EXPECT_EQ(observer.selected_children_changed_count(), 3);
   EXPECT_EQ(observer.selection_changed_count(), 3);
   EXPECT_EQ(observer.active_descendant_changed_count(), 3);
-  EXPECT_EQ(observer.value_changed_count(), 3);
+  EXPECT_EQ(observer.value_changed_count(), 4);
   EXPECT_TRUE(contains(observer.omnibox_value(), "press Enter to switch"));
   EXPECT_FALSE(contains(observer.omnibox_value(), "2 of 2"));
   EXPECT_TRUE(
@@ -478,7 +479,7 @@
   EXPECT_EQ(observer.selected_children_changed_count(), 4);
   EXPECT_EQ(observer.selection_changed_count(), 4);
   EXPECT_EQ(observer.active_descendant_changed_count(), 4);
-  EXPECT_EQ(observer.value_changed_count(), 4);
+  EXPECT_EQ(observer.value_changed_count(), 5);
   EXPECT_TRUE(contains(observer.omnibox_value(), "press Tab then Enter"));
   EXPECT_TRUE(contains(observer.omnibox_value(), "2 of 2"));
   EXPECT_TRUE(
diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc b/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc
index 4a6ab939..81f571a 100644
--- a/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc
+++ b/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc
@@ -213,10 +213,8 @@
           features::kFileSystemAccessPersistentPermissions) &&
       base::FeatureList::IsEnabled(
           features::kFileSystemAccessPersistentPermissionsUpdatedPageInfo);
-  if ((base::FeatureList::IsEnabled(
-           permissions::features::kOneTimePermission) &&
-       permissions::PermissionUtil::CanPermissionBeAllowedOnce(
-           permission_.type)) ||
+  if (permissions::PermissionUtil::CanPermissionBeAllowedOnce(
+          permission_.type) ||
       permission_.is_one_time || show_updated_page_info_file_system) {
     auto subpage_button = views::CreateVectorImageButtonWithNativeTheme(
         base::BindRepeating(
diff --git a/chrome/browser/ui/views/performance_controls/performance_intervention_interactive_ui_test.cc b/chrome/browser/ui/views/performance_controls/performance_intervention_interactive_ui_test.cc
index 265fcdc0..65aa83c 100644
--- a/chrome/browser/ui/views/performance_controls/performance_intervention_interactive_ui_test.cc
+++ b/chrome/browser/ui/views/performance_controls/performance_intervention_interactive_ui_test.cc
@@ -24,7 +24,9 @@
 
 namespace {
 
+DEFINE_LOCAL_ELEMENT_IDENTIFIER_VALUE(kFirstTab);
 DEFINE_LOCAL_ELEMENT_IDENTIFIER_VALUE(kSecondTab);
+DEFINE_LOCAL_ELEMENT_IDENTIFIER_VALUE(kThirdTab);
 constexpr char kSkipPixelTestsReason[] = "Should only run in pixel_tests.";
 
 }  // namespace
@@ -85,6 +87,13 @@
     });
   }
 
+  auto CloseTab(int index) {
+    return Do(base::BindLambdaForTesting([=]() {
+      browser()->tab_strip_model()->CloseWebContentsAt(
+          index, TabCloseTypes::CLOSE_NONE);
+    }));
+  }
+
  private:
   base::test::ScopedFeatureList feature_list_;
 };
@@ -115,6 +124,40 @@
       EnsureNotPresent(kToolbarPerformanceInterventionButtonElementId));
 }
 
+// Making an actionable tab active should hide the intervention toolbar button
+// because the actionable tab list is no longer valid.
+IN_PROC_BROWSER_TEST_F(PerformanceInterventionInteractiveTest,
+                       ActivateActionableTab) {
+  RunTestSequence(
+      InstrumentTab(kFirstTab, 0), AddInstrumentedTab(kSecondTab, GetURL()),
+      AddInstrumentedTab(kThirdTab, GetURL()),
+      EnsureNotPresent(kToolbarPerformanceInterventionButtonElementId),
+      TriggerOnActionableTabListChange({0, 1}),
+      WaitForShow(kToolbarPerformanceInterventionButtonElementId),
+      // Flush the event queue to ensure that we trigger the button to hide
+      // after it is shown.
+      FlushEvents(), SelectTab(kTabStripElementId, 0), WaitForShow(kFirstTab),
+      WaitForHide(kToolbarPerformanceInterventionButtonElementId));
+}
+
+// The intervention toolbar button should remain visible after closing an
+// actionable tab is there are more tabs that are still actionable.
+IN_PROC_BROWSER_TEST_F(PerformanceInterventionInteractiveTest,
+                       CloseActionableTab) {
+  RunTestSequence(
+      InstrumentTab(kFirstTab, 0), AddInstrumentedTab(kSecondTab, GetURL()),
+      AddInstrumentedTab(kThirdTab, GetURL()),
+      EnsureNotPresent(kToolbarPerformanceInterventionButtonElementId),
+      TriggerOnActionableTabListChange({0, 1}),
+      WaitForShow(kToolbarPerformanceInterventionButtonElementId),
+      // Flush the event queue to ensure that we trigger the button to hide
+      // after it is shown.
+      FlushEvents(), CloseTab(1),
+      // Button should still be showing since there is another actionable tab
+      EnsurePresent(kToolbarPerformanceInterventionButtonElementId),
+      CloseTab(0), WaitForHide(kToolbarPerformanceInterventionButtonElementId));
+}
+
 // Pixel test to verify that the performance intervention toolbar
 // button looks correct.
 IN_PROC_BROWSER_TEST_F(PerformanceInterventionInteractiveTest,
diff --git a/chrome/browser/ui/views/permissions/chip/permission_chip_view.cc b/chrome/browser/ui/views/permissions/chip/permission_chip_view.cc
index bdf3b33..eb95725 100644
--- a/chrome/browser/ui/views/permissions/chip/permission_chip_view.cc
+++ b/chrome/browser/ui/views/permissions/chip/permission_chip_view.cc
@@ -98,7 +98,6 @@
   OnAnimationValueMaybeChanged();
 }
 
-// TODO(crbug.com/40232718): Respect `available_size`.
 gfx::Size PermissionChipView::CalculatePreferredSize(
     const views::SizeBounds& available_size) const {
   const int icon_width = GetIconViewWidth();
@@ -113,8 +112,9 @@
       base_width_ + icon_width +
       base::ClampRound(collapsable_width * animation_->GetCurrentValue());
 
-  return views::LabelButton::CalculatePreferredSize(
-      views::SizeBounds(width, {}));
+  return gfx::Size(width, views::LabelButton::CalculatePreferredSize(
+                              views::SizeBounds(width, {}))
+                              .height());
 }
 
 void PermissionChipView::OnThemeChanged() {
diff --git a/chrome/browser/ui/views/permissions/permission_prompt_bubble_two_origins_view.cc b/chrome/browser/ui/views/permissions/permission_prompt_bubble_two_origins_view.cc
index bf3ab0e..5a63d11 100644
--- a/chrome/browser/ui/views/permissions/permission_prompt_bubble_two_origins_view.cc
+++ b/chrome/browser/ui/views/permissions/permission_prompt_bubble_two_origins_view.cc
@@ -8,6 +8,7 @@
 #include "chrome/app/vector_icons/vector_icons.h"
 #include "chrome/browser/favicon/favicon_service_factory.h"
 #include "chrome/browser/ui/browser.h"
+#include "chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.h"
 #include "components/content_settings/core/browser/host_content_settings_map.h"
 #include "components/content_settings/core/common/content_settings_types.h"
 #include "components/favicon/core/favicon_service.h"
@@ -116,8 +117,14 @@
       favicon_tracker_.get());
 }
 
-PermissionPromptBubbleTwoOriginsView::~PermissionPromptBubbleTwoOriginsView() =
-    default;
+PermissionPromptBubbleTwoOriginsView::~PermissionPromptBubbleTwoOriginsView() {
+  if (favicon_left_) {
+    favicon_left_->RemoveObserver(this);
+  }
+  if (favicon_right_) {
+    favicon_right_->RemoveObserver(this);
+  }
+}
 
 void PermissionPromptBubbleTwoOriginsView::AddedToWidget() {
   if (GetUrlIdentityObject().type != UrlIdentity::Type::kDefault) {
@@ -202,6 +209,7 @@
   favicon_left_->SetVerticalAlignment(views::ImageView::Alignment::kLeading);
   favicon_left_->SetProperty(views::kMarginsKey,
                              gfx::Insets().set_right(favicon_margin));
+  favicon_left_->AddObserver(this);
 
   // Right favicon for embedding origin.
   favicon_right_ = favicon_container_->AddChildView(
@@ -209,6 +217,7 @@
   favicon_right_->SetVerticalAlignment(views::ImageView::Alignment::kLeading);
   favicon_right_->SetProperty(views::kMarginsKey,
                               gfx::Insets().set_left(favicon_margin));
+  favicon_right_->AddObserver(this);
 }
 
 void PermissionPromptBubbleTwoOriginsView::OnEmbeddingOriginFaviconLoaded(
@@ -296,3 +305,15 @@
     show_timer_.FireNow();
   }
 }
+
+void PermissionPromptBubbleTwoOriginsView::OnViewIsDeleting(views::View* view) {
+  // This is necessary to avoid dangling pointers since the favicon views are
+  // owned by the custom title which is destroyed before this view.
+  view->RemoveObserver(this);
+  if (view == favicon_left_.get()) {
+    favicon_left_ = nullptr;
+  }
+  if (view == favicon_right_.get()) {
+    favicon_right_ = nullptr;
+  }
+}
diff --git a/chrome/browser/ui/views/permissions/permission_prompt_bubble_two_origins_view.h b/chrome/browser/ui/views/permissions/permission_prompt_bubble_two_origins_view.h
index b45b3e7..b0da3f6 100644
--- a/chrome/browser/ui/views/permissions/permission_prompt_bubble_two_origins_view.h
+++ b/chrome/browser/ui/views/permissions/permission_prompt_bubble_two_origins_view.h
@@ -11,6 +11,7 @@
 #include "components/favicon_base/favicon_types.h"
 #include "ui/views/controls/styled_label.h"
 #include "ui/views/layout/flex_layout_view.h"
+#include "ui/views/view_observer.h"
 
 // Bubble that prompts the user to grant or deny a permission request from from
 // a pair of origins.
@@ -27,7 +28,8 @@
 // |                           [ Block ] [ Allow ] |
 // -------------------------------------------------
 class PermissionPromptBubbleTwoOriginsView
-    : public PermissionPromptBubbleBaseView {
+    : public PermissionPromptBubbleBaseView,
+      public views::ViewObserver {
  public:
   PermissionPromptBubbleTwoOriginsView(
       Browser* browser,
@@ -76,6 +78,9 @@
 
   void MaybeShow();
 
+  // ViewObserver:
+  void OnViewIsDeleting(views::View* view) override;
+
   // The task tracker for loading favicons.
   std::unique_ptr<base::CancelableTaskTracker> favicon_tracker_;
 
diff --git a/chrome/browser/ui/views/plus_addresses/plus_address_creation_controller_desktop.cc b/chrome/browser/ui/views/plus_addresses/plus_address_creation_controller_desktop.cc
index 6a21eef..3273457 100644
--- a/chrome/browser/ui/views/plus_addresses/plus_address_creation_controller_desktop.cc
+++ b/chrome/browser/ui/views/plus_addresses/plus_address_creation_controller_desktop.cc
@@ -4,6 +4,7 @@
 
 #include "chrome/browser/ui/plus_addresses/plus_address_creation_controller_desktop.h"
 
+#include <algorithm>
 #include <memory>
 #include <optional>
 #include <string>
@@ -125,10 +126,10 @@
   PlusAddressMetrics::RecordModalEvent(
       PlusAddressMetrics::PlusAddressModalEvent::kModalCanceled);
   if (modal_error_status_.has_value()) {
-    RecordModalShownDuration(modal_error_status_.value());
+    RecordModalShownOutcome(modal_error_status_.value());
     modal_error_status_.reset();
   } else {
-    RecordModalShownDuration(
+    RecordModalShownOutcome(
         PlusAddressMetrics::PlusAddressModalCompletionStatus::kModalCanceled);
   }
 }
@@ -142,12 +143,16 @@
   return dialog_delegate_.get();
 }
 
-void PlusAddressCreationControllerDesktop::RecordModalShownDuration(
+void PlusAddressCreationControllerDesktop::RecordModalShownOutcome(
     const PlusAddressMetrics::PlusAddressModalCompletionStatus status) {
   if (modal_shown_time_.has_value()) {
-    PlusAddressMetrics::RecordModalShownDuration(
-        status, clock_->Now() - modal_shown_time_.value());
+    // The number of refreshes is equal to the number of `reserve` responses
+    // minus 1, since the first displayed plus address also calls `reserve`.
+    PlusAddressMetrics::RecordModalShownOutcome(
+        status, clock_->Now() - modal_shown_time_.value(),
+        std::max(0, reserve_response_count_ - 1));
     modal_shown_time_.reset();
+    reserve_response_count_ = 0;
   }
 }
 
@@ -170,6 +175,7 @@
     const PlusProfileOrError& maybe_plus_profile) {
   if (maybe_plus_profile.has_value()) {
     plus_profile_ = maybe_plus_profile.value();
+    ++reserve_response_count_;
   } else {
     modal_error_status_ = PlusAddressMetrics::PlusAddressModalCompletionStatus::
         kReservePlusAddressError;
@@ -190,7 +196,7 @@
   if (maybe_plus_profile.has_value()) {
     std::move(callback_).Run(maybe_plus_profile->plus_address);
     // PlusAddress successfully confirmed, closing the modal.
-    RecordModalShownDuration(
+    RecordModalShownOutcome(
         PlusAddressMetrics::PlusAddressModalCompletionStatus::kModalConfirmed);
   } else {
     modal_error_status_ = PlusAddressMetrics::PlusAddressModalCompletionStatus::
diff --git a/chrome/browser/ui/views/plus_addresses/plus_address_creation_dialog_delegate.cc b/chrome/browser/ui/views/plus_addresses/plus_address_creation_dialog_delegate.cc
index 4d78b28..fd81fce 100644
--- a/chrome/browser/ui/views/plus_addresses/plus_address_creation_dialog_delegate.cc
+++ b/chrome/browser/ui/views/plus_addresses/plus_address_creation_dialog_delegate.cc
@@ -75,6 +75,8 @@
 DEFINE_CLASS_ELEMENT_IDENTIFIER_VALUE(PlusAddressCreationView,
                                       kPlusAddressCancelButtonElementId);
 DEFINE_CLASS_ELEMENT_IDENTIFIER_VALUE(PlusAddressCreationView,
+                                      kPlusAddressRefreshButtonElementId);
+DEFINE_CLASS_ELEMENT_IDENTIFIER_VALUE(PlusAddressCreationView,
                                       kPlusAddressSuggestedEmailElementId);
 
 PlusAddressCreationDialogDelegate::PlusAddressCreationDialogDelegate(
@@ -221,6 +223,8 @@
     views::SetImageFromVectorIconWithColorId(refresh_button_,
                                              vector_icons::kReloadIcon,
                                              ui::kColorIcon, ui::kColorIcon);
+    refresh_button_->SetProperty(views::kElementIdentifierKey,
+                                 kPlusAddressRefreshButtonElementId);
     refresh_button_->SetAccessibleName(l10n_util::GetStringUTF16(
         IDS_PLUS_ADDRESS_MODEL_REFRESH_BUTTON_ACCESSIBLE_NAME));
     refresh_button_->SetProperty(views::kMarginsKey,
diff --git a/chrome/browser/ui/views/plus_addresses/plus_address_creation_dialog_interactive_uitest.cc b/chrome/browser/ui/views/plus_addresses/plus_address_creation_dialog_interactive_uitest.cc
index a52a584d..6f9b67c 100644
--- a/chrome/browser/ui/views/plus_addresses/plus_address_creation_dialog_interactive_uitest.cc
+++ b/chrome/browser/ui/views/plus_addresses/plus_address_creation_dialog_interactive_uitest.cc
@@ -2,7 +2,9 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+#include "base/json/json_reader.h"
 #include "base/test/metrics/histogram_tester.h"
+#include "base/test/scoped_feature_list.h"
 #include "base/test/test_future.h"
 #include "chrome/browser/plus_addresses/plus_address_service_factory.h"
 #include "chrome/browser/profiles/profile.h"
@@ -36,6 +38,9 @@
 namespace plus_addresses {
 namespace {
 
+using PlusAddressModalCompletionStatus =
+    PlusAddressMetrics::PlusAddressModalCompletionStatus;
+
 constexpr char kFakeEmailAddress[] = "alice@email.example";
 constexpr char kFakeManagementUrl[] = "https://manage.example/";
 constexpr char kFakeOauthScope[] = "https://foo.example";
@@ -43,6 +48,11 @@
 constexpr char kReservePath[] = "/v1/profiles/reserve";
 constexpr char kConfirmPath[] = "/v1/profiles/create";
 
+constexpr char kFakePlusAddress[] = "plus@plus.plus";
+constexpr char16_t kFakePlusAddressU16[] = u"plus@plus.plus";
+constexpr char kFakePlusAddressRefresh[] = "plus-refresh@plus.plus";
+constexpr char16_t kFakePlusAddressRefreshU16[] = u"plus-refresh@plus.plus";
+
 // Histogram names and formatting.
 constexpr char kPlusAddressModalEventHistogram[] =
     "Autofill.PlusAddresses.Modal.Events";
@@ -53,7 +63,8 @@
       {PlusAddressMetrics::PlusAddressNetworkRequestTypeToString(type)},
       /*offsets=*/nullptr);
 }
-std::string FormatHistogramNameFor(
+
+std::string FormatDurationHistogramNameFor(
     PlusAddressMetrics::PlusAddressModalCompletionStatus status) {
   return base::ReplaceStringPlaceholders(
       "Autofill.PlusAddresses.Modal.$1.ShownDuration",
@@ -61,6 +72,14 @@
       /*offsets=*/nullptr);
 }
 
+std::string FormatRefreshHistogramNameFor(
+    PlusAddressMetrics::PlusAddressModalCompletionStatus status) {
+  return base::ReplaceStringPlaceholders(
+      "Autofill.PlusAddresses.Modal.$1.Refreshes",
+      {PlusAddressMetrics::PlusAddressModalCompletionStatusToString(status)},
+      /*offsets=*/nullptr);
+}
+
 }  // namespace
 
 class ScopedPlusAddressFeatureList {
@@ -81,12 +100,16 @@
     features_.Reset();
     // Don't enable the 'sync-with-server' param so that the dialog is the
     // only way to trigger requests to the server.
-    features_.InitAndEnableFeatureWithParameters(
-        features::kPlusAddressesEnabled,
-        {{"server-url", {server_url}},
-         {"oauth-scope", {kFakeOauthScope}},
-         {"manage-url", {kFakeManagementUrl}},
-         {"error-report-url", {kFakeErrorReportUrl}}});
+    features_.InitWithFeaturesAndParameters(
+        /*enabled_features=*/{{features::kPlusAddressesEnabled,
+                               {{"server-url", {server_url}},
+                                {"oauth-scope", {kFakeOauthScope}},
+                                {"manage-url", {kFakeManagementUrl}},
+                                {"error-report-url", {kFakeErrorReportUrl}}}},
+                              {features::kPlusAddressRefresh, {}},
+                              {features::kPlusAddressRefreshUiInDesktopModal,
+                               {}}},
+        /*disabled_features=*/{});
   }
 
  private:
@@ -147,19 +170,31 @@
         request.GetURL().path() != kConfirmPath) {
       return nullptr;
     }
+
+    bool is_refresh = [&]() {
+      std::optional<base::Value> body = base::JSONReader::Read(request.content);
+      if (!body || !body->is_dict() || !body->GetIfDict()) {
+        return false;
+      }
+      return body->GetIfDict()
+          ->FindBool("refresh_email_address")
+          .value_or(false);
+    }();
     std::unique_ptr<net::test_server::BasicHttpResponse> http_response(
         new net::test_server::BasicHttpResponse);
     http_response->set_code(net::HTTP_OK);
     http_response->set_content_type("application/json");
-    http_response->set_content(
-        PlusAddressResponseContent(request.GetURL().path() == kConfirmPath));
+    http_response->set_content(PlusAddressResponseContent(
+        request.GetURL().path() == kConfirmPath,
+        is_refresh ? kFakePlusAddressRefresh : kFakePlusAddress));
     return http_response;
   }
 
  protected:
-  std::string PlusAddressResponseContent(bool confirmed) {
+  std::string PlusAddressResponseContent(bool confirmed,
+                                         const std::string& plus_address) {
     return plus_addresses::test::MakeCreationResponse(PlusProfile(
-        /*profile_id=*/"123", facet.Serialize(), fake_plus_address, confirmed));
+        /*profile_id=*/"123", facet.Serialize(), plus_address, confirmed));
   }
 
   InteractiveTestApi::StepBuilder ShowModal() {
@@ -191,6 +226,17 @@
     });
   }
 
+  InteractiveTestApi::StepBuilder CheckModalOutcomeHistograms(
+      PlusAddressModalCompletionStatus status,
+      int refresh_count) {
+    return Do([this, status, refresh_count]() {
+      histogram_tester_.ExpectTotalCount(FormatDurationHistogramNameFor(status),
+                                         1);
+      histogram_tester_.ExpectUniqueSample(
+          FormatRefreshHistogramNameFor(status), refresh_count, 1);
+    });
+  }
+
   InteractiveTestApi::StepBuilder
   CheckModalEventHistogramBuckets(int shown, int confirmed, int canceled) {
     return Do([this, shown, confirmed, canceled]() {
@@ -209,7 +255,6 @@
     });
   }
 
-  const std::string fake_plus_address = "plus@plus.plus";
   const url::Origin facet = url::Origin::Create(GURL("https://test.example"));
   base::CallbackListSubscription unused_subscription_;
   std::unique_ptr<IdentityTestEnvironmentProfileAdaptor>
@@ -242,7 +287,7 @@
       InSameContext(Steps(
           CheckViewProperty(
               PlusAddressCreationView::kPlusAddressSuggestedEmailElementId,
-              &views::Label::GetText, base::UTF8ToUTF16(fake_plus_address)),
+              &views::Label::GetText, kFakePlusAddressU16),
           // Ensure hidden elements are not present.
           EnsureNotPresent(
               PlusAddressCreationView::kPlusAddressErrorTextElementId),
@@ -256,21 +301,74 @@
       // Flush remaining instructions to ensure that all metrics are
       // recorded.
       FlushEvents(), Check([&] {
-        return future_.IsReady() && future_.Get() == fake_plus_address;
+        return future_.IsReady() && future_.Get() == kFakePlusAddress;
       }),
-      CheckModalEventHistogramBuckets(/*shown*/ 1, /*confirmed*/ 1,
-                                      /*canceled*/ 0),
+      CheckModalEventHistogramBuckets(/*shown=*/1, /*confirmed=*/1,
+                                      /*canceled=*/0),
       CheckHistogramUniqueSample(
           FormatHistogramNameFor(PlusAddressNetworkRequestType::kReserve),
           net::HttpStatusCode::HTTP_OK, 1),
       CheckHistogramUniqueSample(
           FormatHistogramNameFor(PlusAddressNetworkRequestType::kCreate),
           net::HttpStatusCode::HTTP_OK, 1),
-      CheckHistogramTotalCount(
-          FormatHistogramNameFor(
-              PlusAddressMetrics::PlusAddressModalCompletionStatus::
-                  kModalConfirmed),
-          1));
+      CheckModalOutcomeHistograms(
+          PlusAddressModalCompletionStatus::kModalConfirmed,
+          /*refresh_count=*/0));
+}
+
+// An interactive UI test to exercise successful plus address user flow.
+IN_PROC_BROWSER_TEST_F(PlusAddressCreationDialogInteractiveTest,
+                       ConfirmPlusAddressSucceedsAfterRefresh) {
+  embedded_test_server()->RegisterRequestHandler(base::BindRepeating(
+      &PlusAddressCreationDialogInteractiveTest::HandleRequestWithSuccess,
+      // It is safe to use base::Unretained(this) because the
+      // embedded_test_server is shutdown as part of `TearDownOnMainThread`.
+      base::Unretained(this)));
+  // RegisterRequestHandler must be called before server starts.
+  embedded_test_server()->StartAcceptingConnections();
+
+  RunTestSequence(
+      ShowModal(),
+      // Wait for modal to be shown and plus address reservation to complete.
+      InAnyContext(WaitForViewProperty(
+          PlusAddressCreationView::kPlusAddressConfirmButtonElementId,
+          views::View, Enabled, true)),
+      InSameContext(Steps(
+          CheckViewProperty(
+              PlusAddressCreationView::kPlusAddressSuggestedEmailElementId,
+              &views::Label::GetText, kFakePlusAddressU16),
+          // Ensure hidden elements are not present.
+          EnsureNotPresent(
+              PlusAddressCreationView::kPlusAddressErrorTextElementId),
+          EnsureNotPresent(views::BubbleFrameView::kProgressIndicatorElementId),
+          // Simulate refresh.
+          PressButton(
+              PlusAddressCreationView::kPlusAddressRefreshButtonElementId),
+          WaitForViewProperty(
+              PlusAddressCreationView::kPlusAddressSuggestedEmailElementId,
+              views::Label, Text, kFakePlusAddressRefreshU16),
+          // Simulate confirming plus address.
+          PressButton(
+              PlusAddressCreationView::kPlusAddressConfirmButtonElementId),
+          // Successful confirmation should close the modal.
+          WaitForHide(
+              PlusAddressCreationView::kPlusAddressDescriptionTextElementId))),
+      // Flush remaining instructions to ensure that all metrics are
+      // recorded.
+      FlushEvents(), Check([&] {
+        return future_.IsReady() && future_.Get() == kFakePlusAddress;
+      }),
+      CheckModalEventHistogramBuckets(/*shown=*/1, /*confirmed=*/1,
+                                      /*canceled=*/0),
+      CheckHistogramUniqueSample(
+          FormatHistogramNameFor(PlusAddressNetworkRequestType::kReserve),
+          net::HttpStatusCode::HTTP_OK, 2),
+      CheckHistogramUniqueSample(
+          FormatHistogramNameFor(PlusAddressNetworkRequestType::kCreate),
+          net::HttpStatusCode::HTTP_OK, 1),
+      CheckModalOutcomeHistograms(
+          PlusAddressModalCompletionStatus::kModalConfirmed,
+          /*refresh_count=*/1));
 }
 
 IN_PROC_BROWSER_TEST_F(PlusAddressCreationDialogInteractiveTest,
@@ -310,13 +408,11 @@
       // Flush remaining instructions to ensure that all metrics are
       // recorded.
       FlushEvents(),
-      CheckModalEventHistogramBuckets(/*shown*/ 1, /*confirmed*/ 0,
-                                      /*canceled*/ 1),
-      CheckHistogramTotalCount(
-          FormatHistogramNameFor(
-              PlusAddressMetrics::PlusAddressModalCompletionStatus::
-                  kReservePlusAddressError),
-          1));
+      CheckModalEventHistogramBuckets(/*shown=*/1, /*confirmed=*/0,
+                                      /*canceled=*/1),
+      CheckModalOutcomeHistograms(
+          PlusAddressModalCompletionStatus::kReservePlusAddressError,
+          /*refresh_count=*/0));
 }
 
 IN_PROC_BROWSER_TEST_F(
@@ -331,7 +427,8 @@
               new net::test_server::BasicHttpResponse);
           http_response->set_code(net::HTTP_OK);
           http_response->set_content_type("application/json");
-          http_response->set_content(PlusAddressResponseContent(false));
+          http_response->set_content(
+              PlusAddressResponseContent(false, kFakePlusAddress));
           return http_response;
         }
         return std::make_unique<net::test_server::HungResponse>();
@@ -363,13 +460,11 @@
       CheckHistogramUniqueSample(
           FormatHistogramNameFor(PlusAddressNetworkRequestType::kReserve),
           net::HttpStatusCode::HTTP_OK, 1),
-      CheckModalEventHistogramBuckets(/*shown*/ 1, /*confirmed*/ 1,
-                                      /*canceled*/ 1),
-      CheckHistogramTotalCount(
-          FormatHistogramNameFor(
-              PlusAddressMetrics::PlusAddressModalCompletionStatus::
-                  kConfirmPlusAddressError),
-          1));
+      CheckModalEventHistogramBuckets(/*shown=*/1, /*confirmed=*/1,
+                                      /*canceled=*/1),
+      CheckModalOutcomeHistograms(
+          PlusAddressModalCompletionStatus::kConfirmPlusAddressError,
+          /*refresh_count=*/0));
 }
 
 IN_PROC_BROWSER_TEST_F(PlusAddressCreationDialogInteractiveTest,
@@ -383,7 +478,8 @@
         http_response->set_content_type("application/json");
         if (request.GetURL().path() == kReservePath) {
           http_response->set_code(net::HTTP_OK);
-          http_response->set_content(PlusAddressResponseContent(false));
+          http_response->set_content(
+              PlusAddressResponseContent(false, kFakePlusAddress));
 
         } else {
           http_response->set_code(net::HTTP_NOT_FOUND);
@@ -413,13 +509,11 @@
       CheckHistogramUniqueSample(
           FormatHistogramNameFor(PlusAddressNetworkRequestType::kCreate),
           net::HttpStatusCode::HTTP_NOT_FOUND, 1),
-      CheckModalEventHistogramBuckets(/*shown*/ 1, /*confirmed*/ 1,
-                                      /*canceled*/ 1),
-      CheckHistogramTotalCount(
-          FormatHistogramNameFor(
-              PlusAddressMetrics::PlusAddressModalCompletionStatus::
-                  kConfirmPlusAddressError),
-          1));
+      CheckModalEventHistogramBuckets(/*shown=*/1, /*confirmed=*/1,
+                                      /*canceled=*/1),
+      CheckModalOutcomeHistograms(
+          PlusAddressModalCompletionStatus::kConfirmPlusAddressError,
+          /*refresh_count=*/0));
 }
 
 // Ensure modal handles manager link clicked on description text and opens a new
@@ -505,9 +599,8 @@
       CheckModalEventHistogramBuckets(/*shown*/ 1, /*confirmed*/ 0,
                                       /*canceled*/ 1),
       CheckHistogramTotalCount(
-          FormatHistogramNameFor(
-              PlusAddressMetrics::PlusAddressModalCompletionStatus::
-                  kModalCanceled),
+          FormatDurationHistogramNameFor(
+              PlusAddressModalCompletionStatus::kModalCanceled),
           1));
 }
 
@@ -533,12 +626,11 @@
       // Flush remaining instructions to ensure that all metrics are
       // recorded.
       FlushEvents(),
-      CheckModalEventHistogramBuckets(/*shown*/ 1, /*confirmed*/ 0,
-                                      /*canceled*/ 1),
+      CheckModalEventHistogramBuckets(/*shown=*/1, /*confirmed=*/0,
+                                      /*canceled=*/1),
       CheckHistogramTotalCount(
-          FormatHistogramNameFor(
-              PlusAddressMetrics::PlusAddressModalCompletionStatus::
-                  kModalCanceled),
+          FormatDurationHistogramNameFor(
+              PlusAddressModalCompletionStatus::kModalCanceled),
           1));
 }
 
@@ -564,8 +656,8 @@
             browser()->tab_strip_model()->GetActiveWebContents()->Close();
           }))),
 
-      CheckModalEventHistogramBuckets(/*shown*/ 1, /*confirmed*/ 0,
-                                      /*canceled*/ 0));
+      CheckModalEventHistogramBuckets(/*shown=*/1, /*confirmed=*/0,
+                                      /*canceled=*/0));
 }
 
 IN_PROC_BROWSER_TEST_F(PlusAddressCreationDialogInteractiveTest, DoubleInit) {
@@ -602,9 +694,9 @@
       // The second callback should not be run on confirmation on
       // the modal.
       Check([&] { return !double_init_future.IsReady(); }), Check([&] {
-        return future_.IsReady() && future_.Get() == fake_plus_address;
+        return future_.IsReady() && future_.Get() == kFakePlusAddress;
       }),
-      CheckModalEventHistogramBuckets(/*shown*/ 1, /*confirmed*/ 1,
-                                      /*canceled*/ 0));
+      CheckModalEventHistogramBuckets(/*shown=*/1, /*confirmed=*/1,
+                                      /*canceled=*/0));
 }
 }  // namespace plus_addresses
diff --git a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut.cc b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut.cc
index 0a9abbf..4d1a2eb2 100644
--- a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut.cc
+++ b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut.cc
@@ -29,7 +29,7 @@
 #include "ui/views/bubble/bubble_dialog_model_host.h"
 #include "url/gurl.h"
 
-namespace chrome {
+namespace shortcuts {
 
 namespace {
 
@@ -65,10 +65,10 @@
   Profile* current_profile =
       Profile::FromBrowserContext(web_contents->GetBrowserContext());
   if (current_profile) {
-    title = shortcuts::AppendProfileNameToTitleIfNeeded(current_profile, title);
+    title = AppendProfileNameToTitleIfNeeded(current_profile, title);
   }
 
-  auto delegate = std::make_unique<shortcuts::CreateDesktopShortcutDelegate>(
+  auto delegate = std::make_unique<CreateDesktopShortcutDelegate>(
       web_contents, std::move(dialog_action_and_text_callback));
   auto delegate_weak_ptr = delegate->AsWeakPtr();
 
@@ -79,20 +79,18 @@
               IDS_CREATE_SHORTCUT_NOT_APPS_DIALOG_TITLE))
           .SetSubtitle(l10n_util::GetStringUTF16(
               IDS_CREATE_SHORTCUT_NOT_APPS_DIALOG_SUBTITLE))
-          .AddOkButton(base::BindOnce(
-                           &shortcuts::CreateDesktopShortcutDelegate::OnAccept,
-                           delegate_weak_ptr),
+          .AddOkButton(base::BindOnce(&CreateDesktopShortcutDelegate::OnAccept,
+                                      delegate_weak_ptr),
                        ui::DialogModel::Button::Params()
                            .SetLabel(l10n_util::GetStringUTF16(
                                IDS_CREATE_SHORTCUTS_BUTTON_LABEL))
-                           .SetId(shortcuts::CreateDesktopShortcutDelegate::
+                           .SetId(CreateDesktopShortcutDelegate::
                                       kCreateShortcutDialogOkButtonId))
           // Dialog cancellations and closes are handled properly by the dialog
           // destroying callback.
           .AddCancelButton(base::DoNothing())
-          .SetDialogDestroyingCallback(
-              base::BindOnce(&shortcuts::CreateDesktopShortcutDelegate::OnClose,
-                             delegate_weak_ptr))
+          .SetDialogDestroyingCallback(base::BindOnce(
+              &CreateDesktopShortcutDelegate::OnClose, delegate_weak_ptr))
           .OverrideDefaultButton(ui::DialogButton::DIALOG_BUTTON_NONE)
           .Build();
 
@@ -104,7 +102,7 @@
                   IDS_CREATE_SHORTCUT_NOT_APPS_AX_BUBBLE_LABEL),
               web_contents->GetLastCommittedURL(), web_contents,
               base::BindRepeating(
-                  &shortcuts::CreateDesktopShortcutDelegate::OnTitleUpdated,
+                  &CreateDesktopShortcutDelegate::OnTitleUpdated,
                   delegate_weak_ptr)),
           views::BubbleDialogModelHost::FieldType::kControl));
 
@@ -118,17 +116,6 @@
 
 }  // namespace
 
-void CreateDesktopShortcutForActiveWebContents(Browser* browser) {
-  content::WebContents* const web_contents =
-      browser->tab_strip_model()->GetActiveWebContents();
-
-  if (!web_contents) {
-    return;
-  }
-
-  CreateShortcutForWebContents(web_contents, base::DoNothing());
-}
-
 void ShowCreateDesktopShortcutDialogForTesting(
     content::WebContents* web_contents,
     const gfx::ImageSkia& icon,
@@ -143,10 +130,25 @@
     content::WebContents* web_contents,
     base::OnceCallback<void(bool shortcuts_created)>
         shortcut_creation_callback) {
-  shortcuts::CreateShortcutForCurrentWebContentsTask::CreateAndStart(
+  CreateShortcutForCurrentWebContentsTask::CreateAndStart(
       *web_contents,
       base::BindOnce(&ShowCreateDesktopShortcutDialog, web_contents),
       std::move(shortcut_creation_callback));
 }
 
+}  // namespace shortcuts
+
+namespace chrome {
+
+void CreateDesktopShortcutForActiveWebContents(Browser* browser) {
+  content::WebContents* const web_contents =
+      browser->tab_strip_model()->GetActiveWebContents();
+
+  if (!web_contents) {
+    return;
+  }
+
+  shortcuts::CreateShortcutForWebContents(web_contents, base::DoNothing());
+}
+
 }  // namespace chrome
diff --git a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut.h b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut.h
index a14a10a..c4f7c29 100644
--- a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut.h
+++ b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut.h
@@ -17,7 +17,7 @@
 class ImageSkia;
 }  // namespace gfx
 
-namespace chrome {
+namespace shortcuts {
 
 // Used to return the following information from the Create Desktop Shortcut
 // dialog:
@@ -41,6 +41,6 @@
     base::OnceCallback<void(bool shortcuts_created)>
         shortcut_creation_callback);
 
-}  // namespace chrome
+}  // namespace shortcuts
 
 #endif  // CHROME_BROWSER_UI_VIEWS_SHORTCUTS_CREATE_DESKTOP_SHORTCUT_H_
diff --git a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_delegate.cc b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_delegate.cc
index e001f51c..5bd2376c 100644
--- a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_delegate.cc
+++ b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_delegate.cc
@@ -45,7 +45,7 @@
 
 CreateDesktopShortcutDelegate::CreateDesktopShortcutDelegate(
     content::WebContents* web_contents,
-    chrome::CreateShortcutDialogCallback final_callback)
+    CreateShortcutDialogCallback final_callback)
     : content::WebContentsObserver(web_contents),
       final_callback_(std::move(final_callback)) {}
 
diff --git a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_delegate.h b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_delegate.h
index ab6db00..661a750 100644
--- a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_delegate.h
+++ b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_delegate.h
@@ -36,9 +36,8 @@
  public:
   DECLARE_CLASS_ELEMENT_IDENTIFIER_VALUE(kCreateShortcutDialogOkButtonId);
 
-  CreateDesktopShortcutDelegate(
-      content::WebContents* web_contents,
-      chrome::CreateShortcutDialogCallback final_callback);
+  CreateDesktopShortcutDelegate(content::WebContents* web_contents,
+                                CreateShortcutDialogCallback final_callback);
 
   ~CreateDesktopShortcutDelegate() override;
 
@@ -58,7 +57,7 @@
  private:
   void CloseDialogAsIgnored();
 
-  chrome::CreateShortcutDialogCallback final_callback_;
+  CreateShortcutDialogCallback final_callback_;
   std::u16string text_field_data_;
   base::WeakPtrFactory<CreateDesktopShortcutDelegate> weak_ptr_factory_{this};
 };
diff --git a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_dialog_view_browsertest.cc b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_dialog_view_browsertest.cc
index 502ec38..917cd66f 100644
--- a/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_dialog_view_browsertest.cc
+++ b/chrome/browser/ui/views/shortcuts/create_desktop_shortcut_dialog_view_browsertest.cc
@@ -49,8 +49,7 @@
   }
 
  protected:
-  void OverrideShortcutShownCallback(
-      chrome::CreateShortcutDialogCallback callback) {
+  void OverrideShortcutShownCallback(CreateShortcutDialogCallback callback) {
     shortcut_callback = std::move(callback);
   }
 
@@ -59,13 +58,13 @@
         ui_test_utils::NavigateToURL(browser, GURL("https://example.com")));
 
     std::u16string title = base::UTF8ToUTF16(name);
-    chrome::ShowCreateDesktopShortcutDialogForTesting(
+    ShowCreateDesktopShortcutDialogForTesting(
         browser->tab_strip_model()->GetActiveWebContents(), gfx::ImageSkia(),
         title, std::move(shortcut_callback));
   }
 
  private:
-  chrome::CreateShortcutDialogCallback shortcut_callback = base::DoNothing();
+  CreateShortcutDialogCallback shortcut_callback = base::DoNothing();
 };
 
 IN_PROC_BROWSER_TEST_F(CreateDesktopShortcutDialogViewBrowserTest,
@@ -241,13 +240,13 @@
 
   views::NamedWidgetShownWaiter widget_waiter(
       views::test::AnyWidgetTestPasskey{}, "CreateDesktopShortcutDialog");
-  chrome::ShowCreateDesktopShortcutDialogForTesting(
+  ShowCreateDesktopShortcutDialogForTesting(
       browser()->tab_strip_model()->GetActiveWebContents(), gfx::ImageSkia(),
       titles[0], test_future1.GetCallback());
   views::Widget* widget = widget_waiter.WaitIfNeededAndGet();
 
   // Verify that a second request fails before the first dialog is closed.
-  chrome::ShowCreateDesktopShortcutDialogForTesting(
+  ShowCreateDesktopShortcutDialogForTesting(
       browser()->tab_strip_model()->GetActiveWebContents(), gfx::ImageSkia(),
       titles[1], test_future2.GetCallback());
   EXPECT_TRUE(test_future2.Wait());
@@ -278,7 +277,7 @@
       views::test::AnyWidgetTestPasskey{}, "CreateDesktopShortcutDialog");
 
   base::test::TestFuture<bool> final_callback;
-  chrome::CreateShortcutForWebContents(
+  CreateShortcutForWebContents(
       browser()->tab_strip_model()->GetActiveWebContents(),
       final_callback.GetCallback());
   views::Widget* widget = widget_waiter.WaitIfNeededAndGet();
diff --git a/chrome/browser/ui/views/side_panel/extensions/extension_side_panel_browsertest.cc b/chrome/browser/ui/views/side_panel/extensions/extension_side_panel_browsertest.cc
index a418ba18..92a3539 100644
--- a/chrome/browser/ui/views/side_panel/extensions/extension_side_panel_browsertest.cc
+++ b/chrome/browser/ui/views/side_panel/extensions/extension_side_panel_browsertest.cc
@@ -164,7 +164,7 @@
   ExtensionSidePanelBrowserTest() {
     feature_list_.InitWithFeatures(
         {extensions_features::kExtensionSidePanelIntegration,
-         features::kSidePanelPinning, features::kChromeRefresh2023},
+         features::kSidePanelPinning},
         {});
   }
 
diff --git a/chrome/browser/ui/views/side_panel/lens/lens_side_panel_coordinator_unittest.cc b/chrome/browser/ui/views/side_panel/lens/lens_side_panel_coordinator_unittest.cc
index f80e0557..3796f83 100644
--- a/chrome/browser/ui/views/side_panel/lens/lens_side_panel_coordinator_unittest.cc
+++ b/chrome/browser/ui/views/side_panel/lens/lens_side_panel_coordinator_unittest.cc
@@ -51,8 +51,7 @@
       features.InitWithFeaturesAndParameters(
           {{lens::features::kLensStandalone,
             {{lens::features::kHomepageURLForLens.name, kLensHomepageURL}}},
-           {features::kSidePanelPinning, {}},
-           {features::kChromeRefresh2023, {}}},
+           {features::kSidePanelPinning, {}}},
           {});
     } else {
       features.InitWithFeaturesAndParameters(
diff --git a/chrome/browser/ui/views/side_panel/performance_controls/performance_side_panel_interactive_uitest.cc b/chrome/browser/ui/views/side_panel/performance_controls/performance_side_panel_interactive_uitest.cc
index 83e5352..29ada31f 100644
--- a/chrome/browser/ui/views/side_panel/performance_controls/performance_side_panel_interactive_uitest.cc
+++ b/chrome/browser/ui/views/side_panel/performance_controls/performance_side_panel_interactive_uitest.cc
@@ -46,7 +46,7 @@
  public:
   void SetUp() override {
     scoped_feature_list_.InitWithFeatures(
-        {features::kSidePanelPinning, features::kChromeRefresh2023,
+        {features::kSidePanelPinning,
          performance_manager::features::kPerformanceControlsSidePanel},
         {});
     animation_mode_reset_ = gfx::AnimationTestApi::SetRichAnimationRenderMode(
diff --git a/chrome/browser/ui/views/side_panel/search_companion/companion_page_browsertest.cc b/chrome/browser/ui/views/side_panel/search_companion/companion_page_browsertest.cc
index e5ff88a..de1c3a7 100644
--- a/chrome/browser/ui/views/side_panel/search_companion/companion_page_browsertest.cc
+++ b/chrome/browser/ui/views/side_panel/search_companion/companion_page_browsertest.cc
@@ -2390,8 +2390,7 @@
 
   void SetUpFeatureList() override {
     CompanionPageBrowserTest::SetUpFeatureList();
-    pinning_feature_list_.InitWithFeatures(
-        {features::kSidePanelPinning, features::kChromeRefresh2023}, {});
+    pinning_feature_list_.InitWithFeatures({features::kSidePanelPinning}, {});
   }
 
   ~CompanionSidePanelPinningBrowserTest() override = default;
diff --git a/chrome/browser/ui/views/side_panel/side_panel_coordinator_unittest.cc b/chrome/browser/ui/views/side_panel/side_panel_coordinator_unittest.cc
index 9cde83c..58265d9 100644
--- a/chrome/browser/ui/views/side_panel/side_panel_coordinator_unittest.cc
+++ b/chrome/browser/ui/views/side_panel/side_panel_coordinator_unittest.cc
@@ -80,9 +80,7 @@
 class SidePanelCoordinatorTest : public TestWithBrowserView {
  public:
   void SetUp() override {
-    feature_list_.InitWithFeatures(
-        {features::kSidePanelPinning, features::kChromeRefresh2023},
-        {});
+    feature_list_.InitWithFeatures({features::kSidePanelPinning}, {});
     TestWithBrowserView::SetUp();
 
     AddTabToBrowser(GURL("http://foo1.com"));
@@ -1836,9 +1834,7 @@
  public:
   void SetUp() override {
     feature_list_.InitWithFeatures(
-        {features::kSidePanelPinning, features::kChromeRefresh2023,
-         features::kResponsiveToolbar},
-        {});
+        {features::kSidePanelPinning, features::kResponsiveToolbar}, {});
     TestWithBrowserView::SetUp();
 
     AddTabToBrowser(GURL("http://foo1.com"));
diff --git a/chrome/browser/ui/views/side_panel/side_panel_interactive_uitest.cc b/chrome/browser/ui/views/side_panel/side_panel_interactive_uitest.cc
index 3ead020..63358bb4 100644
--- a/chrome/browser/ui/views/side_panel/side_panel_interactive_uitest.cc
+++ b/chrome/browser/ui/views/side_panel/side_panel_interactive_uitest.cc
@@ -244,9 +244,7 @@
   void SetUp() override {
     set_open_about_blank_on_browser_launch(true);
     scoped_feature_list_.InitWithFeatures(
-        {features::kSidePanelPinning, features::kChromeRefresh2023,
-         features::kReadAnything},
-        {});
+        {features::kSidePanelPinning, features::kReadAnything}, {});
     InteractiveBrowserTest::SetUp();
   }
 
diff --git a/chrome/browser/ui/views/side_panel/side_panel_web_ui_view.cc b/chrome/browser/ui/views/side_panel/side_panel_web_ui_view.cc
index f28842c..6e7e236 100644
--- a/chrome/browser/ui/views/side_panel/side_panel_web_ui_view.cc
+++ b/chrome/browser/ui/views/side_panel/side_panel_web_ui_view.cc
@@ -27,8 +27,9 @@
     : on_show_cb_(std::move(on_show_cb)),
       close_cb_(std::move(close_cb)),
       contents_wrapper_(contents_wrapper) {
-  SidePanelUtil::GetSidePanelContentProxy(this)->SetAvailable(false);
-  SetVisible(false);
+  const bool is_ready_to_show = contents_wrapper->is_ready_to_show();
+  SidePanelUtil::GetSidePanelContentProxy(this)->SetAvailable(is_ready_to_show);
+  SetVisible(is_ready_to_show);
   SetID(kSidePanelWebViewId);
   contents_wrapper_->SetHost(weak_factory_.GetWeakPtr());
   SetWebContents(contents_wrapper_->web_contents());
diff --git a/chrome/browser/ui/views/tabs/tab_search_container_browsertest.cc b/chrome/browser/ui/views/tabs/tab_search_container_browsertest.cc
index 6f43613..b2dcbafb 100644
--- a/chrome/browser/ui/views/tabs/tab_search_container_browsertest.cc
+++ b/chrome/browser/ui/views/tabs/tab_search_container_browsertest.cc
@@ -30,8 +30,7 @@
 class TabSearchContainerBrowserTest : public InProcessBrowserTest {
  public:
   TabSearchContainerBrowserTest() {
-    feature_list_.InitWithFeatures(
-        {features::kTabOrganization, features::kChromeRefresh2023}, {});
+    feature_list_.InitWithFeatures({features::kTabOrganization}, {});
     TabOrganizationUtils::GetInstance()->SetIgnoreOptGuideForTesting(true);
   }
 
diff --git a/chrome/browser/ui/views/tabs/tab_search_container_unittest.cc b/chrome/browser/ui/views/tabs/tab_search_container_unittest.cc
index 64a169c..6c81b19 100644
--- a/chrome/browser/ui/views/tabs/tab_search_container_unittest.cc
+++ b/chrome/browser/ui/views/tabs/tab_search_container_unittest.cc
@@ -37,8 +37,7 @@
     ChromeViewsTestBase::SetUp();
 
     TabOrganizationUtils::GetInstance()->SetIgnoreOptGuideForTesting(true);
-    scoped_feature_list_.InitWithFeatures(
-        {features::kTabOrganization, features::kChromeRefresh2023}, {});
+    scoped_feature_list_.InitWithFeatures({features::kTabOrganization}, {});
 
     tab_strip_controller_ =
         std::make_unique<FakeBaseTabStripControllerWithProfile>();
diff --git a/chrome/browser/ui/views/toolbar/app_menu_browsertest.cc b/chrome/browser/ui/views/toolbar/app_menu_browsertest.cc
index 366e22b6..803f456 100644
--- a/chrome/browser/ui/views/toolbar/app_menu_browsertest.cc
+++ b/chrome/browser/ui/views/toolbar/app_menu_browsertest.cc
@@ -177,10 +177,10 @@
     // testing that seemed to result in them always being skipped when the
     // default feature state wasn't correct, even when setting the correct state
     // via command-line flags. Probably I was doing something wrong...
-    scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023,
-                                           // Needed for the "extensions" test
-                                           features::kExtensionsMenuInAppMenu},
-                                          {});
+    scoped_feature_list_.InitWithFeatures(
+        {// Needed for the "extensions" test
+         features::kExtensionsMenuInAppMenu},
+        {});
   }
 
  private:
diff --git a/chrome/browser/ui/views/toolbar/pinned_toolbar_actions_container_unittest.cc b/chrome/browser/ui/views/toolbar/pinned_toolbar_actions_container_unittest.cc
index 1c08627..d2e40f24b 100644
--- a/chrome/browser/ui/views/toolbar/pinned_toolbar_actions_container_unittest.cc
+++ b/chrome/browser/ui/views/toolbar/pinned_toolbar_actions_container_unittest.cc
@@ -36,8 +36,7 @@
 class PinnedToolbarActionsContainerTest : public TestWithBrowserView {
  public:
   void SetUp() override {
-    scoped_feature_list_.InitWithFeatures(
-        {features::kSidePanelPinning, features::kChromeRefresh2023}, {});
+    scoped_feature_list_.InitWithFeatures({features::kSidePanelPinning}, {});
     TestWithBrowserView::SetUp();
     AddTab(browser_view()->browser(), GURL("http://foo1.com"));
     browser_view()->browser()->tab_strip_model()->ActivateTabAt(0);
diff --git a/chrome/browser/ui/views/toolbar/toolbar_controller_interactive_uitest.cc b/chrome/browser/ui/views/toolbar/toolbar_controller_interactive_uitest.cc
index b2985dad..ae8977a 100644
--- a/chrome/browser/ui/views/toolbar/toolbar_controller_interactive_uitest.cc
+++ b/chrome/browser/ui/views/toolbar/toolbar_controller_interactive_uitest.cc
@@ -53,9 +53,7 @@
             {feature_engagement::kIPHTabSearchFeature})) {
     ToolbarControllerUtil::SetPreventOverflowForTesting(false);
     scoped_feature_list_.InitWithFeatures(
-        {features::kResponsiveToolbar, features::kSidePanelPinning,
-         features::kChromeRefresh2023},
-        {});
+        {features::kResponsiveToolbar, features::kSidePanelPinning}, {});
   }
 
   void SetUpOnMainThread() override {
diff --git a/chrome/browser/ui/views/user_education/help_bubble_factory_webui_interactive_uitest.cc b/chrome/browser/ui/views/user_education/help_bubble_factory_webui_interactive_uitest.cc
index 6cccba80..73b67a28 100644
--- a/chrome/browser/ui/views/user_education/help_bubble_factory_webui_interactive_uitest.cc
+++ b/chrome/browser/ui/views/user_education/help_bubble_factory_webui_interactive_uitest.cc
@@ -80,8 +80,7 @@
 class HelpBubbleFactoryWebUIInteractiveUiTest : public InteractiveBrowserTest {
  public:
   HelpBubbleFactoryWebUIInteractiveUiTest() {
-    feature_list_.InitWithFeatures(
-        {features::kSidePanelPinning, features::kChromeRefresh2023}, {});
+    feature_list_.InitWithFeatures({features::kSidePanelPinning}, {});
   }
   ~HelpBubbleFactoryWebUIInteractiveUiTest() override = default;
 
diff --git a/chrome/browser/ui/views/user_education/help_bubble_handler_interactive_uitest.cc b/chrome/browser/ui/views/user_education/help_bubble_handler_interactive_uitest.cc
index 6e822ba..5c9a93c 100644
--- a/chrome/browser/ui/views/user_education/help_bubble_handler_interactive_uitest.cc
+++ b/chrome/browser/ui/views/user_education/help_bubble_handler_interactive_uitest.cc
@@ -31,8 +31,7 @@
 class HelpBubbleHandlerInteractiveUiTest : public InteractiveBrowserTest {
  public:
   HelpBubbleHandlerInteractiveUiTest() {
-    feature_list_.InitWithFeatures(
-        {features::kSidePanelPinning, features::kChromeRefresh2023}, {});
+    feature_list_.InitWithFeatures({features::kSidePanelPinning}, {});
   }
   ~HelpBubbleHandlerInteractiveUiTest() override = default;
 
diff --git a/chrome/browser/ui/web_applications/web_app_menu_model_browsertest.cc b/chrome/browser/ui/web_applications/web_app_menu_model_browsertest.cc
index e777405..f3e5350 100644
--- a/chrome/browser/ui/web_applications/web_app_menu_model_browsertest.cc
+++ b/chrome/browser/ui/web_applications/web_app_menu_model_browsertest.cc
@@ -7,7 +7,6 @@
 #include <algorithm>
 #include <vector>
 
-#include "base/test/scoped_feature_list.h"
 #include "build/chromeos_buildflags.h"
 #include "chrome/browser/ui/browser.h"
 #include "chrome/browser/ui/browser_commands.h"
@@ -22,15 +21,13 @@
 #include "testing/gtest/include/gtest/gtest.h"
 #include "ui/base/accelerators/accelerator.h"
 #include "ui/base/models/menu_model.h"
-#include "ui/base/ui_base_features.h"
 #include "url/gurl.h"
 
 namespace web_app {
 
 class TestWebAppMenuModelCR2023 : public WebAppBrowserTestBase {
  public:
-  TestWebAppMenuModelCR2023()
-      : WebAppBrowserTestBase({features::kChromeRefresh2023}, {}) {}
+  TestWebAppMenuModelCR2023() : WebAppBrowserTestBase({}, {}) {}
 
   TestWebAppMenuModelCR2023(const TestWebAppMenuModelCR2023&) = delete;
   TestWebAppMenuModelCR2023& operator=(const TestWebAppMenuModelCR2023&) =
diff --git a/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler.cc b/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler.cc
index ed058e3..f84ff824 100644
--- a/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler.cc
+++ b/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler.cc
@@ -335,6 +335,17 @@
   media_route_starter_->StartRoute(std::move(params));
 }
 
+void AccessCodeCastHandler::OnSinkAddedResultForTesting(
+    access_code_cast::mojom::AddSinkResultCode add_sink_result,
+    std::optional<MediaSink::Id> sink_id) {
+  OnSinkAddedResult(add_sink_result, sink_id);
+}
+
+void AccessCodeCastHandler::OnSinksUpdatedForTesting(
+    const std::vector<MediaSinkWithCastModes>& sinks) {
+  OnSinksUpdated(sinks);
+}
+
 // MediaRouter::CreateRoute callback handler - log the success / failure of the
 // CreateRoute operation and return the result code to the dialog.
 // If there is a presentation request, call the appropriate presentation
diff --git a/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler.h b/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler.h
index d5d30f05..36b8b37 100644
--- a/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler.h
+++ b/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler.h
@@ -52,6 +52,15 @@
       const media_router::CastModeSet& cast_mode_set,
       std::unique_ptr<MediaRouteStarter> media_route_starter);
 
+  // Testing constructor used to inject an access_code_sink_service. Only use
+  // the above constructor.
+  AccessCodeCastHandler(
+      mojo::PendingReceiver<access_code_cast::mojom::PageHandler> page_handler,
+      mojo::PendingRemote<access_code_cast::mojom::Page> page,
+      const media_router::CastModeSet& cast_mode_set,
+      std::unique_ptr<MediaRouteStarter> media_route_starter,
+      AccessCodeCastSinkService* access_code_sink_service);
+
   ~AccessCodeCastHandler() override;
 
   // access_code_cast::mojom::PageHandler overrides:
@@ -62,26 +71,25 @@
   // access_code_cast::mojom::PageHandler overrides:
   void CastToSink(CastToSinkCallback callback) override;
 
+  // Testing methods, do not use these outside of tests.
+  void SetSinkIdForTesting(const MediaSink::Id& sink_id) { sink_id_ = sink_id; }
+  void SetSinkCallbackForTesting(AddSinkCallback callback);
+  void SetIdentityManagerForTesting(signin::IdentityManager* identity_manager);
+  void SetSyncServiceForTesting(syncer::SyncService* sync_service);
+
+  MediaRouteStarter* GetMediaRouteStarterForTesting() {
+    return media_route_starter_.get();
+  }
+  const std::optional<MediaSink::Id>& GetSinkIdForTesting() { return sink_id_; }
+
+  void OnSinkAddedResultForTesting(
+      access_code_cast::mojom::AddSinkResultCode add_sink_result,
+      std::optional<MediaSink::Id> sink_id);
+
+  void OnSinksUpdatedForTesting(
+      const std::vector<MediaSinkWithCastModes>& sinks);
+
  private:
-  friend class AccessCodeCastHandlerTest;
-  FRIEND_TEST_ALL_PREFIXES(AccessCodeCastHandlerTest, DiscoveredDeviceAdded);
-  FRIEND_TEST_ALL_PREFIXES(AccessCodeCastHandlerTest, OtherDevicesIgnored);
-  FRIEND_TEST_ALL_PREFIXES(AccessCodeCastHandlerTest, DesktopMirroring);
-  FRIEND_TEST_ALL_PREFIXES(AccessCodeCastHandlerTest, DesktopMirroringError);
-  FRIEND_TEST_ALL_PREFIXES(AccessCodeCastHandlerTest, OnSinkAddedResult);
-  FRIEND_TEST_ALL_PREFIXES(AccessCodeCastHandlerTest, RouteAlreadyExists);
-  FRIEND_TEST_ALL_PREFIXES(AccessCodeCastHandlerTest, ProfileSyncSuccess);
-  FRIEND_TEST_ALL_PREFIXES(AccessCodeCastHandlerTest, ProfileSyncError);
-  FRIEND_TEST_ALL_PREFIXES(AccessCodeCastHandlerTest, ProfileSyncPaused);
-
-  // Constructor that is used for testing.
-  AccessCodeCastHandler(
-      mojo::PendingReceiver<access_code_cast::mojom::PageHandler> page_handler,
-      mojo::PendingRemote<access_code_cast::mojom::Page> page,
-      const media_router::CastModeSet& cast_mode_set,
-      std::unique_ptr<MediaRouteStarter> media_route_starter,
-      AccessCodeCastSinkService* access_code_sink_service);
-
   void Init();
 
   // Returns true if the specified cast mode is among the cast modes specified
@@ -108,14 +116,6 @@
                        CastToSinkCallback dialog_callback,
                        const RouteRequestResult& result);
 
-  void SetSinkCallbackForTesting(AddSinkCallback callback);
-  void SetIdentityManagerForTesting(signin::IdentityManager* identity_manager);
-  void SetSyncServiceForTesting(syncer::SyncService* sync_service);
-
-  void set_sink_id_for_testing(const MediaSink::Id& sink_id) {
-    sink_id_ = sink_id;
-  }
-
   // Checks to see if all the conditions necessary to complete discovery have
   // been satisfied. If so, alerts the dialog.
   void CheckForDiscoveryCompletion();
diff --git a/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler_unittest.cc b/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler_unittest.cc
index be55c24..b1bc2023e 100644
--- a/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler_unittest.cc
+++ b/chrome/browser/ui/webui/access_code_cast/access_code_cast_handler_unittest.cc
@@ -171,7 +171,7 @@
   AccessCodeCastHandler* handler() { return handler_.get(); }
 
   MediaRouteStarter* media_route_starter() {
-    return handler_->media_route_starter_.get();
+    return handler_->GetMediaRouteStarterForTesting();
   }
 
   TestingProfileManager* profile_manager() { return profile_manager_.get(); }
@@ -216,7 +216,7 @@
     set_screen_capture_allowed_for_testing(true);
 
     UpdateSinks({cast_sink_1().sink()}, std::vector<url::Origin>());
-    handler()->set_sink_id_for_testing(cast_sink_1().sink().id());
+    handler()->SetSinkIdForTesting(cast_sink_1().sink().id());
 
     EXPECT_CALL(*router(),
                 CreateRouteInternal(source.id(), cast_sink_1().sink().id(), _,
@@ -233,7 +233,7 @@
                   std::move(start_presentation_context));
 
     UpdateSinks({cast_sink_1().sink()}, {request.frame_origin});
-    handler()->set_sink_id_for_testing(cast_sink_1().sink().id());
+    handler()->SetSinkIdForTesting(cast_sink_1().sink().id());
 
     auto source =
         MediaSource::ForPresentationUrl(*(request.presentation_urls.begin()));
@@ -370,16 +370,16 @@
 
   EXPECT_CALL(mock_callback_failure,
               Run(AddSinkResultCode::CHANNEL_OPEN_ERROR));
-  handler()->OnSinkAddedResult(AddSinkResultCode::CHANNEL_OPEN_ERROR,
-                               std::nullopt);
-  EXPECT_FALSE(handler()->sink_id_.has_value());
+  handler()->OnSinkAddedResultForTesting(AddSinkResultCode::CHANNEL_OPEN_ERROR,
+                                         std::nullopt);
+  EXPECT_FALSE(handler()->GetSinkIdForTesting().has_value());
 
   MockAddSinkCallback mock_callback_ok;
   handler()->SetSinkCallbackForTesting(mock_callback_ok.Get());
 
   EXPECT_CALL(mock_callback_ok, Run(AddSinkResultCode::OK)).Times(0);
-  handler()->OnSinkAddedResult(AddSinkResultCode::OK, "123456");
-  EXPECT_EQ(handler()->sink_id_.value(), "123456");
+  handler()->OnSinkAddedResultForTesting(AddSinkResultCode::OK, "123456");
+  EXPECT_EQ(handler()->GetSinkIdForTesting().value(), "123456");
 }
 
 // Demonstrates that if the expected device is added to the media router,
@@ -393,8 +393,8 @@
   MediaSinkWithCastModes sink_with_cast_modes(cast_sink_1().sink());
   sink_with_cast_modes.cast_modes = {MediaCastMode::DESKTOP_MIRROR};
 
-  handler()->set_sink_id_for_testing(cast_sink_1().sink().id());
-  handler()->OnSinksUpdated({sink_with_cast_modes});
+  handler()->SetSinkIdForTesting(cast_sink_1().sink().id());
+  handler()->OnSinksUpdatedForTesting({sink_with_cast_modes});
 }
 
 // Demonstrates that if handler is notified about a device other than the
@@ -404,12 +404,12 @@
   EXPECT_CALL(mock_callback, Run(_)).Times(Exactly(0));
   handler()->SetSinkCallbackForTesting(mock_callback.Get());
 
-  handler()->set_sink_id_for_testing(cast_sink_1().sink().id());
+  handler()->SetSinkIdForTesting(cast_sink_1().sink().id());
 
   MediaSinkWithCastModes sink_with_cast_modes(cast_sink_2().sink());
   sink_with_cast_modes.cast_modes = {MediaCastMode::DESKTOP_MIRROR};
 
-  handler()->OnSinksUpdated({sink_with_cast_modes});
+  handler()->OnSinksUpdatedForTesting({sink_with_cast_modes});
 }
 
 // Demonstrates that desktop mirroring attempts call media router with the
@@ -517,7 +517,7 @@
   CreateHandler({MediaCastMode::DESKTOP_MIRROR});
   set_screen_capture_allowed_for_testing(true);
   UpdateSinks({access_code_sink.sink()}, std::vector<url::Origin>());
-  handler()->set_sink_id_for_testing(access_code_sink.sink().id());
+  handler()->SetSinkIdForTesting(access_code_sink.sink().id());
 
   MediaRoute media_route_access = CreateRouteForTesting(access_code_sink.id());
   std::vector<MediaRoute> route_list = {media_route_access};
diff --git a/chrome/browser/ui/webui/app_home/BUILD.gn b/chrome/browser/ui/webui/app_home/BUILD.gn
index f700d9e..99feaf6 100644
--- a/chrome/browser/ui/webui/app_home/BUILD.gn
+++ b/chrome/browser/ui/webui/app_home/BUILD.gn
@@ -4,6 +4,8 @@
 
 import("//mojo/public/tools/bindings/mojom.gni")
 
+assert(is_win || is_mac || is_linux)
+
 mojom("mojo_bindings") {
   sources = [ "app_home.mojom" ]
   webui_module_path = "/"
diff --git a/chrome/browser/ui/webui/app_home/app_home_page_handler.cc b/chrome/browser/ui/webui/app_home/app_home_page_handler.cc
index d86f7ac..fdb2dd3 100644
--- a/chrome/browser/ui/webui/app_home/app_home_page_handler.cc
+++ b/chrome/browser/ui/webui/app_home/app_home_page_handler.cc
@@ -61,6 +61,8 @@
 #include "ui/base/window_open_disposition_utils.h"
 #include "url/gurl.h"
 
+static_assert(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX));
+
 using content::WebUI;
 using extensions::Extension;
 using extensions::ExtensionRegistry;
@@ -376,11 +378,9 @@
   app_info->start_url = start_url;
 
   bool deprecated_app = false;
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
   auto* context = extension_system_->extension_service()->GetBrowserContext();
   deprecated_app =
       extensions::IsExtensionUnsupportedDeprecatedApp(context, extension->id());
-#endif
 
   if (deprecated_app) {
     app_info->name =
@@ -439,7 +439,6 @@
       continue;
     }
 
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
     auto* context = extension_system_->extension_service()->GetBrowserContext();
     const bool is_deprecated_app =
         extensions::IsExtensionUnsupportedDeprecatedApp(context,
@@ -448,7 +447,6 @@
                                  context, extension->id(), nullptr)) {
       deprecated_app_ids_.insert(extension->id());
     }
-#endif
     result->emplace_back(CreateAppInfoPtrFromExtension(extension.get()));
   }
 }
diff --git a/chrome/browser/ui/webui/app_home/app_home_page_handler.h b/chrome/browser/ui/webui/app_home/app_home_page_handler.h
index d73216cf..3ebc6a48 100644
--- a/chrome/browser/ui/webui/app_home/app_home_page_handler.h
+++ b/chrome/browser/ui/webui/app_home/app_home_page_handler.h
@@ -24,6 +24,8 @@
 #include "mojo/public/cpp/bindings/receiver.h"
 #include "mojo/public/cpp/bindings/remote.h"
 
+static_assert(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX));
+
 class ExtensionEnableFlow;
 
 namespace content {
diff --git a/chrome/browser/ui/webui/ash/login/online_login_utils.cc b/chrome/browser/ui/webui/ash/login/online_login_utils.cc
index b0e1f3c..c3c36a1a 100644
--- a/chrome/browser/ui/webui/ash/login/online_login_utils.cc
+++ b/chrome/browser/ui/webui/ash/login/online_login_utils.cc
@@ -114,7 +114,7 @@
   std::unique_ptr<net::CanonicalCookie> cc(net::CanonicalCookie::Create(
       gaia_url, gaps_cookie_value, base::Time::Now(),
       std::nullopt /* server_time */, std::nullopt /* cookie_partition_key */,
-      /*block_truncated=*/true, net::CookieSourceType::kOther,
+      net::CookieSourceType::kOther,
       /*status=*/nullptr));
   if (!cc)
     return;
diff --git a/chrome/browser/ui/webui/ash/settings/pages/internet/internet_section.cc b/chrome/browser/ui/webui/ash/settings/pages/internet/internet_section.cc
index 9ca0b02..5279a71 100644
--- a/chrome/browser/ui/webui/ash/settings/pages/internet/internet_section.cc
+++ b/chrome/browser/ui/webui/ash/settings/pages/internet/internet_section.cc
@@ -805,6 +805,12 @@
       {"internetDeviceBusy", IDS_SETTINGS_INTERNET_DEVICE_BUSY},
       {"internetJoinType", IDS_SETTINGS_INTERNET_JOIN_TYPE},
       {"internetKnownNetworksPageTitle", IDS_SETTINGS_INTERNET_KNOWN_NETWORKS},
+      {"internetYourDeviceHotspots",
+       IDS_SETTINGS_INTERNET_YOUR_DEVICE_HOTSPOTS},
+      {"internetTetherNotificationControlTitle",
+       IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_TITLE},
+      {"internetTetherNotificationControlDescription",
+       IDS_SETTINGS_INTERNET_TETHER_NOTIFICATION_CONTROL_DESCRIPTION},
       {"internetNoNetworks", IDS_SETTINGS_INTERNET_NO_NETWORKS},
       {"internetNoTetherHosts", IDS_SETTINGS_INTERNET_NO_TETHER_HOSTS},
       {"internetPageTitle", features::IsInstantHotspotRebrandEnabled()
diff --git a/chrome/browser/ui/webui/cr_components/theme_color_picker/theme_color_picker_handler_unittest.cc b/chrome/browser/ui/webui/cr_components/theme_color_picker/theme_color_picker_handler_unittest.cc
index 3cfd5e29..0dcc82e 100644
--- a/chrome/browser/ui/webui/cr_components/theme_color_picker/theme_color_picker_handler_unittest.cc
+++ b/chrome/browser/ui/webui/cr_components/theme_color_picker/theme_color_picker_handler_unittest.cc
@@ -13,7 +13,6 @@
 #include "base/memory/raw_ptr.h"
 #include "base/memory/raw_ptr_exclusion.h"
 #include "base/test/mock_callback.h"
-#include "base/test/scoped_feature_list.h"
 #include "chrome/browser/new_tab_page/chrome_colors/generated_colors_info.h"
 #include "chrome/browser/search/background/ntp_custom_background_service.h"
 #include "chrome/browser/search/background/ntp_custom_background_service_observer.h"
@@ -35,7 +34,6 @@
 #include "third_party/skia/include/core/SkColor.h"
 #include "ui/base/l10n/l10n_util.h"
 #include "ui/base/mojom/themes.mojom.h"
-#include "ui/base/ui_base_features.h"
 #include "ui/color/color_provider.h"
 #include "ui/color/color_provider_key.h"
 #include "ui/color/dynamic_color/palette_factory.h"
@@ -152,8 +150,6 @@
         web_contents_);
     mock_client_.FlushForTesting();
     EXPECT_EQ(handler_.get(), ntp_custom_background_service_observer_);
-
-    scoped_feature_list_.Reset();
   }
 
   TestingProfile& profile() { return *profile_; }
@@ -178,7 +174,6 @@
   raw_ptr<content::WebContents> web_contents_;
   testing::NiceMock<MockClient> mock_client_;
   raw_ptr<MockThemeService> mock_theme_service_;
-  base::test::ScopedFeatureList scoped_feature_list_;
   std::unique_ptr<ThemeColorPickerHandler> handler_;
 };
 
@@ -212,7 +207,6 @@
 }
 
 TEST_F(ThemeColorPickerHandlerTest, GetChromeColors) {
-  scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023}, {});
   std::vector<theme_color_picker::mojom::ChromeColorPtr> colors;
   base::MockCallback<ThemeColorPickerHandler::GetChromeColorsCallback> callback;
   EXPECT_CALL(callback, Run(testing::_))
@@ -345,7 +339,6 @@
 }
 
 TEST_P(ThemeColorPickerHandlerSetThemeTest, SetThemeColorSchemeGM3) {
-  scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023}, {});
   theme_color_picker::mojom::ThemePtr theme;
   EXPECT_CALL(mock_client_, SetTheme)
       .Times(2)
@@ -400,7 +393,6 @@
 }
 
 TEST_P(ThemeColorPickerHandlerSetThemeTest, UsingDeviceThemeGM3) {
-  scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023}, {});
   theme_color_picker::mojom::ThemePtr theme;
   EXPECT_CALL(mock_client_, SetTheme)
       .Times(1)
@@ -539,7 +531,6 @@
                       ThemeUpdateSource::kCustomBackgroundService));
 
 TEST_F(ThemeColorPickerHandlerTest, SetDefaultColor) {
-  scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023}, {});
   std::optional<SkColor> color;
   EXPECT_CALL(mock_theme_service(), SetUserColor)
       .Times(1)
@@ -562,7 +553,6 @@
 }
 
 TEST_F(ThemeColorPickerHandlerTest, SetGreyDefaultColorGM3) {
-  scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023}, {});
   bool is_grey;
   EXPECT_CALL(mock_theme_service(), SetIsGrayscale)
       .Times(1)
@@ -574,7 +564,6 @@
 }
 
 TEST_F(ThemeColorPickerHandlerTest, SetSeedColor) {
-  scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023}, {});
   std::optional<SkColor> color;
   ui::mojom::BrowserColorVariant variant;
   EXPECT_CALL(mock_theme_service(), SetUserColorAndBrowserColorVariant)
diff --git a/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler_unittest.cc b/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler_unittest.cc
index efd9385..82a8fd8 100644
--- a/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler_unittest.cc
+++ b/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler_unittest.cc
@@ -1201,9 +1201,6 @@
 }
 
 TEST_F(NewTabPageHandlerTest, MaybeShowFeaturePromo_CustomizeChromeRefresh) {
-  base::test::ScopedFeatureList features;
-  features.InitWithFeatures({features::kChromeRefresh2023}, {});
-
   EXPECT_CALL(*mock_feature_promo_helper_, IsSigninModalDialogOpen)
       .WillRepeatedly(testing::Return(false));
   EXPECT_CALL(*mock_feature_promo_helper_,
diff --git a/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.cc b/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.cc
index e22c360..cde37f0f 100644
--- a/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.cc
+++ b/chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_side_panel_ui.cc
@@ -190,16 +190,19 @@
       BookmarkModelFactory::GetForBrowserContext(profile);
   source->AddString(
       "bookmarksBarId",
-      base::NumberToString(
-          bookmark_model ? bookmark_model->bookmark_bar_node()->id() : -1));
+      base::NumberToString(bookmark_model && bookmark_model->bookmark_bar_node()
+                               ? bookmark_model->bookmark_bar_node()->id()
+                               : -1));
   source->AddString(
       "otherBookmarksId",
-      base::NumberToString(bookmark_model ? bookmark_model->other_node()->id()
-                                          : -1));
+      base::NumberToString(bookmark_model && bookmark_model->other_node()
+                               ? bookmark_model->other_node()->id()
+                               : -1));
   source->AddString(
       "mobileBookmarksId",
-      base::NumberToString(bookmark_model ? bookmark_model->mobile_node()->id()
-                                          : -1));
+      base::NumberToString(bookmark_model && bookmark_model->mobile_node()
+                               ? bookmark_model->mobile_node()->id()
+                               : -1));
   bookmarks::ManagedBookmarkService* managed =
       ManagedBookmarkServiceFactory::GetForProfile(profile);
   source->AddString("managedBookmarksFolderId",
diff --git a/chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_interactive_uitest.cc b/chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_interactive_uitest.cc
index f83884f..5457c6d 100644
--- a/chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_interactive_uitest.cc
+++ b/chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_interactive_uitest.cc
@@ -42,7 +42,6 @@
         /*enabled_features=*/{ntp_features::kCustomizeChromeWallpaperSearch,
                               optimization_guide::features::
                                   kOptimizationGuideModelExecution,
-                              features::kChromeRefresh2023,
                               ntp_features::kNtpWallpaperSearchButton,
                               optimization_guide::features::internal::
                                   kWallpaperSearchSettingsVisibility},
diff --git a/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager.cc b/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager.cc
index 3144d26..6889453 100644
--- a/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager.cc
+++ b/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager.cc
@@ -24,6 +24,22 @@
 
 namespace {
 
+// Enum class representing the results of attempting to use a preloaded WebUI
+// when WebUIContentsPreloadedManager::MakeContents() is called.
+// The description of each value is also in tools/metrics/histograms/enums.xml.
+enum class WebUIPreloadResult {
+  // No preloaded WebUI is available when a WebUI is requested.
+  kNoPreload = 0,
+  // The preloaded WebUI matches the requested WebUI.
+  kHit = 1,
+  // The preloaded WebUI is redirected to the requested WebUI.
+  kHitRedirected = 2,
+  // The preloaded WebUI does not match the requested WebUI and cannot be
+  // redirected.
+  kMiss = 3,
+  kMaxValue = kMiss,
+};
+
 // This factory is used to get notification for the browser context shutdown.
 class BrowserContextShutdownNotifierFactory
     : public BrowserContextKeyedServiceShutdownNotifierFactory {
@@ -75,30 +91,18 @@
   return webui->GetController();
 }
 
-// Enum class representing the results of attempting to use a preloaded WebUI
-// when WebUIContentsPreloadedManager::MakeContents() is called.
-// The description of each value is also in tools/metrics/histograms/enums.xml.
-enum class WebUIPreloadResult {
-  // No preloaded WebUI is available when a WebUI is requested.
-  kNoPreload = 0,
-  // The preloaded WebUI matches the requested WebUI.
-  kHit = 1,
-  // The preloaded WebUI is redirected to the requested WebUI.
-  kHitRedirected = 2,
-  // The preloaded WebUI does not match the requested WebUI and cannot be
-  // redirected.
-  kMiss = 3,
-  kMaxValue = kMiss,
-};
+std::vector<GURL> GetAllPreloadableWebUIURLs() {
+  // Top 3 most used Top Chrome WebUIs.
+  // TODO(crbug.com/40168622): add more Top Chrome WebUIs.
+  static const base::NoDestructor<std::vector<GURL>> s_preloadable_webui_urls(
+      {GURL(chrome::kChromeUITabSearchURL),
+       GURL(chrome::kChromeUIHistoryClustersSidePanelURL),
+       GURL(chrome::kChromeUIBookmarksSidePanelURL)});
+  return *s_preloadable_webui_urls;
+}
 
 }  // namespace
 
-// Currently we preloads Tab Search. In practice, this also benefits other
-// WebUIs. This is likely due to reused render processes that increase cache
-// hits and reduce re-creation of common structs.
-const char* const WebUIContentsPreloadManager::kPreloadedWebUIURL =
-    chrome::kChromeUITabSearchURL;
-
 // A stub WebUI page embdeder that captures the ready-to-show signal.
 class WebUIContentsPreloadManager::WebUIControllerEmbedderStub final
     : public TopChromeWebUIController::Embedder {
@@ -207,13 +211,41 @@
   PreloadForBrowserContext(browser_context);
 }
 
+GURL WebUIContentsPreloadManager::GetNextWebUIURLToPreloadForTesting(
+    content::BrowserContext* browser_context) const {
+  return GetNextWebUIURLToPreload(browser_context);
+}
+
+void WebUIContentsPreloadManager::SetNextWebUIUrlToPreloadForTesting(
+    GURL webui_url) {
+  next_webui_url_to_preload_for_testing_ = webui_url;
+}
+
+GURL WebUIContentsPreloadManager::GetNextWebUIURLToPreload(
+    content::BrowserContext* browser_context) const {
+  if (next_webui_url_to_preload_for_testing_) {
+    return *next_webui_url_to_preload_for_testing_;
+  }
+
+  // TODO(crbug.com/40168622): smartly select next WebUI to preload under the
+  // the current state of the browser and past engagement data.
+  return GURL(chrome::kChromeUITabSearchURL);
+}
+
+// static
+std::vector<GURL>
+WebUIContentsPreloadManager::GetAllPreloadableWebUIURLsForTesting() {
+  return GetAllPreloadableWebUIURLs();
+}
+
 void WebUIContentsPreloadManager::PreloadForBrowserContext(
     content::BrowserContext* browser_context) {
   if (!ShouldPreloadForBrowserContext(browser_context)) {
     return;
   }
 
-  SetPreloadedContents(CreateNewContents(browser_context));
+  SetPreloadedContents(CreateNewContents(
+      browser_context, GetNextWebUIURLToPreload(browser_context)));
 }
 
 void WebUIContentsPreloadManager::SetPreloadedContents(
@@ -266,7 +298,8 @@
 
   if (ShouldPreloadForBrowserContext(browser_context)) {
     // Preloads a new contents.
-    SetPreloadedContents(CreateNewContents(browser_context));
+    SetPreloadedContents(CreateNewContents(
+        browser_context, GetNextWebUIURLToPreload(browser_context)));
   }
 
   task_manager::WebContentsTags::ClearTag(web_contents_ret.get());
@@ -277,8 +310,12 @@
   return result;
 }
 
-GURL WebUIContentsPreloadManager::GetPreloadedURLForTesting() const {
-  return GURL(kPreloadedWebUIURL);
+std::optional<GURL> WebUIContentsPreloadManager::GetPreloadedURLForTesting()
+    const {
+  if (!preloaded_web_contents_) {
+    return std::nullopt;
+  }
+  return preloaded_web_contents_->GetVisibleURL();
 }
 
 void WebUIContentsPreloadManager::DisableNavigationForTesting() {
diff --git a/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager.h b/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager.h
index bf1dc1d..787b9e0 100644
--- a/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager.h
+++ b/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager.h
@@ -74,7 +74,8 @@
     return preloaded_web_contents_.get();
   }
 
-  GURL GetPreloadedURLForTesting() const;
+  // Returns nullopt if there is no contents preloaded.
+  std::optional<GURL> GetPreloadedURLForTesting() const;
 
   // Disable navigations for tests that don't have //content properly
   // initialized.
@@ -83,9 +84,17 @@
   void PreloadForBrowserContextForTesting(
       content::BrowserContext* browser_context);
 
+  GURL GetNextWebUIURLToPreloadForTesting(
+      content::BrowserContext* browser_context) const;
+
+  void SetNextWebUIUrlToPreloadForTesting(GURL webui_url);
+
+  static std::vector<GURL> GetAllPreloadableWebUIURLsForTesting();
+
  private:
   class WebUIControllerEmbedderStub;
-  static const char* const kPreloadedWebUIURL;
+
+  GURL GetNextWebUIURLToPreload(content::BrowserContext* browser_context) const;
 
   // Preload a WebContents for `browser_context`.
   // There is at most one preloaded contents at any time.
@@ -101,7 +110,7 @@
 
   std::unique_ptr<content::WebContents> CreateNewContents(
       content::BrowserContext* browser_context,
-      GURL url = GURL(kPreloadedWebUIURL));
+      GURL url);
 
   void LoadURLForContents(content::WebContents* web_contents, GURL url);
 
@@ -122,6 +131,8 @@
   // //content properly.
   bool is_navigation_disabled_for_test_ = false;
 
+  std::optional<GURL> next_webui_url_to_preload_for_testing_;
+
   std::unique_ptr<content::WebContents> preloaded_web_contents_;
   // A stub WebUI page embdeder that captures the ready-to-show signal.
   std::unique_ptr<WebUIControllerEmbedderStub> webui_controller_embedder_stub_;
diff --git a/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager_browsertest.cc b/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager_browsertest.cc
new file mode 100644
index 0000000..75b13761
--- /dev/null
+++ b/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager_browsertest.cc
@@ -0,0 +1,121 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager.h"
+
+#include <map>
+
+#include "base/containers/span.h"
+#include "base/strings/string_split.h"
+#include "base/strings/string_util.h"
+#include "base/test/scoped_feature_list.h"
+#include "chrome/app/chrome_command_ids.h"
+#include "chrome/browser/profiles/profile.h"
+#include "chrome/browser/ui/browser.h"
+#include "chrome/browser/ui/browser_command_controller.h"
+#include "chrome/browser/ui/ui_features.h"
+#include "chrome/common/webui_url_constants.h"
+#include "chrome/test/base/in_process_browser_test.h"
+#include "content/public/test/browser_test.h"
+#include "content/public/test/test_navigation_observer.h"
+#include "url/gurl.h"
+
+namespace {
+
+using PreloadModeName = const char*;
+
+int GetCommandIdForURL(GURL webui_url) {
+  static const std::map<GURL, int> url_to_command_id = {
+      {GURL(chrome::kChromeUITabSearchURL), IDC_TAB_SEARCH},
+      {GURL(chrome::kChromeUIHistoryClustersSidePanelURL),
+       IDC_SHOW_BOOKMARK_SIDE_PANEL},
+      {GURL(chrome::kChromeUIBookmarksSidePanelURL),
+       IDC_SHOW_HISTORY_CLUSTERS_SIDE_PANEL}};
+
+  CHECK(url_to_command_id.contains(webui_url));
+
+  return url_to_command_id.at(webui_url);
+}
+
+std::vector<GURL> GetAllPreloadableWebUIURLs() {
+  return WebUIContentsPreloadManager::GetAllPreloadableWebUIURLsForTesting();
+}
+
+std::vector<PreloadModeName> GetAllPreloadManagerModes() {
+  return {features::kPreloadTopChromeWebUIModePreloadOnWarmupName,
+          features::kPreloadTopChromeWebUIModePreloadOnMakeContentsName};
+}
+
+}  // namespace
+
+class WebUIContentsPreloadManagerBrowserTest
+    : public InProcessBrowserTest,
+      public ::testing::WithParamInterface<std::tuple<GURL, PreloadModeName>> {
+ public:
+  struct PrintParams {
+    template <typename ParamType>
+    std::string operator()(
+        const testing::TestParamInfo<ParamType>& info) const {
+      // Remove ".top-chrome" from URL. Replace "-." with "_" since gtest does
+      // not allow them in test name.
+      GURL webui_url = std::get<0>(info.param);
+      std::string host = webui_url.host();
+      std::string preload_mode = std::get<1>(info.param);
+      base::ReplaceSubstringsAfterOffset(&host, 0, ".top-chrome", "");
+      base::ReplaceChars(host, "-.", "_", &host);
+      base::ReplaceChars(preload_mode, "-.", "_", &preload_mode);
+      return host + "_" + preload_mode;
+    }
+  };
+
+  void SetUp() override {
+    feature_list_.InitAndEnableFeatureWithParameters(
+        features::kPreloadTopChromeWebUI,
+        {{features::kPreloadTopChromeWebUIModeName, std::get<1>(GetParam())}});
+    preload_manager()->SetNextWebUIUrlToPreloadForTesting(
+        std::get<0>(GetParam()));
+    InProcessBrowserTest::SetUp();
+  }
+
+  void SetUpOnMainThread() override {
+    navigation_waiter_ = std::make_unique<content::TestNavigationObserver>(
+        preload_manager()->preloaded_web_contents());
+    navigation_waiter_->StartWatchingNewWebContents();
+  }
+
+  WebUIContentsPreloadManager* preload_manager() {
+    return WebUIContentsPreloadManager::GetInstance();
+  }
+
+  content::TestNavigationObserver* navigation_waiter() {
+    return navigation_waiter_.get();
+  }
+
+ private:
+  std::unique_ptr<content::TestNavigationObserver> navigation_waiter_;
+  base::test::ScopedFeatureList feature_list_;
+};
+
+// A smoke test that ensures the browser does not crash when triggering
+// a preloaded WebUI.
+IN_PROC_BROWSER_TEST_P(WebUIContentsPreloadManagerBrowserTest,
+                       TriggerPreloadedUI) {
+  const GURL webui_url = std::get<0>(GetParam());
+  const std::string preload_mode = std::get<1>(GetParam());
+  if (preload_mode == features::kPreloadTopChromeWebUIModePreloadOnWarmupName) {
+    ASSERT_TRUE(preload_manager()->preloaded_web_contents());
+    ASSERT_EQ(preload_manager()->preloaded_web_contents()->GetVisibleURL(),
+              webui_url);
+  }
+  browser()->command_controller()->ExecuteCommand(
+      GetCommandIdForURL(webui_url));
+  navigation_waiter()->Wait();
+}
+
+INSTANTIATE_TEST_SUITE_P(
+    All,
+    WebUIContentsPreloadManagerBrowserTest,
+    testing::Combine(testing::ValuesIn(GetAllPreloadableWebUIURLs()),
+                     testing::ValuesIn(GetAllPreloadManagerModes())),
+    WebUIContentsPreloadManagerBrowserTest::PrintParams());
diff --git a/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager_unittest.cc b/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager_unittest.cc
index 6cdee05e..8faaa26c 100644
--- a/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager_unittest.cc
+++ b/chrome/browser/ui/webui/top_chrome/webui_contents_preload_manager_unittest.cc
@@ -7,6 +7,7 @@
 #include "base/test/scoped_feature_list.h"
 #include "chrome/browser/ui/ui_features.h"
 #include "chrome/browser/ui/webui/top_chrome/top_chrome_web_ui_controller.h"
+#include "chrome/common/webui_url_constants.h"
 #include "chrome/test/base/chrome_render_view_host_test_harness.h"
 #include "chrome/test/base/testing_profile.h"
 #include "components/memory_pressure/fake_memory_pressure_monitor.h"
@@ -16,8 +17,24 @@
 
 using MakeContentsResult = WebUIContentsPreloadManager::MakeContentsResult;
 
+namespace {
+
+template <typename T>
+T ExpectHasValue(std::optional<T> optional) {
+  EXPECT_TRUE(optional.has_value());
+  return *optional;
+}
+
+}  // namespace
+
 class WebUIContentsPreloadManagerTest : public ChromeRenderViewHostTestHarness {
  public:
+  void SetUp() override {
+    ChromeRenderViewHostTestHarness::SetUp();
+    preload_manager()->SetNextWebUIUrlToPreloadForTesting(
+        GURL(chrome::kChromeUITabSearchURL));
+  }
+
   WebUIContentsPreloadManager* preload_manager() {
     return WebUIContentsPreloadManager::GetInstance();
   }
@@ -148,17 +165,18 @@
 TEST_F(WebUIContentsPreloadManagerTest, MakeContentsNavigation) {
   std::unique_ptr<content::BrowserContext> browser_context =
       std::make_unique<TestingProfile>();
-  GURL preloaded_url = preload_manager()->GetPreloadedURLForTesting();
+  GURL url_to_preload = preload_manager()->GetNextWebUIURLToPreloadForTesting(
+      browser_context.get());
   preload_manager()->PreloadForBrowserContextForTesting(browser_context.get());
 
   // Case 1: MakeContents with the preloaded URL.
   {
     content::WebContents* preloaded_web_contents =
         preload_manager()->preloaded_web_contents();
-    EXPECT_EQ(preloaded_web_contents->GetURL(), preloaded_url);
+    EXPECT_EQ(preloaded_web_contents->GetURL(), url_to_preload);
 
     MakeContentsResult result =
-        preload_manager()->MakeContents(preloaded_url, browser_context.get());
+        preload_manager()->MakeContents(url_to_preload, browser_context.get());
     std::unique_ptr<content::WebContents> web_contents =
         std::move(result.web_contents);
 
@@ -168,7 +186,7 @@
   // Case 2: MakeContents with a different URL.
   {
     GURL different_url("about:blank");
-    EXPECT_NE(preloaded_url,
+    EXPECT_NE(url_to_preload,
               different_url);  // Ensure the URL is indeed different.
     content::WebContents* preloaded_web_contents =
         preload_manager()->preloaded_web_contents();
@@ -191,7 +209,8 @@
   std::unique_ptr<content::BrowserContext> browser_context =
       std::make_unique<TestingProfile>();
   preload_manager()->PreloadForBrowserContextForTesting(browser_context.get());
-  GURL preloaded_url = preload_manager()->GetPreloadedURLForTesting();
+  GURL preloaded_url =
+      ExpectHasValue(preload_manager()->GetPreloadedURLForTesting());
 
   // `is_ready_to_show` should be initially false.
   MakeContentsResult result =
@@ -221,10 +240,12 @@
       std::make_unique<TestingProfile>();
   std::unique_ptr<content::BrowserContext> browser_context2 =
       std::make_unique<TestingProfile>();
-  const GURL preloaded_url = preload_manager()->GetPreloadedURLForTesting();
+  const GURL url_to_preload =
+      preload_manager()->GetNextWebUIURLToPreloadForTesting(
+          browser_context.get());
 
   MakeContentsResult result =
-      preload_manager()->MakeContents(preloaded_url, browser_context.get());
+      preload_manager()->MakeContents(url_to_preload, browser_context.get());
   // Preload for a different browser context.
   preload_manager()->PreloadForBrowserContextForTesting(browser_context2.get());
 }
diff --git a/chrome/browser/webauthn/chrome_webauthn_browsertest.cc b/chrome/browser/webauthn/chrome_webauthn_browsertest.cc
index fc5adca..cde3dfd 100644
--- a/chrome/browser/webauthn/chrome_webauthn_browsertest.cc
+++ b/chrome/browser/webauthn/chrome_webauthn_browsertest.cc
@@ -28,6 +28,7 @@
 #include "chrome/browser/webauthn/authenticator_request_dialog_model.h"
 #include "chrome/browser/webauthn/chrome_authenticator_request_delegate.h"
 #include "chrome/browser/webauthn/passkey_model_factory.h"
+#include "chrome/browser/webauthn/test_util.h"
 #include "chrome/test/base/in_process_browser_test.h"
 #include "chrome/test/base/ui_test_utils.h"
 #include "components/network_session_configurator/common/network_switches.h"
@@ -75,22 +76,6 @@
 constexpr char kUsername2[] = "sakuya";
 constexpr char kDisplayName2[] = "Sakuya Izayoi";
 
-std::unique_ptr<device::cablev2::Pairing> TestPhone(const char* name,
-                                                    uint8_t public_key,
-                                                    base::Time last_updated,
-                                                    int channel_priority) {
-  auto phone = std::make_unique<device::cablev2::Pairing>();
-  phone->name = name;
-  phone->contact_id = {10, 11, 12};
-  phone->id = {4, 5, 6};
-  std::fill(phone->peer_public_key_x962.begin(),
-            phone->peer_public_key_x962.end(), public_key);
-  phone->last_updated = last_updated;
-  phone->channel_priority = channel_priority;
-  phone->from_sync_deviceinfo = true;
-  return phone;
-}
-
 sync_pb::WebauthnCredentialSpecifics CreateWebAuthnCredentialSpecifics(
     base::span<const uint8_t> credential_id,
     base::span<const uint8_t> user_id,
diff --git a/chrome/browser/webauthn/enclave_authenticator_browsertest.cc b/chrome/browser/webauthn/enclave_authenticator_browsertest.cc
index 84ba84b..d9e4392 100644
--- a/chrome/browser/webauthn/enclave_authenticator_browsertest.cc
+++ b/chrome/browser/webauthn/enclave_authenticator_browsertest.cc
@@ -351,6 +351,18 @@
   }
 }
 
+bool IsMechanismEnclaveCredential(
+    const AuthenticatorRequestDialogModel::Mechanism& mechanism) {
+  if (absl::holds_alternative<
+          AuthenticatorRequestDialogModel::Mechanism::Credential>(
+          mechanism.type)) {
+    return absl::get<AuthenticatorRequestDialogModel::Mechanism::Credential>(
+               mechanism.type)
+               ->source == device::AuthenticatorType::kEnclave;
+  }
+  return false;
+}
+
 struct TempDir {
  public:
   TempDir() { CHECK(dir_.CreateUniqueTempDir()); }
@@ -435,16 +447,15 @@
       destruction_run_loop_ = std::make_unique<base::RunLoop>();
     }
 
-    void AddAdditionalTransport(
-        std::optional<device::FidoTransportProtocol> transport) {
-      additional_transport_ = transport;
-    }
-
     void SetPendingTrustedVaultConnection(
         std::unique_ptr<trusted_vault::TrustedVaultConnection> connection) {
       pending_connection_ = std::move(connection);
     }
 
+    void SetUseSyncedDeviceCablePairing(bool use_pairing) {
+      use_synced_device_cable_pairing_ = use_pairing;
+    }
+
     // ChromeAuthenticatorRequestDelegate::TestObserver:
     void Created(ChromeAuthenticatorRequestDelegate* delegate) override {
       test_instance_->UpdateRequestDelegate(delegate);
@@ -462,17 +473,19 @@
 
     std::vector<std::unique_ptr<device::cablev2::Pairing>>
     GetCablePairingsFromSyncedDevices() override {
-      return {};
+      std::vector<std::unique_ptr<device::cablev2::Pairing>> ret;
+      if (use_synced_device_cable_pairing_) {
+        ret.emplace_back(TestPhone("phone", /*public_key=*/0,
+                                   /*last_updated=*/base::Time::FromTimeT(1),
+                                   /*channel_priority=*/1));
+      }
+      return ret;
     }
 
     void OnTransportAvailabilityEnumerated(
         ChromeAuthenticatorRequestDelegate* delegate,
         device::FidoRequestHandlerBase::TransportAvailabilityInfo* tai)
-        override {
-      if (additional_transport_.has_value()) {
-        tai->available_transports.insert(*additional_transport_);
-      }
-    }
+        override {}
 
     void UIShown(ChromeAuthenticatorRequestDelegate* delegate) override {
       run_loop_->QuitWhenIdle();
@@ -487,8 +500,8 @@
 
    private:
     raw_ptr<EnclaveAuthenticatorBrowserTest> test_instance_;
-    std::optional<device::FidoTransportProtocol> additional_transport_;
     std::unique_ptr<trusted_vault::TrustedVaultConnection> pending_connection_;
+    bool use_synced_device_cable_pairing_ = false;
     std::unique_ptr<base::RunLoop> run_loop_;
     std::unique_ptr<base::RunLoop> destruction_run_loop_;
   };
@@ -2630,15 +2643,15 @@
   delegate_observer()->WaitForDelegateDestruction();
 }
 
+// TODO(kenrb): This is disabled due to flakiness failures. It will be enabled
+// in a subsequent with a probable fix.
 IN_PROC_BROWSER_TEST_F(EnclaveAuthenticatorWithPinBrowserTest,
-                       MakeCredentialDeclineGPM) {
+                       DISABLED_MakeCredentialDeclineGPM) {
   trusted_vault::DownloadAuthenticationFactorsRegistrationStateResult
       registration_state_result;
   registration_state_result.state = trusted_vault::
       DownloadAuthenticationFactorsRegistrationStateResult::State::kEmpty;
   SetMockVaultConnectionOnRequestDelegate(std::move(registration_state_result));
-  delegate_observer()->AddAdditionalTransport(
-      device::FidoTransportProtocol::kInternal);
 
   content::WebContents* web_contents =
       browser()->tab_strip_model()->GetActiveWebContents();
@@ -2668,7 +2681,7 @@
   delegate_observer()->WaitForDelegateDestruction();
 
   // With the enclave configured, the next request should offer GPM as a
-  // priority mechanism for an attachment=platform request.
+  // priority mechanism.
   content::ExecuteScriptAsync(web_contents, kMakeCredentialAttachmentPlatform);
   delegate_observer()->WaitForUI();
   EXPECT_EQ(dialog_model()->step(),
@@ -2691,8 +2704,8 @@
   dialog_model()->CancelAuthenticatorRequest();
   delegate_observer()->WaitForDelegateDestruction();
 
-  // After backing out of GPM twice, the next attempt should default to
-  // mechanism selection.
+  // After backing out of GPM twice, the next attempts should default to
+  // mechanism selection
   content::ExecuteScriptAsync(web_contents, kMakeCredentialAttachmentPlatform);
   delegate_observer()->WaitForUI();
   EXPECT_EQ(dialog_model()->step(),
@@ -2701,6 +2714,73 @@
   delegate_observer()->WaitForDelegateDestruction();
 }
 
+// Attempt a GetAssertion multiple times with GPM passkey bootstrapping
+// offered, and decline each time. The default should change to hybrid after
+// two times declined.
+IN_PROC_BROWSER_TEST_F(EnclaveAuthenticatorWithoutPinBrowserTest,
+                       MultipleDeclinedBootstrappings) {
+  EnableUVKeySupport();
+  security_domain_service_->pretend_there_are_members();
+  delegate_observer()->SetUseSyncedDeviceCablePairing(/*use_pairing=*/true);
+
+  trusted_vault::DownloadAuthenticationFactorsRegistrationStateResult
+      registration_state_result;
+  registration_state_result.state = trusted_vault::
+      DownloadAuthenticationFactorsRegistrationStateResult::State::kRecoverable;
+  SetMockVaultConnectionOnRequestDelegate(std::move(registration_state_result));
+  AddTestPasskeyToModel();
+
+  content::WebContents* web_contents =
+      browser()->tab_strip_model()->GetActiveWebContents();
+  content::ExecuteScriptAsync(web_contents, kGetAssertionUvRequired);
+  delegate_observer()->WaitForUI();
+
+  EXPECT_EQ(dialog_model()->step(),
+            AuthenticatorRequestDialogModel::Step::kSelectPriorityMechanism);
+  EXPECT_EQ(request_delegate()
+                ->enclave_controller_for_testing()
+                ->account_state_for_testing(),
+            GPMEnclaveController::AccountState::kRecoverable);
+  model_observer()->SetStepToObserve(
+      AuthenticatorRequestDialogController::Step::kTrustThisComputerAssertion);
+  dialog_model()->OnUserConfirmedPriorityMechanism();
+  model_observer()->WaitForStep();
+
+  model_observer()->SetStepToObserve(
+      AuthenticatorRequestDialogController::Step::kMechanismSelection);
+  dialog_model()->StartOver();
+  model_observer()->WaitForStep();
+
+  model_observer()->SetStepToObserve(
+      AuthenticatorRequestDialogController::Step::kTrustThisComputerAssertion);
+  EXPECT_TRUE(base::ranges::any_of(
+      dialog_model()->mechanisms,
+      [](const auto& m) { return IsMechanismEnclaveCredential(m); }));
+  for (auto& mechanism : request_delegate_->dialog_model()->mechanisms) {
+    if (IsMechanismEnclaveCredential(mechanism)) {
+      mechanism.callback.Run();
+      break;
+    }
+  }
+  model_observer()->WaitForStep();
+
+  model_observer()->SetStepToObserve(
+      AuthenticatorRequestDialogController::Step::kMechanismSelection);
+  dialog_model()->StartOver();
+  model_observer()->WaitForStep();
+
+  // Cancel and send a new request so newly-enumerated credentials will be used.
+  dialog_model()->CancelAuthenticatorRequest();
+  delegate_observer()->WaitForDelegateDestruction();
+  content::ExecuteScriptAsync(web_contents, kGetAssertionUvRequired);
+  delegate_observer()->WaitForUI();
+
+  // Synced GPM passkeys should be hybrid credentials now.
+  EXPECT_FALSE(base::ranges::any_of(
+      dialog_model()->mechanisms,
+      [](const auto& m) { return IsMechanismEnclaveCredential(m); }));
+}
+
 }  // namespace
 
 #endif  // !defined(MEMORY_SANITIZER)
diff --git a/chrome/browser/webauthn/test_util.cc b/chrome/browser/webauthn/test_util.cc
index 85bc63ce..e7653172 100644
--- a/chrome/browser/webauthn/test_util.cc
+++ b/chrome/browser/webauthn/test_util.cc
@@ -14,6 +14,7 @@
 #include "base/path_service.h"
 #include "base/process/launch.h"
 #include "base/strings/string_number_conversions.h"
+#include "device/fido/cable/cable_discovery_data.h"
 #include "device/fido/enclave/types.h"
 #include "device/fido/fido_constants.h"
 #include "net/base/port_util.h"
@@ -108,3 +109,19 @@
 
   return device::enclave::ScopedEnclaveOverride(std::move(identity));
 }
+
+std::unique_ptr<device::cablev2::Pairing> TestPhone(const char* name,
+                                                    uint8_t public_key,
+                                                    base::Time last_updated,
+                                                    int channel_priority) {
+  auto phone = std::make_unique<device::cablev2::Pairing>();
+  phone->name = name;
+  phone->contact_id = {10, 11, 12};
+  phone->id = {4, 5, 6};
+  std::fill(phone->peer_public_key_x962.begin(),
+            phone->peer_public_key_x962.end(), public_key);
+  phone->last_updated = last_updated;
+  phone->channel_priority = channel_priority;
+  phone->from_sync_deviceinfo = true;
+  return phone;
+}
diff --git a/chrome/browser/webauthn/test_util.h b/chrome/browser/webauthn/test_util.h
index beced7d..7897030 100644
--- a/chrome/browser/webauthn/test_util.h
+++ b/chrome/browser/webauthn/test_util.h
@@ -5,12 +5,18 @@
 #ifndef CHROME_BROWSER_WEBAUTHN_TEST_UTIL_H_
 #define CHROME_BROWSER_WEBAUTHN_TEST_UTIL_H_
 
+#include <memory>
 #include <utility>
 
 #include "base/files/file_path.h"
 #include "base/process/process.h"
+#include "base/time/time.h"
 #include "device/fido/enclave/constants.h"
 
+namespace device::cablev2 {
+struct Pairing;
+}
+
 // Starts a test enclave service instance. Returns the Process instance and
 // the port number on which the enclave is listening for connections.
 // CHECKs on error.
@@ -19,4 +25,9 @@
 device::enclave::ScopedEnclaveOverride TestWebAuthnEnclaveIdentity(
     uint16_t port);
 
+std::unique_ptr<device::cablev2::Pairing> TestPhone(const char* name,
+                                                    uint8_t public_key,
+                                                    base::Time last_updated,
+                                                    int channel_priority);
+
 #endif  // CHROME_BROWSER_WEBAUTHN_TEST_UTIL_H_
diff --git a/chrome/build/android-arm64.pgo.txt b/chrome/build/android-arm64.pgo.txt
index 510e0a53..781a334d 100644
--- a/chrome/build/android-arm64.pgo.txt
+++ b/chrome/build/android-arm64.pgo.txt
@@ -1 +1 @@
-chrome-android64-main-1715917395-8ced126ca81efa2589a4ea50e706a3cfa305a30b-8d35ec7da86e7ef1acfbfa37a2d185d44218bbfc.profdata
+chrome-android64-main-1715946394-060114cea28305fc4e56eea8740daf431abc7dfa-3dce49679a2624c3899189a997dfae24a3eaa55a.profdata
diff --git a/chrome/build/linux.pgo.txt b/chrome/build/linux.pgo.txt
index 8da164a..28549f0 100644
--- a/chrome/build/linux.pgo.txt
+++ b/chrome/build/linux.pgo.txt
@@ -1 +1 @@
-chrome-linux-main-1715925452-6f61223569f6539a7377305b7d4caa458349a3cb-0140f5e0a47ecc4e16b1d271bf52bd9c48b1da9a.profdata
+chrome-linux-main-1715946394-fb10ac9039c642bf632d8b57cec302ece8d53251-3dce49679a2624c3899189a997dfae24a3eaa55a.profdata
diff --git a/chrome/build/mac-arm.pgo.txt b/chrome/build/mac-arm.pgo.txt
index f6791084..d7c9ec2 100644
--- a/chrome/build/mac-arm.pgo.txt
+++ b/chrome/build/mac-arm.pgo.txt
@@ -1 +1 @@
-chrome-mac-arm-main-1715946394-38acef66b8815158135c631c1da827b440e0fbcc-3dce49679a2624c3899189a997dfae24a3eaa55a.profdata
+chrome-mac-arm-main-1715961556-610273388e82243ca5c827b8ce5d2aa3f909124a-b06f44122427a3e4ac53159f23e47ac1c48feb63.profdata
diff --git a/chrome/build/win32.pgo.txt b/chrome/build/win32.pgo.txt
index cc371056..dc74d9a 100644
--- a/chrome/build/win32.pgo.txt
+++ b/chrome/build/win32.pgo.txt
@@ -1 +1 @@
-chrome-win32-main-1715936081-20af6e4ca83d64d1d71243aac035c6b1c6d3180b-b99a2488c88a0b821a2e7db61cc5ac84800166ce.profdata
+chrome-win32-main-1715946394-5d382e4999a816d2fbbd5748dc4811adf4cbd60f-3dce49679a2624c3899189a997dfae24a3eaa55a.profdata
diff --git a/chrome/build/win64.pgo.txt b/chrome/build/win64.pgo.txt
index 7c13948..2fccf6b 100644
--- a/chrome/build/win64.pgo.txt
+++ b/chrome/build/win64.pgo.txt
@@ -1 +1 @@
-chrome-win64-main-1715936081-08ba08ea9fcdab4d44908645bda52cc53f4becd8-b99a2488c88a0b821a2e7db61cc5ac84800166ce.profdata
+chrome-win64-main-1715946394-bd848d651db2db4d174ce21345f982efb68d5bdf-3dce49679a2624c3899189a997dfae24a3eaa55a.profdata
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
index 8d2fb74..ba64126 100644
--- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc
@@ -326,9 +326,20 @@
 BASE_FEATURE(kChromeAppsDeprecation,
              "ChromeAppsDeprecation",
              base::FEATURE_ENABLED_BY_DEFAULT);
+
+// Enables the new create shortcut flow where fire and forget entities are
+// created from three dot menu > Save and Share > Create Shortcut instead of
+// PWAs.
 BASE_FEATURE(kShortcutsNotApps,
              "ShortcutsNotApps",
              base::FEATURE_DISABLED_BY_DEFAULT);
+
+// Enables the opening of the desktop and highlighting of the shortcut created
+// as part of the new Create Shortcut flow. Requires kShortcutsNotApps to be
+// enabled to work.
+BASE_FEATURE(kShortcutsNotAppsRevealDesktop,
+             "ShortcutsNotAppsRevealDesktop",
+             base::FEATURE_ENABLED_BY_DEFAULT);
 #endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
 
 // Enables notification permission revocation for origins that may send
diff --git a/chrome/common/chrome_features.h b/chrome/common/chrome_features.h
index 41d5432..41d7eca 100644
--- a/chrome/common/chrome_features.h
+++ b/chrome/common/chrome_features.h
@@ -197,6 +197,8 @@
 COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kChromeAppsDeprecation);
 COMPONENT_EXPORT(CHROME_FEATURES)
 BASE_DECLARE_FEATURE(kShortcutsNotApps);
+COMPONENT_EXPORT(CHROME_FEATURES)
+BASE_DECLARE_FEATURE(kShortcutsNotAppsRevealDesktop);
 #endif
 
 COMPONENT_EXPORT(CHROME_FEATURES)
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
index ac3692d..0bb6d3c 100644
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -3938,10 +3938,6 @@
     "policy.lens_desktop_ntp_search_enabled";
 #endif
 
-// An integer indicating the number of times the Lens Overlay was started.
-inline constexpr char kLensOverlayStartCount[] =
-    "lens.lens_overlay_start_count";
-
 // A boolean indicating whether the Privacy guide feature has been viewed. This
 // is set to true if the user has done any of the following: (1) opened the
 // privacy guide, (2) dismissed the privacy guide promo, (3) seen the privacy
diff --git a/chrome/services/sharing/nearby/platform/ble_v2_gatt_server.cc b/chrome/services/sharing/nearby/platform/ble_v2_gatt_server.cc
index 05876f6a..9ce3b0bb 100644
--- a/chrome/services/sharing/nearby/platform/ble_v2_gatt_server.cc
+++ b/chrome/services/sharing/nearby/platform/ble_v2_gatt_server.cc
@@ -89,7 +89,9 @@
 BleV2GattServer::BleV2GattServer(
     const mojo::SharedRemote<bluetooth::mojom::Adapter>& adapter,
     std::unique_ptr<GattService::Factory> gatt_service_factory)
-    : gatt_service_factory_(std::move(gatt_service_factory)),
+    : task_runner_(
+          base::ThreadPool::CreateSequencedTaskRunner({base::MayBlock()})),
+      gatt_service_factory_(std::move(gatt_service_factory)),
       bluetooth_adapter_(std::make_unique<BluetoothAdapter>(adapter)),
       adapter_remote_(adapter) {
   CHECK(adapter_remote_.is_bound());
@@ -136,11 +138,11 @@
     auto gatt_service = gatt_service_factory_->Create();
     gatt_service->gatt_service_remote.Bind(
         std::move(gatt_service_pending_remote),
-        /*bind_task_runner=*/nullptr);
+        /*bind_task_runner=*/task_runner_);
     gatt_service->gatt_service_remote.set_disconnect_handler(
         base::BindOnce(&BleV2GattServer::OnGattServiceDisconnected,
                        base::Unretained(this), service_uuid),
-        /*handler_task_runner=*/base::SequencedTaskRunner::GetCurrentDefault());
+        /*handler_task_runner=*/task_runner_);
     service_it =
         uuid_to_gatt_service_map_.emplace(service_uuid, std::move(gatt_service))
             .first;
diff --git a/chrome/services/sharing/nearby/platform/ble_v2_gatt_server.h b/chrome/services/sharing/nearby/platform/ble_v2_gatt_server.h
index c1fa48f0..8279b1e 100644
--- a/chrome/services/sharing/nearby/platform/ble_v2_gatt_server.h
+++ b/chrome/services/sharing/nearby/platform/ble_v2_gatt_server.h
@@ -111,6 +111,10 @@
   // future-proofed and support multiple `GattService`s created at a time.
   bool did_any_gatt_services_fail_to_register_ = false;
 
+  // `task_runner_` is required to prevent blocking in calls over the Mojo
+  // remote during GATT service registration.
+  scoped_refptr<base::SequencedTaskRunner> task_runner_;
+
   // `registration_barrier_` is initialized during `RegisterGattServices()`
   // with the number of `GattService`s that need to be registered via
   // `RegisterGattService()`. This is needed because `RegisterGattServices()`
diff --git a/chrome/services/sharing/nearby/platform/ble_v2_medium.cc b/chrome/services/sharing/nearby/platform/ble_v2_medium.cc
index 2c97e56..07f593e 100644
--- a/chrome/services/sharing/nearby/platform/ble_v2_medium.cc
+++ b/chrome/services/sharing/nearby/platform/ble_v2_medium.cc
@@ -13,6 +13,7 @@
 #include "base/task/task_traits.h"
 #include "base/task/thread_pool.h"
 #include "base/threading/thread_restrictions.h"
+#include "chrome/services/sharing/nearby/platform/ble_v2_gatt_client.h"
 #include "chrome/services/sharing/nearby/platform/ble_v2_gatt_server.h"
 #include "chrome/services/sharing/nearby/platform/ble_v2_remote_peripheral.h"
 #include "chrome/services/sharing/nearby/platform/ble_v2_server_socket.h"
@@ -61,6 +62,47 @@
   }
 }
 
+std::string_view ConnectResultToString(bluetooth::mojom::ConnectResult result) {
+  switch (result) {
+    case bluetooth::mojom::ConnectResult::SUCCESS:
+      return "Success";
+    case bluetooth::mojom::ConnectResult::AUTH_CANCELED:
+      return "Auth Canceled";
+    case bluetooth::mojom::ConnectResult::AUTH_FAILED:
+      return "Auth Failed";
+    case bluetooth::mojom::ConnectResult::AUTH_REJECTED:
+      return "Auth Rejected";
+    case bluetooth::mojom::ConnectResult::AUTH_TIMEOUT:
+      return "Auth Timeout";
+    case bluetooth::mojom::ConnectResult::FAILED:
+      return "Failed";
+    case bluetooth::mojom::ConnectResult::INPROGRESS:
+      return "In Progress";
+    case bluetooth::mojom::ConnectResult::UNKNOWN:
+      return "Unknown";
+    case bluetooth::mojom::ConnectResult::UNSUPPORTED_DEVICE:
+      return "Unsupported Device";
+    case bluetooth::mojom::ConnectResult::DEVICE_NO_LONGER_IN_RANGE:
+      return "Device No Longer In Range";
+    case bluetooth::mojom::ConnectResult::NOT_READY:
+      return "Not Ready";
+    case bluetooth::mojom::ConnectResult::ALREADY_CONNECTED:
+      return "Already Connected";
+    case bluetooth::mojom::ConnectResult::ALREADY_EXISTS:
+      return "Already Exists";
+    case bluetooth::mojom::ConnectResult::NOT_CONNECTED:
+      return "Not Connected";
+    case bluetooth::mojom::ConnectResult::DOES_NOT_EXIST:
+      return "Does Not Exist";
+    case bluetooth::mojom::ConnectResult::INVALID_ARGS:
+      return "Invalid Args";
+    case bluetooth::mojom::ConnectResult::NON_AUTH_TIMEOUT:
+      return "Non Auth Timeout";
+  }
+
+  NOTREACHED_NORETURN();
+}
+
 }  // namespace
 
 BleV2Medium::BleV2Medium(
@@ -72,9 +114,7 @@
 }
 
 BleV2Medium::~BleV2Medium() {
-  // For thread safety, shut down on the |task_runner_|. The destructor is
-  // blocking. It is expected that BleV2Medium calls are not made from the
-  // main thread.
+  // For thread safety, shut down on the |task_runner_|.
   base::WaitableEvent shutdown_waitable_event;
   task_runner_->PostTask(
       FROM_HERE, base::BindOnce(&BleV2Medium::Shutdown, base::Unretained(this),
@@ -418,8 +458,29 @@
     api::ble_v2::BlePeripheral& peripheral,
     api::ble_v2::TxPowerLevel tx_power_level,
     api::ble_v2::ClientGattConnectionCallback callback) {
-  NOTIMPLEMENTED();
-  return nullptr;
+  base::WaitableEvent connect_to_gatt_server_waitable_event;
+  CHECK(adapter_.is_bound());
+  mojo::PendingRemote<bluetooth::mojom::Device> device;
+  task_runner_->PostTask(
+      FROM_HERE,
+      base::BindOnce(&BleV2Medium::DoConnectToGattServer,
+                     base::Unretained(this), &device, peripheral.GetAddress(),
+                     &connect_to_gatt_server_waitable_event));
+  base::ScopedAllowBaseSyncPrimitives allow_wait;
+  connect_to_gatt_server_waitable_event.Wait();
+
+  if (!device) {
+    LOG(WARNING) << __func__ << ": could not connect to the GATT server";
+    return nullptr;
+  }
+
+  // `tx_power_level` has no equivalent parameter in the Bluetooth Adapter
+  // layer, so it is ignored.
+  //
+  // TODO(b/311430390): When Nearby Connections uses
+  // `ClientGattConnectionCallback`, pass it into `BleV2GattClient` to trigger
+  // events for characteristic subscription and disconnect.
+  return std::make_unique<nearby::chrome::BleV2GattClient>(std::move(device));
 }
 
 std::unique_ptr<api::ble_v2::BleServerSocket> BleV2Medium::OpenServerSocket(
@@ -627,6 +688,44 @@
   }
 }
 
+void BleV2Medium::DoConnectToGattServer(
+    mojo::PendingRemote<bluetooth::mojom::Device>* device,
+    const std::string& address,
+    base::WaitableEvent* connect_to_gatt_server_waitable_event) {
+  CHECK(task_runner_->RunsTasksInCurrentSequence());
+  pending_connect_to_gatt_server_waitable_events_.insert(
+      connect_to_gatt_server_waitable_event);
+  CHECK(adapter_.is_bound());
+  adapter_->ConnectToDevice(
+      address, base::BindOnce(&BleV2Medium::OnConnectToGattServer,
+                              base::Unretained(this), device,
+                              connect_to_gatt_server_waitable_event));
+}
+
+void BleV2Medium::OnConnectToGattServer(
+    mojo::PendingRemote<bluetooth::mojom::Device>* out_device,
+    base::WaitableEvent* connect_to_gatt_server_waitable_event,
+    bluetooth::mojom::ConnectResult result,
+    mojo::PendingRemote<bluetooth::mojom::Device> in_device) {
+  CHECK(task_runner_->RunsTasksInCurrentSequence());
+  if (!pending_connect_to_gatt_server_waitable_events_.contains(
+          connect_to_gatt_server_waitable_event)) {
+    // The event has already been signaled.
+    return;
+  }
+
+  *out_device = std::move(in_device);
+
+  VLOG(1) << __func__
+          << ": ConnectToDevice() result = " << ConnectResultToString(result);
+
+  if (!connect_to_gatt_server_waitable_event->IsSignaled()) {
+    connect_to_gatt_server_waitable_event->Signal();
+    pending_connect_to_gatt_server_waitable_events_.erase(
+        connect_to_gatt_server_waitable_event);
+  }
+}
+
 void BleV2Medium::Shutdown(base::WaitableEvent* shutdown_waitable_event) {
   CHECK(task_runner_->RunsTasksInCurrentSequence());
 
@@ -643,6 +742,7 @@
   // Cancel all pending connect/listen calls. This is sequence safe because all
   // changes to the pending-event sets are sequenced.
   CancelPendingTasks(pending_register_gatt_services_waitable_events_);
+  CancelPendingTasks(pending_connect_to_gatt_server_waitable_events_);
 
   shutdown_waitable_event->Signal();
 }
diff --git a/chrome/services/sharing/nearby/platform/ble_v2_medium.h b/chrome/services/sharing/nearby/platform/ble_v2_medium.h
index f5baec64..8a802e72 100644
--- a/chrome/services/sharing/nearby/platform/ble_v2_medium.h
+++ b/chrome/services/sharing/nearby/platform/ble_v2_medium.h
@@ -11,6 +11,7 @@
 #include "base/memory/weak_ptr.h"
 #include "chrome/services/sharing/nearby/platform/ble_v2_remote_peripheral.h"
 #include "device/bluetooth/public/mojom/adapter.mojom.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
 #include "mojo/public/cpp/bindings/receiver.h"
 #include "mojo/public/cpp/bindings/shared_remote.h"
 #include "third_party/nearby/src/internal/platform/implementation/ble_v2.h"
@@ -127,6 +128,16 @@
       base::WaitableEvent* register_gatt_services_waitable_event,
       bool in_registration_success);
 
+  void DoConnectToGattServer(
+      mojo::PendingRemote<bluetooth::mojom::Device>* device,
+      const std::string& address,
+      base::WaitableEvent* connect_to_gatt_server_waitable_event);
+  void OnConnectToGattServer(
+      mojo::PendingRemote<bluetooth::mojom::Device>* out_device,
+      base::WaitableEvent* connect_to_gatt_server_waitable_event,
+      bluetooth::mojom::ConnectResult result,
+      mojo::PendingRemote<bluetooth::mojom::Device> in_device);
+
   void Shutdown(base::WaitableEvent* shutdown_waitable_event);
 
   // `task_runner_` is used in `StartAdvertising()` to post a task to register
@@ -148,6 +159,10 @@
   base::flat_set<raw_ptr<base::WaitableEvent>>
       pending_register_gatt_services_waitable_events_;
 
+  // Track all pending connect to remote GATT servers waitable events.
+  base::flat_set<raw_ptr<base::WaitableEvent>>
+      pending_connect_to_gatt_server_waitable_events_;
+
   // Only set while discovery is active.
   mojo::Remote<bluetooth::mojom::DiscoverySession> discovery_session_;
 
diff --git a/chrome/services/sharing/nearby/platform/ble_v2_medium_unittest.cc b/chrome/services/sharing/nearby/platform/ble_v2_medium_unittest.cc
index 76347cd..29b2b83 100644
--- a/chrome/services/sharing/nearby/platform/ble_v2_medium_unittest.cc
+++ b/chrome/services/sharing/nearby/platform/ble_v2_medium_unittest.cc
@@ -17,6 +17,7 @@
 #include "chrome/services/sharing/nearby/platform/count_down_latch.h"
 #include "chrome/services/sharing/nearby/platform/nearby_platform_metrics.h"
 #include "chrome/services/sharing/nearby/test_support/fake_adapter.h"
+#include "chrome/services/sharing/nearby/test_support/fake_device.h"
 #include "components/cross_device/nearby/nearby_features.h"
 #include "mojo/public/cpp/bindings/pending_remote.h"
 #include "mojo/public/cpp/bindings/self_owned_receiver.h"
@@ -50,6 +51,16 @@
   return std::vector<uint8_t>(str.begin(), str.end());
 }
 
+class FakeBleV2RemotePeripheral : public api::ble_v2::BlePeripheral {
+ public:
+  FakeBleV2RemotePeripheral() = default;
+  ~FakeBleV2RemotePeripheral() override = default;
+
+  std::string GetAddress() const override { return kDeviceAddress; }
+
+  UniqueId GetUniqueId() const override { NOTREACHED_NORETURN(); }
+};
+
 }  // namespace
 
 class BleV2MediumTest : public testing::Test {
@@ -141,6 +152,15 @@
                    .is_connectable = true}));
   }
 
+  void CallConnectToGattServer(bool expected_success) {
+    base::ScopedAllowBaseSyncPrimitivesForTesting allow_sync_primitives;
+    FakeBleV2RemotePeripheral peripheral;
+    auto gatt_client = ble_v2_medium_->ConnectToGattServer(
+        peripheral, api::ble_v2::TxPowerLevel::kHigh,
+        /*callback=*/{});
+    EXPECT_EQ(expected_success, (gatt_client != nullptr));
+  }
+
  protected:
   base::test::TaskEnvironment task_environment_;
   base::HistogramTester histogram_tester_;
@@ -708,4 +728,31 @@
   run_loop.Run();
 }
 
+TEST_F(BleV2MediumTest, ConnectToGattServer_Success) {
+  fake_adapter_->SetConnectToDeviceResult(
+      bluetooth::mojom::ConnectResult::SUCCESS,
+      std::make_unique<bluetooth::FakeDevice>());
+  base::RunLoop run_loop;
+  base::ThreadPool::CreateSequencedTaskRunner({base::MayBlock()})
+      ->PostTaskAndReply(
+          FROM_HERE,
+          base::BindOnce(&BleV2MediumTest::CallConnectToGattServer,
+                         base::Unretained(this), /*expected_result=*/true),
+          run_loop.QuitClosure());
+  run_loop.Run();
+}
+
+TEST_F(BleV2MediumTest, ConnectToGattServer_Failure) {
+  fake_adapter_->SetConnectToDeviceResult(
+      bluetooth::mojom::ConnectResult::FAILED, /*fake_device=*/nullptr);
+  base::RunLoop run_loop;
+  base::ThreadPool::CreateSequencedTaskRunner({base::MayBlock()})
+      ->PostTaskAndReply(
+          FROM_HERE,
+          base::BindOnce(&BleV2MediumTest::CallConnectToGattServer,
+                         base::Unretained(this), /*expected_result=*/false),
+          run_loop.QuitClosure());
+  run_loop.Run();
+}
+
 }  // namespace nearby::chrome
diff --git a/chrome/services/sharing/nearby/test_support/fake_adapter.cc b/chrome/services/sharing/nearby/test_support/fake_adapter.cc
index ec752c6..0d60e89e 100644
--- a/chrome/services/sharing/nearby/test_support/fake_adapter.cc
+++ b/chrome/services/sharing/nearby/test_support/fake_adapter.cc
@@ -84,7 +84,19 @@
 FakeAdapter::~FakeAdapter() = default;
 
 void FakeAdapter::ConnectToDevice(const std::string& address,
-                                  ConnectToDeviceCallback callback) {}
+                                  ConnectToDeviceCallback callback) {
+  if (connect_to_device_result_ == bluetooth::mojom::ConnectResult::SUCCESS) {
+    mojo::PendingRemote<mojom::Device> pending_device;
+    mojo::MakeSelfOwnedReceiver(
+        std::move(fake_device_),
+        pending_device.InitWithNewPipeAndPassReceiver());
+    std::move(callback).Run(connect_to_device_result_,
+                            std::move(pending_device));
+    return;
+  }
+
+  std::move(callback).Run(connect_to_device_result_, mojo::NullRemote());
+}
 
 void FakeAdapter::GetDevices(GetDevicesCallback callback) {}
 
@@ -318,6 +330,13 @@
                                                               service_uuid);
 }
 
+void FakeAdapter::SetConnectToDeviceResult(
+    bluetooth::mojom::ConnectResult result,
+    std::unique_ptr<FakeDevice> fake_device) {
+  connect_to_device_result_ = result;
+  fake_device_ = std::move(fake_device);
+}
+
 void FakeAdapter::OnAdvertisementDestroyed(
     const device::BluetoothUUID& service_uuid) {
   DCHECK(!registered_advertisements_map_.empty());
diff --git a/chrome/services/sharing/nearby/test_support/fake_adapter.h b/chrome/services/sharing/nearby/test_support/fake_adapter.h
index 0d811f8d..7a8d567 100644
--- a/chrome/services/sharing/nearby/test_support/fake_adapter.h
+++ b/chrome/services/sharing/nearby/test_support/fake_adapter.h
@@ -6,6 +6,7 @@
 #define CHROME_SERVICES_SHARING_NEARBY_TEST_SUPPORT_FAKE_ADAPTER_H_
 
 #include "base/memory/raw_ptr.h"
+#include "chrome/services/sharing/nearby/test_support/fake_device.h"
 #include "chrome/services/sharing/nearby/test_support/fake_gatt_service.h"
 #include "device/bluetooth/public/cpp/bluetooth_uuid.h"
 #include "device/bluetooth/public/mojom/adapter.mojom.h"
@@ -77,6 +78,8 @@
   void AllowIncomingConnectionForServiceNameAndUuidPair(
       const std::string& service_name,
       const device::BluetoothUUID& service_uuid);
+  void SetConnectToDeviceResult(bluetooth::mojom::ConnectResult result,
+                                std::unique_ptr<FakeDevice> fake_device);
 
   mojo::Receiver<mojom::Adapter> adapter_{this};
   std::string address_ = "AdapterAddress";
@@ -110,6 +113,9 @@
 
   std::unique_ptr<FakeGattService> fake_gatt_service_;
 
+  bluetooth::mojom::ConnectResult connect_to_device_result_;
+  std::unique_ptr<FakeDevice> fake_device_;
+
   mojo::RemoteSet<mojom::AdapterObserver> observers_;
 };
 
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index dde59ad..516adbc 100644
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -1787,6 +1787,7 @@
       "//chrome/browser/web_applications:web_applications_test_support",
       "//chrome/browser/web_applications/extensions",
       "//chrome/browser/webaudio:browser_tests",
+      "//chrome/browser/webauthn:test_support",
       "//chrome/common:version_header",
       "//chrome/common/companion/visual_query:flags",
       "//chrome/common/privacy_budget:test_support",
@@ -2920,6 +2921,7 @@
       "../browser/ui/webui/side_panel/read_anything/read_anything_app_e2e_browsertest.cc",
       "../browser/ui/webui/support_tool/support_tool_ui_browsertest.cc",
       "../browser/ui/webui/tab_search/tab_search_ui_browsertest.cc",
+      "../browser/ui/webui/top_chrome/webui_contents_preload_manager_browsertest.cc",
       "../browser/ui/webui/webui_load_timer_browsertest.cc",
       "../browser/ui/zoom/zoom_controller_browsertest.cc",
       "../browser/ukm_worker_browsertest.cc",
@@ -5352,6 +5354,7 @@
         "../browser/safe_browsing/safe_browsing_blocking_page_test.cc",
         "../browser/safe_browsing/safe_browsing_navigation_observer_browsertest.cc",
         "../browser/safe_browsing/safe_browsing_service_browsertest.cc",
+        "../browser/safe_browsing/url_lookup_service_browsertest.cc",
         "../browser/safe_browsing/v4_embedded_test_server_browsertest.cc",
         "../browser/ssl/sct_reporting_service_browsertest.cc",
         "../renderer/safe_browsing/phishing_dom_feature_extractor_browsertest.cc",
@@ -5363,6 +5366,7 @@
         "//components/safe_browsing/content/common:file_type_policies_test_support",
         "//components/safe_browsing/core/browser:safe_browsing_metrics_collector",
         "//components/safe_browsing/core/browser/hashprefix_realtime:hash_realtime_service",
+        "//components/safe_browsing/core/browser/realtime:url_lookup_service",
         "//components/safe_browsing/core/common/fbs:client_model",
         "//components/safe_browsing/core/common/hashprefix_realtime:hash_realtime_utils",
       ]
@@ -5582,10 +5586,7 @@
 
     if (!is_chromeos) {
       sources += [ "../browser/webauthn/enclave_authenticator_browsertest.cc" ]
-      deps += [
-        "//chrome/browser/webauthn:test_support",
-        "//components/os_crypt/sync:test_support",
-      ]
+      deps += [ "//components/os_crypt/sync:test_support" ]
     }
   }
 }
@@ -6375,15 +6376,11 @@
     "../browser/page_load_metrics/observers/translate_page_load_metrics_observer_unittest.cc",
     "../browser/password_manager/chrome_password_manager_client_unittest.cc",
     "../browser/password_manager/chrome_webauthn_credentials_delegate_unittest.cc",
-    "../browser/performance_manager/decorators/frozen_frame_aggregator_unittest.cc",
     "../browser/performance_manager/decorators/helpers/page_live_state_decorator_helper_unittest.cc",
-    "../browser/performance_manager/decorators/page_aggregator_unittest.cc",
     "../browser/performance_manager/metrics/memory_pressure_metrics_unittest.cc",
     "../browser/performance_manager/metrics/metrics_provider_common_unittest.cc",
     "../browser/performance_manager/metrics/page_resource_monitor_unittest.cc",
     "../browser/performance_manager/policies/working_set_trimmer_policy_unittest.cc",
-    "../browser/performance_manager/test_support/page_aggregator.cc",
-    "../browser/performance_manager/test_support/page_aggregator.h",
     "../browser/performance_monitor/system_monitor_unittest.cc",
     "../browser/persisted_state_db/session_proto_db_factory_unittest.cc",
     "../browser/picture_in_picture/picture_in_picture_bounds_cache_unittest.cc",
diff --git a/chrome/test/base/fake_profile_manager.cc b/chrome/test/base/fake_profile_manager.cc
index 730076b..a76761ed 100644
--- a/chrome/test/base/fake_profile_manager.cc
+++ b/chrome/test/base/fake_profile_manager.cc
@@ -39,5 +39,12 @@
       FROM_HERE,
       base::BindOnce(base::IgnoreResult(&base::CreateDirectory), path));
 
-  return BuildTestingProfile(path, this);
+  auto profile = BuildTestingProfile(path, this);
+
+// TODO(b/341267441): Remove this buildflag if statement after this change does
+// not cause test failure on ChromeOS ash anymore,
+#if !BUILDFLAG(IS_CHROMEOS_ASH)
+  OnProfileCreationStarted(profile.get(), Profile::CREATE_MODE_ASYNCHRONOUS);
+#endif  // !BUILDFLAG(IS_CHROMEOS_ASH)
+  return profile;
 }
diff --git a/chrome/test/data/webui/chromeos/print_preview_cros/summary_panel_controller_test.ts b/chrome/test/data/webui/chromeos/print_preview_cros/summary_panel_controller_test.ts
index db32e9a5..577b560 100644
--- a/chrome/test/data/webui/chromeos/print_preview_cros/summary_panel_controller_test.ts
+++ b/chrome/test/data/webui/chromeos/print_preview_cros/summary_panel_controller_test.ts
@@ -4,10 +4,12 @@
 
 import 'chrome://os-print/js/summary_panel.js';
 
+import {CapabilitiesManager} from 'chrome://os-print/js/data/capabilities_manager.js';
 import {PreviewTicketManager} from 'chrome://os-print/js/data/preview_ticket_manager.js';
 import {PRINT_REQUEST_FINISHED_EVENT, PRINT_REQUEST_STARTED_EVENT, PrintTicketManager} from 'chrome://os-print/js/data/print_ticket_manager.js';
 import {FakePrintPreviewPageHandler} from 'chrome://os-print/js/fakes/fake_print_preview_page_handler.js';
 import {SummaryPanelController} from 'chrome://os-print/js/summary_panel_controller.js';
+import {createCustomEvent} from 'chrome://os-print/js/utils/event_utils.js';
 import {setPrintPreviewPageHandlerForTesting} from 'chrome://os-print/js/utils/mojo_data_providers.js';
 import {assert} from 'chrome://resources/js/assert.js';
 import {EventTracker} from 'chrome://resources/js/event_tracker.js';
@@ -19,6 +21,7 @@
   let controller: SummaryPanelController|null = null;
   let mockController: MockController;
   let printPreviewPageHandler: FakePrintPreviewPageHandler;
+  let capabilitiesManager: CapabilitiesManager;
   let previewTicketManager: PreviewTicketManager;
   let printTicketManager: PrintTicketManager;
   let eventTracker: EventTracker;
@@ -31,6 +34,7 @@
     // Setup fakes.
     printPreviewPageHandler = new FakePrintPreviewPageHandler();
     setPrintPreviewPageHandlerForTesting(printPreviewPageHandler);
+    capabilitiesManager = CapabilitiesManager.getInstance();
     previewTicketManager = PreviewTicketManager.getInstance();
     printTicketManager = PrintTicketManager.getInstance();
 
@@ -41,6 +45,8 @@
   teardown(() => {
     mockController.reset();
     eventTracker.removeAll();
+    CapabilitiesManager.resetInstanceForTesting();
+    PreviewTicketManager.resetInstanceForTesting();
     PrintTicketManager.resetInstanceForTesting();
     controller = null;
   });
@@ -88,39 +94,36 @@
       });
 
   // Verify handler called when PRINT_REQUEST_STARTED_EVENT triggered.
-  test('PRINT_REQUEST_STARTED_EVENT calls onPrintRequestStarted', async () => {
+  test('PRINT_REQUEST_STARTED_EVENT calls dispatch event', async () => {
     assert(controller);
-    const handlerFn =
-        mockController.createFunctionMock(controller, 'onPrintRequestStarted');
-    const testEvent = new CustomEvent<void>(
-        PRINT_REQUEST_STARTED_EVENT, {bubbles: true, composed: true});
+    const handlerFn = mockController.createFunctionMock(
+        controller, 'dispatchPrintButtonDisabledChangedEvent');
     const startRequest =
         eventToPromise(PRINT_REQUEST_STARTED_EVENT, printTicketManager);
-    handlerFn.addExpectation(testEvent);
+    handlerFn.addExpectation();
 
-    printTicketManager.dispatchEvent(testEvent);
+    printTicketManager.dispatchEvent(
+        createCustomEvent(PRINT_REQUEST_STARTED_EVENT));
     await startRequest;
 
     mockController.verifyMocks();
   });
 
   // Verify handler called when PRINT_REQUEST_FINISHED_EVENT triggered.
-  test(
-      'PRINT_REQUEST_FINISHED_EVENT calls onPrintRequestFinished', async () => {
-        assert(controller);
-        const handlerFn = mockController.createFunctionMock(
-            controller, 'onPrintRequestFinished');
-        const testEvent = new CustomEvent<void>(
-            PRINT_REQUEST_FINISHED_EVENT, {bubbles: true, composed: true});
-        const finishRequest =
-            eventToPromise(PRINT_REQUEST_FINISHED_EVENT, printTicketManager);
-        handlerFn.addExpectation(testEvent);
+  test('PRINT_REQUEST_FINISHED_EVENT calls dispatch event', async () => {
+    assert(controller);
+    const handlerFn = mockController.createFunctionMock(
+        controller, 'dispatchPrintButtonDisabledChangedEvent');
+    const finishRequest =
+        eventToPromise(PRINT_REQUEST_FINISHED_EVENT, printTicketManager);
+    handlerFn.addExpectation();
 
-        printTicketManager.dispatchEvent(testEvent);
-        await finishRequest;
+    printTicketManager.dispatchEvent(
+        createCustomEvent(PRINT_REQUEST_FINISHED_EVENT));
+    await finishRequest;
 
-        mockController.verifyMocks();
-      });
+    mockController.verifyMocks();
+  });
 
   // Verify shouldDisablePrintButton is true when preview is loaded but print
   // request is in progress.
@@ -150,6 +153,12 @@
             previewTicketManager, 'isPreviewLoaded');
         previewRequestInProgressFn.returnValue = true;
 
+        // Set capabilities to loaded since that can also disable the print
+        // button.
+        const activeDestinationCapsLoadedFn = mockController.createFunctionMock(
+            capabilitiesManager, 'areActiveDestinationCapabilitiesLoaded');
+        activeDestinationCapsLoadedFn.returnValue = true;
+
         const printRequestInProgressFn = mockController.createFunctionMock(
             printTicketManager, 'isPrintRequestInProgress');
         printRequestInProgressFn.returnValue = false;
@@ -158,9 +167,30 @@
 
   // Verify shouldDisablePrintButton is true when preview isn't loaded.
   test('shouldDisablePrintButton true while preview is not loaded', () => {
+    // Set capabilities to loaded since that can also disable the print
+    // button.
+    const activeDestinationCapsLoadedFn = mockController.createFunctionMock(
+        capabilitiesManager, 'areActiveDestinationCapabilitiesLoaded');
+    activeDestinationCapsLoadedFn.returnValue = true;
+
     const previewRequestInProgressFn = mockController.createFunctionMock(
         previewTicketManager, 'isPreviewLoaded');
     previewRequestInProgressFn.returnValue = false;
     assertTrue(controller!.shouldDisablePrintButton());
   });
+
+  // Verify shouldDisablePrintButton is true when capabilities aren't loaded.
+  test(
+      'shouldDisablePrintButton true while capabilities are not loaded', () => {
+        // Set preview loaded to true since that can also disable the print
+        // button.
+        const previewRequestInProgressFn = mockController.createFunctionMock(
+            previewTicketManager, 'isPreviewLoaded');
+        previewRequestInProgressFn.returnValue = true;
+
+        const activeDestinationCapsLoadedFn = mockController.createFunctionMock(
+            capabilitiesManager, 'areActiveDestinationCapabilitiesLoaded');
+        activeDestinationCapsLoadedFn.returnValue = false;
+        assertTrue(controller!.shouldDisablePrintButton());
+      });
 });
diff --git a/chrome/test/data/webui/chromeos/print_preview_cros/summary_panel_test.ts b/chrome/test/data/webui/chromeos/print_preview_cros/summary_panel_test.ts
index e08123f..b5b8cb4 100644
--- a/chrome/test/data/webui/chromeos/print_preview_cros/summary_panel_test.ts
+++ b/chrome/test/data/webui/chromeos/print_preview_cros/summary_panel_test.ts
@@ -4,11 +4,13 @@
 
 import 'chrome://os-print/js/summary_panel.js';
 
-import {PREVIEW_REQUEST_FINISHED_EVENT, PreviewTicketManager} from 'chrome://os-print/js/data/preview_ticket_manager.js';
+import {CapabilitiesManager} from 'chrome://os-print/js/data/capabilities_manager.js';
+import {PreviewTicketManager} from 'chrome://os-print/js/data/preview_ticket_manager.js';
 import {PrintTicketManager} from 'chrome://os-print/js/data/print_ticket_manager.js';
 import {FAKE_PRINT_SESSION_CONTEXT_SUCCESSFUL, FakePrintPreviewPageHandler} from 'chrome://os-print/js/fakes/fake_print_preview_page_handler.js';
 import {SummaryPanelElement} from 'chrome://os-print/js/summary_panel.js';
 import {PRINT_BUTTON_DISABLED_CHANGED_EVENT, SHEETS_USED_CHANGED_EVENT, SummaryPanelController} from 'chrome://os-print/js/summary_panel_controller.js';
+import {createCustomEvent} from 'chrome://os-print/js/utils/event_utils.js';
 import {setPrintPreviewPageHandlerForTesting} from 'chrome://os-print/js/utils/mojo_data_providers.js';
 import {strictQuery} from 'chrome://resources/ash/common/typescript_utils/strict_query.js';
 import {Button} from 'chrome://resources/cros_components/button/button.js';
@@ -36,6 +38,7 @@
     mockController = new MockController();
     mockTimer = new MockTimer();
     mockTimer.install();
+    CapabilitiesManager.resetInstanceForTesting();
     PreviewTicketManager.resetInstanceForTesting();
     PrintTicketManager.resetInstanceForTesting();
     printPreviewPageHandler = new FakePrintPreviewPageHandler();
@@ -63,6 +66,7 @@
     controller = null;
     mockController?.reset();
     mockController = null;
+    CapabilitiesManager.resetInstanceForTesting();
     PreviewTicketManager.resetInstanceForTesting();
     PrintTicketManager.resetInstanceForTesting();
   });
@@ -77,16 +81,21 @@
     flush();
   }
 
-  // Initialize the session to request a preview and enable the print button.
-  async function waitForPreviewRequestFinished(delay: number = 1):
-      Promise<void> {
+  // Mock the controllers to enable the print button.
+  function setPreviewAndCapabiliitesLoaded(): void {
+    assert(mockController);
+    const capabilitiesManager = CapabilitiesManager.getInstance();
+    const capabilitiesLoadedFn = mockController.createFunctionMock(
+        capabilitiesManager, 'areActiveDestinationCapabilitiesLoaded');
+    capabilitiesLoadedFn.returnValue = true;
+    capabilitiesLoadedFn.addExpectation();
+
     const previewTicketManager = PreviewTicketManager.getInstance();
-    const previewRequestFinishedEvent =
-        eventToPromise(PREVIEW_REQUEST_FINISHED_EVENT, previewTicketManager);
-    previewTicketManager.initializeSession(
-        FAKE_PRINT_SESSION_CONTEXT_SUCCESSFUL);
-    mockTimer.tick(delay);
-    await previewRequestFinishedEvent;
+    assert(mockController);
+    const isPreviewLoadedFn = mockController.createFunctionMock(
+        previewTicketManager, 'isPreviewLoaded');
+    isPreviewLoadedFn.returnValue = true;
+    isPreviewLoadedFn.addExpectation();
   }
 
   // Verify the summary-panel element can be rendered, contains print, cancel,
@@ -154,7 +163,10 @@
         mockController.createFunctionMock(controller!, 'handlePrintClicked');
     handlePrintClickedMock.addExpectation();
 
-    await waitForPreviewRequestFinished();
+    setPreviewAndCapabiliitesLoaded();
+    assert(controller);
+    controller.dispatchEvent(
+        createCustomEvent(PRINT_BUTTON_DISABLED_CHANGED_EVENT));
 
     // Click print button.
     const printButton =
@@ -194,7 +206,10 @@
     const delay = 10;
     printPreviewPageHandler.setTestDelay(delay);
 
-    await waitForPreviewRequestFinished(delay);
+    setPreviewAndCapabiliitesLoaded();
+    assert(controller);
+    controller.dispatchEvent(
+        createCustomEvent(PRINT_BUTTON_DISABLED_CHANGED_EVENT));
 
     const printButton =
         strictQuery<Button>(printButtonSelector, element!.shadowRoot, Button);
diff --git a/chrome/test/data/webui/chromeos/settings/controls/v2/settings_toggle_v2_test.ts b/chrome/test/data/webui/chromeos/settings/controls/v2/settings_toggle_v2_test.ts
index a513eab..c432f1b37 100644
--- a/chrome/test/data/webui/chromeos/settings/controls/v2/settings_toggle_v2_test.ts
+++ b/chrome/test/data/webui/chromeos/settings/controls/v2/settings_toggle_v2_test.ts
@@ -48,26 +48,38 @@
     return internalToggle;
   }
 
-  test('disabled toggle', () => {
-    init();
+  suite('when disabled', () => {
+    setup(() => {
+      init();
+      toggleElement.disabled = true;
+    });
 
-    // `disabled` is false by default.
-    assertFalse(toggleElement.hasAttribute('disabled'));
+    test('disabled property is reflected to attribute', () => {
+      assertTrue(toggleElement.hasAttribute('disabled'));
 
-    toggleElement.disabled = true;
-    assertTrue(toggleElement.hasAttribute('disabled'));
+      toggleElement.disabled = false;
+      assertFalse(toggleElement.hasAttribute('disabled'));
+    });
 
-    // clicking a disabled toggle does not change its checked value.
-    toggleElement.click();
-    assertTrue(toggleElement.hasAttribute('disabled'));
-    assertFalse(toggleElement.checked);
+    test('internal cr-toggle is disabled', () => {
+      const internalToggle = getInternalToggle();
+      assertTrue(internalToggle.disabled);
+    });
 
-    toggleElement.disabled = false;
-    assertFalse(toggleElement.hasAttribute('disabled'));
+    test('clicking does not change the toggle state', () => {
+      assertFalse(toggleElement.checked);
+      const internalToggle = getInternalToggle();
+      assertFalse(internalToggle.checked);
+
+      toggleElement.click();
+      assertFalse(toggleElement.checked);
+      assertFalse(internalToggle.checked);
+    });
   });
 
   test(
       'triggers a change event when the value of toggle changes.', async () => {
+        init();
         const checkedChangeEventPromise = eventToPromise('change', window);
 
         toggleElement.click();
@@ -230,13 +242,7 @@
     test(
         'Pref value updates the checked value when the toggle is disabled',
         () => {
-          // `disabled` is false by default.
-          assertFalse(toggleElement.hasAttribute('disabled'));
-
           toggleElement.disabled = true;
-          assertTrue(toggleElement.hasAttribute('disabled'));
-
-          // changing the pref changes the checked value
           toggleElement.set('pref.value', true);
           assertTrue(toggleElement.pref!.value);
           assertTrue(toggleElement.checked);
diff --git a/chrome/test/data/webui/chromeos/settings/internet_page/internet_subpage_test.ts b/chrome/test/data/webui/chromeos/settings/internet_page/internet_subpage_test.ts
index 0273d7c..595c628 100644
--- a/chrome/test/data/webui/chromeos/settings/internet_page/internet_subpage_test.ts
+++ b/chrome/test/data/webui/chromeos/settings/internet_page/internet_subpage_test.ts
@@ -5,7 +5,7 @@
 import 'chrome://os-settings/lazy_load.js';
 
 import {CellularNetworksListElement, NetworkAlwaysOnVpnElement, NetworkListElement, SettingsInternetSubpageElement} from 'chrome://os-settings/lazy_load.js';
-import {Router, routes, settingMojom} from 'chrome://os-settings/os_settings.js';
+import {Router, routes, settingMojom, SettingsToggleButtonElement} from 'chrome://os-settings/os_settings.js';
 import {setESimManagerRemoteForTesting} from 'chrome://resources/ash/common/cellular_setup/mojo_interface_provider.js';
 import {MojoInterfaceProviderImpl} from 'chrome://resources/ash/common/network/mojo_interface_provider.js';
 import {OncMojo} from 'chrome://resources/ash/common/network/onc_mojo.js';
@@ -696,6 +696,67 @@
         assertEquals(2, networkAlwaysOnVpn.networks.length);
       });
 
+      [false, true].forEach(isInstantHotspotRebrandEnabled => {
+        test('Instant Hotspot Notification Control is Presented', async () => {
+          loadTimeData.overrideValues({
+            'isInstantHotspotRebrandEnabled': isInstantHotspotRebrandEnabled,
+          });
+          const fakePrefs = {
+            tether: {
+              notifications_enabled: {
+                key: 'notifications_enabled',
+                type: chrome.settingsPrivate.PrefType.BOOLEAN,
+                value: true,
+              },
+            },
+          };
+
+          createSubpage();
+          mojoApi.addNetworksForTest(
+              [OncMojo.getDefaultNetworkState(NetworkType.kTether, 'tether1')]);
+
+          internetSubpage.defaultNetwork =
+              OncMojo.getDefaultNetworkState(NetworkType.kTether, 'tether1');
+          internetSubpage.deviceState =
+              mojoApi.getDeviceStateForTest(NetworkType.kTether) || undefined;
+          internetSubpage.prefs = fakePrefs;
+
+          mojoApi.setDeviceStateForTest({
+            type: NetworkType.kTether,
+            deviceState: DeviceStateType.kEnabled,
+            scanning: false,
+            ipv4Address: undefined,
+            ipv6Address: undefined,
+            imei: undefined,
+            macAddress: undefined,
+            simLockStatus: undefined,
+            simInfos: undefined,
+            inhibitReason: InhibitReason.kNotInhibited,
+            simAbsent: false,
+            managedNetworkAvailable: false,
+            serial: undefined,
+            isCarrierLocked: false,
+          });
+          assertFalse(mojoApi.getIsDeviceScanning(NetworkType.kTether));
+
+          initSubpage();
+
+          const notificationsControl =
+              internetSubpage.shadowRoot!
+                  .querySelector<SettingsToggleButtonElement>(
+                      '#instant-tether-notifications-toggle');
+          if (isInstantHotspotRebrandEnabled) {
+            assertTrue(!!notificationsControl);
+            assertTrue(notificationsControl.checked);
+            notificationsControl.click();
+            await flushTasks();
+            assertFalse(notificationsControl.checked);
+          } else {
+            assertNull(notificationsControl);
+          }
+        });
+      });
+
       test('Instant Hotspot page initiates tether scanning', async () => {
         loadTimeData.overrideValues({
           'isInstantHotspotRebrandEnabled': true,
diff --git a/chrome/test/data/webui/cr_elements/cr_menu_selector_focus_test.ts b/chrome/test/data/webui/cr_elements/cr_menu_selector_focus_test.ts
index 214b02d..b85a2a61 100644
--- a/chrome/test/data/webui/cr_elements/cr_menu_selector_focus_test.ts
+++ b/chrome/test/data/webui/cr_elements/cr_menu_selector_focus_test.ts
@@ -137,14 +137,14 @@
     assertFalse(shiftTabEvent.defaultPrevented);
   });
 
-  test('SetsSelectedItemUsingHref', async () => {
+  test('SetsSelectedItemUsingHrefAttribute', async () => {
     const firstItem = getChild(0);
-    element.selected = firstItem.href;
+    element.selected = firstItem.getAttribute('href')!;
     await microtasksFinished();
     assertTrue(firstItem.hasAttribute('selected'));
     assertEquals('page', firstItem.getAttribute('aria-current'));
     const secondItem = getChild(1);
-    element.selected = secondItem.href;
+    element.selected = secondItem.getAttribute('href')!;
     await microtasksFinished();
     assertFalse(firstItem.hasAttribute('selected'));
     assertFalse(firstItem.hasAttribute('aria-current'));
@@ -166,6 +166,6 @@
     itemToSelect.dispatchEvent(new Event('click', {bubbles: true}));
     await Promise.all([onActivate, onSelect]);
     assertTrue(itemToSelect.hasAttribute('selected'));
-    assertEquals(itemToSelect.href, element.selected);
+    assertEquals(itemToSelect.getAttribute('href'), element.selected);
   });
 });
diff --git a/chrome/test/data/webui/cr_elements/cr_selectable_mixin_test.ts b/chrome/test/data/webui/cr_elements/cr_selectable_mixin_test.ts
index 813755c..d6b753a6 100644
--- a/chrome/test/data/webui/cr_elements/cr_selectable_mixin_test.ts
+++ b/chrome/test/data/webui/cr_elements/cr_selectable_mixin_test.ts
@@ -78,10 +78,10 @@
     elements[0]!.click();
     const events = await Promise.all([activateEvent, selectEvent]);
 
-    assertEquals('chrome://webui-test/a', events[0]!.detail.selected);
+    assertEquals('/a', events[0]!.detail.selected);
     assertEquals(elements[0], events[0]!.detail.item);
     assertEquals(elements[0], events[1]!.detail.item);
-    assertEquals('chrome://webui-test/a', element.selected);
+    assertEquals('/a', element.selected);
 
     selectEvent = eventToPromise('iron-select', element);
     activateEvent = eventToPromise('iron-activate', element);
@@ -90,11 +90,11 @@
     const newEvents =
         await Promise.all([activateEvent, deselectEvent, selectEvent]);
 
-    assertEquals('chrome://webui-test/b', newEvents[0]!.detail.selected);
+    assertEquals('/b', newEvents[0]!.detail.selected);
     assertEquals(elements[1], newEvents[0]!.detail.item);
     assertEquals(elements[0], newEvents[1]!.detail.item);
     assertEquals(elements[1], newEvents[2]!.detail.item);
-    assertEquals('chrome://webui-test/b', element.selected);
+    assertEquals('/b', element.selected);
   });
 
   test('sets attribute and class', async () => {
@@ -109,11 +109,11 @@
       }
     }
 
-    element.selected = 'chrome://webui-test/c';
+    element.selected = '/c';
     await eventToPromise('iron-select', element);
     assertSelected(2);
 
-    element.selected = 'chrome://webui-test/a';
+    element.selected = '/a';
     await eventToPromise('iron-select', element);
     assertSelected(0);
   });
@@ -177,7 +177,7 @@
     assertNull(element.selectedItem);
 
     // Select the 2nd item.
-    element.selected = 'chrome://webui-test/b';
+    element.selected = '/b';
     await element.updateComplete;
     let selectedItem = element.shadowRoot!.querySelector('.iron-selected');
     assertTrue(!!selectedItem);
@@ -191,7 +191,7 @@
     assertNull(element.selectedItem);
 
     // Select the 1st item.
-    element.selected = 'chrome://webui-test/a';
+    element.selected = '/a';
     await element.updateComplete;
     selectedItem = element.shadowRoot!.querySelector('.iron-selected');
     assertTrue(!!selectedItem);
@@ -201,7 +201,7 @@
     // Select the next item.
     element.selectNext();
     await element.updateComplete;
-    assertEquals('chrome://webui-test/c', element.selected);
+    assertEquals('/c', element.selected);
     selectedItem = element.shadowRoot!.querySelector('.iron-selected');
     assertTrue(!!selectedItem);
     assertEquals(selectedItem, element.selectedItem);
diff --git a/chrome/test/data/webui/settings/BUILD.gn b/chrome/test/data/webui/settings/BUILD.gn
index 969f567e..9b9e4810 100644
--- a/chrome/test/data/webui/settings/BUILD.gn
+++ b/chrome/test/data/webui/settings/BUILD.gn
@@ -123,7 +123,6 @@
     "storage_access_static_site_list_entry_test.ts",
     "storage_access_site_list_entry_test.ts",
     "storage_access_site_list_test.ts",
-    "sync_account_control_test.ts",
     "sync_test_util.ts",
     "tab_discard_exception_dialog_test.ts",
     "test_about_page_browser_proxy.ts",
@@ -164,6 +163,7 @@
       "relaunch_confirmation_dialog_test.ts",
       "spell_check_page_metrics_test_browser.ts",
       "spell_check_page_test.ts",
+      "sync_account_control_test.ts",
       "test_languages_browser_proxy.ts",
       "test_languages_settings_metrics_proxy.ts",
       "translate_page_metrics_test_browser.ts",
diff --git a/chrome/test/data/webui/settings/people_page_sync_controls_test.ts b/chrome/test/data/webui/settings/people_page_sync_controls_test.ts
index 90804c7..d9aa4c5d 100644
--- a/chrome/test/data/webui/settings/people_page_sync_controls_test.ts
+++ b/chrome/test/data/webui/settings/people_page_sync_controls_test.ts
@@ -14,8 +14,7 @@
 import {waitBeforeNextRender} from 'chrome://webui-test/polymer_test_util.js';
 import {eventToPromise, isVisible} from 'chrome://webui-test/test_util.js';
 
-import type {SyncRoutes} from './sync_test_util.js';
-import {getSyncAllPrefs, getSyncAllPrefsManaged, setupRouterWithSyncRoutes} from './sync_test_util.js';
+import {getSyncAllPrefs, getSyncAllPrefsManaged} from './sync_test_util.js';
 import {TestSyncBrowserProxy} from './test_sync_browser_proxy.js';
 
 // <if expr="chromeos_lacros">
@@ -32,7 +31,6 @@
   let radioGroup: HTMLElement;
 
   setup(async function() {
-    setupRouterWithSyncRoutes();
     browserProxy = new TestSyncBrowserProxy();
     SyncBrowserProxyImpl.setInstance(browserProxy);
 
@@ -197,7 +195,7 @@
 
     syncControls = document.createElement('settings-sync-controls');
     const router = Router.getInstance();
-    router.navigateTo((router.getRoutes() as SyncRoutes).SYNC_ADVANCED);
+    router.navigateTo(router.getRoutes().SYNC_ADVANCED);
     document.body.appendChild(syncControls);
 
     syncControls.syncStatus = {
@@ -208,9 +206,7 @@
     };
     flush();
 
-    assertEquals(
-        (router.getRoutes() as SyncRoutes).SYNC_ADVANCED,
-        router.getCurrentRoute());
+    assertEquals(router.getRoutes().SYNC_ADVANCED, router.getCurrentRoute());
   });
 
   test('SignedOut', function() {
@@ -221,9 +217,7 @@
       statusAction: StatusAction.NO_ACTION,
     };
     const router = Router.getInstance();
-    assertEquals(
-        (router.getRoutes() as SyncRoutes).SYNC.path,
-        router.getCurrentRoute().path);
+    assertEquals(router.getRoutes().SYNC.path, router.getCurrentRoute().path);
   });
 
   test('PassphraseError', function() {
@@ -235,8 +229,7 @@
     };
     const router = Router.getInstance();
     assertEquals(
-        (router.getRoutes() as SyncRoutes).SYNC_ADVANCED.path,
-        router.getCurrentRoute().path);
+        router.getRoutes().SYNC_ADVANCED.path, router.getCurrentRoute().path);
   });
 
   test('SyncPaused', function() {
@@ -247,9 +240,7 @@
       statusAction: StatusAction.REAUTHENTICATE,
     };
     const router = Router.getInstance();
-    assertEquals(
-        (router.getRoutes() as SyncRoutes).SYNC.path,
-        router.getCurrentRoute().path);
+    assertEquals(router.getRoutes().SYNC.path, router.getCurrentRoute().path);
   });
 });
 
@@ -263,7 +254,6 @@
   let radioGroup: HTMLElement;
 
   setup(async function() {
-    setupRouterWithSyncRoutes();
     browserProxy = new TestSyncBrowserProxy();
     SyncBrowserProxyImpl.setInstance(browserProxy);
 
@@ -362,7 +352,6 @@
   }
 
   setup(async function() {
-    setupRouterWithSyncRoutes();
     const browserProxy = new TestSyncBrowserProxy();
     SyncBrowserProxyImpl.setInstance(browserProxy);
 
diff --git a/chrome/test/data/webui/settings/people_page_sync_page_interactive_test.ts b/chrome/test/data/webui/settings/people_page_sync_page_interactive_test.ts
index 5fc06a9..64b0716 100644
--- a/chrome/test/data/webui/settings/people_page_sync_page_interactive_test.ts
+++ b/chrome/test/data/webui/settings/people_page_sync_page_interactive_test.ts
@@ -11,8 +11,6 @@
 import {Router, SignedInState, StatusAction, SyncBrowserProxyImpl} from 'chrome://settings/settings.js';
 import {assertEquals, assertFalse, assertTrue} from 'chrome://webui-test/chai_assert.js';
 
-import type {SyncRoutes} from './sync_test_util.js';
-import {setupRouterWithSyncRoutes} from './sync_test_util.js';
 import {TestSyncBrowserProxy} from './test_sync_browser_proxy.js';
 
 // clang-format on
@@ -21,11 +19,10 @@
   let syncPage: SettingsSyncPageElement;
 
   setup(function() {
-    setupRouterWithSyncRoutes();
     document.body.innerHTML = window.trustedTypes!.emptyHTML;
     SyncBrowserProxyImpl.setInstance(new TestSyncBrowserProxy());
     const router = Router.getInstance();
-    router.navigateTo((router.getRoutes() as SyncRoutes).SYNC);
+    router.navigateTo(router.getRoutes().SYNC);
     syncPage = document.createElement('settings-sync-page');
     document.body.appendChild(syncPage);
     flush();
diff --git a/chrome/test/data/webui/settings/people_page_sync_page_test.ts b/chrome/test/data/webui/settings/people_page_sync_page_test.ts
index aa1bf57..576220b 100644
--- a/chrome/test/data/webui/settings/people_page_sync_page_test.ts
+++ b/chrome/test/data/webui/settings/people_page_sync_page_test.ts
@@ -25,8 +25,7 @@
 import {simulateStoredAccounts} from './sync_test_util.js';
 // </if>
 
-import type {SyncRoutes} from './sync_test_util.js';
-import {getSyncAllPrefs, setupRouterWithSyncRoutes} from './sync_test_util.js';
+import {getSyncAllPrefs} from './sync_test_util.js';
 import {TestMetricsBrowserProxy} from './test_metrics_browser_proxy.js';
 import {TestSyncBrowserProxy} from './test_sync_browser_proxy.js';
 
@@ -44,7 +43,7 @@
     document.body.innerHTML = window.trustedTypes!.emptyHTML;
     syncPage = document.createElement('settings-sync-page');
     const router = Router.getInstance();
-    router.navigateTo((router.getRoutes() as SyncRoutes).SYNC);
+    router.navigateTo(router.getRoutes().SYNC);
     // Preferences should exist for embedded
     // 'personalization_options.html'. We don't perform tests on them.
     syncPage.prefs = {
@@ -84,7 +83,6 @@
   });
 
   setup(async function() {
-    setupRouterWithSyncRoutes();
     browserProxy = new TestSyncBrowserProxy();
     SyncBrowserProxyImpl.setInstance(browserProxy);
 
@@ -118,12 +116,12 @@
 
     // Navigate away.
     const router = Router.getInstance();
-    router.navigateTo((router.getRoutes() as SyncRoutes).PEOPLE);
+    router.navigateTo(router.getRoutes().PEOPLE);
     await browserProxy.whenCalled('didNavigateAwayFromSyncPage');
 
     // Navigate back to the page.
     browserProxy.resetResolver('didNavigateToSyncPage');
-    router.navigateTo((router.getRoutes() as SyncRoutes).SYNC);
+    router.navigateTo(router.getRoutes().SYNC);
     await browserProxy.whenCalled('didNavigateToSyncPage');
 
     // Remove page element.
@@ -134,7 +132,7 @@
     // Recreate page element.
     browserProxy.resetResolver('didNavigateToSyncPage');
     syncPage = document.createElement('settings-sync-page');
-    router.navigateTo((router.getRoutes() as SyncRoutes).SYNC);
+    router.navigateTo(router.getRoutes().SYNC);
     document.body.appendChild(syncPage);
     await browserProxy.whenCalled('didNavigateToSyncPage');
   });
@@ -611,8 +609,7 @@
     // Confirm that the page navigates away form the sync setup.
     await browserProxy.whenCalled('didNavigateAwayFromSyncPage');
     const router = Router.getInstance();
-    assertEquals(
-        (router.getRoutes() as SyncRoutes).PEOPLE, router.getCurrentRoute());
+    assertEquals(router.getRoutes().PEOPLE, router.getCurrentRoute());
   });
 
   test('EnterExistingPassphraseDoesNotExistIfSignedOut', async function() {
@@ -806,8 +803,7 @@
     const router = Router.getInstance();
     router.navigateTo(routes.BASIC);
     await eventToPromise('cr-dialog-open', syncPage);
-    assertEquals(
-        (router.getRoutes() as SyncRoutes).SYNC, router.getCurrentRoute());
+    assertEquals(router.getRoutes().SYNC, router.getCurrentRoute());
     assertTrue(syncPage.shadowRoot!
                    .querySelector<CrDialogElement>('#setupCancelDialog')!.open);
 
@@ -820,8 +816,7 @@
         syncPage.shadowRoot!.querySelector<CrDialogElement>(
             '#setupCancelDialog')!);
     flush();
-    assertEquals(
-        (router.getRoutes() as SyncRoutes).SYNC, router.getCurrentRoute());
+    assertEquals(router.getRoutes().SYNC, router.getCurrentRoute());
     assertFalse(!!syncPage.shadowRoot!.querySelector<CrDialogElement>(
         '#setupCancelDialog'));
 
@@ -880,8 +875,7 @@
     // Entering passphrase should not display the cancel dialog and should not
     // abort the sync setup.
     const router = Router.getInstance();
-    assertEquals(
-        (router.getRoutes() as SyncRoutes).SYNC, router.getCurrentRoute());
+    assertEquals(router.getRoutes().SYNC, router.getCurrentRoute());
     const setupCancelDialog =
         syncPage.shadowRoot!.querySelector<CrDialogElement>(
             '#setupCancelDialog');
@@ -930,8 +924,7 @@
     // Creating passphrase should not display the cancel dialog and should not
     // abort the sync setup.
     const router = Router.getInstance();
-    assertEquals(
-        (router.getRoutes() as SyncRoutes).SYNC, router.getCurrentRoute());
+    assertEquals(router.getRoutes().SYNC, router.getCurrentRoute());
     const setupCancelDialog =
         syncPage.shadowRoot!.querySelector<CrDialogElement>(
             '#setupCancelDialog');
@@ -950,8 +943,7 @@
     // Searching settings while setup is in progress cancels sync.
     const router = Router.getInstance();
     router.navigateTo(
-        (router.getRoutes() as SyncRoutes).BASIC,
-        new URLSearchParams('search=foo'));
+        router.getRoutes().BASIC, new URLSearchParams('search=foo'));
 
     const abort = await browserProxy.whenCalled('didNavigateAwayFromSyncPage');
     assertTrue(abort);
diff --git a/chrome/test/data/webui/settings/settings_browsertest.cc b/chrome/test/data/webui/settings/settings_browsertest.cc
index b6a5655..9bcf232 100644
--- a/chrome/test/data/webui/settings/settings_browsertest.cc
+++ b/chrome/test/data/webui/settings/settings_browsertest.cc
@@ -464,9 +464,11 @@
   RunTest("settings/settings_subpage_test.js", "mocha.run()");
 }
 
+#if !BUILDFLAG(IS_CHROMEOS_ASH)
 IN_PROC_BROWSER_TEST_F(SettingsTest, SyncAccountControl) {
   RunTest("settings/sync_account_control_test.js", "mocha.run()");
 }
+#endif
 
 #if !BUILDFLAG(IS_CHROMEOS)
 IN_PROC_BROWSER_TEST_F(SettingsTest, SystemPage) {
diff --git a/chrome/test/data/webui/settings/sync_account_control_test.ts b/chrome/test/data/webui/settings/sync_account_control_test.ts
index a08da92..0b73b8860 100644
--- a/chrome/test/data/webui/settings/sync_account_control_test.ts
+++ b/chrome/test/data/webui/settings/sync_account_control_test.ts
@@ -15,8 +15,7 @@
 import {assertEquals, assertFalse, assertTrue} from 'chrome://webui-test/chai_assert.js';
 import {isChildVisible, isVisible} from 'chrome://webui-test/test_util.js';
 
-import type {SyncRoutes} from './sync_test_util.js';
-import {setupRouterWithSyncRoutes, simulateStoredAccounts} from './sync_test_util.js';
+import {simulateStoredAccounts} from './sync_test_util.js';
 import {TestSyncBrowserProxy} from './test_sync_browser_proxy.js';
 
 // clang-format on
@@ -44,7 +43,6 @@
   }
 
   setup(async function() {
-    setupRouterWithSyncRoutes();
     browserProxy = new TestSyncBrowserProxy();
     SyncBrowserProxyImpl.setInstance(browserProxy);
 
@@ -361,7 +359,7 @@
 
     assertEquals(
         Router.getInstance().getCurrentRoute(),
-        (Router.getInstance().getRoutes() as SyncRoutes).SIGN_OUT);
+        Router.getInstance().getRoutes().SIGN_OUT);
   });
 
   test('signed in, has error', function() {
diff --git a/chrome/test/data/webui/settings/sync_test_util.ts b/chrome/test/data/webui/settings/sync_test_util.ts
index 39c48913..1c8b912 100644
--- a/chrome/test/data/webui/settings/sync_test_util.ts
+++ b/chrome/test/data/webui/settings/sync_test_util.ts
@@ -5,8 +5,7 @@
 // clang-format off
 import {webUIListenerCallback} from 'chrome://resources/js/cr.js';
 import {flush} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
-import type {SettingsRoutes, StoredAccount, SyncPrefs, SyncStatus} from 'chrome://settings/settings.js';
-import {resetRouterForTesting, Route, Router} from 'chrome://settings/settings.js';
+import type {StoredAccount, SyncPrefs, SyncStatus} from 'chrome://settings/settings.js';
 // clang-format on
 
 /**
@@ -93,38 +92,6 @@
   });
 }
 
-export interface SyncRoutes {
-  BASIC: Route;
-  PEOPLE: Route;
-  SYNC: Route;
-  SYNC_ADVANCED: Route;
-  SIGN_OUT: Route;
-  ADVANCED: Route;
-  ABOUT: Route;
-}
-
-export function setupRouterWithSyncRoutes() {
-  const BASIC = new Route('/');
-  const PEOPLE = BASIC.createSection('/people', 'people');
-  const SYNC = PEOPLE.createChild('/syncSetup');
-  const SYNC_ADVANCED = SYNC.createChild('/syncSetup/advanced');
-
-  const SIGN_OUT = BASIC.createChild('/signOut');
-  SIGN_OUT.isNavigableDialog = true;
-
-  const routes: SyncRoutes = {
-    BASIC,
-    PEOPLE,
-    SYNC,
-    SYNC_ADVANCED,
-    SIGN_OUT,
-    ADVANCED: new Route('/advanced'),
-    ABOUT: new Route('/help'),
-  };
-
-  resetRouterForTesting(new Router(routes as unknown as SettingsRoutes));
-}
-
 export function simulateSyncStatus(status: SyncStatus|undefined) {
   webUIListenerCallback('sync-status-changed', status);
   flush();
diff --git a/chrome/updater/mac/client_lib/BUILD.gn b/chrome/updater/mac/client_lib/BUILD.gn
index bb703d8e..3939ff3 100644
--- a/chrome/updater/mac/client_lib/BUILD.gn
+++ b/chrome/updater/mac/client_lib/BUILD.gn
@@ -6,6 +6,7 @@
 
 source_set("public_sources") {
   sources = [
+    "CRURegistration-Private.h",
     "CRURegistration.h",
     "CRURegistration.m",
   ]
@@ -17,6 +18,10 @@
   sources = [ "CRURegistration_unittests.mm" ]
   deps = [
     ":public_sources",
+    "//base",
+    "//net/",
     "//testing/gtest",
+    "//url/",
   ]
+  data_deps = [ "//chrome/updater/mac/client_lib/test_helpers" ]
 }
diff --git a/chrome/updater/mac/client_lib/CRURegistration-Private.h b/chrome/updater/mac/client_lib/CRURegistration-Private.h
new file mode 100644
index 0000000..0d324de
--- /dev/null
+++ b/chrome/updater/mac/client_lib/CRURegistration-Private.h
@@ -0,0 +1,55 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// CRURegistration-Private contains declarations of CRURegistration
+// implementation details that need unit testing.
+
+#ifndef CHROME_UPDATER_MAC_CLIENT_LIB_CRUREGISTRATION_PRIVATE_H_
+#define CHROME_UPDATER_MAC_CLIENT_LIB_CRUREGISTRATION_PRIVATE_H_
+
+#import <Foundation/Foundation.h>
+
+extern NSString* const CRUReturnCodeErrorDomain;
+
+/***
+ * CRUTaskResultCallback is a block receiving the result of an NSTask
+ * invocation.
+ *
+ * Parameters:
+ *  NSData* -- all stdout content, nil if the process never launched.
+ *  NSData* -- all stderr content. nil if the process never launched.
+ *  NSError* -- return value of the process.
+ *      * nil: the process ran and returned zero
+ *      * error domain is CRUReturnCodeErrorDomain: process ran and returned
+ *      nonzero; error code
+ *          is the return value. NSData* arguments will be nonnil.
+ *      * any other error domain: the task could not be launched; this is the
+ *      error from NSTask or
+ *          is in CRURegistrationErrorDomain. NSData* elements will be nil.
+ */
+typedef void (^CRUTaskResultCallback)(NSData*, NSData*, NSError*);
+
+/**
+ * CRUAsyncTaskRunner runs an NSTask and asynchronously accumulates its stdout
+ * and stderr streams into NSMutableData buffers.
+ */
+@interface CRUAsyncTaskRunner : NSObject
+
+- (instancetype)initWithTask:(NSTask*)task
+                 targetQueue:(dispatch_queue_t)targetQueue
+    NS_DESIGNATED_INITIALIZER;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/**
+ * launchWithReply launches the task and buffers its output. It calls `reply`
+ * with the results of the task when the task completes. If the task cannot
+ * be launched, it invokes `reply` with nil NSData* args and the NSError* from
+ * NSTask's launch failure.
+ */
+- (void)launchWithReply:(CRUTaskResultCallback)reply;
+
+@end
+
+#endif  // CHROME_UPDATER_MAC_CLIENT_LIB_CRUREGISTRATION_PRIVATE_H_
diff --git a/chrome/updater/mac/client_lib/CRURegistration.h b/chrome/updater/mac/client_lib/CRURegistration.h
index dddc9239..b703f78 100644
--- a/chrome/updater/mac/client_lib/CRURegistration.h
+++ b/chrome/updater/mac/client_lib/CRURegistration.h
@@ -10,6 +10,30 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+/** The domain for user or system errors reported by CRURegistration. */
+extern NSString* const CRURegistrationErrorDomain;
+
+/**
+ * The domain for internal errors from CRURegistration. Clients should never
+ * encounter these; please file a bug if you get errors in this domain.
+ */
+extern NSString* const CRURegistrationInternalErrorDomain;
+
+/**
+ * NSError userInfo dict key mapped to the POSIX errno for NSErrors in
+ * CRURegistrationErrorDomain with underlying POSIX causes.
+ */
+extern NSString* const CRUErrnoKey;
+
+typedef NS_ERROR_ENUM(CRURegistrationErrorDomain, CRURegistrationError){
+    /**
+     * CRURegistration couldn't read a stream (stdout or stderr) when running
+     * a subprocess. The POSIX error code for the error is available in the
+     * error's user data under CRUErrnoKey.
+     */
+    CRURegistrationErrorTaskStreamUnreadable = 1,
+};
+
 /**
  * CRURegistration interfaces with Chromium Updater to configure and retrieve
  * information about an app, or to install the updater for the current user. Its
diff --git a/chrome/updater/mac/client_lib/CRURegistration.m b/chrome/updater/mac/client_lib/CRURegistration.m
index 3f1d96c..46d01015 100644
--- a/chrome/updater/mac/client_lib/CRURegistration.m
+++ b/chrome/updater/mac/client_lib/CRURegistration.m
@@ -7,6 +7,179 @@
 #import <Foundation/Foundation.h>
 #import <dispatch/dispatch.h>
 
+#import "CRURegistration-Private.h"
+
+NSString* const CRURegistrationErrorDomain = @"org.chromium.CRURegistration";
+NSString* const CRUReturnCodeErrorDomain = @"org.chromium.CRUReturnCode";
+NSString* const CRURegistrationInternalErrorDomain =
+    @"org.chromium.CRURegistrationInternal";
+
+typedef NS_ERROR_ENUM(CRURegistrationInternalErrorDomain,
+                      CRURegistrationInternalError){
+    CRURegistrationInternalErrorTaskAlreadyLaunched = 1,
+};
+
+// Keys that may be present in NSError `userInfo` dictionaries.
+NSString* const CRUErrnoKey = @"org.chromium.CRUErrno";
+NSString* const CRUStdStreamNameKey = @"org.chromium.CRUStdStreamName";
+
+@implementation CRUAsyncTaskRunner {
+  // These fields are written once during init and never again.
+  dispatch_queue_t _parentQueue;
+  dispatch_queue_t _privateQueue;
+  NSTask* _task;
+
+  // These fields are guarded by `_privateQueue`.
+  BOOL _launched;
+  NSMutableData* _taskStdoutData;
+  NSMutableData* _taskStderrData;
+  NSError* _taskManagementError;
+  NSPipe* _taskStdoutPipe;
+  NSPipe* _taskStderrPipe;
+  dispatch_group_t _done_group;
+}
+
+- (instancetype)initWithTask:(NSTask*)task
+                 targetQueue:(dispatch_queue_t)targetQueue {
+  if (self = [super init]) {
+    _task = task;
+    _parentQueue = targetQueue;
+    _privateQueue = dispatch_queue_create_with_target(
+        "CRUAsyncTaskRunner", DISPATCH_QUEUE_SERIAL, targetQueue);
+  }
+  return self;
+}
+
+- (void)launchWithReply:(CRUTaskResultCallback)reply {
+  dispatch_async(_privateQueue, ^{
+    [self syncLaunchWithReply:reply];
+  });
+}
+
+- (void)syncLaunchWithReply:(CRUTaskResultCallback)reply {
+  if (_launched) {
+    NSString* taskUrl = _task.executableURL.description;
+    NSString* argList = [_task.arguments componentsJoinedByString:@"\n"];
+    dispatch_async(_parentQueue, ^{
+      reply(nil, nil,
+            [NSError
+                errorWithDomain:CRURegistrationInternalErrorDomain
+                           code:CRURegistrationInternalErrorTaskAlreadyLaunched
+                       userInfo:@{
+                         NSFilePathErrorKey : taskUrl,
+                         NSDebugDescriptionErrorKey : argList,
+                       }]);
+    });
+    return;
+  }
+
+  _taskStdoutPipe = [NSPipe pipe];
+  _taskStderrPipe = [NSPipe pipe];
+  _task.standardOutput = _taskStdoutPipe;
+  _task.standardError = _taskStderrPipe;
+  _taskStdoutData = [NSMutableData data];
+  _taskStderrData = [NSMutableData data];
+  _taskManagementError = nil;
+
+  _done_group = dispatch_group_create();
+  // Enter for task configuration, to avoid invoking the handler block if the
+  // task exits before we've gotten a chance to start processing its output.
+  dispatch_group_enter(_done_group);
+
+  dispatch_group_notify(_done_group, _privateQueue, ^{
+    self->_task.terminationHandler = nil;
+    if (self->_taskManagementError) {
+      // The task never launched; touching task.terminationStatus would crash.
+      dispatch_async(self->_parentQueue, ^{
+        reply(nil, nil, self->_taskManagementError);
+      });
+      return;
+    }
+
+    NSError* returnCodeError = nil;
+    if (self->_task.terminationStatus) {
+      returnCodeError = [NSError errorWithDomain:CRUReturnCodeErrorDomain
+                                            code:self->_task.terminationStatus
+                                        userInfo:nil];
+    }
+    dispatch_async(self->_parentQueue, ^{
+      reply([self->_taskStdoutData copy], [self->_taskStderrData copy],
+            returnCodeError);
+    });
+  });
+
+  // All fields are prepared and the result callback is armed. Hand off to
+  // `syncFinishLaunching` so we can early-out on failure without specifically
+  // balancing _done_group on each exit path.
+  [self syncFinishLaunching];
+  dispatch_group_leave(_done_group);
+}
+
+- (void)syncFinishLaunching {
+  // Local reference to avoid referring to queue-protected fields of `_self`
+  // without necessarily being on `_private_queue` -- there are no guarantees
+  // about where an NSTask's termination handler is executed.
+  dispatch_group_t done_group = _done_group;
+  // Enter `_done_group` for task execution itself.
+  dispatch_group_enter(done_group);
+  _task.terminationHandler = ^(NSTask* unused) {
+    dispatch_group_leave(done_group);
+  };
+
+  NSError* launchError = nil;
+  if (![_task launchAndReturnError:&launchError]) {
+    _taskManagementError = launchError;
+    // Cancel the `enter`, since the termination handler will never run.
+    dispatch_group_leave(done_group);
+    return;
+  }
+
+  // Task is launched, kick off async I/O.
+
+  [self syncSubscribeAsyncOnHandle:_taskStdoutPipe.fileHandleForReading
+                              into:_taskStdoutData
+                             named:@"stdout"];
+  [self syncSubscribeAsyncOnHandle:_taskStderrPipe.fileHandleForReading
+                              into:_taskStderrData
+                             named:@"stderr"];
+}
+
+- (void)syncSubscribeAsyncOnHandle:(NSFileHandle*)readHandle
+                              into:(NSMutableData*)dataOut
+                             named:(NSString*)streamName {
+  dispatch_group_enter(_done_group);
+  dispatch_io_t stdoutIO = dispatch_io_create(
+      DISPATCH_IO_STREAM, readHandle.fileDescriptor, _privateQueue,
+      ^(int unused) {
+        NSError* cleanupError = nil;
+        NSAssert([readHandle closeAndReturnError:&cleanupError],
+                 @"couldn't close task %@: %@", streamName, cleanupError);
+      });
+  dispatch_io_read(
+      stdoutIO, 0, SIZE_MAX, _privateQueue,
+      ^(bool done, dispatch_data_t chunk, int error) {
+        if (chunk) {
+          // dispatch_data_t may be cast to NSData in 64-bit software:
+          // https://developer.apple.com/documentation/dispatch/dispatch_data_t?language=objc
+          [dataOut appendData:(NSData*)chunk];
+        }
+        if (done || error) {
+          dispatch_io_close(stdoutIO, 0);
+          if (error && !self->_taskManagementError) {
+            self->_taskManagementError = [NSError
+                errorWithDomain:CRURegistrationErrorDomain
+                           code:CRURegistrationErrorTaskStreamUnreadable
+                       userInfo:@{
+                         CRUErrnoKey : @(error),
+                         CRUStdStreamNameKey : streamName,
+                       }];
+          }
+          dispatch_group_leave(self->_done_group);
+        }
+      });
+}
+
+@end
 @implementation CRURegistration {
   // Immutable fields.
   NSString* _appId;
diff --git a/chrome/updater/mac/client_lib/CRURegistration_unittests.mm b/chrome/updater/mac/client_lib/CRURegistration_unittests.mm
index 9beec2ba..efa4c9c 100644
--- a/chrome/updater/mac/client_lib/CRURegistration_unittests.mm
+++ b/chrome/updater/mac/client_lib/CRURegistration_unittests.mm
@@ -5,11 +5,25 @@
 #import "chrome/updater/mac/client_lib/CRURegistration.h"
 
 #import <Foundation/Foundation.h>
+#import <dispatch/dispatch.h>
 
+#include "base/files/file_path.h"
+#include "base/files/file_util.h"
+#include "base/path_service.h"
+#include "base/scoped_generic.h"
+#include "build/build_config.h"
+#import "chrome/updater/mac/client_lib/CRURegistration-Private.h"
+#include "net/base/apple/url_conversions.h"
+#include "net/base/filename_util.h"
 #include "testing/gtest/include/gtest/gtest.h"
+#include "testing/gtest_mac.h"
+#include "third_party/abseil-cpp/absl/cleanup/cleanup.h"
+#include "url/gurl.h"
 
 namespace {
 
+constexpr char kEmitTextTestBinaryName[] = "emit_text";
+
 TEST(CRURegistrationTest, SmokeTest) {
   CRURegistration* registration = [[CRURegistration alloc]
       initWithAppId:
@@ -17,4 +31,180 @@
   ASSERT_TRUE(registration);
 }
 
+enum class EmitTextOutputTarget {
+  kOut,
+  kErr,
+  kBoth,
+};
+
+class CRUAsyncTaskRunnerTest : public ::testing::Test {
+ protected:
+  void SetUp() override;
+
+  bool RunEmitText(NSString* text, int repeats, EmitTextOutputTarget mode);
+
+  NSURL* emit_text_nsurl_ = nil;
+  dispatch_queue_t queue_ = nil;
+
+  NSString* got_stdout_ = nil;
+  NSString* got_stderr_ = nil;
+  NSError* got_error_ = nil;
+};
+
+void CRUAsyncTaskRunnerTest::SetUp() {
+  queue_ = dispatch_queue_create_with_target(
+      "CRUAsyncTaskRunnerTestBlankOutput", DISPATCH_QUEUE_SERIAL,
+      dispatch_get_global_queue(QOS_CLASS_USER_INITIATED, 0));
+  base::FilePath test_data_path;
+  ASSERT_TRUE(base::PathService::Get(base::DIR_EXE, &test_data_path));
+  base::FilePath emit_text_path =
+      test_data_path.AppendASCII(kEmitTextTestBinaryName);
+  ASSERT_TRUE(base::PathExists(emit_text_path))
+      << "cannot find: " << emit_text_path;
+  GURL emit_text_gurl = net::FilePathToFileURL(emit_text_path);
+  emit_text_nsurl_ = net::NSURLWithGURL(emit_text_gurl);
+  ASSERT_TRUE(emit_text_nsurl_);
+}
+
+bool CRUAsyncTaskRunnerTest::RunEmitText(NSString* text,
+                                         int repeats,
+                                         EmitTextOutputTarget mode) {
+  NSTask* task = [[NSTask alloc] init];
+  task.executableURL = emit_text_nsurl_;
+  NSMutableArray<NSString*>* args = [NSMutableArray arrayWithArray:@[
+    [NSString stringWithFormat:@"--text=%@", text],
+    [NSString stringWithFormat:@"--count=%d", repeats],
+  ]];
+  switch (mode) {
+    case EmitTextOutputTarget::kBoth:
+      [args addObject:@"--stdout"];
+      [[fallthrough]];
+    case EmitTextOutputTarget::kErr:
+      [args addObject:@"--stderr"];
+      break;
+    case EmitTextOutputTarget::kOut:
+      // Stdout-only output is the default.
+      break;
+  }
+
+  task.arguments = [args copy];
+
+  CRUAsyncTaskRunner* runner = [[CRUAsyncTaskRunner alloc] initWithTask:task
+                                                            targetQueue:queue_];
+
+  // Capture task results into ephemeral fields guarded by a lock, copying them
+  // into the corresponding fields of `self` if we can acquire the lock.
+  // Tests can subsequently use the instance fields without further locking.
+  NSConditionLock* results_lock = [[NSConditionLock alloc] initWithCondition:0];
+  __block NSData* got_stdout;
+  __block NSData* got_stderr;
+  __block NSError* got_error;
+
+  [runner
+      launchWithReply:^(NSData* task_out, NSData* task_err, NSError* error) {
+        [results_lock lock];
+        got_stdout = task_out;
+        got_stderr = task_err;
+        got_error = error;
+        [results_lock unlockWithCondition:1];
+      }];
+
+  if (![results_lock
+          lockWhenCondition:1
+                 beforeDate:[NSDate dateWithTimeIntervalSinceNow:15.0]]) {
+    // Timed out; can't read any of the fields, we have no sync relationship
+    // with them.
+    return false;
+  }
+  absl::Cleanup result_unlocker = ^{
+    [results_lock unlock];
+  };
+
+  got_stdout_ = got_stdout
+                    ? [[NSString alloc] initWithData:got_stdout
+                                            encoding:NSUTF8StringEncoding]
+                    : nil;
+  got_stderr_ = got_stderr
+                    ? [[NSString alloc] initWithData:got_stderr
+                                            encoding:NSUTF8StringEncoding]
+                    : nil;
+  got_error_ = got_error;
+  return true;
+}
+
+TEST_F(CRUAsyncTaskRunnerTest, BlankOutput) {
+  ASSERT_TRUE(RunEmitText(@"invisible", 0, EmitTextOutputTarget::kBoth));
+  EXPECT_FALSE(got_error_);
+  EXPECT_TRUE(got_stdout_);
+  EXPECT_TRUE(got_stderr_);
+  EXPECT_EQ(got_stdout_.length, 0U);
+  EXPECT_EQ(got_stderr_.length, 0U);
+}
+
+TEST_F(CRUAsyncTaskRunnerTest, ShortStdout) {
+  ASSERT_TRUE(RunEmitText(@"output", 2, EmitTextOutputTarget::kOut));
+  EXPECT_FALSE(got_error_);
+  EXPECT_TRUE(got_stdout_);
+  EXPECT_TRUE(got_stderr_);
+  EXPECT_EQ(got_stderr_.length, 0U);
+  EXPECT_NSEQ(@"outputoutput", got_stdout_);
+}
+
+TEST_F(CRUAsyncTaskRunnerTest, ShortStderr) {
+  ASSERT_TRUE(RunEmitText(@"output", 2, EmitTextOutputTarget::kErr));
+  EXPECT_FALSE(got_error_);
+  EXPECT_TRUE(got_stdout_);
+  EXPECT_TRUE(got_stderr_);
+  EXPECT_EQ(got_stdout_.length, 0U);
+  EXPECT_NSEQ(@"outputoutput", got_stderr_);
+}
+
+TEST_F(CRUAsyncTaskRunnerTest, ShortBoth) {
+  ASSERT_TRUE(RunEmitText(@"output", 2, EmitTextOutputTarget::kBoth));
+  EXPECT_FALSE(got_error_);
+  EXPECT_TRUE(got_stdout_);
+  EXPECT_TRUE(got_stderr_);
+  EXPECT_NSEQ(@"outputoutput", got_stdout_);
+  EXPECT_NSEQ(@"outputoutput", got_stderr_);
+}
+
+TEST_F(CRUAsyncTaskRunnerTest, LongBoth) {
+  // Construct output longer than any likely default buffer size, but small
+  // enough to be practical to use in this test. emit_text flushes its output
+  // streams every iteration specifically to make buffer size irrelevant, but
+  // using a large total is still useful in case unexpected helpful buffering on
+  // the intake side hides incorrect asynchronous stream consumption.
+  //
+  // Currently, this creates 16 MiB of output.
+  const NSUInteger reps = 1048576;
+  NSString* const text = @"0123456789ABCDEF";
+  ASSERT_TRUE(RunEmitText(text, (int)reps, EmitTextOutputTarget::kBoth));
+  EXPECT_FALSE(got_error_);
+  EXPECT_TRUE(got_stdout_);
+  EXPECT_TRUE(got_stderr_);
+
+  // Construct the expectation string.
+  NSMutableArray<NSString*>* chunks = [NSMutableArray arrayWithCapacity:reps];
+  for (NSUInteger k = 0; k < reps; k++) {
+    [chunks addObject:text];
+  }
+  NSString* want = [chunks componentsJoinedByString:@""];
+
+  EXPECT_NSEQ(want, got_stdout_);
+  EXPECT_NSEQ(want, got_stderr_);
+}
+
+TEST_F(CRUAsyncTaskRunnerTest, NonzeroReturn) {
+  // `emit_text` returns ERANGE, value 34, if given a negative number of
+  // repetitions. This allows testing nonzero return code handling.
+  ASSERT_TRUE(RunEmitText(@"error", -1, EmitTextOutputTarget::kBoth));
+  EXPECT_TRUE(got_error_);
+  EXPECT_TRUE(got_stdout_);
+  EXPECT_TRUE(got_stderr_);
+  EXPECT_EQ(got_stdout_.length, 0U);
+  EXPECT_EQ(got_stderr_.length, 0U);
+  EXPECT_NSEQ(CRUReturnCodeErrorDomain, got_error_.domain);
+  EXPECT_EQ((NSInteger)34, got_error_.code);
+}
+
 }  // namespace
diff --git a/chrome/updater/mac/client_lib/test_helpers/BUILD.gn b/chrome/updater/mac/client_lib/test_helpers/BUILD.gn
new file mode 100644
index 0000000..dd87c80
--- /dev/null
+++ b/chrome/updater/mac/client_lib/test_helpers/BUILD.gn
@@ -0,0 +1,11 @@
+executable("emit_text") {
+  testonly = true
+  output_name = "emit_text"
+  sources = [ "emit_text.cc" ]
+  deps = [ "//base" ]
+}
+
+group("test_helpers") {
+  testonly = true
+  data_deps = [ ":emit_text" ]
+}
diff --git a/chrome/updater/mac/client_lib/test_helpers/emit_text.cc b/chrome/updater/mac/client_lib/test_helpers/emit_text.cc
new file mode 100644
index 0000000..1f21d1a0
--- /dev/null
+++ b/chrome/updater/mac/client_lib/test_helpers/emit_text.cc
@@ -0,0 +1,67 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Simple test helper to repeatedly emit a string to stdout, stderr, or both.
+
+// Usage:
+// emit_text [--text=<string>] [--count=<loops>] [--stdout] [--stderr]
+// Prints `loops` copies of `string` to stdout and/or stderr.
+//
+// To emit no output efficiently, set count to 0. To emit no output
+// inefficiently, set text to the empty string. By default, this assumes a
+// count of 1, text of "text", and if neither --stdout nor --stderr is
+// specified, stdout. (If --stderr is specified, --stdout is not inferred.
+// These options do not conflict; explicitly specify both to duplicate output
+// to both streams, starting with stdout, flushing after each loop.)
+//
+// Return values:
+// 0 -- successful exit
+// ERANGE (34) -- <count> out of range for uint64 or not a parseable number
+// any other value -- there is a bug in emit_text
+//
+// The ERANGE error behavior can be relied on by tests that want to verify
+// behaviors when a launched process returns nonzero. (Other errors might
+// change if this helper needs more features for some reason.)
+
+#include <cerrno>
+#include <cstdint>
+#include <iostream>
+#include <string>
+
+#include "base/command_line.h"
+#include "base/strings/string_number_conversions.h"
+
+int main(int argc, char** argv) {
+  if (!base::CommandLine::Init(argc, argv)) {
+    return EALREADY;
+  }
+
+  base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
+
+  bool do_stderr = command_line->HasSwitch("stderr");
+  bool do_stdout = !do_stderr || command_line->HasSwitch("stdout");
+
+  uint64_t count = 1;
+  if (command_line->HasSwitch("count")) {
+    if (!base::StringToUint64(command_line->GetSwitchValueASCII("count"),
+                              &count)) {
+      return ERANGE;
+    }
+  }
+
+  std::string text = command_line->HasSwitch("text")
+                         ? command_line->GetSwitchValueASCII("text")
+                         : "text";
+
+  for (uint64_t i = 0; i < count; i++) {
+    if (do_stdout) {
+      std::cout << text << std::flush;
+    }
+    if (do_stderr) {
+      std::cerr << text << std::flush;
+    }
+  }
+
+  return 0;
+}
diff --git a/chromecast/starboard/OWNERS b/chromecast/starboard/OWNERS
new file mode 100644
index 0000000..405b2f5
--- /dev/null
+++ b/chromecast/starboard/OWNERS
@@ -0,0 +1,2 @@
+antoniori@google.com
+shawnq@google.com
diff --git a/chromeos/ash/components/audio/audio_selection_notification_handler.cc b/chromeos/ash/components/audio/audio_selection_notification_handler.cc
index 66c43bf..92f9291 100644
--- a/chromeos/ash/components/audio/audio_selection_notification_handler.cc
+++ b/chromeos/ash/components/audio/audio_selection_notification_handler.cc
@@ -8,6 +8,7 @@
 #include <optional>
 
 #include "ash/strings/grit/ash_strings.h"
+#include "base/functional/bind.h"
 #include "base/notreached.h"
 #include "base/strings/string_split.h"
 #include "base/strings/utf_string_conversions.h"
@@ -106,16 +107,43 @@
     const AudioDeviceList& hotplug_output_devices,
     const std::optional<std::string>& active_input_device_name,
     const std::optional<std::string>& active_output_device_name,
-    SwitchToDeviceCallback switch_to_device_callback) {
+    SwitchToDeviceCallback switch_to_device_callback,
+    OpenSettingsAudioPageCallback open_settings_audio_page_callback) {
   // At least input or output has hotplug device.
   CHECK(!hotplug_input_devices.empty() || !hotplug_output_devices.empty());
 
-  // Update hotplug_input_devices_ and hotplug_output_devices_.
-  hotplug_input_devices_.clear();
-  hotplug_input_devices_ = hotplug_input_devices;
-  hotplug_output_devices_.clear();
-  hotplug_output_devices_ = hotplug_output_devices;
+  // If show_notification callback is already in the queue, stop it and append
+  // new hot plugged devices to the existing list, so that the notification can
+  // handle them together. Otherwise, reset the existing hot plugged list.
+  if (show_notification_debounce_timer_.IsRunning()) {
+    show_notification_debounce_timer_.Stop();
+    for (const AudioDevice& device : hotplug_input_devices) {
+      hotplug_input_devices_.push_back(device);
+    }
+    for (const AudioDevice& device : hotplug_output_devices) {
+      hotplug_output_devices_.push_back(device);
+    }
+  } else {
+    hotplug_input_devices_.clear();
+    hotplug_input_devices_ = hotplug_input_devices;
+    hotplug_output_devices_.clear();
+    hotplug_output_devices_ = hotplug_output_devices;
+  }
 
+  show_notification_debounce_timer_.Start(
+      FROM_HERE, kDebounceTime,
+      base::BindRepeating(&AudioSelectionNotificationHandler::ShowNotification,
+                          weak_ptr_factory_.GetWeakPtr(),
+                          active_input_device_name, active_output_device_name,
+                          switch_to_device_callback,
+                          open_settings_audio_page_callback));
+}
+
+void AudioSelectionNotificationHandler::ShowNotification(
+    const std::optional<std::string>& active_input_device_name,
+    const std::optional<std::string>& active_output_device_name,
+    SwitchToDeviceCallback switch_to_device_callback,
+    OpenSettingsAudioPageCallback open_settings_audio_page_callback) {
   AudioDeviceList devices_to_activate;
   std::u16string title_message_id;
   std::u16string body_message_id;
@@ -124,7 +152,7 @@
       notification_event;
 
   NotificationTemplate notification_template = GetNotificationTemplate(
-      hotplug_input_devices, hotplug_output_devices, active_input_device_name,
+      hotplug_input_devices_, hotplug_output_devices_, active_input_device_name,
       active_output_device_name);
 
   // Use different notification titles and messages based on notification types.
@@ -134,8 +162,8 @@
           l10n_util::GetStringUTF16(IDS_ASH_AUDIO_SELECTION_SWITCH_INPUT_TITLE);
       body_message_id = l10n_util::GetStringFUTF16(
           IDS_ASH_AUDIO_SELECTION_SWITCH_INPUT_OR_OUTPUT_BODY,
-          base::UTF8ToUTF16(hotplug_input_devices.front().display_name));
-      devices_to_activate.push_back(hotplug_input_devices.front());
+          base::UTF8ToUTF16(hotplug_input_devices_.front().display_name));
+      devices_to_activate.push_back(hotplug_input_devices_.front());
       buttons_info.emplace_back(
           l10n_util::GetStringUTF16(IDS_ASH_AUDIO_SELECTION_BUTTON_SWITCH));
       notification_event =
@@ -147,8 +175,8 @@
           IDS_ASH_AUDIO_SELECTION_SWITCH_OUTPUT_TITLE);
       body_message_id = l10n_util::GetStringFUTF16(
           IDS_ASH_AUDIO_SELECTION_SWITCH_INPUT_OR_OUTPUT_BODY,
-          base::UTF8ToUTF16(hotplug_output_devices.front().display_name));
-      devices_to_activate.push_back(hotplug_output_devices.front());
+          base::UTF8ToUTF16(hotplug_output_devices_.front().display_name));
+      devices_to_activate.push_back(hotplug_output_devices_.front());
       buttons_info.emplace_back(
           l10n_util::GetStringUTF16(IDS_ASH_AUDIO_SELECTION_BUTTON_SWITCH));
       notification_event =
@@ -161,9 +189,9 @@
       body_message_id = l10n_util::GetStringFUTF16(
           IDS_ASH_AUDIO_SELECTION_SWITCH_INPUT_AND_OUTPUT_BODY,
           base::UTF8ToUTF16(
-              ExtractDeviceSourceName(hotplug_output_devices.front())));
-      devices_to_activate.push_back(hotplug_input_devices.front());
-      devices_to_activate.push_back(hotplug_output_devices.front());
+              ExtractDeviceSourceName(hotplug_output_devices_.front())));
+      devices_to_activate.push_back(hotplug_input_devices_.front());
+      devices_to_activate.push_back(hotplug_output_devices_.front());
       buttons_info.emplace_back(
           l10n_util::GetStringUTF16(IDS_ASH_AUDIO_SELECTION_BUTTON_SWITCH));
       notification_event =
@@ -196,6 +224,19 @@
   message_center::RichNotificationData optional_fields;
   optional_fields.buttons = buttons_info;
 
+  // If notification type is kMultipleSources, show Settings button and pass
+  // HandleSettingsButtonClicked function.
+  auto notification_delegate =
+      notification_template.type == NotificationType::kMultipleSources
+          ? base::BindRepeating(
+                &AudioSelectionNotificationHandler::HandleSettingsButtonClicked,
+                weak_ptr_factory_.GetWeakPtr(),
+                open_settings_audio_page_callback)
+          : base::BindRepeating(
+                &AudioSelectionNotificationHandler::HandleSwitchButtonClicked,
+                weak_ptr_factory_.GetWeakPtr(), devices_to_activate,
+                switch_to_device_callback, notification_template.type);
+
   message_center::Notification notification{
       /*type=*/message_center::NOTIFICATION_TYPE_SIMPLE,
       /*id=*/kAudioSelectionNotificationId,
@@ -211,10 +252,7 @@
       optional_fields,
       /*delegate=*/
       base::MakeRefCounted<message_center::HandleNotificationClickDelegate>(
-          base::BindRepeating(
-              &AudioSelectionNotificationHandler::HandleSwitchButtonClicked,
-              weak_ptr_factory_.GetWeakPtr(), devices_to_activate,
-              switch_to_device_callback, notification_template.type))};
+          notification_delegate)};
   auto* message_center = message_center::MessageCenter::Get();
   message_center->RemoveNotification(notification.id(),
                                      /*by_user=*/false);
@@ -271,6 +309,26 @@
   hotplug_output_devices_.clear();
 }
 
+void AudioSelectionNotificationHandler::HandleSettingsButtonClicked(
+    base::RepeatingCallback<void()> open_settigns_callback,
+    std::optional<int> button_index) {
+  if (!button_index.has_value()) {
+    // Do not do anything when notification body is clicked. If the button is
+    // clicked, the button_index will have a value.
+    return;
+  }
+
+  // TODO(zhangwenyu): Add metrics to record notification button clicked.
+
+  // Open OS Settings audio page.
+  open_settigns_callback.Run();
+
+  // Remove notification.
+  auto* message_center = message_center::MessageCenter::Get();
+  message_center->RemoveNotification(kAudioSelectionNotificationId,
+                                     /*by_user=*/true);
+}
+
 AudioSelectionNotificationHandler::NotificationTemplate
 AudioSelectionNotificationHandler::GetNotificationTemplate(
     const AudioDeviceList& hotplug_input_devices,
diff --git a/chromeos/ash/components/audio/audio_selection_notification_handler.h b/chromeos/ash/components/audio/audio_selection_notification_handler.h
index 0b530f4..1bd5dff 100644
--- a/chromeos/ash/components/audio/audio_selection_notification_handler.h
+++ b/chromeos/ash/components/audio/audio_selection_notification_handler.h
@@ -10,6 +10,8 @@
 #include "base/component_export.h"
 #include "base/functional/callback_forward.h"
 #include "base/memory/weak_ptr.h"
+#include "base/time/time.h"
+#include "base/timer/timer.h"
 #include "chromeos/ash/components/audio/audio_device.h"
 #include "chromeos/ash/components/audio/audio_device_id.h"
 #include "chromeos/ash/components/audio/audio_device_metrics_handler.h"
@@ -25,6 +27,9 @@
                                  bool notify,
                                  DeviceActivateType activate_by)>;
 
+// A callback function to open OS Settings audio page.
+using OpenSettingsAudioPageCallback = base::RepeatingCallback<void()>;
+
 // AudioSelectionNotificationHandler handles the creation and display of the
 // audio selection notification.
 class COMPONENT_EXPORT(CHROMEOS_ASH_COMPONENTS_AUDIO)
@@ -37,6 +42,9 @@
       const AudioSelectionNotificationHandler&) = delete;
   ~AudioSelectionNotificationHandler();
 
+  // Time delta to debounce the audio selection notification.
+  static constexpr base::TimeDelta kDebounceTime = base::Milliseconds(1500);
+
   // The audio selection notification id, used to identify the notification
   // itself.
   static constexpr char kAudioSelectionNotificationId[] =
@@ -87,7 +95,8 @@
       const AudioDeviceList& hotplug_output_devices,
       const std::optional<std::string>& active_input_device_name,
       const std::optional<std::string>& active_output_device_name,
-      SwitchToDeviceCallback switch_to_device_callback);
+      SwitchToDeviceCallback switch_to_device_callback,
+      OpenSettingsAudioPageCallback open_settings_audio_page_callback);
 
   // Handles the situation when a hotplugged device which triggers the
   // notification has been removed. Remove the notification in this case.
@@ -104,6 +113,13 @@
       NotificationType notification_type,
       std::optional<int> button_index);
 
+  // Handles when the settings button is clicked. |open_settigns_callback| is
+  // the callback to open the system settings audio page. |button_index|
+  // indicates the index of the button on notification body that is clicked.
+  void HandleSettingsButtonClicked(
+      OpenSettingsAudioPageCallback open_settigns_callback,
+      std::optional<int> button_index);
+
   // Checks if one audio input device and one audio output device belong to the
   // same physical audio device.
   bool AudioNodesBelongToSameSource(const AudioDevice& input_device,
@@ -117,6 +133,13 @@
       const std::optional<std::string>& active_input_device_name,
       const std::optional<std::string>& active_output_device_name);
 
+  // A helper function to determine notification type and show notification.
+  void ShowNotification(
+      const std::optional<std::string>& active_input_device_name,
+      const std::optional<std::string>& active_output_device_name,
+      SwitchToDeviceCallback switch_to_device_callback,
+      OpenSettingsAudioPageCallback open_settings_audio_page_callback);
+
   // Handles firing of audio selection related metrics.
   AudioDeviceMetricsHandler audio_device_metrics_handler_;
 
@@ -125,6 +148,9 @@
   AudioDeviceList hotplug_input_devices_;
   AudioDeviceList hotplug_output_devices_;
 
+  // Used to debounce the notification.
+  base::RetainingOneShotTimer show_notification_debounce_timer_;
+
   base::WeakPtrFactory<AudioSelectionNotificationHandler> weak_ptr_factory_{
       this};
 };
diff --git a/chromeos/ash/components/audio/audio_selection_notification_handler_unittest.cc b/chromeos/ash/components/audio/audio_selection_notification_handler_unittest.cc
index a089ff6a..b90e032 100644
--- a/chromeos/ash/components/audio/audio_selection_notification_handler_unittest.cc
+++ b/chromeos/ash/components/audio/audio_selection_notification_handler_unittest.cc
@@ -29,6 +29,10 @@
     CrasAudioHandler::Get()->SwitchToDevice(device, notify, activate_by);
   }
 
+  static void OpenSettingsAudioPage() {
+    CrasAudioHandler::Get()->OpenSettingsAudioPage();
+  }
+
   AudioSelectionNotificationHandler& audio_selection_notification_handler() {
     return audio_selection_notification_handler_;
   }
@@ -61,6 +65,16 @@
         notification_type, button_index);
   }
 
+  void FakeOpenSettingsPage() { settings_audio_page_opened_ = true; }
+
+  void HandleSettingsButtonClicked(std::optional<int> button_index) {
+    audio_selection_notification_handler_.HandleSettingsButtonClicked(
+        base::BindRepeating(
+            &AudioSelectionNotificationHandlerTest::FakeOpenSettingsPage,
+            weak_ptr_factory_.GetWeakPtr()),
+        button_index);
+  }
+
   // Gets the count of audio selection notification.
   size_t GetNotificationCount() {
     auto* message_center = message_center::MessageCenter::Get();
@@ -93,6 +107,8 @@
 
   uint64_t active_output_id() { return active_output_id_; }
 
+  bool settings_audio_page_opened() { return settings_audio_page_opened_; }
+
  private:
   AudioSelectionNotificationHandler audio_selection_notification_handler_;
 
@@ -103,6 +119,8 @@
 
   base::HistogramTester histogram_tester_;
 
+  bool settings_audio_page_opened_ = false;
+
   base::WeakPtrFactory<AudioSelectionNotificationHandlerTest> weak_ptr_factory_{
       this};
 };
@@ -118,9 +136,12 @@
   audio_selection_notification_handler().ShowAudioSelectionNotification(
       hotplug_input_devices, hotplug_output_devices, std::nullopt, std::nullopt,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
 
   // Expect notification is shown.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 
   // Expect new notification to replace the old one and the current notification
@@ -130,7 +151,9 @@
   audio_selection_notification_handler().ShowAudioSelectionNotification(
       hotplug_input_devices, hotplug_output_devices, std::nullopt, std::nullopt,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
   EXPECT_EQ(1u, GetNotificationCount());
 }
 
@@ -217,7 +240,10 @@
   audio_selection_notification_handler().ShowAudioSelectionNotification(
       hotplug_input_devices, hotplug_output_devices, std::nullopt, std::nullopt,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
   std::optional<std::u16string> title = GetNotificationTitle();
   EXPECT_TRUE(title.has_value());
@@ -274,7 +300,10 @@
   audio_selection_notification_handler().ShowAudioSelectionNotification(
       hotplug_input_devices, hotplug_output_devices, std::nullopt, std::nullopt,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
   std::optional<std::u16string> title = GetNotificationTitle();
   EXPECT_TRUE(title.has_value());
@@ -339,7 +368,10 @@
   audio_selection_notification_handler().ShowAudioSelectionNotification(
       hotplug_input_devices, hotplug_output_devices, std::nullopt, std::nullopt,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
   std::optional<std::u16string> title = GetNotificationTitle();
   EXPECT_TRUE(title.has_value());
@@ -404,7 +436,10 @@
       hotplug_input_devices, hotplug_output_devices, current_active_input,
       current_active_output,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
   std::optional<std::u16string> title = GetNotificationTitle();
   EXPECT_TRUE(title.has_value());
@@ -454,7 +489,10 @@
       hotplug_input_devices, hotplug_output_devices, current_active_input,
       current_active_output,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
   std::optional<std::u16string> title = GetNotificationTitle();
   EXPECT_TRUE(title.has_value());
@@ -492,9 +530,12 @@
   audio_selection_notification_handler().ShowAudioSelectionNotification(
       hotplug_input_devices, hotplug_output_devices, std::nullopt, std::nullopt,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
 
   // Expect notification displays.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 
   // Clicking notification body does not have any effects.
@@ -627,7 +668,10 @@
   audio_selection_notification_handler().ShowAudioSelectionNotification(
       hotplug_input_devices, hotplug_output_devices, std::nullopt, std::nullopt,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 
   // If a non related device is removed, notification should stay.
@@ -660,7 +704,10 @@
   audio_selection_notification_handler().ShowAudioSelectionNotification(
       hotplug_input_devices, hotplug_output_devices, std::nullopt, std::nullopt,
       base::BindRepeating(
-          &AudioSelectionNotificationHandlerTest::SwitchToDevice));
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 
   // If a non related device is removed, notification should stay.
@@ -676,4 +723,39 @@
   EXPECT_EQ(0u, GetNotificationCount());
 }
 
+// Tests clicking Settings button on notification should open OS Settings audio
+// page.
+TEST_F(AudioSelectionNotificationHandlerTest, HandleSettingsButtonClicked) {
+  EXPECT_EQ(0u, GetNotificationCount());
+
+  // Plug HTMI display and a USB output device.
+  AudioDeviceList hotplug_input_devices = {};
+  const AudioDevice output_hdmi = AudioDevice(NewNodeWithName(
+      /*is_input=*/false, "HDMI", "Sceptre Z27"));
+  const AudioDevice output_USB = AudioDevice(NewNodeWithName(
+      /*is_input=*/false, "USB", "USB output device"));
+  AudioDeviceList hotplug_output_devices = {output_hdmi, output_USB};
+  audio_selection_notification_handler().ShowAudioSelectionNotification(
+      hotplug_input_devices, hotplug_output_devices, std::nullopt, std::nullopt,
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::SwitchToDevice),
+      base::BindRepeating(
+          &AudioSelectionNotificationHandlerTest::OpenSettingsAudioPage));
+
+  // Expect notification displays.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
+  EXPECT_EQ(1u, GetNotificationCount());
+
+  // Clicking notification body does not have any effects.
+  HandleSettingsButtonClicked(std::nullopt);
+  EXPECT_EQ(1u, GetNotificationCount());
+
+  // Clicking Settings button, expect OS Settings audio page is opened and
+  // notification is removed.
+  HandleSettingsButtonClicked(/*button_index=*/1);
+
+  EXPECT_TRUE(settings_audio_page_opened());
+  EXPECT_EQ(0u, GetNotificationCount());
+}
+
 }  // namespace ash
diff --git a/chromeos/ash/components/audio/cras_audio_handler.cc b/chromeos/ash/components/audio/cras_audio_handler.cc
index 632282e..a0b5c07 100644
--- a/chromeos/ash/components/audio/cras_audio_handler.cc
+++ b/chromeos/ash/components/audio/cras_audio_handler.cc
@@ -172,6 +172,17 @@
 }
 
 // static
+void CrasAudioHandler::InitializeDelegate(
+    mojo::PendingRemote<media_session::mojom::MediaControllerManager>
+        media_controller_manager,
+    scoped_refptr<AudioDevicesPrefHandler> audio_pref_handler,
+    std::unique_ptr<Delegate> delegate) {
+  g_cras_audio_handler =
+      new CrasAudioHandler(std::move(media_controller_manager),
+                           audio_pref_handler, std::move(delegate));
+}
+
+// static
 void CrasAudioHandler::InitializeForTesting() {
   CHECK(CrasAudioClient::Get()) << "CrasAudioClient must be initialized.";
 
@@ -1326,9 +1337,25 @@
 CrasAudioHandler::CrasAudioHandler(
     mojo::PendingRemote<media_session::mojom::MediaControllerManager>
         media_controller_manager,
+    scoped_refptr<AudioDevicesPrefHandler> audio_pref_handler,
+    std::unique_ptr<Delegate> delegate)
+    : media_controller_manager_(std::move(media_controller_manager)),
+      audio_pref_handler_(audio_pref_handler),
+      delegate_(std::move(delegate)) {
+  SetupCrasAudioHandler(audio_pref_handler);
+}
+
+CrasAudioHandler::CrasAudioHandler(
+    mojo::PendingRemote<media_session::mojom::MediaControllerManager>
+        media_controller_manager,
     scoped_refptr<AudioDevicesPrefHandler> audio_pref_handler)
     : media_controller_manager_(std::move(media_controller_manager)),
       audio_pref_handler_(audio_pref_handler) {
+  SetupCrasAudioHandler(audio_pref_handler);
+}
+
+void CrasAudioHandler::SetupCrasAudioHandler(
+    scoped_refptr<AudioDevicesPrefHandler> audio_pref_handler) {
   DCHECK(audio_pref_handler);
   DCHECK(CrasAudioClient::Get());
   CrasAudioClient::Get()->AddObserver(this);
@@ -2565,6 +2592,8 @@
             ? std::make_optional(active_output_device->display_name)
             : std::nullopt,
         base::BindRepeating(&CrasAudioHandler::SwitchToDevice,
+                            weak_ptr_factory_.GetWeakPtr()),
+        base::BindRepeating(&CrasAudioHandler::OpenSettingsAudioPage,
                             weak_ptr_factory_.GetWeakPtr()));
 
     // Reset show notification flag.
@@ -3214,6 +3243,12 @@
   }
 }
 
+void CrasAudioHandler::OpenSettingsAudioPage() {
+  if (delegate_) {
+    delegate_->OpenSettingsAudioPage();
+  }
+}
+
 ScopedCrasAudioHandlerForTesting::ScopedCrasAudioHandlerForTesting() {
   CHECK(!CrasAudioClient::Get())
       << "ScopedCrasAudioHandlerForTesting expects that there is no "
diff --git a/chromeos/ash/components/audio/cras_audio_handler.h b/chromeos/ash/components/audio/cras_audio_handler.h
index 9f10228..e9f2a06 100644
--- a/chromeos/ash/components/audio/cras_audio_handler.h
+++ b/chromeos/ash/components/audio/cras_audio_handler.h
@@ -114,6 +114,20 @@
     AudioSurveyData data_;
   };
 
+  // A Delegate class to expose chrome browser functionality to ash.
+  class Delegate {
+   public:
+    Delegate() = default;
+
+    Delegate(const Delegate&) = delete;
+    Delegate& operator=(const Delegate&) = delete;
+
+    virtual ~Delegate() = default;
+
+    // Opens the OS Settings audio page.
+    virtual void OpenSettingsAudioPage() const = 0;
+  };
+
   static constexpr int32_t kSystemAecGroupIdNotAvailable = -1;
 
   enum class InputMuteChangeMethod {
@@ -264,6 +278,13 @@
           media_controller_manager,
       scoped_refptr<AudioDevicesPrefHandler> audio_pref_handler);
 
+  // Same as Initialize function but also initializing a delegate class.
+  static void InitializeDelegate(
+      mojo::PendingRemote<media_session::mojom::MediaControllerManager>
+          media_controller_manager,
+      scoped_refptr<AudioDevicesPrefHandler> audio_pref_handler,
+      std::unique_ptr<Delegate> delegate);
+
   // Sets the global instance for testing.
   // Consider using |ScopedCrasAudioHandlerForTesting| instead, as that
   // guarantees things get properly cleaned up.
@@ -525,6 +546,9 @@
                       bool notify,
                       DeviceActivateType activate_by);
 
+  // Opens the OS Settings audio page.
+  void OpenSettingsAudioPage();
+
   // Sets volume/gain level for a device.
   void SetVolumeGainPercentForDevice(uint64_t device_id, int value);
 
@@ -664,11 +688,20 @@
       mojo::PendingRemote<media_session::mojom::MediaControllerManager>
           media_controller_manager,
       scoped_refptr<AudioDevicesPrefHandler> audio_pref_handler);
+  CrasAudioHandler(
+      mojo::PendingRemote<media_session::mojom::MediaControllerManager>
+          media_controller_manager,
+      scoped_refptr<AudioDevicesPrefHandler> audio_pref_handler,
+      std::unique_ptr<Delegate> delegate);
   ~CrasAudioHandler() override;
 
  private:
   friend class CrasAudioHandlerTest;
 
+  // A helper function to set up CrasAudioHandler.
+  void SetupCrasAudioHandler(
+      scoped_refptr<AudioDevicesPrefHandler> audio_pref_handler);
+
   // CrasAudioClient::Observer overrides.
   void AudioClientRestarted() override;
   void NodesChanged() override;
@@ -1111,6 +1144,8 @@
 
   int32_t num_arc_streams_ = 0;
 
+  std::unique_ptr<Delegate> delegate_;
+
   base::WeakPtrFactory<CrasAudioHandler> weak_ptr_factory_{this};
 };
 
diff --git a/chromeos/ash/components/audio/cras_audio_handler_unittest.cc b/chromeos/ash/components/audio/cras_audio_handler_unittest.cc
index e4b5a83..e60d33c 100644
--- a/chromeos/ash/components/audio/cras_audio_handler_unittest.cc
+++ b/chromeos/ash/components/audio/cras_audio_handler_unittest.cc
@@ -12,6 +12,7 @@
 #include <vector>
 
 #include "ash/constants/ash_features.h"
+#include "ash/strings/grit/ash_strings.h"
 #include "base/functional/bind.h"
 #include "base/memory/raw_ptr.h"
 #include "base/memory/ref_counted.h"
@@ -33,6 +34,7 @@
 #include "services/media_session/public/mojom/media_controller.mojom-test-utils.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
+#include "ui/base/l10n/l10n_util.h"
 #include "ui/message_center/message_center.h"
 
 namespace ash {
@@ -423,7 +425,7 @@
  public:
   CrasAudioHandlerTest()
       : task_environment_(
-            base::test::SingleThreadTaskEnvironment::MainThreadType::UI) {}
+            base::test::SingleThreadTaskEnvironment::TimeSource::MOCK_TIME) {}
 
   CrasAudioHandlerTest(const CrasAudioHandlerTest&) = delete;
   CrasAudioHandlerTest& operator=(const CrasAudioHandlerTest&) = delete;
@@ -751,6 +753,17 @@
     return message_center->NotificationCount();
   }
 
+  // Gets the title of audio selection notification. If not found, return
+  // std::nullopt.
+  const std::optional<std::u16string> GetNotificationTitle() {
+    auto* message_center = message_center::MessageCenter::Get();
+    message_center::Notification* notification =
+        message_center->FindNotificationById(
+            AudioSelectionNotificationHandler::kAudioSelectionNotificationId);
+    return notification ? std::make_optional(notification->title())
+                        : std::nullopt;
+  }
+
   // Helper function to call SyncDevicePrefSetMap.
   void SyncDevicePrefSetMap(bool is_input) {
     cras_audio_handler_->SyncDevicePrefSetMap(is_input);
@@ -762,6 +775,11 @@
                     : cras_audio_handler_->output_device_pref_set_map_;
   }
 
+  // Mock time fast forward.
+  void FastForwardBy(base::TimeDelta delta) {
+    task_environment_.FastForwardBy(delta);
+  }
+
  protected:
   FakeCrasAudioClient* fake_cras_audio_client() {
     return FakeCrasAudioClient::Get();
@@ -1239,6 +1257,7 @@
   system_monitor_observer_.reset_count();
 
   // Verify notification shows up for unseen new connected HDMI device.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 
   // Disconnect hdmi headset.
@@ -1401,6 +1420,7 @@
   system_monitor_observer_.reset_count();
 
   // Verify notification shows up for unseen new connected USB headphone device.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 
   // Unplug usb headphone.
@@ -1496,6 +1516,7 @@
 
   // Expect that notification is displayed since the device set was unseen
   // before.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 
   // Plug in another usb headphone.
@@ -1525,6 +1546,7 @@
                      /*has_alternative_device=*/true);
 
   // Verify notification shows up for unseen new connected USB headphone device.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 
   // Unplug the 2nd usb headphone.
@@ -1955,6 +1977,7 @@
   EXPECT_TRUE(cras_audio_handler_->has_alternative_input());
 
   // Verify notification shows up for unseen new connected USB mic device.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 }
 
@@ -2096,6 +2119,7 @@
   EXPECT_TRUE(cras_audio_handler_->has_alternative_input());
 
   // Verify notification shows up for unseen new connected USB mic device.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 
   // Verify the active output device is not changed.
@@ -7264,6 +7288,7 @@
       /*expected_has_alternative_input=*/std::nullopt,
       /*expected_has_alternative_output=*/true);
 
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 }
 
@@ -7281,6 +7306,7 @@
       /*expected_has_alternative_input=*/std::nullopt,
       /*expected_has_alternative_output=*/true);
 
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
   EXPECT_EQ(1u, GetNotificationCount());
 }
 
@@ -7363,4 +7389,124 @@
   EXPECT_TRUE(output_device_pref_set_map.empty());
 }
 
+// Tests that showing notification is debounced for audio output device.
+TEST_P(CrasAudioHandlerTest,
+       DebounceNotificationForOutput_AudioSelectionImprovementFlagOn) {
+  scoped_feature_list_.InitAndEnableFeature(
+      ash::features::kAudioSelectionImprovement);
+
+  // Initialize with internal speaker.
+  SetupAudioNodesAndExpectActiveNodes(
+      /*initial_nodes=*/{kInternalSpeaker},
+      /*expected_active_input_node=*/nullptr,
+      /*expected_active_output_node=*/kInternalSpeaker,
+      /*expected_has_alternative_input=*/std::nullopt,
+      /*expected_has_alternative_output=*/false);
+
+  // Expect that notification is not displayed since there is only one output
+  // device connected.
+  EXPECT_EQ(0u, GetNotificationCount());
+
+  // Plug in a usb headphone without fast forward time.
+  AudioNodeList audio_nodes;
+  AudioNode inernal_speaker = GenerateAudioNode(kInternalSpeaker);
+  inernal_speaker.active = true;
+  audio_nodes.push_back(inernal_speaker);
+  AudioNode usb_headphone_1 = GenerateAudioNode(kUSBHeadphone1);
+  audio_nodes.push_back(usb_headphone_1);
+  ChangeAudioNodes(audio_nodes);
+
+  // Although notification is supposed to show up for unseen new connected USB
+  // headphone device, the debounce function will delay the display of
+  // notification.
+  EXPECT_EQ(0u, GetNotificationCount());
+
+  // Plug in another usb headphone with fast forward time.
+  AudioNode usb_headphone_2 = GenerateAudioNode(kUSBHeadphone2);
+  audio_nodes.push_back(usb_headphone_2);
+  ChangeAudioNodes(audio_nodes);
+
+  // Verify the active output device is not switched because the new connected
+  // device is not seen before.
+  EXPECT_EQ(0, test_observer_->active_output_node_changed_count());
+  ExpectActiveDevice(/*is_input=*/false,
+                     /*expected_active_device=*/kInternalSpeaker,
+                     /*has_alternative_device=*/true);
+
+  // Verify notification is displayed at this moment.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
+  EXPECT_EQ(1u, GetNotificationCount());
+
+  // Verify that the notification is for multiple audio sources detected.
+  // when two new devices are hot plugged quickly, due to the debounce
+  // mechanism, rather than showing different notifications for each of them
+  // (with the first one being overridden quickly), we show notification to
+  // handle both of them together.
+  std::optional<std::u16string> title = GetNotificationTitle();
+  EXPECT_TRUE(title.has_value());
+  EXPECT_EQ(
+      l10n_util::GetStringUTF16(IDS_ASH_AUDIO_SELECTION_MULTIPLE_DEVICES_TITLE),
+      title.value());
+}
+
+// Tests that showing notification is debounced for audio input device.
+TEST_P(CrasAudioHandlerTest,
+       DebounceNotificationForInput_AudioSelectionImprovementFlagOn) {
+  scoped_feature_list_.InitAndEnableFeature(
+      ash::features::kAudioSelectionImprovement);
+
+  // Initialize with internal mic.
+  SetupAudioNodesAndExpectActiveNodes(
+      /*initial_nodes=*/{kInternalMic},
+      /*expected_active_input_node=*/kInternalMic,
+      /*expected_active_output_node=*/nullptr,
+      /*expected_has_alternative_input=*/false,
+      /*expected_has_alternative_output=*/std::nullopt);
+
+  // Expect that notification is not displayed since there is only one input
+  // device connected.
+  EXPECT_EQ(0u, GetNotificationCount());
+
+  // Plug in a usb mic without fast forward time.
+  AudioNodeList audio_nodes;
+  AudioNode inernal_mic = GenerateAudioNode(kInternalMic);
+  inernal_mic.active = true;
+  audio_nodes.push_back(inernal_mic);
+  AudioNode usb_mic_1 = GenerateAudioNode(kUSBMic1);
+  audio_nodes.push_back(usb_mic_1);
+  ChangeAudioNodes(audio_nodes);
+
+  // Although notification is supposed to show up for unseen new connected USB
+  // mic device, the debounce function will delay the display of
+  // notification.
+  EXPECT_EQ(0u, GetNotificationCount());
+
+  // Plug in another usb mic with fast forward time.
+  AudioNode usb_mic_2 = GenerateAudioNode(kUSBMic2);
+  audio_nodes.push_back(usb_mic_2);
+  ChangeAudioNodes(audio_nodes);
+
+  // Verify the active output device is not switched because the new connected
+  // device is not seen before.
+  EXPECT_EQ(0, test_observer_->active_input_node_changed_count());
+  ExpectActiveDevice(/*is_input=*/true,
+                     /*expected_active_device=*/kInternalMic,
+                     /*has_alternative_device=*/true);
+
+  // Verify notification is displayed at this moment.
+  FastForwardBy(AudioSelectionNotificationHandler::kDebounceTime);
+  EXPECT_EQ(1u, GetNotificationCount());
+
+  // Verify that the notification is for multiple audio sources detected.
+  // when two new devices are hot plugged quickly, due to the debounce
+  // mechanism, rather than showing different notifications for each of them
+  // (with the first one being overridden quickly), we show notification to
+  // handle both of them together.
+  std::optional<std::u16string> title = GetNotificationTitle();
+  EXPECT_TRUE(title.has_value());
+  EXPECT_EQ(
+      l10n_util::GetStringUTF16(IDS_ASH_AUDIO_SELECTION_MULTIPLE_DEVICES_TITLE),
+      title.value());
+}
+
 }  // namespace ash
diff --git a/chromeos/strings/chromeos_strings_ky.xtb b/chromeos/strings/chromeos_strings_ky.xtb
index 71a9ee6c3..867aed9 100644
--- a/chromeos/strings/chromeos_strings_ky.xtb
+++ b/chromeos/strings/chromeos_strings_ky.xtb
@@ -127,7 +127,7 @@
 <translation id="1643449475550628585">Тушкагаздын сүрөтүн күн сайын өзгөртүү</translation>
 <translation id="1644574205037202324">Таржымал</translation>
 <translation id="1651925268237749928">Жалпы альбомду тандадыңыз. Башка адамдар сүрөттөрдү кошуп же өзгөртө алышат. Учурда бул альбомдо жок сүрөттөр тушкагаз катары көрсөтүлүшү мүмкүн.</translation>
-<translation id="1661865805917886535">Аккаунт жана тутум жөнүндө айрым маалымат Google'га жөнөтүлүшү мүмкүн. Бул маалыматты Купуялык саясаты (<ph name="PRIVACYPOLICYURL" />) жана Тейлөө шарттарына (<ph name="TERMSOFSERVICEURL" />) ылайык техникалык маселелерди чечүү жана кызматтарыбызды жакшыртуу үчүн колдонобуз. Контентке өзгөртүүлөрдү киргизүүнү сурануу үчүн Юридикалык жардам (<ph name="LEGALHELPPAGEURL" />) барагына өтүңүз.</translation>
+<translation id="1661865805917886535">Аккаунт жана система жөнүндө айрым маалымат Google'га жөнөтүлүшү мүмкүн. Бул маалыматты Купуялык саясаты (<ph name="PRIVACYPOLICYURL" />) жана Тейлөө шарттарына (<ph name="TERMSOFSERVICEURL" />) ылайык техникалык маселелерди чечүү жана кызматтарыбызды жакшыртуу үчүн колдонобуз. Контентке өзгөртүүлөрдү киргизүүнү сурануу үчүн Юридикалык жардам (<ph name="LEGALHELPPAGEURL" />) барагына өтүңүз.</translation>
 <translation id="1662989795263954667">Токтоду – Сыя түгөнүп калды</translation>
 <translation id="1664796644829245314"><ph name="PREVIEW_OBJECT" /> алдын ала көрүү</translation>
 <translation id="1668469839109562275">Камтылган VPN</translation>
@@ -1200,7 +1200,7 @@
 <translation id="7705524343798198388">VPN</translation>
 <translation id="7716280709122323042">WPA3</translation>
 <translation id="7718231387947923843">баскычтоптун жарыгы</translation>
-<translation id="7730077286107534951">Аккаунт жана тутум жөнүндө айрым маалымат Google'га жөнөтүлүшү мүмкүн. Бул маалыматты <ph name="BEGIN_LINK2" />Купуялык саясаты<ph name="END_LINK2" /> жана <ph name="BEGIN_LINK3" />Тейлөө шарттарына<ph name="END_LINK3" /> ылайык техникалык маселелерди чечүү жана кызматтарыбызды жакшыртуу үчүн колдонобуз. Контентке өзгөртүүлөрдү киргизүүнү сурануу үчүн <ph name="BEGIN_LINK1" />Юридикалык жардам<ph name="END_LINK1" /> барагына өтүңүз.</translation>
+<translation id="7730077286107534951">Аккаунт жана система жөнүндө айрым маалымат Google'га жөнөтүлүшү мүмкүн. Бул маалыматты <ph name="BEGIN_LINK2" />Купуялык саясаты<ph name="END_LINK2" /> жана <ph name="BEGIN_LINK3" />Тейлөө шарттарына<ph name="END_LINK3" /> ылайык техникалык маселелерди чечүү жана кызматтарыбызды жакшыртуу үчүн колдонобуз. Контентке өзгөртүүлөрдү киргизүүнү сурануу үчүн <ph name="BEGIN_LINK1" />Юридикалык жардам<ph name="END_LINK1" /> барагына өтүңүз.</translation>
 <translation id="773153675489693198">Циклдердин саны</translation>
 <translation id="7746357909584236306">түзөтүүгө болот</translation>
 <translation id="7747039790905080783">Алдын ала бөлүшүлгөн ачкыч</translation>
diff --git a/chromeos/strings/chromeos_strings_uk.xtb b/chromeos/strings/chromeos_strings_uk.xtb
index c7b14bd..8ea73a3 100644
--- a/chromeos/strings/chromeos_strings_uk.xtb
+++ b/chromeos/strings/chromeos_strings_uk.xtb
@@ -940,7 +940,7 @@
 <translation id="6327262166342360252">Цей фоновий малюнок створено за допомогою ШІ на основі такого тексту: "<ph name="PROMPT" />".</translation>
 <translation id="6331191339300272798">Автоматична темна тема</translation>
 <translation id="6340526405444716530">Персоналізація</translation>
-<translation id="6348738456043757611">Ім’я користувача та пароль</translation>
+<translation id="6348738456043757611">Ім’я користувача й пароль</translation>
 <translation id="6352210854422428614">інша планета</translation>
 <translation id="6359706544163531585">Вимкнути світлу тему</translation>
 <translation id="636850387210749493">Корпоративна реєстрація</translation>
diff --git a/clank b/clank
index 91339b8..9e0c16b 160000
--- a/clank
+++ b/clank
@@ -1 +1 @@
-Subproject commit 91339b8b4480a489b0c8e7e10ed1710420af97d9
+Subproject commit 9e0c16ba7803a6362dc0f1504a171f38b08a8423
diff --git a/components/autofill/core/browser/autofill_suggestion_generator.cc b/components/autofill/core/browser/autofill_suggestion_generator.cc
index 13ffc58..f1873c8 100644
--- a/components/autofill/core/browser/autofill_suggestion_generator.cc
+++ b/components/autofill/core/browser/autofill_suggestion_generator.cc
@@ -954,17 +954,12 @@
     FieldType trigger_field_type,
     SuggestionType suggestion_type,
     AutofillSuggestionTriggerSource trigger_source) {
-  // If the user manually triggered suggestions from the context menu, all
-  // available profiles should be shown. Selecting a suggestion overwrites the
-  // triggering field's value.
-  const std::u16string field_value_for_filtering =
-      trigger_source != AutofillSuggestionTriggerSource::kManualFallbackAddress
-          ? trigger_field.value()
-          : u"";
   std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
       profiles_to_suggest = GetProfilesToSuggest(
-          trigger_field_type, field_value_for_filtering,
-          trigger_field.is_autofilled(), field_types, trigger_source);
+          trigger_field_type, trigger_field.value(),
+          trigger_field.is_autofilled(), field_types,
+          GetProfilesToSuggestOptions(trigger_field_type, trigger_field.value(),
+                                      trigger_source));
   // If autofill for addresses is triggered from the context menu on an address
   // field and no suggestions can be shown (i.e. if a user has only addresses
   // without emails and then triggers autofill from the context menu on an email
@@ -996,63 +991,88 @@
   return suggestions;
 }
 
+AutofillSuggestionGenerator::ProfilesToSuggestOptions
+AutofillSuggestionGenerator::GetProfilesToSuggestOptions(
+    FieldType trigger_field_type,
+    const std::u16string& trigger_field_contents,
+    AutofillSuggestionTriggerSource trigger_source) const {
+  // By default, disused profiles are excluded only if the normalized field
+  // value is empty. However, triggering suggestions via manual fallback should
+  // allow the user to access all their profiles, which is why this option is
+  // disabled there.
+  bool should_excluded_disused_addresses =
+      trigger_source !=
+          AutofillSuggestionTriggerSource::kManualFallbackAddress &&
+      NormalizeForComparisonForType(trigger_field_contents, trigger_field_type)
+          .empty();
+  // By default, suggestions should have non-empty value on the trigger field.
+  // However, triggering suggestions via manual fallback on non-address fields
+  // has a separate main-text retrieving logic, ensuring that this text is never
+  // empty, which is why we disable this options there.
+  bool should_require_non_empty_value_on_trigger_field =
+      IsAddressType(trigger_field_type);
+  // By default, suggestions should be matched with the field content. However,
+  // triggering suggestions via manual fallback should allow the user to access
+  // all their profiles, which is why this option is disabled there. Moreover,
+  // prefix matching in that case could result in poor UX, since the user
+  // explicitly asked for Autofill address suggestions.
+  bool should_prefix_match_suggestions =
+      trigger_source != AutofillSuggestionTriggerSource::kManualFallbackAddress;
+  // By default, suggestions should be deduplicated in order to not offer
+  // redundant suggestions. However, triggering suggestions via manual fallback
+  // should allow the user to access all their profiles, which is why this
+  // option is disabled there.
+  bool should_deduplicate_suggestions =
+      trigger_source != AutofillSuggestionTriggerSource::kManualFallbackAddress;
+  return ProfilesToSuggestOptions{
+      .exclude_disused_addresses = should_excluded_disused_addresses,
+      .require_non_empty_value_on_trigger_field =
+          should_require_non_empty_value_on_trigger_field,
+      .prefix_match_suggestions = should_prefix_match_suggestions,
+      .deduplicate_suggestions = should_deduplicate_suggestions};
+}
+
 std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
 AutofillSuggestionGenerator::GetProfilesToSuggest(
     FieldType trigger_field_type,
     const std::u16string& field_contents,
     bool field_is_autofilled,
     const FieldTypeSet& field_types,
-    AutofillSuggestionTriggerSource trigger_source) {
+    ProfilesToSuggestOptions options) {
   // Get the profiles to suggest, which are already sorted.
   std::vector<AutofillProfile*> sorted_profiles =
       personal_data().address_data_manager().GetProfilesToSuggest();
-  std::u16string field_contents_canon =
-      NormalizeForComparisonForType(field_contents, trigger_field_type);
-  if (!IsAddressType(trigger_field_type)) {
-    // If Autofill was triggered form a non address field, we do not want to
-    // filter out any profile. Instead we want the user to access everything
-    // they have stored (up to a max of kMaxDisplayedAddressSuggestions). Note
-    // that in this case the fact that the field is not an address field does
-    // not impact the suggestion generation, this is because both the main text
-    // and the label are built independently from the `trigger_field_type`.
-    return std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>(
-        sorted_profiles.begin(),
-        sorted_profiles.begin() +
-            std::min(kMaxDisplayedAddressSuggestions, sorted_profiles.size()));
-  }
-  // When suggesting with no prefix to match, suppress disused address
-  // suggestions as well as those based on invalid profile data if the
-  // `trigger_source` is not
-  // `AutofillSuggestionTriggerSource::kManualFallbackAddress`. In the manual
-  // fallback case, we want users to have access to all their stored profiles.
-  if (field_contents_canon.empty() &&
-      !IsAddressAutofillManuallyTriggered(trigger_source)) {
+  if (options.exclude_disused_addresses) {
     const base::Time min_last_used =
         AutofillClock::Now() - kDisusedDataModelTimeDelta;
     RemoveProfilesNotUsedSinceTimestamp(min_last_used, sorted_profiles);
   }
-  std::vector<const AutofillProfile*> matched_profiles =
-      GetPrefixMatchedProfiles(sorted_profiles, trigger_field_type,
-                               field_contents, field_contents_canon,
-                               field_is_autofilled);
-  // Manual fallback should not deduplicate profiles. Users should have access
-  // to all their stored profiles when using manual fallback. The one exception
-  // is when `trigger_field_type` is an address field and an `AutofillProfile`
-  // does not have information stored for it.
-  if (IsAddressAutofillManuallyTriggered(trigger_source)) {
-    return std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>(
-        matched_profiles.begin(),
-        matched_profiles.begin() +
-            std::min(kMaxDisplayedAddressSuggestions, matched_profiles.size()));
+  if (options.require_non_empty_value_on_trigger_field) {
+    std::erase_if(sorted_profiles, [&](const AutofillProfile* profile) {
+      return GetProfileSuggestionMainText(
+                 *profile, personal_data().app_locale(), trigger_field_type)
+          .empty();
+    });
+  }
+  std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
+      profiles_to_suggest(sorted_profiles.begin(), sorted_profiles.end());
+  if (options.prefix_match_suggestions) {
+    profiles_to_suggest = GetPrefixMatchedProfiles(
+        sorted_profiles, trigger_field_type, field_contents,
+        NormalizeForComparisonForType(field_contents, trigger_field_type),
+        field_is_autofilled);
   }
   const AutofillProfileComparator comparator(personal_data().app_locale());
-  // Don't show two suggestions if one is a subset of the other.
-  // Duplicates across sources are resolved in favour of `kAccount` profiles.
-  std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
-      unique_matched_profiles = DeduplicatedProfilesForSuggestions(
-          matched_profiles, trigger_field_type, field_types, comparator);
-
-  return unique_matched_profiles;
+  if (options.deduplicate_suggestions) {
+    profiles_to_suggest = DeduplicatedProfilesForSuggestions(
+        profiles_to_suggest, trigger_field_type, field_types, comparator);
+  }
+  // Do not show more than `kMaxDisplayedAddressSuggestions` suggestions since
+  // it would result in poor UX.
+  if (profiles_to_suggest.size() > kMaxDisplayedAddressSuggestions) {
+    profiles_to_suggest.resize(kMaxDisplayedAddressSuggestions);
+  }
+  return profiles_to_suggest;
 }
 
 std::vector<Suggestion>
@@ -1152,7 +1172,8 @@
 
 std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
 AutofillSuggestionGenerator::DeduplicatedProfilesForSuggestions(
-    const std::vector<const AutofillProfile*>& matched_profiles,
+    const std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>&
+        matched_profiles,
     FieldType trigger_field_type,
     const FieldTypeSet& field_types,
     const AutofillProfileComparator& comparator) {
@@ -1213,14 +1234,15 @@
   return unique_matched_profiles;
 }
 
-std::vector<const AutofillProfile*>
+std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
 AutofillSuggestionGenerator::GetPrefixMatchedProfiles(
     const std::vector<AutofillProfile*>& profiles,
     FieldType trigger_field_type,
     const std::u16string& raw_field_contents,
     const std::u16string& field_contents_canon,
     bool field_is_autofilled) {
-  std::vector<const AutofillProfile*> matched_profiles;
+  std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
+      matched_profiles;
   for (const AutofillProfile* profile : profiles) {
     if (matched_profiles.size() == kMaxPrefixMatchedProfilesForSuggestion) {
       break;
diff --git a/components/autofill/core/browser/autofill_suggestion_generator.h b/components/autofill/core/browser/autofill_suggestion_generator.h
index f270c21f..13bacbf 100644
--- a/components/autofill/core/browser/autofill_suggestion_generator.h
+++ b/components/autofill/core/browser/autofill_suggestion_generator.h
@@ -121,21 +121,30 @@
  private:
   friend class AutofillSuggestionGeneratorTestApi;
 
+  struct ProfilesToSuggestOptions {
+    const bool exclude_disused_addresses;
+    const bool require_non_empty_value_on_trigger_field;
+    const bool prefix_match_suggestions;
+    const bool deduplicate_suggestions;
+  };
+
+  ProfilesToSuggestOptions GetProfilesToSuggestOptions(
+      FieldType trigger_field_type,
+      const std::u16string& trigger_field_contents,
+      AutofillSuggestionTriggerSource trigger_source) const;
+
   // Returns a list of profiles that will be displayed as suggestions to the
   // user, sorted by their relevance. This involves many steps from fetching the
   // profiles to matching with `field_contents`, and deduplicating based on
   // `field_types`, which are the relevant types for the current suggestion.
-  // When `trigger_source` is manual fallback, profiles are not deduplicated nor
-  // filtered out, exception being when there is no profile information to fill
-  // `trigger_field_type`. Furthermore, if `trigger_field_type` is not of type
-  // address, every single profile is displayed (up to a max of
-  // `kMaxDisplayedAddressSuggestions`).
+  // `options` defines what strategies to follow by the function in order to
+  // filter the list or returned profiles.
   std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
   GetProfilesToSuggest(FieldType trigger_field_type,
                        const std::u16string& field_contents,
                        bool field_is_autofilled,
                        const FieldTypeSet& field_types,
-                       AutofillSuggestionTriggerSource trigger_source);
+                       ProfilesToSuggestOptions options);
 
   // Returns the local and server cards ordered by the Autofill ranking.
   // If `suppress_disused_cards`, local expired disused cards are removed.
@@ -181,7 +190,8 @@
   // the field on which the user is currently focused.
   std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
   DeduplicatedProfilesForSuggestions(
-      const std::vector<const AutofillProfile*>& matched_profiles,
+      const std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>&
+          matched_profiles,
       FieldType trigger_field_type,
       const FieldTypeSet& field_types,
       const AutofillProfileComparator& comparator);
@@ -189,12 +199,12 @@
   // Matches based on prefix search, and limits number of profiles.
   // Returns the top matching profiles based on prefix search. At most
   // `kMaxPrefixMatchedProfilesForSuggestion` are returned.
-  std::vector<const AutofillProfile*> GetPrefixMatchedProfiles(
-      const std::vector<AutofillProfile*>& profiles,
-      FieldType trigger_field_type,
-      const std::u16string& raw_field_contents,
-      const std::u16string& field_contents_canon,
-      bool field_is_autofilled);
+  std::vector<raw_ptr<const AutofillProfile, VectorExperimental>>
+  GetPrefixMatchedProfiles(const std::vector<AutofillProfile*>& profiles,
+                           FieldType trigger_field_type,
+                           const std::u16string& raw_field_contents,
+                           const std::u16string& field_contents_canon,
+                           bool field_is_autofilled);
 
   // Removes profiles that haven't been used after `min_last_used` from
   // |profiles|. The relative ordering of `profiles` is maintained.
diff --git a/components/autofill/core/browser/autofill_suggestion_generator_test_api.h b/components/autofill/core/browser/autofill_suggestion_generator_test_api.h
index 07dac16..9e130ff 100644
--- a/components/autofill/core/browser/autofill_suggestion_generator_test_api.h
+++ b/components/autofill/core/browser/autofill_suggestion_generator_test_api.h
@@ -30,7 +30,8 @@
           AutofillSuggestionTriggerSource::kFormControlElementClicked) {
     return suggestion_generator_->GetProfilesToSuggest(
         trigger_field_type, field_contents, field_is_autofilled, field_types,
-        trigger_source);
+        suggestion_generator_->GetProfilesToSuggestOptions(
+            trigger_field_type, field_contents, trigger_source));
   }
 
   std::vector<CreditCard> GetOrderedCardsToSuggest(
diff --git a/components/autofill/core/browser/browser_autofill_manager.cc b/components/autofill/core/browser/browser_autofill_manager.cc
index 7a7d3cf2..881fe12 100644
--- a/components/autofill/core/browser/browser_autofill_manager.cc
+++ b/components/autofill/core/browser/browser_autofill_manager.cc
@@ -549,7 +549,7 @@
 
 void LogSuggestionsCount(const SuggestionsContext& context,
                          const std::vector<Suggestion>& suggestions) {
-  if (!context.is_autofill_available) {
+  if (suggestions.empty() || !context.is_autofill_available) {
     return;
   }
 
@@ -579,50 +579,6 @@
   }
 }
 
-SuggestionType GetSuggestionTypeFromLastAcceptedAddressSuggestion(
-    SuggestionType last_suggestion_type,
-    FieldType trigger_field_type) {
-  switch (last_suggestion_type) {
-    case SuggestionType::kAddressEntry:
-    case SuggestionType::kFillEverythingFromAddressProfile:
-      return SuggestionType::kAddressEntry;
-    case SuggestionType::kFillFullAddress:
-    case SuggestionType::kFillFullName:
-    case SuggestionType::kFillFullPhoneNumber:
-    case SuggestionType::kFillFullEmail:
-      switch (GroupTypeOfFieldType(trigger_field_type)) {
-        case FieldTypeGroup::kName:
-          return SuggestionType::kFillFullName;
-        case FieldTypeGroup::kEmail:
-          return SuggestionType::kFillFullEmail;
-        case FieldTypeGroup::kCompany:
-        case FieldTypeGroup::kAddress:
-          return SuggestionType::kFillFullAddress;
-        case FieldTypeGroup::kPhone:
-          return SuggestionType::kFillFullPhoneNumber;
-        case FieldTypeGroup::kCreditCard:
-        case FieldTypeGroup::kPasswordField:
-        case FieldTypeGroup::kTransaction:
-        case FieldTypeGroup::kUsernameField:
-        case FieldTypeGroup::kUnfillable:
-        case FieldTypeGroup::kIban:
-        case FieldTypeGroup::kNoGroup:
-          // This function should only be called when triggering suggestions on
-          // an address field. Suggestions on non-address fields always get
-          // SuggestionType::kAddress and are handled elsewhere.
-          NOTREACHED_NORETURN();
-      }
-      NOTREACHED_NORETURN();
-    case SuggestionType::kAddressFieldByFieldFilling:
-      return SuggestionType::kAddressFieldByFieldFilling;
-    default:
-      // `last_suggestion_type` is only one of the address filling suggestion
-      // types, therefore no other type should be passed to this function.
-      NOTREACHED_NORETURN();
-  }
-  NOTREACHED_NORETURN();
-}
-
 FieldTypeSet GetTargetFieldsForAddressFillingSuggestionType(
     SuggestionType suggestion_type,
     FieldType trigger_field_type) {
@@ -640,7 +596,47 @@
       return GetFieldTypesOfGroup(FieldTypeGroup::kEmail);
     case SuggestionType::kAddressFieldByFieldFilling:
       return FieldTypeSet{trigger_field_type};
-    default:
+    case SuggestionType::kAutocompleteEntry:
+    case SuggestionType::kEditAddressProfile:
+    case SuggestionType::kDeleteAddressProfile:
+    case SuggestionType::kAutofillOptions:
+    case SuggestionType::kComposeProactiveNudge:
+    case SuggestionType::kComposeResumeNudge:
+    case SuggestionType::kComposeSavedStateNotification:
+    case SuggestionType::kComposeDisable:
+    case SuggestionType::kComposeGoToSettings:
+    case SuggestionType::kComposeNeverShowOnThisSiteAgain:
+    case SuggestionType::kDatalistEntry:
+    case SuggestionType::kPasswordEntry:
+    case SuggestionType::kAllSavedPasswordsEntry:
+    case SuggestionType::kGeneratePasswordEntry:
+    case SuggestionType::kShowAccountCards:
+    case SuggestionType::kPasswordAccountStorageOptIn:
+    case SuggestionType::kPasswordAccountStorageOptInAndGenerate:
+    case SuggestionType::kAccountStoragePasswordEntry:
+    case SuggestionType::kPasswordAccountStorageReSignin:
+    case SuggestionType::kPasswordAccountStorageEmpty:
+    case SuggestionType::kPasswordFieldByFieldFilling:
+    case SuggestionType::kFillPassword:
+    case SuggestionType::kViewPasswordDetails:
+    case SuggestionType::kCreditCardEntry:
+    case SuggestionType::kInsecureContextPaymentDisabledMessage:
+    case SuggestionType::kScanCreditCard:
+    case SuggestionType::kVirtualCreditCardEntry:
+    case SuggestionType::kCreditCardFieldByFieldFilling:
+    case SuggestionType::kIbanEntry:
+    case SuggestionType::kCreateNewPlusAddress:
+    case SuggestionType::kFillExistingPlusAddress:
+    case SuggestionType::kMerchantPromoCodeEntry:
+    case SuggestionType::kSeePromoCodeDetails:
+    case SuggestionType::kWebauthnCredential:
+    case SuggestionType::kWebauthnSignInWithAnotherDevice:
+    case SuggestionType::kTitle:
+    case SuggestionType::kSeparator:
+    case SuggestionType::kClearForm:
+    case SuggestionType::kMixedFormMessage:
+    case SuggestionType::kDevtoolsTestAddresses:
+    case SuggestionType::kDevtoolsTestAddressEntry:
       NOTREACHED_NORETURN();
   }
   NOTREACHED_NORETURN();
@@ -1289,17 +1285,26 @@
   SuggestionsContext context =
       BuildSuggestionsContext(form, field, trigger_source);
 
+  GenerateSuggestionsAndMaybeShowUI(
+      form, field, trigger_source, std::move(context),
+      base::BindOnce(&BrowserAutofillManager::OnGenerateSuggestionsComplete,
+                     weak_ptr_factory_.GetWeakPtr(), form, field,
+                     trigger_source));
+}
+
+void BrowserAutofillManager::GenerateSuggestionsAndMaybeShowUI(
+    const FormData& form,
+    const FormFieldData& field,
+    AutofillSuggestionTriggerSource trigger_source,
+    SuggestionsContext context,
+    OnGenerateSuggestionsCallback callback) {
   std::vector<Suggestion> suggestions;
-  GetAvailableSuggestions(form, field, trigger_source, &suggestions, &context);
+  GetAvailableSuggestions(form, field, trigger_source, suggestions, context);
 
-  const bool form_element_was_clicked =
-      trigger_source ==
-      AutofillSuggestionTriggerSource::kFormControlElementClicked;
-
-  if (context.is_autofill_available) {
+  auto ShouldSuppressSuggestions = [&] {
     switch (context.suppress_reason) {
       case SuppressReason::kNotSuppressed:
-        break;
+        return false;
 
       case SuppressReason::kAblation:
         single_field_form_fill_router_->CancelPendingQueries();
@@ -1308,29 +1313,49 @@
         LOG_AF(log_manager())
             << LoggingScope::kFilling << LogMessage::kSuggestionSuppressed
             << " Reason: Ablation experiment";
-        return;
+        return true;
 
       case SuppressReason::kInsecureForm:
         LOG_AF(log_manager())
             << LoggingScope::kFilling << LogMessage::kSuggestionSuppressed
             << " Reason: Insecure form";
-        return;
+        return true;
       case SuppressReason::kAutocompleteOff:
         LOG_AF(log_manager())
             << LoggingScope::kFilling << LogMessage::kSuggestionSuppressed
             << " Reason: autocomplete=off";
-        return;
+        return true;
       case SuppressReason::kAutocompleteUnrecognized:
         LOG_AF(log_manager())
             << LoggingScope::kFilling << LogMessage::kSuggestionSuppressed
             << " Reason: autocomplete=unrecognized";
-        return;
+        return true;
     }
+  };
+
+  if (context.is_autofill_available && ShouldSuppressSuggestions()) {
+    return;
   }
 
-  if (!suggestions.empty()) {
-    // TODO(b/340494671): Show Autofill suggestions UI from this branch.
-    LogSuggestionsCount(context, suggestions);
+  LogSuggestionsCount(context, suggestions);
+
+  const bool form_element_was_clicked =
+      trigger_source ==
+      AutofillSuggestionTriggerSource::kFormControlElementClicked;
+
+  // Try to show Fast Checkout.
+  if (fast_checkout_delegate_ &&
+      (fast_checkout_delegate_->IsShowingFastCheckoutUI() ||
+       (form_element_was_clicked &&
+        fast_checkout_delegate_->TryToShowFastCheckout(form, field,
+                                                       GetWeakPtr())))) {
+    // The Fast Checkout surface is shown, so abort showing regular Autofill
+    // UI. Now the flow is controlled by the `FastCheckoutClient` instead of
+    // `external_delegate_`.
+    // In principle, TTF and Fast Checkout triggering surfaces are different
+    // and the two screens should never coincide.
+    std::move(callback).Run(/*show_suggestions=*/false, std::move(suggestions));
+    return;
   }
 
   // Check if other suggestion sources should be queried. Manual fallbacks can't
@@ -1421,20 +1446,7 @@
     return true;
   };
 
-  auto ShouldShowSuggestion = [&] {
-    if (fast_checkout_delegate_ &&
-        (fast_checkout_delegate_->IsShowingFastCheckoutUI() ||
-         (form_element_was_clicked &&
-          fast_checkout_delegate_->TryToShowFastCheckout(form, field,
-                                                         GetWeakPtr())))) {
-      // The Fast Checkout surface is shown, so abort showing regular Autofill
-      // UI. Now the flow is controlled by the `FastCheckoutClient` instead of
-      // `external_delegate_`.
-      // In principle, TTF and Fast Checkout triggering surfaces are different
-      // and the two screens should never coincide.
-      return false;
-    }
-
+  auto ShouldShowSuggestions = [&] {
     if (ShouldOfferSingleFieldFormFill()) {
       // Suggestions come back asynchronously, so the SingleFieldFormFillRouter
       // will handle sending the results back to the renderer.
@@ -1467,19 +1479,32 @@
     return true;
   };
 
-  bool show_suggestion = ShouldShowSuggestion();
+  // Calling `ShouldShowSuggestions` must be done before moving `suggestions`.
+  // Given that the order of evaluating parameters in C++ is unspecified, this
+  // call can not be inlined below.
+  bool show_suggestions = ShouldShowSuggestions();
+  std::move(callback).Run(show_suggestions, std::move(suggestions));
+}
+
+void BrowserAutofillManager::OnGenerateSuggestionsComplete(
+    const FormData& form,
+    const FormFieldData& field,
+    AutofillSuggestionTriggerSource trigger_source,
+    bool show_suggestions,
+    std::vector<Suggestion> suggestions) {
   // When focusing on a field, log whether there is a suggestion for the user
   // and whether the suggestion is shown.
   FormStructure* form_structure = nullptr;
   AutofillField* autofill_field = nullptr;
-  if (form_element_was_clicked &&
+  if (trigger_source ==
+          AutofillSuggestionTriggerSource::kFormControlElementClicked &&
       GetCachedFormAndField(form, field, &form_structure, &autofill_field)) {
     autofill_field->AppendLogEventIfNotRepeated(AskForValuesToFillFieldLogEvent{
         .has_suggestion = ToOptionalBoolean(!suggestions.empty()),
-        .suggestion_is_shown = ToOptionalBoolean(show_suggestion),
+        .suggestion_is_shown = ToOptionalBoolean(show_suggestions),
     });
   }
-  if (show_suggestion) {
+  if (show_suggestions) {
     // Send Autofill suggestions (could be an empty list).
     external_delegate_->OnSuggestionsReturned(field.global_id(), suggestions);
   }
@@ -1682,7 +1707,7 @@
   std::vector<Suggestion> suggestions;
   GetAvailableSuggestions(form, field,
                           AutofillSuggestionTriggerSource::kUnspecified,
-                          &suggestions, &context);
+                          suggestions, context);
   external_delegate_->OnAutofillAvailabilityEvent(
       (context.suppress_reason == SuppressReason::kNotSuppressed &&
        !suggestions.empty())
@@ -2480,10 +2505,10 @@
   address_form_event_logger_->OnDidPollSuggestions(trigger_field,
                                                    signin_state_for_metrics_);
 
-  const bool trigger_field_type_is_address_type =
-      form_structure && trigger_autofill_field &&
-      IsAddressType(trigger_autofill_field->Type().GetStorableType());
-  if (!trigger_field_type_is_address_type) {
+  const FieldType trigger_field_type =
+      trigger_autofill_field ? trigger_autofill_field->Type().GetStorableType()
+                             : UNKNOWN_TYPE;
+  if (!IsAddressType(trigger_field_type)) {
     // Since Autofill was triggered from a field that is not classified as
     // address, we consider the `field_types` (i.e, the fields found in the
     // "form") to be a single unclassified field. Note that in this flow it is
@@ -2493,24 +2518,59 @@
         SuggestionType::kAddressEntry, trigger_source);
   }
 
-  CHECK(trigger_field_type_is_address_type);
-  SuggestionType current_suggestion_type =
-      GetSuggestionTypeFromLastAcceptedAddressSuggestion(
-          external_delegate_->GetLastAcceptedSuggestionToFillForSection(
-              trigger_autofill_field->section()),
-          trigger_autofill_field->Type().GetStorableType());
+  CHECK(IsAddressType(trigger_field_type));
+  SuggestionType current_suggestion_type = [&] {
+    switch (external_delegate_->GetLastAcceptedSuggestionToFillForSection(
+        trigger_autofill_field->section())) {
+      case SuggestionType::kAddressEntry:
+      case SuggestionType::kFillEverythingFromAddressProfile:
+        return SuggestionType::kAddressEntry;
+      case SuggestionType::kFillFullAddress:
+      case SuggestionType::kFillFullName:
+      case SuggestionType::kFillFullPhoneNumber:
+      case SuggestionType::kFillFullEmail:
+        switch (GroupTypeOfFieldType(trigger_field_type)) {
+          case FieldTypeGroup::kName:
+            return SuggestionType::kFillFullName;
+          case FieldTypeGroup::kEmail:
+            return SuggestionType::kFillFullEmail;
+          case FieldTypeGroup::kCompany:
+          case FieldTypeGroup::kAddress:
+            return SuggestionType::kFillFullAddress;
+          case FieldTypeGroup::kPhone:
+            return SuggestionType::kFillFullPhoneNumber;
+          case FieldTypeGroup::kCreditCard:
+          case FieldTypeGroup::kPasswordField:
+          case FieldTypeGroup::kTransaction:
+          case FieldTypeGroup::kUsernameField:
+          case FieldTypeGroup::kUnfillable:
+          case FieldTypeGroup::kIban:
+          case FieldTypeGroup::kNoGroup:
+            // Since `trigger_field_type` is an address type:
+            NOTREACHED_NORETURN();
+        }
+        NOTREACHED_NORETURN();
+      case SuggestionType::kAddressFieldByFieldFilling:
+        return SuggestionType::kAddressFieldByFieldFilling;
+      default:
+        // `last_suggestion_type` is only one of the address filling suggestion
+        // types, therefore no other type should be passed to this function.
+        NOTREACHED_NORETURN();
+    }
+  }();
+
   // Getting the filling-relevant fields so that suggestions are based only on
   // those fields. Function BrowserAutofillManager::GetFieldFillingSkipReasons
   // assumes that the passed FormData and FormStructure have the same size. If
   // it's not the case we just assume as a fallback that all fields are
   // relevant.
+  size_t num_fields = form_structure ? form_structure->field_count() : 0;
   base::flat_map<FieldGlobalId, FieldFillingSkipReason> skip_reasons =
-      form.fields.size() == form_structure->field_count()
+      form_structure && form.fields.size() == num_fields
           ? form_filler_->GetFieldFillingSkipReasons(
                 form, *form_structure, *trigger_autofill_field,
                 GetTargetFieldsForAddressFillingSuggestionType(
-                    current_suggestion_type,
-                    trigger_autofill_field->Type().GetStorableType()),
+                    current_suggestion_type, trigger_field_type),
                 /*type_groups_originally_filled=*/std::nullopt,
                 FillingProduct::kAddress,
                 /*skip_unrecognized_autocomplete_fields=*/trigger_source !=
@@ -2518,7 +2578,7 @@
                 /*is_refill=*/false, /*is_expired_credit_card=*/false)
           : base::flat_map<FieldGlobalId, FieldFillingSkipReason>();
   FieldTypeSet field_types;
-  for (size_t i = 0; i < form_structure->field_count(); ++i) {
+  for (size_t i = 0; i < num_fields; ++i) {
     const AutofillField* autofill_field = form_structure->field(i);
     auto it = skip_reasons.find(autofill_field->global_id());
     if (it == skip_reasons.end() ||
@@ -2527,8 +2587,7 @@
     }
   }
   return suggestion_generator_->GetSuggestionsForProfiles(
-      field_types, trigger_field,
-      trigger_autofill_field->Type().GetStorableType(), current_suggestion_type,
+      field_types, trigger_field, trigger_field_type, current_suggestion_type,
       trigger_source);
 }
 
@@ -2707,14 +2766,11 @@
     const FormData& form,
     const FormFieldData& field,
     AutofillSuggestionTriggerSource trigger_source,
-    std::vector<Suggestion>* suggestions,
-    SuggestionsContext* context) {
-  DCHECK(suggestions);
-  DCHECK(context);
-
+    std::vector<Suggestion>& suggestions,
+    SuggestionsContext& context) {
   if (trigger_source ==
       AutofillSuggestionTriggerSource::kManualFallbackPlusAddresses) {
-    *suggestions = client().GetPlusAddressDelegate()->GetSuggestions(
+    suggestions = client().GetPlusAddressDelegate()->GetSuggestions(
         client().GetLastCommittedPrimaryMainFrameOrigin(),
         client().IsOffTheRecord(),
         client().ClassifyAsPasswordForm(*this, form.global_id(),
@@ -2723,35 +2779,33 @@
     return;
   }
 
-  if (context->should_show_mixed_content_warning) {
+  if (context.should_show_mixed_content_warning) {
     Suggestion warning_suggestion(
         l10n_util::GetStringUTF16(IDS_AUTOFILL_WARNING_MIXED_FORM));
     warning_suggestion.type = SuggestionType::kMixedFormMessage;
-    suggestions->emplace_back(warning_suggestion);
+    suggestions.emplace_back(warning_suggestion);
     return;
   }
 
-  if (!context->is_autofill_available ||
-      context->do_not_generate_autofill_suggestions) {
+  if (!context.is_autofill_available ||
+      context.do_not_generate_autofill_suggestions) {
     return;
   }
 
-  if (context->filling_product == FillingProduct::kCreditCard) {
+  if (context.filling_product == FillingProduct::kCreditCard) {
     FieldType trigger_field_type =
-        context->focused_field
-            ? context->focused_field->Type().GetStorableType()
-            : UNKNOWN_TYPE;
-    *suggestions = GetCreditCardSuggestions(form, field, trigger_field_type,
-                                            trigger_source);
-  } else if (context->filling_product == FillingProduct::kAddress) {
+        context.focused_field ? context.focused_field->Type().GetStorableType()
+                              : UNKNOWN_TYPE;
+    suggestions = GetCreditCardSuggestions(form, field, trigger_field_type,
+                                           trigger_source);
+  } else if (context.filling_product == FillingProduct::kAddress) {
     // Profile suggestions fill ac=unrecognized fields only when triggered
     // through manual fallbacks. As such, suggestion labels differ depending on
     // the `trigger_source`.
-    *suggestions =
-        GetProfileSuggestions(form, context->form_structure, field,
-                              context->focused_field, trigger_source);
-    if (context->focused_field &&
-        context->focused_field->Type().group() == FieldTypeGroup::kEmail &&
+    suggestions = GetProfileSuggestions(form, context.form_structure, field,
+                                        context.focused_field, trigger_source);
+    if (context.focused_field &&
+        context.focused_field->Type().group() == FieldTypeGroup::kEmail &&
         client().GetPlusAddressDelegate()) {
       std::vector<Suggestion> plus_address_suggestions =
           client().GetPlusAddressDelegate()->GetSuggestions(
@@ -2760,29 +2814,29 @@
               client().ClassifyAsPasswordForm(*this, form.global_id(),
                                               field.global_id()),
               field.value(), trigger_source);
-      suggestions->insert(
-          suggestions->cbegin(),
+      suggestions.insert(
+          suggestions.cbegin(),
           std::make_move_iterator(plus_address_suggestions.begin()),
           std::make_move_iterator(plus_address_suggestions.end()));
     }
   }
 
   // Ablation experiment
-  if (context->filling_product == FillingProduct::kAddress ||
-      context->filling_product == FillingProduct::kCreditCard) {
+  if (context.filling_product == FillingProduct::kAddress ||
+      context.filling_product == FillingProduct::kCreditCard) {
     FormTypeForAblationStudy form_type =
-        context->filling_product == FillingProduct::kCreditCard
+        context.filling_product == FillingProduct::kCreditCard
             ? FormTypeForAblationStudy::kPayment
             : FormTypeForAblationStudy::kAddress;
     // If ablation_group is AblationGroup::kDefault or AblationGroup::kControl,
     // no ablation happens in the following.
     AblationGroup ablation_group = client().GetAblationStudy().GetAblationGroup(
         client().GetLastCommittedPrimaryMainFrameURL(), form_type);
-    context->ablation_group = ablation_group;
+    context.ablation_group = ablation_group;
     // Note that we don't set the ablation group if there are no suggestions.
     // In that case we stick to kDefault.
-    context->conditional_ablation_group =
-        !suggestions->empty() ? ablation_group : AblationGroup::kDefault;
+    context.conditional_ablation_group =
+        !suggestions.empty() ? ablation_group : AblationGroup::kDefault;
 
     // In both cases (credit card and address forms), we inform the other event
     // logger also about the ablation.
@@ -2791,33 +2845,33 @@
     // recorded by the credit_card_form_event_logger_). For the complementary
     // event logger, the conditional ablation status is logged as kDefault to
     // not imply that data would be filled without ablation.
-    if (context->filling_product == FillingProduct::kCreditCard) {
+    if (context.filling_product == FillingProduct::kCreditCard) {
       credit_card_form_event_logger_->SetAblationStatus(
-          context->ablation_group, context->conditional_ablation_group);
-      address_form_event_logger_->SetAblationStatus(context->ablation_group,
+          context.ablation_group, context.conditional_ablation_group);
+      address_form_event_logger_->SetAblationStatus(context.ablation_group,
                                                     AblationGroup::kDefault);
-    } else if (context->filling_product == FillingProduct::kAddress) {
+    } else if (context.filling_product == FillingProduct::kAddress) {
       address_form_event_logger_->SetAblationStatus(
-          context->ablation_group, context->conditional_ablation_group);
+          context.ablation_group, context.conditional_ablation_group);
       credit_card_form_event_logger_->SetAblationStatus(
-          context->ablation_group, AblationGroup::kDefault);
+          context.ablation_group, AblationGroup::kDefault);
     }
 
-    if (!suggestions->empty() && ablation_group == AblationGroup::kAblation) {
+    if (!suggestions.empty() && ablation_group == AblationGroup::kAblation) {
       // Logic for disabling/ablating autofill.
-      context->suppress_reason = SuppressReason::kAblation;
-      suggestions->clear();
+      context.suppress_reason = SuppressReason::kAblation;
+      suggestions.clear();
       return;
     }
   }
-  if (suggestions->empty() ||
-      context->filling_product != FillingProduct::kCreditCard) {
+  if (suggestions.empty() ||
+      context.filling_product != FillingProduct::kCreditCard) {
     return;
   }
   // Don't provide credit card suggestions for non-secure pages, but do
   // provide them for secure pages with passive mixed content (see
   // implementation of IsContextSecure).
-  if (!context->is_context_secure) {
+  if (!context.is_context_secure) {
     // Replace the suggestion content with a warning message explaining why
     // Autofill is disabled for a website. The string is different if the
     // credit card autofill HTTP warning experiment is enabled.
@@ -2825,7 +2879,7 @@
         l10n_util::GetStringUTF16(IDS_AUTOFILL_WARNING_INSECURE_CONNECTION));
     warning_suggestion.type =
         SuggestionType::kInsecureContextPaymentDisabledMessage;
-    suggestions->assign(1, warning_suggestion);
+    suggestions.assign(1, warning_suggestion);
   }
 }
 
diff --git a/components/autofill/core/browser/browser_autofill_manager.h b/components/autofill/core/browser/browser_autofill_manager.h
index b1d470a..73c4bdc 100644
--- a/components/autofill/core/browser/browser_autofill_manager.h
+++ b/components/autofill/core/browser/browser_autofill_manager.h
@@ -128,6 +128,13 @@
 // forms. One per frame; owned by the AutofillDriver.
 class BrowserAutofillManager : public AutofillManager {
  public:
+  // Triggered when `GenerateSuggestionsAndMaybeShowUI` is complete.
+  // `show_suggestions` indicates whether or not the list of `suggestions`
+  // should be displayed (via the `external_delegate_`).
+  using OnGenerateSuggestionsCallback =
+      base::OnceCallback<void(bool show_suggestions,
+                              std::vector<Suggestion> suggestions)>;
+
   BrowserAutofillManager(AutofillDriver* driver,
                          const std::string& app_locale);
 
@@ -522,18 +529,6 @@
                                                bool cleared_value,
                                                bool formatting_only);
 
-  // Replaces the contents of `suggestions` with available suggestions for
-  // `field`. Which fields of the `form` are filled depends on the
-  // `trigger_source`.
-  // `context` will contain additional information about the suggestions, such
-  // as if they correspond to credit card suggestions and if the context is
-  // secure.
-  void GetAvailableSuggestions(const FormData& form,
-                               const FormFieldData& field,
-                               AutofillSuggestionTriggerSource trigger_source,
-                               std::vector<Suggestion>* suggestions,
-                               SuggestionsContext* context);
-
   // Populates all the fields (except for ablation stuy related fields) in
   // `SuggestionsContext` based on the given params.
   SuggestionsContext BuildSuggestionsContext(
@@ -541,6 +536,49 @@
       const FormFieldData& field,
       AutofillSuggestionTriggerSource trigger_source);
 
+  // Replaces the contents of `suggestions` with available suggestions for
+  // `field`. Which fields of the `form` are filled depends on the
+  // `trigger_source`.
+  // `context` could contain additional information about the suggestions, such
+  // as ablation study related fields.
+  // TODO(b/340494671): Rename to GetAvailableAddressAndCreditCardSuggestions.
+  // TODO(b/340494671): Move ablation study fields out of the function and make
+  // the context a const ref.
+  void GetAvailableSuggestions(const FormData& form,
+                               const FormFieldData& field,
+                               AutofillSuggestionTriggerSource trigger_source,
+                               std::vector<Suggestion>& suggestions,
+                               SuggestionsContext& context);
+
+  // Generates and prioritizes different kinds of suggestions and
+  // suggestion surfaces accordingly (e.g. Fast Checkout,
+  // SingleFieldFormFiller(s), address and credit card popups). Suggestion flows
+  // that handle their own UI flow (e.g. FastCheckout, TTF,
+  // SingleFieldFormFiller) are triggered from within this function. Other flows
+  // that rely on the `external_delegate_` to show their suggestions, pass the
+  // suggestions list to the delegate on `OnGenerateSuggestionsComplete` and
+  // request them to be shown (via `show_suggestions`). Note that the `callback`
+  // is always called regardless of the suggestion surface. The only case when
+  // it's not called is when suggestions are suppressed (See
+  // `ShouldSuppressSuggestions`).
+  void GenerateSuggestionsAndMaybeShowUI(
+      const FormData& form,
+      const FormFieldData& field,
+      AutofillSuggestionTriggerSource trigger_source,
+      SuggestionsContext context,
+      OnGenerateSuggestionsCallback callback);
+
+  // The function receives a the list of `suggestions` from
+  // `GenerateSuggestionsAndMaybeShowUI` and displays them if `show_suggestions`
+  // is true (via the `external_delegate_`). It also logs whether there is a
+  // suggestion for the user and whether the suggestion is shown.
+  void OnGenerateSuggestionsComplete(
+      const FormData& form,
+      const FormFieldData& field,
+      AutofillSuggestionTriggerSource trigger_source,
+      bool show_suggestions,
+      std::vector<Suggestion> suggestions);
+
   // For each submitted field in the |form_structure|, it determines whether
   // |ADDRESS_HOME_STATE| is a possible matching type.
   // This method is intended to run matching type detection on the browser UI
diff --git a/components/autofill/core/browser/profile_token_quality.cc b/components/autofill/core/browser/profile_token_quality.cc
index 0e192ca..48d1439 100644
--- a/components/autofill/core/browser/profile_token_quality.cc
+++ b/components/autofill/core/browser/profile_token_quality.cc
@@ -191,11 +191,16 @@
       // for the profile that was used to autofill the field.
       continue;
     }
-    AutofillProfile* profile = pdm.address_data_manager().GetProfileByGUID(
-        *field->autofill_source_profile_guid());
-    if (profile && profile->token_quality().AddObservationsForFilledForm(
-                       form_structure, form_data, pdm)) {
-      pdm.address_data_manager().UpdateProfile(*profile);
+    const AutofillProfile* profile =
+        pdm.address_data_manager().GetProfileByGUID(
+            *field->autofill_source_profile_guid());
+    if (!profile) {
+      continue;
+    }
+    AutofillProfile updatable_profile = *profile;
+    if (updatable_profile.token_quality().AddObservationsForFilledForm(
+            form_structure, form_data, pdm)) {
+      pdm.address_data_manager().UpdateProfile(updatable_profile);
     }
   }
 }
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_af.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_af.xtb
index cdc42ef..1bc75b1 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_af.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_af.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Beheer hierdie werf se toegang tot jou toestel</translation>
 <translation id="6040143037577758943">Maak toe</translation>
 <translation id="6042308850641462728">Meer</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Jou jongste oortjie</translation>
 <translation id="6064125863973209585">Voltooide aflaaie</translation>
 <translation id="6071501408666570960">Jy kan dalk by hierdie werf afgemeld word</translation>
 <translation id="6120483543004435978">Wanneer dit aan is, kan werwe vra om te weet wanneer jy jou toestel aktief gebruik. Wanneer dit af is, kan werwe nie weet wanneer jy jou toestel aktief gebruik nie.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Kies 'n kontak</translation>
 <translation id="7990211076305263060">Wanneer dit aan is, kan werwe vra om jou mikrofoon te gebruik. Wanneer dit af is, kan werwe nie jou mikrofoon gebruik nie.</translation>
 <translation id="8007176423574883786">Afgeskakel vir hierdie toestel</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Vanaf <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Kon nie aflaai nie</translation>
 <translation id="8042586301629853791">Rangskik volgens:</translation>
 <translation id="8067883171444229417">Speel video</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_am.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_am.xtb
index 62f6cdd..d003a40b 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_am.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_am.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">ይህ ጣቢያ የሚኖረው የመሣሪያዎን መዳረሻ ይቆጣጠሩ</translation>
 <translation id="6040143037577758943">ዝጋ</translation>
 <translation id="6042308850641462728">ተጨማሪ</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> የእርስዎ የመጨረሻ ትር</translation>
 <translation id="6064125863973209585">የተጠናቀቁ ማውረዶች</translation>
 <translation id="6071501408666570960">ከዚህ ጣቢያ ዘግተው እንዲወጡ ሊደረጉ ይችላሉ</translation>
 <translation id="6120483543004435978">ሲበራ፣ ጣቢያዎች መሳሪያዎን በንቃት ሲጠቀሙ ለማወቅ መጠየቅ ይችላሉ። ሲጠፋ፣ ጣቢያዎች መሳሪያዎን በንቃት ሲጠቀሙ ማወቅ አይችሉም።</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">አንድ እውቂያ ይምረጡ</translation>
 <translation id="7990211076305263060">ሲበራ፣ ጣቢያዎች ማይክሮፎንዎን ለመጠቀም ሊጠይቁ ይችላሉ። ሲጠፋ፣ ጣቢያዎች ማይክሮፎንዎን መጠቀም አይችሉም።</translation>
 <translation id="8007176423574883786">ለዚህ መሣሪያ ጠፍቷል</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> ከ<ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">ማውረድ አልተሳካም</translation>
 <translation id="8042586301629853791">ደርድር በ፦</translation>
 <translation id="8067883171444229417">ቪዲዮ አጫውት</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_ar.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_ar.xtb
index 18e005ae..970953c 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_ar.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_ar.xtb
@@ -305,6 +305,7 @@
 <translation id="6015775454662021376">يمكنك التحكّم بإمكانية وصول هذا الموقع إلى جهازك.</translation>
 <translation id="6040143037577758943">إغلاق</translation>
 <translation id="6042308850641462728">عرض المزيد</translation>
+<translation id="6060464773477604108">‫<ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> علامة التبويب الأخيرة</translation>
 <translation id="6064125863973209585">عمليات التنزيل المكتمِلة</translation>
 <translation id="6071501408666570960">قد يتم تسجيل خروجك من هذا الموقع الإلكتروني.</translation>
 <translation id="6120483543004435978">عندما يكون هذا الإعداد مفعَّلاً، يمكن للمواقع الإلكترونية طلب معرفة الأوقات التي تستخدم فيها الجهاز بشكل نشط. وعند إيقافه، لن تتمكّن المواقع الإلكترونية من معرفة تلك الأوقات.</translation>
@@ -426,6 +427,7 @@
 <translation id="7986741934819883144">اختيار جهة اتصال</translation>
 <translation id="7990211076305263060">عندما يكون هذا الإعداد مفعَّلاً، يمكن للمواقع الإلكترونية طلب استخدام الميكروفون. وعند إيقافه، لا يمكن للمواقع الإلكترونية استخدام الميكروفون.</translation>
 <translation id="8007176423574883786">تم إيقافه لهذا الجهاز</translation>
+<translation id="8009579582995973057">‫<ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> من <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">تعذّر التنزيل</translation>
 <translation id="8042586301629853791">الترتيب حسب:</translation>
 <translation id="8067883171444229417">تشغيل الفيديو</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_be.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_be.xtb
index 8924cf35..a36ecf01 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_be.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_be.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Кіруйце доступам гэтага сайта да вашай прылады</translation>
 <translation id="6040143037577758943">Закрыць</translation>
 <translation id="6042308850641462728">Яшчэ</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Ваша апошняя ўкладка</translation>
 <translation id="6064125863973209585">Завершаныя спампоўкі</translation>
 <translation id="6071501408666570960">Вы выйдзеце з уліковага запісу на гэтым сайце</translation>
 <translation id="6120483543004435978">Калі гэты параметр уключаны, сайты могуць запытваць звесткі пра тое, калі вы актыўна карыстаецеся прыладай. Калі параметр выключаны, сайты не могуць атрымліваць доступ да такіх звестак.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Выберыце кантакт</translation>
 <translation id="7990211076305263060">Калі гэты параметр уключаны, сайты могуць запытваць дазвол на выкарыстанне мікрафона. Калі параметр выключаны, сайты не могуць выкарыстоўваць мікрафон.</translation>
 <translation id="8007176423574883786">Выключана для гэтай прылады</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Крыніца: <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Збой спампоўкі</translation>
 <translation id="8042586301629853791">Сартаваць па:</translation>
 <translation id="8067883171444229417">Прайграць відэа</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_bn.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_bn.xtb
index 6ec9d72..a212245 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_bn.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_bn.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">আপনার ডিভাইসে এই সাইটের অ্যাক্সেস নিয়ন্ত্রণ করুন</translation>
 <translation id="6040143037577758943">বন্ধ</translation>
 <translation id="6042308850641462728">আরও</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> আপনার শেষ ট্যাব</translation>
 <translation id="6064125863973209585">সম্পূর্ণ হয়ে যাওয়া ডাউনলোড</translation>
 <translation id="6071501408666570960">আপনি হয়ত এই সাইট থেকে সাইন-আউট হয়ে যাবেন</translation>
 <translation id="6120483543004435978">চালু থাকলে, সাইট আপনি সক্রিয়ভাবে নিজের ডিভাইস কখন ব্যবহার করেন তা জানতে চাইতে পারে। চালু থাকলে, সাইট আপনি সক্রিয়ভাবে নিজের ডিভাইস কখন ব্যবহার করেন তা জানতে পারে না।</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">একটি পরিচিতি বেছে নিন</translation>
 <translation id="7990211076305263060">চালু থাকলে, সাইট আপনার মাইক্রোফোন ব্যবহার করার জন্য অনুমতি চাইতে পারে। চালু থাকলে, সাইট আপনার মাইক্রোফোন ব্যবহার করার করতে পারে না।</translation>
 <translation id="8007176423574883786">এই ডিভাইসের জন্য বন্ধ করা আছে</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" /> থেকে</translation>
 <translation id="802154636333426148">ডাউনলোড করা যায়নি</translation>
 <translation id="8042586301629853791">এটি অনুযায়ী সাজান:</translation>
 <translation id="8067883171444229417">ভিডিও চালানোর বোতাম</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_de.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_de.xtb
index dcf5dd8b..7ca1017e 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_de.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_de.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Zugriff dieser Website auf dein Gerät steuern</translation>
 <translation id="6040143037577758943">Schließen</translation>
 <translation id="6042308850641462728">Mehr</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> dein letzter Tab</translation>
 <translation id="6064125863973209585">Abgeschlossene Downloads</translation>
 <translation id="6071501408666570960">Du wirst möglicherweise von dieser Website abgemeldet</translation>
 <translation id="6120483543004435978">Wenn dieser Schalter aktiviert ist, können Websites anfragen, ob sie ermitteln dürfen, wann du dein Gerät aktiv nutzt. Wenn er deaktiviert ist, können Websites nicht ermitteln, wann du dein Gerät aktiv nutzt.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Kontakt auswählen</translation>
 <translation id="7990211076305263060">Wenn dieser Schalter aktiviert ist, können Websites anfragen, ob sie dein Mikrofon verwenden dürfen. Wenn er deaktiviert ist, können Websites dein Mikrofon nicht verwenden.</translation>
 <translation id="8007176423574883786">Für dieses Gerät deaktiviert</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> von <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Downloadfehler</translation>
 <translation id="8042586301629853791">Sortieren nach:</translation>
 <translation id="8067883171444229417">Video ansehen</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_el.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_el.xtb
index 10e8a5a..5054ef7 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_el.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_el.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Έλεγχος της πρόσβασης αυτού του ιστοτόπου στη συσκευή σας</translation>
 <translation id="6040143037577758943">Κλείσιμο</translation>
 <translation id="6042308850641462728">Περισσότερα</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Η τελευταία καρτέλα σας</translation>
 <translation id="6064125863973209585">Ολοκληρωμένες λήψεις</translation>
 <translation id="6071501408666570960">Ενδέχεται να αποσυνδεθείτε από αυτόν τον ιστότοπο</translation>
 <translation id="6120483543004435978">Όταν είναι ενεργοποιημένη αυτή η επιλογή, οι ιστότοποι μπορούν να σας ζητήσουν να γνωρίζουν πότε χρησιμοποιείτε ενεργά τη συσκευή σας. Όταν είναι απενεργοποιημένη αυτή η επιλογή, οι ιστότοποι δεν μπορούν να γνωρίζουν πότε χρησιμοποιείτε ενεργά τη συσκευή σας.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Επιλογή επαφής</translation>
 <translation id="7990211076305263060">Όταν είναι ενεργοποιημένη αυτή η επιλογή, οι ιστότοποι μπορούν να ζητήσουν να χρησιμοποιήσουν το μικρόφωνό σας. Όταν είναι απενεργοποιημένη αυτή η επιλογή, οι ιστότοποι δεν μπορούν να χρησιμοποιήσουν το μικρόφωνό σας.</translation>
 <translation id="8007176423574883786">Έχει απενεργοποιηθεί για αυτήν τη συσκευή</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Από <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Η λήψη απέτυχε</translation>
 <translation id="8042586301629853791">Ταξινόμηση κατά:</translation>
 <translation id="8067883171444229417">Αναπαραγωγή βίντεο</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_en-GB.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_en-GB.xtb
index 27efb35c..993d7008 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_en-GB.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_en-GB.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Control this site's access to your device</translation>
 <translation id="6040143037577758943">Close</translation>
 <translation id="6042308850641462728">More</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Your last tab</translation>
 <translation id="6064125863973209585">Completed downloads</translation>
 <translation id="6071501408666570960">You may be signed out of this site</translation>
 <translation id="6120483543004435978">When on, sites can ask to know when you're actively using your device. When off, sites can't know when you're actively using your device.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Select a contact</translation>
 <translation id="7990211076305263060">When on, sites can ask to use your microphone. When off, sites can't use your microphone.</translation>
 <translation id="8007176423574883786">Turned off for this device</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> From <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Download failed</translation>
 <translation id="8042586301629853791">Sort by:</translation>
 <translation id="8067883171444229417">Play video</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_et.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_et.xtb
index c65f470..a7d8f3e 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_et.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_et.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Selle saidi juurdepääsu muutmine teie seadmele</translation>
 <translation id="6040143037577758943">Sulge</translation>
 <translation id="6042308850641462728">Rohkem</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Viimane vaheleht</translation>
 <translation id="6064125863973209585">Lõpetatud allalaadimised</translation>
 <translation id="6071501408666570960">Teid võidakse sellel saidil välja logida</translation>
 <translation id="6120483543004435978">Kui see on sisse lülitatud, võivad saidid küsida luba selle teadmiseks, millal seadet aktiivselt kasutate. Kui see on välja lülitatud, ei saa saidid teada, millal seadet aktiivselt kasutate.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Kontakti valimine</translation>
 <translation id="7990211076305263060">Kui see on sisse lülitatud, võivad saidid küsida luba teie mikrofoni kasutamiseks. Kui see on välja lülitatud, ei saa saidid teie mikrofoni kasutada.</translation>
 <translation id="8007176423574883786">Selle seadme puhul on välja lülitatud</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Seadmest <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Allalaadimine ebaõnnestus</translation>
 <translation id="8042586301629853791">Sortimisalus:</translation>
 <translation id="8067883171444229417">Esita video</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_fa.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_fa.xtb
index 3e06270..e6364ae8 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_fa.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_fa.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">کنترل کردن دسترسی این سایت به دستگاه</translation>
 <translation id="6040143037577758943">بستن</translation>
 <translation id="6042308850641462728">بیشتر</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> آخرین برگه شما</translation>
 <translation id="6064125863973209585">بارگیری‌های کامل‌شده</translation>
 <translation id="6071501408666570960">ممکن است از سیستم این سایت خارج شده باشید</translation>
 <translation id="6120483543004435978">هرگاه روشن باشد، سایت‌ها می‌توانند مطلع شدن از مواقعی را که فعالانه از دستگاهتان استفاده می‌کنید درخواست کنند. هرگاه خاموش باشد، سایت‌ها نمی‌توانند بدانند چه مواقعی فعالانه از دستگاهتان استفاده می‌کنید.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">مخاطبی انتخاب کنید</translation>
 <translation id="7990211076305263060">هرگاه روشن باشد، سایت‌ها می‌توانند استفاده از میکروفون را درخواست کنند. هرگاه خاموش باشد، سایت‌ها نمی‌توانند از میکروفون استفاده کنند.</translation>
 <translation id="8007176423574883786">برای این دستگاه غیرفعال شد</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> از <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">بارگیری نشد</translation>
 <translation id="8042586301629853791">مرتب‌سازی براساس:</translation>
 <translation id="8067883171444229417">پخش ویدیو</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_fi.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_fi.xtb
index 26341bca..b5b12c9 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_fi.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_fi.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Valitse, mitä tämä sivusto saa tehdä laitteellasi</translation>
 <translation id="6040143037577758943">Sulje</translation>
 <translation id="6042308850641462728">Lisää</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Viimeisin välilehti</translation>
 <translation id="6064125863973209585">Valmiit lataukset</translation>
 <translation id="6071501408666570960">Sinut voidaan kirjata ulos tältä sivustolta</translation>
 <translation id="6120483543004435978">Kun tämä on päällä, sivustot voivat pyytää lupaa nähdä, milloin käytät laitetta aktiivisesti. Kun tämä on pois päältä, sivustot eivät saa tietää, milloin käytät laitetta aktiivisesti.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Valitse yhteystieto</translation>
 <translation id="7990211076305263060">Kun tämä on päällä, sivustot voivat pyytää lupaa mikrofonin käyttöön. Kun tämä on pois päältä, sivustot eivät voi käyttää mikrofonia.</translation>
 <translation id="8007176423574883786">Ei käytössä tällä laitteella</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Lähteestä <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Lataus epäonnistui.</translation>
 <translation id="8042586301629853791">Lajitteluperuste:</translation>
 <translation id="8067883171444229417">Toista video</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_gl.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_gl.xtb
index 573f4500..5c0450e 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_gl.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_gl.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Controla o acceso deste sitio ao dispositivo</translation>
 <translation id="6040143037577758943">Pechar</translation>
 <translation id="6042308850641462728">Máis</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> A túa última pestana</translation>
 <translation id="6064125863973209585">Descargas completadas</translation>
 <translation id="6071501408666570960">É posible que se che peche a sesión neste sitio</translation>
 <translation id="6120483543004435978">Cando esta opción está activada, os sitios poden pedirche permiso para saber se estás utilizando o dispositivo de maneira activa. Cando esta opción está desactivada, os sitios non poden saber se estás utilizando o dispositivo de maneira activa.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Seleccionar contacto</translation>
 <translation id="7990211076305263060">Cando esta opción está activada, os sitios poden pedirche permiso para utilizar o micrófono. Cando esta opción está desactivada, os sitios non poden utilizar o micrófono.</translation>
 <translation id="8007176423574883786">Desactivada para este dispositivo</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> De <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Produciuse un erro na descarga</translation>
 <translation id="8042586301629853791">Ordenar por:</translation>
 <translation id="8067883171444229417">Reproducir vídeo</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_gu.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_gu.xtb
index 1b8c67c..b4039a02 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_gu.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_gu.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">આ સાઇટના તમારા ડિવાઇસના ઍક્સેસનું નિયંત્રણ કરો</translation>
 <translation id="6040143037577758943">બંધ કરો</translation>
 <translation id="6042308850641462728">વધુ</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> તમારું છેલ્લું ટૅબ</translation>
 <translation id="6064125863973209585">પૂર્ણ થયેલા ડાઉનલોડ</translation>
 <translation id="6071501408666570960">તમને આ સાઇટમાંથી સાઇન આઉટ કરવામાં આવી શકે છે</translation>
 <translation id="6120483543004435978">ચાલુ હોય ત્યારે, તમે સક્રિય રીતે ક્યારે તમારા ડિવાઇસનો ઉપયોગ કરો છે તે જાણવા માટે સાઇટ પૂછી શકે છે. બંધ હોય ત્યારે, તમે સક્રિય રીતે ક્યારે તમારા ડિવાઇસનો ઉપયોગ કરો છે તે જાણી શકતી નથી.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">સંપર્ક પસંદ કરો</translation>
 <translation id="7990211076305263060">ચાલુ હોય ત્યારે, સાઇટ તમારા માઇક્રોફોનનો ઉપયોગ કરવાનું પૂછી શકે છે. બંધ હોય ત્યારે, સાઇટ તમારા માઇક્રોફોનનો ઉપયોગ કરી શકતી નથી.</translation>
 <translation id="8007176423574883786">આ ઉપકરણ માટે બંધ કર્યું</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" />માંથી</translation>
 <translation id="802154636333426148">ડાઉનલોડ નિષ્ફળ થયું</translation>
 <translation id="8042586301629853791">આ પ્રમાણે સૉર્ટ કરો:</translation>
 <translation id="8067883171444229417">વીડિયો ચલાવો</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_hu.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_hu.xtb
index 4b4f5a37..83438e2 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_hu.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_hu.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">A webhelynek az eszközhöz való hozzáférésének vezérlése</translation>
 <translation id="6040143037577758943">Bezárás</translation>
 <translation id="6042308850641462728">Továbbiak</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> A legutóbbi lap</translation>
 <translation id="6064125863973209585">Befejezett letöltések</translation>
 <translation id="6071501408666570960">Előfordulhat, hogy a rendszer kijelentkezteti erről a webhelyről</translation>
 <translation id="6120483543004435978">Ha be van kapcsolva, a webhelyek lekérdezhetik, hogy Ön mikor használja aktívan az eszközét. Ha ki van kapcsolva, a webhelyek nem tudhatják, hogy Ön mikor használja aktívan az eszközt.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Válasszon ki egy névjegyet</translation>
 <translation id="7990211076305263060">Ha be van kapcsolva, a webhelyek hozzáférést kérhetnek az Ön mikrofonjához. Ha ki van kapcsolva, a webhelyek nem használhatják a mikrofont.</translation>
 <translation id="8007176423574883786">Kikapcsolva ezen az eszközön</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Innen: <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Nem sikerült a letöltés</translation>
 <translation id="8042586301629853791">Rendezés:</translation>
 <translation id="8067883171444229417">Videó lejátszása</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_id.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_id.xtb
index cc686a3..1e24c95 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_id.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_id.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Mengontrol akses situs ini ke perangkat Anda</translation>
 <translation id="6040143037577758943">Tutup</translation>
 <translation id="6042308850641462728">Lainnya</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Tab terakhir Anda</translation>
 <translation id="6064125863973209585">Download yang selesai</translation>
 <translation id="6071501408666570960">Anda mungkin akan logout dari situs ini</translation>
 <translation id="6120483543004435978">Jika diaktifkan, situs dapat meminta untuk mengetahui saat Anda aktif menggunakan perangkat. Jika dinonaktifkan, situs tidak dapat mengetahui saat Anda aktif menggunakan perangkat.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Pilih kontak</translation>
 <translation id="7990211076305263060">Jika diaktifkan, situs dapat meminta untuk menggunakan mikrofon Anda. Jika dinonaktifkan, situs tidak dapat menggunakan mikrofon Anda.</translation>
 <translation id="8007176423574883786">Dinonaktifkan untuk perangkat ini</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Dari <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Download gagal</translation>
 <translation id="8042586301629853791">Urutkan menurut:</translation>
 <translation id="8067883171444229417">Putar video</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_it.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_it.xtb
index 05fc207..ef4eb7f 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_it.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_it.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Controlla l'accesso di questo sito al tuo dispositivo</translation>
 <translation id="6040143037577758943">Chiudi</translation>
 <translation id="6042308850641462728">Altro</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Ultima scheda</translation>
 <translation id="6064125863973209585">Download completati</translation>
 <translation id="6071501408666570960">Il tuo account potrebbe essere disconnesso da questo sito</translation>
 <translation id="6120483543004435978">Quando l'opzione è attiva, i siti possono chiederti di sapere quando stai utilizzando attivamente il tuo dispositivo. Quando l'opzione è disattivata, i siti non possono sapere quando stai utilizzando attivamente il tuo dispositivo.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Seleziona un contatto</translation>
 <translation id="7990211076305263060">Quando l'opzione è attiva, i siti potrebbero chiedere l'utilizzo del microfono. Quando l'opzione è disattivata, i siti non possono utilizzare il microfono.</translation>
 <translation id="8007176423574883786">Disattivata per questo dispositivo</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Da <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Download non riuscito</translation>
 <translation id="8042586301629853791">Ordina per:</translation>
 <translation id="8067883171444229417">Guarda il video</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_ja.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_ja.xtb
index 9b35810..49ad383 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_ja.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_ja.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">このサイトによるデバイスへのアクセスを管理します</translation>
 <translation id="6040143037577758943">閉じる</translation>
 <translation id="6042308850641462728">もっと見る</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> 最後のタブ</translation>
 <translation id="6064125863973209585">完了したダウンロード</translation>
 <translation id="6071501408666570960">このサイトからログアウトされる可能性があります</translation>
 <translation id="6120483543004435978">オンにすると、サイトはデバイスのアクティブ状態の検出を要求できます。オフにすると、サイトはデバイスのアクティブ状態を検出できません。</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">連絡先の選択</translation>
 <translation id="7990211076305263060">オンにすると、サイトはマイクの使用を要求できます。オフにすると、サイトはマイクを使用できません。</translation>
 <translation id="8007176423574883786">このデバイスに対して無効</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" /> から</translation>
 <translation id="802154636333426148">ダウンロード エラー</translation>
 <translation id="8042586301629853791">並べ替え:</translation>
 <translation id="8067883171444229417">動画を再生します</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_ka.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_ka.xtb
index 44a38f32..19a3203 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_ka.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_ka.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">გაანკონტროლეთ ამ საიტის თქვენს მოწყობილობაზე წვდომა</translation>
 <translation id="6040143037577758943">დახურვა</translation>
 <translation id="6042308850641462728">სხვა</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> თქვენი ბოლო ჩანართი</translation>
 <translation id="6064125863973209585">დასრულებული ჩამოტვირთვები</translation>
 <translation id="6071501408666570960">ამ საიტზე, შესაძლოა, სისტემიდან გამოხვიდეთ</translation>
 <translation id="6120483543004435978">ჩართვის შემთხვევაში საიტებს შეეძლება ნებართვის მოთხოვნა იმის შესატყობად, თუ როდის იყენებთ აქტიურად თქვენს მოწყობილობას. გამორთვის შემთხვევაში საიტებს არ ეცოდინება, თუ როდის იყენებთ აქტიურად თქვენს მოწყობილობას.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">აირჩიეთ კონტაქტი</translation>
 <translation id="7990211076305263060">ჩართვის შემთხვევაში საიტებს შეეძლება თქვენი მიკროფონის გამოყენების თხოვნა. გამორთვის შემთხვევაში საიტებს არ შეეძლება თქვენი მიკროფონის გამოყენება.</translation>
 <translation id="8007176423574883786">გამორთულია ამ მოწყობილობისთვის</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" />-დან</translation>
 <translation id="802154636333426148">ჩამოტვირთვა ვერ მოხერხდა</translation>
 <translation id="8042586301629853791">დალაგება კრიტერიუმით:</translation>
 <translation id="8067883171444229417">ვიდეოს დაკვრა</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_kk.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_kk.xtb
index 41dd235..2e188e9 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_kk.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_kk.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Осы сайттың құрылғыңызға кіруін басқарыңыз.</translation>
 <translation id="6040143037577758943">Жабу</translation>
 <translation id="6042308850641462728">Жаю</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Соңғы қойындыңыз</translation>
 <translation id="6064125863973209585">Жүктеп алынғандар</translation>
 <translation id="6071501408666570960">Сіз бұл сайтта аккаунттан шығарылуыңыз мүмкін.</translation>
 <translation id="6120483543004435978">Қосылса, сайттар құрылғыны белсенді пайдаланатын уақытыңызды білуге рұқсат сұрай алады. Өшірілсе, біле алмайды.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Контактіні таңдау</translation>
 <translation id="7990211076305263060">Қосылса, сайттар микрофонды пайдалануға рұқсат сұрай алады. Өшірілсе, пайдалана алмайды.</translation>
 <translation id="8007176423574883786">Осы құрылғы үшін өшірілді</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" /> құрылғысынан</translation>
 <translation id="802154636333426148">Жүктеу сәтсіз аяқталды</translation>
 <translation id="8042586301629853791">Сұрыптау шарты:</translation>
 <translation id="8067883171444229417">Бейнені ойнату</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_kn.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_kn.xtb
index 46c2196..8b5aa46 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_kn.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_kn.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">ನಿಮ್ಮ ಸಾಧನಕ್ಕೆ ಈ ಸೈಟ್‌ನ ಪ್ರವೇಶವನ್ನು ನಿಯಂತ್ರಿಸಿ</translation>
 <translation id="6040143037577758943">ಮುಚ್ಚಿರಿ</translation>
 <translation id="6042308850641462728">ಇನ್ನಷ್ಟು</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> ನಿಮ್ಮ ಕೊನೆಯ ಟ್ಯಾಬ್</translation>
 <translation id="6064125863973209585">ಪೂರ್ಣಗೊಳಿಸಿದ ಡೌನ್‌ಲೋಡ್‌ಗಳು</translation>
 <translation id="6071501408666570960">ನೀವು ಈ ಸೈಟ್‌ನಿಂದ ಸೈನ್ ಔಟ್ ಆಗಿರಬಹುದು</translation>
 <translation id="6120483543004435978">ಆನ್ ಆಗಿರುವಾಗ, ಸೈಟ್‌ಗಳು ನಿಮ್ಮ ಸಾಧನವನ್ನು ನೀವು ಯಾವಾಗ ಸಕ್ರಿಯವಾಗಿ ಬಳಸುತ್ತಿರುವಿರಿ ಎಂಬುದನ್ನು ತಿಳಿದುಕೊಳ್ಳಲು ಕೇಳಬಹುದು. ಆಫ್ ಆಗಿರುವಾಗ, ಸೈಟ್‌ಗಳಿಗೆ ನಿಮ್ಮ ಸಾಧನವನ್ನು ನೀವು ಯಾವಾಗ ಸಕ್ರಿಯವಾಗಿ ಬಳಸುತ್ತಿರುವಿರಿ ಎಂಬುದನ್ನು ತಿಳಿದುಕೊಳ್ಳಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">ಸಂಪರ್ಕವನ್ನು ಆಯ್ಕೆಮಾಡಿ</translation>
 <translation id="7990211076305263060">ಆನ್ ಆಗಿರುವಾಗ, ಸೈಟ್‌ಗಳು ನಿಮ್ಮ ಮೈಕ್ರೊಫೋನ್ ಅನ್ನು ಬಳಸಲು ಕೇಳಬಹುದು. ಆಫ್ ಆಗಿರುವಾಗ, ಸೈಟ್‌ಗಳಿಗೆ ನಿಮ್ಮ ಮೈಕ್ರೊಫೋನ್ ಅನ್ನು ಬಳಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ.</translation>
 <translation id="8007176423574883786">ಈ ಸಾಧನಕ್ಕೆ ಆಫ್ ಮಾಡಲಾಗಿದೆ</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" /> ನಿಂದ</translation>
 <translation id="802154636333426148">ಡೌನ್‌ಲೋಡ್‌ ವಿಫಲಗೊಂಡಿದೆ</translation>
 <translation id="8042586301629853791">ಈ ಪ್ರಕಾರ ವಿಂಗಡಿಸಿ:</translation>
 <translation id="8067883171444229417">ವೀಡಿಯೊ ಪ್ಲೇ ಮಾಡಿ</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_ko.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_ko.xtb
index acfbacaf..cdbf5c6 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_ko.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_ko.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">기기에 대한 이 사이트의 액세스를 제어합니다.</translation>
 <translation id="6040143037577758943">닫기</translation>
 <translation id="6042308850641462728">자세히</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> 마지막 탭</translation>
 <translation id="6064125863973209585">다운로드 완료</translation>
 <translation id="6071501408666570960">이 사이트에서 로그아웃될 수 있습니다</translation>
 <translation id="6120483543004435978">사용 설정하면 사이트에서 사용자가 현재 기기를 사용 중인지에 관한 확인을 요청할 수 있습니다. 사용 중지하면 사이트에서 사용자가 현재 기기를 사용 중인지 확인할 수 없습니다.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">연락처 선택</translation>
 <translation id="7990211076305263060">사용 설정하면 사이트에서 마이크 사용을 요청할 수 있습니다. 사용 중지하면 사이트에서 마이크를 사용할 수 없습니다.</translation>
 <translation id="8007176423574883786">기기에 대해 사용 중지됨</translation>
+<translation id="8009579582995973057"><ph name="FROM_DEVICE" />의 <ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /></translation>
 <translation id="802154636333426148">다운로드 실패</translation>
 <translation id="8042586301629853791">정렬 기준:</translation>
 <translation id="8067883171444229417">동영상 재생</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_ky.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_ky.xtb
index 99e03cc..ebf09d33 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_ky.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_ky.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Бул сайттын түзмөгүңүзгө кирүү мүмкүнчүлүгүн көзөмөлдөңүз</translation>
 <translation id="6040143037577758943">Жабуу</translation>
 <translation id="6042308850641462728">Дагы</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Акыркы өтмөгүңүз</translation>
 <translation id="6064125863973209585">Жүктөлүп алынгандар</translation>
 <translation id="6071501408666570960">Бул сайттан чыгарылышыңыз мүмкүн</translation>
 <translation id="6120483543004435978">Бул параметр күйүп турганда, сайттар түзмөгүңүздү көбүрөөк колдонгон убакыт тууралуу маалымат сурашы мүмкүн. Бул параметр өчүп турганда, сайттар түзмөгүңүздү көбүрөөк колдонгон убакыт тууралуу биле алышпайт.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Байланышты тандоо</translation>
 <translation id="7990211076305263060">Бул параметр күйүп турганда, сайттар микрофонду колдонууга уруксат сурашы мүмкүн. Бул параметр өчүп турганда, сайттар микрофонуңузду колдоно алышпайт.</translation>
 <translation id="8007176423574883786">Бул түзмөк үчүн өчүрүлгөн</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Кимден: <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Жүктөлүп алынбай калды</translation>
 <translation id="8042586301629853791">Төмөнкү боюнча иргөө:</translation>
 <translation id="8067883171444229417">Видеону ойнотуу</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_lt.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_lt.xtb
index c6066d2..807af89 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_lt.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_lt.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Valdykite šios svetainės prieigą prie jūsų įrenginio</translation>
 <translation id="6040143037577758943">Uždaryti</translation>
 <translation id="6042308850641462728">Daugiau</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Jūsų paskutinis skirtukas</translation>
 <translation id="6064125863973209585">Baigti atsisiuntimai</translation>
 <translation id="6071501408666570960">Galite būti atjungti šioje svetainėje</translation>
 <translation id="6120483543004435978">Įjungus svetainėse gali būti prašoma leisti sužinoti, kada aktyviai naudojate įrenginį. Išjungus svetainės nežino, kada aktyviai naudojate įrenginį.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Pasirinkite kontaktą</translation>
 <translation id="7990211076305263060">Įjungus svetainėse gali būti prašoma naudoti mikrofoną. Išjungus svetainės negali naudoti mikrofono.</translation>
 <translation id="8007176423574883786">Išjungta šiame įrenginyje</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Iš „<ph name="FROM_DEVICE" />“</translation>
 <translation id="802154636333426148">Įvyko atsisiuntimo klaida</translation>
 <translation id="8042586301629853791">Rūšiuoti pagal:</translation>
 <translation id="8067883171444229417">Leisti vaizdo įrašą</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_lv.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_lv.xtb
index e9360d7c..f27e49b 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_lv.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_lv.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Pārvaldiet šīs vietnes piekļuvi jūsu ierīcei</translation>
 <translation id="6040143037577758943">Aizvērt</translation>
 <translation id="6042308850641462728">Vairāk</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Jūsu pēdējā izmantotā cilne</translation>
 <translation id="6064125863973209585">Pabeigtās lejupielādes</translation>
 <translation id="6071501408666570960">Iespējams, automātiski izrakstīsieties no šīs vietnes.</translation>
 <translation id="6120483543004435978">Kad šis slēdzis ir ieslēgts, vietnes var pieprasīt informāciju par to, kad jūs aktīvi lietojat savu ierīci. Kad šis slēdzis ir izslēgts, vietnes nevar iegūt informāciju par to, kad jūs aktīvi lietojat savu ierīci.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Kontaktpersonas atlase</translation>
 <translation id="7990211076305263060">Kad šis slēdzis ir ieslēgts, vietnes var pieprasīt atļauju izmantot jūsu mikrofonu. Kad šis slēdzis ir izslēgts, vietnes nevar izmantot mikrofonu.</translation>
 <translation id="8007176423574883786">Izslēgts šai ierīcei</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> No <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Lejupielāde neizdevās</translation>
 <translation id="8042586301629853791">Kārtot pēc:</translation>
 <translation id="8067883171444229417">Atskaņot videoklipu</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_mn.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_mn.xtb
index 5af73327..0eddacc 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_mn.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_mn.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Таны төхөөрөмж рүү хандах энэ сайтын хандалтыг удирдах</translation>
 <translation id="6040143037577758943">Хаах</translation>
 <translation id="6042308850641462728">Илүү их</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Таны сүүлийн таб</translation>
 <translation id="6064125863973209585">Татаж дууссан файл</translation>
 <translation id="6071501408666570960">Таныг энэ сайтаас гаргаж магадгүй</translation>
 <translation id="6120483543004435978">Асаалттай үед сайтууд таныг төхөөрөмжөө хэзээ идэвхтэй ашиглаж буйг мэдэхийг хүсэх боломжтой. Унтраалттай үед сайтууд таныг төхөөрөмжөө хэзээ идэвхтэй ашиглаж буйг мэдэх боломжгүй.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Харилцагч сонгох</translation>
 <translation id="7990211076305263060">Асаалттай үед сайтууд таны микрофоныг ашиглахыг хүсэх боломжтой. Унтраалттай үед сайтууд таны микрофоныг ашиглах боломжгүй.</translation>
 <translation id="8007176423574883786">Энэ төхөөрөмж дээр унтраастай байна</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" />-с</translation>
 <translation id="802154636333426148">Татаж чадсангүй</translation>
 <translation id="8042586301629853791">Дараахаар эрэмбэлэх:</translation>
 <translation id="8067883171444229417">Видео тоглуулах</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_ne.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_ne.xtb
index 281597a..5a2c775 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_ne.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_ne.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">यो साइटले तपाईंको यन्त्र प्रयोग गर्न पाउने कि नपाउने भन्ने कुरा नियन्त्रण गर्नुहोस्</translation>
 <translation id="6040143037577758943">बन्द गर्नुहोस्</translation>
 <translation id="6042308850641462728">थप</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> तपाईंको अन्तिम ट्याब</translation>
 <translation id="6064125863973209585">पूरा भएका डाउनलोडहरू</translation>
 <translation id="6071501408666570960">तपाईंलाई यो साइटबाट साइन आउट गरिन सक्छ</translation>
 <translation id="6120483543004435978">यो सेटिङ अन भएका बेला साइटहरूले तपाईं आफ्नो डिभाइस चलाउँदै हुनुहुन्छ कि हुनुहुन्न भन्ने कुराको जानकारी माग्न सक्छन्। यो सेटिङ अफ भएका बेला साइटहरूले तपाईं आफ्नो डिभाइस चलाउँदै हुनुहुन्छ कि हुनुहुन्न भन्ने कुरा थाहा पाउन सक्दैनन्।</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">कुनै सम्पर्क ठेगाना चयन गर्नुहोस्</translation>
 <translation id="7990211076305263060">यो सेटिङ अन भएका बेला साइटहरूले तपाईंको माइक्रोफोन प्रयोग गर्ने अनुमति माग्न सक्छन्। यो सेटिङ अफ भएका बेला साइटहरूले तपाईंको माइक्रोफोन प्रयोग गर्न सक्दैनन्।</translation>
 <translation id="8007176423574883786">यस डिभाइसका लागि बन्द गरियो।</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" /> बाट प्राप्त</translation>
 <translation id="802154636333426148">डाउनलोड गर्न सकिएन</translation>
 <translation id="8042586301629853791">यसअनुसार क्रमबद्ध गर्नुहोस्:</translation>
 <translation id="8067883171444229417">भिडियो प्ले गर्नुहोस्</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_no.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_no.xtb
index c9c42af7..d866a9b 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_no.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_no.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Kontroller dette nettstedets tilgang til enheten din</translation>
 <translation id="6040143037577758943">Lukk</translation>
 <translation id="6042308850641462728">Mer</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Den siste fanen du brukte</translation>
 <translation id="6064125863973209585">Fullførte nedlastinger</translation>
 <translation id="6071501408666570960">Du kan være logget av dette nettstedet</translation>
 <translation id="6120483543004435978">Når dette er på, kan nettsteder be om å få vite når du bruker enheten aktivt. Når dette er av, kan ikke nettsteder vite når du bruker enheten aktivt.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Velg en kontakt</translation>
 <translation id="7990211076305263060">Når dette er på, kan nettsteder be om å få bruke mikrofonen din. Når dette er av, kan ikke nettsteder bruke mikrofonen din.</translation>
 <translation id="8007176423574883786">Slått av for denne enheten</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Fra <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Nedlastingen mislyktes</translation>
 <translation id="8042586301629853791">Sorter etter:</translation>
 <translation id="8067883171444229417">Spill av videoen</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_pt-PT.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_pt-PT.xtb
index 2519fca..62a2f42 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_pt-PT.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_pt-PT.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Controle o acesso deste site ao seu dispositivo.</translation>
 <translation id="6040143037577758943">Fechar</translation>
 <translation id="6042308850641462728">Mais</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> O seu último separador</translation>
 <translation id="6064125863973209585">Transferências concluídas</translation>
 <translation id="6071501408666570960">A sua sessão neste site pode ser terminada</translation>
 <translation id="6120483543004435978">Quando a opção está ativada, os sites podem pedir para saber quando está a usar ativamente o dispositivo. Quando esta opção está desativada, os sites não sabem quando está a usar ativamente o dispositivo.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Selecionar um contacto</translation>
 <translation id="7990211076305263060">Quando esta opção está ativada, os sites podem pedir para usar o microfone. Quando esta opção está desativada, os sites não podem usar o microfone.</translation>
 <translation id="8007176423574883786">Desativada para este dispositivo</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> De <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Falha ao transferir</translation>
 <translation id="8042586301629853791">Ordenar por:</translation>
 <translation id="8067883171444229417">Ver vídeo</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_ro.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_ro.xtb
index f1ce173..3fae167f 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_ro.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_ro.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Gestionează accesul acestui site la dispozitivul tău</translation>
 <translation id="6040143037577758943">Închide</translation>
 <translation id="6042308850641462728">Mai multe</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Ultima filă</translation>
 <translation id="6064125863973209585">Descărcări finalizate</translation>
 <translation id="6071501408666570960">Este posibil să te fi deconectat de pe acest site</translation>
 <translation id="6120483543004435978">Când opțiunea este activată, site-urile pot solicita permisiunea de a afla când folosești activ dispozitivul. Când opțiunea este dezactivată, site-urile nu pot afla când folosești activ dispozitivul.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Selectează o persoană de contact</translation>
 <translation id="7990211076305263060">Când opțiunea este activată, site-urile pot solicita permisiunea de a folosi microfonul. Când opțiunea este dezactivată, site-urile nu pot folosi microfonul.</translation>
 <translation id="8007176423574883786">Dezactivată pentru acest dispozitiv</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Din <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Descărcarea nu a reușit</translation>
 <translation id="8042586301629853791">Sortează după:</translation>
 <translation id="8067883171444229417">Redă videoclipul</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_si.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_si.xtb
index 428f7c09..d573d43 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_si.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_si.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">ඔබගේ උපාංගයට මෙම අඩවියෙහි ප්‍රවේශය පාලනය කරන්න</translation>
 <translation id="6040143037577758943">වසන්න</translation>
 <translation id="6042308850641462728">වැඩිදුර</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> ඔබේ අවසාන පටිත්ත</translation>
 <translation id="6064125863973209585">සම්පූර්ණ කළ බාගැනීම්</translation>
 <translation id="6071501408666570960">ඔබ මෙම අඩවියෙන් වරනු ලැබේවි</translation>
 <translation id="6120483543004435978">සක්‍රීය වූ විට, අඩවිවලට ඔබ ඔබේ උපාංගය ක්‍රියාකාරීව භාවිත කරන අවස්ථාව දැන ගැනීමට ඉල්ලිය හැක. අක්‍රිය වූ විට, අඩවිවලට ඔබ ඔබේ උපාංගය ක්‍රියාකාරීම භාවිත කරන අවස්ථාව දැන ගත නොහැක.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">සම්බන්ධතාවක් තෝරාගන්න</translation>
 <translation id="7990211076305263060">සක්‍රීය වූ විට, අඩවිවලට ඔබේ මයික්‍රොෆෝනය භාවිත කිරීමට ඉල්ලිය හැක. අක්‍රිය වූ විට, අඩවිවලට ඔබේ මයික්‍රොෆෝනය භාවිත කළ නොහැක.</translation>
 <translation id="8007176423574883786">මෙම උපාංගය සඳහා ක්‍රියාවිරහිත කරන ලදී.</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" /> වෙතින්</translation>
 <translation id="802154636333426148">බාගැනීම අසමත් විය</translation>
 <translation id="8042586301629853791">අනුපිළිවෙළට සකසන්න:</translation>
 <translation id="8067883171444229417">වීඩියෝව ධාවන කරන්න</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_sk.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_sk.xtb
index 3481bac..a0184a57 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_sk.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_sk.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Ovládajte prístup tohto webu do vášho zariadenia</translation>
 <translation id="6040143037577758943">Zavrieť</translation>
 <translation id="6042308850641462728">Viac</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Vaša posledná karta</translation>
 <translation id="6064125863973209585">Sťahovanie bolo dokončené</translation>
 <translation id="6071501408666570960">Môžeme dôjsť k vášmu odhláseniu z tohto webu</translation>
 <translation id="6120483543004435978">Keď je táto možnosť zapnutá, weby môžu žiadať o povolenie zistiť, kedy aktívne používate zariadenie. Keď je táto možnosť vypnutá, weby nemôžu zistiť, kedy aktívne používate zariadenie.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Výber kontaktu</translation>
 <translation id="7990211076305263060">Keď je táto možnosť zapnutá, weby môžu žiadať o povolenie používať váš mikrofón. Keď je táto možnosť vypnutá, weby nemôžu používať váš mikrofón.</translation>
 <translation id="8007176423574883786">Vypnuté v tomto zariadení</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> zo zariadenia <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Stiahnutie zlyhalo</translation>
 <translation id="8042586301629853791">Zoradiť podľa:</translation>
 <translation id="8067883171444229417">Prehrať video</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_sl.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_sl.xtb
index 5026f9e..a53ac50 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_sl.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_sl.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Nadziranje dostopa spletnega mesta do naprave</translation>
 <translation id="6040143037577758943">Zapri</translation>
 <translation id="6042308850641462728">Več</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Zadnji zavihek</translation>
 <translation id="6064125863973209585">Dokončani prenosi</translation>
 <translation id="6071501408666570960">Morda ste odjavljeni s tega spletnega mesta.</translation>
 <translation id="6120483543004435978">Če je ta možnost vklopljena, spletna mesta lahko vprašajo, ali aktivno uporabljate napravo. Če je ta možnost izklopljena, spletna mesta ne smejo vprašati, ali aktivno uporabljate napravo.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Izberite stik</translation>
 <translation id="7990211076305263060">Če je ta možnost vklopljena, spletna mesta lahko zahtevajo uporabo mikrofona. Če je ta možnost izklopljena, spletna mesta ne smejo uporabljati mikrofona.</translation>
 <translation id="8007176423574883786">Izklopljeno za to napravo</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Iz naprave <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Prenos ni uspel</translation>
 <translation id="8042586301629853791">Razvrsti po:</translation>
 <translation id="8067883171444229417">Predvajanje videa</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb
index a2529dc..01bc0f1 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">మీ పరికరానికి ఈ సైట్ యాక్సెస్‌ని నియంత్రించండి</translation>
 <translation id="6040143037577758943">మూసివేయండి</translation>
 <translation id="6042308850641462728">మరింత చూపించు</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> మీ చివరి ట్యాబ్</translation>
 <translation id="6064125863973209585">పూర్తయిన డౌన్‌లోడ్‌లు</translation>
 <translation id="6071501408666570960">ఈ సైట్ నుండి మీరు సైన్ అవుట్ అయ్యే అవకాశం ఉంది</translation>
 <translation id="6120483543004435978">ఆన్‌లో ఉన్నప్పుడు, మీ పరికరాన్ని మీరు ఎప్పుడు యాక్టివ్‌గా ఉపయోగిస్తున్నారో తెలుసుకోవడానికి సైట్‌లు అడగవచ్చు. ఆఫ్‌లో ఉన్నప్పుడు, మీ పరికరాన్ని మీరు ఎప్పుడు యాక్టివ్‌గా ఉపయోగిస్తున్నారో సైట్‌లకు తెలియదు.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">పరిచయాన్ని ఎంచుకోండి</translation>
 <translation id="7990211076305263060">ఆన్‌లో ఉన్నప్పుడు, సైట్‌లు మీ మైక్రోఫోన్‌ను ఉపయోగించమని అడగవచ్చు. ఆఫ్‌లో ఉన్నప్పుడు, సైట్‌లు మీ మైక్రోఫోన్‌ను ఉపయోగించడం సాధ్యం కాదు.</translation>
 <translation id="8007176423574883786">ఈ పరికరం కోసం ఆఫ్ చేయబడింది</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" /> నుండి</translation>
 <translation id="802154636333426148">డౌన్‌లోడ్ విఫలమైంది</translation>
 <translation id="8042586301629853791">దీని ఆధారంగా క్రమపద్ధతిలో అమర్చండి:</translation>
 <translation id="8067883171444229417">వీడియోను ప్లే చేయి</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_uk.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_uk.xtb
index e78758d..b51be93 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_uk.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_uk.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Керуйте доступом цього сайту до вашого пристрою</translation>
 <translation id="6040143037577758943">Закрити</translation>
 <translation id="6042308850641462728">Більше</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Остання вкладка</translation>
 <translation id="6064125863973209585">Завершені завантаження</translation>
 <translation id="6071501408666570960">Ви вийдете з облікового запису на цьому сайті</translation>
 <translation id="6120483543004435978">Якщо цей параметр увімкнено, сайти можуть запитувати, коли ви активно використовуєте пристрій. Якщо його вимкнено, сайти не можуть дізнаватися, коли ви активно використовуєте пристрій.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Виберіть контакт</translation>
 <translation id="7990211076305263060">Якщо цей параметр увімкнено, сайти можуть просити доступ до мікрофона. Якщо його вимкнено, сайти не можуть використовувати мікрофон.</translation>
 <translation id="8007176423574883786">Вимкнено для цього пристрою</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> З пристрою "<ph name="FROM_DEVICE" />"</translation>
 <translation id="802154636333426148">Не вдалося завантажити</translation>
 <translation id="8042586301629853791">Порядок сортування:</translation>
 <translation id="8067883171444229417">Дивитися відео</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_ur.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_ur.xtb
index 65c2b90..a8c0d0b 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_ur.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_ur.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">اپنے آلے تک اس سائٹ کی رسائی کو کنٹرول کریں</translation>
 <translation id="6040143037577758943">بند کریں</translation>
 <translation id="6042308850641462728">مزید</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> آپ کا آخری ٹیب</translation>
 <translation id="6064125863973209585">مکمل کردہ ڈاؤن لوڈز</translation>
 <translation id="6071501408666570960">ہو سکتا ہے کہ آپ اس سائٹ سے سائن آؤٹ ہو جائیں</translation>
 <translation id="6120483543004435978">آن ہونے پر، سائٹس یہ جاننے کے لیے پوچھ سکتی ہیں کہ آپ اپنا آلہ فعال طور پر کب استعمال کر رہے ہیں۔ آف ہونے پر، سائٹس نہیں جان سکتی کہ آپ اپنا آلہ فعال طور پر کب استعمال کر رہے ہیں۔</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">رابطہ منتخب کریں</translation>
 <translation id="7990211076305263060">آن ہونے پر، سائٹس آپ کا مائیکروفون استعمال کرنے کیلئے پوچھ سکتی ہیں۔ آف ہونے پر، سائٹس آپ کا مائیکروفون استعمال نہیں کر سکتیں۔</translation>
 <translation id="8007176423574883786">اس آلے کیلئے آف کر دیا گیا</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> <ph name="FROM_DEVICE" /> سے</translation>
 <translation id="802154636333426148">ڈاؤن لوڈ ناکام ہوگیا</translation>
 <translation id="8042586301629853791">ترتیب دیں بلحاظ:</translation>
 <translation id="8067883171444229417">ویڈیو چلائیں</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_uz.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_uz.xtb
index 4fb77f3a..33b94f4 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_uz.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_uz.xtb
@@ -304,6 +304,7 @@
 <translation id="6015775454662021376">Bu saytning qurilmangizni boshqarish ruxsatlarini boshqaring</translation>
 <translation id="6040143037577758943">Yopish</translation>
 <translation id="6042308850641462728">Yana</translation>
+<translation id="6060464773477604108"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Oxirgi varaq</translation>
 <translation id="6064125863973209585">Yuklab olinganlar</translation>
 <translation id="6071501408666570960">Bu saytda hisobingizdan chiqasiz</translation>
 <translation id="6120483543004435978">Yoqilsa, saytlar qachon qurilmadan faol foydalanishingizni soʻrashi mumkin. Oʻchirilsa, saytlar bu maʼlumotlarni bila olmaydi.</translation>
@@ -425,6 +426,7 @@
 <translation id="7986741934819883144">Kontaktni tanlang</translation>
 <translation id="7990211076305263060">Yoqilsa, saytlar mikrofondan foydalanishni soʻrashi mumkin. Oʻchirilsa, mikrofondan foydalana olmaydi.</translation>
 <translation id="8007176423574883786">Ushbu qurilma uchun o‘chirilgan</translation>
+<translation id="8009579582995973057"><ph name="HOST_NAME" /> <ph name="SEPARATOR1" /> <ph name="RECENCY" /> <ph name="SEPARATOR2" /> Manba: <ph name="FROM_DEVICE" /></translation>
 <translation id="802154636333426148">Yuklab olib bo‘lmadi</translation>
 <translation id="8042586301629853791">Saralash:</translation>
 <translation id="8067883171444229417">Videoni ijro qilish</translation>
diff --git a/components/browsing_data/content/browsing_data_helper_unittest.cc b/components/browsing_data/content/browsing_data_helper_unittest.cc
index b80c6b8..f2b34ba4 100644
--- a/components/browsing_data/content/browsing_data_helper_unittest.cc
+++ b/components/browsing_data/content/browsing_data_helper_unittest.cc
@@ -155,8 +155,7 @@
           GURL("https://example.com/"), "abc=123; SameSite=None; Secure",
           base::Time::Now(),
           /*server_time=*/std::nullopt,
-          /*cookie_partition_key=*/std::nullopt,
-          /*block_truncated=*/true, net::CookieSourceType::kOther),
+          /*cookie_partition_key=*/std::nullopt, net::CookieSourceType::kOther),
       BrowsingDataModel::StorageType::kCookie,
       /*storage_size=*/0,
       /*cookie_count=*/1,
diff --git a/components/certificate_transparency/data/log_list.json b/components/certificate_transparency/data/log_list.json
index 567102b..a49d3e39 100644
--- a/components/certificate_transparency/data/log_list.json
+++ b/components/certificate_transparency/data/log_list.json
@@ -1,6 +1,6 @@
 {
-  "version": "34.20",
-  "log_list_timestamp": "2024-05-16T13:17:14Z",
+  "version": "34.22",
+  "log_list_timestamp": "2024-05-17T12:59:20Z",
   "operators": [
     {
       "name": "Google",
diff --git a/components/content_settings/core/browser/cookie_settings_unittest.cc b/components/content_settings/core/browser/cookie_settings_unittest.cc
index 6c1e3d136..aec4c3f 100644
--- a/components/content_settings/core/browser/cookie_settings_unittest.cc
+++ b/components/content_settings/core/browser/cookie_settings_unittest.cc
@@ -256,11 +256,9 @@
     std::vector<base::test::FeatureRef> disabled_features;
 
     if (IsIndexedContentSettingsEnabled()) {
-      enabled_features.push_back({features::kHostIndexedMetadataGrants, {}});
       enabled_features.push_back(
           {features::kIndexedHostContentSettingsMap, {}});
     } else {
-      disabled_features.push_back(features::kHostIndexedMetadataGrants);
       disabled_features.push_back(features::kIndexedHostContentSettingsMap);
     }
 
@@ -292,11 +290,9 @@
     }
 
     if (IsIndexedContentSettingsEnabled()) {
-      enabled_features.push_back({features::kHostIndexedMetadataGrants, {}});
       enabled_features.push_back(
           {features::kIndexedHostContentSettingsMap, {}});
     } else {
-      disabled_features.push_back(features::kHostIndexedMetadataGrants);
       disabled_features.push_back(features::kIndexedHostContentSettingsMap);
     }
 
diff --git a/components/content_settings/core/common/cookie_settings_base.cc b/components/content_settings/core/common/cookie_settings_base.cc
index 4a03d06..251a4a25 100644
--- a/components/content_settings/core/common/cookie_settings_base.cc
+++ b/components/content_settings/core/common/cookie_settings_base.cc
@@ -522,14 +522,15 @@
     return BlockAllCookies{};
   }
 
+  if (!is_third_party_request) {
+    return AllowAllCookies{ThirdPartyCookieAllowMechanism::kNone};
+  }
+
   if (!global_setting_or_embedder_blocks_third_party_cookies) {
     return AllowAllCookies{
         ThirdPartyCookieAllowMechanism::kAllowByGlobalSetting};
   }
 
-  if (!is_third_party_request) {
-    return AllowAllCookies{ThirdPartyCookieAllowMechanism::kNone};
-  }
   if (IsThirdPartyCookiesAllowedScheme(first_party_url.scheme())) {
     return AllowAllCookies{ThirdPartyCookieAllowMechanism::kAllowByScheme};
   }
@@ -645,6 +646,11 @@
               !global_setting_or_embedder_blocks_third_party_cookies ||
               allow_cookies->mechanism != ThirdPartyCookieAllowMechanism::kNone,
           base::NotFatalUntil::M128);
+    // `!is_third_party_request` implies that the exemption reason must be
+    // kNone. (It doesn't make sense to exempt a first-party cookie from 3PCD.)
+    CHECK(is_third_party_request ||
+              allow_cookies->mechanism == ThirdPartyCookieAllowMechanism::kNone,
+          base::NotFatalUntil::M128);
 
     FireStorageAccessHistogram(
         GetStorageAccessResult(allow_cookies->mechanism));
diff --git a/components/content_settings/core/common/features.cc b/components/content_settings/core/common/features.cc
index 40dfbb0..a2d1e19 100644
--- a/components/content_settings/core/common/features.cc
+++ b/components/content_settings/core/common/features.cc
@@ -105,15 +105,6 @@
              "ContentSettingsPartitioning",
              base::FEATURE_DISABLED_BY_DEFAULT);
 
-const char kUseTestMetadataName[] = "UseTestMetadata";
-
-BASE_FEATURE(kHostIndexedMetadataGrants,
-             "HostIndexedMetadataGrants",
-             base::FEATURE_ENABLED_BY_DEFAULT);
-
-const base::FeatureParam<int> kUseTestMetadata{&kHostIndexedMetadataGrants,
-                                               kUseTestMetadataName, 0};
-
 BASE_FEATURE(kIndexedHostContentSettingsMap,
              "IndexedHostContentSettingsMap",
              base::FEATURE_ENABLED_BY_DEFAULT);
diff --git a/components/content_settings/core/common/features.h b/components/content_settings/core/common/features.h
index 999eea3..4c89a157d 100644
--- a/components/content_settings/core/common/features.h
+++ b/components/content_settings/core/common/features.h
@@ -138,17 +138,6 @@
 COMPONENT_EXPORT(CONTENT_SETTINGS_FEATURES)
 extern const char kUseTestMetadataName[];
 
-// Enables writing and reading metadata grants as a host-indexed data structure.
-// This is meant to optimize lookups when the list is large.
-COMPONENT_EXPORT(CONTENT_SETTINGS_FEATURES)
-BASE_DECLARE_FEATURE(kHostIndexedMetadataGrants);
-
-// Enables generating and using test metadata. Used to test performance at
-// large list sizes. Set to a value greater than 0 to use that many generated
-// entries for testing.
-COMPONENT_EXPORT(CONTENT_SETTINGS_FEATURES)
-extern const base::FeatureParam<int> kUseTestMetadata;
-
 // Enable indexing HostContentSettings to allow for faster lookups of content
 // setting rules.
 COMPONENT_EXPORT(CONTENT_SETTINGS_FEATURES)
diff --git a/components/history/core/browser/browsing_history_service.cc b/components/history/core/browser/browsing_history_service.cc
index c1c6621c..6fa90d2 100644
--- a/components/history/core/browser/browsing_history_service.cc
+++ b/components/history/core/browser/browsing_history_service.cc
@@ -213,6 +213,10 @@
   }
 }
 
+void BrowsingHistoryService::OnSyncShutdown(syncer::SyncService* sync) {
+  sync_service_observation_.Reset();
+}
+
 void BrowsingHistoryService::WebHistoryTimeout(
     scoped_refptr<QueryHistoryState> state) {
   state->remote_status = TIMED_OUT;
diff --git a/components/history/core/browser/browsing_history_service.h b/components/history/core/browser/browsing_history_service.h
index 239eb39e..70984a4 100644
--- a/components/history/core/browser/browsing_history_service.h
+++ b/components/history/core/browser/browsing_history_service.h
@@ -177,6 +177,7 @@
 
   // SyncServiceObserver implementation.
   void OnStateChanged(syncer::SyncService* sync) override;
+  void OnSyncShutdown(syncer::SyncService* sync) override;
 
  protected:
   // Constructor that allows specifying more dependencies for unit tests.
diff --git a/components/metrics/structured/arena_event_buffer_unittest.cc b/components/metrics/structured/arena_event_buffer_unittest.cc
index 6498948..d208613 100644
--- a/components/metrics/structured/arena_event_buffer_unittest.cc
+++ b/components/metrics/structured/arena_event_buffer_unittest.cc
@@ -108,9 +108,7 @@
 
   EXPECT_EQ(buffer->resource_info().used_size_bytes, 0);
 
-  int64_t size;
-  EXPECT_TRUE(base::GetFileSize(GetPath(), &size));
-  EXPECT_EQ(size, 0);
+  EXPECT_FALSE(base::PathExists(GetPath()));
 }
 
 TEST_F(ArenaEventBufferTest, UpdatePath) {
diff --git a/components/metrics/structured/lib/persistent_proto_internal.cc b/components/metrics/structured/lib/persistent_proto_internal.cc
index ffaec81d..43a037a 100644
--- a/components/metrics/structured/lib/persistent_proto_internal.cc
+++ b/components/metrics/structured/lib/persistent_proto_internal.cc
@@ -93,7 +93,7 @@
 
   // Purge the read proto if |purge_after_reading_|.
   if (purge_after_reading_) {
-    proto_->Clear();
+    Purge();
     purge_after_reading_ = false;
   }
 
@@ -129,7 +129,7 @@
 void PersistentProtoInternal::Purge() {
   if (proto_) {
     proto_->Clear();
-    QueueWrite();
+    QueueFileDelete();
   } else {
     purge_after_reading_ = true;
   }
@@ -197,6 +197,12 @@
   proto_ = nullptr;
 }
 
+void PersistentProtoInternal::QueueFileDelete() {
+  task_runner_->PostTask(FROM_HERE,
+                         base::BindOnce(base::IgnoreResult(&base::DeleteFile),
+                                        proto_file_->path()));
+}
+
 void PersistentProtoInternal::FlushQueuedWrites() {
   if (proto_file_->HasPendingWrite()) {
     proto_file_->DoScheduledWrite();
diff --git a/components/metrics/structured/lib/persistent_proto_internal.h b/components/metrics/structured/lib/persistent_proto_internal.h
index 9da1f91c..623e2d8 100644
--- a/components/metrics/structured/lib/persistent_proto_internal.h
+++ b/components/metrics/structured/lib/persistent_proto_internal.h
@@ -93,6 +93,9 @@
   void DeallocProto();
 
  private:
+  // Queues a task to delete the backing file.
+  void QueueFileDelete();
+
   // Completes a write if there is a queued one.
   //
   // This is needed because it needs to be called by the class that owns the
diff --git a/components/omnibox/browser/android/java/src/org/chromium/components/omnibox/AutocompleteResult.java b/components/omnibox/browser/android/java/src/org/chromium/components/omnibox/AutocompleteResult.java
index de6d758..7d9186b8 100644
--- a/components/omnibox/browser/android/java/src/org/chromium/components/omnibox/AutocompleteResult.java
+++ b/components/omnibox/browser/android/java/src/org/chromium/components/omnibox/AutocompleteResult.java
@@ -137,7 +137,6 @@
         return result;
     }
 
-    @CalledByNative
     private void updateMatches(@NonNull AutocompleteMatch[] suggestions) {
         mSuggestions.clear();
         Collections.addAll(mSuggestions, suggestions);
@@ -207,35 +206,6 @@
     }
 
     /**
-     * Group native suggestions in specified range by Search vs URL.
-     *
-     * @param firstIndex Index of the first suggestion for grouping.
-     * @param lastIndex Index of the last suggestion for grouping.
-     */
-    public void groupSuggestionsBySearchVsURL(int firstIndex, int lastIndex) {
-        if (mNativeAutocompleteResult != 0) {
-            if (!verifyCoherency(
-                    NO_SUGGESTION_INDEX, VerificationPoint.GROUP_BY_SEARCH_VS_URL_BEFORE)) {
-                // This may trigger if the Native (C++) object got updated and we haven't had a
-                // chance to reflect this update here. When this happens, do not rearrange the
-                // order of suggestions and wait for a corresponding update.
-                // Need to identify whether this issue is anything larger than just background
-                // update.
-                assert false : "Pre-group verification failed. Please report.";
-                return;
-            }
-            AutocompleteResultJni.get()
-                    .groupSuggestionsBySearchVsURL(
-                            mNativeAutocompleteResult, firstIndex, lastIndex);
-            // Verify that the Native AutocompleteResult update has been properly
-            // reflected on the Java part.
-            assert verifyCoherency(
-                            NO_SUGGESTION_INDEX, VerificationPoint.GROUP_BY_SEARCH_VS_URL_AFTER)
-                    : "Post-group verification failed";
-        }
-    }
-
-    /**
      * This is a counterpart of native AutocompleteResult#default_match.
      *
      * @return The default match if it exists, or nullptr otherwise.
@@ -251,9 +221,6 @@
 
     @NativeMethods
     interface Natives {
-        void groupSuggestionsBySearchVsURL(
-                long nativeAutocompleteResult, int firstIndex, int lastIndex);
-
         boolean verifyCoherency(
                 long nativeAutocompleteResult, long[] matches, long suggestionIndex, int origin);
     }
diff --git a/components/omnibox/browser/autocomplete_result_android.cc b/components/omnibox/browser/autocomplete_result_android.cc
index 39e88b6..2565617 100644
--- a/components/omnibox/browser/autocomplete_result_android.cc
+++ b/components/omnibox/browser/autocomplete_result_android.cc
@@ -146,27 +146,6 @@
   return j_matches;
 }
 
-void AutocompleteResult::GroupSuggestionsBySearchVsURL(JNIEnv* env,
-                                                       int first_index,
-                                                       int last_index) {
-  if (first_index == last_index)
-    return;
-  const int num_elements = matches_.size();
-  if (first_index < 0 || last_index <= first_index ||
-      last_index > num_elements) {
-    DCHECK(false) << "Range [" << first_index << "; " << last_index
-                  << ") is not valid for grouping; accepted range: [0; "
-                  << num_elements << ").";
-    return;
-  }
-
-  auto range_start = const_cast<ACMatches&>(matches_).begin();
-  GroupSuggestionsBySearchVsURL(range_start + first_index,
-                                range_start + last_index);
-  Java_AutocompleteResult_updateMatches(env, java_result_,
-                                        BuildJavaMatches(env));
-}
-
 bool AutocompleteResult::VerifyCoherency(
     JNIEnv* env,
     const JavaParamRef<jlongArray>& j_matches_array,
diff --git a/components/omnibox/browser/omnibox_edit_model.cc b/components/omnibox/browser/omnibox_edit_model.cc
index 95e39993..d796a68 100644
--- a/components/omnibox/browser/omnibox_edit_model.cc
+++ b/components/omnibox/browser/omnibox_edit_model.cc
@@ -1244,8 +1244,7 @@
     char16_t ch) {
 #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS)
   // Only check for acceleration when the current input text is "@" exactly.
-  if (input_text.size() != 1 ||
-      !input_text.starts_with('@') ||
+  if (input_text.size() != 1 || !input_text.starts_with('@') ||
       !history_embeddings::kAtKeywordAcceleration.Get()) {
     return false;
   }
@@ -1828,12 +1827,13 @@
                        std::u16string(), keyword, is_keyword_hint,
                        std::u16string(), AutocompleteMatch());
   } else if (old_selection.line != popup_selection_.line ||
-             (old_selection.IsButtonFocused() &&
-              !new_selection.IsButtonFocused() &&
+             (old_selection.state != OmniboxPopupSelection::KEYWORD_MODE &&
               new_selection.state != OmniboxPopupSelection::KEYWORD_MODE)) {
-    // Otherwise, only update the edit model for line number changes, or
-    // when the old selection was a button and we're not entering keyword mode.
-    // Updating the edit model for every state change breaks keyword mode.
+    // Don't update the edit model if entering or leaving keyword mode; doing so
+    // breaks keyword mode. Updating when there is no line change is necessary
+    // because omnibox text changes when:
+    // a) Moving down from a header row.
+    // b) Focusing other states; e.g. the switch-to-tab chip.
     if (reset_to_default) {
       OnPopupDataChanged(std::u16string(),
                          /*is_temporary_text=*/false,
diff --git a/components/omnibox/common/android/java/src/org/chromium/components/omnibox/OmniboxFeatures.java b/components/omnibox/common/android/java/src/org/chromium/components/omnibox/OmniboxFeatures.java
index afd67351..7ffc338d 100644
--- a/components/omnibox/common/android/java/src/org/chromium/components/omnibox/OmniboxFeatures.java
+++ b/components/omnibox/common/android/java/src/org/chromium/components/omnibox/OmniboxFeatures.java
@@ -47,9 +47,6 @@
     public static final CachedFlag sAnimateSuggestionsListAppearance =
             newFlag(OmniboxFeatureList.ANIMATE_SUGGESTIONS_LIST_APPEARANCE, false);
 
-    public static final CachedFlag sGroupingFrameworkForNonZPS =
-            newFlag(OmniboxFeatureList.GROUPING_FRAMEWORK_FOR_NON_ZPS, false);
-
     public static final CachedFlag sOmniboxMatchToolbarAndStatusBarColor =
             newFlag(OmniboxFeatureList.OMNIBOX_MATCH_TOOLBAR_AND_STATUS_BAR_COLOR, false);
 
diff --git a/components/page_load_metrics/browser/observers/use_counter/ukm_features.cc b/components/page_load_metrics/browser/observers/use_counter/ukm_features.cc
index c2924da..6542e03 100644
--- a/components/page_load_metrics/browser/observers/use_counter/ukm_features.cc
+++ b/components/page_load_metrics/browser/observers/use_counter/ukm_features.cc
@@ -396,7 +396,8 @@
           WebFeature::kNavigatorCookieEnabledThirdParty,
           WebFeature::kSimplifyLoadingTransparentPlaceholderImage,
           WebFeature::kFedCmContinueOnResponse,
-          WebFeature::kSchedulingIsInputPending
+          WebFeature::kSchedulingIsInputPending,
+          WebFeature::kV8DocumentPictureInPicture_RequestWindow_Method,
       }));
   return *opt_in_features;
 }
diff --git a/components/password_manager/core/browser/BUILD.gn b/components/password_manager/core/browser/BUILD.gn
index 7000c0bd..39b7d2c9 100644
--- a/components/password_manager/core/browser/BUILD.gn
+++ b/components/password_manager/core/browser/BUILD.gn
@@ -116,8 +116,6 @@
     "password_manager_metrics_recorder.h",
     "password_manager_setting.h",
     "password_manager_settings_service.h",
-    "password_manager_switches.cc",
-    "password_manager_switches.h",
     "password_manager_util.cc",
     "password_manager_util.h",
     "password_manual_fallback_flow.cc",
@@ -190,6 +188,7 @@
     "//components/device_reauth",
     "//components/favicon/core",
     "//components/os_crypt/sync:os_crypt",
+    "//components/password_manager/core/browser:password_switches",
     "//components/password_manager/core/browser/affiliation:affiliation_match_helper",
     "//components/password_manager/core/browser/features:password_features",
     "//components/password_manager/core/browser/form_parsing",
@@ -236,6 +235,14 @@
   }
 }
 
+source_set("password_switches") {
+  sources = [
+    "password_manager_switches.cc",
+    "password_manager_switches.h",
+  ]
+  public_deps = [ "//base" ]
+}
+
 # PasswordForm is an extremely common struct used by many sub-components and
 # sub-directories. Having its own target makes it possible to break up several
 # cyclic dependencies.
@@ -390,6 +397,7 @@
     "//components/autofill/core/browser:test_support",
     "//components/device_reauth:test_support",
     "//components/keyed_service/core",
+    "//components/password_manager/core/browser:password_switches",
     "//components/password_manager/core/browser/affiliation:test_support",
     "//components/password_manager/core/browser/leak_detection",
     "//components/password_manager/core/browser/password_store:test_support",
diff --git a/components/password_manager/core/browser/password_manager_switches.h b/components/password_manager/core/browser/password_manager_switches.h
index 208f490..f89b8e62 100644
--- a/components/password_manager/core/browser/password_manager_switches.h
+++ b/components/password_manager/core/browser/password_manager_switches.h
@@ -13,7 +13,12 @@
 #if BUILDFLAG(IS_LINUX)
 extern const char kPasswordStore[];
 extern const char kEnableEncryptionSelection[];
-#endif
+#endif  // BUILDFLAG(IS_LINUX)
+
+// Specifies the user data directory, which is where the browser will look for
+// all of its state. Needs to be kept in sync with
+// chrome/common/chrome_switches.h
+inline constexpr char kUserDataDir[] = "user-data-dir";
 
 }  // namespace password_manager
 
diff --git a/components/password_manager/core/browser/password_store/BUILD.gn b/components/password_manager/core/browser/password_store/BUILD.gn
index 173a8d0..2761ca0c 100644
--- a/components/password_manager/core/browser/password_store/BUILD.gn
+++ b/components/password_manager/core/browser/password_store/BUILD.gn
@@ -62,6 +62,7 @@
     "//components/os_crypt/sync:os_crypt",
     "//components/password_manager/core/browser:metrics_util",
     "//components/password_manager/core/browser:password_manager_buildflags",
+    "//components/password_manager/core/browser:password_switches",
     "//components/password_manager/core/browser/affiliation:affiliation_match_helper",
     "//components/password_manager/core/browser/features:password_features",
     "//components/password_manager/core/browser/sync",
diff --git a/components/password_manager/core/browser/password_store/login_database.cc b/components/password_manager/core/browser/password_store/login_database.cc
index ce4d42e..70e3d7d 100644
--- a/components/password_manager/core/browser/password_store/login_database.cc
+++ b/components/password_manager/core/browser/password_store/login_database.cc
@@ -16,7 +16,9 @@
 #include <utility>
 
 #include "base/check_op.h"
+#include "base/command_line.h"
 #include "base/containers/flat_map.h"
+#include "base/environment.h"
 #include "base/files/file_path.h"
 #include "base/functional/bind.h"
 #include "base/logging.h"
@@ -39,6 +41,7 @@
 #include "components/password_manager/core/browser/features/password_features.h"
 #include "components/password_manager/core/browser/password_form.h"
 #include "components/password_manager/core/browser/password_manager_metrics_util.h"
+#include "components/password_manager/core/browser/password_manager_switches.h"
 #include "components/password_manager/core/browser/password_store/insecure_credentials_table.h"
 #include "components/password_manager/core/browser/password_store/password_notes_table.h"
 #include "components/password_manager/core/browser/password_store/password_store_change.h"
@@ -997,8 +1000,29 @@
 }
 
 bool ShouldDeleteUndecryptablePasswords() {
-  // TODO: crbug/40286735 - Check if password switches are disabled.
-  return OSCrypt::IsEncryptionAvailable() &&
+#if BUILDFLAG(IS_LINUX)
+  std::string user_data_dir_string;
+  std::unique_ptr<base::Environment> environment(base::Environment::Create());
+  // On Linux user data directory ca be specified using an env variable. If it
+  // exists, passwords shouldn't be deleted.
+  if (environment->GetVar("CHROME_USER_DATA_DIR", &user_data_dir_string)) {
+    return false;
+  }
+#endif  // BUILDFLAG(IS_LINUX)
+
+  base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
+  bool has_pwm_related_switches_enabled =
+      command_line->HasSwitch(password_manager::kUserDataDir);
+
+#if BUILDFLAG(IS_LINUX)
+  has_pwm_related_switches_enabled =
+      has_pwm_related_switches_enabled ||
+      command_line->HasSwitch(password_manager::kPasswordStore) ||
+      command_line->HasSwitch(password_manager::kEnableEncryptionSelection);
+#endif  // BUILDFLAG(IS_LINUX)
+
+  return !has_pwm_related_switches_enabled &&
+         OSCrypt::IsEncryptionAvailable() &&
          base::FeatureList::IsEnabled(features::kClearUndecryptablePasswords);
 }
 
diff --git a/components/password_manager/core/browser/password_store/login_database_unittest.cc b/components/password_manager/core/browser/password_store/login_database_unittest.cc
index 40e20f9c..84140b8b 100644
--- a/components/password_manager/core/browser/password_store/login_database_unittest.cc
+++ b/components/password_manager/core/browser/password_store/login_database_unittest.cc
@@ -13,6 +13,7 @@
 #include <utility>
 
 #include "base/containers/flat_map.h"
+#include "base/environment.h"
 #include "base/files/file_util.h"
 #include "base/files/scoped_temp_dir.h"
 #include "base/path_service.h"
@@ -31,6 +32,7 @@
 #include "components/os_crypt/sync/os_crypt_mocker.h"
 #include "components/password_manager/core/browser/features/password_features.h"
 #include "components/password_manager/core/browser/password_form.h"
+#include "components/password_manager/core/browser/password_manager_switches.h"
 #include "components/password_manager/core/browser/password_store/password_store_change.h"
 #include "components/password_manager/core/browser/password_store/psl_matching_helper.h"
 #include "components/password_manager/core/browser/sync/password_store_sync.h"
@@ -2273,6 +2275,169 @@
 #endif
 }
 
+#if BUILDFLAG(IS_LINUX)
+TEST_F(LoginDatabaseUndecryptableLoginsTest,
+       DontDeleteUndecryptableLoginsIfStoreSwitchTest) {
+  // Init with feature states allowing for password deletion.
+  base::test::ScopedFeatureList feature_list;
+  feature_list.InitWithFeatureStates(
+      {{features::kSkipUndecryptablePasswords, false},
+       {features::kClearUndecryptablePasswords, true}});
+
+  // Set the password store switch
+  base::CommandLine::ForCurrentProcess()->AppendSwitch(
+      password_manager::kPasswordStore);
+
+  base::HistogramTester histogram_tester;
+  std::vector<PasswordForm> forms;
+  auto form1 =
+      AddDummyLogin("foo1", GURL("https://foo1.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  auto form2 =
+      AddDummyLogin("foo2", GURL("https://foo2.com/"),
+                    /*should_be_corrupted=*/true, /*blocklisted=*/false);
+  auto form3 =
+      AddDummyLogin("foo3", GURL("https://foo3.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  LoginDatabase db(database_path(), IsAccountStore(false));
+  ASSERT_TRUE(db.Init());
+
+  EXPECT_FALSE(db.GetAutoSignInLogins(&forms));
+  histogram_tester.ExpectTotalCount(
+      "PasswordManager.DeleteUndecryptableLoginsReturnValue", 0);
+}
+
+TEST_F(LoginDatabaseUndecryptableLoginsTest,
+       DontDeleteUndecryptableLoginsIfEncryptionSelectionSwitchTest) {
+  // Init with feature states allowing for password deletion.
+  base::test::ScopedFeatureList feature_list;
+  feature_list.InitWithFeatureStates(
+      {{features::kSkipUndecryptablePasswords, false},
+       {features::kClearUndecryptablePasswords, true}});
+
+  // Set the ecryption selection switch
+  base::CommandLine::ForCurrentProcess()->AppendSwitch(
+      password_manager::kEnableEncryptionSelection);
+
+  base::HistogramTester histogram_tester;
+  std::vector<PasswordForm> forms;
+  auto form1 =
+      AddDummyLogin("foo1", GURL("https://foo1.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  auto form2 =
+      AddDummyLogin("foo2", GURL("https://foo2.com/"),
+                    /*should_be_corrupted=*/true, /*blocklisted=*/false);
+  auto form3 =
+      AddDummyLogin("foo3", GURL("https://foo3.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  LoginDatabase db(database_path(), IsAccountStore(false));
+  ASSERT_TRUE(db.Init());
+
+  EXPECT_FALSE(db.GetAutoSignInLogins(&forms));
+  histogram_tester.ExpectTotalCount(
+      "PasswordManager.DeleteUndecryptableLoginsReturnValue", 0);
+}
+
+TEST_F(LoginDatabaseUndecryptableLoginsTest,
+       DontDeleteUndecryptableLoginsIfEnvVariableSetTest) {
+  // Init with feature states allowing for password deletion.
+  base::test::ScopedFeatureList feature_list;
+  feature_list.InitWithFeatureStates(
+      {{features::kSkipUndecryptablePasswords, false},
+       {features::kClearUndecryptablePasswords, true}});
+
+  // Set the home dir env variable.
+  std::string orig_chrome_config_home = "test/path";
+  std::unique_ptr<base::Environment> env(base::Environment::Create());
+  env->SetVar("CHROME_CONFIG_HOME", orig_chrome_config_home);
+
+  base::CommandLine::ForCurrentProcess()->AppendSwitch(
+      password_manager::kEnableEncryptionSelection);
+
+  base::HistogramTester histogram_tester;
+  std::vector<PasswordForm> forms;
+  auto form1 =
+      AddDummyLogin("foo1", GURL("https://foo1.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  auto form2 =
+      AddDummyLogin("foo2", GURL("https://foo2.com/"),
+                    /*should_be_corrupted=*/true, /*blocklisted=*/false);
+  auto form3 =
+      AddDummyLogin("foo3", GURL("https://foo3.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  LoginDatabase db(database_path(), IsAccountStore(false));
+  ASSERT_TRUE(db.Init());
+
+  EXPECT_FALSE(db.GetAutoSignInLogins(&forms));
+  histogram_tester.ExpectTotalCount(
+      "PasswordManager.DeleteUndecryptableLoginsReturnValue", 0);
+}
+
+#endif  // BUILDFLAG(IS_LINUX)
+
+TEST_F(LoginDatabaseUndecryptableLoginsTest,
+       DontDeleteUndecryptableLoginsIfUserDataDirSwitchTest) {
+  // Init with feature states allowing for password deletion.
+  base::test::ScopedFeatureList feature_list;
+  feature_list.InitWithFeatureStates(
+      {{features::kSkipUndecryptablePasswords, false},
+       {features::kClearUndecryptablePasswords, true}});
+
+  // Set the user data directory switch
+  base::CommandLine::ForCurrentProcess()->AppendSwitch(
+      password_manager::kUserDataDir);
+
+  base::HistogramTester histogram_tester;
+  std::vector<PasswordForm> forms;
+  auto form1 =
+      AddDummyLogin("foo1", GURL("https://foo1.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  auto form2 =
+      AddDummyLogin("foo2", GURL("https://foo2.com/"),
+                    /*should_be_corrupted=*/true, /*blocklisted=*/false);
+  auto form3 =
+      AddDummyLogin("foo3", GURL("https://foo3.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  LoginDatabase db(database_path(), IsAccountStore(false));
+  ASSERT_TRUE(db.Init());
+
+  EXPECT_FALSE(db.GetAutoSignInLogins(&forms));
+  histogram_tester.ExpectTotalCount(
+      "PasswordManager.DeleteUndecryptableLoginsReturnValue", 0);
+}
+
+#if BUILDFLAG(IS_MAC)
+TEST_F(LoginDatabaseUndecryptableLoginsTest,
+       DontDeleteUndecryptableLoginsIfEncryptionNotAvailiableTest) {
+  // Init with feature states allowing for password deletion.
+  base::test::ScopedFeatureList feature_list;
+  feature_list.InitWithFeatureStates(
+      {{features::kSkipUndecryptablePasswords, false},
+       {features::kClearUndecryptablePasswords, true}});
+
+  base::HistogramTester histogram_tester;
+  std::vector<PasswordForm> forms;
+  auto form1 =
+      AddDummyLogin("foo1", GURL("https://foo1.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  auto form2 =
+      AddDummyLogin("foo2", GURL("https://foo2.com/"),
+                    /*should_be_corrupted=*/true, /*blocklisted=*/false);
+  auto form3 =
+      AddDummyLogin("foo3", GURL("https://foo3.com/"),
+                    /*should_be_corrupted=*/false, /*blocklisted=*/false);
+  LoginDatabase db(database_path(), IsAccountStore(false));
+  ASSERT_TRUE(db.Init());
+
+  // Make authentication not available.
+  OSCryptMocker::SetBackendLocked(true);
+
+  EXPECT_FALSE(db.GetAutoSignInLogins(&forms));
+  histogram_tester.ExpectTotalCount(
+      "PasswordManager.DeleteUndecryptableLoginsReturnValue", 0);
+}
+#endif  // BUILDFLAG(IS_MAC)
+
 TEST_F(LoginDatabaseUndecryptableLoginsTest,
        PasswordRecoveryDisabledGetLogins) {
   base::test::ScopedFeatureList feature_list;
diff --git a/components/performance_manager/BUILD.gn b/components/performance_manager/BUILD.gn
index 4df2595..f2108485 100644
--- a/components/performance_manager/BUILD.gn
+++ b/components/performance_manager/BUILD.gn
@@ -16,6 +16,8 @@
     "browser_child_process_watcher.h",
     "decorators/frame_visibility_decorator.cc",
     "decorators/frame_visibility_decorator.h",
+    "decorators/page_aggregator.cc",
+    "decorators/page_aggregator.h",
     "decorators/page_live_state_decorator.cc",
     "decorators/page_load_tracker_decorator.cc",
     "decorators/page_load_tracker_decorator.h",
@@ -69,6 +71,8 @@
     "freezing/freezing.cc",
     "freezing/freezing_policy.cc",
     "freezing/freezing_policy.h",
+    "freezing/frozen_frame_aggregator.cc",
+    "freezing/frozen_frame_aggregator.h",
     "graph/frame_node.cc",
     "graph/frame_node_impl.cc",
     "graph/frame_node_impl.h",
@@ -334,6 +338,7 @@
   sources = [
     "decorators/decorators_utils_unittest.cc",
     "decorators/frame_visibility_decorator_unittest.cc",
+    "decorators/page_aggregator_unittest.cc",
     "decorators/page_live_state_decorator_unittest.cc",
     "decorators/page_load_tracker_decorator_unittest.cc",
     "decorators/process_hosted_content_types_aggregator_unittest.cc",
@@ -355,6 +360,7 @@
     "execution_context_priority/max_vote_aggregator_unittest.cc",
     "execution_context_priority/override_vote_aggregator_unittest.cc",
     "execution_context_priority/root_vote_observer_unittest.cc",
+    "freezing/frozen_frame_aggregator_unittest.cc",
     "graph/frame_node_impl_unittest.cc",
     "graph/graph_impl_operations_unittest.cc",
     "graph/graph_impl_unittest.cc",
diff --git a/chrome/browser/performance_manager/decorators/page_aggregator.cc b/components/performance_manager/decorators/page_aggregator.cc
similarity index 99%
rename from chrome/browser/performance_manager/decorators/page_aggregator.cc
rename to components/performance_manager/decorators/page_aggregator.cc
index 1b55aa1..980ca804 100644
--- a/chrome/browser/performance_manager/decorators/page_aggregator.cc
+++ b/components/performance_manager/decorators/page_aggregator.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/decorators/page_aggregator.h"
+#include "components/performance_manager/decorators/page_aggregator.h"
 
 #include <cstdint>
 
diff --git a/chrome/browser/performance_manager/decorators/page_aggregator.h b/components/performance_manager/decorators/page_aggregator.h
similarity index 89%
rename from chrome/browser/performance_manager/decorators/page_aggregator.h
rename to components/performance_manager/decorators/page_aggregator.h
index 042bd76..2d2614f 100644
--- a/chrome/browser/performance_manager/decorators/page_aggregator.h
+++ b/components/performance_manager/decorators/page_aggregator.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_PAGE_AGGREGATOR_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_PAGE_AGGREGATOR_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_DECORATORS_PAGE_AGGREGATOR_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_DECORATORS_PAGE_AGGREGATOR_H_
 
 #include "components/performance_manager/public/graph/frame_node.h"
 #include "components/performance_manager/public/graph/graph.h"
@@ -51,4 +51,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_PAGE_AGGREGATOR_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_DECORATORS_PAGE_AGGREGATOR_H_
diff --git a/chrome/browser/performance_manager/decorators/page_aggregator_unittest.cc b/components/performance_manager/decorators/page_aggregator_unittest.cc
similarity index 97%
rename from chrome/browser/performance_manager/decorators/page_aggregator_unittest.cc
rename to components/performance_manager/decorators/page_aggregator_unittest.cc
index 0439ce1..adc09db 100644
--- a/chrome/browser/performance_manager/decorators/page_aggregator_unittest.cc
+++ b/components/performance_manager/decorators/page_aggregator_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/decorators/page_aggregator.h"
+#include "components/performance_manager/decorators/page_aggregator.h"
 
 #include "components/performance_manager/graph/frame_node_impl.h"
 #include "components/performance_manager/graph/graph_impl_operations.h"
diff --git a/components/performance_manager/decorators/process_priority_aggregator.cc b/components/performance_manager/decorators/process_priority_aggregator.cc
index 427cecd..cac1af0 100644
--- a/components/performance_manager/decorators/process_priority_aggregator.cc
+++ b/components/performance_manager/decorators/process_priority_aggregator.cc
@@ -116,15 +116,7 @@
 
 ProcessPriorityAggregator::~ProcessPriorityAggregator() = default;
 
-void ProcessPriorityAggregator::OnBeforeGraphDestroyed(Graph* graph) {
-  auto* registry =
-      execution_context::ExecutionContextRegistry::GetFromGraph(graph);
-  if (registry && registry->HasObserver(this))
-    registry->RemoveObserver(this);
-}
-
 void ProcessPriorityAggregator::OnPassedToGraph(Graph* graph) {
-  graph->AddGraphObserver(this);
   graph->GetNodeDataDescriberRegistry()->RegisterDescriber(this,
                                                            kDescriberName);
   graph->AddProcessNodeObserver(this);
@@ -137,14 +129,13 @@
 }
 
 void ProcessPriorityAggregator::OnTakenFromGraph(Graph* graph) {
-  // Call OnBeforeGraphDestroyed as well. This unregisters us from the
-  // ExecutionContextRegistry in case we're being removed from the graph prior
-  // to its destruction.
-  OnBeforeGraphDestroyed(graph);
+  auto* registry =
+      execution_context::ExecutionContextRegistry::GetFromGraph(graph);
+  CHECK(registry);
+  registry->RemoveObserver(this);
 
   graph->RemoveProcessNodeObserver(this);
   graph->GetNodeDataDescriberRegistry()->UnregisterDescriber(this);
-  graph->RemoveGraphObserver(this);
 }
 
 base::Value::Dict ProcessPriorityAggregator::DescribeProcessNodeData(
diff --git a/components/performance_manager/decorators/process_priority_aggregator.h b/components/performance_manager/decorators/process_priority_aggregator.h
index bc0ee5b..9d03975 100644
--- a/components/performance_manager/decorators/process_priority_aggregator.h
+++ b/components/performance_manager/decorators/process_priority_aggregator.h
@@ -20,8 +20,7 @@
 // and workers) it hosts. A process will inherit the priority of the highest
 // priority context that it hosts.
 class ProcessPriorityAggregator
-    : public GraphObserver,
-      public GraphOwnedDefaultImpl,
+    : public GraphOwnedDefaultImpl,
       public NodeDataDescriberDefaultImpl,
       public ProcessNode::ObserverDefaultImpl,
       public execution_context::ExecutionContextObserverDefaultImpl {
@@ -36,9 +35,6 @@
 
   ~ProcessPriorityAggregator() override;
 
-  // GraphObserver implementation:
-  void OnBeforeGraphDestroyed(Graph* graph) override;
-
   // GraphOwned implementation:
   void OnPassedToGraph(Graph* graph) override;
   void OnTakenFromGraph(Graph* graph) override;
diff --git a/components/performance_manager/decorators/process_priority_aggregator_unittest.cc b/components/performance_manager/decorators/process_priority_aggregator_unittest.cc
index a6e1c76a..b75b358 100644
--- a/components/performance_manager/decorators/process_priority_aggregator_unittest.cc
+++ b/components/performance_manager/decorators/process_priority_aggregator_unittest.cc
@@ -25,7 +25,6 @@
   using Super = GraphTestHarness;
 
   void SetUp() override {
-    GetGraphFeatures().EnableExecutionContextRegistry();
     Super::SetUp();
     ppa_ = new ProcessPriorityAggregator();
     graph()->PassToGraph(base::WrapUnique(ppa_.get()));
diff --git a/components/performance_manager/embedder/graph_features.h b/components/performance_manager/embedder/graph_features.h
index 9d36131..865cdb5 100644
--- a/components/performance_manager/embedder/graph_features.h
+++ b/components/performance_manager/embedder/graph_features.h
@@ -40,7 +40,6 @@
       // (1) Add a corresponding EnableFeatureFoo() member function.
       // (2) Add the feature to EnableDefault() if necessary.
       // (3) Add the feature to the implementation of ConfigureGraph().
-      bool execution_context_registry : 1;
       bool frame_visibility_decorator : 1;
       bool metrics_collector : 1;
       bool node_impl_describers : 1;
@@ -59,11 +58,6 @@
   constexpr GraphFeatures(const GraphFeatures& other) = default;
   GraphFeatures& operator=(const GraphFeatures& other) = default;
 
-  constexpr GraphFeatures& EnableExecutionContextRegistry() {
-    flags_.execution_context_registry = true;
-    return *this;
-  }
-
   constexpr GraphFeatures& EnableFrameVisibilityDecorator() {
     flags_.frame_visibility_decorator = true;
     return *this;
@@ -85,7 +79,6 @@
   }
 
   constexpr GraphFeatures& EnablePriorityTracking() {
-    EnableExecutionContextRegistry();
     EnableFrameVisibilityDecorator();
     flags_.priority_tracking = true;
     return *this;
@@ -120,7 +113,6 @@
   }
 
   constexpr GraphFeatures& EnableV8ContextTracker() {
-    EnableExecutionContextRegistry();
     flags_.v8_context_tracker = true;
     return *this;
   }
@@ -128,7 +120,6 @@
   // Helper to enable the minimal set of features required for a content_shell
   // browser to work.
   constexpr GraphFeatures& EnableMinimal() {
-    EnableExecutionContextRegistry();
     EnableV8ContextTracker();
     return *this;
   }
@@ -136,7 +127,6 @@
   // Helper to enable the default set of features. This is only intended for use
   // from production code.
   constexpr GraphFeatures& EnableDefault() {
-    EnableExecutionContextRegistry();
     EnableFrameVisibilityDecorator();
     EnableMetricsCollector();
     EnableNodeImplDescribers();
diff --git a/components/performance_manager/execution_context/execution_context_attached_data_unittest.cc b/components/performance_manager/execution_context/execution_context_attached_data_unittest.cc
index 2b9d776..eaf81cc 100644
--- a/components/performance_manager/execution_context/execution_context_attached_data_unittest.cc
+++ b/components/performance_manager/execution_context/execution_context_attached_data_unittest.cc
@@ -35,8 +35,8 @@
 
   void SetUp() override {
     Super::SetUp();
-    registry_ =
-        graph()->PassToGraph(std::make_unique<ExecutionContextRegistryImpl>());
+    registry_ = GraphRegisteredImpl<ExecutionContextRegistryImpl>::GetFromGraph(
+        graph());
   }
 
  protected:
diff --git a/components/performance_manager/execution_context/execution_context_registry_impl.cc b/components/performance_manager/execution_context/execution_context_registry_impl.cc
index fea8bb9..162df265 100644
--- a/components/performance_manager/execution_context/execution_context_registry_impl.cc
+++ b/components/performance_manager/execution_context/execution_context_registry_impl.cc
@@ -89,7 +89,9 @@
 ////////////////////////////////////////////////////////////////////////////////
 // ExecutionContextRegistryImpl
 
-ExecutionContextRegistryImpl::ExecutionContextRegistryImpl() = default;
+ExecutionContextRegistryImpl::ExecutionContextRegistryImpl() {
+  DETACH_FROM_SEQUENCE(sequence_checker_);
+}
 
 ExecutionContextRegistryImpl::~ExecutionContextRegistryImpl() = default;
 
@@ -155,7 +157,7 @@
   return GetOrCreateExecutionContextForWorkerNode(worker_node);
 }
 
-void ExecutionContextRegistryImpl::OnPassedToGraph(Graph* graph) {
+void ExecutionContextRegistryImpl::SetUp(Graph* graph) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
   DCHECK(graph->HasOnlySystemNode());
   graph->RegisterObject(this);
@@ -163,7 +165,7 @@
   graph->AddWorkerNodeObserver(this);
 }
 
-void ExecutionContextRegistryImpl::OnTakenFromGraph(Graph* graph) {
+void ExecutionContextRegistryImpl::TearDown(Graph* graph) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
   graph->RemoveWorkerNodeObserver(this);
   graph->RemoveFrameNodeObserver(this);
diff --git a/components/performance_manager/execution_context/execution_context_registry_impl.h b/components/performance_manager/execution_context/execution_context_registry_impl.h
index 932ec15..2516e822 100644
--- a/components/performance_manager/execution_context/execution_context_registry_impl.h
+++ b/components/performance_manager/execution_context/execution_context_registry_impl.h
@@ -22,11 +22,9 @@
 
 // The ExecutionContextRegistry is a GraphRegistered class that allows for
 // observers to be registered, and for ExecutionContexts to be looked up by
-// their tokens. An instance of the registry must be passed to the Graph prior
-// to any nodes being created.
+// their tokens. SetUp() must be called prior to any nodes being created.
 class ExecutionContextRegistryImpl
     : public ExecutionContextRegistry,
-      public GraphOwned,
       public GraphRegisteredImpl<ExecutionContextRegistryImpl>,
       public FrameNode::ObserverDefaultImpl,
       public WorkerNode::ObserverDefaultImpl {
@@ -37,6 +35,10 @@
       delete;
   ~ExecutionContextRegistryImpl() override;
 
+  // Sets up/tears down the instance on the graph.
+  void SetUp(Graph* graph);
+  void TearDown(Graph* graph);
+
   // ExecutionContextRegistry implementation:
   void AddObserver(ExecutionContextObserver* observer) override;
   bool HasObserver(ExecutionContextObserver* observer) const override;
@@ -58,10 +60,6 @@
   }
 
  private:
-  // GraphOwned implementation:
-  void OnPassedToGraph(Graph* graph) override;
-  void OnTakenFromGraph(Graph* graph) override;
-
   // FrameNode::ObserverDefaultImpl implementation:
   void OnFrameNodeAdded(const FrameNode* frame_node) override;
   void OnBeforeFrameNodeRemoved(const FrameNode* frame_node) override;
diff --git a/components/performance_manager/execution_context/execution_context_registry_impl_unittest.cc b/components/performance_manager/execution_context/execution_context_registry_impl_unittest.cc
index 3519b03..af21d3cc 100644
--- a/components/performance_manager/execution_context/execution_context_registry_impl_unittest.cc
+++ b/components/performance_manager/execution_context/execution_context_registry_impl_unittest.cc
@@ -58,7 +58,6 @@
 
   void SetUp() override {
     Super::SetUp();
-    graph()->PassToGraph(std::make_unique<ExecutionContextRegistryImpl>());
     registry_ = GraphRegisteredImpl<ExecutionContextRegistryImpl>::GetFromGraph(
         graph());
     ASSERT_TRUE(registry_);
@@ -186,18 +185,5 @@
   registry_->RemoveObserver(&obs);
 }
 
-TEST_F(ExecutionContextRegistryImplDeathTest, EnforceObserversRemoved) {
-  // Create an observer.
-  MockExecutionContextObserver obs;
-  registry_->AddObserver(&obs);
-
-  // The registry should explode if we kill it without unregistering observers.
-  EXPECT_DCHECK_DEATH(graph()->TakeFromGraph(registry_));
-
-  // Unregister the observer so that the registry doesn't explode when it is
-  // torn down.
-  registry_->RemoveObserver(&obs);
-}
-
 }  // namespace execution_context
 }  // namespace performance_manager
diff --git a/components/performance_manager/execution_context_priority/ad_frame_voter_unittest.cc b/components/performance_manager/execution_context_priority/ad_frame_voter_unittest.cc
index 32327824..9a01b9e 100644
--- a/components/performance_manager/execution_context_priority/ad_frame_voter_unittest.cc
+++ b/components/performance_manager/execution_context_priority/ad_frame_voter_unittest.cc
@@ -68,7 +68,6 @@
   AdFrameVoterTest& operator=(const AdFrameVoterTest&) = delete;
 
   void SetUp() override {
-    GetGraphFeatures().EnableExecutionContextRegistry();
     Super::SetUp();
     auto wrapper = std::make_unique<GraphOwnedWrapper>();
     wrapper_ = wrapper.get();
diff --git a/components/performance_manager/execution_context_priority/child_frame_booster_unittest.cc b/components/performance_manager/execution_context_priority/child_frame_booster_unittest.cc
index c820459..3c02167f 100644
--- a/components/performance_manager/execution_context_priority/child_frame_booster_unittest.cc
+++ b/components/performance_manager/execution_context_priority/child_frame_booster_unittest.cc
@@ -78,7 +78,6 @@
   ChildFrameBoosterTest& operator=(const ChildFrameBoosterTest&) = delete;
 
   void SetUp() override {
-    Super::GetGraphFeatures().EnableExecutionContextRegistry();
     Super::SetUp();
     wrapper_ = graph()->PassToGraph(std::make_unique<GraphOwnedWrapper>());
   }
diff --git a/components/performance_manager/execution_context_priority/frame_audible_voter_unittest.cc b/components/performance_manager/execution_context_priority/frame_audible_voter_unittest.cc
index cf0597e8ec..001ec86 100644
--- a/components/performance_manager/execution_context_priority/frame_audible_voter_unittest.cc
+++ b/components/performance_manager/execution_context_priority/frame_audible_voter_unittest.cc
@@ -69,7 +69,6 @@
   FrameAudibleVoterTest& operator=(const FrameAudibleVoterTest&) = delete;
 
   void SetUp() override {
-    Super::GetGraphFeatures().EnableExecutionContextRegistry();
     Super::SetUp();
     wrapper_ = graph()->PassToGraph(std::make_unique<GraphOwnedWrapper>());
   }
diff --git a/components/performance_manager/execution_context_priority/frame_capturing_media_stream_voter_unittest.cc b/components/performance_manager/execution_context_priority/frame_capturing_media_stream_voter_unittest.cc
index 5402b86..3b8d559 100644
--- a/components/performance_manager/execution_context_priority/frame_capturing_media_stream_voter_unittest.cc
+++ b/components/performance_manager/execution_context_priority/frame_capturing_media_stream_voter_unittest.cc
@@ -73,7 +73,6 @@
       const FrameCapturingMediaStreamVoterTest&) = delete;
 
   void SetUp() override {
-    GetGraphFeatures().EnableExecutionContextRegistry();
     Super::SetUp();
     wrapper_ = graph()->PassToGraph(std::make_unique<GraphOwnedWrapper>());
   }
diff --git a/components/performance_manager/execution_context_priority/frame_visibility_voter_unittest.cc b/components/performance_manager/execution_context_priority/frame_visibility_voter_unittest.cc
index df1d957..731bc70 100644
--- a/components/performance_manager/execution_context_priority/frame_visibility_voter_unittest.cc
+++ b/components/performance_manager/execution_context_priority/frame_visibility_voter_unittest.cc
@@ -69,7 +69,6 @@
   FrameVisibilityVoterTest& operator=(const FrameVisibilityVoterTest&) = delete;
 
   void SetUp() override {
-    GetGraphFeatures().EnableExecutionContextRegistry();
     GetGraphFeatures().EnableFrameVisibilityDecorator();
     Super::SetUp();
     auto wrapper = std::make_unique<GraphOwnedWrapper>();
diff --git a/components/performance_manager/execution_context_priority/inherit_client_priority_voter_unittest.cc b/components/performance_manager/execution_context_priority/inherit_client_priority_voter_unittest.cc
index 288b611..3f7d241 100644
--- a/components/performance_manager/execution_context_priority/inherit_client_priority_voter_unittest.cc
+++ b/components/performance_manager/execution_context_priority/inherit_client_priority_voter_unittest.cc
@@ -5,9 +5,9 @@
 #include "components/performance_manager/execution_context_priority/inherit_client_priority_voter.h"
 
 #include "base/memory/raw_ptr.h"
-#include "components/performance_manager/execution_context/execution_context_registry_impl.h"
 #include "components/performance_manager/execution_context_priority/root_vote_observer.h"
 #include "components/performance_manager/public/execution_context/execution_context.h"
+#include "components/performance_manager/public/execution_context/execution_context_registry.h"
 #include "components/performance_manager/public/graph/graph.h"
 #include "components/performance_manager/test_support/graph_test_harness.h"
 #include "components/performance_manager/test_support/mock_graphs.h"
@@ -71,9 +71,6 @@
   void SetUp() override {
     Super::SetUp();
 
-    graph()->PassToGraph(
-        std::make_unique<execution_context::ExecutionContextRegistryImpl>());
-
     auto wrapper = std::make_unique<GraphOwnedWrapper>();
     wrapper_ = wrapper.get();
     graph()->PassToGraph(std::move(wrapper));
diff --git a/components/performance_manager/execution_context_priority/loading_page_voter_unittest.cc b/components/performance_manager/execution_context_priority/loading_page_voter_unittest.cc
index 9baf1cc..aa38e2a 100644
--- a/components/performance_manager/execution_context_priority/loading_page_voter_unittest.cc
+++ b/components/performance_manager/execution_context_priority/loading_page_voter_unittest.cc
@@ -68,7 +68,6 @@
   LoadingPageVoterTest& operator=(const LoadingPageVoterTest&) = delete;
 
   void SetUp() override {
-    GetGraphFeatures().EnableExecutionContextRegistry();
     Super::SetUp();
     auto wrapper = std::make_unique<GraphOwnedWrapper>();
     wrapper_ = wrapper.get();
diff --git a/components/performance_manager/execution_context_priority/root_vote_observer_unittest.cc b/components/performance_manager/execution_context_priority/root_vote_observer_unittest.cc
index 174ab79..b738a38 100644
--- a/components/performance_manager/execution_context_priority/root_vote_observer_unittest.cc
+++ b/components/performance_manager/execution_context_priority/root_vote_observer_unittest.cc
@@ -36,18 +36,7 @@
 using MockFrameNodeObserver =
     ::testing::StrictMock<LenientMockFrameNodeObserver>;
 
-class RootVoteObserverTest : public GraphTestHarness {
- public:
-  using Super = GraphTestHarness;
-
-  RootVoteObserverTest() = default;
-  ~RootVoteObserverTest() override = default;
-
-  void SetUp() override {
-    GetGraphFeatures().EnableExecutionContextRegistry();
-    Super::SetUp();
-  }
-};
+using RootVoteObserverTest = GraphTestHarness;
 
 }  // namespace
 
diff --git a/components/performance_manager/freezing/freezing_policy.cc b/components/performance_manager/freezing/freezing_policy.cc
index 78bfad4..9220e07 100644
--- a/components/performance_manager/freezing/freezing_policy.cc
+++ b/components/performance_manager/freezing/freezing_policy.cc
@@ -238,22 +238,20 @@
   return false;
 }
 
-void FreezingPolicy::OnBeforeGraphDestroyed(Graph* graph) {
-  graph->GetNodeDataDescriberRegistry()->UnregisterDescriber(this);
-  graph->RemoveFrameNodeObserver(this);
-  graph->RemovePageNodeObserver(this);
-  graph->RemoveGraphObserver(this);
-  graph->UnregisterObject(this);
-}
-
 void FreezingPolicy::OnPassedToGraph(Graph* graph) {
   graph->RegisterObject(this);
-  graph->AddGraphObserver(this);
   graph->AddPageNodeObserver(this);
   graph->AddFrameNodeObserver(this);
   graph->GetNodeDataDescriberRegistry()->RegisterDescriber(this, "Freezing");
 }
 
+void FreezingPolicy::OnTakenFromGraph(Graph* graph) {
+  graph->GetNodeDataDescriberRegistry()->UnregisterDescriber(this);
+  graph->RemoveFrameNodeObserver(this);
+  graph->RemovePageNodeObserver(this);
+  graph->UnregisterObject(this);
+}
+
 void FreezingPolicy::OnPageNodeAdded(const PageNode* page_node) {
   auto& page_freezing_state = PageFreezingState::FromPage(page_node);
 
diff --git a/components/performance_manager/freezing/freezing_policy.h b/components/performance_manager/freezing/freezing_policy.h
index b6be371..d0b2308 100644
--- a/components/performance_manager/freezing/freezing_policy.h
+++ b/components/performance_manager/freezing/freezing_policy.h
@@ -46,8 +46,7 @@
 //   - Mirrored;
 //   - Capturing window;
 //   - Capturing display;
-class FreezingPolicy : public GraphObserver,
-                       public GraphOwnedDefaultImpl,
+class FreezingPolicy : public GraphOwnedDefaultImpl,
                        public GraphRegisteredImpl<FreezingPolicy>,
                        public PageNode::ObserverDefaultImpl,
                        public FrameNode::ObserverDefaultImpl,
@@ -114,11 +113,9 @@
   static bool HasCannotFreezeReason(
       const BrowsingInstanceState& browsing_instance_state);
 
-  // GraphObserver implementation:
-  void OnBeforeGraphDestroyed(Graph* graph) override;
-
   // GraphOwned implementation:
   void OnPassedToGraph(Graph* graph) override;
+  void OnTakenFromGraph(Graph* graph) override;
 
   // PageNodeObserver implementation:
   void OnPageNodeAdded(const PageNode* page_node) override;
diff --git a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.cc b/components/performance_manager/freezing/frozen_frame_aggregator.cc
similarity index 98%
rename from chrome/browser/performance_manager/decorators/frozen_frame_aggregator.cc
rename to components/performance_manager/freezing/frozen_frame_aggregator.cc
index 5e2f044..198f075 100644
--- a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.cc
+++ b/components/performance_manager/freezing/frozen_frame_aggregator.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h"
+#include "components/performance_manager/freezing/frozen_frame_aggregator.h"
 
 #include "components/performance_manager/graph/frame_node_impl.h"
 #include "components/performance_manager/graph/graph_impl.h"
diff --git a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h b/components/performance_manager/freezing/frozen_frame_aggregator.h
similarity index 93%
rename from chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h
rename to components/performance_manager/freezing/frozen_frame_aggregator.h
index 668772e..e8fbcb2 100644
--- a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h
+++ b/components/performance_manager/freezing/frozen_frame_aggregator.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_FROZEN_FRAME_AGGREGATOR_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_FROZEN_FRAME_AGGREGATOR_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_FREEZING_FROZEN_FRAME_AGGREGATOR_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_FREEZING_FROZEN_FRAME_AGGREGATOR_H_
 
 #include "components/performance_manager/public/graph/frame_node.h"
 #include "components/performance_manager/public/graph/graph.h"
@@ -93,4 +93,4 @@
 
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_DECORATORS_FROZEN_FRAME_AGGREGATOR_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_FREEZING_FROZEN_FRAME_AGGREGATOR_H_
diff --git a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator_unittest.cc b/components/performance_manager/freezing/frozen_frame_aggregator_unittest.cc
similarity index 98%
rename from chrome/browser/performance_manager/decorators/frozen_frame_aggregator_unittest.cc
rename to components/performance_manager/freezing/frozen_frame_aggregator_unittest.cc
index 3a8fa00..b94b812 100644
--- a/chrome/browser/performance_manager/decorators/frozen_frame_aggregator_unittest.cc
+++ b/components/performance_manager/freezing/frozen_frame_aggregator_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/decorators/frozen_frame_aggregator.h"
+#include "components/performance_manager/freezing/frozen_frame_aggregator.h"
 
 #include <memory>
 
diff --git a/components/performance_manager/graph/graph.cc b/components/performance_manager/graph/graph.cc
index 9c54570e..09e5fdb1 100644
--- a/components/performance_manager/graph/graph.cc
+++ b/components/performance_manager/graph/graph.cc
@@ -11,9 +11,6 @@
 Graph::Graph() = default;
 Graph::~Graph() = default;
 
-GraphObserver::GraphObserver() = default;
-GraphObserver::~GraphObserver() = default;
-
 GraphOwned::GraphOwned() = default;
 GraphOwned::~GraphOwned() = default;
 
diff --git a/components/performance_manager/graph/graph_impl.cc b/components/performance_manager/graph/graph_impl.cc
index 15d383e8..f4370fd 100644
--- a/components/performance_manager/graph/graph_impl.cc
+++ b/components/performance_manager/graph/graph_impl.cc
@@ -146,6 +146,8 @@
 
   AddFrameNodeObserver(&initializing_frame_node_observer_manager_);
 
+  execution_context_registry_impl_.SetUp(this);
+
   CHECK_EQ(lifecycle_state_, LifecycleState::kBeforeSetUp);
   lifecycle_state_ = LifecycleState::kSetUpCalled;
 }
@@ -153,19 +155,15 @@
 void GraphImpl::TearDown() {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
 
-  // Notify graph observers that the graph is being destroyed.
-  for (auto& observer : graph_observers_) {
-    observer.OnBeforeGraphDestroyed(this);
-  }
-
   // Clean up graph owned objects. This causes their TakeFromGraph callbacks to
   // be invoked, and ideally they clean up any observers they may have, etc.
   graph_owned_.ReleaseObjects(this);
 
+  execution_context_registry_impl_.TearDown(this);
+
   RemoveFrameNodeObserver(&initializing_frame_node_observer_manager_);
 
   // At this point, all typed observers should be empty.
-  DCHECK(graph_observers_.empty());
   DCHECK(frame_node_observers_.empty());
   DCHECK(page_node_observers_.empty());
   DCHECK(process_node_observers_.empty());
@@ -180,11 +178,6 @@
   lifecycle_state_ = LifecycleState::kTearDownCalled;
 }
 
-void GraphImpl::AddGraphObserver(GraphObserver* observer) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  graph_observers_.AddObserver(observer);
-}
-
 void GraphImpl::AddFrameNodeObserver(FrameNodeObserver* observer) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
   frame_node_observers_.AddObserver(observer);
@@ -210,11 +203,6 @@
   worker_node_observers_.AddObserver(observer);
 }
 
-void GraphImpl::RemoveGraphObserver(GraphObserver* observer) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  graph_observers_.RemoveObserver(observer);
-}
-
 void GraphImpl::RemoveFrameNodeObserver(FrameNodeObserver* observer) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
   frame_node_observers_.RemoveObserver(observer);
diff --git a/components/performance_manager/graph/graph_impl.h b/components/performance_manager/graph/graph_impl.h
index 2934d3c..9bb4517d 100644
--- a/components/performance_manager/graph/graph_impl.h
+++ b/components/performance_manager/graph/graph_impl.h
@@ -18,6 +18,7 @@
 #include "base/observer_list.h"
 #include "base/process/process_handle.h"
 #include "base/sequence_checker.h"
+#include "components/performance_manager/execution_context/execution_context_registry_impl.h"
 #include "components/performance_manager/graph/initializing_frame_node_observer.h"
 #include "components/performance_manager/owned_objects.h"
 #include "components/performance_manager/public/graph/graph.h"
@@ -43,11 +44,6 @@
 // a list of observers that are notified of node addition and removal.
 class GraphImpl : public Graph {
  public:
-  // Pure virtual observer interface. Derive from this if you want to manually
-  // implement the whole interface, and have the compiler enforce that as new
-  // methods are added.
-  using Observer = GraphObserver;
-
   using FrameNodeImplVisitor = base::FunctionRef<bool(FrameNodeImpl*)>;
   using PageNodeImplVisitor = base::FunctionRef<bool(PageNodeImpl*)>;
   using ProcessNodeImplVisitor = base::FunctionRef<bool(ProcessNodeImpl*)>;
@@ -79,13 +75,11 @@
   void TearDown();
 
   // Graph implementation:
-  void AddGraphObserver(GraphObserver* observer) override;
   void AddFrameNodeObserver(FrameNodeObserver* observer) override;
   void AddPageNodeObserver(PageNodeObserver* observer) override;
   void AddProcessNodeObserver(ProcessNodeObserver* observer) override;
   void AddSystemNodeObserver(SystemNodeObserver* observer) override;
   void AddWorkerNodeObserver(WorkerNodeObserver* observer) override;
-  void RemoveGraphObserver(GraphObserver* observer) override;
   void RemoveFrameNodeObserver(FrameNodeObserver* observer) override;
   void RemovePageNodeObserver(PageNodeObserver* observer) override;
   void RemoveProcessNodeObserver(ProcessNodeObserver* observer) override;
@@ -272,8 +266,6 @@
       GUARDED_BY_CONTEXT(sequence_checker_) = nullptr;
 
   // Typed observers.
-  ObserverList<GraphObserver> graph_observers_
-      GUARDED_BY_CONTEXT(sequence_checker_);
   ObserverList<FrameNodeObserver> frame_node_observers_
       GUARDED_BY_CONTEXT(sequence_checker_);
   ObserverList<PageNodeObserver> page_node_observers_
@@ -312,6 +304,9 @@
   InitializingFrameNodeObserverManager
       initializing_frame_node_observer_manager_;
 
+  execution_context::ExecutionContextRegistryImpl
+      execution_context_registry_impl_;
+
   // The most recently assigned serialization ID.
   int64_t current_node_serialization_id_ GUARDED_BY_CONTEXT(sequence_checker_) =
       0u;
diff --git a/components/performance_manager/graph/graph_impl_unittest.cc b/components/performance_manager/graph/graph_impl_unittest.cc
index c03a4ab..9398d66 100644
--- a/components/performance_manager/graph/graph_impl_unittest.cc
+++ b/components/performance_manager/graph/graph_impl_unittest.cc
@@ -226,57 +226,6 @@
 
 namespace {
 
-class LenientMockObserver : public GraphObserver {
- public:
-  LenientMockObserver() {}
-  ~LenientMockObserver() override {}
-
-  MOCK_METHOD1(OnBeforeGraphDestroyed, void(Graph*));
-};
-
-using MockObserver = ::testing::StrictMock<LenientMockObserver>;
-
-using testing::_;
-using testing::Invoke;
-
-}  // namespace
-
-TEST_F(GraphImplTest, ObserverWorks) {
-  std::unique_ptr<GraphImpl> graph = std::make_unique<GraphImpl>();
-  graph->SetUp();
-  Graph* raw_graph = graph.get();
-
-  MockObserver obs;
-  graph->AddGraphObserver(&obs);
-  graph->RemoveGraphObserver(&obs);
-
-  MockObserver head_obs;
-  MockObserver tail_obs;
-  graph->AddGraphObserver(&head_obs);
-  graph->AddGraphObserver(&obs);
-  graph->AddGraphObserver(&tail_obs);
-
-  // Remove observers at the head and tail of the list inside a callback, and
-  // expect that `obs` is still notified correctly.
-  EXPECT_CALL(head_obs, OnBeforeGraphDestroyed(raw_graph))
-      .WillOnce(Invoke([&](Graph* graph) {
-        graph->RemoveGraphObserver(&head_obs);
-        graph->RemoveGraphObserver(&tail_obs);
-      }));
-  // `tail_obs` should not be notified as it was removed.
-  EXPECT_CALL(tail_obs, OnBeforeGraphDestroyed(_)).Times(0);
-
-  // Expect the graph teardown callback to be invoked. We have to unregister our
-  // observer in order to maintain graph invariants.
-  EXPECT_CALL(obs, OnBeforeGraphDestroyed(raw_graph))
-      .WillOnce(
-          Invoke([&obs](Graph* graph) { graph->RemoveGraphObserver(&obs); }));
-  graph->TearDown();
-  graph.reset();
-}
-
-namespace {
-
 class Foo : public GraphOwned {
  public:
   explicit Foo(int* destructor_count) : destructor_count_(destructor_count) {}
diff --git a/components/performance_manager/graph_features.cc b/components/performance_manager/graph_features.cc
index 75e9dca..f400046e 100644
--- a/components/performance_manager/graph_features.cc
+++ b/components/performance_manager/graph_features.cc
@@ -11,7 +11,6 @@
 #include "components/performance_manager/decorators/page_load_tracker_decorator.h"
 #include "components/performance_manager/decorators/process_hosted_content_types_aggregator.h"
 #include "components/performance_manager/decorators/process_priority_aggregator.h"
-#include "components/performance_manager/execution_context/execution_context_registry_impl.h"
 #include "components/performance_manager/execution_context_priority/execution_context_priority_decorator.h"
 #include "components/performance_manager/graph/frame_node_impl_describer.h"
 #include "components/performance_manager/graph/page_node_impl_describer.h"
@@ -40,9 +39,6 @@
 }  // namespace
 
 void GraphFeatures::ConfigureGraph(Graph* graph) const {
-  if (flags_.execution_context_registry) {
-    Install<execution_context::ExecutionContextRegistryImpl>(graph);
-  }
   if (flags_.frame_visibility_decorator) {
     Install<FrameVisibilityDecorator>(graph);
   }
@@ -58,15 +54,17 @@
   if (flags_.page_load_tracker_decorator) {
     Install<PageLoadTrackerDecorator>(graph);
   }
+  if (flags_.priority_tracking) {
+    Install<execution_context_priority::ExecutionContextPriorityDecorator>(
+        graph);
+    Install<ProcessPriorityAggregator>(graph);
+  }
   if (flags_.process_hosted_content_types_aggregator) {
     Install<ProcessHostedContentTypesAggregator>(graph);
   }
   if (flags_.resource_attribution_scheduler) {
     Install<resource_attribution::internal::QueryScheduler>(graph);
   }
-  if (flags_.tab_page_decorator) {
-    Install<TabPageDecorator>(graph);
-  }
 
 #if !BUILDFLAG(IS_ANDROID)
   if (flags_.site_data_recorder) {
@@ -74,18 +72,16 @@
   }
 #endif
 
-  // These classes have a dependency on ExecutionContextRegistry, so must be
-  // installed after it.
-  if (flags_.priority_tracking) {
-    Install<execution_context_priority::ExecutionContextPriorityDecorator>(
-        graph);
-    Install<ProcessPriorityAggregator>(graph);
+  if (flags_.tab_page_decorator) {
+    Install<TabPageDecorator>(graph);
   }
+
   if (flags_.v8_context_tracker) {
     Install<v8_memory::V8ContextTracker>(graph);
   }
 
-  // TabConnectednessDecorator depends on TabPageDecorator.
+  // TabConnectednessDecorator depends on TabPageDecorator so it must be
+  // installed after..
   if (flags_.tab_connectedness_decorator) {
     Install<TabConnectednessDecorator>(graph);
   }
diff --git a/components/performance_manager/graph_features_unittest.cc b/components/performance_manager/graph_features_unittest.cc
index 8754491..524cc72 100644
--- a/components/performance_manager/graph_features_unittest.cc
+++ b/components/performance_manager/graph_features_unittest.cc
@@ -23,10 +23,8 @@
 TEST_F(GraphFeaturesTest, ConfigureGraph) {
   GraphFeatures features;
 
-  EXPECT_FALSE(features.flags().execution_context_registry);
   EXPECT_FALSE(features.flags().v8_context_tracker);
   features.EnableV8ContextTracker();
-  EXPECT_TRUE(features.flags().execution_context_registry);
   EXPECT_TRUE(features.flags().v8_context_tracker);
 
   TestGraphImpl graph;
@@ -44,23 +42,25 @@
   TestGraphImpl graph;
   graph.SetUp();
 
-  EXPECT_EQ(0u, graph.GraphOwnedCountForTesting());
-  EXPECT_EQ(0u, graph.GraphRegisteredCountForTesting());
-  EXPECT_EQ(0u, graph.NodeDataDescriberCountForTesting());
-  EXPECT_FALSE(
+  // The ExecutionContextRegistry is a permanent graph-registered object.
+  EXPECT_TRUE(
       execution_context::ExecutionContextRegistry::GetFromGraph(&graph));
+
+  EXPECT_EQ(1u, graph.GraphRegisteredCountForTesting());
+  EXPECT_EQ(0u, graph.GraphOwnedCountForTesting());
+  EXPECT_EQ(0u, graph.NodeDataDescriberCountForTesting());
   EXPECT_FALSE(v8_memory::V8ContextTracker::GetFromGraph(&graph));
 
   // An empty config should install nothing.
   features.ConfigureGraph(&graph);
+  EXPECT_EQ(1u, graph.GraphRegisteredCountForTesting());
   EXPECT_EQ(0u, graph.GraphOwnedCountForTesting());
-  EXPECT_EQ(0u, graph.GraphRegisteredCountForTesting());
   EXPECT_EQ(0u, graph.NodeDataDescriberCountForTesting());
-  EXPECT_FALSE(
+  EXPECT_TRUE(
       execution_context::ExecutionContextRegistry::GetFromGraph(&graph));
   EXPECT_FALSE(v8_memory::V8ContextTracker::GetFromGraph(&graph));
 
-  size_t graph_owned_count = 15;
+  size_t graph_owned_count = 14;
 #if !BUILDFLAG(IS_ANDROID)
   // The SiteDataRecorder is not available on Android.
   graph_owned_count++;
@@ -69,8 +69,8 @@
   // Validate that the default configuration works as expected.
   features.EnableDefault();
   features.ConfigureGraph(&graph);
-  EXPECT_EQ(graph_owned_count, graph.GraphOwnedCountForTesting());
   EXPECT_EQ(5u, graph.GraphRegisteredCountForTesting());
+  EXPECT_EQ(graph_owned_count, graph.GraphOwnedCountForTesting());
   EXPECT_EQ(9u, graph.NodeDataDescriberCountForTesting());
   // Ensure the GraphRegistered objects can be queried directly.
   EXPECT_TRUE(
diff --git a/components/performance_manager/public/graph/graph.h b/components/performance_manager/public/graph/graph.h
index edfeb77..ac24091 100644
--- a/components/performance_manager/public/graph/graph.h
+++ b/components/performance_manager/public/graph/graph.h
@@ -20,7 +20,6 @@
 
 namespace performance_manager {
 
-class GraphObserver;
 class GraphOwned;
 class GraphRegistered;
 class FrameNode;
@@ -44,8 +43,6 @@
 // a list of observers that are notified of node addition and removal.
 class Graph {
  public:
-  using Observer = GraphObserver;
-
   using FrameNodeVisitor = base::FunctionRef<bool(const FrameNode*)>;
   using PageNodeVisitor = base::FunctionRef<bool(const PageNode*)>;
   using ProcessNodeVisitor = base::FunctionRef<bool(const ProcessNode*)>;
@@ -60,7 +57,6 @@
 
   // Adds an |observer| on the graph. It is safe for observers to stay
   // registered on the graph at the time of its death.
-  virtual void AddGraphObserver(GraphObserver* observer) = 0;
   virtual void AddFrameNodeObserver(FrameNodeObserver* observer) = 0;
   virtual void AddPageNodeObserver(PageNodeObserver* observer) = 0;
   virtual void AddProcessNodeObserver(ProcessNodeObserver* observer) = 0;
@@ -68,7 +64,6 @@
   virtual void AddWorkerNodeObserver(WorkerNodeObserver* observer) = 0;
 
   // Removes an |observer| from the graph.
-  virtual void RemoveGraphObserver(GraphObserver* observer) = 0;
   virtual void RemoveFrameNodeObserver(FrameNodeObserver* observer) = 0;
   virtual void RemovePageNodeObserver(PageNodeObserver* observer) = 0;
   virtual void RemoveProcessNodeObserver(ProcessNodeObserver* observer) = 0;
@@ -183,25 +178,6 @@
 #define DCHECK_ON_GRAPH_SEQUENCE(graph) DCHECK(true)
 #endif
 
-// Observer interface for the graph.
-class GraphObserver : public base::CheckedObserver {
- public:
-  GraphObserver();
-
-  GraphObserver(const GraphObserver&) = delete;
-  GraphObserver& operator=(const GraphObserver&) = delete;
-
-  ~GraphObserver() override;
-
-  // Called before the |graph| associated with this observer disappears. This
-  // allows the observer to do any necessary cleanup work. Note that the
-  // observer should remove itself from observing the graph using this
-  // callback.
-  // TODO(chrisha): Make this run before the destructor!
-  // crbug.com/966840
-  virtual void OnBeforeGraphDestroyed(Graph* graph) = 0;
-};
-
 // Helper class for passing ownership of objects to a graph.
 class GraphOwned {
  public:
diff --git a/components/performance_manager/test_support/BUILD.gn b/components/performance_manager/test_support/BUILD.gn
index 01b02b7..de8d7bed 100644
--- a/components/performance_manager/test_support/BUILD.gn
+++ b/components/performance_manager/test_support/BUILD.gn
@@ -11,6 +11,8 @@
   sources = [
     "decorators_utils.h",
     "graph_impl.h",
+    "page_aggregator.cc",
+    "page_aggregator.h",
     "resource_attribution/gtest_util.h",
     "run_in_graph.cc",
     "run_in_graph.h",
diff --git a/chrome/browser/performance_manager/test_support/page_aggregator.cc b/components/performance_manager/test_support/page_aggregator.cc
similarity index 85%
rename from chrome/browser/performance_manager/test_support/page_aggregator.cc
rename to components/performance_manager/test_support/page_aggregator.cc
index eb68343..d729acfd 100644
--- a/chrome/browser/performance_manager/test_support/page_aggregator.cc
+++ b/components/performance_manager/test_support/page_aggregator.cc
@@ -2,11 +2,11 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/performance_manager/test_support/page_aggregator.h"
+#include "components/performance_manager/test_support/page_aggregator.h"
 
 #include "base/run_loop.h"
 #include "base/test/bind.h"
-#include "chrome/browser/performance_manager/decorators/page_aggregator.h"
+#include "components/performance_manager/decorators/page_aggregator.h"
 #include "components/performance_manager/public/graph/graph.h"
 #include "components/performance_manager/public/performance_manager.h"
 #include "testing/gtest/include/gtest/gtest.h"
diff --git a/chrome/browser/performance_manager/test_support/page_aggregator.h b/components/performance_manager/test_support/page_aggregator.h
similarity index 63%
rename from chrome/browser/performance_manager/test_support/page_aggregator.h
rename to components/performance_manager/test_support/page_aggregator.h
index dbb9e14..06b1083e 100644
--- a/chrome/browser/performance_manager/test_support/page_aggregator.h
+++ b/components/performance_manager/test_support/page_aggregator.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_PAGE_AGGREGATOR_H_
-#define CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_PAGE_AGGREGATOR_H_
+#ifndef COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_PAGE_AGGREGATOR_H_
+#define COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_PAGE_AGGREGATOR_H_
 
 #include "components/performance_manager/public/decorators/page_live_state_decorator.h"
 
@@ -15,4 +15,4 @@
 }  // namespace testing
 }  // namespace performance_manager
 
-#endif  // CHROME_BROWSER_PERFORMANCE_MANAGER_TEST_SUPPORT_PAGE_AGGREGATOR_H_
+#endif  // COMPONENTS_PERFORMANCE_MANAGER_TEST_SUPPORT_PAGE_AGGREGATOR_H_
diff --git a/components/performance_manager/v8_memory/v8_context_tracker.cc b/components/performance_manager/v8_memory/v8_context_tracker.cc
index aeb4cf4..9412e923 100644
--- a/components/performance_manager/v8_memory/v8_context_tracker.cc
+++ b/components/performance_manager/v8_memory/v8_context_tracker.cc
@@ -365,22 +365,9 @@
     data_store_->MarkDestroyed(ec_data);
 }
 
-void V8ContextTracker::OnBeforeGraphDestroyed(Graph* graph) {
-  DCHECK_ON_GRAPH_SEQUENCE(graph);
-  // Remove ourselves from the execution context registry observer list here as
-  // it may get torn down before our OnTakenFromGraph is called. This is also
-  // called from "OnTakenFromGraph", so it is resistant to the
-  // ExecutionContextRegistry no longer existing.
-  auto* registry =
-      execution_context::ExecutionContextRegistry::GetFromGraph(graph);
-  if (registry && registry->HasObserver(this))
-    registry->RemoveObserver(this);
-}
-
 void V8ContextTracker::OnPassedToGraph(Graph* graph) {
   DCHECK_ON_GRAPH_SEQUENCE(graph);
 
-  graph->AddGraphObserver(this);
   graph->AddProcessNodeObserver(this);
   graph->RegisterObject(this);
   graph->GetNodeDataDescriberRegistry()->RegisterDescriber(this,
@@ -388,22 +375,21 @@
   auto* registry =
       execution_context::ExecutionContextRegistry::GetFromGraph(graph);
   // We expect the registry to exist before we are passed to the graph.
-  DCHECK(registry);
+  CHECK(registry);
   registry->AddObserver(this);
 }
 
 void V8ContextTracker::OnTakenFromGraph(Graph* graph) {
   DCHECK_ON_GRAPH_SEQUENCE(graph);
 
-  // Call OnBeforeGraphDestroyed as well. This unregisters us from the
-  // ExecutionContextRegistry in case we're being removed from the graph
-  // prior to its destruction.
-  OnBeforeGraphDestroyed(graph);
+  auto* registry =
+      execution_context::ExecutionContextRegistry::GetFromGraph(graph);
+  CHECK(registry);
+  registry->RemoveObserver(this);
 
   graph->GetNodeDataDescriberRegistry()->UnregisterDescriber(this);
   graph->UnregisterObject(this);
   graph->RemoveProcessNodeObserver(this);
-  graph->RemoveGraphObserver(this);
 }
 
 base::Value::Dict V8ContextTracker::DescribeFrameNodeData(
diff --git a/components/performance_manager/v8_memory/v8_context_tracker.h b/components/performance_manager/v8_memory/v8_context_tracker.h
index af6e69d..c9002dd4 100644
--- a/components/performance_manager/v8_memory/v8_context_tracker.h
+++ b/components/performance_manager/v8_memory/v8_context_tracker.h
@@ -41,7 +41,6 @@
 // added to the Graph.
 class V8ContextTracker final
     : public execution_context::ExecutionContextObserverDefaultImpl,
-      public GraphObserver,
       public GraphOwned,
       public GraphRegisteredImpl<V8ContextTracker>,
       public NodeDataDescriberDefaultImpl,
@@ -209,9 +208,6 @@
   void OnBeforeExecutionContextRemoved(
       const execution_context::ExecutionContext* ec) final;
 
-  // Implementation of GraphObserver.
-  void OnBeforeGraphDestroyed(Graph* graph) final;
-
   // Implementation of GraphOwned.
   void OnPassedToGraph(Graph* graph) final;
   void OnTakenFromGraph(Graph* graph) final;
diff --git a/components/performance_manager/v8_memory/v8_context_tracker_helpers_unittest.cc b/components/performance_manager/v8_memory/v8_context_tracker_helpers_unittest.cc
index cbe12b11..7cae3bd3 100644
--- a/components/performance_manager/v8_memory/v8_context_tracker_helpers_unittest.cc
+++ b/components/performance_manager/v8_memory/v8_context_tracker_helpers_unittest.cc
@@ -5,10 +5,10 @@
 #include "components/performance_manager/v8_memory/v8_context_tracker_helpers.h"
 
 #include "base/memory/raw_ptr.h"
-#include "components/performance_manager/execution_context/execution_context_registry_impl.h"
 #include "components/performance_manager/graph/frame_node_impl.h"
 #include "components/performance_manager/graph/worker_node_impl.h"
 #include "components/performance_manager/public/execution_context/execution_context.h"
+#include "components/performance_manager/public/execution_context/execution_context_registry.h"
 #include "components/performance_manager/public/mojom/v8_contexts.mojom.h"
 #include "components/performance_manager/test_support/graph_test_harness.h"
 #include "components/performance_manager/test_support/mock_graphs.h"
@@ -30,8 +30,8 @@
   ~V8ContextTrackerHelpersTest() override = default;
 
   void OnGraphCreated(GraphImpl* graph_impl) override {
-    registry = graph_impl->PassToGraph(
-        std::make_unique<execution_context::ExecutionContextRegistryImpl>());
+    registry =
+        execution_context::ExecutionContextRegistry::GetFromGraph(graph());
     mock_graph =
         std::make_unique<MockSinglePageWithMultipleProcessesGraph>(graph());
   }
diff --git a/components/performance_manager/v8_memory/v8_context_tracker_internal_unittest.cc b/components/performance_manager/v8_memory/v8_context_tracker_internal_unittest.cc
index 2fc3ccc..a1ea2de 100644
--- a/components/performance_manager/v8_memory/v8_context_tracker_internal_unittest.cc
+++ b/components/performance_manager/v8_memory/v8_context_tracker_internal_unittest.cc
@@ -8,7 +8,7 @@
 
 #include "base/memory/raw_ptr.h"
 #include "base/test/gtest_util.h"
-#include "components/performance_manager/execution_context/execution_context_registry_impl.h"
+#include "components/performance_manager/public/execution_context/execution_context_registry.h"
 #include "components/performance_manager/public/mojom/v8_contexts.mojom.h"
 #include "components/performance_manager/test_support/graph_test_harness.h"
 #include "components/performance_manager/test_support/mock_graphs.h"
@@ -30,8 +30,8 @@
   V8ContextTrackerInternalTest() = default;
 
   void OnGraphCreated(GraphImpl* graph_impl) override {
-    registry_ = graph_impl->PassToGraph(
-        std::make_unique<execution_context::ExecutionContextRegistryImpl>());
+    registry_ =
+        execution_context::ExecutionContextRegistry::GetFromGraph(graph());
     tracker_ = graph_impl->PassToGraph(std::make_unique<V8ContextTracker>());
     mock_graph_ =
         std::make_unique<MockSinglePageWithMultipleProcessesGraph>(graph());
diff --git a/components/performance_manager/v8_memory/v8_context_tracker_unittest.cc b/components/performance_manager/v8_memory/v8_context_tracker_unittest.cc
index 3e72183..1dab460 100644
--- a/components/performance_manager/v8_memory/v8_context_tracker_unittest.cc
+++ b/components/performance_manager/v8_memory/v8_context_tracker_unittest.cc
@@ -13,10 +13,10 @@
 #include "base/memory/raw_ptr_exclusion.h"
 #include "base/test/gtest_util.h"
 #include "base/types/optional_util.h"
-#include "components/performance_manager/execution_context/execution_context_registry_impl.h"
 #include "components/performance_manager/graph/frame_node_impl.h"
 #include "components/performance_manager/graph/page_node_impl.h"
 #include "components/performance_manager/graph/process_node_impl.h"
+#include "components/performance_manager/public/execution_context/execution_context_registry.h"
 #include "components/performance_manager/public/mojom/v8_contexts.mojom.h"
 #include "components/performance_manager/test_support/graph_test_harness.h"
 #include "components/performance_manager/test_support/mock_graphs.h"
@@ -62,8 +62,8 @@
   ~V8ContextTrackerTest() override = default;
 
   void OnGraphCreated(GraphImpl* graph_impl) override {
-    registry_ = graph_impl->PassToGraph(
-        std::make_unique<execution_context::ExecutionContextRegistryImpl>());
+    registry_ =
+        execution_context::ExecutionContextRegistry::GetFromGraph(graph());
     tracker_ = graph_impl->PassToGraph(std::make_unique<V8ContextTracker>());
     mock_graph_ =
         std::make_unique<MockSinglePageWithMultipleProcessesGraph>(graph());
diff --git a/components/performance_manager/v8_memory/v8_detailed_memory_unittest.cc b/components/performance_manager/v8_memory/v8_detailed_memory_unittest.cc
index 01b08c3..f6cd091 100644
--- a/components/performance_manager/v8_memory/v8_detailed_memory_unittest.cc
+++ b/components/performance_manager/v8_memory/v8_detailed_memory_unittest.cc
@@ -118,9 +118,7 @@
 class V8DetailedMemoryDecoratorTest : public GraphTestHarness,
                                       public V8MemoryTestBase {
  public:
-  V8DetailedMemoryDecoratorTest() {
-    GetGraphFeatures().EnableExecutionContextRegistry();
-  }
+  V8DetailedMemoryDecoratorTest() = default;
 
   scoped_refptr<base::SingleThreadTaskRunner> GetMainThreadTaskRunner()
       override {
diff --git a/components/performance_manager/v8_memory/v8_memory_test_helpers.cc b/components/performance_manager/v8_memory/v8_memory_test_helpers.cc
index 7cec516..4c4204e 100644
--- a/components/performance_manager/v8_memory/v8_memory_test_helpers.cc
+++ b/components/performance_manager/v8_memory/v8_memory_test_helpers.cc
@@ -171,7 +171,6 @@
     : PerformanceManagerTestHarness(
           // Use MOCK_TIME so that ExpectQueryAndDelayReply can be used.
           base::test::TaskEnvironment::TimeSource::MOCK_TIME) {
-  GetGraphFeatures().EnableExecutionContextRegistry();
   GetGraphFeatures().EnableV8ContextTracker();
 }
 
diff --git a/components/plus_addresses/plus_address_metrics.cc b/components/plus_addresses/plus_address_metrics.cc
index 890cfcd..c166882 100644
--- a/components/plus_addresses/plus_address_metrics.cc
+++ b/components/plus_addresses/plus_address_metrics.cc
@@ -19,15 +19,22 @@
 }
 
 // static
-void PlusAddressMetrics::RecordModalShownDuration(
+void PlusAddressMetrics::RecordModalShownOutcome(
     PlusAddressModalCompletionStatus status,
-    base::TimeDelta modal_shown_duration) {
+    base::TimeDelta modal_shown_duration,
+    int refresh_count) {
   base::UmaHistogramTimes(
       base::ReplaceStringPlaceholders(
           "Autofill.PlusAddresses.Modal.$1.ShownDuration",
           {PlusAddressModalCompletionStatusToString(status)},
           /*offsets=*/nullptr),
       modal_shown_duration);
+  base::UmaHistogramExactLinear(
+      base::ReplaceStringPlaceholders(
+          "Autofill.PlusAddresses.Modal.$1.Refreshes",
+          {PlusAddressModalCompletionStatusToString(status)},
+          /*offsets=*/nullptr),
+      refresh_count, /*exclusive_max=*/31);
 }
 
 // static
diff --git a/components/plus_addresses/plus_address_metrics.h b/components/plus_addresses/plus_address_metrics.h
index 150901e5..76b992d6 100644
--- a/components/plus_addresses/plus_address_metrics.h
+++ b/components/plus_addresses/plus_address_metrics.h
@@ -54,8 +54,9 @@
   static void RecordModalEvent(PlusAddressModalEvent plus_address_modal_event);
   // Log plus address creation modal/bottom sheet shown duration for each
   // closing `status`.
-  static void RecordModalShownDuration(PlusAddressModalCompletionStatus status,
-                                       base::TimeDelta modal_shown_duration);
+  static void RecordModalShownOutcome(PlusAddressModalCompletionStatus status,
+                                      base::TimeDelta modal_shown_duration,
+                                      int refresh_count);
   // Log plus address autofill suggestion events.
   static void RecordAutofillSuggestionEvent(
       autofill::AutofillPlusAddressDelegate::SuggestionEvent
diff --git a/components/policy/resources/policy_templates_de.xtb b/components/policy/resources/policy_templates_de.xtb
index bde892b..8f8bfbd 100644
--- a/components/policy/resources/policy_templates_de.xtb
+++ b/components/policy/resources/policy_templates_de.xtb
@@ -1462,6 +1462,9 @@
 <translation id="2157842368188031417">Die Richtlinie wird nur auf verwaltete Gastsitzungen angewendet. Für den Modus für gemeinsam genutzte Arbeitsstationen von Imprivata muss sie aktiviert werden, um Benutzerwechsel bei laufender Sitzung zu ermöglichen.
       Ist die Richtlinie auf „True“ gesetzt, wird die Überschreibung bestimmter Richtlinien für Funktionen erzwungen, die sensible Benutzerdaten beibehalten und nicht durch den Bereinigungsmechanismus abgedeckt sind, der im Modus für gemeinsam genutzte Arbeitsstationen von Imprivata den Benutzerwechsel bei laufender Sitzung ermöglicht.
       Wenn die Richtlinie auf „False“ gesetzt oder nicht konfiguriert ist, werden keine Richtlinien überschrieben.</translation>
+<translation id="2158741059065130266">Wenn die Richtlinie auf „True“ gesetzt ist, können Nutzer der <ph name="PRODUCT_OS_NAME" />-App „Dateien“ einen Papierkorb sehen und Dateien unter „Meine Dateien“ und „Downloads“ (einschließlich der vom Nutzer erstellten Nachfolgerelemente) beim Löschen dorthin verschieben.
+
+      Wenn die Richtlinie auf „False“ gesetzt ist, sind die Dateien, die sich bereits im Papierkorb befanden, weiterhin verfügbar: Zuvor verborgene Dateien werden angezeigt und das Verzeichnis „Papierkorb“ ist unter „Meine Dateien“ oder „Downloads“ einsehbar.</translation>
 <translation id="2159486052528894673">Zulassen, dass Cloud-Richtlinien auf Nutzerebene Cloud-Richtlinien auf Maschinenebene überschreiben.</translation>
 <translation id="2160170953213468208">Wenn diese Richtlinie aktiviert ist, wird beim Aufrufen von Office-Dokumenten mit einem bestimmten MIME-Typ, die normalerweise im <ph name="BASIC_EDITOR_NAME" /> geöffnet werden, das Herunterladen der Datei erzwungen.
 
@@ -4363,6 +4366,15 @@
 <translation id="4483738129334574255">Easter-Egg-Dinosaurierspiel auf registrierten <ph name="PRODUCT_OS_NAME" />-Geräten deaktivieren, aber auf anderen Geräten aktivieren</translation>
 <translation id="4484515651939984695">Gibt an, wie lange (in Sekunden) ein Übertragungsgerät, das mit einem Zugriffscode oder QR-Code ausgewählt wurde, im <ph name="PRODUCT_NAME" />-Menü für Übertragungsgeräte angezeigt wird.</translation>
 <translation id="4485425108474077672">URL für "Neuer Tab"-Seite konfigurieren</translation>
+<translation id="4488959486611931919">Hinweis: Seit Chrome diese Cookies ab M118 standardmäßig blockiert, wurde keine Websitebeschädigung gemeldet. Daher kann diese Funktion ab M127 nicht konfiguriert werden und diese Richtlinie ist dann nicht mehr wirksam.
+
+Durch diese Richtlinie wird vorübergehend die Zustimmung zu Änderungen am Umgang von Chrome mit Cookies widerrufen, die per JavaScript mit bestimmten Steuerzeichen festgelegt werden (NULL, Zeilenumbruch und Zeilenvorschub).
+Bisher führten diese Zeichen in einem Cookie-String dazu, dass der String abgeschnitten, aber dennoch festgelegt wurde.
+Jetzt führen diese Zeichen dazu, dass der gesamte Cookie-String ignoriert wird.
+
+Wenn diese Richtlinie auf „true“ gesetzt ist (Standardeinstellung), ist das neue Verhalten aktiviert.
+
+Wenn diese Richtlinie auf „false“ gesetzt ist, ist das alte Verhalten aktiviert.</translation>
 <translation id="4490420545181481759">Mit X.509-Zertifikaten können Einschränkungen wie Namensbeschränkungen in Erweiterungen in das Zertifikat codiert werden. RFC 5280 gibt an, dass die Durchsetzung solcher Einschränkungen für Trust-Anchor-Zertifikate optional ist. Ab <ph name="PRODUCT_NAME" /> 112 werden solche Einschränkungen in Zertifikaten, die aus dem Shop für Plattformzertifikate geladen werden, erzwungen.
 
 Diese Richtlinie ist ein vorübergehender Deaktivierungsmechanismus für den Fall, dass Unternehmen Probleme mit den in ihre privaten Root-Zertifikate codierten Einschränkungen haben. Diese Richtlinie kann dann verwendet werden, um die Erzwingung der Einschränkungen vorübergehend zu deaktivieren und die Probleme mit dem Zertifikat zu beheben.
diff --git a/components/policy/resources/policy_templates_es-419.xtb b/components/policy/resources/policy_templates_es-419.xtb
index ab2cbf0..56423600 100644
--- a/components/policy/resources/policy_templates_es-419.xtb
+++ b/components/policy/resources/policy_templates_es-419.xtb
@@ -1523,6 +1523,9 @@
 <translation id="2157842368188031417">La política solo se aplica a sesiones de invitado administradas. Debe habilitarse para que se pueda cambiar de usuario durante la sesión en el modo de estación de trabajo compartida de Imprivata.
       Si estableces la política como verdadera, se anularán de manera automática algunas políticas de funciones, las cuales conservan datos sensibles del usuario y no se controlan mediante el mecanismo de limpieza utilizado para cambiar de usuario durante la sesión con el modo de estación de trabajo compartida de Imprivata.
       Si estableces la política como falsa o no la estableces, no se anulará ninguna política.</translation>
+<translation id="2158741059065130266">Si estableces la política como verdadera, los usuarios de la app de Archivos de <ph name="PRODUCT_OS_NAME" /> podrán ver la Papelera y los archivos de Mis archivos y Descargas (incluidos los subordinados creados por el usuario) se enviarán allí cuando los borres.
+
+      Si estableces la política como falsa, los archivos de la papelera seguirán disponibles si se muestran los archivos ocultos y si se busca el directorio Papelera en Mis archivos o Descargas.</translation>
 <translation id="2159486052528894673">Permitir que las políticas de nube destinadas a los usuarios anulen las políticas de nube de la máquina</translation>
 <translation id="2160170953213468208">Si habilitas la política, esta forzará la navegación a cualquier documento de Office con un tipo de MIME que normalmente controla <ph name="BASIC_EDITOR_NAME" /> para descargar el archivo.
 
diff --git a/components/policy/resources/policy_templates_es.xtb b/components/policy/resources/policy_templates_es.xtb
index 5873a15..f67476c 100644
--- a/components/policy/resources/policy_templates_es.xtb
+++ b/components/policy/resources/policy_templates_es.xtb
@@ -1467,6 +1467,9 @@
 <translation id="2157842368188031417">La política solo se aplica a las sesiones de invitado administradas. Tiene que estar habilitada para que el modo de estación de trabajo compartida de Imprivata permita cambios de usuario durante la sesión.
       Si se le asigna el valor True a la política, se forzará la anulación de determinadas políticas de funciones, que conservan datos de usuario sensibles y no se gestionan mediante el mecanismo de limpieza usado en los cambios de usuario durante la sesión del modo de estación de trabajo compartida de Imprivata.
       Si se le asigna el valor False a la política o no se define, no se anulará ninguna política.</translation>
+<translation id="2158741059065130266">Si se le asigna el valor True a esta política, los usuarios de la aplicación Archivos de <ph name="PRODUCT_OS_NAME" /> verán una papelera, y los archivos que se encuentren en Mis archivos y en Descargas (incluidos sus descendientes creados por el usuario) se enviarán allí cuando se eliminen.
+
+      Si se le asigna el valor False a esta política, los archivos que estuvieran previamente en la papelera seguirán disponibles y se podrán ver mostrando los archivos ocultos y buscando el directorio .Trash en Mis archivos o en Descargas.</translation>
 <translation id="2159486052528894673">Permitir que las políticas basadas en la nube a nivel de usuario anulen las políticas en la nube a nivel de máquina</translation>
 <translation id="2160170953213468208">Si se habilita, esta política forzará que se descargue el archivo al acceder a cualquier documento de Office con un tipo de MIME que normalmente gestiona <ph name="BASIC_EDITOR_NAME" />.
 
diff --git a/components/policy/resources/policy_templates_fr.xtb b/components/policy/resources/policy_templates_fr.xtb
index b6e5e033..c29765b 100644
--- a/components/policy/resources/policy_templates_fr.xtb
+++ b/components/policy/resources/policy_templates_fr.xtb
@@ -1466,6 +1466,9 @@
 <translation id="2157842368188031417">Cette règle ne concerne que les sessions Invité gérées. Elle doit être activée pour que le mode station de travail partagée d'Imprivata autorise les changements d'utilisateurs en cours de session.
       Si cette règle est définie sur "True", certaines règles sont ignorées d'office pour des fonctionnalités, qui conservent les données utilisateur sensibles et qui ne sont pas gérées par le mécanisme de nettoyage utilisé pour les changements d'utilisateurs en cours de session avec le mode station de travail partagée d'Imprivata.
       Si cette règle est définie sur "False" ou qu'elle n'est pas configurée, aucune règle n'est ignorée.</translation>
+<translation id="2158741059065130266">Si cette règle est définie sur "True", les utilisateurs de l'appli Fichiers de <ph name="PRODUCT_OS_NAME" /> voient une corbeille et les fichiers sous "Mes fichiers" et "Téléchargements" (y compris leurs descendants créés par l'utilisateur) y sont envoyés lors de la suppression.
+
+      Si cette règle est définie sur "False", les fichiers qui se trouvaient dans la corbeille sont disponibles en affichant les fichiers masqués et en trouvant le répertoire ".Corbeille" sous "Mes fichiers" ou "Téléchargements".</translation>
 <translation id="2159486052528894673">Autoriser les règles cloud utilisateur à ignorer les règles cloud machine.</translation>
 <translation id="2160170953213468208">Lorsque cette règle est activée, tous les documents Office ayant un type MIME normalement géré par <ph name="BASIC_EDITOR_NAME" /> sont téléchargés de force quand l'utilisateur y accède.
 
@@ -4366,6 +4369,15 @@
 <translation id="4483738129334574255">Désactiver le jeu easter egg du dinosaure sur les appareils <ph name="PRODUCT_OS_NAME" /> enregistrés, l'activer dans d'autres circonstances</translation>
 <translation id="4484515651939984695">Définir la durée d'affichage (en secondes) d'un appareil Cast sélectionné via un code d'accès ou un code QR dans la liste des appareils Cast du menu <ph name="PRODUCT_NAME" />.</translation>
 <translation id="4485425108474077672">Configurer l'URL de la page "Nouvel onglet"</translation>
+<translation id="4488959486611931919">Remarque : Aucune panne de site n'a été signalée depuis que Chrome a commencé à bloquer ces cookies par défaut à partir de M118. Cette fonctionnalité ne sera donc plus configurable (et cette règle n'aura aucun effet) à partir de M127.
+
+Cette règle permet de désactiver temporairement les modifications apportées à la façon dont Chrome traite les cookies définis via JavaScript qui contiennent certains caractères de contrôle (NULL, retour chariot et saut de ligne).
+Auparavant, la présence d'un de ces caractères dans une chaîne de cookie entraînait sa troncation, mais il restait défini.
+Désormais, toute la chaîne du cookie sera ignorée en présence de ces caractères.
+
+Si cette règle est définie sur "True" (valeur par défaut), le nouveau comportement est activé.
+
+Si cette règle est définie sur "False", l'ancien comportement est activé.</translation>
 <translation id="4490420545181481759">Les certificats X.509 peuvent encoder des contraintes, telles que des contraintes de nom, dans les extensions du certificat. RFC 5280 spécifie que l'application de ces contraintes sur les certificats d'ancres de confiance est facultative. À partir de <ph name="PRODUCT_NAME" /> 112, de telles contraintes dans les certificats chargées à partir du magasin de certificats de la plate-forme seront désormais appliquées.
 
 Cette règle existe en tant que désactivation temporaire, au cas où une entreprise rencontre des problèmes avec les contraintes encodées dans ses racines privées. Dans ce cas, cette règle peut être utilisée pour désactiver temporairement l'application des contraintes tout en corrigeant les problèmes de certificat.
diff --git a/components/policy/resources/policy_templates_id.xtb b/components/policy/resources/policy_templates_id.xtb
index 6c82eaa..26edc63 100644
--- a/components/policy/resources/policy_templates_id.xtb
+++ b/components/policy/resources/policy_templates_id.xtb
@@ -1524,6 +1524,9 @@
 <translation id="2157842368188031417">Kebijakan ini hanya berlaku untuk sesi tamu terkelola. Kebijakan ini harus diaktifkan untuk mode workstation bersama Imprivata guna memungkinkan pengalihan pengguna dalam sesi.
       Menyetel kebijakan ke Benar (True) akan memaksa penggantian kebijakan tertentu untuk fitur, yang mempertahankan data pengguna sensitif dan tidak ditangani oleh mekanisme pembersihan yang digunakan untuk pengalihan pengguna dalam sesi dengan mode workstation bersama Imprivata.
       Jika kebijakan disetel ke Salah (False) atau tidak disetel, tidak ada kebijakan yang akan diganti.</translation>
+<translation id="2158741059065130266">Jika kebijakan disetel ke Benar (True), pengguna aplikasi File <ph name="PRODUCT_OS_NAME" /> akan melihat Sampah dan file di bagian File saya dan Download (termasuk turunan yang dibuat oleh pengguna) akan dikirim ke sana saat dihapus.
+
+      Jika kebijakan disetel ke Salah (False), file yang sebelumnya berada di sampah akan tetap tersedia dengan menampilkan file tersembunyi dan menemukan direktori .Trash di bagian File saya atau Download.</translation>
 <translation id="2159486052528894673">Izinkan kebijakan cloud pengguna mengabaikan kebijakan cloud perangkat.</translation>
 <translation id="2160170953213468208">Jika disetel ke aktif, kebijakan ini akan memaksa navigasi ke dokumen Office apa pun dengan jenis MIME yang biasanya ditangani oleh <ph name="BASIC_EDITOR_NAME" /> untuk mendownload file tersebut.
 
@@ -4528,6 +4531,15 @@
 <translation id="4483738129334574255">Nonaktifkan game dinosaurus sebagai fitur tersembunyi di perangkat <ph name="PRODUCT_OS_NAME" /> yang terdaftar, aktifkan dalam kondisi lain</translation>
 <translation id="4484515651939984695">Menentukan durasi (dalam detik) perangkat transmisi yang dipilih dengan kode akses atau kode QR untuk tetap berada dalam daftar perangkat transmisi pada menu <ph name="PRODUCT_NAME" />.</translation>
 <translation id="4485425108474077672">Mengonfigurasi URL halaman Tab Baru</translation>
+<translation id="4488959486611931919">Catatan: Tidak ada kerusakan situs yang telah dilaporkan sejak Chrome mulai memblokir cookie ini secara default mulai M118, sehingga fungsi ini tidak akan dapat dikonfigurasi (dan kebijakan ini tidak akan terpengaruh) mulai M127.
+
+Kebijakan ini memberikan penghentian sementara untuk perubahan cara Chrome menangani cookie yang ditetapkan melalui JavaScript yang berisi karakter kontrol tertentu (NULL, enter, dan line feed).
+Sebelumnya, keberadaan salah satu karakter ini dalam string cookie akan membuatnya terpotong tetapi masih ditetapkan.
+Sekarang, keberadaan karakter ini akan menyebabkan seluruh string cookie diabaikan.
+
+Jika kebijakan ini disetel ke Benar (True), yang merupakan setelan defaultnya, perilaku baru akan diaktifkan.
+
+Jika kebijakan ini disetel ke Salah (False), perilaku lama akan diaktifkan.</translation>
 <translation id="4490420545181481759">Sertifikat X.509 dapat mengenkode batasan, seperti Batasan Nama,
 di ekstensi dalam sertifikat. RFC 5280 menetapkan bahwa menerapkan
 batasan tersebut pada sertifikat trust anchor bersifat opsional. Mulai
diff --git a/components/policy/resources/policy_templates_it.xtb b/components/policy/resources/policy_templates_it.xtb
index 2ce4835..db6d993a 100644
--- a/components/policy/resources/policy_templates_it.xtb
+++ b/components/policy/resources/policy_templates_it.xtb
@@ -1494,6 +1494,9 @@
 <translation id="2157842368188031417">Il criterio viene applicato soltanto alle sessioni ospite gestite. Deve essere attivato per consentire il cambio di utente all'interno della sessione nella modalità di workstation condivisa di Imprivata.
       Se il criterio viene impostato su Vero, vengono sostituiti forzatamente alcuni criteri per le funzionalità, che memorizzano dati utente sensibili e non vengono gestite tramite il meccanismo di pulizia usato per il cambio di utente all'interno della sessione con la modalità di workstation condivisa di Imprivata.
       Se il criterio viene impostato su Falso o se non viene configurato, i criteri non vengono sostituiti.</translation>
+<translation id="2158741059065130266">Se il criterio viene impostato su True, gli utenti dell'app File di <ph name="PRODUCT_OS_NAME" /> possono vedere un Cestino e i file nelle cartelle I miei file e Download (inclusi i discendenti creati dall'utente) verranno inviati al Cestino quando verranno eliminati.
+
+      Se il criterio viene impostato su False, i file che si trovavano nel cestino continueranno a essere disponibili visualizzando i file nascosti e cercando la directory .Trash nella cartella I miei file o Download.</translation>
 <translation id="2159486052528894673">Consenti ai criteri relativi al cloud degli utenti di eseguire l'override dei criteri relativi al cloud delle macchine.</translation>
 <translation id="2160170953213468208">Se viene attivato, questo criterio forza l'accesso a qualsiasi documento Office con un tipo MIME normalmente gestito dall'<ph name="BASIC_EDITOR_NAME" /> per scaricare il file.
 
@@ -4414,6 +4417,15 @@
 <translation id="4483738129334574255">Disattiva il gioco del dinosauro sui dispositivi <ph name="PRODUCT_OS_NAME" /> registrati, attivalo in altre circostanze</translation>
 <translation id="4484515651939984695">Specifica per quanto tempo (in secondi) un dispositivo di trasmissione selezionato con un codice di accesso o un codice QR rimane nell'elenco del menu di <ph name="PRODUCT_NAME" /> dei dispositivi di trasmissione.</translation>
 <translation id="4485425108474077672">Configura l'URL per la pagina Nuova scheda</translation>
+<translation id="4488959486611931919">Nota: non sono stati segnalati problemi di interruzione dei siti da quando Chrome ha iniziato a bloccare questi cookie per impostazione predefinita a partire dalla versione M118, pertanto questa funzionalità non sarà configurabile (e questo criterio non avrà alcun effetto) a partire dalla versione M127.
+
+Questo criterio consente di disattivare temporaneamente le modifiche al modo in cui Chrome gestisce i cookie impostati tramite JavaScript che contengono determinati caratteri di controllo (null, ritorno a capo e avanzamento riga).
+In precedenza, la presenza di uno qualsiasi di questi caratteri in una stringa di cookie causava un troncamento ma il criterio veniva comunque impostato.
+Ora, la presenza di questi caratteri farà sì che l'intera stringa di cookie venga ignorata.
+
+Se questo criterio viene impostato su True (valore predefinito), il nuovo comportamento viene attivato.
+
+Se questo criterio viene impostato su False, viene attivato il comportamento precedente.</translation>
 <translation id="4490420545181481759">I certificati X.509 possono codificare i vincoli, ad esempio i vincoli relativi ai nomi, nelle estensioni dei certificati. RFC 5280 specifica che l'applicazione forzata di questi vincoli sui certificati per trust anchor è facoltativa. A partire dalla versione 112 di <ph name="PRODUCT_NAME" />, questi vincoli nei certificati caricati dall'archivio certificati della piattaforma verranno applicati.
 
 Questo criterio è una soluzione di disattivazione temporanea nel caso in cui un'azienda riscontri problemi con i vincoli codificati nei propri certificati root privati. In questo caso è possibile usare questo criterio per disattivare temporaneamente l'applicazione forzata dei vincoli durante la risoluzione dei problemi dei certificati.
diff --git a/components/policy/resources/policy_templates_ja.xtb b/components/policy/resources/policy_templates_ja.xtb
index 34b50b9..5d0d50e 100644
--- a/components/policy/resources/policy_templates_ja.xtb
+++ b/components/policy/resources/policy_templates_ja.xtb
@@ -1427,6 +1427,9 @@
 <translation id="2157842368188031417">このポリシーは、管理対象ゲスト セッションにのみ適用されます。Imprivata の共有ワークステーション モードでセッション中のユーザー切り替えを可能にするには、このポリシーを有効にする必要があります。
       このポリシーを True に設定した場合、ユーザーの機密情報を保持し、Imprivata の共有ワークステーション モードでのセッション中のユーザー切り替えで使用される削除メカニズムによって処理されない機能に関する特定のポリシーが強制的にオーバーライドされます。
       このポリシーを False に設定するか未設定のままにした場合、ポリシーのオーバーライドは行われません。</translation>
+<translation id="2158741059065130266">このポリシーを True に設定した場合、<ph name="PRODUCT_OS_NAME" /> のファイルアプリにゴミ箱が表示され、「マイファイル」と「ダウンロード」(ユーザーがその下に作成したフォルダも含む)のファイルは削除時にゴミ箱に移動されます。
+
+      このポリシーを False に設定した場合、それまでゴミ箱に入っていたファイルは、隠しファイルを表示して「マイファイル」または「ダウンロード」の下にあるゴミ箱ディレクトリを探すことで使用できます。</translation>
 <translation id="2159486052528894673">ユーザーのクラウド ポリシーがマシンのクラウド ポリシーを上書きできるようにする</translation>
 <translation id="2160170953213468208">このポリシーを有効にした場合、通常 <ph name="BASIC_EDITOR_NAME" /> で処理される MIME タイプの Office ドキュメントを操作する際にファイルをダウンロードします。
 
@@ -4228,6 +4231,15 @@
 <translation id="4483738129334574255">登録されている <ph name="PRODUCT_OS_NAME" /> デバイスでは恐竜のイースター エッグゲームを無効にし、他の環境では有効にする</translation>
 <translation id="4484515651939984695">アクセスコードまたは QR コードで選択したキャスト デバイスを <ph name="PRODUCT_NAME" /> メニューのキャスト デバイスのリストに表示しておく期間(秒単位)を指定します。</translation>
 <translation id="4485425108474077672">新しいタブページ URL を設定する</translation>
+<translation id="4488959486611931919">注: M118 より、Chrome でこれらの Cookie をデフォルトでブロックするようになってから、サイトの破損は報告されていません。そのため、M127 以降、この機能は設定できなくなります(このポリシーは無視されます)。
+
+このポリシーでは、JavaScript を介して設定された、特定の制御文字(NULL、改行、ラインフィード)を含む Cookie の Chrome での処理方法を一時的に無効にします。
+これまでは、これらの文字が Cookie 文字列に含まれていた場合、切り捨ての処理を行ったうえで設定されていました。
+今後は、これらの文字が含まれる Cookie は文字列全体が無視されるようになります。
+
+このポリシーを True(デフォルト)に設定した場合、新しい動作が有効になります。
+
+このポリシーを False に設定した場合、従来の動作が有効になります。</translation>
 <translation id="4490420545181481759">X.509 証明書では、拡張機能に名前などの制約が証明書のエンコードされている場合があります。RFC 5280 では、これらの制約をトラスト アンカー証明書に適用するかどうかは任意となっています。<ph name="PRODUCT_NAME" /> 112 以降では、プラットフォームの証明書ストアから読み込まれた証明書にこれらの制約が適用されるようになります。
 
 このポリシーは、企業のプライベート ルートで、エンコードされた制約に問題が発生した場合に、一時的な回避策として使用できます。このポリシーを使用すると、証明書の問題を修正するまでの間、制約の適用を一時的に無効にできます。
diff --git a/components/policy/resources/policy_templates_ko.xtb b/components/policy/resources/policy_templates_ko.xtb
index 1a1b1e0..42cc413 100644
--- a/components/policy/resources/policy_templates_ko.xtb
+++ b/components/policy/resources/policy_templates_ko.xtb
@@ -1480,6 +1480,9 @@
 <translation id="2157842368188031417">이 정책은 관리되는 게스트 세션에만 적용됩니다. Imprivata의 공유 워크스테이션 모드에서 세션 내 사용자 전환을 허용하려면 이 정책이 사용 설정되어야 합니다.
       정책을 True로 설정하면 기능에 대한 특정 정책을 강제로 재정의하고, 그 결과 민감한 사용자 데이터가 보관되며 Imprivata 공유 워크스테이션 모드의 세션 내 사용자 전환에서 사용되는 삭제 메커니즘에 의해 처리되지 않습니다.
       정책을 False로 설정하거나 설정하지 않으면 어떤 정책도 재정의하지 않습니다.</translation>
+<translation id="2158741059065130266">정책을 True로 설정하면 <ph name="PRODUCT_OS_NAME" /> Files 앱 사용자에게 휴지통이 표시되며 내 파일 및 다운로드에 속한 파일(사용자가 만든 하위 항목 포함)을 삭제하면 휴지통으로 전송됩니다.
+
+      정책을 False로 설정하면 휴지통에 있던 파일을 내 파일 또는 다운로드에서 계속 접근할 수 있게 됩니다. 숨겨진 파일을 표시하고 내 파일 또는 다운로드의 .Trash 디렉터리를 찾으면 됩니다.</translation>
 <translation id="2159486052528894673">사용자 클라우드 정책이 머신 클라우드 정책보다 우선 적용되도록 허용</translation>
 <translation id="2160170953213468208">이 정책을 사용 설정하면 일반적으로 <ph name="BASIC_EDITOR_NAME" />에서 처리하는 MIME 유형의 Office 문서로 이동하여 파일을 다운로드하게 됩니다.
 
@@ -4418,6 +4421,15 @@
 <translation id="4483738129334574255">등록된 <ph name="PRODUCT_OS_NAME" /> 기기에서 공룡 이스터 에그 게임을 사용 중지하고 다른 상황에서는 사용 설정합니다.</translation>
 <translation id="4484515651939984695">액세스 코드 또는 QR 코드로 선택된 Cast 기기가 <ph name="PRODUCT_NAME" /> 메뉴의 Cast 기기 목록에 표시되는 기간 지정(단위: 초)</translation>
 <translation id="4485425108474077672">새 탭 페이지 URL 설정</translation>
+<translation id="4488959486611931919">참고: M118부터 Chrome에서 이러한 쿠키를 기본적으로 차단하기 시작했으므로 사이트가 손상되었다는 보고가 없었으며, 따라서 M127부터는 이 기능을 구성할 수 없고 이 정책은 적용되지 않습니다.
+
+이 정책은 특정 제어 문자(NULL, 캐리지 리턴, 라인 피드)가 포함된 JavaScript를 통해 설정된 쿠키를 Chrome이 처리하는 방식을 변경하는 기능을 일시적으로 선택 해제합니다.
+이전에는 쿠키 문자열에 이러한 문자가 있으면 잘림 처리되어도 계속 설정되었습니다.
+이제 이러한 문자가 있으면 전체 쿠키 문자열이 무시됩니다.
+
+정책이 True(기본값)로 설정되면 새 동작이 사용 설정됩니다.
+
+정책이 False로 설정되면 이전 동작이 사용 설정됩니다.</translation>
 <translation id="4490420545181481759">X.509 인증서는 인증서의 확장 프로그램에 이름 제약조건과 같은 제약조건을 인코딩할 수 있습니다. RFC 5280은 신뢰 앵커 인증서에 이러한 제약조건을 적용하는 것이 선택사항임을 명시합니다. 이제 <ph name="PRODUCT_NAME" /> 112부터 플랫폼 인증서 저장소에서 로드된 인증서에 이러한 제약조건이 적용됩니다.
 
 이 정책은 기업에서 비공개 루트에 인코딩된 제약조건 문제가 발생하는 경우 일시적인 선택 해제로 존재합니다. 이 경우 인증서 정책을 수정하는 동안 제약조건 시행을 일시적으로 중지하는 데 이 정책을 사용할 수 있습니다.
diff --git a/components/policy/resources/policy_templates_nl.xtb b/components/policy/resources/policy_templates_nl.xtb
index d9bea06d..e4d7407 100644
--- a/components/policy/resources/policy_templates_nl.xtb
+++ b/components/policy/resources/policy_templates_nl.xtb
@@ -1464,6 +1464,9 @@
 <translation id="2157842368188031417">Het beleid is alleen van toepassing op beheerde gastsessies. Het moet worden aangezet voor de gedeelde werkstationmodus van Imprivata om tijdens een sessie tussen gebruikers te kunnen wisselen.
       Als je het beleid instelt op True, worden bepaalde beleidsregels afgedwongen overschreven voor functies die gevoelige gebruikersgegevens bewaren en die niet worden verwerkt door het opschoonmechanisme dat wordt gebruikt om in de gedeelde werkstationmodus van Imprivata tijdens een sessie tussen gebruikers te wisselen.
       Als je het beleid instelt op False of niet instelt, wordt er geen beleid overschreven.</translation>
+<translation id="2158741059065130266">Als je het beleid instelt op True, kunnen gebruikers van de Bestanden-app van <ph name="PRODUCT_OS_NAME" /> een prullenbak zien en worden bestanden onder Mijn bestanden en Downloads (inclusief door de gebruiker gemaakte onderliggende items) daar naartoe gestuurd als ze worden verwijderd.
+
+      Als je het beleid instelt op False, zijn de bestanden die eerder in de prullenbak stonden, nog steeds beschikbaar door verborgen bestanden te tonen en de directory .Trash te zoeken onder Mijn bestanden of Downloads.</translation>
 <translation id="2159486052528894673">Toestaan dat cloudbeleidsregels voor gebruikers cloudbeleidsregels voor machines overschrijven.</translation>
 <translation id="2160170953213468208">Als je dit beleid toepast, wordt bij navigatie naar Office-documenten met een MIME-type dat normaal gesproken door de <ph name="BASIC_EDITOR_NAME" /> wordt verwerkt, afgedwongen dat het bestand wordt gedownload.
 
diff --git a/components/policy/resources/policy_templates_pt-BR.xtb b/components/policy/resources/policy_templates_pt-BR.xtb
index e2e56e6..23aebef 100644
--- a/components/policy/resources/policy_templates_pt-BR.xtb
+++ b/components/policy/resources/policy_templates_pt-BR.xtb
@@ -1521,6 +1521,9 @@
 <translation id="2157842368188031417">Esta política se aplica apenas a sessões de visitante gerenciadas. Ela precisa ser ativada para que o modo de estação de trabalho compartilhada do Imprivata permita trocas de usuário dentro da sessão.
       Definir a política como verdadeira substituirá forçadamente certas políticas para recursos, que mantêm dados de usuários sensíveis e não são gerenciadas pelo mecanismo de limpeza usado para troca de usuários dentro da sessão com a estação de trabalho compartilhada do Imprivata.
       Definir a política como falsa ou deixá-la sem definição não substituirá nenhuma política.</translation>
+<translation id="2158741059065130266">Se a política for definida como verdadeira, os usuários do app Arquivos do <ph name="PRODUCT_OS_NAME" /> vão poder ver uma lixeira, e os arquivos em "Meus arquivos" e "Downloads", incluindo os descendentes criados pelo usuário, vão ser enviados para lá após a exclusão.
+
+      Se a política for definida como falsa, os arquivos que estavam na lixeira ainda vão estar disponíveis, mostrando os arquivos ocultos e encontrando o diretório .Trash em "Meus arquivos" ou "Downloads".</translation>
 <translation id="2159486052528894673">Permitir que as políticas da nuvem de usuários substituam as políticas da nuvem da máquina.</translation>
 <translation id="2160170953213468208">Quando ativada, essa política força o download de qualquer documento do Office com um Tipo MIME normalmente processado por <ph name="BASIC_EDITOR_NAME" />.
 
diff --git a/components/policy/resources/policy_templates_ru.xtb b/components/policy/resources/policy_templates_ru.xtb
index 8d859b19..4a807a8 100644
--- a/components/policy/resources/policy_templates_ru.xtb
+++ b/components/policy/resources/policy_templates_ru.xtb
@@ -1462,6 +1462,9 @@
 <translation id="2157842368188031417">Правило действует только для управляемых гостевых сеансов. Чтобы разрешить переключения пользователей во время сеанса, правило должно быть включено для режима общей рабочей станции Imprivata.
       Если указано значение True, некоторые правила для функций, которые сохраняют конфиденциальные пользовательские данные и не обрабатываются механизмом очистки, применяемым для переключения пользователей во время сеанса в режиме общей рабочей станции Imprivata, будут переопределены.
       Если правило не настроено или указано значение False, переопределение правил происходить не будет.</translation>
+<translation id="2158741059065130266">Если задано значение True, пользователи приложения "Файлы" на <ph name="PRODUCT_OS_NAME" /> могут видеть корзину. Файлы из папок "Мои файлы", "Скачанные файлы" и дочерних папок, созданных пользователем, при удалении попадают туда.
+
+      При установлении значения False файлы, которые до этого находились в корзине, сохранятся. Для доступа к ним необходимо включить отображение скрытых файлов и найти раздел "Корзина" в папках "Мои файлы" или "Скачанные файлы".</translation>
 <translation id="2159486052528894673">Разрешить правилам облачных сервисов на уровне пользователей переопределять правила облачных сервисов на уровне устройств</translation>
 <translation id="2160170953213468208">Если правило включено, документы Office с MIME-типом, обычно обрабатываемые приложением "<ph name="BASIC_EDITOR_NAME" />", будут принудительно скачиваться.
 
@@ -4357,6 +4360,15 @@
 <translation id="4483738129334574255">Отключить игру с динозавром на зарегистрированных устройствах <ph name="PRODUCT_OS_NAME" />, но включить при других обстоятельствах</translation>
 <translation id="4484515651939984695">Указывает, сколько секунд устройство для трансляции, выбранное с помощью кода доступа или QR-кода, будет отображаться в списке меню <ph name="PRODUCT_NAME" /></translation>
 <translation id="4485425108474077672">Настройка URL страницы быстрого доступа</translation>
+<translation id="4488959486611931919">Примечание. С тех пор как в версии Chrome M118 начали по умолчанию блокироваться такие файлы cookie, нам не сообщали о проблемах в работе сайтов. Скоро настройка этой функции станет недоступна, а правило перестанет действовать в версии M127 и более поздних.
+
+Это правило позволяет временно отключить изменения, связанные с процессом обработки в Chrome файлов cookie, которые настраиваются с помощью JavaScript и содержат определенные управляющие символы: NULL, возврат каретки и перевод строки.
+Раньше строки cookie с такими символами обрезались, но настройка выполнялась.
+Теперь строки cookie с указанными символами будут полностью игнорироваться.
+
+Если задано значение True (по умолчанию), применяется новый способ обработки.
+
+Если выбрано значение False, используется прежний алгоритм.</translation>
 <translation id="4490420545181481759">В расширениях сертификатов X.509 могут быть закодированы ограничения, например на имена. В стандарте RFC 5280 указано, что необязательно принудительно применять такие ограничения к сертификатам якорей доверия. Начиная с <ph name="PRODUCT_NAME" /> версии 112, такие ограничения в сертификатах, загруженных из хранилища платформы, будут использоваться принудительно.
 
 Это правило применяется как временное решение в случаях, когда компании испытывают проблемы с ограничениями, закодированными в корневых сертификатах. Его можно использовать, чтобы временно отключить принудительное применение ограничений, пока проблемы с сертификатами не будут устранены.
diff --git a/components/policy/resources/policy_templates_th.xtb b/components/policy/resources/policy_templates_th.xtb
index cf1af0c..db746f9 100644
--- a/components/policy/resources/policy_templates_th.xtb
+++ b/components/policy/resources/policy_templates_th.xtb
@@ -1463,6 +1463,9 @@
 <translation id="2157842368188031417">นโยบายนี้ใช้กับเซสชันผู้เยี่ยมชมที่มีการจัดการเท่านั้น ต้องเปิดใช้สำหรับโหมดเวิร์กสเตชันที่ใช้ร่วมกันของ Imprivata เพื่ออนุญาตให้สลับผู้ใช้ในเซสชัน
       การตั้งค่านโยบายเป็น "จริง" จะบังคับให้ลบล้างนโยบายบางรายการสำหรับฟีเจอร์ต่างๆ ซึ่งการลบล้างนี้จะยังคงเก็บข้อมูลผู้ใช้ที่มีความละเอียดอ่อนไว้ และไม่ได้รับการจัดการโดยกลไกการล้างข้อมูลที่ใช้สำหรับการสลับผู้ใช้ในเซสชันด้วยโหมดเวิร์กสเตชันที่ใช้ร่วมกันของ Imprivata
       การตั้งค่านโยบายเป็น "เท็จ" หรือไม่ได้ตั้งค่าจะไม่ลบล้างนโยบายใดๆ</translation>
+<translation id="2158741059065130266">การตั้งค่านโยบายเป็น "จริง" ทำให้ผู้ใช้แอป Files ของ "<ph name="PRODUCT_OS_NAME" />" สามารถดูถังขยะและไฟล์ในส่วน "ไฟล์ของฉัน" และ "รายการที่ดาวน์โหลด" (รวมถึงองค์ประกอบสืบทอดที่ผู้ใช้สร้างขึ้น) ที่ระบบจะส่งไปเพื่อลบได้
+
+      หากตั้งค่านโยบายนี้เป็น "เท็จ" ไฟล์ที่อยู่ในถังขยะก่อนหน้านี้จะยังคงใช้งานได้โดยแสดงไฟล์ที่ซ่อนอยู่และจะเห็นไดเรกทอรี .Trash ในส่วน "ไฟล์ของฉัน" หรือ "รายการที่ดาวน์โหลด"</translation>
 <translation id="2159486052528894673">อนุญาตให้นโยบายระดับผู้ใช้บนระบบคลาวด์ลบล้างนโยบายระดับแมชชีนบนระบบคลาวด์</translation>
 <translation id="2160170953213468208">เมื่อเปิดใช้ นโยบายนี้จะบังคับให้ไปยังเอกสาร Office ที่มีประเภท MIME ซึ่งโดยทั่วไปจัดการโดย <ph name="BASIC_EDITOR_NAME" /> เพื่อดาวน์โหลดไฟล์
 
diff --git a/components/policy/resources/policy_templates_tr.xtb b/components/policy/resources/policy_templates_tr.xtb
index da2227c..5b67fd9 100644
--- a/components/policy/resources/policy_templates_tr.xtb
+++ b/components/policy/resources/policy_templates_tr.xtb
@@ -1488,6 +1488,9 @@
 <translation id="2157842368188031417">Bu politika, yalnızca yönetilen misafir oturumları için geçerlidir. Imprivata'nın paylaşılan iş istasyonu modunda oturum içi kullanıcı değişikliğine izin verilmesi için bu politikanın etkinleştirilmesi gerekir.
       Politika, Doğru değerine ayarlanırsa özelliklerle ilgili politikalardan Imprivata paylaşılan iş istasyonu modundaki oturum içi kullanıcı değişikliklerinde kullanılan temizleme mekanizması tarafından işlenmeyen ve hassas kullanıcı verilerini tutan belirli politikalar zorla geçersiz kılınır.
       Politika, Yanlış değerine ayarlanır veya ayarlanmadan bırakılırsa herhangi bir politika geçersiz kılınmaz.</translation>
+<translation id="2158741059065130266">Politika, Doğru değerine ayarlanırsa <ph name="PRODUCT_OS_NAME" /> Dosyalar uygulamasının kullanıcıları bir çöp kutusu görür ve Dosyalarım ve İndirilenler bölümlerindeki dosyalar (kullanıcıların oluşturduğu alt öğeler dahil) silindiğinde oraya gönderilir.
+
+      Politika, Yanlış değerine ayarlanırsa daha önce çöp kutusunda bulunan dosyalar, gizli dosyalar gösterilerek ve Dosyalarım veya İndirilenler bölümünde .çöp kutusu dizini bulunarak kullanılabilir olmaya devam eder.</translation>
 <translation id="2159486052528894673">Kullanıcı bulut politikalarının, makine bulut politikalarını geçersiz kılmasına izin ver.</translation>
 <translation id="2160170953213468208">Bu politika etkinleştirildiğinde, normalde <ph name="BASIC_EDITOR_NAME" /> tarafından işlenen MIME türüne sahip Office dokümanlarına gitmeye zorlayarak dosyayı indirir.
 
diff --git a/components/policy/resources/policy_templates_uk.xtb b/components/policy/resources/policy_templates_uk.xtb
index f73cdfd..2e76dc2 100644
--- a/components/policy/resources/policy_templates_uk.xtb
+++ b/components/policy/resources/policy_templates_uk.xtb
@@ -1487,6 +1487,9 @@
 <translation id="2157842368188031417">Це правило стосується лише керованих сеансів у режимі "Гість". Його потрібно ввімкнути, щоб у режимі спільної робочої станції Imprivata можна було перемикати користувачів у сеансі.
       Якщо вибрати для правила значення True, у цьому режимі Imprivata примусово перевизначатимуться певні правила (для функцій, які зберігають конфіденційні дані користувача й не обробляються механізмом видалення).
       Якщо правило не налаштувати або вибрати для нього значення False, правила не перевизначатимуться.</translation>
+<translation id="2158741059065130266">Якщо для цього правила вибрати значення True, користувачі додатка Файли <ph name="PRODUCT_OS_NAME" /> зможуть переглядати кошик, у який потраплятимуть файли, видалені з папок "Мої файли" та "Завантаження" (зокрема їх нащадкові об’єкти, створені користувачами).
+
+      Якщо вибрати значення False, файли, які раніше зберігалися в кошику, можна буде переглянути як сховані файли, а також у каталозі .Trash у папках "Мої файли" та "Завантаження".</translation>
 <translation id="2159486052528894673">Дозволити правилам хмари на рівні користувачів перевизначати правила на рівні пристрою</translation>
 <translation id="2160170953213468208">Якщо ввімкнути це правило, будь-які документи Office із MIME-типом, які зазвичай обробляються в редакторі <ph name="BASIC_EDITOR_NAME" />, буде примусово завантажено.
 
@@ -4405,6 +4408,15 @@
 <translation id="4483738129334574255">Вимкнути гру з динозавром на зареєстрованих пристроях <ph name="PRODUCT_OS_NAME" />, увімкнути її за інших умов</translation>
 <translation id="4484515651939984695">Указує, упродовж якого часу (у секундах) пристрій для трансляції, вибраний за допомогою коду доступу або QR-коду, залишається в списку таких пристроїв у меню <ph name="PRODUCT_NAME" />.</translation>
 <translation id="4485425108474077672">Налаштувати URL-адресу сторінки нової вкладки</translation>
+<translation id="4488959486611931919">Примітка. Оскільки ми не отримували повідомлень про збої в роботі сайтів, відколи вебпереглядач Chrome почав блокувати ці файли cookie за умовчанням у версії M118, починаючи з версії M127 цю функцію більше не можна буде налаштовувати, і це правило не діятиме.
+
+Це правило дає змогу тимчасово відмовитися від змін в обробці файлів cookie вебпереглядачем Chrome, які налаштовано через JavaScript і які містять певні контрольні символи (NULL, повернення каретки й зміну рядка).
+Раніше фрагменти cookie із цими символами скорочувалися, але виконували свою функцію.
+Тепер через наявність таких символів увесь фрагмент cookie ігноруватиметься.
+
+Якщо для правила вибрати значення "правда" (за умовчанням), застосовуватиметься нова поведінка,
+
+а якщо "неправда" – стара поведінка.</translation>
 <translation id="4490420545181481759">Сертифікати X.509 можуть містити закодовані обмеження (як-от обмеження імен)
 у розширеннях сертифіката. У документі RFC 5280 зазначається, що примусове застосування таких обмежень у сертифікаті якоря довіри необов’язкове. Починаючи з версії <ph name="PRODUCT_NAME" /> 112, такі обмеження примусово застосовуватимуться в сертифікатах, завантажених зі сховища сертифікатів платформи.
 
diff --git a/components/policy/resources/policy_templates_vi.xtb b/components/policy/resources/policy_templates_vi.xtb
index 21e1a49..932c7db 100644
--- a/components/policy/resources/policy_templates_vi.xtb
+++ b/components/policy/resources/policy_templates_vi.xtb
@@ -1497,6 +1497,9 @@
 <translation id="2157842368188031417">Chính sách này chỉ áp dụng cho các phiên khách được quản lý. Cần phải bật chính sách này thì chế độ máy trạm chia sẻ của Imprivata mới được phép chuyển đổi người dùng trong phiên.
       Nếu bạn bật chính sách này thì hệ thống sẽ bắt buộc ghi đè một số chính sách nhất định của các tính năng. Điều này sẽ dẫn đến việc dữ liệu nhạy cảm của người dùng vẫn tồn tại và không được xử lý bởi cơ chế dọn dẹp được dùng cho các chuyển đổi người dùng trong phiên với chế độ máy trạm chia sẻ của Imprivata.
       Nếu bạn tắt hoặc không đặt chính sách này, thì hệ thống sẽ không ghi đè bất kỳ chính sách nào.</translation>
+<translation id="2158741059065130266">Nếu bạn đặt chính sách này thành Đúng, người dùng ứng dụng Files <ph name="PRODUCT_OS_NAME" /> sẽ nhìn thấy Thùng rác. Các tệp trong mục Tệp của tôi và Tệp đã tải xuống (bao gồm cả các tệp con tương ứng do người dùng tạo) sẽ được gửi đến đó khi bị xoá.
+
+      Nếu bạn đặt chính sách này thành Sai, các tệp từng nằm trong thùng rác vẫn sẽ hiển thị khi người dùng cho hiện các tệp bị ẩn và tìm thư mục .Trash trong mục Tệp của tôi hoặc Tệp đã tải xuống.</translation>
 <translation id="2159486052528894673">Cho phép các chính sách đám mây ở cấp người dùng ghi đè các chính sách đám mây ở cấp thiết bị.</translation>
 <translation id="2160170953213468208">Khi bật, chính sách này sẽ buộc tải tệp xuống đối với mọi thao tác truy cập vào các tài liệu Office thuộc loại MIME mà <ph name="BASIC_EDITOR_NAME" /> thường xử lý.
 
diff --git a/components/policy/resources/policy_templates_zh-CN.xtb b/components/policy/resources/policy_templates_zh-CN.xtb
index 3b52012..a796e9d 100644
--- a/components/policy/resources/policy_templates_zh-CN.xtb
+++ b/components/policy/resources/policy_templates_zh-CN.xtb
@@ -1457,6 +1457,9 @@
 <translation id="2157842368188031417">此政策仅适用于受管理的访客会话。必须为 Imprivata 的共享工作站模式启用此政策,以允许在会话期间切换用户。
       如果此政策设为 True,系统将强制覆盖某些政策以实现相关功能,这些功能会保留敏感用户数据,而不会被清理机制(用于在 Imprivata 共享工作站模式下的会话期间切换用户)处理。
       如果此政策设为 False 或未设置,系统将不会覆盖任何政策。</translation>
+<translation id="2158741059065130266">如果此政策设为 True,<ph name="PRODUCT_OS_NAME" />“文件”应用的用户可以看到回收站的垃圾桶图标,“我的文件”和“下载内容”下的文件(包括其使用者创建的子文件夹中的文件)在删除后会被发送到回收站中。
+
+      如果此政策设为 False,通过显示隐藏文件并在“我的文件”或“下载内容”下找到 .Trash 目录,用户仍可查看之前位于回收站中的文件。</translation>
 <translation id="2159486052528894673">允许用户级云政策覆盖计算机级云政策。</translation>
 <translation id="2160170953213468208">启用后,此政策会强制找到具有 MIME 类型且通常由<ph name="BASIC_EDITOR_NAME" />处理的所有 Office 文档,以便下载相应文件。
 
diff --git a/components/policy/resources/policy_templates_zh-TW.xtb b/components/policy/resources/policy_templates_zh-TW.xtb
index 3ddf9802..9bd7b00 100644
--- a/components/policy/resources/policy_templates_zh-TW.xtb
+++ b/components/policy/resources/policy_templates_zh-TW.xtb
@@ -1434,6 +1434,7 @@
 <translation id="2157842368188031417">這項政策僅適用於受管理的訪客工作階段。你必須為 Imprivata 的共用工作站模式啟用此政策,才能讓使用者在工作階段中進行切換。
       如果將此政策設為 True,系統會強制覆寫某些功能的政策,這些功能會保留機密的使用者資料,且不會由清理機制處理 (該機制用於 Imprivata 共用工作站模式下的工作階段中使用者切換作業)。
       如果將這項政策設為 False 或不設定,系統便不會覆寫任何政策。</translation>
+<translation id="2158741059065130266">如果將這項政策設為 True,<ph name="PRODUCT_OS_NAME" />「檔案」應用程式的使用者將可查看垃圾桶中的項目。如果使用者要刪除「我的檔案」及「下載內容」中的檔案 (包括使用者建立的子系),這些檔案也會傳送到垃圾桶中。如果將這項政策設為 False,使用者仍可查看先前位於垃圾桶中的檔案,方法是顯示隱藏的檔案,並在「我的檔案」或「下載內容」中找出 .Trash 目錄即可。</translation>
 <translation id="2159486052528894673">允許使用者雲端政策覆寫裝置雲端政策。</translation>
 <translation id="2160170953213468208">如果啟用這項政策,使用者瀏覽任何採用 MIME 類型的 Office 文件 (通常由「<ph name="BASIC_EDITOR_NAME" />」處理) 時,系統會強制要求使用者下載檔案。
 
diff --git a/components/safe_browsing/core/browser/realtime/policy_engine.cc b/components/safe_browsing/core/browser/realtime/policy_engine.cc
index 6a54bbd3..4b4a42a 100644
--- a/components/safe_browsing/core/browser/realtime/policy_engine.cc
+++ b/components/safe_browsing/core/browser/realtime/policy_engine.cc
@@ -67,8 +67,9 @@
 
   // |variations_service| can be nullptr in tests.
   if (variations_service &&
-      IsInExcludedCountry(variations_service->GetStoredPermanentCountry()))
+      IsInExcludedCountry(variations_service->GetLatestCountry())) {
     return false;
+  }
 
   return IsUserEpOptedIn(pref_service) || IsUserMbbOptedIn(pref_service);
 }
diff --git a/components/search_engines/BUILD.gn b/components/search_engines/BUILD.gn
index 92423a81..1dc954a3 100644
--- a/components/search_engines/BUILD.gn
+++ b/components/search_engines/BUILD.gn
@@ -24,6 +24,7 @@
     "keyword_table.h",
     "keyword_web_data_service.cc",
     "keyword_web_data_service.h",
+    "search_engine_choice/search_engine_choice_metrics_service_accessor.h",
     "search_engine_choice/search_engine_choice_service.cc",
     "search_engine_choice/search_engine_choice_service.h",
     "search_engine_choice/search_engine_choice_utils.cc",
@@ -78,6 +79,7 @@
     "//components/infobars/core",
     "//components/lens:lens",
     "//components/lens/proto/server:proto",
+    "//components/metrics",
     "//components/omnibox/common",
     "//components/policy:generated",
     "//components/policy/core/browser",
@@ -199,6 +201,7 @@
     "//base/test:test_support",
     "//components/country_codes",
     "//components/google/core/common",
+    "//components/metrics",
     "//components/omnibox/common",
     "//components/policy/core/common",
     "//components/policy/core/common:test_support",
diff --git a/components/search_engines/DEPS b/components/search_engines/DEPS
index 74d38ac..2c34748d 100644
--- a/components/search_engines/DEPS
+++ b/components/search_engines/DEPS
@@ -8,6 +8,7 @@
   "+components/infobars/core",
   "+components/keyed_service/core",
   "+components/lens",
+  "+components/metrics",
   "+components/omnibox/common",
   "+components/policy",
   "+components/pref_registry",
diff --git a/components/search_engines/search_engine_choice/search_engine_choice_metrics_service_accessor.h b/components/search_engines/search_engine_choice/search_engine_choice_metrics_service_accessor.h
new file mode 100644
index 0000000..790ee173
--- /dev/null
+++ b/components/search_engines/search_engine_choice/search_engine_choice_metrics_service_accessor.h
@@ -0,0 +1,28 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef COMPONENTS_SEARCH_ENGINES_SEARCH_ENGINE_CHOICE_SEARCH_ENGINE_CHOICE_METRICS_SERVICE_ACCESSOR_H_
+#define COMPONENTS_SEARCH_ENGINES_SEARCH_ENGINE_CHOICE_SEARCH_ENGINE_CHOICE_METRICS_SERVICE_ACCESSOR_H_
+
+#include "base/gtest_prod_util.h"
+#include "components/metrics/metrics_service_accessor.h"
+
+namespace search_engines {
+
+// This class limits and documents access to metrics service helper methods.
+// Since these methods are private, each user has to be explicitly declared
+// as a 'friend' below.
+class SearchEngineChoiceMetricsServiceAccessor
+    : public metrics::MetricsServiceAccessor {
+ private:
+  friend class SearchEngineChoiceService;
+  friend class SearchEngineChoiceServiceTest;
+  FRIEND_TEST_ALL_PREFIXES(
+      SearchEngineChoiceServiceTest,
+      MaybeRecordChoiceScreenDisplayState_OnServiceStartup_UmaDisabled);
+};
+
+}  // namespace search_engines
+
+#endif  // COMPONENTS_SEARCH_ENGINES_SEARCH_ENGINE_CHOICE_SEARCH_ENGINE_CHOICE_METRICS_SERVICE_ACCESSOR_H_
diff --git a/components/search_engines/search_engine_choice/search_engine_choice_service.cc b/components/search_engines/search_engine_choice/search_engine_choice_service.cc
index 25bad88..d2b2525 100644
--- a/components/search_engines/search_engine_choice/search_engine_choice_service.cc
+++ b/components/search_engines/search_engine_choice/search_engine_choice_service.cc
@@ -25,6 +25,7 @@
 #include "components/policy/policy_constants.h"
 #include "components/prefs/pref_service.h"
 #include "components/search_engines/eea_countries_ids.h"
+#include "components/search_engines/search_engine_choice/search_engine_choice_metrics_service_accessor.h"
 #include "components/search_engines/search_engine_choice/search_engine_choice_utils.h"
 #include "components/search_engines/search_engine_type.h"
 #include "components/search_engines/search_engines_pref_names.h"
@@ -512,6 +513,14 @@
     return;
   }
 
+  // The display state should not be cached when UMA is disabled.
+  if (!SearchEngineChoiceMetricsServiceAccessor::IsMetricsReportingEnabled(
+          &profile_prefs_.get())) {
+    profile_prefs_->ClearPref(
+        prefs::kDefaultSearchProviderPendingChoiceScreenDisplayState);
+    return;
+  }
+
   const base::Value::Dict& dict = profile_prefs_->GetDict(
       prefs::kDefaultSearchProviderPendingChoiceScreenDisplayState);
   std::optional<ChoiceScreenDisplayState> display_state =
diff --git a/components/search_engines/search_engine_choice/search_engine_choice_service_unittest.cc b/components/search_engines/search_engine_choice/search_engine_choice_service_unittest.cc
index ce4cf39f..647a80ba 100644
--- a/components/search_engines/search_engine_choice/search_engine_choice_service_unittest.cc
+++ b/components/search_engines/search_engine_choice/search_engine_choice_service_unittest.cc
@@ -20,6 +20,7 @@
 #include "build/build_config.h"
 #include "build/chromeos_buildflags.h"
 #include "components/country_codes/country_codes.h"
+#include "components/metrics/metrics_pref_names.h"
 #include "components/policy/core/common/mock_policy_service.h"
 #include "components/policy/core/common/policy_namespace.h"
 #include "components/policy/core/common/policy_types.h"
@@ -28,6 +29,7 @@
 #include "components/prefs/testing_pref_service.h"
 #include "components/search_engines/eea_countries_ids.h"
 #include "components/search_engines/prepopulated_engines.h"
+#include "components/search_engines/search_engine_choice/search_engine_choice_metrics_service_accessor.h"
 #include "components/search_engines/search_engine_choice/search_engine_choice_utils.h"
 #include "components/search_engines/search_engine_type.h"
 #include "components/search_engines/search_engines_pref_names.h"
@@ -95,10 +97,17 @@
     DefaultSearchManager::RegisterProfilePrefs(pref_service_.registry());
     TemplateURLPrepopulateData::RegisterProfilePrefs(pref_service_.registry());
 
+    pref_service_.registry()->RegisterBooleanPref(
+        metrics::prefs::kMetricsReportingEnabled, true);
+
     // Override the country checks to simulate being in Belgium.
     base::CommandLine::ForCurrentProcess()->AppendSwitchASCII(
         switches::kSearchEngineChoiceCountry, "BE");
 
+    // Metrics reporting is disabled for non-branded builds.
+    SearchEngineChoiceMetricsServiceAccessor::
+        SetForceIsMetricsReportingEnabledPrefLookup(true);
+
     InitMockPolicyService();
     CheckPoliciesInitialState();
   }
@@ -1366,6 +1375,36 @@
       prefs::kDefaultSearchProviderPendingChoiceScreenDisplayState));
 }
 
+TEST_F(SearchEngineChoiceServiceTest,
+       MaybeRecordChoiceScreenDisplayState_OnServiceStartup_UmaDisabled) {
+  // Disable UMA reporting.
+  SearchEngineChoiceMetricsServiceAccessor::
+      SetForceIsMetricsReportingEnabledPrefLookup(false);
+
+  ChoiceScreenDisplayState display_state(
+      /*search_engines=*/{SEARCH_ENGINE_GOOGLE, SEARCH_ENGINE_BING,
+                          SEARCH_ENGINE_YAHOO},
+      /*country_id=*/kBelgiumCountryId,
+      /*list_is_modified_by_current_default=*/false,
+      /*selected_engine_index=*/0);
+  pref_service()->SetDict(
+      prefs::kDefaultSearchProviderPendingChoiceScreenDisplayState,
+      display_state.ToDict());
+  EXPECT_TRUE(pref_service()->HasPrefPath(
+      prefs::kDefaultSearchProviderPendingChoiceScreenDisplayState));
+
+  InitService(kBelgiumCountryId, /*force_reset=*/true);
+  EXPECT_FALSE(pref_service()->HasPrefPath(
+      prefs::kDefaultSearchProviderPendingChoiceScreenDisplayState));
+
+  histogram_tester_.ExpectTotalCount(
+      base::StringPrintf(
+          kSearchEngineChoiceScreenShowedEngineAtHistogramPattern, 0),
+      0);
+  histogram_tester_.ExpectTotalCount(
+      kSearchEngineChoiceScreenShowedEngineAtCountryMismatchHistogram, 0);
+}
+
 // Test that the user is not reprompted is the reprompt parameter is not a valid
 // JSON string.
 TEST_F(SearchEngineChoiceServiceTest, NoRepromptForSyntaxError) {
diff --git a/components/strings/components_strings_af.xtb b/components/strings/components_strings_af.xtb
index 27b4c19..34f3bcf2 100644
--- a/components/strings/components_strings_af.xtb
+++ b/components/strings/components_strings_af.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Prysnasporing is af</translation>
 <translation id="127777513559587977">TV-geselsprogramme</translation>
 <translation id="1281476433249504884">Stapelaar 1</translation>
+<translation id="1281536351321444151">Om hierdie IBAN volgende keer te outovul, moet jy dit in jou Google-rekening stoor</translation>
 <translation id="1282358575813748144">Bote en vaartuie</translation>
 <translation id="1283977499362032052">CV’s en portefeuljes</translation>
 <translation id="1285320974508926690">Moet nooit hierdie werf vertaal nie</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Laai 8</translation>
 <translation id="1530707389502320859">Die werf wat jy so pas probeer besoek het, lyk vals. Aanvallers boots soms werwe na deur klein veranderinge wat moeilik sigbaar is aan die URL te maak.</translation>
 <translation id="1532118530259321453">Hierdie bladsy sê</translation>
+<translation id="1533966801397200693">Die profiel waarmee jy aangemeld is, is ’n bestuurde profiel. Jou administrateur kan oor ’n afstand veranderinge aan jou profielinstellings maak, inligting oor die blaaier ontleed deur middel van verslagdoening, en ander nodige take uitvoer. <ph name="BEGIN_LINK" />Meer inligting<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Vertaal bladsy</translation>
 <translation id="1537807545287921620">Hierdie PDF is ontoeganklik. Maak kontekskieslys oop en skakel “onttrek teks uit PDF” aan</translation>
 <translation id="1539840569003678498">Verslag is gestuur:</translation>
@@ -568,6 +570,7 @@
 <translation id="2046951263634619614">Boekwinkels</translation>
 <translation id="2048261947532620704">Vertaal tans bladsy</translation>
 <translation id="2053111141626950936">Bladsye in <ph name="LANGUAGE" /> sal nie vertaal word nie.</translation>
+<translation id="2055461225779831292">Gebruik en beweeg jou kameras (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Sluit jou muiswyser</translation>
 <translation id="2056658168519009885">Werwe kan Chrome vir inligting vra om te help om die advertensies wat jy sien, te personaliseer.</translation>
 <translation id="2059166748188874810">Munisipaliteit</translation>
@@ -715,6 +718,7 @@
 <translation id="2300306941146563769">Nie opgelaai nie</translation>
 <translation id="2301098101308036335">Watter webwerwe word besoek en wanneer.</translation>
 <translation id="230286397113210245">Knoppie om Incognito-venster oop te maak; aktiveer om ’n nuwe Incognito-venster oop te maak om privaat te blaai</translation>
+<translation id="2306124309679506798">Laat ’n omvattende ervaring toe?</translation>
 <translation id="2312234273148520048">Speserye en souse</translation>
 <translation id="2316087952091171402">Minder as <ph name="UPPER_ESTIMATE" />. Sommige werwe sal dalk met jou volgende besoek stadiger laai.</translation>
 <translation id="2316159751672436664">Personaliseer jou toeganklikheidsnutsgoed in Chrome-bedryfstelselinstellings</translation>
@@ -1170,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />; druk Tab en dan Enter om die voorkoms van jou blaaier te pasmaak</translation>
 <translation id="3240791268468473923">Blad vir geen passende eiebewys vir veilige betalingeiebewys is oopgemaak</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />”-skakels word geblokkeer</translation>
+<translation id="3248329428895535435">Moenie op hierdie werf wys nie</translation>
 <translation id="3252772880526154546">Argitektuur</translation>
 <translation id="3254301855501243548">18x22 dm.</translation>
 <translation id="3255926992597692024">Chromium probeer tans instellings vir die invul van betaalmetodes wysig.</translation>
@@ -1185,6 +1190,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Voer <ph name="NUMBER_OF_DIGITS" />-syferverifikasiekode in</translation>
 <translation id="3272643614306383237">Minder as 1 MB. Sommige werwe sal dalk met jou volgende besoek stadiger laai.</translation>
+<translation id="3273738040255912340">Jou administrateur kan oor ’n afstand veranderinge aan jou profiel en blaaier maak, inligting oor die blaaier ontleed deur middel van verslagdoening, en ander nodige take uitvoer. Aktiwiteit op hierdie toestel kan ook buite Chromium bestuur word. <ph name="BEGIN_LINK" />Meer inligting<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Adminbeleid beveel aan dat jy nie hierdie lêer in <ph name="DESTINATION_NAME" /> oopmaak nie}other{Adminbeleid beveel aan dat jy nie hierdie lêers in<ph name="DESTINATION_NAME" /> oopmaak nie}}</translation>
 <translation id="3282085321714087552">Jou organisasie, <ph name="ENROLLMENT_DOMAIN" />, het sommige inligting, soos instellings of beleide, na die volgende webwerwe gestuur.</translation>
 <translation id="3286372614333682499">portret</translation>
@@ -1603,6 +1609,7 @@
 <translation id="4082333119419111506">Papier (vooraf gedruk)</translation>
 <translation id="4082393374666368382">Instellings – Bestuur</translation>
 <translation id="4084219288110917128">Koevert C1</translation>
+<translation id="4085326869263783566">Help my skryf. Tab-sleutel en druk Enter om oop te maak</translation>
 <translation id="4088981014127559358">Skuif prent langs Y-as op kant 1</translation>
 <translation id="4089152113577680600">Laai 14</translation>
 <translation id="4092349052316400070">Vul adres in</translation>
@@ -2303,6 +2310,7 @@
 <translation id="5447765697759493033">Hierdie werf sal nie vertaal word nie</translation>
 <translation id="5452270690849572955">Hierdie <ph name="HOST_NAME" />-bladsy kan nie gevind word nie</translation>
 <translation id="5455374756549232013">Swak beleidtydstempel</translation>
+<translation id="5456428544444655325">Moet nooit wys nie</translation>
 <translation id="5456839782162429664">Jy moet handmatig verifieer elke keer as jy outovul gebruik om te betaal</translation>
 <translation id="5457113250005438886">Ongeldig</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> en nog <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" /> en nog <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation>
@@ -3782,6 +3790,7 @@
 <translation id="8263001937536038617">Foto- en videodienste</translation>
 <translation id="8265992338205884890">Sigbare data</translation>
 <translation id="8267698848189296333">Meld aan as <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Afsonderlike dokumente/Ingesorteerde kopieë</translation>
 <translation id="8269703227894255363">{0,plural, =1{Lêer kan weens blokkering nie oopgemaak word nie}other{<ph name="FILE_COUNT" /> lêers kan weens blokkering nie oopgemaak word nie}}</translation>
 <translation id="8270173610195068258">Misdaad en geregtigheid</translation>
@@ -3886,6 +3895,7 @@
 <translation id="8446884382197647889">Kom meer te wete</translation>
 <translation id="8449155699563577224">17x24 dm.</translation>
 <translation id="8449836157089738489">Maak almal in nuwe oortjiegroep oop</translation>
+<translation id="84561192812921051">Jou administrateur kan oor ’n afstand veranderinge aan jou profiel en blaaier maak, inligting oor die blaaier ontleed deur middel van verslagdoening, en ander nodige take uitvoer. Aktiwiteit op hierdie toestel kan ook buite Chrome bestuur word.  <ph name="BEGIN_LINK" />Meer inligting<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Onbepaald</translation>
 <translation id="8458202188076138974">Brief Ekstra</translation>
 <translation id="8460854335417802511">Skakel dit aan</translation>
@@ -4200,6 +4210,7 @@
 <translation id="9094544726794842788">Afduim maak ’n vorm oop vir die indien van gedetailleerde terugvoer oor hoekom jy nie van hierdie resultate hou nie</translation>
 <translation id="9095388113577226029">Meer tale …</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />; druk Tab en dan Enter om Chrome in iOS-instellings as die stelsel verstekblaaier te stel</translation>
+<translation id="9101450247048146228">Kameragebruik en beweging (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Laai 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> gebruik gewoonlik enkripsie om jou inligting te beskerm. Toe Chromium hierdie keer aan <ph name="SITE" /> probeer koppel het, het die webwerf ongewone en verkeerde eiebewyse teruggestuur. Dit kan gebeur wanneer 'n aanvaller probeer voorgee om <ph name="SITE" /> te wees, óf wanneer 'n Wi-Fi-aanmeldskerm die verbinding onderbreek het. Jou inligting is steeds veilig, want Chromium het die verbinding gestaak voordat enige data uitgeruil is.</translation>
 <translation id="9107467864910557787">Jou blaaier word bestuur deur <ph name="MANAGER" /></translation>
@@ -4222,6 +4233,8 @@
 <translation id="9139318394846604261">Inkopies</translation>
 <translation id="9141013498910525015">Bestuur adresse</translation>
 <translation id="9144951720726881238">Vervaldatum:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Meld weer aan<ph name="END_LINK" /> 
+    en kom dan terug na hierdie oortjie om skryfhulp te kry</translation>
 <translation id="9148507642005240123">Ontdoen wysiging</translation>
 <translation id="9148599396704355100">Prys is laag</translation>
 <translation id="9150025764986957246">Jy kan dinge invoer soos:</translation>
diff --git a/components/strings/components_strings_am.xtb b/components/strings/components_strings_am.xtb
index b65c1b8..1c611fe 100644
--- a/components/strings/components_strings_am.xtb
+++ b/components/strings/components_strings_am.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">የመጽሐፍ ቸርቻሪዎች</translation>
 <translation id="2048261947532620704">ገጽን በመተርጎም ላይ</translation>
 <translation id="2053111141626950936">በ<ph name="LANGUAGE" /> ያሉ ገጾች አይተረጎሙም።</translation>
+<translation id="2055461225779831292">ካሜራዎችዎን ይጠቀሙ እና ያንቀሳቅሱ (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">የመዳፊት ጠቋሚዎን ይቆልፉ</translation>
 <translation id="2056658168519009885">ጣቢያዎች እርስዎ የሚያዩዋቸው ማስታወቂያዎች ግላዊነት እንዲላበሱ ለማገዝ Chromeን መረጃ ሊጠይቁ ይችላሉ።</translation>
 <translation id="2059166748188874810">ማዘጋጃ ቤት</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">አልተሰቀለም</translation>
 <translation id="2301098101308036335">የትኞቹ ድር ጣቢያዎች እንደሚጎበኙ እና መቼ እንደሚሆን።</translation>
 <translation id="230286397113210245">ማንነትን የማያሳውቅ መስኮት አዝራርን ይክፈቱ፣ በግል እንዲያስሱ አዲስ ማንነትን የማያሳውቅ መስኮት ለመክፈት ያግብሩ</translation>
+<translation id="2306124309679506798">መሳጭ ተሞክሮ እንዲኖር ይፈቀድ?</translation>
 <translation id="2312234273148520048">ማጣፈጫዎች እና ቅመሞች</translation>
 <translation id="2316087952091171402">ከ<ph name="UPPER_ESTIMATE" /> ያነሰ። አንዳንድ ጣቢያዎች በሚቀጥለው ጉብኝትዎ ላይ ይበልጥ ቀስ ብለው ሊጭኑ ይችላሉ።</translation>
 <translation id="2316159751672436664">በChromeOS ቅንብሮች ውስጥ የተደራሽነት መሣሪያዎችዎን ግላዊነት ያላብሱ</translation>
@@ -1171,6 +1173,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />፣ የአሳሽዎን መልክ ለማበጀት ትርን ከዚያ አስገባን ይጫኑ</translation>
 <translation id="3240791268468473923">ደህንነቱ የተጠበቀ የመግቢያ ማስረጃ ምንም ተዛማጅ የመግቢያ ማስረጃ ሉህ አልተከፈተም</translation>
 <translation id="324180406144491771">የ«<ph name="HOST_NAME" />» አገናኞች ታግደዋል</translation>
+<translation id="3248329428895535435">በዚህ ጣቢያ ላይ አታሳይ</translation>
 <translation id="3252772880526154546">ሥነ ህንፃ</translation>
 <translation id="3254301855501243548">18 x 22 ኢንች</translation>
 <translation id="3255926992597692024">Chromium የመክፈያ ዘዴዎችን ለመሙላት ቅንብሮችን ለማሻሻል እየሞከረ ነው።</translation>
@@ -1605,6 +1608,7 @@
 <translation id="4082333119419111506">ወረቀት (ቀድሞ የታተመ)</translation>
 <translation id="4082393374666368382">ቅንብሮች - አስተዳደር</translation>
 <translation id="4084219288110917128">ሲ1 ፖስታ</translation>
+<translation id="4085326869263783566">እንድጽፍ አግዘኝ። ትር እና ለመክፈት አስገባን ይጫኑ</translation>
 <translation id="4088981014127559358">ጎን 1 ምስል Y ፈረቃ</translation>
 <translation id="4089152113577680600">መሳቢያ 14</translation>
 <translation id="4092349052316400070">አድራሻ ይሙሉ</translation>
@@ -3785,6 +3789,7 @@
 <translation id="8263001937536038617">የፎቶ እና ቪድዮ አገልግሎቶች</translation>
 <translation id="8265992338205884890">የሚታይ ውሂብ</translation>
 <translation id="8267698848189296333">እንደ <ph name="USERNAME" /> በመግባት ላይ</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">የተለዩ ሰነዶች/የተጣመሩ ቅጂዎች</translation>
 <translation id="8269703227894255363">{0,plural, =1{ፋይል ከመክፈት ትግዷል}one{<ph name="FILE_COUNT" /> ፋይል ከመክፈት ታግዷል}other{<ph name="FILE_COUNT" /> ፋይሎች ከመክፈት ታግደዋል}}</translation>
 <translation id="8270173610195068258">ወንጀል እና ፍትህ</translation>
@@ -4205,6 +4210,7 @@
 <translation id="9094544726794842788">ደባሪ ነው የሚለው እርስዎ እነዚህን ውጤቶች ለምን እንዳልወደዱ ዝርዝር ግብረመልስ ለማስገባት ቅጽ ይከፍታል</translation>
 <translation id="9095388113577226029">ተጨማሪ ቋንቋዎች...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />፣ Chromeን በiOS ቅንብሮች ውስጥ እንደ የስርዓቱ ነባሪ አሳሽ ለማዋቀር ትርን ከዛ አስገባን ይጫኑ</translation>
+<translation id="9101450247048146228">የካሜራ አጠቃቀም እና እንቅስቃሴ (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">መሳቢያ 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> የእርስዎን መረጃ ለመጠበቅ በመደበኝነት ምስጠራን ይጠቀማል። Chromium አሁን ከ<ph name="SITE" /> ጋር ለመገናኘት ሲሞክር ድር ጣቢያው ያልተለመዱ እና ትክክል ያልሆኑ ምስክርነቶችን መልሷል። ይህ አንድ አጥቂ <ph name="SITE" />ን አስመስሎ ለመቅረብ ሲሞክር ነው ወይም አንድ የWi-Fi መግቢያ ገፅ ግንኙነቱን ሲቋረጥ ሊከሰት ይችላል። Chromium ማንኛውም የውሂብ ልውውጥ ከመካሄዱ በፊት ግንኙነቱን ስላቋረጠው አሁንም የእርስዎ መረጃ ደህንነት የተጠበቀ ነው።</translation>
 <translation id="9107467864910557787">የእርስዎ አሳሽ የሚተዳደረው በ<ph name="MANAGER" /> ነው</translation>
@@ -4227,6 +4233,8 @@
 <translation id="9139318394846604261">ግዢ</translation>
 <translation id="9141013498910525015">አድራሻዎችን ያቀናብሩ</translation>
 <translation id="9144951720726881238">ጊዜው የሚያልፍበት ቀን፦</translation>
+<translation id="9145910032514306808">እንደገና <ph name="BEGIN_LINK" />ይግቡ<ph name="END_LINK" />፣
+    ከዚያም የጽሑፍ እገዛ ለማግኘት ወደዚህ ትር ይመለሱ</translation>
 <translation id="9148507642005240123">&amp;አርትዕን ቀልብስ</translation>
 <translation id="9148599396704355100">ዋጋ ዝቅተኛ ነው</translation>
 <translation id="9150025764986957246">እንደሚከተሉት ያሉ ነገሮችን ማስገባት ይችላሉ፦</translation>
diff --git a/components/strings/components_strings_ar.xtb b/components/strings/components_strings_ar.xtb
index 030abfd..34f3172 100644
--- a/components/strings/components_strings_ar.xtb
+++ b/components/strings/components_strings_ar.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">محلات بيع الكتب بالتجزئة</translation>
 <translation id="2048261947532620704">جارٍ ترجمة الصفحة</translation>
 <translation id="2053111141626950936">لن تتم ترجمة الصفحات باللغة <ph name="LANGUAGE" />.</translation>
+<translation id="2055461225779831292">استخدام الكاميرات وتحريكها (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">قفل مؤشّر الماوس</translation>
 <translation id="2056658168519009885">‏يمكن للمواقع الإلكترونية أن تطلب من Chrome معلومات لتساعدها في تخصيص الإعلانات التي تظهر لك.</translation>
 <translation id="2059166748188874810">بلدية</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">لم يتم التحميل</translation>
 <translation id="2301098101308036335">قائمة المواقع الإلكترونية التي تمت زيارتها ووقت زيارتها</translation>
 <translation id="230286397113210245">زر فتح نافذة التصفّح المتخفي: انقر على هذا الزر لفتح نافذة تصفُّح متخفٍ جديدة والتصفّح بخصوصية تامة.</translation>
+<translation id="2306124309679506798">هل تريد السماح بهذه التجربة الغامرة؟</translation>
 <translation id="2312234273148520048">بهارات وتتبيلات</translation>
 <translation id="2316087952091171402">أقل من <ph name="UPPER_ESTIMATE" />. قد يتم تحميل بعض المواقع بشكل أبطأ عند زيارتها في المرة القادمة.</translation>
 <translation id="2316159751672436664">‏تخصيص أدوات تسهيل الاستخدام في إعدادات نظام التشغيل Chrome</translation>
@@ -1173,6 +1175,7 @@
 <translation id="3240683217920639535">‏<ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />، اضغط على مفتاح Tab ثم مفتاح Enter لتخصيص مظهر المتصفِّح</translation>
 <translation id="3240791268468473923">تم فتح صفحة عدم تطابق بيانات اعتماد الدفع الآمن.</translation>
 <translation id="324180406144491771">تم حظر روابط "<ph name="HOST_NAME" />"</translation>
+<translation id="3248329428895535435">عدم العرض على هذا الموقع الإلكتروني</translation>
 <translation id="3252772880526154546">هندسة معمارية</translation>
 <translation id="3254301855501243548">18 × 22 بوصة</translation>
 <translation id="3255926992597692024">‏يحاول Chromium تعديل إعدادات ميزة "الملء التلقائي" لبيانات طُرق الدفع.</translation>
@@ -1608,6 +1611,7 @@
 <translation id="4082333119419111506">ورق (مطبوع مسبقًا)</translation>
 <translation id="4082393374666368382">الإعدادات - الإدارة</translation>
 <translation id="4084219288110917128">‏ظرف C1</translation>
+<translation id="4085326869263783566">‏ساعدني في الكتابة. اضغط على مفتاح التبويب (Tab) ثم مفتاح Enter للفتح</translation>
 <translation id="4088981014127559358">‏طباعة جانب واحد image Y shift</translation>
 <translation id="4089152113577680600">الدُرج 14</translation>
 <translation id="4092349052316400070">ملء عنوان</translation>
@@ -3790,6 +3794,7 @@
 <translation id="8263001937536038617">خدمات الصور والفيديو</translation>
 <translation id="8265992338205884890">البيانات المرئية</translation>
 <translation id="8267698848189296333">تسجيل الدخول باسم <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">مستندات مفصولة/نُسخ مُجمّعة</translation>
 <translation id="8269703227894255363">{0,plural, =1{تم حظر فتح الملف}zero{تم حظر فتح <ph name="FILE_COUNT" /> ملف}two{تم حظر فتح ملفَين (<ph name="FILE_COUNT" />)}few{تم حظر فتح <ph name="FILE_COUNT" /> ملفات}many{تم حظر فتح <ph name="FILE_COUNT" /> ملفًا}other{تم حظر فتح <ph name="FILE_COUNT" /> ملف}}</translation>
 <translation id="8270173610195068258">جرائم وعقوبات</translation>
@@ -4211,6 +4216,7 @@
 <translation id="9094544726794842788">عند النقر على زر "لا يعجبني"، يتم فتح نموذج لإرسال ملاحظات مفصّلة حول سبب عدم إعجابك بهذه النتائج.</translation>
 <translation id="9095388113577226029">مزيد من اللغات...</translation>
 <translation id="9096425087209440047">‏<ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />، اضغط على مفتاح Tab ثم مفتاح Enter لضبط Chrome كمتصفِّح تلقائي للنظام في إعدادات iOS</translation>
+<translation id="9101450247048146228">استخدام الكاميرا وتحريكها (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">الدُرج 1</translation>
 <translation id="9103872766612412690">‏يستخدم <ph name="SITE" /> التشفير عادة لحماية معلوماتك. عندما حاول Chromium الاتصال بموقع <ph name="SITE" /> هذه المرة، أرجَع الموقع الإلكتروني بيانات اعتماد غير عادية وغير صحيحة. وقد يحدث هذا عندما يحاول أحد المهاجمين التظاهر بأنه موقع <ph name="SITE" />، أو إذا قاطعت شاشة تسجيل دخول Wi-Fi الاتصال. ولكن لا تزال معلوماتك آمنة نظرًا لأن Chromium أوقَفَ الاتصال قبل تبادل أي بيانات.</translation>
 <translation id="9107467864910557787">تتم إدارة متصفِّحك من خلال <ph name="MANAGER" /></translation>
@@ -4233,6 +4239,8 @@
 <translation id="9139318394846604261">التسوّق</translation>
 <translation id="9141013498910525015">إدارة العناوين الجغرافية</translation>
 <translation id="9144951720726881238">تاريخ انتهاء الصلاحية:</translation>
+<translation id="9145910032514306808">يجب <ph name="BEGIN_LINK" />تسجيل الدخول<ph name="END_LINK" />
+    مجددًا ثم الرجوع إلى علامة التبويب هذه للحصول على مساعدة في الكتابة</translation>
 <translation id="9148507642005240123">تراجع عن ا&amp;لتحرير</translation>
 <translation id="9148599396704355100">السعر منخفض</translation>
 <translation id="9150025764986957246">يمكنك إدخال نص مثل:</translation>
diff --git a/components/strings/components_strings_be.xtb b/components/strings/components_strings_be.xtb
index bc31139d..4181d32 100644
--- a/components/strings/components_strings_be.xtb
+++ b/components/strings/components_strings_be.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Адсочванне цаны выключана</translation>
 <translation id="127777513559587977">Тэлевізійныя ток-шоу</translation>
 <translation id="1281476433249504884">Укладчык 1</translation>
+<translation id="1281536351321444151">Каб у наступны раз увесці гэты IBAN аўтаматычна, захавайце яго ва ўліковы запіс Google</translation>
 <translation id="1282358575813748144">Лодкі і водны транспарт</translation>
 <translation id="1283977499362032052">Рэзюмэ і партфоліа</translation>
 <translation id="1285320974508926690">Ніколі не перакладаць гэты сайт</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Латок 8</translation>
 <translation id="1530707389502320859">Сайт, які вы хацелі наведаць, можа быць фальшывым. Зламыснікі часам імітуюць сайты, уносячы невялікія і непрыкметныя змяненні ў URL-адрас.</translation>
 <translation id="1532118530259321453">Інфармацыя ад старонкі</translation>
+<translation id="1533966801397200693">Профіль, у які вы ўвайшлі, знаходзіцца пад кіраваннем. Ваш адміністратар можа аддалена змяняць налады профілю, аналізаваць інфармацыю пра браўзер з дапамогай справаздач і выконваць іншыя неабходныя задачы. <ph name="BEGIN_LINK" />Даведацца больш<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Перакласці старонку</translation>
 <translation id="1537807545287921620">Гэты файл PDF недаступны. Адкрыйце кантэкстнае меню і ўключыце функцыю "Выняць тэкст з PDF".</translation>
 <translation id="1539840569003678498">Справаздача адпраўлена:</translation>
@@ -568,6 +570,7 @@
 <translation id="2046951263634619614">Кнігарні</translation>
 <translation id="2048261947532620704">Ідзе пераклад старонкі</translation>
 <translation id="2053111141626950936">Старонкі на мове <ph name="LANGUAGE" /> не будуць перакладацца.</translation>
+<translation id="2055461225779831292">Выкарыстоўваць і перамяшчаць камеры (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Блакіраваць паказальнік мышы</translation>
 <translation id="2056658168519009885">Сайты могуць запытваць у браўзера Chrome інфармацыю, якая дапаможа персаналізаваць для вас рэкламу.</translation>
 <translation id="2059166748188874810">Муніцыпальная акруга</translation>
@@ -715,6 +718,7 @@
 <translation id="2300306941146563769">Не запампавана</translation>
 <translation id="2301098101308036335">Якія вэб-сайты наведваюцца і калі.</translation>
 <translation id="230286397113210245">Кнопка "Адкрыць акно ў рэжыме інкогніта". Каб адкрыць новае акно ў рэжыме інкогніта для прыватнага прагляду вэб-старонак, націсніце яе.</translation>
+<translation id="2306124309679506798">Дазволіць эфект прысутнасці?</translation>
 <translation id="2312234273148520048">Прыправы і заправы</translation>
 <translation id="2316087952091171402">Менш за <ph name="UPPER_ESTIMATE" />. Некаторыя сайты могуць загружацца павальней пры наступным наведванні.</translation>
 <translation id="2316159751672436664">Персаналізаваць інструменты даступнасці ў наладах Chrome OS</translation>
@@ -1171,6 +1175,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />. Каб наладзіць выгляд браўзера, націсніце Tab, затым Enter</translation>
 <translation id="3240791268468473923">Быў адкрыты аркуш, які паказваецца пры адсутнасці супадзення ўліковых даных для бяспечных плацяжоў</translation>
 <translation id="324180406144491771">Спасылкі "<ph name="HOST_NAME" />" заблакіраваны</translation>
+<translation id="3248329428895535435">Не паказваць на гэтым сайце</translation>
 <translation id="3252772880526154546">Архітэктура</translation>
 <translation id="3254301855501243548">18 x 22 цалі</translation>
 <translation id="3255926992597692024">Chromium спрабуе замяніць налады запаўнення спосабаў аплаты.</translation>
@@ -1186,6 +1191,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Увядзіце <ph name="NUMBER_OF_DIGITS" />-значны код спраўджання</translation>
 <translation id="3272643614306383237">Менш за 1 МБ. Некаторыя сайты могуць загружацца павальней пры наступным наведванні.</translation>
+<translation id="3273738040255912340">Ваш адміністратар можа аддалена змяняць налады профілю і браўзера, аналізаваць інфармацыю пра браўзер з дапамогай справаздач і выконваць іншыя неабходныя задачы. Сама прылада таксама можа знаходзіцца пад знешнім кіраваннем. <ph name="BEGIN_LINK" />Даведацца больш<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Згодна з палітыкай адміністратара не рэкамендуецца адкрываць гэты файл тут: <ph name="DESTINATION_NAME" />}one{Згодна з палітыкай адміністратара не рэкамендуецца адкрываць гэтыя файлы тут: <ph name="DESTINATION_NAME" />}few{Згодна з палітыкай адміністратара не рэкамендуецца адкрываць гэтыя файлы тут: <ph name="DESTINATION_NAME" />}many{Згодна з палітыкай адміністратара не рэкамендуецца адкрываць гэтыя файлы тут: <ph name="DESTINATION_NAME" />}other{Згодна з палітыкай адміністратара не рэкамендуецца адкрываць гэтыя файлы тут: <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Ваша арганізацыя (<ph name="ENROLLMENT_DOMAIN" />) адправіла на наступныя вэб-сайты пэўныя звесткі (напрыклад, налады або палітыкі).</translation>
 <translation id="3286372614333682499">кніжная</translation>
@@ -1603,6 +1609,7 @@
 <translation id="4082333119419111506">Папера з нанесеным відарысам</translation>
 <translation id="4082393374666368382">Налады – Кіраванне</translation>
 <translation id="4084219288110917128">Канверт C1</translation>
+<translation id="4085326869263783566">Дапамога з напісаннем. Каб адкрыць, націсніце Tab + Увод.</translation>
 <translation id="4088981014127559358">Зрух відарыса па восі Y, бок 1</translation>
 <translation id="4089152113577680600">Латок 14</translation>
 <translation id="4092349052316400070">Увядзіце адрас</translation>
@@ -2303,6 +2310,7 @@
 <translation id="5447765697759493033">Гэты сайт не будзе перакладацца</translation>
 <translation id="5452270690849572955">Гэта старонка хоста <ph name="HOST_NAME" /> не знойдзена</translation>
 <translation id="5455374756549232013">Недапушчальная метка часу палітыкі</translation>
+<translation id="5456428544444655325">Ніколі не паказваць</translation>
 <translation id="5456839782162429664">Запытваць пацвярджэнне асобы пры кожнай аплаце з выкарыстаннем аўтазапаўнення</translation>
 <translation id="5457113250005438886">Несапраўдная</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" /> і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" /> і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}many{<ph name="CONTACT_PREVIEW" /> і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" /> і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation>
@@ -3783,6 +3791,7 @@
 <translation id="8263001937536038617">Фота- і відэапаслугі</translation>
 <translation id="8265992338205884890">Бачныя даныя</translation>
 <translation id="8267698848189296333">Уваход ва ўліковы запіс <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Асобныя дакументы, разабраныя копіі</translation>
 <translation id="8269703227894255363">{0,plural, =1{Файл не можа быць адкрыты па прычыне блакіроўкі}one{<ph name="FILE_COUNT" /> файл не можа быць адкрыты па прычыне блакіроўкі}few{<ph name="FILE_COUNT" /> файлы не могуць быць адкрыты па прычыне блакіроўкі}many{<ph name="FILE_COUNT" /> файлаў не могуць быць адкрыты па прычыне блакіроўкі}other{<ph name="FILE_COUNT" /> файла не могуць быць адкрыты па прычыне блакіроўкі}}</translation>
 <translation id="8270173610195068258">Злачыннасць і правасуддзе</translation>
@@ -3887,6 +3896,7 @@
 <translation id="8446884382197647889">Даведацца больш</translation>
 <translation id="8449155699563577224">17 x 24 цалі</translation>
 <translation id="8449836157089738489">Адкрыць усе ў новай групе ўкладак</translation>
+<translation id="84561192812921051">Ваш адміністратар можа аддалена змяняць налады профілю і браўзера, аналізаваць інфармацыю пра браўзер з дапамогай справаздач і выконваць іншыя неабходныя задачы. Сама прылада таксама можа быць пад знешнім кіраваннем.  <ph name="BEGIN_LINK" />Даведацца больш<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Бясконца</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Уключыць</translation>
@@ -4201,6 +4211,7 @@
 <translation id="9094544726794842788">Калі націснуць кнопку "Не падабаецца", будзе адкрыта форма для адпраўкі падрабязнага водгуку аб тым, чаму вам не спадабаліся гэтыя вынікі</translation>
 <translation id="9095388113577226029">Іншыя мовы...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />. Каб зрабіць Chrome стандартным браўзерам сістэмы ў наладах iOS, націсніце Tab, затым Увод</translation>
+<translation id="9101450247048146228">Рух і выкарыстанне камер (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Латок 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> звычайна выкарыстоўвае шыфраванне для абароны вашай інфармацыі. Пры спробе Chromium падключыцца да <ph name="SITE" />, вэб-сайт адправіў незнаёмыя і няправільныя ўліковыя даныя. Гэта можа адбывацца, калі зламыснік спрабуе выдаць сябе за <ph name="SITE" />, або экран уваходу ў сетцы Wi-Fi перарваў падключэнне. Ваша інфармацыя ўсё роўна абаронена, паколькі Chromium перарваў падключэнне да абмену данымі.</translation>
 <translation id="9107467864910557787">Браўзерам кіруе <ph name="MANAGER" />.</translation>
@@ -4223,6 +4234,8 @@
 <translation id="9139318394846604261">Шопінг</translation>
 <translation id="9141013498910525015">Кіраваць адрасамі</translation>
 <translation id="9144951720726881238">Заканчэнне тэрміну дзеяння:</translation>
+<translation id="9145910032514306808">Каб атрымаць дапамогу з напісаннем,
+    <ph name="BEGIN_LINK" />увайдзіце зноў<ph name="END_LINK" /> і вярніцеся на гэту ўкладку</translation>
 <translation id="9148507642005240123">&amp;Адрабіць змену</translation>
 <translation id="9148599396704355100">Нізкая цана</translation>
 <translation id="9150025764986957246">Вы можаце ўвесці, напрыклад:</translation>
diff --git a/components/strings/components_strings_bg.xtb b/components/strings/components_strings_bg.xtb
index 612be87..96d199a 100644
--- a/components/strings/components_strings_bg.xtb
+++ b/components/strings/components_strings_bg.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Проследяването на цената е изключено</translation>
 <translation id="127777513559587977">Телевизионни дискусионни предавания</translation>
 <translation id="1281476433249504884">Стакер 1</translation>
+<translation id="1281536351321444151">За да се попълни автоматично този IBAN следващия път, запазете го в профила си в Google</translation>
 <translation id="1282358575813748144">Лодки и плавателни съдове</translation>
 <translation id="1283977499362032052">Автобиографии и портфолия</translation>
 <translation id="1285320974508926690">Този сайт да не се превежда никога</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Тава 8</translation>
 <translation id="1530707389502320859">Сайтът, който току-що се опитахте да отворите, изглежда фалшив. Понякога атакуващите имитират сайтове, като правят незначителни, труднозабележими промени в URL адреса</translation>
 <translation id="1532118530259321453">Тази страница изпраща съобщение</translation>
+<translation id="1533966801397200693">Потребителският профил, в който сте влезли, е управляван. Администраторът ви може да променя настройките на потребителския ви профил отдалечено, да анализира информацията за браузъра чрез отчитане и да изпълнява други необходими задачи. <ph name="BEGIN_LINK" />Научете повече<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Превод на страницата</translation>
 <translation id="1537807545287921620">Този PDF файл не е достъпен. Отворете контекстното меню и включете функцията за извличане на текст от PDF файл</translation>
 <translation id="1539840569003678498">Сигналът е изпратен на:</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Въведете <ph name="NUMBER_OF_DIGITS" />-цифрения код за потвърждение</translation>
 <translation id="3272643614306383237">По-малко от 1 MB. При следващото ви посещение някои сайтове може да се зареждат по-бавно.</translation>
+<translation id="3273738040255912340">Администраторът ви може да извършва промени в потребителския профил и браузъра ви отдалечено, да анализира информацията за браузъра чрез отчитане и да изпълнява други необходими задачи. Възможно е активността на това устройство да се управлява и извън Chromium. <ph name="BEGIN_LINK" />Научете повече<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Според администраторско правило отварянето на този файл в(ъв) <ph name="DESTINATION_NAME" /> не се препоръчва}other{Според администраторско правило отварянето на тези файлове в(ъв) <ph name="DESTINATION_NAME" /> не се препоръчва}}</translation>
 <translation id="3282085321714087552">Организацията ви (<ph name="ENROLLMENT_DOMAIN" />) изпрати известна информация, като например настройки или правила, до долупосочените уебсайтове.</translation>
 <translation id="3286372614333682499">вертикална ориентация</translation>
@@ -3887,6 +3890,7 @@
 <translation id="8446884382197647889">Научете повече</translation>
 <translation id="8449155699563577224">17 x 24 инча</translation>
 <translation id="8449836157089738489">Отваряне на всички в нова група раздели</translation>
+<translation id="84561192812921051">Администраторът ви може да извършва промени в потребителския профил и браузъра ви отдалечено, да анализира информацията за браузъра чрез отчитане и да изпълнява други необходими задачи. Възможно е активността на това устройство да се управлява и извън Chrome.  <ph name="BEGIN_LINK" />Научете повече<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Неограничено</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Включване</translation>
diff --git a/components/strings/components_strings_bn.xtb b/components/strings/components_strings_bn.xtb
index 0a71e17..dcfd432 100644
--- a/components/strings/components_strings_bn.xtb
+++ b/components/strings/components_strings_bn.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">দাম ট্র্যাক করার ফিচার বন্ধ করা আছে</translation>
 <translation id="127777513559587977">টিভিতে টক শো</translation>
 <translation id="1281476433249504884">স্ট্যাকার ১</translation>
+<translation id="1281536351321444151">এই IBAN পরবর্তী সময় অটোফিল করতে, আপনার Google অ্যাকাউন্টে এটি সেভ করুন</translation>
 <translation id="1282358575813748144">বোট ও ওয়াটারক্রাফ্ট</translation>
 <translation id="1283977499362032052">রেজুমে ও পোর্টফোলিও</translation>
 <translation id="1285320974508926690">কখনই এই সাইটটিকে অনুবাদ করবেন না</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">ট্রে ৮</translation>
 <translation id="1530707389502320859">এখন যে সাইট দেখার চেষ্টা করছেন তা নকল বলে মনে হচ্ছে। ইউআরএলে সামান্য বা সহজে দেখা যায় না এমন পরিবর্তন করে আক্রমণকারীরা সাইট নকল করে।</translation>
 <translation id="1532118530259321453">এই পৃষ্ঠায় এটি দেখানো হচ্ছে</translation>
+<translation id="1533966801397200693">আপনি ম্যানেজ করা প্রোফাইলে সাইন-ইন করেছেন। আপনার অ্যাডমিনিস্ট্রেটর রিমোট লোকেশন থেকে আপনার প্রোফাইল সেটিংসে পরিবর্তন করতে পারবে। একই সাথে রিপোর্টিংয়ের সাহায্যে ব্রাউজার সম্পর্কিত তথ্য বিশ্লেষণ ও অন্যান্য প্রয়োজনীয় কাজ করতে পারবে। <ph name="BEGIN_LINK" />আরও জানুন<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">পৃষ্ঠাটি অনুবাদ করুন</translation>
 <translation id="1537807545287921620">এই পিডিএফ অ্যাক্সেস করা যাচ্ছে না। সংশ্লিষ্ট মেনু খুলে "পিডিএফ থেকে টেক্সট এক্সট্র্যাক্ট করুন" বিকল্প চালু করুন</translation>
 <translation id="1539840569003678498">রিপোর্ট পাঠানো হয়েছে:</translation>
@@ -569,6 +571,7 @@
 <translation id="2046951263634619614">বইয়ের খুচরো বিক্রেতা</translation>
 <translation id="2048261947532620704">পৃষ্ঠাটি অনুবাদ করা হচ্ছে</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> ভাষার পৃষ্ঠা অনুবাদ করা হবে না।</translation>
+<translation id="2055461225779831292">আপনার ক্যামেরা ব্যবহার করুন এবং সরান (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">আপনার মাউস পয়েন্টার লক করুন</translation>
 <translation id="2056658168519009885">আপনি যে বিজ্ঞাপনগুলি দেখেন তা পছন্দমতো করতে সাইটগুলি Chrome এর কাছে তথ্য চাইতে পারে।</translation>
 <translation id="2059166748188874810">মিউনিসিপ্যালিটি</translation>
@@ -716,6 +719,7 @@
 <translation id="2300306941146563769">আপলোড করা হয়নি</translation>
 <translation id="2301098101308036335">কোন ওয়েবসাইট কখন দেখা হয়।</translation>
 <translation id="230286397113210245">'ছদ্মবেশী উইন্ডো খুলুন' বোতাম, গোপনে ব্রাউজ করার জন্য নতুন ছদ্মবেশী উইন্ডো খুলতে এটি চালু করুন</translation>
+<translation id="2306124309679506798">ইমারসিভ অভিজ্ঞতার অনুমতি দিতে চান?</translation>
 <translation id="2312234273148520048">কন্ডিমেন্ট ও ড্রেসিং</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" />-এর থেকে কম পরের বার ভিজিট করার সময় কিছু সাইট লোড হতে দেরি হতে পারে।</translation>
 <translation id="2316159751672436664">ChromeOS সেটিংস থেকে আপনার পছন্দ মতো অ্যাক্সেসিবিলিটি টুল বেছে নিন</translation>
@@ -1171,6 +1175,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, আপনার ব্রাউজার কেমন দেখাবে তা কাস্টমাইজ করতে Tab প্রেস করার পর Enter প্রেস করুন</translation>
 <translation id="3240791268468473923">সুরক্ষিত পেমেন্ট ক্রেডেনশিয়ালের সাথে মিল নেই এমন পেমেন্ট ক্রেডেনশিয়ালের শিট খোলা আছে</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” লিঙ্ক ব্লক করা হয়েছে</translation>
+<translation id="3248329428895535435">এই সাইটে দেখতে চাই না</translation>
 <translation id="3252772880526154546">স্থাপত্যশিল্প</translation>
 <translation id="3254301855501243548">১৮ x ২২ ইঞ্চি</translation>
 <translation id="3255926992597692024">পেমেন্ট পদ্ধতি পূরণের জন্য Chromium চেষ্টা করছে সেটিংস পরিবর্তন করার।</translation>
@@ -1186,6 +1191,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187"><ph name="NUMBER_OF_DIGITS" />-সংখ্যার যাচাইকরণ কোড লিখুন</translation>
 <translation id="3272643614306383237">১ এমবির কম। পরের বার ভিজিট করার সময় কিছু সাইট লোড হতে দেরি হতে পারে।</translation>
+<translation id="3273738040255912340">আপনার অ্যাডমিনিস্ট্রেটর রিমোট লোকেশন থেকে আপনার প্রোফাইল সেটিংসে পরিবর্তন করতে পারবেন। একই সাথে রিপোর্টিংয়ের সাহায্যে ব্রাউজার সম্পর্কিত তথ্য বিশ্লেষণ ও অন্যান্য প্রয়োজনীয় কাজ করতে পারবে। এই ডিভাইসের অ্যাক্টিভিটি Chromium-এর বাইরে থেকেও ম্যানেজ করা যেতে পারে। <ph name="BEGIN_LINK" />আরও জানুন<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{অ্যাডমিনিস্ট্রেটরের নীতি অনুযায়ী <ph name="DESTINATION_NAME" />-এ এই ফাইল খোলা যাবে না}one{অ্যাডমিনিস্ট্রেটরের নীতি অনুযায়ী <ph name="DESTINATION_NAME" />-এ এই ফাইল খোলা যাবে না}other{অ্যাডমিনিস্ট্রেটরের নীতি অনুযায়ী <ph name="DESTINATION_NAME" />-এ এই ফাইল খোলা যাবে না}}</translation>
 <translation id="3282085321714087552">আপনার সংস্থা, <ph name="ENROLLMENT_DOMAIN" />, নিম্নলিখিত ওয়েবসাইটগুলিকে সেটিংস বা নীতির মতো কিছু তথ্য পাঠিয়েছে।</translation>
 <translation id="3286372614333682499">পোর্ট্রেট</translation>
@@ -1604,6 +1610,7 @@
 <translation id="4082333119419111506">পেপার (প্রিপ্রিন্টেড)</translation>
 <translation id="4082393374666368382">সেটিংস - ম্যানেজমেন্ট</translation>
 <translation id="4084219288110917128">এনভেলপ C1</translation>
+<translation id="4085326869263783566">আমাকে লিখতে সাহায্য করো। খোলার জন্য ট্যাপ করে Enter প্রেস করুন</translation>
 <translation id="4088981014127559358">সাইড 1 ছবি Y শিফ্ট</translation>
 <translation id="4089152113577680600">ট্রে ১৪</translation>
 <translation id="4092349052316400070">ঠিকানা লিখুন</translation>
@@ -3783,6 +3790,7 @@
 <translation id="8263001937536038617">ফটো ও ভিডিও পরিষেবা</translation>
 <translation id="8265992338205884890">যে ডেটা দেখা যাচ্ছে</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" /> হিসেবে প্রবেশ করুন করছেন</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">আলাদা ডকুমেন্ট/সংগ্রহ করা কপি</translation>
 <translation id="8269703227894255363">{0,plural, =1{ফাইল খোলা যাবে না}one{<ph name="FILE_COUNT" />টি ফাইল খোলা যাবে না}other{<ph name="FILE_COUNT" />টি ফাইল খোলা যাবে না}}</translation>
 <translation id="8270173610195068258">অপরাধ ও বিচার</translation>
@@ -3887,6 +3895,7 @@
 <translation id="8446884382197647889">আরও জানুন</translation>
 <translation id="8449155699563577224">১৭ x ২৪ ইঞ্চি</translation>
 <translation id="8449836157089738489">সবকটি নতুন ট্যাব গ্রুপে খুলুন</translation>
+<translation id="84561192812921051">আপনার অ্যাডমিনিস্ট্রেটর রিমোট লোকেশন থেকে আপনার প্রোফাইল সেটিংসে পরিবর্তন করতে পারবেন। একই সাথে রিপোর্টিংয়ের সাহায্যে ব্রাউজার সম্পর্কিত তথ্য বিশ্লেষণ ও অন্যান্য প্রয়োজনীয় কাজ করতে পারবে। এই ডিভাইসের অ্যাক্টিভিটি Chrome-এর বাইরে থেকেও ম্যানেজ করা যেতে পারে।  <ph name="BEGIN_LINK" />আরও জানুন<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">অনির্দিষ্ট</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">এটি চালু করুন</translation>
@@ -4201,6 +4210,7 @@
 <translation id="9094544726794842788">'থাম্বস-ডাউন' আইকন এমন একটি ফর্ম খোলে, যেখানে এইসব ফলাফল কেন আপনার পছন্দ হয়নি সেই সম্পর্কিত বিশদ মতামত জমা দেওয়া যায়</translation>
 <translation id="9095388113577226029">আরও ভাষা...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, iOS সেটিংসে Chrome-কে সিস্টেমের ডিফল্ট ব্রাউজার হিসেবে সেট করতে প্রথমে ট্যাব, তারপরে Enter কী প্রেস করুন</translation>
+<translation id="9101450247048146228">ক্যামেরা ব্যবহার এবং গতিবিধি (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">ট্রে ১</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> সাধারণত আপনার তথ্য সুরক্ষিত রাখতে এনক্রিপশন ব্যবহার করে। এবার Chromium, <ph name="SITE" />-এর সাথে কানেক্ট করার চেষ্টা করলে ওয়েবসাইটটি অস্বাভাবিক এবং ভুল ক্রেডেনশিয়াল পাঠিয়ে দেয়। হয় একজন আক্রমণকারী <ph name="SITE" /> হতে চাইছে অথবা একটি ওয়াই-ফাই সাইন-ইন স্ক্রিন কানেকশনকে বাধা দিয়েছে। আপনার তথ্য এখনো নিরাপদ আছে কারণ কোনো ডেটা আদানপ্রদানের আগেই Chromium কানেকশন বন্ধ করে দিয়েছে।</translation>
 <translation id="9107467864910557787"><ph name="MANAGER" />-এর মাধ্যমে আপনার ব্রাউজার ম্যানেজ করা হয়</translation>
@@ -4223,6 +4233,8 @@
 <translation id="9139318394846604261">Shopping</translation>
 <translation id="9141013498910525015">ঠিকানা ম্যানেজ করুন</translation>
 <translation id="9144951720726881238">মেয়াদকাল সমাপ্তির তারিখ:</translation>
+<translation id="9145910032514306808">আবার <ph name="BEGIN_LINK" />সাইন-ইন করুন<ph name="END_LINK" />
+    তারপর, লেখার ব্যাপারে সহায়তা পেতে এই ট্যাবে ফিরে আসুন</translation>
 <translation id="9148507642005240123">&amp;সম্পাদনাকে পূর্বাবস্থায় ফেরান</translation>
 <translation id="9148599396704355100">দাম কম</translation>
 <translation id="9150025764986957246">আপনি এই ধরনের জিনিস যোগ করতে পারেন:</translation>
diff --git a/components/strings/components_strings_ca.xtb b/components/strings/components_strings_ca.xtb
index bd57592..d9b8bbf 100644
--- a/components/strings/components_strings_ca.xtb
+++ b/components/strings/components_strings_ca.xtb
@@ -526,7 +526,7 @@
 <translation id="1959445535228047762">El text i el contingut de la pàgina s'envien a Google i es poden utilitzar per millorar aquesta funció.
   <ph name="BEGIN_LINK" />Més informació<ph name="END_LINK" /></translation>
 <translation id="1962204205936693436">Adreces d'interès de <ph name="DOMAIN" /></translation>
-<translation id="196752089528718902">Normalment et connectes a llocs web de manera segura, però aquesta vegada Chrome no ha pogut utilitzar una connexió segura. És possible que un atacant estigui provant d'espiar o de modificar la connexió a la xarxa. <ph name="BEGIN_LEARN_MORE_LINK" />Més informació<ph name="END_LEARN_MORE_LINK" /></translation>
+<translation id="196752089528718902">Normalment et connectes a llocs web de manera segura, però aquesta vegada Chrome no ha pogut utilitzar una connexió segura. És possible que un atacant estigui provant d'espiar o de modificar la connexió de xarxa. <ph name="BEGIN_LEARN_MORE_LINK" />Més informació<ph name="END_LEARN_MORE_LINK" /></translation>
 <translation id="1973335181906896915">Error de serialització</translation>
 <translation id="1973785048533660168">Feines d'oficinista i d'administratiu</translation>
 <translation id="1974060860693918893">Configuració avançada</translation>
@@ -1382,7 +1382,7 @@
 <translation id="3630155396527302611">Si ja està inclòs a la llista de programes autoritzats per accedir a la xarxa, proveu
       de suprimir-lo de la llista i torneu-lo a afegir.</translation>
 <translation id="3630426379756188722">Botó Troba el meu dispositiu: activa'l per anar a Troba el meu dispositiu al Compte de Google</translation>
-<translation id="3630699740441428070">Els administradors d'aquest dispositiu han configurat la connexió de la xarxa, la qual cosa és possible que els permeti veure el trànsit de la teva xarxa, inclosos els llocs web que visites.</translation>
+<translation id="3630699740441428070">Els administradors d'aquest dispositiu han configurat la connexió de xarxa, la qual cosa és possible que els permeti veure el trànsit de la teva xarxa, inclosos els llocs web que visites.</translation>
 <translation id="3632503704576938756">S'ha reprès la compartició de pantalla</translation>
 <translation id="3632892046558972264">S'ha posat en pausa la compartició de pantalla</translation>
 <translation id="3634530185120165534">Safata 5</translation>
@@ -1437,7 +1437,7 @@
 <translation id="3714633008798122362">calendari web</translation>
 <translation id="3714780639079136834">Activa les dades mòbils o la Wi-Fi.</translation>
 <translation id="3715016660240337709">{0,plural, =1{S'ha bloquejat el fitxer perquè no es pugui penjar}other{S'han bloquejat <ph name="FILE_COUNT" /> fitxers perquè no es puguin penjar}}</translation>
-<translation id="3715597595485130451">Connexió a xarxes Wi-Fi</translation>
+<translation id="3715597595485130451">Connexió de xarxa Wi-Fi</translation>
 <translation id="3716622997181469465">bloqueig del teclat</translation>
 <translation id="3717027428350673159"><ph name="BEGIN_LINK" />Comproveu el servidor intermediari, el tallafoc i la configuració de DNS<ph name="END_LINK" /></translation>
 <translation id="3723663469265383848">Durant l'actualització, no podràs fer servir el dispositiu durant un màxim de 10 minuts.</translation>
@@ -3433,7 +3433,7 @@
 <translation id="759889825892636187"><ph name="HOST_NAME" /> no pot gestionar la sol·licitud en aquest moment.</translation>
 <translation id="7599089013883397081">S'ha esgotat el temps d'espera per a la baixada</translation>
 <translation id="7600965453749440009">No tradueixis mai de: <ph name="LANGUAGE" /></translation>
-<translation id="7601297359530599375">Normalment et connectes a aquest lloc web de manera segura, però aquesta vegada Chrome no ha pogut utilitzar una connexió segura. És possible que un atacant estigui provant d'espiar o de modificar la connexió a la xarxa. <ph name="BEGIN_LEARN_MORE_LINK" />Més informació<ph name="END_LEARN_MORE_LINK" /></translation>
+<translation id="7601297359530599375">Normalment et connectes a aquest lloc web de manera segura, però aquesta vegada Chrome no ha pogut utilitzar una connexió segura. És possible que un atacant estigui provant d'espiar o de modificar la connexió de xarxa. <ph name="BEGIN_LEARN_MORE_LINK" />Més informació<ph name="END_LEARN_MORE_LINK" /></translation>
 <translation id="7605377493722372900">Els atacants del lloc web que proves de visitar poden instal·lar programari nociu que et robi o et suprimeixi dades com ara la contrasenya, fotos, missatges o el número de la targeta de crèdit.</translation>
 <translation id="7608583484192556132">El fet que els anuncis que veus es personalitzin o no pot dependre de molts factors, com ara d'aquesta opció de configuració, dels <ph name="BEGIN_LINK_1" />anuncis suggerits per llocs web<ph name="END_LINK_1" />, de la <ph name="BEGIN_LINK_2" />configuració de galetes<ph name="END_LINK_2" /> i de si el lloc web que estàs visitant personalitza els anuncis. Obtén més informació sobre com pots <ph name="BEGIN_LINK_3" />gestionar la privadesa d'anuncis<ph name="END_LINK_3" />.</translation>
 <translation id="7610193165460212391">El valor es troba fora de l'interval <ph name="VALUE" /> .</translation>
diff --git a/components/strings/components_strings_cs.xtb b/components/strings/components_strings_cs.xtb
index a44fcba..310a735 100644
--- a/components/strings/components_strings_cs.xtb
+++ b/components/strings/components_strings_cs.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Sledování ceny je vypnuté</translation>
 <translation id="127777513559587977">Televizní talkshow</translation>
 <translation id="1281476433249504884">Stohovač 1</translation>
+<translation id="1281536351321444151">Pokud tento kód IBAN chcete příště vyplnit automaticky, uložte ho do svého účtu Google</translation>
 <translation id="1282358575813748144">Lodě a plavidla</translation>
 <translation id="1283977499362032052">Resumé a portfolia</translation>
 <translation id="1285320974508926690">Tento web nikdy nepřekládat</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Přihrádka 8</translation>
 <translation id="1530707389502320859">Web, který se pokoušíte navštívit, vypadá falešný. Útočníci někdy weby napodobují tak, že v adrese URL provádějí drobné, obtížně odhalitelné změny.</translation>
 <translation id="1532118530259321453">Tato stránka říká</translation>
+<translation id="1533966801397200693">Jste přihlášeni ke spravovanému profilu. Administrátor může vzdálené měnit nastavení profilu, analyzovat informace o prohlížeči prostřednictvím přehledů a provádět další nezbytné úkoly. <ph name="BEGIN_LINK" />Další informace<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Přeložit stránku</translation>
 <translation id="1537807545287921620">Tento soubor PDF není přístupný. Otevřete kontextovou nabídku a zapněte možnost Extrahovat text z PDF</translation>
 <translation id="1539840569003678498">Hlášení bylo odesláno:</translation>
@@ -1182,6 +1184,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Zadejte <ph name="NUMBER_OF_DIGITS" />místný ověřovací kód</translation>
 <translation id="3272643614306383237">Méně než 1 MB. Je možné, že se některé weby při příští návštěvě budou načítat pomaleji.</translation>
+<translation id="3273738040255912340">Administrátor může vzdálené měnit nastavení profilu a prohlížeče, analyzovat informace o prohlížeči prostřednictvím přehledů a provádět další nezbytné úkoly. Aktivita na tomto zařízení může být spravována také mimo Chromium. <ph name="BEGIN_LINK" />Další informace<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Zásady administrátora nedoporučují otevřít tento soubor v cíli <ph name="DESTINATION_NAME" />}few{Zásady administrátora nedoporučují otevřít tyto soubory v cíli <ph name="DESTINATION_NAME" />}many{Zásady administrátora nedoporučují otevřít tyto soubory v cíli <ph name="DESTINATION_NAME" />}other{Zásady administrátora nedoporučují otevřít tyto soubory v cíli <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Vaše organizace, <ph name="ENROLLMENT_DOMAIN" />, odeslala určité informace (například nastavení nebo zásady) následujícím webům.</translation>
 <translation id="3286372614333682499">na výšku</translation>
@@ -3881,6 +3884,7 @@
 <translation id="8446884382197647889">Další informace</translation>
 <translation id="8449155699563577224">17 × 24″</translation>
 <translation id="8449836157089738489">Otevřít vše v nové skupině karet</translation>
+<translation id="84561192812921051">Administrátor může vzdálené měnit nastavení profilu a prohlížeče, analyzovat informace o prohlížeči prostřednictvím přehledů a provádět další nezbytné úkoly. Aktivita na tomto zařízení může být spravována také mimo Chrome.  <ph name="BEGIN_LINK" />Další informace<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Bez časového omezení</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Zapnout</translation>
diff --git a/components/strings/components_strings_da.xtb b/components/strings/components_strings_da.xtb
index 8d1025c..16f0e403 100644
--- a/components/strings/components_strings_da.xtb
+++ b/components/strings/components_strings_da.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Prisovervågning er deaktiveret</translation>
 <translation id="127777513559587977">Tv-talkshows</translation>
 <translation id="1281476433249504884">Stabler 1</translation>
+<translation id="1281536351321444151">Hvis du vil udfylde dette IBAN-nummer automatisk næste gang, skal du gemme det på din Google-konto</translation>
 <translation id="1282358575813748144">Både og vandfartøjer</translation>
 <translation id="1283977499362032052">CV'er og levnedsbeskrivelser</translation>
 <translation id="1285320974508926690">Oversæt aldrig dette website</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Bakke 8</translation>
 <translation id="1530707389502320859">Det website, du netop forsøgte at gå til, ser ud til at være falsk. Svindlere efterligner nogle gange websites ved at lave små ændringer af webadressen, som er svære at se.</translation>
 <translation id="1532118530259321453">Denne side siger</translation>
+<translation id="1533966801397200693">Den profil, du er logget ind på, er en administreret profil. Din administrator kan foretage ændringer i dine profilindstillinger via fjernadgang, analysere oplysninger om browseren via rapportering og udføre andre nødvendige opgaver. <ph name="BEGIN_LINK" />Få flere oplysninger<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Oversæt side</translation>
 <translation id="1537807545287921620">Denne PDF er ikke tilgængelig. Åbn genvejsmenuen, og aktivér "udtræk tekst fra PDF"</translation>
 <translation id="1539840569003678498">Rapporten blev sendt:</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Angiv den <ph name="NUMBER_OF_DIGITS" />-cifrede verificeringskode</translation>
 <translation id="3272643614306383237">Mindre end 1 MB. Nogle websites indlæses muligvis langsommere, næste gang du besøger dem.</translation>
+<translation id="3273738040255912340">Din administrator kan foretage ændringer i din profil og browser via fjernadgang, analysere oplysninger om browseren via rapportering og udføre andre nødvendige opgaver. Aktivitet på denne enhed administreres muligvis også uden for Chromium. <ph name="BEGIN_LINK" />Få flere oplysninger<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Administratorpolitikken fraråder at åbne denne fil på <ph name="DESTINATION_NAME" />}one{Administratorpolitikken fraråder at åbne denne fil på <ph name="DESTINATION_NAME" />}other{Administratorpolitikken fraråder at åbne disse filer på <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Din organisation <ph name="ENROLLMENT_DOMAIN" /> har sendt nogle oplysninger til følgende websites, f.eks. indstillinger eller politikker.</translation>
 <translation id="3286372614333682499">stående</translation>
@@ -3887,6 +3890,7 @@
 <translation id="8446884382197647889">Få flere oplysninger</translation>
 <translation id="8449155699563577224">17 x 24 tommer</translation>
 <translation id="8449836157089738489">Åbn alle i en ny fanegruppe</translation>
+<translation id="84561192812921051">Din administrator kan foretage ændringer i din profil og browser via fjernadgang, analysere oplysninger om browseren via rapportering og udføre andre nødvendige opgaver. Aktivitet på denne enhed administreres muligvis også uden for Chrome.  <ph name="BEGIN_LINK" />Få flere oplysninger<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Ikke defineret</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Aktivér det</translation>
diff --git a/components/strings/components_strings_de.xtb b/components/strings/components_strings_de.xtb
index 2fcb3b6..56bcfd5a 100644
--- a/components/strings/components_strings_de.xtb
+++ b/components/strings/components_strings_de.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Buchhändler</translation>
 <translation id="2048261947532620704">Seite wird übersetzt</translation>
 <translation id="2053111141626950936">Seiten auf <ph name="LANGUAGE" /> werden nicht übersetzt.</translation>
+<translation id="2055461225779831292">Kameras verwenden und bewegen (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Mauszeiger sperren</translation>
 <translation id="2056658168519009885">Websites können Informationen von Chrome anfordern, um dir personalisierte Werbung anzuzeigen.</translation>
 <translation id="2059166748188874810">Gemeinde</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Nicht hochgeladen</translation>
 <translation id="2301098101308036335">Welche Websites zu welchem Zeitpunkt besucht werden.</translation>
 <translation id="230286397113210245">Schaltfläche „Inkognitofenster öffnen“ – aktivieren, um ein neues Inkognitofenster zu öffnen und privat zu surfen</translation>
+<translation id="2306124309679506798">Immersive Nutzung zulassen?</translation>
 <translation id="2312234273148520048">Würzmittel und Dressings</translation>
 <translation id="2316087952091171402">Weniger als <ph name="UPPER_ESTIMATE" />. Einige Websites werden beim nächsten Besuch möglicherweise langsamer geladen.</translation>
 <translation id="2316159751672436664">Bedienungshilfen in den Chrome OS-Einstellungen personalisieren</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" /> – drücke die Tabulatortaste und dann die Eingabetaste, um das Erscheinungsbild deines Browsers anzupassen</translation>
 <translation id="3240791268468473923">Sichere Anmeldedaten für Zahlungen – Tabellenblatt für nicht übereinstimmende sichere Anmeldedaten ist geöffnet</translation>
 <translation id="324180406144491771">Links von „<ph name="HOST_NAME" />“ werden blockiert</translation>
+<translation id="3248329428895535435">Für diese Website nicht anzeigen</translation>
 <translation id="3252772880526154546">Architektur</translation>
 <translation id="3254301855501243548">18 × 22 Zoll</translation>
 <translation id="3255926992597692024">Chromium versucht, Einstellungen für das Ausfüllen von Zahlungsmethoden zu ändern.</translation>
@@ -1604,6 +1607,7 @@
 <translation id="4082333119419111506">Papier (vorbedruckt)</translation>
 <translation id="4082393374666368382">Einstellungen – Verwaltung</translation>
 <translation id="4084219288110917128">Umschlag C1</translation>
+<translation id="4085326869263783566">Formuliere für mich. Zum Öffnen Tabulator- und Eingabetaste drücken.</translation>
 <translation id="4088981014127559358">Seite 1 – Y-Verschiebung des Bilds</translation>
 <translation id="4089152113577680600">Fach 14</translation>
 <translation id="4092349052316400070">Adresse einfügen</translation>
@@ -3785,6 +3789,7 @@
 <translation id="8263001937536038617">Foto- und Videodienstleistungen</translation>
 <translation id="8265992338205884890">Sichtbare Daten</translation>
 <translation id="8267698848189296333">Als <ph name="USERNAME" /> anmelden</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Getrennte Dokumente/sortierte Kopien</translation>
 <translation id="8269703227894255363">{0,plural, =1{Datei kann nicht geöffnet werden}other{<ph name="FILE_COUNT" /> Dateien können nicht geöffnet werden}}</translation>
 <translation id="8270173610195068258">Verbrechen und Justiz</translation>
@@ -4206,6 +4211,7 @@
 <translation id="9094544726794842788">Wenn du „Mag ich nicht“ auswählst, wird ein Formular geöffnet, über das du detailliertes Feedback dazu geben kannst, warum dir diese Ergebnisse nicht gefallen.</translation>
 <translation id="9095388113577226029">Weitere Sprachen...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" /> – Drück die Tabulatortaste und dann die Eingabetaste, um Chrome in den iOS-Einstellungen als Standardbrowser für das System festzulegen</translation>
+<translation id="9101450247048146228">Kamera-Nutzung und ‑Bewegung (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Fach 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> schützt deine Daten in der Regel durch Verschlüsselung. Als Chromium dieses Mal versuchte, eine Verbindung zu <ph name="SITE" /> herzustellen, gab die Website ungewöhnliche und falsche Anmeldedaten zurück. Entweder versucht ein Angreifer, sich als <ph name="SITE" /> auszugeben, oder die Verbindung wurde durch eine WLAN-Anmeldeseite unterbrochen. Da Chromium die Verbindung vor dem Austausch von Daten unterbrochen hat, sind deine Informationen weiterhin sicher.</translation>
 <translation id="9107467864910557787">Der Browser wird von <ph name="MANAGER" /> verwaltet</translation>
@@ -4228,6 +4234,7 @@
 <translation id="9139318394846604261">Shopping</translation>
 <translation id="9141013498910525015">Adressen verwalten</translation>
 <translation id="9144951720726881238">Ablaufdatum:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Melde dich wieder an<ph name="END_LINK" /> und kehre dann zu diesem Tab zurück, um Hilfe beim Formulieren zu erhalten</translation>
 <translation id="9148507642005240123">&amp;Bearbeiten rückgängig machen</translation>
 <translation id="9148599396704355100">Der Preis ist niedrig</translation>
 <translation id="9150025764986957246">Du kannst beispielsweise Folgendes eingeben:</translation>
diff --git a/components/strings/components_strings_el.xtb b/components/strings/components_strings_el.xtb
index a65a9494..6d9810a6 100644
--- a/components/strings/components_strings_el.xtb
+++ b/components/strings/components_strings_el.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Βιβλιοπωλεία λιανικής</translation>
 <translation id="2048261947532620704">Μετάφραση σελίδας</translation>
 <translation id="2053111141626950936">Οι σελίδες στα <ph name="LANGUAGE" /> δεν θα μεταφράζονται.</translation>
+<translation id="2055461225779831292">Να χρησιμοποιεί και να κινεί τις κάμερές σας (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Κλείδωμα του δείκτη ποντικιού</translation>
 <translation id="2056658168519009885">Οι ιστότοποι μπορούν να ζητήσουν από το Chrome πληροφορίες για την εξατομίκευση των διαφημίσεων που βλέπετε.</translation>
 <translation id="2059166748188874810">Δήμος</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Δεν έγινε μεταφόρτωση</translation>
 <translation id="2301098101308036335">Ποιοι ιστότοποι δέχονται επισκέψεις και πότε.</translation>
 <translation id="230286397113210245">Κουμπί Άνοιγμα παραθύρου για ανώνυμη περιήγηση, ενεργοποιήστε το προκειμένου να ανοίξετε ένα νέο παράθυρο για ανώνυμη περιήγηση για να περιηγηθείτε ιδιωτικά</translation>
+<translation id="2306124309679506798">Αποδοχή καθηλωτικής εμπειρίας;</translation>
 <translation id="2312234273148520048">Καρυκεύματα και σάλτσες</translation>
 <translation id="2316087952091171402">Λιγότερο από <ph name="UPPER_ESTIMATE" />. Ορισμένοι ιστότοποι μπορεί να φορτώσουν πιο αργά στην επόμενη επίσκεψή σας.</translation>
 <translation id="2316159751672436664">Εξατομίκευση εργαλείων προσβασιμότητας στις ρυθμίσεις του Chrome OS</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, πατήστε το πλήκτρο Tab και έπειτα το πλήκτρο Enter για να προσαρμόσετε την εμφάνιση του προγράμματος περιήγησης</translation>
 <translation id="3240791268468473923">Έχει ανοίξει το φύλλο μη αντιστοίχισης διαπιστευτηρίων με τα διαπιστευτήρια ασφαλούς πληρωμής</translation>
 <translation id="324180406144491771">Οι σύνδεσμοι <ph name="HOST_NAME" /> έχουν αποκλειστεί</translation>
+<translation id="3248329428895535435">Να μην εμφανίζεται σε αυτόν τον ιστότοπο</translation>
 <translation id="3252772880526154546">Αρχιτεκτονική</translation>
 <translation id="3254301855501243548">18 x 22 ίντσες</translation>
 <translation id="3255926992597692024">Το Chromium προσπαθεί να τροποποιήσει τις ρυθμίσεις για τη συμπλήρωση τρόπων πληρωμής.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">Χαρτί (Προ-εκτυπωμένο)</translation>
 <translation id="4082393374666368382">Ρυθμίσεις - Διαχείριση</translation>
 <translation id="4084219288110917128">Φάκελος C1</translation>
+<translation id="4085326869263783566">Βοήθησέ με να γράψω. Πατήστε Tab και έπειτα Enter για άνοιγμα</translation>
 <translation id="4088981014127559358">Πλευρά 1 μετατόπιση εικόνας στον άξονα Y</translation>
 <translation id="4089152113577680600">Τροφοδότης χαρτιού 14</translation>
 <translation id="4092349052316400070">Συμπλήρωση διεύθυνσης</translation>
@@ -3787,6 +3791,7 @@
 <translation id="8263001937536038617">Υπηρεσίες φωτογραφίας και βίντεο</translation>
 <translation id="8265992338205884890">Ορατά δεδομένα</translation>
 <translation id="8267698848189296333">Σύνδεση ως <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Ξεχωριστά έγγραφα/Αντίγραφα με συρραφή</translation>
 <translation id="8269703227894255363">{0,plural, =1{Το άνοιγμα του αρχείου αποκλείστηκε}other{Αποκλείστηκε το άνοιγμα <ph name="FILE_COUNT" /> αρχείων}}</translation>
 <translation id="8270173610195068258">Έγκλημα και δικαιοσύνη</translation>
@@ -4207,6 +4212,7 @@
 <translation id="9094544726794842788">Με την επιλογή "Δεν εγκρίνω" ανοίγει μια φόρμα για την υποβολή λεπτομερών σχολίων σχετικά με τους λόγους για τους οποίους δεν σας άρεσαν αυτά τα αποτελέσματα</translation>
 <translation id="9095388113577226029">Περισσότερες γλώσσες…</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, πατήστε tab και μετά Enter για να ορίσετε το Chrome ως το προεπιλεγμένο πρόγραμμα περιήγησης του συστήματος στις ρυθμίσεις του iOS</translation>
+<translation id="9101450247048146228">Χρήση και κίνηση κάμερας (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Δίσκος 1</translation>
 <translation id="9103872766612412690">Κανονικά, ο ιστότοπος <ph name="SITE" /> χρησιμοποιεί κρυπτογράφηση για να προστατεύει τα στοιχεία σας. Όταν το Chromium επιχείρησε πρόσφατα να συνδεθεί στο <ph name="SITE" />, ο ιστότοπος ανταποκρίθηκε δημιουργώντας ασυνήθιστα και εσφαλμένα διαπιστευτήρια. Αυτό μπορεί να συμβεί όταν κάποιος εισβολέας προσπαθεί να υποκριθεί ότι είναι ο ιστότοπος <ph name="SITE" /> ή όταν κάποια οθόνη σύνδεσης Wi-Fi έχει διακόψει τη σύνδεσή σας. Τα στοιχεία σας εξακολουθούν να είναι ασφαλή επειδή το Chromium διέκοψε τη σύνδεση πριν από την ανταλλαγή δεδομένων.</translation>
 <translation id="9107467864910557787">Η διαχείριση του προγράμματος περιήγησής σας γίνεται από τον τομέα <ph name="MANAGER" /></translation>
@@ -4229,6 +4235,8 @@
 <translation id="9139318394846604261">Αγορές</translation>
 <translation id="9141013498910525015">Διαχείριση διευθύνσεων</translation>
 <translation id="9144951720726881238">Ημερομηνία λήξης:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Συνδεθείτε<ph name="END_LINK" />
+    ξανά και έπειτα επιστρέψτε σε αυτή την καρτέλα για να λάβετε βοήθεια σχετικά με το γράψιμο</translation>
 <translation id="9148507642005240123">&amp;Αναίρεση επεξεργασίας</translation>
 <translation id="9148599396704355100">Η τιμή είναι χαμηλή</translation>
 <translation id="9150025764986957246">Μπορείτε να εισαγάγετε στοιχεία όπως:</translation>
diff --git a/components/strings/components_strings_en-GB.xtb b/components/strings/components_strings_en-GB.xtb
index 1d6a748..0ce290aa 100644
--- a/components/strings/components_strings_en-GB.xtb
+++ b/components/strings/components_strings_en-GB.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Book Retailers</translation>
 <translation id="2048261947532620704">Translating page</translation>
 <translation id="2053111141626950936">Pages in <ph name="LANGUAGE" /> will not be translated.</translation>
+<translation id="2055461225779831292">Use and move your cameras (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Lock your mouse pointer</translation>
 <translation id="2056658168519009885">Sites can ask Chrome for information to help personalise the ads that you see.</translation>
 <translation id="2059166748188874810">Municipality</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Not uploaded</translation>
 <translation id="2301098101308036335">Which websites are visited and when.</translation>
 <translation id="230286397113210245">Open Incognito window button, activate to open a new Incognito window to browse privately</translation>
+<translation id="2306124309679506798">Allow an immersive experience?</translation>
 <translation id="2312234273148520048">Condiments and Dressings</translation>
 <translation id="2316087952091171402">Less than <ph name="UPPER_ESTIMATE" />. Some sites may load more slowly on your next visit.</translation>
 <translation id="2316159751672436664">Personalise your accessibility tools in Chrome OS settings</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />; press tab and then Enter to customise the look of your browser</translation>
 <translation id="3240791268468473923">Secure payment credential no matching credential sheet is opened</translation>
 <translation id="324180406144491771">'<ph name="HOST_NAME" />' links are blocked</translation>
+<translation id="3248329428895535435">Don't show on this site</translation>
 <translation id="3252772880526154546">Architecture</translation>
 <translation id="3254301855501243548">18 in x 22 in</translation>
 <translation id="3255926992597692024">Chromium is trying to modify settings for filling payment methods.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">Paper (preprinted)</translation>
 <translation id="4082393374666368382">Settings – Management</translation>
 <translation id="4084219288110917128">Envelope C1</translation>
+<translation id="4085326869263783566">Help me write. Tab and press enter to open</translation>
 <translation id="4088981014127559358">Side 1 image Y shift</translation>
 <translation id="4089152113577680600">Tray 14</translation>
 <translation id="4092349052316400070">Fill address</translation>
@@ -3786,6 +3790,7 @@
 <translation id="8263001937536038617">Photo and Video Services</translation>
 <translation id="8265992338205884890">Visible data</translation>
 <translation id="8267698848189296333">Signing in as <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Separate documents/Collated copies</translation>
 <translation id="8269703227894255363">{0,plural, =1{File blocked from opening}other{<ph name="FILE_COUNT" /> files blocked from opening}}</translation>
 <translation id="8270173610195068258">Crime and justice</translation>
@@ -4205,6 +4210,7 @@
 <translation id="9094544726794842788">Thumbs down opens a form for submitting detailed feedback on why you dislike these results</translation>
 <translation id="9095388113577226029">More languages...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, press Tab and then Enter to set Chrome as the system's default browser in iOS settings</translation>
+<translation id="9101450247048146228">Camera use and movement (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Tray 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> normally uses encryption to protect your information. When Chromium tried to connect to <ph name="SITE" /> this time, the website sent back unusual and incorrect credentials. This may happen when an attacker is trying to pretend to be <ph name="SITE" />, or a Wi-Fi sign-in screen has interrupted the connection. Your information is still secure because Chromium stopped the connection before any data was exchanged.</translation>
 <translation id="9107467864910557787">Your browser is managed by <ph name="MANAGER" /></translation>
@@ -4227,6 +4233,8 @@
 <translation id="9139318394846604261">Shopping</translation>
 <translation id="9141013498910525015">Manage addresses</translation>
 <translation id="9144951720726881238">Expiry date:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Sign in<ph name="END_LINK" />
+    again, then come back to this tab to get writing help</translation>
 <translation id="9148507642005240123">&amp;Undo edit</translation>
 <translation id="9148599396704355100">Price is low</translation>
 <translation id="9150025764986957246">You can enter things like:</translation>
diff --git a/components/strings/components_strings_es-419.xtb b/components/strings/components_strings_es-419.xtb
index 66175de8..0c01ac9 100644
--- a/components/strings/components_strings_es-419.xtb
+++ b/components/strings/components_strings_es-419.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Se desactivó el seguimiento de precios</translation>
 <translation id="127777513559587977">Programas de conversación en televisión</translation>
 <translation id="1281476433249504884">Apilador 1</translation>
+<translation id="1281536351321444151">Para autocompletar este IBAN la próxima vez, guárdalo en tu Cuenta de Google</translation>
 <translation id="1282358575813748144">Embarcaciones</translation>
 <translation id="1283977499362032052">Currículos y antecedentes</translation>
 <translation id="1285320974508926690">Nunca traducir este sitio</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Bandeja 8</translation>
 <translation id="1530707389502320859">El sitio que intentaste visitar parece falso. A veces, los atacantes hacen cambios sutiles y difíciles de detectar en la URL para imitar sitios.</translation>
 <translation id="1532118530259321453">Esta página dice</translation>
+<translation id="1533966801397200693">El perfil al que accediste es un perfil administrado. El administrador puede realizar cambios en la configuración de tu perfil de forma remota, analizar información sobre el navegador a través de informes y realizar otras tareas necesarias. <ph name="BEGIN_LINK" />Más información<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Traducir la página</translation>
 <translation id="1537807545287921620">El PDF es inaccesible. Abre el menú contextual y activa "Extraer texto de PDF"</translation>
 <translation id="1539840569003678498">Fecha de envío del informe:</translation>
@@ -1186,6 +1188,7 @@
 <translation id="3272091146646336650">B súper</translation>
 <translation id="3272112314896217187">Ingresa el código de verificación de <ph name="NUMBER_OF_DIGITS" /> dígitos</translation>
 <translation id="3272643614306383237">Menos de 1 MB. Es posible que algunos sitios tarden más en cargar cuando vuelvas a visitarlos.</translation>
+<translation id="3273738040255912340">El administrador puede realizar cambios en tu perfil y navegador de forma remota, analizar información sobre el navegador a través de informes y realizar otras tareas necesarias. Es posible que la actividad correspondiente a este dispositivo también se administre fuera de Chromium. <ph name="BEGIN_LINK" />Más información<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{La política del administrador no recomienda abrir este archivo en <ph name="DESTINATION_NAME" />}other{La política del administrador no recomienda abrir estos archivos en <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Tu organización, <ph name="ENROLLMENT_DOMAIN" />, envió parte de la información, como la configuración o las políticas, a los siguientes sitios web.</translation>
 <translation id="3286372614333682499">vertical</translation>
@@ -3888,6 +3891,7 @@
 <translation id="8446884382197647889">Más información</translation>
 <translation id="8449155699563577224">43.2 × 61 cm (17 × 24 in)</translation>
 <translation id="8449836157089738489">Abrir todo en un grupo nuevo de pestañas</translation>
+<translation id="84561192812921051">El administrador puede realizar cambios en tu perfil y navegador de forma remota, analizar información sobre el navegador a través de informes y realizar otras tareas necesarias. Es posible que la actividad en este dispositivo también se administre fuera de Chrome.  <ph name="BEGIN_LINK" />Más información<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Indefinida</translation>
 <translation id="8458202188076138974">Carta extra</translation>
 <translation id="8460854335417802511">Activar</translation>
diff --git a/components/strings/components_strings_et.xtb b/components/strings/components_strings_et.xtb
index 3e8e731..d1fd081 100644
--- a/components/strings/components_strings_et.xtb
+++ b/components/strings/components_strings_et.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Raamatute jaemüüjad</translation>
 <translation id="2048261947532620704">Lehe tõlkimine</translation>
 <translation id="2053111141626950936">Selles keeles lehti ei tõlgita: <ph name="LANGUAGE" />.</translation>
+<translation id="2055461225779831292">Kaamerate kasutamine ja liigutamine (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Lukustage oma hiirekursor</translation>
 <translation id="2056658168519009885">Saidid võivad teile näidatavate reklaamide isikupärastamiseks Chrome'ilt teavet küsida.</translation>
 <translation id="2059166748188874810">Vald</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Üles laadimata</translation>
 <translation id="2301098101308036335">Milliseid veebisaite ja millal külastatakse.</translation>
 <translation id="230286397113210245">Nupp Ava inkognito aken, aktiveerige nupp, et avada uus inkognito aken ja sirvida privaatselt</translation>
+<translation id="2306124309679506798">Kas lubada kaasahaarav kasutuskogemus?</translation>
 <translation id="2312234273148520048">Maitseained ja kastmed</translation>
 <translation id="2316087952091171402">Vähem kui <ph name="UPPER_ESTIMATE" />. Mõned saidid võivad teie järgmise külastuse ajal aeglasemalt laadida.</translation>
 <translation id="2316159751672436664">Isikupärastage Chrome OS-i seadetes oma juurdepääsetavuse tööriistu</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, oma brauseri ilme kohandamiseks vajutage tabulaatorit ja siis sisestusklahvi</translation>
 <translation id="3240791268468473923">Turvalise maksemandaadi leht selle kohta, et pole ühtegi sobivat mandaati, on avatud</translation>
 <translation id="324180406144491771">Hosti „<ph name="HOST_NAME" />“ lingid on blokeeritud</translation>
+<translation id="3248329428895535435">Ära kuva sellel saidil</translation>
 <translation id="3252772880526154546">Arhitektuur</translation>
 <translation id="3254301855501243548">18 × 22 tolli</translation>
 <translation id="3255926992597692024">Chromium proovib muuta makseviiside sisestamise seadeid.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">Paber (eeltrükitud)</translation>
 <translation id="4082393374666368382">Seaded – haldus</translation>
 <translation id="4084219288110917128">Ümbrik C1</translation>
+<translation id="4085326869263783566">Aita mul kirjutada. Avamiseks vajutage tabulaatorit ja siis sisestusklahvi</translation>
 <translation id="4088981014127559358">Pildi nihe Y-teljel 1. poolel</translation>
 <translation id="4089152113577680600">Salv 14</translation>
 <translation id="4092349052316400070">Täitke aadressiväli</translation>
@@ -3786,6 +3790,7 @@
 <translation id="8263001937536038617">Foto- ja videoteenused</translation>
 <translation id="8265992338205884890">Nähtavad andmed</translation>
 <translation id="8267698848189296333">Sisselogimine kasutajana <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Eraldi dokumendid / järjestatud koopiad</translation>
 <translation id="8269703227894255363">{0,plural, =1{Faili avamine on blokeeritud}other{<ph name="FILE_COUNT" /> faili avamine on blokeeritud}}</translation>
 <translation id="8270173610195068258">Kuritegevus ja õigusemõistmine</translation>
@@ -4205,6 +4210,7 @@
 <translation id="9094544726794842788">Mittemeeldivaks märkimine avab vormi üksikasjaliku tagasiside saatmiseks selle kohta, miks teile need tulemused ei meeldi</translation>
 <translation id="9095388113577226029">Rohkem keeli …</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />. Vajutage tabulaatorit, seejärel sisestusklahvi, et määrata Chrome iOS-i seadetes süsteemi vaikebrauseriks</translation>
+<translation id="9101450247048146228">Kaamera kasutamine ja liigutamine (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Salv 1</translation>
 <translation id="9103872766612412690">Sait <ph name="SITE" /> kasutab teie teabe kaitsmiseks tavaliselt krüpteerimist. Kui Chromium püüdis seekord saidiga <ph name="SITE" /> ühendust luua, tagastas veebisait ebatavalised ja valed mandaadid. See võib juhtuda siis, kui ründaja proovib teeselda, et on sait <ph name="SITE" />, või WiFi sisselogimisekraan on ühenduse katkestanud. Teie teave on endiselt kaitstud, sest Chromium peatas ühenduse enne andmevahetust.</translation>
 <translation id="9107467864910557787">Teie brauserit haldab <ph name="MANAGER" /></translation>
@@ -4227,6 +4233,8 @@
 <translation id="9139318394846604261">Ostlemine</translation>
 <translation id="9141013498910525015">Aadresside haldamine</translation>
 <translation id="9144951720726881238">Aegumiskuupäev:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Logige<ph name="END_LINK" />
+    uuesti sisse ja naaske sellele vahelehele, et kirjutamisabi saada</translation>
 <translation id="9148507642005240123">&amp;Võta muudatus tagasi</translation>
 <translation id="9148599396704355100">Hind on soodne</translation>
 <translation id="9150025764986957246">Saate sisestada näiteks järgmist:</translation>
diff --git a/components/strings/components_strings_eu.xtb b/components/strings/components_strings_eu.xtb
index 3b4d85b..a49c6fe 100644
--- a/components/strings/components_strings_eu.xtb
+++ b/components/strings/components_strings_eu.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Prezioaren jarraipena desaktibatuta dago</translation>
 <translation id="127777513559587977">Telebistako elkarrizketa-saioak</translation>
 <translation id="1281476433249504884">1. pilatzailea</translation>
+<translation id="1281536351321444151">Hurrengoan IBAN hau automatikoki betetzeko, gorde ezazu Google-ko kontuan</translation>
 <translation id="1282358575813748144">Itsasontziak eta ontziak</translation>
 <translation id="1283977499362032052">Curriculumak eta lan-sortak</translation>
 <translation id="1285320974508926690">Ez itzuli inoiz webgune hau</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">8. erretilua</translation>
 <translation id="1530707389502320859">Bisitatzen saiatu zaren webguneak faltsua dirudi. Batzuetan, erasotzaileek webgune ofizialen plantak egiten dituzte URLari aldaketa oso txikiak eginda.</translation>
 <translation id="1532118530259321453">Orriak hau dio:</translation>
+<translation id="1533966801397200693">Saioa hasteko erabili duzun profila kudeatua da. Administratzaileak profilaren ezarpenak urrunetik alda ditzake, baita txostenen bidez arakatzaileari buruzko informazioa aztertu eta beharrezko beste zeregin batzuk gauzatu ere. <ph name="BEGIN_LINK" />Lortu informazio gehiago<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Itzuli orria</translation>
 <translation id="1537807545287921620">PDFa ez da erabilerraza. Ireki laster-menua eta aktibatu "Atera testua PDFtik".</translation>
 <translation id="1539840569003678498">Txostenaren bidaltze-data:</translation>
@@ -1182,6 +1184,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Idatzi <ph name="NUMBER_OF_DIGITS" /> digituko egiaztapen-kodea</translation>
 <translation id="3272643614306383237">1 MB baino gutxiago. Webgune batzuk agian mantsoago kargatuko dira bisitatzen dituzun hurrengoan.</translation>
+<translation id="3273738040255912340">Administratzaileak profilean eta arakatzailean aldaketak egin ditzake, baita txostenen bidez arakatzaileari buruzko informazioa aztertu eta beharrezko beste zeregin batzuk gauzatu ere. Baliteke gailu honetako jarduerak Chromium-etik kanpo ere kudeatzea. <ph name="BEGIN_LINK" />Lortu informazio gehiago<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Administratzailearen gidalerroek ez dute gomendatzen fitxategia hemen irekitzea: <ph name="DESTINATION_NAME" />}other{Administratzailearen gidalerroek ez dute gomendatzen fitxategiak hemen irekitzea: <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Zure erakundeak (<ph name="ENROLLMENT_DOMAIN" />) ezarpenei eta gidalerroei buruzko informazioa bidali du, besteak beste, jarraian ageri diren webguneetara.</translation>
 <translation id="3286372614333682499">bertikala</translation>
@@ -3881,6 +3884,7 @@
 <translation id="8446884382197647889">Lortu informazio gehiago</translation>
 <translation id="8449155699563577224">43,18 × 60,96 cm (17 × 24 in)</translation>
 <translation id="8449836157089738489">Ireki guztiak beste fitxa talde batean</translation>
+<translation id="84561192812921051">Administratzaileak profilean eta arakatzailean aldaketak egin ditzake, baita txostenen bidez arakatzaileari buruzko informazioa aztertu eta beharrezko beste zeregin batzuk gauzatu ere. Baliteke gailu honetako jarduerak Chrome-tik kanpo ere kudeatzea.  <ph name="BEGIN_LINK" />Lortu informazio gehiago<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Zehaztugabea</translation>
 <translation id="8458202188076138974">Eskutitza (are handiagoa)</translation>
 <translation id="8460854335417802511">Aktibatu</translation>
diff --git a/components/strings/components_strings_fa.xtb b/components/strings/components_strings_fa.xtb
index 5fe3bb2..e5b0906 100644
--- a/components/strings/components_strings_fa.xtb
+++ b/components/strings/components_strings_fa.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">خرده‌فروشی کتاب</translation>
 <translation id="2048261947532620704">درحال ترجمه صفحه</translation>
 <translation id="2053111141626950936">صفحه‌های <ph name="LANGUAGE" /> ترجمه نخواهند شد.</translation>
+<translation id="2055461225779831292">استفاده و حرکت دادن دوبین‌ها (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">قفل کردن اشاره‌گر موشواره</translation>
 <translation id="2056658168519009885">‏سایت‌ها می‌توانند برای کمک به شخصی‌سازی آگهی‌هایی که می‌بینید اطلاعاتی از Chrome درخواست کنند.</translation>
 <translation id="2059166748188874810">شهرداری</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">بارگذاری نشد</translation>
 <translation id="2301098101308036335">سایت‌هایی که از آن‌ها بازدید شده است و زمان بازدید.</translation>
 <translation id="230286397113210245">دکمه «باز کردن پنجره ناشناس»؛ برای باز کردن «پنجره ناشناس» جدید و مرور کردن به‌صورت خصوصی، آن را فعال کنید</translation>
+<translation id="2306124309679506798">تجربه فراگیر مجاز شود؟</translation>
 <translation id="2312234273148520048">ادویه و سس</translation>
 <translation id="2316087952091171402">کمتر از <ph name="UPPER_ESTIMATE" />. ممکن است برخی سایت‌ها در بازدید بعدی‌تان کندتر بار شوند.</translation>
 <translation id="2316159751672436664">‏شخصی کردن ابزارهای دسترس‌پذیری در تنظیمات ChromeOS</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />؛ برای سفارشی کردن ظاهر مرورگر، کلید «جهش» و سپس «ورود» را فشار دهید</translation>
 <translation id="3240791268468473923">برگ «اطلاعات کاربری مطابقت ندارد» در روند وارد کردن اطلاعات کاربری پرداخت امن باز شد</translation>
 <translation id="324180406144491771">پیوندهای «<ph name="HOST_NAME" />» مسدود شده است</translation>
+<translation id="3248329428895535435">در این سایت نمایش داده نشود</translation>
 <translation id="3252772880526154546">معماری</translation>
 <translation id="3254301855501243548">۲۲ × ۱۸ اینچ</translation>
 <translation id="3255926992597692024">‏Chromebook می‌خواهد تنظیمات تکمیل روش‌های پرداخت را اصلاح کند.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">کاغذ (ازپیش چاپ‌شده)</translation>
 <translation id="4082393374666368382">تنظیمات - مدیریت</translation>
 <translation id="4084219288110917128">پاکت سی۱</translation>
+<translation id="4085326869263783566">‏کمک گرفتن در نوشتن. برای باز کردن، کلید جهش و Enter را فشار دهید</translation>
 <translation id="4088981014127559358">‏روی ۱، تغییر جهت تصویر حول محور Y</translation>
 <translation id="4089152113577680600">سینی ۱۴</translation>
 <translation id="4092349052316400070">نشانی را تکمیل کنید</translation>
@@ -3786,6 +3790,7 @@
 <translation id="8263001937536038617">خدمات عکس و ویدیو</translation>
 <translation id="8265992338205884890">داده‌های قابل‌مشاهده</translation>
 <translation id="8267698848189296333">ورود به سیستم به‌عنوان <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">اسناد جداگانه/کپی‌های تلفیقی</translation>
 <translation id="8269703227894255363">{0,plural, =1{باز کردن فایل مسدود شده است}one{باز کردن <ph name="FILE_COUNT" /> فایل مسدود شده است}other{باز کردن <ph name="FILE_COUNT" /> فایل مسدود شده است}}</translation>
 <translation id="8270173610195068258">جنایت و عدالت</translation>
@@ -4205,6 +4210,7 @@
 <translation id="9094544726794842788">«رأی مخالف» فرمی را برای ارسال بازخورد دقیق درباره علت نپسندیدن این نتایج باز می‌کند</translation>
 <translation id="9095388113577226029">زبان‌های بیشتر...</translation>
 <translation id="9096425087209440047">‏<ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />، برای تنظیم Chrome به‌عنوان مرورگر پیش‌فرض سیستم در تنظیمات iOS، کلید جهش و سپس ورود را فشار دهید</translation>
+<translation id="9101450247048146228">استفاده و حرکت دادن دوربین (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">سینی ۱</translation>
 <translation id="9103872766612412690">‏<ph name="SITE" /> معمولاً برای محافظت از اطلاعات شما از رمزگذاری استفاده می‌کند. اما این بار که Chromium تلاش کرد به <ph name="SITE" /> متصل شود، وب‌سایت اعتبارنامه‌ای نامعمول و نادرست را برگرداند. ممکن است مهاجمی در تلاش باشد خود را به‌جای <ph name="SITE" /> معرفی کند یا یک صفحه ورود به سیستم Wi-Fi در ارتباط اختلال ایجاد کرده باشد. اطلاعات شما همچنان ایمن است، زیرا Chromium قبل از هرگونه تبادل داده، اتصال را متوقف کرد.</translation>
 <translation id="9107467864910557787">مرورگرتان توسط <ph name="MANAGER" /> مدیریت می‌شود</translation>
@@ -4227,6 +4233,8 @@
 <translation id="9139318394846604261">خرید</translation>
 <translation id="9141013498910525015">مدیریت نشانی‌ها</translation>
 <translation id="9144951720726881238">تاریخ انقضا:</translation>
+<translation id="9145910032514306808">دوباره <ph name="BEGIN_LINK" />به سیستم وارد شوید<ph name="END_LINK" />
+     سپس برای دریافت کمک در نوشتن دوباره به این برگه برگردید</translation>
 <translation id="9148507642005240123">&amp;واگرد ویرایش</translation>
 <translation id="9148599396704355100">قیمت پایین است</translation>
 <translation id="9150025764986957246">می‌توانید مواردی ازاین‌قبیل وارد کنید:</translation>
diff --git a/components/strings/components_strings_fi.xtb b/components/strings/components_strings_fi.xtb
index be00dba8..58a9d663 100644
--- a/components/strings/components_strings_fi.xtb
+++ b/components/strings/components_strings_fi.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Hintaseuranta pois päältä</translation>
 <translation id="127777513559587977">Television keskusteluohjelmat</translation>
 <translation id="1281476433249504884">Pinoaja 1</translation>
+<translation id="1281536351321444151">Jos haluat täyttää IBAN-numeron automaattisesti seuraavalla kerralla, tallenna se Google-tilillesi</translation>
 <translation id="1282358575813748144">Veneet ja muut vesikulkuneuvot</translation>
 <translation id="1283977499362032052">Ansioluettelot ja portfoliot</translation>
 <translation id="1285320974508926690">Älä käännä tätä sivustoa</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Lokero 8</translation>
 <translation id="1530707389502320859">Sivusto, jolle yritit juuri siirtyä, ei vaikuta aidolta. Hyökkääjät jäljittelevät joskus sivustoja tekemällä URL-osoitteeseen pieniä muutoksia, joita on vaikea havaita.</translation>
 <translation id="1532118530259321453">Viesti tältä sivulta</translation>
+<translation id="1533966801397200693">Profiili, johon olet kirjautunut, on hallinnoitu profiili. Järjestelmänvalvoja voi tehdä muutoksia profiilin asetuksiin etänä, analysoida selaimen tietoja raporttien avulla ja tehdä muita tarvittavia tehtäviä. <ph name="BEGIN_LINK" />Lue lisää<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Käännä sivu</translation>
 <translation id="1537807545287921620">PDF-tiedosto ei ole käytettävissä. Avaa kontekstivalikko ja laita päälle "Poimi tekstiä PDF-tiedostosta".</translation>
 <translation id="1539840569003678498">Ilmoitus lähetetty:</translation>
@@ -568,6 +570,7 @@
 <translation id="2046951263634619614">Kirjakauppiaat</translation>
 <translation id="2048261947532620704">Sivua käännetään</translation>
 <translation id="2053111141626950936">Kielellä <ph name="LANGUAGE" /> kirjoitettuja sivuja ei käännetä.</translation>
+<translation id="2055461225779831292">Käyttää ja siirtää kameroitasi (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Lukitse hiiren osoitin</translation>
 <translation id="2056658168519009885">Sivustot voivat pyytää Chromelta tietoa personoidakseen näkemiäsi mainoksia.</translation>
 <translation id="2059166748188874810">Paikkakunta</translation>
@@ -715,6 +718,7 @@
 <translation id="2300306941146563769">Ei lähetetty</translation>
 <translation id="2301098101308036335">Millä verkkosivustoilla käydään ja milloin.</translation>
 <translation id="230286397113210245">Avaa incognito-ikkuna ‑painike, aktivoi avataksesi uusi incognito-ikkuna, niin voit selata yksityisesti</translation>
+<translation id="2306124309679506798">Sallitaanko immersiivinen kokemus?</translation>
 <translation id="2312234273148520048">Kastikkeet ja höysteet</translation>
 <translation id="2316087952091171402">Alle <ph name="UPPER_ESTIMATE" />. Jotkin sivustot saattavat latautua hitaammin seuraavalla käynnillä.</translation>
 <translation id="2316159751672436664">Personoi saavutettavuustyökaluja Chrome-käyttöjärjestelmän asetuksista</translation>
@@ -1171,6 +1175,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, muokkaa selaimen ulkoasua painamalla sarkainta ja sitten Enter</translation>
 <translation id="3240791268468473923">Suojatun maksun kirjautumistiedot eivät täsmää ‑kirjautumistietotaulukko on avattu</translation>
 <translation id="324180406144491771"><ph name="HOST_NAME" />‑linkit on estetty</translation>
+<translation id="3248329428895535435">Älä näytä tällä sivustolla</translation>
 <translation id="3252772880526154546">Arkkitehtuuri</translation>
 <translation id="3254301855501243548">18 x 22 tuumaa</translation>
 <translation id="3255926992597692024">Chromium yrittää muuttaa maksutapojen täyttämisen asetuksia.</translation>
@@ -1186,6 +1191,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Lisää <ph name="NUMBER_OF_DIGITS" />-numeroinen vahvistuskoodi</translation>
 <translation id="3272643614306383237">Alle 1 Mt. Jotkin sivustot saattavat latautua hitaammin seuraavalla käynnillä.</translation>
+<translation id="3273738040255912340">Järjestelmänvalvoja voi tehdä muutoksia profiiliin ja selaimeen etänä, analysoida selaimen tietoja raporttien avulla ja tehdä muita tarvittavia tehtäviä. Toimintaa tällä laitteella saatetaan ylläpitää myös Chromiumin ulkopuolelta. <ph name="BEGIN_LINK" />Lue lisää<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Järjestelmänvalvojakäytännössä ei suositella tiedoston avaamista täällä: <ph name="DESTINATION_NAME" />}other{Järjestelmänvalvojakäytännössä ei suositella tiedostojen avaamista täällä: <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Organisaatiosi (<ph name="ENROLLMENT_DOMAIN" />) on lähettänyt seuraaville verkkosivustoille joitakin tietoja, kuten asetuksia tai käytäntöjä.</translation>
 <translation id="3286372614333682499">pystysuunta</translation>
@@ -1604,6 +1610,7 @@
 <translation id="4082333119419111506">Paperi (esipainettu)</translation>
 <translation id="4082393374666368382">Asetukset – Ylläpito</translation>
 <translation id="4084219288110917128">Kirjekuori C1</translation>
+<translation id="4085326869263783566">Auta minua kirjoittamaan. Avaa painamalla sarkainta ja Enter-näppäintä.</translation>
 <translation id="4088981014127559358">1. puolen kuvan Y vaihto</translation>
 <translation id="4089152113577680600">Lokero 14</translation>
 <translation id="4092349052316400070">Täytä osoite</translation>
@@ -3784,6 +3791,7 @@
 <translation id="8263001937536038617">Valokuvaus- ja videokuvauspalvelut</translation>
 <translation id="8265992338205884890">Näkyvä data</translation>
 <translation id="8267698848189296333">Kirjaudutaan käyttäjänä <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Erilliset dokumentit / Kootut kopiot</translation>
 <translation id="8269703227894255363">{0,plural, =1{Tiedoston avaaminen estetty}other{<ph name="FILE_COUNT" /> tiedoston avaaminen estetty}}</translation>
 <translation id="8270173610195068258">Rikollisuus ja oikeusjärjestelmä</translation>
@@ -3888,6 +3896,7 @@
 <translation id="8446884382197647889">Lisätietoja</translation>
 <translation id="8449155699563577224">17 x 24 tuumaa</translation>
 <translation id="8449836157089738489">Avaa kaikki uudella välilehtiryhmällä</translation>
+<translation id="84561192812921051">Järjestelmänvalvoja voi tehdä muutoksia profiiliin ja selaimeen etänä, analysoida selaimen tietoja raporttien avulla ja tehdä muita tarvittavia tehtäviä. Toimintaa tällä laitteella saatetaan ylläpitää myös Chromen ulkopuolelta.  <ph name="BEGIN_LINK" />Lue lisää<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Määrittämätön</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Laita päälle</translation>
@@ -4203,6 +4212,7 @@
 <translation id="9094544726794842788">En tykkää ‑painike avaa lomakkeen, jolla voit antaa yksityiskohtaista palautetta siitä, miksi et pidä näistä tuloksista</translation>
 <translation id="9095388113577226029">Lisää kieliä…</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, paina ensin sarkainta ja sitten Enter, niin voit valita Chromen järjestelmän oletusselaimeksi iOS-asetuksista</translation>
+<translation id="9101450247048146228">Kameran käyttö ja liike (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Lokero 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> suojaa tietosi normaalisti salauksen avulla. Kun Chromium yritti tällä kertaa yhdistää sivustoon <ph name="SITE" />, sivusto palautti epätavalliset ja virheelliset kirjautumistiedot. Hyökkääjä saattaa yrittää esiintyä sivustona <ph name="SITE" />, tai Wi-Fi-kirjautumisruutu on keskeyttänyt yhteyden. Tietosi ovat edelleen turvassa, sillä Chromium katkaisi yhteyden, ennen kuin mitään tietoja vaihdettiin.</translation>
 <translation id="9107467864910557787"><ph name="MANAGER" /> ylläpitää selaintasi</translation>
@@ -4225,6 +4235,8 @@
 <translation id="9139318394846604261">Ostokset</translation>
 <translation id="9141013498910525015">Ylläpidä osoitteita</translation>
 <translation id="9144951720726881238">Vanhenemispäivämäärä:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Kirjaudu uudelleen sisään<ph name="END_LINK" />
+    ja palaa sitten tälle välilehdelle, niin saat apua kirjoittamiseen</translation>
 <translation id="9148507642005240123">K&amp;umoa muokkaus</translation>
 <translation id="9148599396704355100">Hinta on alhainen</translation>
 <translation id="9150025764986957246">Esimerkkejä asioista, joita voit kirjoittaa:</translation>
diff --git a/components/strings/components_strings_fr.xtb b/components/strings/components_strings_fr.xtb
index 2fbae697..4b6a434 100644
--- a/components/strings/components_strings_fr.xtb
+++ b/components/strings/components_strings_fr.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Suivi des prix désactivé</translation>
 <translation id="127777513559587977">Talk-shows</translation>
 <translation id="1281476433249504884">Empileur 1</translation>
+<translation id="1281536351321444151">Pour que cet IBAN soit indiqué automatiquement la prochaine fois, enregistrez-le dans votre compte Google</translation>
 <translation id="1282358575813748144">Bateaux et embarcations</translation>
 <translation id="1283977499362032052">CV et books</translation>
 <translation id="1285320974508926690">Ne jamais traduire ce site</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Bac 8</translation>
 <translation id="1530707389502320859">Le site auquel vous tentez d'accéder semble faux. Les pirates tentent parfois d'imiter des sites Web en modifiant légèrement l'URL utilisée.</translation>
 <translation id="1532118530259321453">Cette page indique</translation>
+<translation id="1533966801397200693">Le profil auquel vous êtes connecté est un profil géré. Votre administrateur peut modifier à distance les paramètres de votre profil, analyser les rapports d'informations sur le navigateur et effectuer d'autres tâches nécessaires. <ph name="BEGIN_LINK" />En savoir plus<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Traduire la page</translation>
 <translation id="1537807545287921620">Impossible d'accéder à ce PDF. Ouvrez le menu contextuel et activez "Extraire le texte du PDF".</translation>
 <translation id="1539840569003678498">Rapport envoyé :</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Saisissez le code de validation à <ph name="NUMBER_OF_DIGITS" /> chiffres</translation>
 <translation id="3272643614306383237">Moins de 1 Mo. Le chargement de certains sites risque d'être plus lent lors de votre prochaine visite.</translation>
+<translation id="3273738040255912340">Votre administrateur peut modifier à distance votre profil et votre navigateur, analyser les rapports d'informations sur le navigateur et effectuer d'autres tâches nécessaires. Il est aussi possible que l'activité sur cet appareil soit gérée en dehors de Chromium. <ph name="BEGIN_LINK" />En savoir plus<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Une règle de l'administrateur déconseille d'ouvrir ce fichier dans <ph name="DESTINATION_NAME" />}one{Une règle de l'administrateur déconseille d'ouvrir ce fichier dans <ph name="DESTINATION_NAME" />}other{Une règle de l'administrateur déconseille d'ouvrir ces fichiers dans <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Votre organisation, <ph name="ENROLLMENT_DOMAIN" />, a envoyé des infos, comme des paramètres ou des règles, aux sites Web suivants.</translation>
 <translation id="3286372614333682499">portrait</translation>
@@ -3162,7 +3165,7 @@
 <translation id="7119063404975271297">Drames (films TV)</translation>
 <translation id="7119371694555167493">Délai de copie dépassé</translation>
 <translation id="7119414471315195487">Fermez les autres onglets ou programmes</translation>
-<translation id="7124354851782353862">Saisir votre code CVC</translation>
+<translation id="7124354851782353862">Saisissez votre code CVC</translation>
 <translation id="7129409597930077180">Impossible d'expédier à cette adresse. Sélectionnez-en une autre.</translation>
 <translation id="7129809579943936035"><ph name="VALUE_PROP" /> <ph name="DETAILS" /></translation>
 <translation id="7130775116821607281">Importation bloquée</translation>
@@ -3888,6 +3891,7 @@
 <translation id="8446884382197647889">En savoir plus</translation>
 <translation id="8449155699563577224">17 x 24 pouces</translation>
 <translation id="8449836157089738489">Tout ouvrir dans un nouveau groupe d'onglets</translation>
+<translation id="84561192812921051">Votre administrateur peut modifier à distance votre profil et votre navigateur, analyser les rapports d'informations sur le navigateur et effectuer d'autres tâches nécessaires. Il est aussi possible que l'activité sur cet appareil soit gérée en dehors de Chrome.  <ph name="BEGIN_LINK" />En savoir plus<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Indéfiniment</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Activer l'option</translation>
diff --git a/components/strings/components_strings_gl.xtb b/components/strings/components_strings_gl.xtb
index 34e5a58..32b79b94 100644
--- a/components/strings/components_strings_gl.xtb
+++ b/components/strings/components_strings_gl.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Librarías</translation>
 <translation id="2048261947532620704">Traducindo páxina</translation>
 <translation id="2053111141626950936">Non se traducirán as páxinas en <ph name="LANGUAGE" />.</translation>
+<translation id="2055461225779831292">Utilizar e mover as túas cámaras (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Bloquear o punteiro do rato</translation>
 <translation id="2056658168519009885">Os sitios poden solicitarlle información a Chrome para axudar a personalizar os anuncios que se che mostren.</translation>
 <translation id="2059166748188874810">Concello</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Non se cargou</translation>
 <translation id="2301098101308036335">Que sitios web se visitan e cando.</translation>
 <translation id="230286397113210245">Botón para abrir unha ventá do modo de incógnito. Actívao para abrir unha nova ventá do modo de incógnito e navegar de forma privada</translation>
+<translation id="2306124309679506798">Queres permitir unha experiencia envolvente?</translation>
 <translation id="2312234273148520048">Condimentos e aderezos</translation>
 <translation id="2316087952091171402">Menos de <ph name="UPPER_ESTIMATE" />. Algúns sitios pode que carguen máis lentamente a próxima vez que os visites.</translation>
 <translation id="2316159751672436664">Personalizar as túas ferramentas de accesibilidade na configuración de Chrome OS</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />. Para personalizar o aspecto do navegador, preme Tabulador e, a continuación, Introducir</translation>
 <translation id="3240791268468473923">A folla da credencial de pagos seguros correspondente ás credenciais non coincidentes está aberta</translation>
 <translation id="324180406144491771">As ligazóns de “<ph name="HOST_NAME" />” están bloqueadas</translation>
+<translation id="3248329428895535435">Non mostrar neste sitio</translation>
 <translation id="3252772880526154546">Arquitectura</translation>
 <translation id="3254301855501243548">18 x 22 polgadas</translation>
 <translation id="3255926992597692024">Chromium está tentando modificar a configuración para completar os métodos de pago.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">Papel (impreso previamente)</translation>
 <translation id="4082393374666368382">Configuración - Xestión</translation>
 <translation id="4084219288110917128">Sobre C1</translation>
+<translation id="4085326869263783566">Axúdame a escribir. Preme Tabulador e Introducir para abrir a función</translation>
 <translation id="4088981014127559358">Desprazamento do lado 1 da imaxe no eixe Y</translation>
 <translation id="4089152113577680600">Bandexa 14</translation>
 <translation id="4092349052316400070">Introduce o enderezo</translation>
@@ -2306,6 +2310,7 @@
 <translation id="5447765697759493033">Non se traducirá este sitio</translation>
 <translation id="5452270690849572955">Non se pode atopar esta páxina de <ph name="HOST_NAME" /></translation>
 <translation id="5455374756549232013">Marca de tempo da política incorrecta</translation>
+<translation id="5456428544444655325">Non mostrar nunca</translation>
 <translation id="5456839782162429664">Facer unha verificación manual sempre que pagues mediante a función de autocompletar</translation>
 <translation id="5457113250005438886">Non válidos</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> e <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> máis}other{<ph name="CONTACT_PREVIEW" /> e <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> máis}}</translation>
@@ -3785,6 +3790,7 @@
 <translation id="8263001937536038617">Servizos de foto e vídeo</translation>
 <translation id="8265992338205884890">Datos visibles</translation>
 <translation id="8267698848189296333">Iniciando sesión como <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Documentos independentes/copias intercaladas</translation>
 <translation id="8269703227894255363">{0,plural, =1{Bloqueouse a apertura do ficheiro}other{Bloqueouse a apertura de <ph name="FILE_COUNT" /> ficheiros}}</translation>
 <translation id="8270173610195068258">Xustiza e crime</translation>
@@ -4204,6 +4210,7 @@
 <translation id="9094544726794842788">Ao premer Non me gusta, abrirase un formulario para enviar comentarios detallados sobre o motivo polo que non che gustan estes resultados</translation>
 <translation id="9095388113577226029">Máis idiomas…</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />. Para establecer Chrome como navegador predeterminado do sistema na configuración de iOS, preme Tabulador e, a continuación, Introducir</translation>
+<translation id="9101450247048146228">Uso e movemento das cámaras (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Bandexa 1</translation>
 <translation id="9103872766612412690">Normalmente, <ph name="SITE" /> encripta a túa información para protexela. Nesta ocasión, cando Chromium tentou conectar con <ph name="SITE" />, o sitio web devolveu credenciais estrañas e incorrectas. É posible que un atacante tentase facerse pasar por <ph name="SITE" /> ou que a pantalla de inicio de sesión de wifi interrompese a conexión. Non obstante, a túa información segue a salvo porque Chromium detivo a conexión antes de intercambiar datos.</translation>
 <translation id="9107467864910557787"><ph name="MANAGER" /> xestiona o teu navegador</translation>
@@ -4226,6 +4233,8 @@
 <translation id="9139318394846604261">Compras</translation>
 <translation id="9141013498910525015">Xestionar enderezos</translation>
 <translation id="9144951720726881238">Data de vencemento:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Inicia sesión<ph name="END_LINK" /> 
+    de novo e despois volve a esta pestana se queres obter axuda para escribir</translation>
 <translation id="9148507642005240123">&amp;Desfacer modificación</translation>
 <translation id="9148599396704355100">Prezo baixo</translation>
 <translation id="9150025764986957246">Poderás poñer cousas como:</translation>
diff --git a/components/strings/components_strings_gu.xtb b/components/strings/components_strings_gu.xtb
index ddf40261..d1fd98ec 100644
--- a/components/strings/components_strings_gu.xtb
+++ b/components/strings/components_strings_gu.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">પુસ્તકના છૂટક વેપારીઓ</translation>
 <translation id="2048261947532620704">પેજનો અનુવાદ કરવામાં આવી રહ્યો છે</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" />માં લખાયેલાં પેજનો અનુવાદ થશે નહીં.</translation>
+<translation id="2055461225779831292">તમારા કૅમેરાનો ઉપયોગ કરો અને તેને ખસેડો (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">તમારું માઉસ પૉઇન્ટર લૉક કરો</translation>
 <translation id="2056658168519009885">તમને જોવા મળતી જાહેરાતોને મનગમતી બનાવવામાં સહાય માટે સાઈટ, Chrome પાસે માહિતી માગી શકે છે.</translation>
 <translation id="2059166748188874810">નગરપાલિકા</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">અપલોડ કર્યો નથી</translation>
 <translation id="2301098101308036335">કઈ વેબસાઇટની મુલાકાત લેવામાં આવી અને ક્યારે.</translation>
 <translation id="230286397113210245">'છૂપી વિન્ડો ખોલો' બટન, ખાનગી રીતે બ્રાઉઝ કરવા નવી છૂપી વિન્ડો ખોલવા માટે સક્રિય કરો</translation>
+<translation id="2306124309679506798">કોઈ ઇમર્સિવ અનુભવ માટે શું મંજૂરી આપીએ?</translation>
 <translation id="2312234273148520048">વ્યંજનો અને રાયતું</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" /> કરતાં ઓછું. તમારી આગલી મુલાકાત વખતે કેટલીક સાઇટ વધુ ધીમે લોડ થાય એમ બની શકે છે.</translation>
 <translation id="2316159751672436664">ChromeOS સેટિંગમાં જઈને તમારા ઍક્સેસિબિલિટીના ટૂલને મનગમતા બનાવો</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, તમારા બ્રાઉઝરનો દેખાવ કસ્ટમાઇઝ કરવા માટે, પહેલાં Tab અને પછી Enter કી દબાવો</translation>
 <translation id="3240791268468473923">ચુકવણીની સુરક્ષિત લૉગ ઇન વિગત, મેળ ખાતી લૉગ ઇન વિગતની કોઈપણ શીટ ખોલવામાં આવી નથી</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />”ની લિંક બ્લૉક કરેલી છે</translation>
+<translation id="3248329428895535435">આ સાઇટ પર બતાવશો નહીં</translation>
 <translation id="3252772880526154546">સ્થાપત્ય</translation>
 <translation id="3254301855501243548">18 x 22 ઇંચ</translation>
 <translation id="3255926992597692024">ચુકવણી પદ્ધતિઓ ભરવા માટે, Chromium સેટિંગમાં ફેરફાર કરવાનો પ્રયાસ કરી રહ્યું છે.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">પેપર (પહેલેથી પ્રિન્ટ કરેલું)</translation>
 <translation id="4082393374666368382">સેટિંગ - મેનેજમેન્ટ</translation>
 <translation id="4084219288110917128">એન્વલપ C1</translation>
+<translation id="4085326869263783566">લખવામાં મારી સહાય કરો. ખોલવા માટે ટૅપ કરો અને Enter કી દબાવો</translation>
 <translation id="4088981014127559358">બાજુ 1 છબીને Y અક્ષ પર ખસેડો</translation>
 <translation id="4089152113577680600">ટ્રે 14</translation>
 <translation id="4092349052316400070">સરનામું ભરો</translation>
@@ -3786,6 +3790,7 @@
 <translation id="8263001937536038617">ફોટો અને વીડિયો સેવાઓ</translation>
 <translation id="8265992338205884890">જોઈ શકાતો ડેટા</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" /> તરીકે સાઇન ઇન કરી રહ્યાં છે</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">અલગ દસ્તાવેજો/ગોઠવેલી કૉપિ</translation>
 <translation id="8269703227894255363">{0,plural, =1{ફાઇલને ખોલવાથી બ્લૉક કરી છે}one{<ph name="FILE_COUNT" /> ફાઇલ ખોલવાથી બ્લૉક કરી છે}other{<ph name="FILE_COUNT" /> ફાઇલ ખોલવાથી બ્લૉક કરી છે}}</translation>
 <translation id="8270173610195068258">ગુનો અને ન્યાય</translation>
@@ -4205,6 +4210,7 @@
 <translation id="9094544726794842788">થમ્બ્સ ડાઉન, આ પરિણામો તમને શા માટે નાપસંદ છે તેના વિશે વિગતવાર પ્રતિસાદ સબમિટ કરવા માટેનું ફોર્મ ખોલે છે</translation>
 <translation id="9095388113577226029">વધુ ભાષાઓ...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, iOS સેટિંગમાં Chromeને સિસ્ટમના ડિફૉલ્ટ બ્રાઉઝર તરીકે સેટ કરવા માટે, પહેલાં tab અને પછી Enter કી દબાવો</translation>
+<translation id="9101450247048146228">કૅમેરાનો ઉપયોગ અને હિલચાલ (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">ટ્રે 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> સામાન્ય રીતે તમારી માહિતીને સુરક્ષિત રાખવા માટે એન્ક્રિપ્શનનો ઉપયોગ કરે છે. જ્યારે આ સમયે Chromium દ્વારા <ph name="SITE" />થી કનેક્ટ કરવાનો પ્રયાસ થયો, ત્યારે વેબસાઇટે અસામાન્ય અને ખોટા લૉગ ઇન વિગતને પાછા મોકલ્યાં. આવું ત્યારે થઈ શકે જ્યારે કોઈ હુમલાખોર <ph name="SITE" /> હોવાનો ડોળ કરવાનો પ્રયાસ કરી રહ્યો હોવ અથવા કોઈ Wi-Fi સાઇન-ઇન સ્ક્રીને કનેક્શનમાં વિક્ષેપ પાડ્યો હોય. તમારી માહિતી હજી પણ સુરક્ષિત છે કારણ કે Chromium એ કોઈ પણ ડેટા વિનિમય થાય એ પહેલાં જ કનેક્શન રોકી દીધું.</translation>
 <translation id="9107467864910557787">તમારું બ્રાઉઝર <ph name="MANAGER" /> દ્વારા મેનેજ કરવામાં આવે છે</translation>
@@ -4227,6 +4233,8 @@
 <translation id="9139318394846604261">Shopping</translation>
 <translation id="9141013498910525015">ઍડ્રેસ મેનેજ કરો</translation>
 <translation id="9144951720726881238">સમાપ્તિ તારીખ:</translation>
+<translation id="9145910032514306808">ફરીથી <ph name="BEGIN_LINK" />સાઇન ઇન કરો<ph name="END_LINK" />
+    અને ત્યારબાદ લેખન સંબંધિત સહાય મેળવવા માટે આ ટૅબ પર પાછા આવો</translation>
 <translation id="9148507642005240123">&amp;છેલ્લો ફેરફાર રદ કરો</translation>
 <translation id="9148599396704355100">કિંમત ઓછી છે</translation>
 <translation id="9150025764986957246">તમે આના જેવી વસ્તુઓ દાખલ કરી શકો છો:</translation>
diff --git a/components/strings/components_strings_hu.xtb b/components/strings/components_strings_hu.xtb
index 0e1d43b..09b44dc 100644
--- a/components/strings/components_strings_hu.xtb
+++ b/components/strings/components_strings_hu.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Könyvkereskedők</translation>
 <translation id="2048261947532620704">Oldal fordítása</translation>
 <translation id="2053111141626950936">A(z) <ph name="LANGUAGE" /> nyelvű oldalak nem lesznek lefordítva.</translation>
+<translation id="2055461225779831292">Kamerák használata és mozgatása (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Az egérmutató zárolása</translation>
 <translation id="2056658168519009885">A webhelyek információkat kérhetnek a Chrome-tól az Önnek megjelenített hirdetések személyre szabásához.</translation>
 <translation id="2059166748188874810">Törvényhatósági terület</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Nincs feltöltve</translation>
 <translation id="2301098101308036335">Mely webhelyek lettek felkeresve, és mikor.</translation>
 <translation id="230286397113210245">Inkognitó ablak megnyitása gomb. A gombot megnyomva új inkognitó ablakot nyithat meg, amelyben privát módon böngészhet.</translation>
+<translation id="2306124309679506798">Engedélyezi a magával ragadó élményt?</translation>
 <translation id="2312234273148520048">Ízesítők és öntetek</translation>
 <translation id="2316087952091171402">Kevesebb mint <ph name="UPPER_ESTIMATE" /> maradt. Előfordulhat, hogy egyes webhelyek lassabban töltődnek be, amikor legközelebb felkeresi őket.</translation>
 <translation id="2316159751672436664">Személyre szabhatja a kisegítő lehetőségeket a ChromeOS beállításaiban</translation>
@@ -1170,6 +1172,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />. Nyomja le a Tab, majd az Enter billentyűt a böngésző megjelenésének személyre szabásához.</translation>
 <translation id="3240791268468473923">A biztonságos fizetés hitelesítési adataihoz tartozó nem egyező hitelesítési adatok űrlapja megnyitva</translation>
 <translation id="324180406144491771">A(z) „<ph name="HOST_NAME" />” linkjei le vannak tiltva</translation>
+<translation id="3248329428895535435">Ne jelenjen meg ezen a webhelyen</translation>
 <translation id="3252772880526154546">Építészet</translation>
 <translation id="3254301855501243548">18 × 22 hüvelyk</translation>
 <translation id="3255926992597692024">A Chromium módosítani próbálja a fizetési módok kitöltési beállításait.</translation>
@@ -1604,6 +1607,7 @@
 <translation id="4082333119419111506">Papír (előnyomott)</translation>
 <translation id="4082393374666368382">Beállítások – kezelés</translation>
 <translation id="4084219288110917128">C1 boríték</translation>
+<translation id="4085326869263783566">Segítség az íráshoz. A megnyitáshoz nyomja meg a Tab billentyűt, majd az Entert.</translation>
 <translation id="4088981014127559358">1. oldali kép Y-eltolása</translation>
 <translation id="4089152113577680600">14. tálca</translation>
 <translation id="4092349052316400070">Cím kitöltése</translation>
@@ -3784,6 +3788,7 @@
 <translation id="8263001937536038617">Fotós és videós szolgáltatások</translation>
 <translation id="8265992338205884890">Látható adatok</translation>
 <translation id="8267698848189296333">Bejelentkezés mint <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Különálló dokumentumok/Szétválogatott másolatok</translation>
 <translation id="8269703227894255363">{0,plural, =1{A fájl megnyitása le van tiltva}other{<ph name="FILE_COUNT" /> fájl megnyitása le van tiltva}}</translation>
 <translation id="8270173610195068258">Bűnözés és igazságszolgáltatás</translation>
@@ -4205,6 +4210,7 @@
 <translation id="9094544726794842788">A „Nem tetszik” értékelésre kattintva megnyit egy űrlapot, amelyen részletes visszajelzést adhat arról, hogy miért nem tetszenek Önnek ezek a találatok.</translation>
 <translation id="9095388113577226029">További nyelvek…</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />. Nyomja le a Tab, majd az Enter gombot, ha a Chrome-ot szeretné beállítani a rendszer alapértelmezett böngészőjeként az iOS beállításaiban</translation>
+<translation id="9101450247048146228">Kamera használata és mozgatása (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">1. tálca</translation>
 <translation id="9103872766612412690">A(z) <ph name="SITE" /> webhely rendes esetben titkosítást alkalmaz az Ön adatainak védelme érdekében. Amikor a Chromium most csatlakozni próbált, a(z) <ph name="SITE" /> webhely szokatlan és helytelen hitelesítési adatokat küldött vissza.Ez olyankor fordulhat elő, amikor egy támadó megpróbálja magát kiadni a(z) <ph name="SITE" /> webhelynek, vagy valamilyen Wi-Fi-bejelentkezési képernyő megszakította a kapcsolatot. Adatai továbbra is biztonságban vannak, mivel a Chromium még azt megelőzően megszakította a kapcsolatot, hogy bármiféle adatcserére sor kerülhetett volna.</translation>
 <translation id="9107467864910557787">Böngészőjét a(z) <ph name="MANAGER" /> kezeli</translation>
@@ -4227,6 +4233,8 @@
 <translation id="9139318394846604261">Vásárlás</translation>
 <translation id="9141013498910525015">Címek kezelése</translation>
 <translation id="9144951720726881238">Lejárati dátum:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Jelentkezzen be<ph name="END_LINK" />
+    újra, majd térjen vissza erre a lapra, hogy segítséget kaphasson az írással kapcsolatban</translation>
 <translation id="9148507642005240123">&amp;Szerkesztés visszavonása</translation>
 <translation id="9148599396704355100">Alacsony ár</translation>
 <translation id="9150025764986957246">Például a következőket adhatja meg:</translation>
diff --git a/components/strings/components_strings_hy.xtb b/components/strings/components_strings_hy.xtb
index 7aec5dd9..4094d417 100644
--- a/components/strings/components_strings_hy.xtb
+++ b/components/strings/components_strings_hy.xtb
@@ -157,6 +157,7 @@
 <translation id="1273592791152866347">Գների հետագծումն անջատված է</translation>
 <translation id="127777513559587977">Հեռուստատեսային թոք շոուներ</translation>
 <translation id="1281476433249504884">Շեղջիչ 1</translation>
+<translation id="1281536351321444151">Պահեք այս IBAN կոդը ձեր Google հաշվում, որպեսզի այն հաջորդ անգամ ավտոմատ լրացվի։</translation>
 <translation id="1282358575813748144">Նավեր և ջրային տրանսպորտ</translation>
 <translation id="1283977499362032052">Ռեզյումեներ և աշխատանքային պորտֆոլիոներ</translation>
 <translation id="1285320974508926690">Երբեք չթարգմանել այս կայքը</translation>
@@ -296,6 +297,7 @@
 <translation id="1529789484829130889">Դարակ 8</translation>
 <translation id="1530707389502320859">Կայքը, որը փորձում եք անցնել, նման է կեղծ կայքի։ Հաքերները երբեմն ստեղծում են կայքերի կրկնօրինակներ՝ փոքր-ինչ փոփոխելով դրանց URL-ը, ինչը հնարավոր չէ միանգամից նկատել։</translation>
 <translation id="1532118530259321453">Հաղորդագրություն այս էջից</translation>
+<translation id="1533966801397200693">Ձեր մտած պրոֆիլը կառավարվող պրոֆիլ է։ Ձեր ադմինիստրատորը կարող է հեռակա կարգով փոխել պրոֆիլի կարգավորումները, վերլուծել դիտարկիչի մասին տեղեկությունները հաշվետվությունների միջոցով և կատարել այլ անհրաժեշտ առաջադրանքներ։ <ph name="BEGIN_LINK" />Իմանալ ավելին<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Թարգմանել էջը</translation>
 <translation id="1537807545287921620">Այս PDF ֆայլը հնարավոր չէ բացել։ Բացեք տեղային ընտրացանկը և միացրեք «Արտահանել տեքստը PDF ֆայլից» պարամետրը։</translation>
 <translation id="1539840569003678498">Հաշվետվությունն ուղարկվել է՝</translation>
@@ -1191,6 +1193,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Մուտքագրեք <ph name="NUMBER_OF_DIGITS" /> թվանշանից բաղկացած հաստատման կոդը</translation>
 <translation id="3272643614306383237">1 ՄԲ-ից պակաս։ Որոշ կայքեր կարող են ավելի դանդաղ բեռնվել հաջորդ այցելության ժամանակ։</translation>
+<translation id="3273738040255912340">Ձեր ադմինիստրատորը կարող է հեռակա կարգով փոխել ձեր պրոֆիլի և դիտարկիչի կարգավորումները, վերլուծել դիտարկիչի մասին տեղեկությունները հաշվետվությունների միջոցով և կատարել այլ անհրաժեշտ առաջադրանքներ։ Սարքում արվող գործողությունները նույնպես կարող են կառավարվել Chromium-ից դուրս։ <ph name="BEGIN_LINK" />Իմանալ ավելին<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Ադմինիստրատորը խորհուրդ չի տալիս այս ֆայլը բացել այստեղ՝ <ph name="DESTINATION_NAME" />}one{Ադմինիստրատորը խորհուրդ չի տալիս այս ֆայլը բացել այստեղ՝ <ph name="DESTINATION_NAME" />}other{Ադմինիստրատորը խորհուրդ չի տալիս այս ֆայլերը բացել այստեղ՝ <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Ձեր կազմակերպությունը (<ph name="ENROLLMENT_DOMAIN" />) հետևյալ կայքերին ուղարկել է որոշ տեղեկություններ, օրինակ՝ կարգավորումներ և կանոններ։</translation>
 <translation id="3286372614333682499">ուղղաձիգ</translation>
@@ -3897,6 +3900,7 @@
 <translation id="8446884382197647889">Մանրամասն</translation>
 <translation id="8449155699563577224">17 x 24 դյույմ</translation>
 <translation id="8449836157089738489">Բացել բոլորը նոր ներդիրների խմբում</translation>
+<translation id="84561192812921051">Ձեր ադմինիստրատորը կարող է հեռակա կարգով փոխել ձեր պրոֆիլի և դիտարկիչի կարգավորումները, վերլուծել դիտարկիչի մասին տեղեկությունները հաշվետվությունների միջոցով և կատարել այլ անհրաժեշտ առաջադրանքներ։ Սարքում արվող գործողությունները նույնպես կարող են կառավարվել Chrome-ից դուրս։  <ph name="BEGIN_LINK" />Իմանալ ավելին<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Անորոշ</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Միացնել</translation>
diff --git a/components/strings/components_strings_id.xtb b/components/strings/components_strings_id.xtb
index 1422cff..20cf158 100644
--- a/components/strings/components_strings_id.xtb
+++ b/components/strings/components_strings_id.xtb
@@ -571,6 +571,7 @@
 <translation id="2046951263634619614">Retailer Buku</translation>
 <translation id="2048261947532620704">Menerjemahkan halaman</translation>
 <translation id="2053111141626950936">Halaman dalam bahasa <ph name="LANGUAGE" /> tidak akan diterjemahkan.</translation>
+<translation id="2055461225779831292">Menggunakan &amp; menggerakkan kamera Anda (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Mengunci kursor mouse</translation>
 <translation id="2056658168519009885">Situs dapat meminta informasi kepada Chrome untuk membantu mempersonalisasi iklan yang Anda lihat.</translation>
 <translation id="2059166748188874810">Kotamadya</translation>
@@ -718,6 +719,7 @@
 <translation id="2300306941146563769">Tidak diupload</translation>
 <translation id="2301098101308036335">Situs yang dikunjungi dan kapan kunjungan tersebut dilakukan.</translation>
 <translation id="230286397113210245">Tombol Buka Jendela Samaran, aktifkan untuk membuka jendela Samaran baru dan menjelajah secara pribadi</translation>
+<translation id="2306124309679506798">Izinkan pengalaman imersif?</translation>
 <translation id="2312234273148520048">Bumbu &amp; Saus</translation>
 <translation id="2316087952091171402">Kurang dari <ph name="UPPER_ESTIMATE" />. Beberapa situs mungkin dimuat lebih lambat pada kunjungan Anda berikutnya.</translation>
 <translation id="2316159751672436664">Personalisasi alat aksesibilitas Anda di setelan ChromeOS</translation>
@@ -1173,6 +1175,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, Tekan tab lalu Enter untuk menyesuaikan tampilan browser Anda</translation>
 <translation id="3240791268468473923">Sheet tidak ada kredensial yang cocok untuk Kredensial pembayaran aman terbuka</translation>
 <translation id="324180406144491771">Link “<ph name="HOST_NAME" />” diblokir</translation>
+<translation id="3248329428895535435">Jangan tampilkan di situs ini</translation>
 <translation id="3252772880526154546">Arsitektur</translation>
 <translation id="3254301855501243548">18 x 22 inci (45 x 55 cm)</translation>
 <translation id="3255926992597692024">Chromium mencoba mengubah setelan pengisian metode pembayaran.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">Kertas (Pracetak)</translation>
 <translation id="4082393374666368382">Setelan - Pengelolaan</translation>
 <translation id="4084219288110917128">Envelope C1</translation>
+<translation id="4085326869263783566">Bantu menulis. Tab dan tekan enter untuk membuka</translation>
 <translation id="4088981014127559358">Perpindahan image Y sisi 1</translation>
 <translation id="4089152113577680600">Baki 14</translation>
 <translation id="4092349052316400070">Isi alamat</translation>
@@ -3784,6 +3788,7 @@
 <translation id="8263001937536038617">Layanan Foto &amp; Video</translation>
 <translation id="8265992338205884890">Data yang terlihat</translation>
 <translation id="8267698848189296333">Login sebagai <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Dokumen terpisah/Salinan tersusun</translation>
 <translation id="8269703227894255363">{0,plural, =1{File diblokir agar tidak dapat dibuka}other{<ph name="FILE_COUNT" /> file diblokir agar tidak dapat dibuka}}</translation>
 <translation id="8270173610195068258">Kejahatan &amp; Keadilan</translation>
@@ -4201,6 +4206,7 @@
 <translation id="9094544726794842788">Memberi tanda Tidak suka akan membuka formulir untuk mengirim masukan mendetail tentang alasan Anda tidak menyukai hasil ini</translation>
 <translation id="9095388113577226029">Bahasa lainnya...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, Tekan Tab lalu Enter untuk menyetel Chrome sebagai browser default sistem di setelan iOS</translation>
+<translation id="9101450247048146228">Penggunaan &amp; gerakan kamera (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Baki 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> biasanya menggunakan enkripsi untuk melindungi informasi Anda. Saat Chromium mencoba menyambung ke <ph name="SITE" /> kali ini, situs web mengembalikan kredensial yang salah dan tidak biasa. Hal ini dapat terjadi jika ada penyerang yang berpura-pura menjadi <ph name="SITE" />, atau layar masuk Wi-Fi mengganggu sambungan. Informasi Anda masih aman karena Chromium menghentikan sambungan sebelum terjadi pertukaran data apa pun.</translation>
 <translation id="9107467864910557787">Browser Anda dikelola oleh <ph name="MANAGER" /></translation>
@@ -4223,6 +4229,8 @@
 <translation id="9139318394846604261">Belanja</translation>
 <translation id="9141013498910525015">Kelola alamat</translation>
 <translation id="9144951720726881238">Tanggal kedaluwarsa:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Login<ph name="END_LINK" /> 
+    lagi, lalu kembali ke tab ini untuk mendapatkan bantuan menulis</translation>
 <translation id="9148507642005240123">&amp;Urungkan pengeditan</translation>
 <translation id="9148599396704355100">Harga Rendah</translation>
 <translation id="9150025764986957246">Anda dapat memasukkan berbagai teks seperti:</translation>
diff --git a/components/strings/components_strings_it.xtb b/components/strings/components_strings_it.xtb
index e28f4ed..b6cba35 100644
--- a/components/strings/components_strings_it.xtb
+++ b/components/strings/components_strings_it.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Rivenditori di libri</translation>
 <translation id="2048261947532620704">Traduzione della pagina in corso…</translation>
 <translation id="2053111141626950936">Le pagine in <ph name="LANGUAGE" /> non verranno tradotte.</translation>
+<translation id="2055461225779831292">Usare e spostare le videocamere (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Blocca il puntatore del mouse</translation>
 <translation id="2056658168519009885">I siti possono chiedere a Chrome informazioni utili a personalizzare gli annunci che vedi.</translation>
 <translation id="2059166748188874810">Comune</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Non caricato</translation>
 <translation id="2301098101308036335">Quali siti web vengono visitati e quando.</translation>
 <translation id="230286397113210245">Pulsante Apri finestra di navigazione in incognito, attiva per aprire una nuova finestra di navigazione in incognito per navigare in privato</translation>
+<translation id="2306124309679506798">Consentire un'esperienza immersiva?</translation>
 <translation id="2312234273148520048">Salse e condimenti</translation>
 <translation id="2316087952091171402">Meno di <ph name="UPPER_ESTIMATE" />. Alcuni siti potrebbero caricarsi più lentamente alla prossima visita.</translation>
 <translation id="2316159751672436664">Personalizza i tuoi strumenti di accessibilità nelle impostazioni di ChromeOS</translation>
@@ -1169,6 +1171,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, premi Tab poi Invio per personalizzare l'aspetto del browser</translation>
 <translation id="3240791268468473923">Le credenziali per il pagamento sicuro non corrispondono: riquadro inferiore aperto</translation>
 <translation id="324180406144491771">I link "<ph name="HOST_NAME" />" sono bloccati</translation>
+<translation id="3248329428895535435">Non mostrare per questo sito</translation>
 <translation id="3252772880526154546">Architettura</translation>
 <translation id="3254301855501243548">18 x 22 in</translation>
 <translation id="3255926992597692024">Chromium sta cercando di modificare le impostazioni per la compilazione dei metodi di pagamento.</translation>
@@ -1603,6 +1606,7 @@
 <translation id="4082333119419111506">Carta (prestampata)</translation>
 <translation id="4082393374666368382">Impostazioni - Gestione</translation>
 <translation id="4084219288110917128">Busta C1</translation>
+<translation id="4085326869263783566">Aiutami a scrivere. Premi Tab e premi Invio per aprire.</translation>
 <translation id="4088981014127559358">Spostamento Y lato 1 immagine</translation>
 <translation id="4089152113577680600">Vassoio 14</translation>
 <translation id="4092349052316400070">Inserisci l'indirizzo</translation>
@@ -3782,6 +3786,7 @@
 <translation id="8263001937536038617">Servizi fotografici e video</translation>
 <translation id="8265992338205884890">Dati visibili</translation>
 <translation id="8267698848189296333">Accesso come <ph name="USERNAME" /> in corso</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Documenti separati/Copie fascicolate</translation>
 <translation id="8269703227894255363">{0,plural, =1{Apertura del file bloccata}other{Apertura di <ph name="FILE_COUNT" /> file bloccata}}</translation>
 <translation id="8270173610195068258">Criminalità e giustizia</translation>
@@ -4202,6 +4207,7 @@
 <translation id="9094544726794842788">Non mi piace apre un modulo per inviare un feedback dettagliato sul motivo per cui non ti piacciono questi risultati</translation>
 <translation id="9095388113577226029">Altre lingue</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, premi Tab e poi Invio per impostare Chrome come browser predefinito del sistema nelle impostazioni di iOS</translation>
+<translation id="9101450247048146228">Uso e movimento della videocamera (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Vassoio 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> in genere utilizza la crittografia per proteggere le tue informazioni. Questa volta, quando Chromium ha provato a connettersi a <ph name="SITE" />, il sito web ha restituito credenziali insolite e sbagliate. È possibile che un malintenzionato stia cercando di spacciarsi per il sito <ph name="SITE" /> oppure che una schermata di accesso alla rete Wi-Fi abbia interrotto la connessione. Le tue informazioni sono ancora al sicuro perché Chromium ha interrotto la connessione prima che avvenissero scambi di dati.</translation>
 <translation id="9107467864910557787">Il browser in uso è gestito da <ph name="MANAGER" /></translation>
@@ -4224,6 +4230,7 @@
 <translation id="9139318394846604261">Shopping</translation>
 <translation id="9141013498910525015">Gestisci gli indirizzi</translation>
 <translation id="9144951720726881238">Data di scadenza:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Accedi<ph name="END_LINK" /> di nuovo, quindi torna a questa scheda per ricevere aiuto per la scrittura</translation>
 <translation id="9148507642005240123">&amp;Annulla modifica</translation>
 <translation id="9148599396704355100">Prezzo basso</translation>
 <translation id="9150025764986957246">Puoi inserire:</translation>
diff --git a/components/strings/components_strings_ja.xtb b/components/strings/components_strings_ja.xtb
index afd6b389..cc55b8d 100644
--- a/components/strings/components_strings_ja.xtb
+++ b/components/strings/components_strings_ja.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">書籍販売</translation>
 <translation id="2048261947532620704">ページを翻訳しています</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" />のページは翻訳されません。</translation>
+<translation id="2055461225779831292">カメラの使用と移動(<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">マウスポインタをロックする</translation>
 <translation id="2056658168519009885">パーソナライズド広告を表示するため、ウェブサイトから Chrome に情報を要求することがあります。</translation>
 <translation id="2059166748188874810">市区町村</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">アップロードされていません</translation>
 <translation id="2301098101308036335">アクセスしたウェブサイトとその日時が表示されます。</translation>
 <translation id="230286397113210245">[シークレット ウィンドウを開く] ボタンです。実行すると、新しいシークレット ウィンドウを開いてシークレット モードでブラウジングできます</translation>
+<translation id="2306124309679506798">没入型エクスペリエンスを許可しますか?</translation>
 <translation id="2312234273148520048">調味料、ドレッシング</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" /> 未満。サイトによっては、次回アクセスする際に読み込みに時間がかかる可能性があります。</translation>
 <translation id="2316159751672436664">Chrome OS の設定でユーザー補助ツールをカスタマイズします</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" /> です。Tab、Enter キーの順に押すと、ブラウザのデザインをカスタマイズできます</translation>
 <translation id="3240791268468473923">保護されたお支払い認証情報(認証情報の一致なし)シートが開いています</translation>
 <translation id="324180406144491771">「<ph name="HOST_NAME" />」リンクはブロックされています</translation>
+<translation id="3248329428895535435">このサイトでは表示しない</translation>
 <translation id="3252772880526154546">アーキテクチャ</translation>
 <translation id="3254301855501243548">18x22 インチ</translation>
 <translation id="3255926992597692024">Chromium がお支払い方法の入力の設定を変更しようとしています。</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">紙(プレプリント)</translation>
 <translation id="4082393374666368382">設定 - 管理</translation>
 <translation id="4084219288110917128">C1 封筒</translation>
+<translation id="4085326869263783566">文書作成サポートです。開くには、Tab キーと Enter キーを押します</translation>
 <translation id="4088981014127559358">1 面の画像の Y 軸移動</translation>
 <translation id="4089152113577680600">トレイ 14</translation>
 <translation id="4092349052316400070">住所を入力してください</translation>
@@ -3787,6 +3791,7 @@
 <translation id="8263001937536038617">写真、ビデオ撮影</translation>
 <translation id="8265992338205884890">参照可能なデータ</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" /> としてログイン</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">個別のドキュメント(丁合いあり)</translation>
 <translation id="8269703227894255363">{0,plural, =1{ファイルを開けません}other{<ph name="FILE_COUNT" /> 個のファイルを開けません}}</translation>
 <translation id="8270173610195068258">犯罪、裁判</translation>
@@ -4207,6 +4212,7 @@
 <translation id="9094544726794842788">低く評価すると、これらの結果が気に入らなかった理由について詳細なフィードバックを送信するためのフォームが開きます</translation>
 <translation id="9095388113577226029">その他の言語...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" /> です。Tab、Enter キーの順に押すと、iOS 設定で Chrome をシステムの既定のブラウザとして設定できます</translation>
+<translation id="9101450247048146228">カメラの使用と移動(<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">トレイ 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> では通常、暗号化して情報を保護しています。今回、Chromium から <ph name="SITE" /> への接続試行時に、このウェブサイトからいつもとは異なる誤った認証情報が返されました。悪意のあるユーザーが <ph name="SITE" /> になりすまそうとしているか、Wi-Fi ログイン画面で接続が中断された可能性があります。データのやり取りが行われる前に Chromium によって接続が停止されたため、情報は引き続き保護されています。</translation>
 <translation id="9107467864910557787">ご使用のブラウザは <ph name="MANAGER" /> によって管理されています</translation>
@@ -4229,6 +4235,7 @@
 <translation id="9139318394846604261">ショッピング</translation>
 <translation id="9141013498910525015">住所を管理</translation>
 <translation id="9144951720726881238">有効期限:</translation>
+<translation id="9145910032514306808">もう一度<ph name="BEGIN_LINK" />ログイン<ph name="END_LINK" />してこのタブに戻ると、文章作成サポートを使用できます</translation>
 <translation id="9148507642005240123">編集の取り消し(&amp;U)</translation>
 <translation id="9148599396704355100">低価格</translation>
 <translation id="9150025764986957246">次のような内容を入力できます。</translation>
diff --git a/components/strings/components_strings_ka.xtb b/components/strings/components_strings_ka.xtb
index 009ff6a..77db5cd 100644
--- a/components/strings/components_strings_ka.xtb
+++ b/components/strings/components_strings_ka.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">წიგნების საცალო გაყიდვა</translation>
 <translation id="2048261947532620704">მიმდინარეობს გვერდის თარგმნა</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> გვერდები არ ითარგმნება.</translation>
+<translation id="2055461225779831292">თქვენი კამერის გამოყენება და მოძრაობა (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">დაბლოკეთ თქვენი მაუსის კურსორი</translation>
 <translation id="2056658168519009885">საიტებს შეუძლია სთხოვონ Chrome-ს გარკვეული ინფორმაცია, რაც მათ პერსონალიზებული რეკლამების თქვენთვის შემოთავაზებაში დაეხმარება.</translation>
 <translation id="2059166748188874810">მუნიციპალიტეტი</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">აუტვირთავია</translation>
 <translation id="2301098101308036335">რომელი ვებსაიტები არის მონახულებული და როდის.</translation>
 <translation id="230286397113210245">ახალი ინკოგნიტო ფანჯრის გახსნის ღილაკი, ვების კონფიდენციალურად დასათვალიერებლად ახალი ინკოგნიტო ფანჯრის გასახსნელად გაააქტიურეთ ის</translation>
+<translation id="2306124309679506798">გსურთ დაუშვათ ნებართვა იმერსიული გამოცდილებისთვის?</translation>
 <translation id="2312234273148520048">სანელებლები და საკმაზი</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" />-ზე ნაკლები. შესაძლოა, ზოგიერთი საიტი შემდეგ ვიზიტზე უფრო ნელა ჩაიტვირთოს.</translation>
 <translation id="2316159751672436664">მარტივი წვდომის ხელსაწყოების პერსონალიზირება ChromeOS პარამეტრებიდან</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, თქვენი ბრაუზერის იერსახის მოსარგებად დააჭირეთ კლავიშს Tab, შემდეგ კი Enter-ს</translation>
 <translation id="3240791268468473923">უსაფრთხო გადახდისთვის საჭირო ავტორიზაციის მონაცემების არარსებობის ფურცელი გახსნილია</translation>
 <translation id="324180406144491771">„<ph name="HOST_NAME" />“-ის ბმულები დაბლოკილია</translation>
+<translation id="3248329428895535435">არ აჩვენო ამ საიტზე</translation>
 <translation id="3252772880526154546">არქიტექტურა</translation>
 <translation id="3254301855501243548">18 x 22 დუიმი</translation>
 <translation id="3255926992597692024">Chromium ცდილობს პარამეტრების შეცვლას, გადახდის მეთოდების შესავსებად.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">ქაღალდი (წინასწარ დაბეჭდილი)</translation>
 <translation id="4082393374666368382">პარამეტრები — მართვა</translation>
 <translation id="4084219288110917128">კონვერტი C1</translation>
+<translation id="4085326869263783566">ტექსტის შემქმნელი გასახსნელად დააჭირეთ Tab-ს და შემდეგ კი შეყვანას</translation>
 <translation id="4088981014127559358">მხარე 1 — სურათის წანაცვლება Y ღერძზე</translation>
 <translation id="4089152113577680600">ლანგარი 14</translation>
 <translation id="4092349052316400070">მისამართის შევსება</translation>
@@ -2306,6 +2310,7 @@
 <translation id="5447765697759493033">ეს გვერდი არ ითარგმნება</translation>
 <translation id="5452270690849572955"><ph name="HOST_NAME" />-ზე ეს გვერდი ვერ მოიძებნა</translation>
 <translation id="5455374756549232013">ცუდი წესის დროის აღნიშვნა</translation>
+<translation id="5456428544444655325">არასოდეს ჩვენება</translation>
 <translation id="5456839782162429664">ხელით დადასტურება ავტომატური შევსებით ყოველი გადახდისას</translation>
 <translation id="5457113250005438886">არასწორი</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> და <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> სხვა}other{<ph name="CONTACT_PREVIEW" /> და <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> სხვა}}</translation>
@@ -3785,6 +3790,7 @@
 <translation id="8263001937536038617">ფოტო და ვიდეო მომსახურება</translation>
 <translation id="8265992338205884890">ხილული მონაცემები</translation>
 <translation id="8267698848189296333">შესვლა, როგორც <ph name="USERNAME" />…</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">სხვადასხვა დოკუმენტი/შერჩეული ასლები</translation>
 <translation id="8269703227894255363">{0,plural, =1{ფაილის გახსნის შესაძლებლობა დაიბლოკა}other{<ph name="FILE_COUNT" /> ფაილის გახსნის შესაძლებლობა დაიბლოკა}}</translation>
 <translation id="8270173610195068258">კრიმინალი და მართლმსაჯულება</translation>
@@ -4204,6 +4210,7 @@
 <translation id="9094544726794842788">ქვემოთ დაწეული ცერის არჩევის შემთხვევაში გაიხსნება ფორმა, რომელშიც დეტალურად უნდა მიუთითოთ, რატომ არ მოგწონთ ეს შედეგები</translation>
 <translation id="9095388113577226029">სხვა ენები...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, iOS პარამეტრებიდან Chrome სისტემის ნაგულისხმევ ბრაუზერად რომ დააყენოთ, დააჭირეთ კლავიშს Tab, შემდეგ კი Enter-ს</translation>
+<translation id="9101450247048146228">კამერის გამოყენება და მოძრაობა (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">ლანგარი 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> დაშიფვრას, ჩვეულებრივ, თქვენი ინფორმაციის დაცვის მიზნით იყენებს. Chromium-ის მიერ <ph name="SITE" />-თან დაკავშირების მცდელობისას, ვებსაიტმა ამჯერად უჩვეულო და არასწორი ავტორიზაციის მონაცემები გამოგზავნა. ეს შეიძლება მოხდეს მაშინ, როცა თავდამსხმელი თავს <ph name="SITE" />-ად ასაღებს, ან დაკავშირების შეფერხების მიზეზი Wi-Fi შესვლის ეკრანი გახდა. თქვენი ინფორმაცია დაცულია, რადგან Chromium-მა დაკავშირება მონაცემების მიმოცვლამდე შეწყვიტა.</translation>
 <translation id="9107467864910557787">თქვენს ბრაუზერს მართავს <ph name="MANAGER" /></translation>
@@ -4226,6 +4233,8 @@
 <translation id="9139318394846604261">საყიდლები</translation>
 <translation id="9141013498910525015">მისამართების მართვა</translation>
 <translation id="9144951720726881238">მოქმედების ვადის გასვლის თარიღი:</translation>
+<translation id="9145910032514306808">ხელახლა <ph name="BEGIN_LINK" />შედით სისტემაში<ph name="END_LINK" />,
+    შემდეგ დაბრუნდით ამ ჩანართზე წერაში დახმარების მისაღებად</translation>
 <translation id="9148507642005240123">რედაქტირების &amp;მოქმედების გაუქმება</translation>
 <translation id="9148599396704355100">ფასი დაბალია</translation>
 <translation id="9150025764986957246">მაგალითად, შეგიძლიათ მიუთითოთ:</translation>
diff --git a/components/strings/components_strings_kk.xtb b/components/strings/components_strings_kk.xtb
index cb25a7b56..b6bcba9b 100644
--- a/components/strings/components_strings_kk.xtb
+++ b/components/strings/components_strings_kk.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Кітап дүкендері</translation>
 <translation id="2048261947532620704">Бет аударылып жатыр</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> тіліндегі беттер аударылмайды.</translation>
+<translation id="2055461225779831292">Камераларды (<ph name="CAMERAS_COUNT" />) пайдалану және жылжыту</translation>
 <translation id="2056492565825767809">Тінтуір меңзерін құлыптау</translation>
 <translation id="2056658168519009885">Сайттар Chrome браузерінен көрсетілетін жарнамаларды жекелендіруге көмектесу үшін ақпарат сұрай алады.</translation>
 <translation id="2059166748188874810">Қала әкімшілігі</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Жүктеп салынбады</translation>
 <translation id="2301098101308036335">Веб-сайттарға біреу кіргені және қашан кіргені.</translation>
 <translation id="230286397113210245">"Инкогнито терезесін ашу" түймесі, құпия шолу мақсатында жаңа инкогнито терезесін ашу үшін белсендіріңіз</translation>
+<translation id="2306124309679506798">Иммерсивті тәжірибеге рұқсат беру қажет пе?</translation>
 <translation id="2312234273148520048">Дәмдеуіштер мен тұздықтар</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" />-тан аз. Келесі жолы кейбір сайттар баяу жүктелуі мүмкін.</translation>
 <translation id="2316159751672436664">ChromeOS параметрлерінен арнайы мүмкіндіктер құралдарын жекелендіру</translation>
@@ -1171,6 +1173,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />. Браузер көрінісін реттеу үшін Tab, сосын Enter пернесін басыңыз.</translation>
 <translation id="3240791268468473923">Қауіпсіз төлемге арналған деректердің сәйкес келмейтіндігі көрсетілген парақ ашылды.</translation>
 <translation id="324180406144491771">"<ph name="HOST_NAME" />" сілтемелері блокталған</translation>
+<translation id="3248329428895535435">Бұл сайтта көрсетпеу</translation>
 <translation id="3252772880526154546">Сәулет</translation>
 <translation id="3254301855501243548">18 x 22 дюйм</translation>
 <translation id="3255926992597692024">Chromium төлеу әдістерін толтыру параметрлерін өзгерткісі келеді.</translation>
@@ -1605,6 +1608,7 @@
 <translation id="4082333119419111506">Қағаз (алдын ала басылған)</translation>
 <translation id="4082393374666368382">Параметрлер ­− Басқару</translation>
 <translation id="4084219288110917128">C1 хатқалтасы</translation>
+<translation id="4085326869263783566">Жазуға көмек керек. Ашу үшін Tab және Enter пернелерін басыңыз.</translation>
 <translation id="4088981014127559358">Кескіннің Y осі бойынша 1-жағында ығысуы</translation>
 <translation id="4089152113577680600">14-науа</translation>
 <translation id="4092349052316400070">Мекежайды енгізіңіз.</translation>
@@ -2305,6 +2309,7 @@
 <translation id="5447765697759493033">Бұл сайт аударылмайды</translation>
 <translation id="5452270690849572955">Бұл <ph name="HOST_NAME" /> бетін табу мүмкін емес</translation>
 <translation id="5455374756549232013">Саясат уақыт белгісі жарамсыз</translation>
+<translation id="5456428544444655325">Ешқашан көрсетпеу</translation>
 <translation id="5456839782162429664">Автотолтыру функциясымен төлеген сайын өз бетінше растау</translation>
 <translation id="5457113250005438886">Жарамсыз</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> және тағы <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" /> және тағы <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation>
@@ -3784,6 +3789,7 @@
 <translation id="8263001937536038617">Фотосурет және бейне қызметтері</translation>
 <translation id="8265992338205884890">Көрінетін деректер</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" /> ретінде кіру</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Бөлек құжаттар/реттелген көшірмелер</translation>
 <translation id="8269703227894255363">{0,plural, =1{Файлды ашуға блок қойылған}other{<ph name="FILE_COUNT" /> файлды ашуға блок қойылған}}</translation>
 <translation id="8270173610195068258">Қылмыс пен әділет</translation>
@@ -4203,6 +4209,7 @@
 <translation id="9094544726794842788">"Ұнамайды" белгішесін бассаңыз, бұл нәтижелердің ұнамау себебін толықтай жазуға арналған үлгі ашылады</translation>
 <translation id="9095388113577226029">Басқа тілдер…</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />. iOS параметрлерінде Chrome-ды жүйенің әдепкі браузері етіп орнату үшін Tab, кейін Enter пернесін басыңыз.</translation>
+<translation id="9101450247048146228">Камераны (<ph name="CAMERAS_COUNT" />) пайдалану және жылжыту</translation>
 <translation id="9101630580131696064">1-науа</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> әдетте ақпаратыңызды қорғау үшін шифрлауды қолданады. Осы жолы Chromium <ph name="SITE" /> сайтына қосылуға әрекет еткенде, веб-сайт әдеттен тыс және қате тіркелгі деректерін жіберді. Бұл жағдай қаскүнем <ph name="SITE" /> болып көрінгісі келгенде немесе Wi-Fi кіру экраны байланысқа кедергі болғанда пайда болуы мүмкін. Ақпаратыңыз қауіпсіз күйде, себебі Chromium ешқандай дерек алмасу болмай тұрып байланысты үзді.</translation>
 <translation id="9107467864910557787">Браузеріңізді <ph name="MANAGER" /> басқарады</translation>
@@ -4225,6 +4232,7 @@
 <translation id="9139318394846604261">Шопинг</translation>
 <translation id="9141013498910525015">Мекенжайларды басқару</translation>
 <translation id="9144951720726881238">Жарамдылық мерзімі:</translation>
+<translation id="9145910032514306808">Жазу бойынша көмек алу үшін аккаунтқа қайта <ph name="BEGIN_LINK" />кіріп<ph name="END_LINK" />, осы қойындыға оралыңыз.</translation>
 <translation id="9148507642005240123">&amp;Өзгерту әрекетін кері қайтару</translation>
 <translation id="9148599396704355100">Бағасы төмен</translation>
 <translation id="9150025764986957246">Келесідей нәрселер енгізуге болады:</translation>
diff --git a/components/strings/components_strings_kn.xtb b/components/strings/components_strings_kn.xtb
index e2796b1..cff06291 100644
--- a/components/strings/components_strings_kn.xtb
+++ b/components/strings/components_strings_kn.xtb
@@ -569,6 +569,7 @@
 <translation id="2046951263634619614">ಪುಸ್ತಕ ರಿಟೇಲರ್‌ಗಳು</translation>
 <translation id="2048261947532620704">ಅನುವಾದ ಪುಟ</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" />ಭಾಷೆಯಲ್ಲಿರುವ ಪುಟಗಳು ಅನುವಾದಕ್ಕೊಳಪಡುವುದಿಲ್ಲ.</translation>
+<translation id="2055461225779831292">ನಿಮ್ಮ ಕ್ಯಾಮರಾಗಳನ್ನು ಬಳಸಿ ಮತ್ತು ಸರಿಸಿ (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">ನಿಮ್ಮ ಮೌಸ್ ಪಾಯಿಂಟರ್ ಅನ್ನು ಲಾಕ್ ಮಾಡಿ</translation>
 <translation id="2056658168519009885">ನೀವು ನೋಡುವ ಜಾಹೀರಾತುಗಳನ್ನು ವೈಯಕ್ತೀಕರಿಸುವುದಕ್ಕೆ ಸಹಾಯ ಮಾಡಲು ಸೈಟ್‌ಗಳು Chrome ಅನ್ನು ಮಾಹಿತಿ ಕೇಳಬಹುದು.</translation>
 <translation id="2059166748188874810">ಪುರಸಭೆ</translation>
@@ -716,6 +717,7 @@
 <translation id="2300306941146563769">ಅಪ್‌ಲೋಡ್ ಮಾಡಿಲ್ಲ</translation>
 <translation id="2301098101308036335">ಯಾವ ವೆಬ್‌ಸೈಟ್‌ಗಳಿಗೆ ಮತ್ತು ಯಾವಾಗ ಭೇಟಿ ನೀಡಲಾಗಿದೆ.</translation>
 <translation id="230286397113210245">ಅಜ್ಞಾತ ವಿಂಡೋ ತೆರೆಯಿರಿ ಬಟನ್, ಖಾಸಗಿಯಾಗಿ ಬ್ರೌಸ್ ಮಾಡಲು ಹೊಸ ಅಜ್ಞಾತ ವಿಂಡೋವನ್ನು ತೆರೆಯಲು ಸಕ್ರಿಯಗೊಳಿಸಿ</translation>
+<translation id="2306124309679506798">ತಲ್ಲೀನಗೊಳಿಸುವ ಅನುಭವವನ್ನು ಅನುಮತಿಸಬೇಕೆ?</translation>
 <translation id="2312234273148520048">ಕಾಂಡಿಮೆಂಟ್‌ಗಳು ಮತ್ತು ಡ್ರೆಸ್ಸಿಂಗ್‌ಗಳು</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" /> ಗಿಂತ ಕಡಿಮೆ. ನೀವು ಮುಂದಿನ ಬಾರಿ ಭೇಟಿ ನೀಡಿದಾಗ ಕೆಲವು ಸೈಟ್‌ಗಳು ನಿಧಾನವಾಗಿ ಲೋಡ್ ಆಗಬಹುದು.</translation>
 <translation id="2316159751672436664">ChromeOS ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ ನಿಮ್ಮ ಆ್ಯಕ್ಸೆಸಿಬಿಲಿಟಿ ಪರಿಕರಗಳನ್ನು ವೈಯಕ್ತೀಕರಿಸಿ</translation>
@@ -1170,6 +1172,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, ನಿಮ್ಮ ಬ್ರೌಸರ್‌ನ ನೋಟವನ್ನು ಕಸ್ಟಮೈಸ್ ಮಾಡಲು Tab ಒತ್ತಿ, ನಂತರ Enter ಒತ್ತಿರಿ</translation>
 <translation id="3240791268468473923">ಸುರಕ್ಷಿತ ಪಾವತಿ ರುಜುವಾತಿಗೆ ಹೊಂದಾಣಿಕೆಯಾಗುವ ಯಾವುದೇ ರುಜುವಾತು ಶೀಟ್ ಅನ್ನು ತೆರೆಯಲಾಗಿಲ್ಲ</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” ಲಿಂಕ್‌ಗಳನ್ನು ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ</translation>
+<translation id="3248329428895535435">ಈ ಸೈಟ್‌ನಲ್ಲಿ ತೋರಿಸಬೇಡಿ</translation>
 <translation id="3252772880526154546">ವಾಸ್ತುಶಿಲ್ಪ</translation>
 <translation id="3254301855501243548">18 x 22 ಇಂಚು</translation>
 <translation id="3255926992597692024">ಪಾವತಿ ವಿಧಾನಗಳನ್ನು ಭರ್ತಿ ಮಾಡಲು Chromium ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಮಾರ್ಪಡಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದೆ.</translation>
@@ -1603,6 +1606,7 @@
 <translation id="4082333119419111506">ಕಾಗದ (ಪೂರ್ವಮುದ್ರಿತ)</translation>
 <translation id="4082393374666368382">ಸೆಟ್ಟಿಂಗ್‌ಗಳು - ನಿರ್ವಹಣೆ</translation>
 <translation id="4084219288110917128">ಎನ್ವಲಪ್ C1</translation>
+<translation id="4085326869263783566">ನನಗೆ ಬರೆಯಲು ಸಹಾಯ ಮಾಡಿ. ತೆರೆಯಲು, ಟ್ಯಾಪ್‌ ಮಾಡಿ ಮತ್ತು Enter ಕೀಯನ್ನು ಒತ್ತಿರಿ</translation>
 <translation id="4088981014127559358">ಅಂಚು 1 ಚಿತ್ರ Y ಶಿಫ್ಟ್</translation>
 <translation id="4089152113577680600">ಟ್ರೇ 14</translation>
 <translation id="4092349052316400070">ವಿಳಾಸವನ್ನು ಭರ್ತಿ ಮಾಡಿ</translation>
@@ -3782,6 +3786,7 @@
 <translation id="8263001937536038617">ಫೋಟೋ ಮತ್ತು ವೀಡಿಯೊ ಸೇವೆಗಳು</translation>
 <translation id="8265992338205884890">ಡೇಟಾ ಗೋಚರತೆ</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" /> ನಂತೆ ಸೈನ್ ಇನ್ ಮಾಡಲಾಗುತ್ತಿದೆ</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">ಪ್ರತ್ಯೇಕ ಡಾಕ್ಯುಮೆಂಟ್‌ಗಳು/ಸಂಯೋಜಿಸಿದ ಪ್ರತಿಗಳು</translation>
 <translation id="8269703227894255363">{0,plural, =1{ಫೈಲ್ ಅನ್ನು ತೆರೆಯದಂತೆ ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ}one{<ph name="FILE_COUNT" /> ಫೈಲ್‌ಗಳನ್ನು ತೆರೆಯದಂತೆ ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ}other{<ph name="FILE_COUNT" /> ಫೈಲ್‌ಗಳನ್ನು ತೆರೆಯದಂತೆ ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ}}</translation>
 <translation id="8270173610195068258">ಕ್ರೈಮ್ ಮತ್ತು ಜಸ್ಟಿಸ್</translation>
@@ -4202,6 +4207,7 @@
 <translation id="9094544726794842788">ನೀವು ಈ ಫಲಿತಾಂಶಗಳನ್ನು ಏಕೆ ಇಷ್ಟಪಡುವುದಿಲ್ಲ ಎಂಬುದರ ಕುರಿತು ವಿವರವಾದ ಫೀಡ್‌ಬ್ಯಾಕ್ ಅನ್ನು ಸಲ್ಲಿಸಲು ಥಂಬ್ಸ್ ಡೌನ್ ಫಾರ್ಮ್ ಅನ್ನು ತೆರೆಯುತ್ತದೆ</translation>
 <translation id="9095388113577226029">ಇನ್ನಷ್ಟು ಭಾಷೆಗಳು...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, iOS ಸೆಟ್ಟಿಂಗ್‌ಗಳಲ್ಲಿ Chrome ಅನ್ನು ಸಿಸ್ಟಂನ ಡೀಫಾಲ್ಟ್ ಬ್ರೌಸರ್ ಆಗಿ ಹೊಂದಿಸಲು ಟ್ಯಾಬ್ ಒತ್ತಿರಿ ನಂತರ Enter ಒತ್ತಿರಿ</translation>
+<translation id="9101450247048146228">ಕ್ಯಾಮರಾದ ಬಳಕೆ ಮತ್ತು ಚಲನೆ (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">ಟ್ರೇ 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> ಸಾಮಾನ್ಯವಾಗಿ ನಿಮ್ಮ ಮಾಹಿತಿಯನ್ನು ಸಂರಕ್ಷಿಸಲು ಎನ್‌ಕ್ರಿಪ್ಶನ್ ಪ್ರಯೋಜನವನ್ನು ಬಳಸಿಕೊಳ್ಳುತ್ತದೆ. ಈ ಸಂದರ್ಭದಲ್ಲಿ Chromium <ph name="SITE" /> ವೆಬ್‌ಸೈಟ್‌ಗೆ ಸಂಪರ್ಕಿಸಲು ಪ್ರಯತ್ನಿಸಿದಾಗ, ಆ ವೆಬ್‌ಸೈಟ್‌‌ ಅಸಹಜ ಮತ್ತು ತಪ್ಪು ರುಜುವಾತುಗಳನ್ನು ಹಿಂತಿರುಗಿಸಿದೆ. ದಾಳಿಕೋರರು <ph name="SITE" /> ರೂಪದಲ್ಲಿ ಸೋಗು ಹಾಕಲು ಪ್ರಯತ್ನಿಸುತ್ತಿರುವಾಗ ಅಥವಾ ವೈ-ಫೈ ಸೈನ್-ಇನ್ ಪರದೆಯು ಸಂಪರ್ಕಕ್ಕೆ ಅಡ್ಡಿಯುಂಟು ಮಾಡಿದಾಗ ಇದು ಕಂಡುಬರಬಹುದು. ಯಾವುದೇ ಡೇಟಾವನ್ನು ವಿನಿಮಯ ಮಾಡಿಕೊಳ್ಳುವ ಮೊದಲೇ Chromium ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸಿರುವ ಕಾರಣ, ನಿಮ್ಮ ಮಾಹಿತಿ ಈಗಲೂ ಸುರಕ್ಷಿತವಾಗಿದೆ.</translation>
 <translation id="9107467864910557787">ನಿಮ್ಮ ಬ್ರೌಸರ್ ಅನ್ನು <ph name="MANAGER" /> ನಿರ್ವಹಿಸುತ್ತಿದೆ</translation>
@@ -4224,6 +4230,7 @@
 <translation id="9139318394846604261">Shopping</translation>
 <translation id="9141013498910525015">ವಿಳಾಸಗಳನ್ನು ನಿರ್ವಹಿಸಿ</translation>
 <translation id="9144951720726881238">ಅವಧಿ ಮುಗಿಯುವ ದಿನಾಂಕ:</translation>
+<translation id="9145910032514306808">ಮತ್ತೊಮ್ಮೆ <ph name="BEGIN_LINK" />ಸೈನ್ ಇನ್<ph name="END_LINK" /> ಮಾಡಿ, ನಂತರ ಬರವಣಿಗೆಯ ಸಹಾಯ ಪಡೆಯಲು ಈ ಟ್ಯಾಬ್‌ಗೆ ಹಿಂತಿರುಗಿ</translation>
 <translation id="9148507642005240123">&amp;ಎಡಿಟ್ ಮಾಡುವುದನ್ನು ರದ್ದುಗೊಳಿಸಿ</translation>
 <translation id="9148599396704355100">ಕಡಿಮೆ ದರ</translation>
 <translation id="9150025764986957246">ನೀವು ಈ ರೀತಿಯ ವಿಷಯಗಳನ್ನು ನಮೂದಿಸಬಹುದು:</translation>
diff --git a/components/strings/components_strings_ko.xtb b/components/strings/components_strings_ko.xtb
index f8111c7..5b1f941 100644
--- a/components/strings/components_strings_ko.xtb
+++ b/components/strings/components_strings_ko.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">서점</translation>
 <translation id="2048261947532620704">페이지 번역 중</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" />로 된 페이지를 번역하지 않습니다.</translation>
+<translation id="2055461225779831292">카메라 사용 및 이동(<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">마우스 포인터 잠금</translation>
 <translation id="2056658168519009885">사이트에서 광고 개인 최적화에 도움이 되는 정보를 Chrome에 요청할 수 있습니다.</translation>
 <translation id="2059166748188874810">지방 자치제</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">업로드되지 않음</translation>
 <translation id="2301098101308036335">방문한 웹사이트 및 방문 시기</translation>
 <translation id="230286397113210245">시크릿 창 열기 버튼, 새 시크릿 창을 열어 비공개로 탐색하려면 활성화하세요.</translation>
+<translation id="2306124309679506798">몰입형 경험을 허용하시겠습니까?</translation>
 <translation id="2312234273148520048">양념 및 드레싱</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" /> 미만입니다. 일부 사이트는 다음 방문 시 로드 속도가 느려질 수 있습니다.</translation>
 <translation id="2316159751672436664">ChromeOS 설정에서 접근성 도구 맞춤설정</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, 브라우저 테마를 맞춤설정하려면 Tab과 Enter를 차례로 누르세요</translation>
 <translation id="3240791268468473923">일치하는 결제 사용자 인증 정보 시트가 없는 보안 결제 사용자 인증 정보 열림</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” 링크가 차단되었습니다</translation>
+<translation id="3248329428895535435">이 사이트에서 표시하지 않음</translation>
 <translation id="3252772880526154546">아키텍처</translation>
 <translation id="3254301855501243548">18x22인치</translation>
 <translation id="3255926992597692024">Chromium에서 결제 수단 입력 설정을 수정하려고 합니다.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">용지(사전 인쇄됨)</translation>
 <translation id="4082393374666368382">설정 - 관리</translation>
 <translation id="4084219288110917128">봉투 C1</translation>
+<translation id="4085326869263783566">글쓰기 도우미. 탭하고 Enter를 눌러 여세요</translation>
 <translation id="4088981014127559358">첫 번째 면 이미지 Y 시프트</translation>
 <translation id="4089152113577680600">트레이 14</translation>
 <translation id="4092349052316400070">주소 입력</translation>
@@ -3785,6 +3789,7 @@
 <translation id="8263001937536038617">사진 및 동영상 서비스</translation>
 <translation id="8265992338205884890">표시되는 데이터</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" />(으)로 로그인</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">별도 문서/모은 사본</translation>
 <translation id="8269703227894255363">{0,plural, =1{파일 열기 차단됨}other{파일 <ph name="FILE_COUNT" />개 열기 차단됨}}</translation>
 <translation id="8270173610195068258">범죄 및 정의</translation>
@@ -4204,6 +4209,7 @@
 <translation id="9094544726794842788">싫어요를 누르면 이러한 결과가 마음에 들지 않는 이유에 관해 자세한 의견을 제출할 수 있는 양식이 열립니다</translation>
 <translation id="9095388113577226029">다른 언어...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, tab 키를 누른 다음 Enter 키를 눌러 iOS 설정에서 Chrome을 시스템 기본 브라우저로 설정</translation>
+<translation id="9101450247048146228">카메라 사용 및 이동(<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">트레이 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" />에서는 사용자 정보를 보호하기 위해 일반적으로 암호화를 사용합니다. 이번에 Chromium에서 <ph name="SITE" />에 연결을 시도했을 때 웹사이트에서 비정상적이고 잘못된 사용자 인증 정보를 반환했습니다. 이는 공격자가 <ph name="SITE" />인 것처럼 가장하려고 하거나 Wi-Fi 로그인 화면이 연결을 방해했기 때문일 수 있습니다. 데이터 교환이 발생하기 전에 Chromium에서 연결을 중단했으므로 사용자 정보는 안전합니다.</translation>
 <translation id="9107467864910557787">내 브라우저는 <ph name="MANAGER" />에서 관리합니다</translation>
@@ -4226,6 +4232,7 @@
 <translation id="9139318394846604261">쇼핑</translation>
 <translation id="9141013498910525015">주소 관리</translation>
 <translation id="9144951720726881238">유효기간:</translation>
+<translation id="9145910032514306808">다시 <ph name="BEGIN_LINK" />로그인<ph name="END_LINK" />한 후 이 탭으로 돌아와 작성 지원 기능을 이용하세요.</translation>
 <translation id="9148507642005240123">수정 실행 취소(&amp;U)</translation>
 <translation id="9148599396704355100">가격이 저렴함</translation>
 <translation id="9150025764986957246">다음과 같은 정보를 입력할 수 있습니다</translation>
diff --git a/components/strings/components_strings_ky.xtb b/components/strings/components_strings_ky.xtb
index cdca249..913dc40 100644
--- a/components/strings/components_strings_ky.xtb
+++ b/components/strings/components_strings_ky.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Чекене китеп сатуучулар</translation>
 <translation id="2048261947532620704">Барак которулууда</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> тилиндеги барактар которулбайт.</translation>
+<translation id="2055461225779831292">Камераларды колдонуп, жылдыруу (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Чычкан курсоруңузду кулпулаңыз</translation>
 <translation id="2056658168519009885">Сайттар жарнамаларды жекелештирип көрсөтүү үчүн Chrome'дон маалымат сурашы мүмкүн.</translation>
 <translation id="2059166748188874810">Муниципалитет</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Жүктөлүп берилген жок</translation>
 <translation id="2301098101308036335">Кайсы вебсайттардын качан ачылганы.</translation>
 <translation id="230286397113210245">"Жашыруун терезени ачуу" баскычы. Жаңы жашыруун терезени ачып, купуя түрдө карап чыгуу үчүн иштетиңиз</translation>
+<translation id="2306124309679506798">Сүңгүтүүчү пайдаланууга уруксат берилсинби?</translation>
 <translation id="2312234273148520048">Татымалдар</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" /> азыраак. Кийинки жолу киргениңизде, айрым сайттар жайыраак жүктөлүшү мүмкүн.</translation>
 <translation id="2316159751672436664">ChromeOS параметрлеринде атайын мүмкүнчүлүктөр куралдарын жекелештирүү</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, серепчинин көрүнүшүн ыңгайлаштыруу үчүн Tab, андан кийин Enter баскычын басыңыз</translation>
 <translation id="3240791268468473923">Коопсуз төлөө үчүн дал келбеген эсептик дайындар барагы ачылды</translation>
 <translation id="324180406144491771">"<ph name="HOST_NAME" />" шилтемелери бөгөттөлдү</translation>
+<translation id="3248329428895535435">Бул сайтта көрүнбөсүн</translation>
 <translation id="3252772880526154546">Архитектура</translation>
 <translation id="3254301855501243548">18 x 22 дюйм</translation>
 <translation id="3255926992597692024">Chromium төлөм ыкмаларын толтуруу параметрлерин өзгөртүүгө аракет кылууда.</translation>
@@ -1605,6 +1608,7 @@
 <translation id="4082333119419111506">Кагаз (сүрөтү менен)</translation>
 <translation id="4082393374666368382">Параметрлер – Башкаруу</translation>
 <translation id="4084219288110917128">Конверт C1</translation>
+<translation id="4085326869263783566">Текст жазгыч. Ачуу үчүн Tab жана enter баскычтарын басыңыз</translation>
 <translation id="4088981014127559358">1-тараптын Y сүрөтүн жылдыруу</translation>
 <translation id="4089152113577680600">14-түпкүч</translation>
 <translation id="4092349052316400070">Даректи толтуруңуз</translation>
@@ -2305,6 +2309,7 @@
 <translation id="5447765697759493033">Бул сайт которулбайт</translation>
 <translation id="5452270690849572955">Бул <ph name="HOST_NAME" /> барагын табуу мүмкүн эмес</translation>
 <translation id="5455374756549232013">Начар саясаттын убакыт белгиси</translation>
+<translation id="5456428544444655325">Эч качан көрсөтүлбөсүн</translation>
 <translation id="5456839782162429664">Автотолтуруу менен төлөгөн сайын кол менен ырастоо</translation>
 <translation id="5457113250005438886">Жараксыз</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> жана дагы <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> байланыш}other{<ph name="CONTACT_PREVIEW" /> жана дагы <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> байланыш}}</translation>
@@ -3784,6 +3789,7 @@
 <translation id="8263001937536038617">Сүрөт жана видео кызматтары</translation>
 <translation id="8265992338205884890">Көрүнүп турган маалымат</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" /> катары кирүүдө</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Өзүнчө документ/Иреттелген көчүрмөлөр</translation>
 <translation id="8269703227894255363">{0,plural, =1{Файлды ачуу бөгөттөлдү}other{<ph name="FILE_COUNT" /> файлды ачуу бөгөттөлдү}}</translation>
 <translation id="8270173610195068258">Кылмыш жана Адилеттик</translation>
@@ -4203,6 +4209,7 @@
 <translation id="9094544726794842788">"Жаккан жок" баскычын басып, ачыла турган форма аркылуу бул натыйжаларды эмне үчүн жактырбаганыңызды толук билдирсеңиз болот</translation>
 <translation id="9095388113577226029">Дагы тилдер...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, iOS параметрлеринен Chrome'ду системанын демейки серепчиси катары коюу үчүн Enter баскычын басыңыз</translation>
+<translation id="9101450247048146228">Камераны колдонуу жана жылдыруу (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">1-түпкүч</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> сайты маалыматыңызды коргоо үчүн адатта шифрлөөнү колдонот. Chromium бул жолу <ph name="SITE" /> сайтына туташууга аракет кылганда, вебсайт адаттан тышкары жана туура эмес эсептик дайындарды жөнөттү. Бул чабуулчу өзүн <ph name="SITE" /> катары көрсөткөнгө аракет кылып жатканда же Wi-Fi'дын кирүү экраны туташууну үзгүлтүккө учуратканда орун алышы мүмкүн. Chromium дайындар алмашылганга чейин туташууну үзүп койгондуктан, маалыматыңыздын коопсуздугу бузулган жок.</translation>
 <translation id="9107467864910557787">Серепчиңиз <ph name="MANAGER" /> тарабынан башкарылат</translation>
@@ -4225,6 +4232,8 @@
 <translation id="9139318394846604261">Соода кылуу</translation>
 <translation id="9141013498910525015">Даректерди башкаруу</translation>
 <translation id="9144951720726881238">Мөөнөтү аяктай турган күн:</translation>
+<translation id="9145910032514306808">Кайра <ph name="BEGIN_LINK" />кирип<ph name="END_LINK" />,
+    жазуу боюнча жардам алуу үчүн бул өтмөккө кайтыңыз</translation>
 <translation id="9148507642005240123">Түзөтүүнү &amp;жасабоо</translation>
 <translation id="9148599396704355100">Баасы төмөн</translation>
 <translation id="9150025764986957246">Төмөнкүдөй нерселерди киргизе аласыз:</translation>
diff --git a/components/strings/components_strings_lo.xtb b/components/strings/components_strings_lo.xtb
index da11527..578d44e 100644
--- a/components/strings/components_strings_lo.xtb
+++ b/components/strings/components_strings_lo.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">ປິດການຕິດຕາມລາຄາແລ້ວ</translation>
 <translation id="127777513559587977">ລາຍການເວົ້າທາງໂທລະທັດ</translation>
 <translation id="1281476433249504884">ສະແຕັກເກີ້ 1</translation>
+<translation id="1281536351321444151">ເພື່ອຕື່ມຂໍ້ມູນໃສ່ IBAN ນີ້ອັດຕະໂນມັດໃນເທື່ອຕໍ່ໄປ, ໃຫ້ບັນທຶກມັນໄວ້ໃນບັນຊີ Google ຂອງທ່ານ</translation>
 <translation id="1282358575813748144">ເຮືອ ແລະ ການຂັບຂີ່ເຮືອ</translation>
 <translation id="1283977499362032052">ປະຫວັດ ແລະ ພອດໂຟລິໂອ</translation>
 <translation id="1285320974508926690">ຢ່າແປເວັບ​ໄຊ​ທ໌ນີ້</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">ຖາດ 8</translation>
 <translation id="1530707389502320859">ເວັບໄຊທີ່ທ່ານຫາກໍພະຍາຍາມເຂົ້າເບິ່ງປາກົດວ່າເປັນເວັບປອມ. ບາງຄັ້ງຜູ້ໂຈມຕີປອມເປັນເວັບໄຊຕ່າງໆໂດຍການເຮັດການປ່ຽນແປງນ້ອຍໆທີ່ເບິ່ງເຫັນໄດ້ຍາກຕໍ່ກັບ URL.</translation>
 <translation id="1532118530259321453">ໜ້ານີ້ບອກ</translation>
+<translation id="1533966801397200693">ໂປຣໄຟລ໌ທີ່ທ່ານເຂົ້າສູ່ລະບົບຫານັ້ນເປັນໂປຣໄຟລ໌ທີ່ມີການຈັດການ. ຜູ້ເບິ່ງແຍງຂອງທ່ານສາມາດປ່ຽນແປງການຕັ້ງຄ່າໂປຣໄຟລ໌ຂອງທ່ານຈາກທາງໄກ, ວິເຄາະຂໍ້ມູນກ່ຽວກັບໂປຣແກຣມທ່ອງເວັບຜ່ານການລາຍງານ ແລະ ເຮັດໜ້າວຽກທີ່ຈຳເປັນອື່ນໆໄດ້. <ph name="BEGIN_LINK" />ສຶກສາເພີ່ມເຕີມ<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">ແປໜ້າ</translation>
 <translation id="1537807545287921620">ບໍ່ສາມາດເຂົ້າເຖິງ PDF ນີ້ໄດ້. ເປີດເມນູບໍລິບົດແລ້ວເປີດໃຊ້ "ສະກັດຂໍ້ຄວາມຈາກ PDF"</translation>
 <translation id="1539840569003678498">ສົ່ງລາຍງານແລ້ວ:</translation>
@@ -1188,6 +1190,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">ລະບຸລະຫັດການຢັ້ງຢືນ <ph name="NUMBER_OF_DIGITS" /> ຕົວເລກ</translation>
 <translation id="3272643614306383237">ໜ້ອຍກວ່າ 1 MB. ບາງເວັບໄຊອາດໂຫຼດຊ້າລົງໃນການເຂົ້າເບິ່ງເທື່ອຕໍ່ໄປຂອງທ່ານ.</translation>
+<translation id="3273738040255912340">ຜູ້ເບິ່ງແຍງຂອງທ່ານສາມາດປ່ຽນແປງໂປຣໄຟລ໌ ແລະ ໂປຣແກຣມທ່ອງເວັບຂອງທ່ານຈາກທາງໄກ, ວິເຄາະຂໍ້ມູນກ່ຽວກັບໂປຣແກຣມທ່ອງເວັບຜ່ານການລາຍງານ ແລະ ເຮັດໜ້າວຽກທີ່ຈຳເປັນອື່ນໆໄດ້. ການເຄື່ອນໄຫວຢູ່ອຸປະກອນນີ້ອາດຖືກຈັດການຢູ່ນອກ Chromium ໄດ້ນຳ. <ph name="BEGIN_LINK" />ສຶກສາເພີ່ມເຕີມ<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{ນະໂຍບາຍຂອງຜູ້ເບິ່ງແຍງລະບົບບໍ່ແນະນຳໃຫ້ເປີດໄຟລ໌ນີ້ໃນ <ph name="DESTINATION_NAME" />}other{ນະໂຍບາຍຂອງຜູ້ເບິ່ງແຍງລະບົບບໍ່ແນະນຳໃຫ້ເປີດໄຟລ໌ເຫຼົ່ານີ້ໃນ <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">ອົງການຂອງທ່ານ, <ph name="ENROLLMENT_DOMAIN" />, ໄດ້ສົ່ງຂໍ້ມູນຈຳນວນໜຶ່ງໄປໃຫ້ເວັບໄຊຕໍ່ໄປນີ້ແລ້ວ ເຊັ່ນ: ການຕັ້ງຄ່າ ຫຼື ນະໂຍບາຍ.</translation>
 <translation id="3286372614333682499">ແນວຕັ້ງ</translation>
@@ -3892,6 +3895,7 @@
 <translation id="8446884382197647889">ຮຽນ​ຮູ້​ເພີ່ມ​ເຕີມ</translation>
 <translation id="8449155699563577224">17 x 24 ນິ້ວ</translation>
 <translation id="8449836157089738489">ເປີດທັງໝົດໃນກຸ່ມແຖບໃໝ່</translation>
+<translation id="84561192812921051">ຜູ້ເບິ່ງແຍງຂອງທ່ານສາມາດປ່ຽນແປງໂປຣໄຟລ໌ ແລະ ໂປຣແກຣມທ່ອງເວັບຂອງທ່ານຈາກທາງໄກ, ວິເຄາະຂໍ້ມູນກ່ຽວກັບໂປຣແກຣມທ່ອງເວັບຜ່ານການລາຍງານ ແລະ ເຮັດໜ້າວຽກທີ່ຈຳເປັນອື່ນໆໄດ້. ການເຄື່ອນໄຫວຢູ່ອຸປະກອນນີ້ອາດຖືກຈັດການຢູ່ນອກ Chrome ໄດ້ນຳ.  <ph name="BEGIN_LINK" />ສຶກສາເພີ່ມເຕີມ<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">ບໍ່ມີກຳນົດ</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">ເປີດໃຊ້ມັນ</translation>
diff --git a/components/strings/components_strings_lt.xtb b/components/strings/components_strings_lt.xtb
index 95fcb24..014cc7d 100644
--- a/components/strings/components_strings_lt.xtb
+++ b/components/strings/components_strings_lt.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Kainų stebėjimas išjungtas</translation>
 <translation id="127777513559587977">TV pokalbių laidos</translation>
 <translation id="1281476433249504884">1 dėtuvė</translation>
+<translation id="1281536351321444151">Jei norite kitą kartą automatiškai užpildyti šį IBAN, išsaugokite jį „Google“ paskyroje</translation>
 <translation id="1282358575813748144">Valtys ir laivai</translation>
 <translation id="1283977499362032052">Gyvenimo aprašymai ir portfeliai</translation>
 <translation id="1285320974508926690">Niekada neversti šios svetainės</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">8 dėklas</translation>
 <translation id="1530707389502320859">Svetainė, kurioje ką tik bandėte apsilankyti, atrodo kaip suklastota svetainė. Užpuolėjai kartais sukuria svetainių kopijas ir atlieka nedidelius, sunkiai pastebimus URL pakeitimus.</translation>
 <translation id="1532118530259321453">Šiame puslapyje nurodyta:</translation>
+<translation id="1533966801397200693">Profilis, prie kurio esate prisijungę, yra tvarkomas profilis. Administratorius gali nuotoliniu būdu keisti profilio nustatymus, analizuoti informaciją apie naršyklę pateikdamas ataskaitas ir atlikti kitas reikiamas užduotis. <ph name="BEGIN_LINK" />Sužinokite daugiau<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Versti puslapį</translation>
 <translation id="1537807545287921620">Šis PDF failas nepasiekiamas. Atidarykite kontekstinį meniu ir įjunkite parinktį „išskirti tekstą iš PDF“</translation>
 <translation id="1539840569003678498">Ataskaita išsiųsta:</translation>
@@ -568,6 +570,7 @@
 <translation id="2046951263634619614">Knygų mažmenininkai</translation>
 <translation id="2048261947532620704">Verčiamas puslapis</translation>
 <translation id="2053111141626950936">Puslapiai, parašyti <ph name="LANGUAGE" />, verčiami nebus.</translation>
+<translation id="2055461225779831292">Naudoti ir judinti vaizdo kameras (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Užrakinti pelės žymeklį</translation>
 <translation id="2056658168519009885">Svetainės gali prašyti „Chrome“ informacijos, kad galėtų suasmeninti jums rodomus skelbimus.</translation>
 <translation id="2059166748188874810">Savivaldybė</translation>
@@ -715,6 +718,7 @@
 <translation id="2300306941146563769">Neįkelta</translation>
 <translation id="2301098101308036335">Kokiose svetainėse lankomasi ir kada.</translation>
 <translation id="230286397113210245">Mygtukas „Atidaryti inkognito langą“; suaktyvinkite, kad būtų atidarytas naujas privataus naršymo inkognito langas</translation>
+<translation id="2306124309679506798">Leisti įtraukiančią patirtį?</translation>
 <translation id="2312234273148520048">Prieskoniai ir padažai</translation>
 <translation id="2316087952091171402">Mažiau nei <ph name="UPPER_ESTIMATE" />. Per kitą apsilankymą kai kurios svetainės gali būti įkeltos gerokai lėčiau.</translation>
 <translation id="2316159751672436664">Suasmeninkite pritaikomumo įrankius „Chrome“ OS nustatymuose</translation>
@@ -1171,6 +1175,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />; paspauskite tabuliavimo klavišą, tada – „Enter“, jei norite tinkinti naršyklės išvaizdą</translation>
 <translation id="3240791268468473923">Saugaus mokėjimo prisijungimo duomenų lapas, informuojantis, kad atitinkančių prisijungimo duomenų nerasta, atidarytas</translation>
 <translation id="324180406144491771">„<ph name="HOST_NAME" />“ nuorodos užblokuotos</translation>
+<translation id="3248329428895535435">Nerodyti šioje svetainėje</translation>
 <translation id="3252772880526154546">Architektūra</translation>
 <translation id="3254301855501243548">18 x 22 col.</translation>
 <translation id="3255926992597692024">„Chromium“ bando keisti mokėjimo metodų pildymo nustatymus.</translation>
@@ -1186,6 +1191,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Įveskite <ph name="NUMBER_OF_DIGITS" /> skaitm. patvirtinimo kodą</translation>
 <translation id="3272643614306383237">Mažiau nei 1 MB. Per kitą apsilankymą kai kurios svetainės gali būti įkeltos gerokai lėčiau.</translation>
+<translation id="3273738040255912340">Administratorius gali nuotoliniu būdu atlikti profilio ir naršyklės pakeitimų, analizuoti informaciją apie naršyklę pateikdamas ataskaitas ir atlikti kitas reikiamas užduotis. Veiklą šiame įrenginyje taip pat galima tvarkyti ne naršyklėje „Chromium“. <ph name="BEGIN_LINK" />Sužinokite daugiau<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Pagal administratoriaus politikos nuostatas nerekomenduojama atidaryti šio failo naudojant <ph name="DESTINATION_NAME" />}one{Pagal administratoriaus politikos nuostatas nerekomenduojama atidaryti šių failų naudojant <ph name="DESTINATION_NAME" />}few{Pagal administratoriaus politikos nuostatas nerekomenduojama atidaryti šių failų naudojant <ph name="DESTINATION_NAME" />}many{Pagal administratoriaus politikos nuostatas nerekomenduojama atidaryti šių failų naudojant <ph name="DESTINATION_NAME" />}other{Pagal administratoriaus politikos nuostatas nerekomenduojama atidaryti šių failų naudojant <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Jūsų organizacija (<ph name="ENROLLMENT_DOMAIN" />) nusiuntė tam tikros informacijos, pvz., informacijos apie nustatymus ar politikos nuostatas, toliau nurodytoms svetainėms.</translation>
 <translation id="3286372614333682499">portretas</translation>
@@ -1604,6 +1610,7 @@
 <translation id="4082333119419111506">Popierius (iš anksto atspausdintas)</translation>
 <translation id="4082393374666368382">Nustatymai – valdymas</translation>
 <translation id="4084219288110917128">C1 vokas</translation>
+<translation id="4085326869263783566">Pagalba rašant. Paspauskite tabuliavimo klavišą ir „Enter“, kad atidarytumėte</translation>
 <translation id="4088981014127559358">1 pusė: sukti vaizdą pagal Y ašį</translation>
 <translation id="4089152113577680600">Keturioliktas dėklas</translation>
 <translation id="4092349052316400070">Užpildyti adresą</translation>
@@ -3784,6 +3791,7 @@
 <translation id="8263001937536038617">Fotografavimo ir filmavimo paslaugos</translation>
 <translation id="8265992338205884890">Matomi duomenys</translation>
 <translation id="8267698848189296333">Prisijungiama kaip <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Atskiras dokumentas / sugretintos kopijos</translation>
 <translation id="8269703227894255363">{0,plural, =1{Failas užblokuotas, kad nebūtų galima atidaryti}one{<ph name="FILE_COUNT" /> failas užblokuotas, kad nebūtų galima atidaryti}few{<ph name="FILE_COUNT" /> failai užblokuoti, kad nebūtų galima atidaryti}many{<ph name="FILE_COUNT" /> failo užblokuota, kad nebūtų galima atidaryti}other{<ph name="FILE_COUNT" /> failų užblokuota, kad nebūtų galima atidaryti}}</translation>
 <translation id="8270173610195068258">Nusikaltimai ir teisingumas</translation>
@@ -3888,6 +3896,7 @@
 <translation id="8446884382197647889">Sužinokite daugiau</translation>
 <translation id="8449155699563577224">17 x 24 col.</translation>
 <translation id="8449836157089738489">Atidaryti viską naujoje skirtukų grupėje</translation>
+<translation id="84561192812921051">Administratorius gali nuotoliniu būdu atlikti profilio ir naršyklės pakeitimų, analizuoti informaciją apie naršyklę pateikdamas ataskaitas ir atlikti kitas reikiamas užduotis. Veiklą šiame įrenginyje taip pat galima tvarkyti ne naršyklėje „Chrome“.  <ph name="BEGIN_LINK" />Sužinokite daugiau<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Neribota</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Įjungti</translation>
@@ -4203,6 +4212,7 @@
 <translation id="9094544726794842788">Spustelėjus mygtuką „Nepatinka“ atidaroma forma, kurią naudojant galima pateikti išsamų atsiliepimą apie tai, kodėl jums nepatinka šie rezultatai</translation>
 <translation id="9095388113577226029">Daugiau kalbų...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />; paspauskite tabuliavimo klavišą, tada „Enter“, kad nustatytumėte „Chrome“ kaip numatytąją sistemos naršyklę „iOS“ nustatymuose</translation>
+<translation id="9101450247048146228">Naudoti ir judinti vaizdo kameras (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">1 dėklas</translation>
 <translation id="9103872766612412690">Svetainėje <ph name="SITE" /> įprastai naudojama šifruotė informacijai apsaugoti. Šį kartą „Chromium“ bandant prisijungti prie <ph name="SITE" />, ji pateikė neįprastus ir netinkamus prisijungimo duomenis. Gali būti, kad užpuolėjas bando apsimesti svetaine <ph name="SITE" /> arba „Wi-Fi“ prisijungimo ekrane nutrūko ryšys. Jūsų informacija vis tiek liko apsaugota, nes „Chromium“ sustabdė prisijungimą prieš apsikeitimą bet kokiais duomenimis.</translation>
 <translation id="9107467864910557787">Jūsų naršyklę tvarko <ph name="MANAGER" /></translation>
@@ -4225,6 +4235,8 @@
 <translation id="9139318394846604261">Apsipirkimas</translation>
 <translation id="9141013498910525015">Tvarkyti adresus</translation>
 <translation id="9144951720726881238">Galiojimo data:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Prisijunkite<ph name="END_LINK" /> 
+    dar kartą, tada sugrįžkite į šį skirtuką ir gaukite pagalbos rašydami</translation>
 <translation id="9148507642005240123">&amp;Anuliuoti redagavimą</translation>
 <translation id="9148599396704355100">Kaina yra maža</translation>
 <translation id="9150025764986957246">Galite įvesti, pvz.:</translation>
diff --git a/components/strings/components_strings_lv.xtb b/components/strings/components_strings_lv.xtb
index a859cbaa..a0298c3 100644
--- a/components/strings/components_strings_lv.xtb
+++ b/components/strings/components_strings_lv.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Cenas izsekošana ir izslēgta</translation>
 <translation id="127777513559587977">TV sarunu šovi</translation>
 <translation id="1281476433249504884">1. izvades vieta</translation>
+<translation id="1281536351321444151">Lai nākamreiz automātiski aizpildītu šo IBAN, saglabājiet to savā Google kontā.</translation>
 <translation id="1282358575813748144">Laivas un peldlīdzekļi</translation>
 <translation id="1283977499362032052">CV un portfolio</translation>
 <translation id="1285320974508926690">Nekad netulkot šo vietni</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">8. paplāte</translation>
 <translation id="1530707389502320859">Vietne, ko tikko mēģinājāt apmeklēt, šķiet viltota. Uzbrucēji dažkārt atdarina vietnes, veicot nelielas un grūti pamanāmas izmaiņas vietrādī URL.</translation>
 <translation id="1532118530259321453">Šajā lapā ir rakstīts</translation>
+<translation id="1533966801397200693">Profils, kurā esat pierakstījies, ir pārvaldīts profils. Administrators var attālināti veikt izmaiņas jūsu profila iestatījumos, analizēt informāciju par pārlūku, izmantojot pārskatus, kā arī veikt citus nepieciešamos uzdevumus. <ph name="BEGIN_LINK" />Uzziniet vairāk<ph name="END_LINK" />.</translation>
 <translation id="1536390784834419204">Tulkot lapu</translation>
 <translation id="1537807545287921620">Šis PDF fails nav pieejams. Atveriet kontekstizvēlni un iespējojiet opciju “Iegūt tekstu no PDF”.</translation>
 <translation id="1539840569003678498">Pārskata nosūtīšanas laiks:</translation>
@@ -568,6 +570,7 @@
 <translation id="2046951263634619614">Grāmatu mazumtirdzniecība</translation>
 <translation id="2048261947532620704">Notiek lapas tulkošana…</translation>
 <translation id="2053111141626950936">Lapas netiks tulkotas no šīs valodas: <ph name="LANGUAGE" /></translation>
+<translation id="2055461225779831292">Kameru izmantošana un kustināšana (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Bloķēt peles rādītāju</translation>
 <translation id="2056658168519009885">Vietnes var pieprasīt pārlūkam Chrome informāciju, lai palīdzētu personalizēt jums rādītās reklāmas.</translation>
 <translation id="2059166748188874810">Pašvaldība</translation>
@@ -715,6 +718,7 @@
 <translation id="2300306941146563769">Nav augšupielādēts</translation>
 <translation id="2301098101308036335">Kuras vietnes tika apmeklētas un to apmeklēšanas laiks.</translation>
 <translation id="230286397113210245">Poga “Atvērt inkognito režīma logu”. Aktivizējiet, lai atvērtu jaunu inkognito režīma logu privātai pārlūkošanai.</translation>
+<translation id="2306124309679506798">Vai atļaut visaptverošu pieredzi?</translation>
 <translation id="2312234273148520048">Piedevas un mērces</translation>
 <translation id="2316087952091171402">Mazāk nekā <ph name="UPPER_ESTIMATE" />. Dažas vietnes nākamā apmeklējuma laikā, iespējams, tiks ielādētas lēnāk.</translation>
 <translation id="2316159751672436664">Personalizēt pieejamības rīkus Chrome OS iestatījumos</translation>
@@ -1170,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />. Lai pielāgotu pārlūka izskatu, nospiediet tabulēšanas taustiņu un pēc tam — taustiņu Enter.</translation>
 <translation id="3240791268468473923">Ir atvērta lapa ar akreditācijas datiem, kas neatbilst drošu maksājumu akreditācijas datiem</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” saites ir bloķētas</translation>
+<translation id="3248329428895535435">Nerādīt šajā vietnē</translation>
 <translation id="3252772880526154546">Arhitektūra</translation>
 <translation id="3254301855501243548">18 x 22 collas</translation>
 <translation id="3255926992597692024">Pārlūkā Chromium tiek mēģināts mainīt maksājuma veidu aizpildes iestatījumus.</translation>
@@ -1185,6 +1190,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Ievadiet <ph name="NUMBER_OF_DIGITS" /> ciparu verifikācijas kodu</translation>
 <translation id="3272643614306383237">Mazāk nekā 1 MB. Dažas vietnes nākamā apmeklējuma laikā, iespējams, tiks ielādētas lēnāk.</translation>
+<translation id="3273738040255912340">Administrators var attālināti veikt izmaiņas jūsu profilā un pārlūkā, analizēt informāciju par pārlūku, izmantojot pārskatus, kā arī veikt citus nepieciešamos uzdevumus. Darbības šajā ierīcē var pārvaldīt arī ārpus pārlūka Chromium. <ph name="BEGIN_LINK" />Uzziniet vairāk<ph name="END_LINK" />.</translation>
 <translation id="3281350579597955952">{0,plural, =1{Administratora politika nosaka, ka nav ieteicams atvērt šo failu šeit: <ph name="DESTINATION_NAME" />.}zero{Administratora politika nosaka, ka nav ieteicams atvērt šo failu šeit: <ph name="DESTINATION_NAME" />.}one{Administratora politika nosaka, ka nav ieteicams atvērt šo failu šeit: <ph name="DESTINATION_NAME" />.}other{Administratora politika nosaka, ka nav ieteicams atvērt šo failu šeit: <ph name="DESTINATION_NAME" />.}}</translation>
 <translation id="3282085321714087552">Jūsu organizācija (<ph name="ENROLLMENT_DOMAIN" />) ir nosūtījusi informāciju, piemēram, iestatījumus vai politikas, uz tālāk norādītajām vietnēm.</translation>
 <translation id="3286372614333682499">portrets</translation>
@@ -1602,6 +1608,7 @@
 <translation id="4082333119419111506">Papīrs (apdrukāts)</translation>
 <translation id="4082393374666368382">Iestatījumi — pārvaldība</translation>
 <translation id="4084219288110917128">Aploksne C1</translation>
+<translation id="4085326869263783566">Palīdzība rakstīšanā. Lai atvērtu funkcijas logu, nospiediet tabulēšanas taustiņu un taustiņu Enter.</translation>
 <translation id="4088981014127559358">1. puses attēla nobīde uz Y ass</translation>
 <translation id="4089152113577680600">14. paplāte</translation>
 <translation id="4092349052316400070">Aizpildiet adresi</translation>
@@ -3782,6 +3789,7 @@
 <translation id="8263001937536038617">Fotografēšanas un video pakalpojumi</translation>
 <translation id="8265992338205884890">Redzamie dati</translation>
 <translation id="8267698848189296333">Notiek pierakstīšanās lietotāja <ph name="USERNAME" /> kontā</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Atsevišķi dokumenti/kopijas ar sakārtotu lapu secību</translation>
 <translation id="8269703227894255363">{0,plural, =1{Faila atvēršana ir bloķēta}zero{<ph name="FILE_COUNT" /> failu atvēršana ir bloķēta}one{<ph name="FILE_COUNT" /> faila atvēršana ir bloķēta}other{<ph name="FILE_COUNT" /> failu atvēršana ir bloķēta}}</translation>
 <translation id="8270173610195068258">Noziegumi un tiesībsargājošās iestādes</translation>
@@ -3886,6 +3894,7 @@
 <translation id="8446884382197647889">Uzziniet vairāk</translation>
 <translation id="8449155699563577224">17 x 24 collas</translation>
 <translation id="8449836157089738489">Atvērt visu jaunā ciļņu grupā</translation>
+<translation id="84561192812921051">Administrators var attālināti veikt izmaiņas jūsu profilā un pārlūkā, analizēt informāciju par pārlūku, izmantojot pārskatus, kā arī veikt citus nepieciešamos uzdevumus. Darbības šajā ierīcē var pārvaldīt arī ārpus pārlūka Chrome.  <ph name="BEGIN_LINK" />Uzziniet vairāk<ph name="END_LINK" />.</translation>
 <translation id="8457125768502047971">Nenoteiktu periodu</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Ieslēgt</translation>
@@ -4201,6 +4210,7 @@
 <translation id="9094544726794842788">Nospiežot pogu “Nepatīk”, tiek atvērta veidlapa, kurā varat sniegt detalizētas atsauksmes par to, kāpēc jums nepatīk šie rezultāti.</translation>
 <translation id="9095388113577226029">Citas valodas…</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />; nospiediet tabulēšanas taustiņu un pēc tam — taustiņu Enter, lai iestatītu Chrome kā sistēmas noklusējuma pārlūku iOS iestatījumos.</translation>
+<translation id="9101450247048146228">Kameras lietojums un kustība (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">1. paplāte</translation>
 <translation id="9103872766612412690">Vietnē <ph name="SITE" /> informācijas aizsargāšanai parasti tiek izmantota šifrēšana. Kad pārlūkā Chromium tika mēģināts izveidot savienojumu ar vietni <ph name="SITE" />, šoreiz tā nosūtīja neparastus un nepareizus akreditācijas datus. Iespējams, tas notika, jo uzbrucējs mēģināja uzdoties par vietni <ph name="SITE" />, vai arī Wi-Fi pierakstīšanās ekrāns pārtrauca savienojumu. Jūsu informācija joprojām ir drošībā, jo pārlūks Chromium pārtrauca savienojumu, pirms tika veikta jebkādu datu apmaiņa.</translation>
 <translation id="9107467864910557787">Jūsu pārlūku pārvalda <ph name="MANAGER" /></translation>
@@ -4223,6 +4233,7 @@
 <translation id="9139318394846604261">Pirkumi</translation>
 <translation id="9141013498910525015">Pārvaldīt adreses</translation>
 <translation id="9144951720726881238">Derīguma termiņš:</translation>
+<translation id="9145910032514306808">Vēlreiz <ph name="BEGIN_LINK" />pierakstieties<ph name="END_LINK" /> un pēc tam atgriezieties šajā cilnē, lai saņemtu palīdzību rakstīšanā.</translation>
 <translation id="9148507642005240123">&amp;Atsaukt labojumu</translation>
 <translation id="9148599396704355100">Cena ir zema</translation>
 <translation id="9150025764986957246">Varat ievadīt, piemēram:</translation>
diff --git a/components/strings/components_strings_mk.xtb b/components/strings/components_strings_mk.xtb
index fc5f672..0831e6c 100644
--- a/components/strings/components_strings_mk.xtb
+++ b/components/strings/components_strings_mk.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Следењето на цената е исклучено</translation>
 <translation id="127777513559587977">Разговорни емисии на ТВ</translation>
 <translation id="1281476433249504884">Фиока за складирање 1</translation>
+<translation id="1281536351321444151">За автоматско пополнување на овој IBAN следниот пат, зачувајте го во вашата сметка на Google</translation>
 <translation id="1282358575813748144">Чамци и пловни објекти</translation>
 <translation id="1283977499362032052">Резимеа и портфолија</translation>
 <translation id="1285320974508926690">Никогаш не преведувај ја оваа локација</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Фиока 8</translation>
 <translation id="1530707389502320859">Сајтот којшто се обидовте да го посетите изгледа лажно. Напаѓачите понекогаш имитираат сајтови, така што вршат мали, тешко забележливи промени во URL-адресата.</translation>
 <translation id="1532118530259321453">Оваа страница вели</translation>
+<translation id="1533966801397200693">Профилот во којшто сте најавени е управуван профил. Администраторот може да врши промени во поставките за вашиот профил далечински, да ги анализира информациите за прелистувачот преку извештаите и да извршува други неопходни задачи. <ph name="BEGIN_LINK" />Дознајте повеќе<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Преведи ја страницата</translation>
 <translation id="1537807545287921620">Не може да се пристапи до оваа PDF-датотека. Отворете го контекстуалното мени и вклучете „Извлекувај текст од PDF“</translation>
 <translation id="1539840569003678498">Извештајот е испратен на:</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Супер Б</translation>
 <translation id="3272112314896217187">Внесете го <ph name="NUMBER_OF_DIGITS" />-цифрениот код за потврда</translation>
 <translation id="3272643614306383237">Помалку од 1 MB. Некои сајтови можеби ќе се вчитуваат побавно при вашата следна посета.</translation>
+<translation id="3273738040255912340">Администраторот може да врши промени во вашиот профил и прелистувач далечински, да ги анализира информациите за прелистувачот преку извештаите и да извршува други неопходни задачи. Со активноста на уредов може да се управува и надвор од Chromium. <ph name="BEGIN_LINK" />Дознајте повеќе<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Администраторското правило не препорачува да се отвори датотекава во <ph name="DESTINATION_NAME" />}one{Администраторското правило не препорачува да се отворат датотекиве во <ph name="DESTINATION_NAME" />}other{Администраторското правило не препорачува да се отворат датотекиве во <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Вашата организација, <ph name="ENROLLMENT_DOMAIN" />, испратила одредени информации на следниве веб-сајтови, како поставки или правила.</translation>
 <translation id="3286372614333682499">портрет</translation>
@@ -3886,6 +3889,7 @@
 <translation id="8446884382197647889">Дознај повеќе</translation>
 <translation id="8449155699563577224">17 x 24 инчи</translation>
 <translation id="8449836157089738489">Отвори ги сите во нова група картички</translation>
+<translation id="84561192812921051">Администраторот може да врши промени во вашиот профил и прелистувач далечински, да ги анализира информациите за прелистувачот преку извештаите и да извршува други неопходни задачи. Со активноста на уредов може да се управува и надвор од Chrome.  <ph name="BEGIN_LINK" />Дознајте повеќе<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Неодредено</translation>
 <translation id="8458202188076138974">Писмо екстра</translation>
 <translation id="8460854335417802511">Вклучи</translation>
diff --git a/components/strings/components_strings_mn.xtb b/components/strings/components_strings_mn.xtb
index 54782f5..ba16fb9 100644
--- a/components/strings/components_strings_mn.xtb
+++ b/components/strings/components_strings_mn.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Үнэ хянахыг унтраах</translation>
 <translation id="127777513559587977">ТВ-ийн ярилцлагын нэвтрүүлэг</translation>
 <translation id="1281476433249504884">Гарах цаасыг зэрэгцүүлэх тавцан 1</translation>
+<translation id="1281536351321444151">Олон улсын банк акаунтны энэ дугаарыг дараагийн удаа автоматаар бөглөхийн тулд Google Бүртгэлдээ хадгална уу</translation>
 <translation id="1282358575813748144">Завь болон хөлөг онгоц</translation>
 <translation id="1283977499362032052">Ажлын анкет болон портфолионууд</translation>
 <translation id="1285320974508926690">Энэ сайтыг хэзээ ч бүү хөрвүүл</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Гарах цаасны тавиур 8</translation>
 <translation id="1530707389502320859">Таны дөнгөж сая зочлохыг оролдсон сайт хуурамч юм шиг харагдаж байна. Халдагч этгээдүүд заримдаа харахад хэцүү, бага зэргийн өөрчлөлтийг URL-д оруулах замаар сайтыг дуурайдаг.</translation>
 <translation id="1532118530259321453">Энэ хуудас хэлэхдээ</translation>
+<translation id="1533966801397200693">Таны нэвтэрсэн профайл хяналттай профайл байна. Танай администратор профайлын тань тохиргоонд зайнаас өөрчлөлт хийх, тайлангаар дамжуулан хөтчийн талаарх мэдээллийг задлан шинжлэх, бусад шаардлагатай ажлыг гүйцэтгэх боломжтой. <ph name="BEGIN_LINK" />Нэмэлт мэдээлэл авах<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Хуудсыг орчуулах</translation>
 <translation id="1537807545287921620">Энэ PDF-д хандах боломжгүй. Хам сэдэв цэсийг нээж, "PDF-с текст задлах"-ыг асаана уу</translation>
 <translation id="1539840569003678498">Тайланг илгээсэн:</translation>
@@ -568,6 +570,7 @@
 <translation id="2046951263634619614">Номын жижиглэн борлуулагчид</translation>
 <translation id="2048261947532620704">Хуудсыг орчуулж байна</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> хэл дээрх хуудсыг орчуулахгүй.</translation>
+<translation id="2055461225779831292">Таны камерыг ашиглах, хөдөлгөх (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Таны хулганын заагчийг түгжих</translation>
 <translation id="2056658168519009885">Сайтууд таны хардаг зарыг хувийн болгоход туслахын тулд Chrome-с мэдээлэл хүсэх боломжтой.</translation>
 <translation id="2059166748188874810">Хотын захиргаа</translation>
@@ -715,6 +718,7 @@
 <translation id="2300306941146563769">Байршуулаагүй</translation>
 <translation id="2301098101308036335">Аль вебсайтад хэзээ зочилсон болох.</translation>
 <translation id="230286397113210245">Нууцлалтай цонхыг нээх товчлуур, хувиараа үзэхээр шинэ нууцлалтай цонхыг нээхийн тулд идэвхжүүлнэ үү</translation>
+<translation id="2306124309679506798">Илүү бодит мэдрэмж авахыг зөвшөөрөх үү?</translation>
 <translation id="2312234273148520048">Амтлагч болон сүмснүүд</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" />-с бага байна. Таныг дараагийн удаа зочлоход зарим сайт илүү удаан ачаалж магадгүй.</translation>
 <translation id="2316159751672436664">ChromeOS-н тохиргоонд хандалтын хэрэгслээ хувийн болгоно уу</translation>
@@ -1171,6 +1175,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, Хөтчийнхөө харагдах байдлыг өөрчлөхийн тулд tab, дараа нь Enter дээр дарна уу</translation>
 <translation id="3240791268468473923">Тохирох мандат үнэмлэхгүй аюулгүй төлбөрийн мандат үнэмлэхийн хүснэгтийг нээсэн</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” холбоосууд блоклосон байна</translation>
+<translation id="3248329428895535435">Энэ сайт дээр бүү харуул</translation>
 <translation id="3252772880526154546">Архитектур</translation>
 <translation id="3254301855501243548">18 x 22 инч</translation>
 <translation id="3255926992597692024">Chromium төлбөрийн хэрэгсэл бөглөх тохиргоог өөрчлөхөөр оролдож байна.</translation>
@@ -1186,6 +1191,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187"><ph name="NUMBER_OF_DIGITS" /> оронтой баталгаажуулах код оруулна уу</translation>
 <translation id="3272643614306383237">1 МБ-аас бага. Таныг дараагийн удаа зочлоход зарим сайт илүү удаан ачаалж магадгүй.</translation>
+<translation id="3273738040255912340">Танай администратор профайл, хөтчид тань зайнаас өөрчлөлт хийх, тайлангаар дамжуулан хөтчийн талаарх мэдээллийг задлан шинжлэх, бусад шаардлагатай ажлыг гүйцэтгэх боломжтой. Энэ төхөөрөмж дээрх үйл ажиллагааг мөн Chromium-с гадуур удирдаж болно. <ph name="BEGIN_LINK" />Нэмэлт мэдээлэл авах<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Администраторын бодлого энэ файлыг <ph name="DESTINATION_NAME" />-д нээхийг санал болгодоггүй}other{Администраторын бодлого эдгээр файлыг <ph name="DESTINATION_NAME" />-д нээхийг санал болгодоггүй}}</translation>
 <translation id="3282085321714087552">Танай байгууллага, <ph name="ENROLLMENT_DOMAIN" /> дараах вебсайтууд руу тохиргоо эсвэл бодлого зэрэг зарим мэдээллийг илгээсэн.</translation>
 <translation id="3286372614333682499">хөрөг зураг</translation>
@@ -1604,6 +1610,7 @@
 <translation id="4082333119419111506">Цаас (урьдчилж хэвлэсэн)</translation>
 <translation id="4082393374666368382">Тохиргоо - Удирдлага</translation>
 <translation id="4084219288110917128">Дугтуй C1</translation>
+<translation id="4085326869263783566">Надад бичихэд тусал. Нээхийн тулд Tab, дараа нь enter-г дарна уу</translation>
 <translation id="4088981014127559358">Хуудасны нүүрэн тал дээр Y тэнхлэгийн дагуу зураг шилжүүлэх</translation>
 <translation id="4089152113577680600">Тавиур 14</translation>
 <translation id="4092349052316400070">Хаяг бөглөх</translation>
@@ -2304,6 +2311,7 @@
 <translation id="5447765697759493033">Энэ сайтыг орчуулахгүй</translation>
 <translation id="5452270690849572955">Энэ <ph name="HOST_NAME" /> хуудас олдсонгүй</translation>
 <translation id="5455374756549232013">Журмын кодлол сул байна</translation>
+<translation id="5456428544444655325">Хэзээ ч бүү харуул</translation>
 <translation id="5456839782162429664">Таныг автоматаар бөглөх хэсгийг ашиглан төлөх бүрд гар аргаар баталгаажуулах</translation>
 <translation id="5457113250005438886">Хүчингүй</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> болон бусад <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" /> болон бусад <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation>
@@ -3782,6 +3790,7 @@
 <translation id="8263001937536038617">Зураг болон видеоны үйлчилгээнүүд</translation>
 <translation id="8265992338205884890">Харагдах өгөгдөл</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" />-р нэвтэрч байна</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Тусдаа документ/Зэрэгцүүлсэн хувь</translation>
 <translation id="8269703227894255363">{0,plural, =1{Файлыг нээхийг блоклосон}other{<ph name="FILE_COUNT" /> файлыг нээхийг блоклосон}}</translation>
 <translation id="8270173610195068258">Гэмт хэрэг, шударга ёс</translation>
@@ -3886,6 +3895,7 @@
 <translation id="8446884382197647889">Дэлгэрэнгүй мэдээлэл</translation>
 <translation id="8449155699563577224">17 x 24 инч</translation>
 <translation id="8449836157089738489">Бүгдийг шинэ табын бүлэгт нээх</translation>
+<translation id="84561192812921051">Танай администратор профайл, хөтчид тань зайнаас өөрчлөлт хийх, тайлангаар дамжуулан хөтчийн талаарх мэдээллийг задлан шинжлэх, бусад шаардлагатай ажлыг гүйцэтгэх боломжтой. Энэ төхөөрөмж дээрх үйл ажиллагааг мөн Chrome-с гадуур удирдаж болно.  <ph name="BEGIN_LINK" />Нэмэлт мэдээлэл авах<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Тодорхойгүй</translation>
 <translation id="8458202188076138974">Илүү том захидал</translation>
 <translation id="8460854335417802511">Үүнийг асаах</translation>
@@ -4200,6 +4210,7 @@
 <translation id="9094544726794842788">Муу тэмдэглэгээ нь танд эдгээр илэрц яагаад таалагдаагүй талаарх дэлгэрэнгүй санал хүсэлтийг илгээх маягтыг нээнэ</translation>
 <translation id="9095388113577226029">Бусад хэл...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, iOS-н тохиргоонд Chrome-г системийн өгөгдмөл хөтөч болгон тохируулахын тулд эхлээд tab, дараа нь Enter дээр дарна уу</translation>
+<translation id="9101450247048146228">Камерын ашиглалт, хөдөлгөөн (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Гарах цаасны тавиур 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> ихэвчлэн таны мэдээллийг хамгаалах зорилгоор шифр ашигладаг. Энэ удаад Chromium <ph name="SITE" />-тай холбогдохыг оролдоход тус веб сайтаас хэвийн бус, буруу өгөгдөл илгээлээ. Халдагч <ph name="SITE" /> юм шиг дүр үзүүлж байгаа, эсвэл Wi-Fi-д нэвтрэх дэлгэц холболтод саад учруулсан байж болзошгүй. Chromium ямар нэгэн өгөгдөл солилцохоос өмнө холболтыг зогсоосон тул таны мэдээлэл аюулгүй.</translation>
 <translation id="9107467864910557787"><ph name="MANAGER" /> таны хөтчийг удирддаг</translation>
@@ -4222,6 +4233,8 @@
 <translation id="9139318394846604261">Дэлгүүр</translation>
 <translation id="9141013498910525015">Хаяг удирдах</translation>
 <translation id="9144951720726881238">Хүчинтэй хугацаа:</translation>
+<translation id="9145910032514306808">Бичих тусламж 
+    авахын тулд дахин <ph name="BEGIN_LINK" />нэвтрээд<ph name="END_LINK" />, энэ таб руу буцаж ирнэ үү</translation>
 <translation id="9148507642005240123">&amp; Засварлах үйлдлийг буцаах</translation>
 <translation id="9148599396704355100">Үнэ хямд байна</translation>
 <translation id="9150025764986957246">Та дараах зүйлсийг оруулах боломжтой. Жишээ нь:</translation>
diff --git a/components/strings/components_strings_mr.xtb b/components/strings/components_strings_mr.xtb
index 756853c..c946f2500 100644
--- a/components/strings/components_strings_mr.xtb
+++ b/components/strings/components_strings_mr.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">किमतीचा बंद ठेवणे बंद आहे</translation>
 <translation id="127777513559587977">टीव्ही टॉक शो</translation>
 <translation id="1281476433249504884">स्टॅकर १</translation>
+<translation id="1281536351321444151">पुढच्यावेळी हा IBAN ऑटोफिल करण्यासाठी, तो तुमच्या Google खात्यामध्ये सेव्ह करा</translation>
 <translation id="1282358575813748144">बोट आणि वॉटरक्राफ्ट</translation>
 <translation id="1283977499362032052">रेझ्युमे आणि पोर्टफोलिओ</translation>
 <translation id="1285320974508926690">या साइटचा कधीही भाषांतर करु नका</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">ट्रे ८</translation>
 <translation id="1530707389502320859">तुम्ही नुकतेच भेट देण्याचा प्रयत्न करत असलेली साइट बनावट असल्याची दिसते. आक्रमणकर्ते काहीवेळा URL मध्ये छोटे व पाहण्यासाठी कठीण असलेले बदल करून बनावट साइट बनवतात.</translation>
 <translation id="1532118530259321453">या पेजचे म्हणणे हे आहे की</translation>
+<translation id="1533966801397200693">तुम्ही साइन इन केलेली प्रोफाइल ही व्यवस्थापित केलेली प्रोफाइल आहे. तुमचा अ‍ॅडमिनिस्ट्रेटर हा तुमच्या प्रोफाइल सेटिंग्जमध्ये रिमोट पद्धतीने बदल करू शकतो, तक्रारीद्वारे ब्राउझरशी संबंधित माहितीचे विश्लेषण करू शकतो आणि इतर आवश्यक टास्क करू शकतो. <ph name="BEGIN_LINK" />अधिक जाणून घ्या<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">पेजचे भाषांतर करायचे आहे</translation>
 <translation id="1537807545287921620">ही PDF ॲक्सेस करण्यायोग्य नाही. कॉंटेक्स्ट मेनू उघडा आणि "PDF मधून मजकूर काढा" सुरू करा</translation>
 <translation id="1539840569003678498">अहवाल पाठवला:</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187"><ph name="NUMBER_OF_DIGITS" /> अंकी पडताळणी कोड एंटर करा</translation>
 <translation id="3272643614306383237">१ MB पेक्षा कमी. काही साइट तुमच्या पुढील भेटीच्या वेळी आणखी हळू लोड होऊ शकतात.</translation>
+<translation id="3273738040255912340">तुमचा अ‍ॅडमिनिस्ट्रेटर हा तुमच्या प्रोफाइल आणि ब्राउझरमध्ये रिमोट पद्धतीने बदल करू शकतो, तक्रारीद्वारे ब्राउझरशी संबंधित माहितीचे विश्लेषण करू शकतो व इतर आवश्यक टास्क करू शकतो. या डिव्हाइसवरील अ‍ॅक्टिव्हिटी ही Chromium च्या बाहेरदेखील व्यवस्थापित केली जाऊ शकते. <ph name="BEGIN_LINK" />अधिक जाणून घ्या<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{अ‍ॅडमिनिस्ट्रेटर धोरण ही फाइल <ph name="DESTINATION_NAME" /> मध्ये उघडण्याची शिफारस करत नाही}other{अ‍ॅडमिनिस्ट्रेटर धोरण या फाइल <ph name="DESTINATION_NAME" /> मध्ये उघडण्याची शिफारस करत नाही}}</translation>
 <translation id="3282085321714087552">तुमच्या संस्थेने <ph name="ENROLLMENT_DOMAIN" /> खालील वेबसाइटना सेटिंग्ज किंवा धोरणे यांसारखी काही माहिती पाठवली आहे.</translation>
 <translation id="3286372614333682499">पोट्रेट</translation>
@@ -3887,6 +3890,7 @@
 <translation id="8446884382197647889">अधिक जाणून घ्या</translation>
 <translation id="8449155699563577224">१७ x २४ इं</translation>
 <translation id="8449836157089738489">सर्व नवीन टॅब गटामध्ये उघडा</translation>
+<translation id="84561192812921051">तुमचा अ‍ॅडमिनिस्ट्रेटर हा तुमच्या प्रोफाइल आणि ब्राउझरमध्ये रिमोट पद्धतीने बदल करू शकतो, तक्रारीद्वारे ब्राउझरशी संबंधित माहितीचे विश्लेषण करू शकतो व इतर आवश्यक टास्क करू शकतो. या डिव्हाइसवरील अ‍ॅक्टिव्हिटी ही Chrome च्या बाहेरदेखील व्यवस्थापित केली जाऊ शकते.  <ph name="BEGIN_LINK" />अधिक जाणून घ्या<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">अनिश्चित</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">ते सुरू करा</translation>
diff --git a/components/strings/components_strings_my.xtb b/components/strings/components_strings_my.xtb
index 86d77dbb..dfb3e02 100644
--- a/components/strings/components_strings_my.xtb
+++ b/components/strings/components_strings_my.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">ဈေးနှုန်းစောင့်ကြည့်မှု ပိတ်လိုက်သည်</translation>
 <translation id="127777513559587977">စကားပြော TV ရှိုး</translation>
 <translation id="1281476433249504884">စီထည့်သည့်ပုံး ၁</translation>
+<translation id="1281536351321444151">ဤအိုင်ဘီအေအန် (IBAN) ကို နောက်တစ်ကြိမ်တွင် အော်တိုဖြည့်ရန် သင့် Google အကောင့်တွင် ၎င်းကိုသိမ်းပါ</translation>
 <translation id="1282358575813748144">လှေနှင့် ရေယာဉ်</translation>
 <translation id="1283977499362032052">ကိုယ်ရေးအကျဉ်းနှင့် ကိုယ်ရေးဂုဏ်ဒြပ် အချက်အလက် အစုစု</translation>
 <translation id="1285320974508926690">ဒီဆိုက်ကို ဘယ်တော့မှ ဘာသာမပြန်ပါနှင့်</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">ဗန်း ၈</translation>
 <translation id="1530707389502320859">သင်ဝင်ကြည့်လိုသော ဝဘ်ဆိုက်က အတုဖြစ်ပုံရသည်။ URL တွင် သေးငယ်ပြီး မြင်ရန်ခက်ခဲသော အပြောင်းအလဲများ ပြုလုပ်ခြင်းဖြင့် တိုက်ခိုက်သူများက တစ်ခါတစ်ရံ ဝဘ်ဆိုက်များကို ပုံတူပြုလုပ်ပါသည်။</translation>
 <translation id="1532118530259321453">ဤစာမျက်နှာက ဆိုထားသည်မှာ</translation>
+<translation id="1533966801397200693">သင်လက်မှတ်ထိုးဝင်ထားသည့် ပရိုဖိုင်သည် စီမံထားသော ပရိုဖိုင်ဖြစ်သည်။ သင်၏စီမံခန့်ခွဲသူသည် သင့်ပရိုဖိုင်ဆက်တင်များကို အဝေးမှပြောင်းခြင်း၊ သတင်းပေးပို့ခြင်းမှတစ်ဆင့် ဘရောင်ဇာနှင့်ဆိုင်သော အချက်အလက်ကို ပိုင်းခြားစိတ်ဖြာခြင်း၊ လိုအပ်သော အခြားလုပ်ဆောင်စရာများကို ဆောင်ရွက်ခြင်းတို့ ပြုလုပ်နိုင်သည်။ <ph name="BEGIN_LINK" />ပိုမိုလေ့လာရန်<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">စာမျက်နှာကို ဘာသာပြန်ရန်</translation>
 <translation id="1537807545287921620">ဤ PDF ကို ဖွင့်၍မရပါ။ အကြောင်းအရာမီနူးကို ဖွင့်ပြီး “PDF မှ စာသားထုတ်ယူရန်” ကိုဖွင့်ပါ</translation>
 <translation id="1539840569003678498">အစီရင်ခံစာ ပို့ပြီးပြီ-</translation>
@@ -1190,6 +1192,7 @@
 <translation id="3272091146646336650">စူပါ B</translation>
 <translation id="3272112314896217187">ဂဏန်း <ph name="NUMBER_OF_DIGITS" /> လုံးပါ ဒစ်ဂျစ်တယ် စိစစ်ခြင်းကုဒ် ထည့်ပါ</translation>
 <translation id="3272643614306383237">၁ MB ထက်နည်းသည်။ ဝဘ်ဆိုက်အချို့ကို နောက်တစ်ကြိမ်ဝင်ကြည့်သည့်အခါ ပိုမိုနှေးကွေးစွာ ပွင့်နိုင်သည်။</translation>
+<translation id="3273738040255912340">သင်၏စီမံခန့်ခွဲသူသည် သင့်ပရိုဖိုင်နှင့် ဘရောင်ဇာကို အဝေးမှပြောင်းခြင်း၊ သတင်းပေးပို့ခြင်းမှတစ်ဆင့် ဘရောင်ဇာနှင့်ဆိုင်သော အချက်အလက်ကို ပိုင်းခြားစိတ်ဖြာခြင်း၊ လိုအပ်သော အခြားလုပ်ဆောင်စရာများကို ဆောင်ရွက်ခြင်းတို့ ပြုလုပ်နိုင်သည်။ ဤစက်ရှိ လုပ်ဆောင်ချက်ကို Chromium ပြင်ပတွင်လည်း စီမံနိုင်သည်။ <ph name="BEGIN_LINK" />ပိုမိုလေ့လာရန်<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{စီမံခန့်ခွဲသူမူဝါဒက <ph name="DESTINATION_NAME" /> ရှိ ဤဖိုင်ဖွင့်ရန် အကြံမပြုပါ}other{စီမံခန့်ခွဲသူမူဝါဒက <ph name="DESTINATION_NAME" /> ရှိ ဤဖိုင်များဖွင့်ရန် အကြံမပြုပါ}}</translation>
 <translation id="3282085321714087552">သင့်အဖွဲ့အစည်း <ph name="ENROLLMENT_DOMAIN" /> သည် ဆက်တင်များ (သို့) မူဝါဒများကဲ့သို့ အချက်အလက်အချို့ကို အောက်ပါဝဘ်ဆိုက်များသို့ ပို့လိုက်သည်။</translation>
 <translation id="3286372614333682499">ဒေါင်လိုက်</translation>
@@ -3894,6 +3897,7 @@
 <translation id="8446884382197647889">ပိုမို လေ့လာရန်</translation>
 <translation id="8449155699563577224">၁၇ x ၂၄ လက်မ</translation>
 <translation id="8449836157089738489">အားလုံးကို တဘ်အုပ်စုအသစ်တွင် ဖွင့်ရန်</translation>
+<translation id="84561192812921051">သင်၏စီမံခန့်ခွဲသူသည် သင့်ပရိုဖိုင်နှင့် ဘရောင်ဇာကို အဝေးမှပြောင်းခြင်း၊ သတင်းပေးပို့ခြင်းမှတစ်ဆင့် ဘရောင်ဇာနှင့်ဆိုင်သော အချက်အလက်ကို ပိုင်းခြားစိတ်ဖြာခြင်း၊ လိုအပ်သော အခြားလုပ်ဆောင်စရာများကို ဆောင်ရွက်ခြင်းတို့ ပြုလုပ်နိုင်သည်။ ဤစက်ရှိ လုပ်ဆောင်ချက်ကို Chrome ပြင်ပတွင်လည်း စီမံနိုင်သည်။  <ph name="BEGIN_LINK" />ပိုမိုလေ့လာရန်<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">အဆုံးမရှိ</translation>
 <translation id="8458202188076138974">လက်တာဆိုဒ်ကြီး</translation>
 <translation id="8460854335417802511">ဖွင့်ရန်</translation>
diff --git a/components/strings/components_strings_ne.xtb b/components/strings/components_strings_ne.xtb
index 906164a0..d21a40a 100644
--- a/components/strings/components_strings_ne.xtb
+++ b/components/strings/components_strings_ne.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">पुस्तकका खुद्रा बिक्रेताहरू</translation>
 <translation id="2048261947532620704">पेज अनुवाद गरिँदै छ</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> भाषाका पृष्ठहरू अनुवाद गरिने छैनन्।</translation>
+<translation id="2055461225779831292">तपाईंको डिभाइसका क्यामेराहरू (<ph name="CAMERAS_COUNT" />) प्रयोग गर्न र यताउता सार्न</translation>
 <translation id="2056492565825767809">तपाईंको माउस पोइन्टर लक गर्ने</translation>
 <translation id="2056658168519009885">साइटहरूले तपाईंलाई देखाइने विज्ञापनहरू पर्सनलाइज गर्न Chrome सँग जानकारी माग्न सक्छन्।</translation>
 <translation id="2059166748188874810">नगरपालिका</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">अपलोड नगरिएको</translation>
 <translation id="2301098101308036335">कुन-कुन वेबसाइटहरू हेरिएका छन् र कहिले हेरिएका छन्।</translation>
 <translation id="230286397113210245">इन्कोग्निटो विन्डो खोल्ने बटन, गोप्य रूपमा ब्राउज गर्न यो बटन थिचेर नयाँ इन्कोग्निटो विन्डो खोल्नुहोस्</translation>
+<translation id="2306124309679506798">इमर्सिभ सत्र सुरु गर्ने अनुमति दिने हो?</translation>
 <translation id="2312234273148520048">मसाला तथा ड्रेसिङ</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" /> भन्दा कम। अर्को पटक तपाईंका केही साइटहरू बिस्तारै लोड हुन सक्छन्।</translation>
 <translation id="2316159751672436664">ChromeOS का सेटिङमा गई आफ्ना एक्सेसिबिलिटी टुलहरू पर्सनलाइज गर्नुहोस्</translation>
@@ -1169,6 +1171,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, तपाईं आफ्नो ब्राउजरको स्वरूप कस्टमाइज गर्न चाहनुहुन्छ भने Tab थिच्नुहोस् अनि Enter थिच्नुहोस्</translation>
 <translation id="3240791268468473923">क्रिडेन्सियल सिटसँग नमिल्ने सुरक्षित भुक्तानी क्रिडेन्सियल खोलियो</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” का लिंकहरू ब्लक गरिएका छन्</translation>
+<translation id="3248329428895535435">यो साइटका हकमा फेरि नदेखाउनुहोस्</translation>
 <translation id="3252772880526154546">वास्तुकला</translation>
 <translation id="3254301855501243548">१८ x २२ इन्च</translation>
 <translation id="3255926992597692024">Chromium ले भुक्तानी विधिहरू हाल्नका निम्ति सेटिङ मिलाउन खोज्दै छ।</translation>
@@ -1604,6 +1607,7 @@
 <translation id="4082333119419111506">पेपर (प्रिप्रिन्टेड)</translation>
 <translation id="4082393374666368382">सेटिङहरू - व्यवस्थापन</translation>
 <translation id="4084219288110917128">Envelope C1</translation>
+<translation id="4085326869263783566">मलाई लेख्न मद्दत गर्नुहोस्। खोल्न ट्याब की थिचिराखेका बेला इन्टर की थिच्नुहोस्</translation>
 <translation id="4088981014127559358">सतह १ मा रहेको छविको Y सिफ्ट</translation>
 <translation id="4089152113577680600">ट्रे १४</translation>
 <translation id="4092349052316400070">ठेगाना भर्नुहोस्</translation>
@@ -2304,6 +2308,7 @@
 <translation id="5447765697759493033">यो साइटलाई अनुवाद गरिने छैन</translation>
 <translation id="5452270690849572955">यो <ph name="HOST_NAME" /> को पृष्ठ फेला पार्न सक्दैन</translation>
 <translation id="5455374756549232013">खराब नीति टाइमस्ट्याम्प</translation>
+<translation id="5456428544444655325">कहिल्यै पनि नदेखाउनुहोस्</translation>
 <translation id="5456839782162429664">हरेक पटक अटोफिल सुविधा प्रयोग गरी भुक्तानी गर्दा म्यानुअल तरिकाले पुष्टि गर्नुहोस्</translation>
 <translation id="5457113250005438886">अवैध</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> र थप <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" /> र थप <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation>
@@ -3783,6 +3788,7 @@
 <translation id="8263001937536038617">फोटो तथा भिडियो सेवा</translation>
 <translation id="8265992338205884890">देखिने डेटा</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" /> रूपमा साइन इन गर्दै</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">छुट्टा छुट्टै कागजातहरू/क्रमबद्ध गरिएका प्रतिहरू</translation>
 <translation id="8269703227894255363">{0,plural, =1{फाइल खोल्न रोक लगाइएको छ}other{<ph name="FILE_COUNT" /> वटा फाइल खोल्न रोक लगाइएको छ}}</translation>
 <translation id="8270173610195068258">अपराध तथा न्याय</translation>
@@ -4202,6 +4208,7 @@
 <translation id="9094544726794842788">थम्ब्स डाउनले तपाईंलाई यी परिणामहरू मन नपर्नुको कारणसहित विस्तृत प्रतिक्रिया पेस गर्ने फारम खोल्छ</translation>
 <translation id="9095388113577226029">थप भाषाहरू...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, iOS का सेटिङमा गई Chrome लाई सिस्टमको डिफल्ट ब्राउजरका रूपमा सेट गर्न ट्याब थिचेर इन्टर थिच्नुहोस्</translation>
+<translation id="9101450247048146228">क्यामेराको प्रयोग र चाल (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">ट्रे १</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> ले सामान्यतया तपाईंको जानकारीको सुरक्षा गर्न इन्क्रिप्सन प्रयोग गर्दछ। Chromium ले यस समयमा <ph name="SITE" /> मा जडान गर्ने प्रयास गर्दा वेबसाइटले असामान्य र गलत प्रमाणहरू फिर्ता पठायो। यस्तो आक्रमणकारीले <ph name="SITE" /> भएको बहाना गर्ने प्रयास गर्दा वा Wi-Fi साइन इन स्क्रिनले जडानलाई अवरोध पुर्याउँदा हुन सक्छ। कुनै पनि डेटा आदानप्रदान हुन पूर्व Chromium ले जडान रोकेका कारण तपाईंको जानकारी अझै पनि सुरक्षित छ।</translation>
 <translation id="9107467864910557787"><ph name="MANAGER" /> ले तपाईंको ब्राउजर व्यवस्थापन गर्छ</translation>
@@ -4224,6 +4231,8 @@
 <translation id="9139318394846604261">किनमेल</translation>
 <translation id="9141013498910525015">ठेगानाहरू व्यवस्थित गर्नुहोस्</translation>
 <translation id="9144951720726881238">म्याद सकिने मिति:</translation>
+<translation id="9145910032514306808">फेरि <ph name="BEGIN_LINK" />साइन इन गर्नुहोस्<ph name="END_LINK" />
+    अनि लेखनसम्बन्धी मद्दत प्राप्त गर्न यो ट्याबमा फर्कनुहोस्</translation>
 <translation id="9148507642005240123">सम्पादन &amp;पूर्ववत गर्नुहोस्</translation>
 <translation id="9148599396704355100">सस्तो मूल्य</translation>
 <translation id="9150025764986957246">तपाईं निम्नलगायतका कुराहरू हाल्न सक्नुहुन्छ:</translation>
diff --git a/components/strings/components_strings_no.xtb b/components/strings/components_strings_no.xtb
index 842b510..a5aac73 100644
--- a/components/strings/components_strings_no.xtb
+++ b/components/strings/components_strings_no.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Bokhandlere</translation>
 <translation id="2048261947532620704">Oversetter siden</translation>
 <translation id="2053111141626950936">Sider på <ph name="LANGUAGE" /> oversettes ikke.</translation>
+<translation id="2055461225779831292">bruke og flytte kameraene dine (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Lås musepekeren</translation>
 <translation id="2056658168519009885">Nettsteder kan be Chrome om informasjon for å tilpasse annonsene du ser.</translation>
 <translation id="2059166748188874810">Kommune</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Ikke lastet opp</translation>
 <translation id="2301098101308036335">Hvilke nettsteder som besøkes, og når.</translation>
 <translation id="230286397113210245">Knappen «Åpne et inkognitovindu» – aktiver for å åpne et nytt inkognitovindu for privat surfing</translation>
+<translation id="2306124309679506798">Vil du tillate en omsluttende opplevelse?</translation>
 <translation id="2312234273148520048">Sauser og dressinger</translation>
 <translation id="2316087952091171402">Mindre enn <ph name="UPPER_ESTIMATE" />. Det kan hende at enkelte nettsteder lastes inn tregere neste gang du besøker dem.</translation>
 <translation id="2316159751672436664">Gi tilgjengelighetsverktøyene dine personlig preg i ChromeOS-innstillingene</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" /> – trykk på Tab og deretter på Enter for å tilpasse nettleserens utseende</translation>
 <translation id="3240791268468473923">Ark for sikker betalingslegitimasjon uten samsvarende legitimasjon er åpnet</translation>
 <translation id="324180406144491771">«<ph name="HOST_NAME" />»-linker er blokkert</translation>
+<translation id="3248329428895535435">Ikke vis på dette nettstedet</translation>
 <translation id="3252772880526154546">Arkitektur</translation>
 <translation id="3254301855501243548">18 x 22 tommer</translation>
 <translation id="3255926992597692024">Chromium prøver å endre innstillingene for utfylling av betalingsmåter.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">Papir (fortrykt)</translation>
 <translation id="4082393374666368382">Innstillinger – Administrasjon</translation>
 <translation id="4084219288110917128">C1-konvolutt</translation>
+<translation id="4085326869263783566">Hjelp meg å skrive. Trykk på Tab og deretter på Enter for å åpne</translation>
 <translation id="4088981014127559358">Y-forskyvning av bilde på side 1</translation>
 <translation id="4089152113577680600">Skuff 14</translation>
 <translation id="4092349052316400070">Fyll ut adressen</translation>
@@ -3785,6 +3789,7 @@
 <translation id="8263001937536038617">Foto- og videotjenester</translation>
 <translation id="8265992338205884890">Synlige data</translation>
 <translation id="8267698848189296333">Logger på som <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Separate dokumenter / kollaterte eksemplarer</translation>
 <translation id="8269703227894255363">{0,plural, =1{Filen er blokkert for åpning}other{<ph name="FILE_COUNT" /> filer er blokkert for åpning}}</translation>
 <translation id="8270173610195068258">Kriminalitet og rettspleie</translation>
@@ -4204,6 +4209,7 @@
 <translation id="9094544726794842788">Tommel ned åpner et skjema der du kan gi en detaljert tilbakemelding om hvorfor du ikke liker disse resultatene</translation>
 <translation id="9095388113577226029">Flere språk</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" /> – trykk på Tab og deretter på Enter for å angi Chrome som systemets standardnettleser i iOS-innstillingene</translation>
+<translation id="9101450247048146228">Kamerabruk og -bevegelse (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Skuff 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> bruker vanligvis kryptering for å beskytte informasjonen din. Da Chromium prøvde å koble til <ph name="SITE" /> denne gangen, sendte nettstedet tilbake uvanlig og feil legitimasjon. Dette kan skje hvis en angriper prøver å utgi seg for å være <ph name="SITE" />, eller hvis en Wifi-påloggingsskjerm har avbrutt tilkoblingen. Informasjonen din er likevel sikker fordi Chromium stoppet tilkoblingen før det ble utvekslet noen data.</translation>
 <translation id="9107467864910557787">Nettleseren administreres av <ph name="MANAGER" /></translation>
@@ -4226,6 +4232,8 @@
 <translation id="9139318394846604261">Shopping</translation>
 <translation id="9141013498910525015">Administrer adresser</translation>
 <translation id="9144951720726881238">Utløpsdato:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Logg på<ph name="END_LINK" />
+    igjen, og kom tilbake til denne fanen for å få skrivehjelp</translation>
 <translation id="9148507642005240123">&amp;Angre endringen</translation>
 <translation id="9148599396704355100">Prisen er lav</translation>
 <translation id="9150025764986957246">Du kan for eksempel skrive inn</translation>
diff --git a/components/strings/components_strings_or.xtb b/components/strings/components_strings_or.xtb
index 41f99afc..b7cbf9d 100644
--- a/components/strings/components_strings_or.xtb
+++ b/components/strings/components_strings_or.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">ମୂଲ୍ୟ ଟ୍ରାକିଂ ବନ୍ଦ କରନ୍ତୁ</translation>
 <translation id="127777513559587977">ଟିଭି ଟକ ଶୋ</translation>
 <translation id="1281476433249504884">ଷ୍ଟାକର୍ 1</translation>
+<translation id="1281536351321444151">ପରବର୍ତ୍ତୀ ସମୟରେ ଏହି IBANକୁ ଅଟୋଫିଲ କରିବା ପାଇଁ ଏହାକୁ ଆପଣଙ୍କ Google ଆକାଉଣ୍ଟରେ ସେଭ କରନ୍ତୁ</translation>
 <translation id="1282358575813748144">ନୌକା ଓ ୱାଟରକ୍ରାଫ୍ଟ</translation>
 <translation id="1283977499362032052">ରିଜ୍ୟୁମେ ଏବଂ ପୋର୍ଟଫୋଲିଓ</translation>
 <translation id="1285320974508926690">ଏହି ସାଇଟ୍‍କୁ କଦାପି ଅନୁବାଦ କରନ୍ତୁ ନାହିଁ</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">ଟ୍ରେ 8</translation>
 <translation id="1530707389502320859">ଆପଣ ଏବେ ଯେଉଁ ସାଇଟ୍‌କୁ ଯିବା ପାଇଁ ଚେଷ୍ଟା କରୁଛନ୍ତି ତାହା ନକଲି ଜଣାପଡୁଛି। URLରେ ଛୋଟ ପରିବର୍ତ୍ତନ କରି ଆକ୍ରମଣକାରୀମାନେ ବେଳେ ବେଳେ ସାଇଟ୍‍ଗୁଡ଼ିକର ନକଲ କରିଥାନ୍ତି ଯାହା ଜାଣିବା କଷ୍ଟକର ହୋଇଥାଏ।</translation>
 <translation id="1532118530259321453">ଏହି ପୃଷ୍ଠା ଏହା କୁହେ</translation>
+<translation id="1533966801397200693">ଆପଣ ସାଇନ ଇନ କରିଥିବା ପ୍ରୋଫାଇଲ ଏକ ପରିଚାଳିତ ପ୍ରୋଫାଇଲ ଅଟେ। ଆପଣଙ୍କ ଆଡମିନିଷ୍ଟ୍ରେଟର ରିମୋଟ ଭାବେ ଆପଣଙ୍କର ପ୍ରୋଫାଇଲ ସେଟିଂସରେ ପରିବର୍ତ୍ତନ କରିପାରିବେ, ରିପୋର୍ଟିଂ ମାଧ୍ୟମରେ ବ୍ରାଉଜର ବିଷୟରେ ସୂଚନାକୁ ବିଶ୍ଳେଷଣ କରିପାରିବେ ଏବଂ ଅନ୍ୟ ଜରୁରୀ ଟାସ୍କଗୁଡ଼ିକୁ କରିପାରିବେ। <ph name="BEGIN_LINK" />ଅଧିକ ଜାଣନ୍ତୁ<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">ପୃଷ୍ଠାକୁ ଅନୁବାଦ କରନ୍ତୁ</translation>
 <translation id="1537807545287921620">ଏହି PDF ଆକ୍ସେସ ଯୋଗ୍ୟ ନୁହେଁ। ପ୍ରସଙ୍ଗ ମେନୁ ଖୋଲି "PDFରୁ ଟେକ୍ସଟ ଏକ୍ସଟ୍ରାକ୍ଟ କରନ୍ତୁ"କୁ ଚାଲୁ କରନ୍ତୁ</translation>
 <translation id="1539840569003678498">ରିପୋର୍ଟ ପଠାଯାଇଛି:</translation>
@@ -1183,6 +1185,7 @@
 <translation id="3272091146646336650">ସୁପର B</translation>
 <translation id="3272112314896217187"><ph name="NUMBER_OF_DIGITS" />-ଅଙ୍କ ବିଶିଷ୍ଟ ଯାଞ୍ଚକରଣ କୋଡ ଲେଖନ୍ତୁ</translation>
 <translation id="3272643614306383237">1 MBରୁ କମ। କିଛି ସାଇଟ ଆପଣଙ୍କର ପରବର୍ତ୍ତୀ ଭିଜିଟରେ ଆହୁରି ଧୀରେ ଲୋଡ ହୋଇପାରେ।</translation>
+<translation id="3273738040255912340">ଆପଣଙ୍କ ଆଡମିନିଷ୍ଟ୍ରେଟର ରିମୋଟ ଭାବେ ଆପଣଙ୍କର ପ୍ରୋଫାଇଲ ଏବଂ ବ୍ରାଉଜରରେ ପରିବର୍ତ୍ତନ କରିପାରିବେ, ରିପୋର୍ଟିଂ ମାଧ୍ୟମରେ ବ୍ରାଉଜର ବିଷୟରେ ସୂଚନାକୁ ବିଶ୍ଳେଷଣ କରିପାରିବେ ଏବଂ ଅନ୍ୟ ଜରୁରୀ ଟାସ୍କଗୁଡ଼ିକୁ କରିପାରିବେ। ଏହି ଡିଭାଇସରେ କରାଯାଉଥିବା କାର୍ଯ୍ୟକଳାପ Chromium ବାହାରେ ମଧ୍ୟ ପରିଚାଳନା କରାଯାଇପାରେ। <ph name="BEGIN_LINK" />ଅଧିକ ଜାଣନ୍ତୁ<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{<ph name="DESTINATION_NAME" />ରେ ଏହି ଫାଇଲକୁ ଖୋଲିବା ପାଇଁ ଆଡମିନିଷ୍ଟ୍ରେଟର ନୀତି ସୁପାରିଶ କରେ ନାହିଁ}other{<ph name="DESTINATION_NAME" />ରେ ଏହି ଫାଇଲଗୁଡ଼ିକୁ ଖୋଲିବା ପାଇଁ ଆଡମିନିଷ୍ଟ୍ରେଟର ନୀତି ସୁପାରିଶ କରେ ନାହିଁ}}</translation>
 <translation id="3282085321714087552">ଆପଣଙ୍କ ସଂସ୍ଥା, <ph name="ENROLLMENT_DOMAIN" />, ନିମ୍ନୋକ୍ତ ୱେବସାଇଟଗୁଡ଼ିକୁ ସେଟିଂସ୍ କିମ୍ବା ନୀତିଗୁଡ଼ିକ ପରି କିଛି ସୂଚନା ପଠାଇଛି।</translation>
 <translation id="3286372614333682499">ପୋଟ୍ରେଟ</translation>
@@ -3882,6 +3885,7 @@
 <translation id="8446884382197647889">ଅଧିକ ଜାଣନ୍ତୁ</translation>
 <translation id="8449155699563577224">17 x 24 ଇଞ୍ଚ</translation>
 <translation id="8449836157089738489">ସମସ୍ତ URLକୁ ନୂଆ ଟାବ ଗ୍ରୁପରେ ଖୋଲନ୍ତୁ</translation>
+<translation id="84561192812921051">ଆପଣଙ୍କ ଆଡମିନିଷ୍ଟ୍ରେଟର ରିମୋଟ ଭାବେ ଆପଣଙ୍କର ପ୍ରୋଫାଇଲ ଏବଂ ବ୍ରାଉଜରରେ ପରିବର୍ତ୍ତନ କରିପାରିବେ, ରିପୋର୍ଟିଂ ମାଧ୍ୟମରେ ବ୍ରାଉଜର ବିଷୟରେ ସୂଚନାକୁ ବିଶ୍ଳେଷଣ କରିପାରିବେ ଏବଂ ଅନ୍ୟ ଜରୁରୀ ଟାସ୍କଗୁଡ଼ିକୁ କରିପାରିବେ। ଏହି ଡିଭାଇସରେ କରାଯାଉଥିବା କାର୍ଯ୍ୟକଳାପ Chrome ବାହାରେ ମଧ୍ୟ ପରିଚାଳନା କରାଯାଇପାରେ।  <ph name="BEGIN_LINK" />ଅଧିକ ଜାଣନ୍ତୁ<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">ଅନିର୍ଦ୍ଦିଷ୍ଟ</translation>
 <translation id="8458202188076138974">ଲେଟର ଏକ୍ସଟ୍ରା</translation>
 <translation id="8460854335417802511">ଏହାକୁ ଚାଲୁ କରନ୍ତୁ</translation>
diff --git a/components/strings/components_strings_pa.xtb b/components/strings/components_strings_pa.xtb
index 64c8845..d28cf4d 100644
--- a/components/strings/components_strings_pa.xtb
+++ b/components/strings/components_strings_pa.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">ਕੀਮਤ ਟਰੈਕਿੰਗ ਬੰਦ ਹੈ</translation>
 <translation id="127777513559587977">ਟੀਵੀ ਟਾਕ ਸ਼ੋਅ</translation>
 <translation id="1281476433249504884">ਸਟੈਕਰ 1</translation>
+<translation id="1281536351321444151">ਇਸ IBAN ਨੂੰ ਅਗਲੀ ਵਾਰ ਆਟੋਫਿਲ ਕਰਨ ਲਈ, ਇਸਨੂੰ ਆਪਣੇ Google ਖਾਤੇ ਵਿੱਚ ਰੱਖਿਅਤ ਕਰੋ</translation>
 <translation id="1282358575813748144">ਕਿਸ਼ਤੀਆਂ ਅਤੇ ਪਾਣੀ 'ਤੇ ਚੱਲਣ ਵਾਲੇ ਵਾਹਨ</translation>
 <translation id="1283977499362032052">ਰੈਜ਼ਿਊਮੇ ਅਤੇ ਪੋਰਟਫੋਲੀਓ</translation>
 <translation id="1285320974508926690">ਕਦੇ ਵੀ ਇਸ ਸਾਈਟ ਦਾ ਅਨੁਵਾਦ ਨਾ ਕਰੋ</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">ਟ੍ਰੇਅ 8</translation>
 <translation id="1530707389502320859">ਜਿਸ ਸਾਈਟ 'ਤੇ ਤੁਸੀਂ ਹੁਣੇ ਜਾਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਉਹ ਨਕਲੀ ਲੱਗਦੀ ਹੈ। ਹਮਲਾਵਰ ਕਦੇ-ਕਦਾਈ URL ਵਿੱਚ ਮੁਸ਼ਕਲ ਨਾਲ ਪਤਾ ਲੱਗਣ ਵਾਲੀਆਂ ਨਿੱਕੀਆਂ ਤਬਦੀਲੀਆਂ ਕਰਕੇ ਸਾਈਟਾਂ ਦੀ ਨਕਲ ਤਿਆਰ ਕਰਦੇ ਹਨ।</translation>
 <translation id="1532118530259321453">ਇਸ ਪੰਨੇ ਦੇ ਮੁਤਾਬਕ</translation>
+<translation id="1533966801397200693">ਤੁਸੀਂ ਜਿਸ ਪ੍ਰੋਫਾਈਲ ਵਿੱਚ ਸਾਈਨ-ਇਨ ਕੀਤਾ ਹੈ, ਉਹ ਇੱਕ ਪ੍ਰਬੰਧਿਤ ਪ੍ਰੋਫਾਈਲ ਹੈ। ਤੁਹਾਡਾ ਪ੍ਰਸ਼ਾਸਕ ਦੂਰ-ਦੁਰਾਡੇ ਤੋਂ ਤੁਹਾਡੀਆਂ ਪ੍ਰੋਫਾਈਲ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਤਬਦੀਲੀ ਕਰ ਸਕਦਾ ਹੈ, ਰਿਪੋਰਟਿੰਗ ਰਾਹੀਂ ਬ੍ਰਾਊਜ਼ਰ ਬਾਰੇ ਜਾਣਕਾਰੀ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਹੋਰ ਜ਼ਰੂਰੀ ਕਾਰਜ ਕਰ ਸਕਦਾ ਹੈ। <ph name="BEGIN_LINK" />ਹੋਰ ਜਾਣੋ<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">ਪੰਨੇ ਦਾ ਅਨੁਵਾਦ ਕਰੋ</translation>
 <translation id="1537807545287921620">ਇਹ PDF ਪਹੁੰਚਯੋਗ ਨਹੀਂ ਹੈ। ਸੰਦਰਭ ਮੀਨੂ ਖੋਲ੍ਹੋ ਅਤੇ "PDF ਤੋਂ ਲਿਖਤ ਐਕਸਟ੍ਰੈਕਟ ਕਰੋ" ਚਾਲੂ ਕਰੋ</translation>
 <translation id="1539840569003678498">ਰਿਪੋਰਟ ਭੇਜੀ ਗਈ:</translation>
@@ -1183,6 +1185,7 @@
 <translation id="3272091146646336650">ਸੁਪਰ B</translation>
 <translation id="3272112314896217187"><ph name="NUMBER_OF_DIGITS" />-ਅੰਕੀ ਪੁਸ਼ਟੀਕਰਨ ਕੋਡ ਦਾਖਲ ਕਰੋ</translation>
 <translation id="3272643614306383237">1 MB ਤੋਂ ਘੱਟ। ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਡੀ ਅਗਲੀ ਫੇਰੀ 'ਤੇ ਕੁਝ ਸਾਈਟਾਂ ਵਧੇਰੇ ਹੌਲੀ ਲੋਡ ਹੋਣ।</translation>
+<translation id="3273738040255912340">ਤੁਹਾਡਾ ਪ੍ਰਸ਼ਾਸਕ ਦੂਰ-ਦੁਰਾਡੇ ਤੋਂ ਤੁਹਾਡੇ ਪ੍ਰੋਫਾਈਲ ਅਤੇ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਤਬਦੀਲੀਆਂ ਕਰ ਸਕਦਾ ਹੈ, ਰਿਪੋਰਟਿੰਗ ਰਾਹੀਂ ਬ੍ਰਾਊਜ਼ਰ ਬਾਰੇ ਜਾਣਕਾਰੀ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਹੋਰ ਜ਼ਰੂਰੀ ਕਾਰਜ ਕਰ ਸਕਦਾ ਹੈ। ਇਸ ਡੀਵਾਈਸ ਦੀ ਸਰਗਰਮੀ ਦਾ ਪ੍ਰਬੰਧਨ Chromium ਤੋਂ ਬਾਹਰ ਵੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। <ph name="BEGIN_LINK" />ਹੋਰ ਜਾਣੋ<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{ਪ੍ਰਸ਼ਾਸਕ ਨੀਤੀ ਇਸ ਫ਼ਾਈਲ ਨੂੰ <ph name="DESTINATION_NAME" /> ਵਿੱਚ ਖੋਲ੍ਹਣ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਨਹੀਂ ਕਰਦੀ ਹੈ}one{ਪ੍ਰਸ਼ਾਸਕ ਨੀਤੀ ਇਸ ਫ਼ਾਈਲ ਨੂੰ <ph name="DESTINATION_NAME" /> ਵਿੱਚ ਖੋਲ੍ਹਣ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਨਹੀਂ ਕਰਦੀ ਹੈ}other{ਪ੍ਰਸ਼ਾਸਕ ਨੀਤੀ ਇਨ੍ਹਾਂ ਫ਼ਾਈਲਾਂ ਨੂੰ <ph name="DESTINATION_NAME" /> ਵਿੱਚ ਖੋਲ੍ਹਣ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਨਹੀਂ ਕਰਦੀ ਹੈ}}</translation>
 <translation id="3282085321714087552">ਤੁਹਾਡੀ ਸੰਸਥਾ, <ph name="ENROLLMENT_DOMAIN" />, ਨੇ ਅੱਗੇ ਦਿੱਤੀਆਂ ਵੈੱਬਸਾਈਟਾਂ ਨੂੰ ਕੁਝ ਜਾਣਕਾਰੀ ਭੇਜੀ ਹੈ, ਜਿਵੇਂ ਸੈਟਿੰਗਾਂ ਜਾਂ ਨੀਤੀਆਂ।</translation>
 <translation id="3286372614333682499">ਪੋਰਟਰੇਟ</translation>
@@ -3882,6 +3885,7 @@
 <translation id="8446884382197647889">ਹੋਰ ਜਾਣੋ</translation>
 <translation id="8449155699563577224">17 x 24 ਇੰਚ</translation>
 <translation id="8449836157089738489">ਸਾਰਿਆਂ ਨੂੰ ਨਵੇਂ ਟੈਬ ਗਰੁੱਪ ਵਿੱਚ ਖੋਲ੍ਹੋ</translation>
+<translation id="84561192812921051">ਤੁਹਾਡਾ ਪ੍ਰਸ਼ਾਸਕ ਦੂਰ-ਦੁਰਾਡੇ ਤੋਂ ਤੁਹਾਡੇ ਪ੍ਰੋਫਾਈਲ ਅਤੇ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਤਬਦੀਲੀਆਂ ਕਰ ਸਕਦਾ ਹੈ, ਰਿਪੋਰਟਿੰਗ ਰਾਹੀਂ ਬ੍ਰਾਊਜ਼ਰ ਬਾਰੇ ਜਾਣਕਾਰੀ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਹੋਰ ਜ਼ਰੂਰੀ ਕਾਰਜ ਕਰ ਸਕਦਾ ਹੈ। ਇਸ ਡੀਵਾਈਸ ਦੀ ਸਰਗਰਮੀ ਦਾ ਪ੍ਰਬੰਧਨ Chrome ਤੋਂ ਬਾਹਰ ਵੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।  <ph name="BEGIN_LINK" />ਹੋਰ ਜਾਣੋ<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">ਅਨਿਸ਼ਚਿਤ</translation>
 <translation id="8458202188076138974">ਲੈਟਰ ਐਕਸਟਰਾ</translation>
 <translation id="8460854335417802511">ਇਸਨੂੰ ਚਾਲੂ ਕਰੋ</translation>
diff --git a/components/strings/components_strings_pt-BR.xtb b/components/strings/components_strings_pt-BR.xtb
index 09c9e18..ff35000 100644
--- a/components/strings/components_strings_pt-BR.xtb
+++ b/components/strings/components_strings_pt-BR.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Acompanhamento de preços desativado</translation>
 <translation id="127777513559587977">Programas de auditório na TV</translation>
 <translation id="1281476433249504884">Empilhador 1</translation>
+<translation id="1281536351321444151">Para preencher o IBAN automaticamente da próxima vez, salve-o na sua Conta do Google</translation>
 <translation id="1282358575813748144">Barcos e embarcações</translation>
 <translation id="1283977499362032052">Currículos e portfólios</translation>
 <translation id="1285320974508926690">Nunca traduzir este site</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Bandeja 8</translation>
 <translation id="1530707389502320859">O site que você tentou acessar parece falso. Os invasores às vezes imitam sites fazendo pequenas alterações quase imperceptíveis no URL.</translation>
 <translation id="1532118530259321453">Essa página diz</translation>
+<translation id="1533966801397200693">O perfil em que você fez login é um perfil gerenciado. O administrador pode fazer mudanças nas configurações do seu perfil remotamente, analisar informações sobre o navegador com relatórios e realizar outras tarefas necessárias. <ph name="BEGIN_LINK" />Saiba mais<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Traduzir página</translation>
 <translation id="1537807545287921620">Não é possível acessar este PDF. Abra o menu de contexto e ative a opção "Extrair texto do PDF"</translation>
 <translation id="1539840569003678498">Relatório enviado:</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Insira o código de verificação de <ph name="NUMBER_OF_DIGITS" /> dígitos</translation>
 <translation id="3272643614306383237">Menos de 1 MB. Alguns sites podem carregar mais lentamente na sua próxima visita.</translation>
+<translation id="3273738040255912340">O administrador pode fazer mudanças no seu perfil e no seu navegador remotamente, analisar informações sobre o navegador com relatórios e realizar outras tarefas necessárias. A atividade deste dispositivo também pode ser gerenciada fora do Chromium. <ph name="BEGIN_LINK" />Saiba mais<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{A política do administrador não recomenda abrir este arquivo em <ph name="DESTINATION_NAME" />}one{A política do administrador não recomenda abrir este arquivo em <ph name="DESTINATION_NAME" />}other{A política do administrador não recomenda abrir estes arquivos em <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Sua organização, <ph name="ENROLLMENT_DOMAIN" />, enviou algumas informações, como configurações ou políticas, aos sites a seguir.</translation>
 <translation id="3286372614333682499">retrato</translation>
@@ -3887,6 +3890,7 @@
 <translation id="8446884382197647889">Saiba mais</translation>
 <translation id="8449155699563577224">17 x 24 pol.</translation>
 <translation id="8449836157089738489">Abrir tudo em um novo grupo de guias</translation>
+<translation id="84561192812921051">O administrador pode fazer mudanças no seu perfil e no seu navegador remotamente, analisar informações sobre o navegador com relatórios e realizar outras tarefas necessárias. A atividade deste dispositivo também pode ser gerenciada fora do Chrome.  <ph name="BEGIN_LINK" />Saiba mais<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Indefinida</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Ativar</translation>
diff --git a/components/strings/components_strings_pt-PT.xtb b/components/strings/components_strings_pt-PT.xtb
index f3896e5..0e06490cce 100644
--- a/components/strings/components_strings_pt-PT.xtb
+++ b/components/strings/components_strings_pt-PT.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Retalhistas de livros</translation>
 <translation id="2048261947532620704">A traduzir a página</translation>
 <translation id="2053111141626950936">As páginas em <ph name="LANGUAGE" /> não serão traduzidas.</translation>
+<translation id="2055461225779831292">Usar e mover as suas câmaras (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Bloquear o ponteiro do rato</translation>
 <translation id="2056658168519009885">Os sites podem pedir informações ao Chrome para ajudar a personalizar os anúncios que vê.</translation>
 <translation id="2059166748188874810">Município</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Não carregado</translation>
 <translation id="2301098101308036335">Que Websites são visitados e quando.</translation>
 <translation id="230286397113210245">Botão Abrir janela de navegação anónima; ative para abrir uma nova janela de navegação anónima para navegar em privado</translation>
+<translation id="2306124309679506798">Permitir uma experiência imersiva?</translation>
 <translation id="2312234273148520048">Condimentos e molhos</translation>
 <translation id="2316087952091171402">Menos de <ph name="UPPER_ESTIMATE" />. É possível que alguns sites sejam carregados mais lentamente na sua próxima visita.</translation>
 <translation id="2316159751672436664">Personalize as ferramentas de acessibilidade nas definições do ChromeOS</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, prima Tab e, em seguida, Enter para personalizar o aspeto do seu navegador</translation>
 <translation id="3240791268468473923">A página de credenciais de pagamento seguro sem correspondência com as credenciais está aberta</translation>
 <translation id="324180406144491771">Os links do anfitrião "<ph name="HOST_NAME" />" estão bloqueados</translation>
+<translation id="3248329428895535435">Não mostrar neste site</translation>
 <translation id="3252772880526154546">Arquitetura</translation>
 <translation id="3254301855501243548">18 x 22 pol.</translation>
 <translation id="3255926992597692024">O Chromium está a tentar modificar as definições de preenchimento dos métodos de pagamento.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">Papel (pré-impresso)</translation>
 <translation id="4082393374666368382">Definições – Gestão</translation>
 <translation id="4084219288110917128">Envelope C1</translation>
+<translation id="4085326869263783566">Ajuda-me a escrever. Prima Tab e Enter para abrir</translation>
 <translation id="4088981014127559358">Turno Y da imagem 1 lateral</translation>
 <translation id="4089152113577680600">Tabuleiro 14</translation>
 <translation id="4092349052316400070">Preencha o endereço</translation>
@@ -3785,6 +3789,7 @@
 <translation id="8263001937536038617">Serviços de fotografia e vídeo</translation>
 <translation id="8265992338205884890">Dados visíveis</translation>
 <translation id="8267698848189296333">A iniciar sessão como <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Documentos separados/cópias agrupadas</translation>
 <translation id="8269703227894255363">{0,plural, =1{A abertura do ficheiro foi bloqueada}other{A abertura de <ph name="FILE_COUNT" /> ficheiros foi bloqueada}}</translation>
 <translation id="8270173610195068258">Criminalidade e justiça</translation>
@@ -4205,6 +4210,7 @@
 <translation id="9094544726794842788">A opção Não gosto abre um formulário para enviar feedback detalhado sobre o motivo pelo qual não gosta destes resultados</translation>
 <translation id="9095388113577226029">Mais idiomas…</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, prima Tab e, em seguida, Enter para definir o Chrome como o navegador predefinido do sistema nas definições do iOS</translation>
+<translation id="9101450247048146228">Utilização e movimento da câmara (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Tabuleiro 1</translation>
 <translation id="9103872766612412690">Normalmente, o site <ph name="SITE" /> utiliza a encriptação para proteger as suas informações. Quando o Chromium tentou estabelecer ligação a <ph name="SITE" /> desta vez, o Website devolveu credenciais invulgares e incorretas. Isto pode acontecer quando um utilizador mal intencionado tenta simular ser <ph name="SITE" /> ou quando um ecrã de início de sessão Wi-Fi interrompe a ligação. As suas informações continuam seguras porque o Chromium interrompeu a ligação antes de qualquer troca de dados.</translation>
 <translation id="9107467864910557787">O navegador é gerido por <ph name="MANAGER" /></translation>
@@ -4227,6 +4233,8 @@
 <translation id="9139318394846604261">Compras</translation>
 <translation id="9141013498910525015">Gerir endereços</translation>
 <translation id="9144951720726881238">Data de validade:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Inicie sessão<ph name="END_LINK" /> 
+    novamente e, em seguida, regresse a este separador para obter ajuda na escrita</translation>
 <translation id="9148507642005240123">&amp;Anular edição</translation>
 <translation id="9148599396704355100">O preço é baixo</translation>
 <translation id="9150025764986957246">Pode introduzir, por exemplo:</translation>
diff --git a/components/strings/components_strings_ro.xtb b/components/strings/components_strings_ro.xtb
index 9129233..05166ef4 100644
--- a/components/strings/components_strings_ro.xtb
+++ b/components/strings/components_strings_ro.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Urmărirea prețului este dezactivată</translation>
 <translation id="127777513559587977">Talk-show-uri</translation>
 <translation id="1281476433249504884">Receptorul de hârtie 1</translation>
+<translation id="1281536351321444151">Pentru a completa automat acest IBAN data viitoare, salvează-l în Contul Google</translation>
 <translation id="1282358575813748144">Bărci și vehicule acvatice</translation>
 <translation id="1283977499362032052">CV-uri și portofolii</translation>
 <translation id="1285320974508926690">Nu traduce niciodată acest site</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Tava 8</translation>
 <translation id="1530707389502320859">Site-ul pe care ai încercat să-l accesezi pare fals. Uneori, atacatorii imită site-uri aducând modificări mici, greu de observat, adresei URL.</translation>
 <translation id="1532118530259321453">Această pagină afișează mesajul</translation>
+<translation id="1533966801397200693">Profilul la care te-ai conectat este un profil gestionat. Administratorul poate să modifice setările profilului de la distanță, să analizeze informațiile despre browser cu ajutorul rapoartelor și să finalizeze alte activități necesare. <ph name="BEGIN_LINK" />Află mai multe<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Tradu pagina</translation>
 <translation id="1537807545287921620">Acest PDF nu se poate accesa. Deschide meniul contextual și activează „extrage textul din PDF”</translation>
 <translation id="1539840569003678498">Raportul a fost trimis:</translation>
@@ -568,6 +570,7 @@
 <translation id="2046951263634619614">Vânzători de carte</translation>
 <translation id="2048261947532620704">Se traduce pagina</translation>
 <translation id="2053111141626950936">Paginile în <ph name="LANGUAGE" /> nu vor fi traduse.</translation>
+<translation id="2055461225779831292">Folosește și deplasează camerele foto (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Să blocheze cursorul de mouse</translation>
 <translation id="2056658168519009885">Site-urile pot solicita informații de la Chrome pentru a personaliza anunțurile pe care le vezi.</translation>
 <translation id="2059166748188874810">Municipiu</translation>
@@ -715,6 +718,7 @@
 <translation id="2300306941146563769">Nu s-a încărcat</translation>
 <translation id="2301098101308036335">ce site-uri sunt accesate și când.</translation>
 <translation id="230286397113210245">Butonul Deschide o fereastră incognito, activează pentru a deschide o nouă fereastră incognito ca să navighezi în privat</translation>
+<translation id="2306124309679506798">Permiți o experiență captivantă?</translation>
 <translation id="2312234273148520048">Condimente și sosuri</translation>
 <translation id="2316087952091171402">Mai puțin de <ph name="UPPER_ESTIMATE" />. Este posibil ca unele site-uri să se încarce mai lent la următoarea vizită.</translation>
 <translation id="2316159751672436664">Personalizează instrumentele de accesibilitate în setările sistemului de operare Chrome</translation>
@@ -1170,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, apasă pe Tab, apoi pe Enter pentru a personaliza aspectul browserului</translation>
 <translation id="3240791268468473923">Foaia „Datele de conectare pentru plăți securizate nu corespund datelor de conectare” este deschisă</translation>
 <translation id="324180406144491771">Linkurile <ph name="HOST_NAME" /> sunt blocate</translation>
+<translation id="3248329428895535435">Nu afișa pe acest site</translation>
 <translation id="3252772880526154546">Arhitectură</translation>
 <translation id="3254301855501243548">18 x 22 in</translation>
 <translation id="3255926992597692024">Chromium încearcă să modifice setările pentru completarea metodelor de plată.</translation>
@@ -1185,6 +1190,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Introdu codul de verificare din <ph name="NUMBER_OF_DIGITS" /> cifre</translation>
 <translation id="3272643614306383237">Mai puțin de 1 MB. Este posibil ca unele site-uri să se încarce mai lent la următoarea vizită.</translation>
+<translation id="3273738040255912340">Administratorul poate să modifice profilul și browserul de la distanță, să analizeze informațiile despre browser cu ajutorul rapoartelor și să finalizeze alte activități necesare. Este posibil ca activitatea de pe acest dispozitiv să fie gestionată și din afara Chromium. <ph name="BEGIN_LINK" />Află mai multe<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Politica implementată de administrator nu recomandă să deschizi acest fișier în <ph name="DESTINATION_NAME" />}few{Politica implementată de administrator nu recomandă să deschizi aceste fișiere în <ph name="DESTINATION_NAME" />}other{Politica implementată de administrator nu recomandă să deschizi aceste fișiere în <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Organizația ta, <ph name="ENROLLMENT_DOMAIN" />, a trimis câteva informații următoarelor site-uri, cum ar fi setări sau politici.</translation>
 <translation id="3286372614333682499">portret</translation>
@@ -1603,6 +1609,7 @@
 <translation id="4082333119419111506">Hârtie (preprintată)</translation>
 <translation id="4082393374666368382">Setări – Administrator</translation>
 <translation id="4084219288110917128">Plic C1</translation>
+<translation id="4085326869263783566">Ajută-mă să scriu. Atinge și apasă pe Enter pentru a deschide.</translation>
 <translation id="4088981014127559358">Deplasarea poziției Y a imaginii de pe fața 1</translation>
 <translation id="4089152113577680600">Tava 14</translation>
 <translation id="4092349052316400070">Completează adresa</translation>
@@ -3783,6 +3790,7 @@
 <translation id="8263001937536038617">Servicii foto și video</translation>
 <translation id="8265992338205884890">Date vizibile</translation>
 <translation id="8267698848189296333">Te conectezi ca <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Documente separate/Copii colaționate</translation>
 <translation id="8269703227894255363">{0,plural, =1{Fișierul nu poate fi deschis}few{<ph name="FILE_COUNT" /> fișiere nu pot fi deschise}other{<ph name="FILE_COUNT" /> de fișiere nu pot fi deschise}}</translation>
 <translation id="8270173610195068258">Infracțiuni și justiție</translation>
@@ -3887,6 +3895,7 @@
 <translation id="8446884382197647889">Află mai multe</translation>
 <translation id="8449155699563577224">17 x 24 in</translation>
 <translation id="8449836157089738489">Deschideți-le pe toate într-un nou grup de file</translation>
+<translation id="84561192812921051">Administratorul poate să modifice profilul și browserul de la distanță, să analizeze informațiile despre browser cu ajutorul rapoartelor și să finalizeze alte activități necesare. Este posibil ca activitatea de pe acest dispozitiv să fie gestionată și din afara Chrome.  <ph name="BEGIN_LINK" />Află mai multe<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Durată nedefinită</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Activează</translation>
@@ -4202,6 +4211,7 @@
 <translation id="9094544726794842788">Nu îmi place: deschide un formular pentru a trimite feedback detaliat despre motivele pentru care nu apreciezi aceste rezultate</translation>
 <translation id="9095388113577226029">Mai multe limbi...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, apasă pe tab, apoi pe Enter ca să setezi Chrome ca browser prestabilit pentru sistem în setările iOS</translation>
+<translation id="9101450247048146228">Folosirea și deplasarea camerei (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Tava 1</translation>
 <translation id="9103872766612412690">Site-ul <ph name="SITE" /> folosește în mod obișnuit criptarea pentru a-ți proteja informațiile. Când Chromium a încercat să se conecteze la <ph name="SITE" /> de această dată, site-ul a returnat date de conectare neobișnuite și incorecte. Acest lucru s-a întâmplat fie pentru că un atacator încearcă să falsifice site-ul <ph name="SITE" />, fie pentru că un ecran de conectare Wi-Fi a întrerupt conexiunea. Securitatea informațiilor tale nu a fost afectată, deoarece Chromium a oprit conexiunea înainte ca datele să fie transferate.</translation>
 <translation id="9107467864910557787">Browserul este gestionat de <ph name="MANAGER" /></translation>
@@ -4224,6 +4234,8 @@
 <translation id="9139318394846604261">Cumpărături</translation>
 <translation id="9141013498910525015">Gestionează adresele</translation>
 <translation id="9144951720726881238">Data expirării:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Conectează-te<ph name="END_LINK" />
+    din nou, apoi revino la această filă pentru a primi ajutor la scriere</translation>
 <translation id="9148507642005240123">&amp;Anulați editarea</translation>
 <translation id="9148599396704355100">Prețul este mic</translation>
 <translation id="9150025764986957246">Poți introduce, de exemplu:</translation>
diff --git a/components/strings/components_strings_si.xtb b/components/strings/components_strings_si.xtb
index ab91f90..827c076 100644
--- a/components/strings/components_strings_si.xtb
+++ b/components/strings/components_strings_si.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">පොත් විකුණන්නන්</translation>
 <translation id="2048261947532620704">පිටුව පරිවර්තනය කරමින්</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> හි පිටු පරිවර්තන නොකෙරේ</translation>
+<translation id="2055461225779831292">ඔබේ කැමරා භාවිත කරන්න සහ එහා මෙහා කරන්න (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">ඔබේ මූසික ලකුණුකරයට අගුලු දමන්න</translation>
 <translation id="2056658168519009885">ඔබ දකින දැන්වීම් පෞද්ගලීකරණය කිරීමට උදවු කිරීමට අඩවිවලට තොරතුරු සඳහා Chrome වෙතින් විමසිය හැක.</translation>
 <translation id="2059166748188874810">නගර සභාව</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">උඩුගත නොකළා</translation>
 <translation id="2301098101308036335">කුමන වෙබ් අඩවි වලට පිවිසෙන්නේ ද සහ කෙවිට ද යන්න.</translation>
 <translation id="230286397113210245">අප්‍රසිද්ධ කවුළුව විවෘත කරන්න බොත්තම, පෞද්ගලිකව බ්‍රවුස් කිරීමට නව අප්‍රසිද්ධ කවුළුවක් විවෘත කිරීමට සක්‍රිය කරන්න</translation>
+<translation id="2306124309679506798">ගිල්වන අත්දැකීමකට ඉඩ දෙන්නද?</translation>
 <translation id="2312234273148520048">කුළුබඩු සහ සැරහුම්</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" />ට වඩා අඩු. සමහර අඩවි ඔබේ මීළඟ පිවිසීමෙහි වඩා සෙමින් පූරණය විය හැක.</translation>
 <translation id="2316159751672436664">ChromeOS සැකසීම් තුළ ඔබගේ ප්‍රවේශ්‍යතා මෙවලම් පුද්ගලිකකරණය කරන්න</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, ඔබගේ බ්‍රවුසරයේ පෙනුම අභිරුචිකරණය කිරීමට Tab ඔබා අනතුරුව Enter ඔබන්න</translation>
 <translation id="3240791268468473923">සුරක්ෂිත ගෙවීම් අක්තපත්‍ර ගැළපෙන අක්තපත්‍ර පත්‍රය විවෘත කර නැත</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” සබැඳි අවහිර කර ඇත</translation>
+<translation id="3248329428895535435">මෙම අඩවිය මත නොපෙන්වන්න</translation>
 <translation id="3252772880526154546">ගෘහ නිර්මාණ ශිල්පය</translation>
 <translation id="3254301855501243548">අඟ 18 x 22</translation>
 <translation id="3255926992597692024">Chromium ගෙවීම් ක්‍රම පිරවීම සඳහා සැකසීම් වෙනස් කිරීමට උත්සාහ දරයි.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">කඩදාසි (පෙර මුද්‍රිත)</translation>
 <translation id="4082393374666368382">සැකසීම් - කළමනාකරණය</translation>
 <translation id="4084219288110917128">ලියුම් කවරය C1</translation>
+<translation id="4085326869263783566">මට ලියන්න උදවු කරන්න. විවෘත කිරීමට පටිත්ත සහ Enter ඔබන්න</translation>
 <translation id="4088981014127559358">පැත්ත 1 රූප Y වැඩ මුරය</translation>
 <translation id="4089152113577680600">Tray 14</translation>
 <translation id="4092349052316400070">ලිපිනය පුරවන්න</translation>
@@ -2306,6 +2310,7 @@
 <translation id="5447765697759493033">මෙම අඩවිය පරිවර්තනය නොවනු ඇත</translation>
 <translation id="5452270690849572955"><ph name="HOST_NAME" /> පිටුව සොයා ගත නොහැකිය</translation>
 <translation id="5455374756549232013">දූශිත ප්‍රතිපත්ති කාල මුද්‍රා</translation>
+<translation id="5456428544444655325">කිසි විටෙක නොපෙන්වන්න</translation>
 <translation id="5456839782162429664">ස්වයං පිරවුම භාවිතයෙන් ඔබ ගෙවන සෑම අවස්ථාවකම හස්තීයව සත්‍යාපනය කරන්න</translation>
 <translation id="5457113250005438886">අවලංගු</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> සහ තව <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" /> සහ තව <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" /> සහ තව <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation>
@@ -3785,6 +3790,7 @@
 <translation id="8263001937536038617">ඡායාරූප සහ වීඩියෝ සේවා</translation>
 <translation id="8265992338205884890">පෙනෙන දත්ත</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" /> ලෙස පිරීම</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">වෙන් වූ ලේඛන/එකතු කළ පිටපත්</translation>
 <translation id="8269703227894255363">{0,plural, =1{ගොනුව විවෘත කිරීම අවහිර කර ඇත}one{ගොනු <ph name="FILE_COUNT" />ක් විවෘත කිරීම අවහිර කර ඇත}other{ගොනු <ph name="FILE_COUNT" />ක් විවෘත කිරීම අවහිර කර ඇත}}</translation>
 <translation id="8270173610195068258">අපරාධ සහ යුක්තිය</translation>
@@ -4204,6 +4210,7 @@
 <translation id="9094544726794842788">ඔබ මෙම ප්‍රතිඵල වලට අකමැති හේතුව පිළිබඳව සවිස්තරාත්මක ප්‍රතිපෝෂණ ඉදිරිපත් කිරීම සඳහා මාපටැඟිල්ලක් පහළට පෝරමයක් විවෘත කරයි</translation>
 <translation id="9095388113577226029">තවත් භාෂා...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, iOS සැකසීම් තුළ පද්ධතියේ පෙරනිමි බ්‍රවුසරය ලෙස Chrome සැකසීමට ටැබය ඔබා අනතුරුව Enter ඔබන්න</translation>
+<translation id="9101450247048146228">කැමරා භාවිතය සහ චලනය (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">බඳුන 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> සාමාන්‍යයෙන් ඔබගේ තොරතුරු ආරක්ෂා කිරීමට සංකේතනය භාවිත කරයි. මෙම අවස්ථාවේ දී Chromium <ph name="SITE" /> වෙත සබැඳීමට උත්සාහ කළ විට, වෙබ් අඩවිය අසාමාන්‍ය සහ වැරදි අක්තපත්‍ර ආපසු එවයි. ප්‍රහාරකයෙක් <ph name="SITE" /> මෙන් ඇඟවීමට උත්සාහ කරමින් සිටින විට, හෝ Wi-Fi පිරීම් තිරයට බාධා වූ විට මෙය සිදු විය හැකිය. දත්ත කිසිවක් හුවමාරු කර ගැනීමට පෙර Chromium සබැඳුම නතර කළ නිසා ඔබගේ තොරතුරු තවමත් සුරක්ෂිතය.</translation>
 <translation id="9107467864910557787">ඔබගේ බ්‍රවුසරය <ph name="MANAGER" /> විසින් කළමනාකරණය කෙරේ</translation>
@@ -4226,6 +4233,7 @@
 <translation id="9139318394846604261">සාප්පු යාම</translation>
 <translation id="9141013498910525015">ලිපින කළමනා කරන්න</translation>
 <translation id="9144951720726881238">කල් ඉකුත් වීමේ දිනය:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />නැවත පුරන්න<ph name="END_LINK" />, පසුව ලිවීමේ උදවු ලබා ගැනීමට මෙම පටිත්ත වෙත ආපසු එන්න</translation>
 <translation id="9148507642005240123">සංස්කරණය &amp;පසුගමනය කරන්න</translation>
 <translation id="9148599396704355100">මිල අඩුයි</translation>
 <translation id="9150025764986957246">ඔබට මෙවැනි දේවල් ඇතුළු කළ හැක:</translation>
diff --git a/components/strings/components_strings_sk.xtb b/components/strings/components_strings_sk.xtb
index 6ea8d1c..bc5b70c 100644
--- a/components/strings/components_strings_sk.xtb
+++ b/components/strings/components_strings_sk.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Maloobchody s knihami</translation>
 <translation id="2048261947532620704">Stránka sa prekladá</translation>
 <translation id="2053111141626950936">Stránky v jazyku <ph name="LANGUAGE" /> nebudú prekladané.</translation>
+<translation id="2055461225779831292">Používať kamery a pohybovať nimi (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Uzamknúť kurzor myši</translation>
 <translation id="2056658168519009885">Weby môžu požiadať Chrome o informácie, aby mohli prispôsobovať reklamy, ktoré sa vám zobrazujú.</translation>
 <translation id="2059166748188874810">Správna jednotka</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Nenahrané</translation>
 <translation id="2301098101308036335">Ktoré weby sú navštívené a kedy.</translation>
 <translation id="230286397113210245">Tlačidlo Otvoriť okno inkognito, ktorého aktivovaním otvoríte okno inkognito na anonymné prehliadanie</translation>
+<translation id="2306124309679506798">Chcete povoliť imerzívne prostredie?</translation>
 <translation id="2312234273148520048">Prísady do jedál a dresingy</translation>
 <translation id="2316087952091171402">Menej ako <ph name="UPPER_ESTIMATE" />. Pri vašej ďalšej návšteve sa môžu niektoré weby načítať pomalšie.</translation>
 <translation id="2316159751672436664">Prispôsobiť nástroje dostupnosti v nastaveniach systému Chrome OS</translation>
@@ -1169,6 +1171,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, postupným stlačením klávesov Tab a Enter si prispôsobte vzhľad prehliadača</translation>
 <translation id="3240791268468473923">Hárok s nezodpovedajúcim poverením pre prihlasovací údaj zabezpečenej platby je otvorený</translation>
 <translation id="324180406144491771">Odkazy na hostiteľa <ph name="HOST_NAME" /> sú blokované</translation>
+<translation id="3248329428895535435">Nezobrazovať na tomto webe</translation>
 <translation id="3252772880526154546">Architektúra</translation>
 <translation id="3254301855501243548">18 × 22 palcov</translation>
 <translation id="3255926992597692024">Chromium sa pokúša upraviť nastavenia vypĺňania spôsobov platby.</translation>
@@ -1602,6 +1605,7 @@
 <translation id="4082333119419111506">Papier (s predtlačou)</translation>
 <translation id="4082393374666368382">Nastavenia – správa</translation>
 <translation id="4084219288110917128">Obálka C1</translation>
+<translation id="4085326869263783566">Asistent pri písaní. Otvoríte stlačením klávesov Tab a Enter.</translation>
 <translation id="4088981014127559358">Posun obrázka strany č. 1 na osi Y</translation>
 <translation id="4089152113577680600">Zásobník č. 14</translation>
 <translation id="4092349052316400070">Vyplňte adresu</translation>
@@ -3781,6 +3785,7 @@
 <translation id="8263001937536038617">Fotografické služby a videoslužby</translation>
 <translation id="8265992338205884890">Viditeľné údaje</translation>
 <translation id="8267698848189296333">Prihlasovanie pomocou účtu <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Samostatné dokumenty alebo zoradené kópie</translation>
 <translation id="8269703227894255363">{0,plural, =1{Otvorenie súboru bolo zablokované}few{Otvorenie <ph name="FILE_COUNT" /> súborov bolo zablokované}many{<ph name="FILE_COUNT" /> files blocked from opening}other{Otvorenie <ph name="FILE_COUNT" /> súborov bolo zablokované}}</translation>
 <translation id="8270173610195068258">Zločin a spravodlivosť</translation>
@@ -4201,6 +4206,7 @@
 <translation id="9094544726794842788">Označením palcom dole otvoríte formulár na odoslanie podrobnej spätnej väzby o tom, prečo sa vám tieto výsledky nepáčia</translation>
 <translation id="9095388113577226029">Ďalšie jazyky…</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, postupným stlačením klávesov Tab a Enter nastavíte Chrome ako predvolený prehliadač systému v nastaveniach iOS</translation>
+<translation id="9101450247048146228">Používanie kamier a pohybovanie nimi (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Priehradka č. 1</translation>
 <translation id="9103872766612412690">Web <ph name="SITE" /> zvyčajne chráni vaše informácie pomocou šifrovania. Keď sa prehliadač Chromium tentokrát pokúsil pripojiť k webu <ph name="SITE" />, odoslal späť nezvyčajné a nesprávne poverenia. Môže sa to stať vtedy, keď sa za web <ph name="SITE" /> snaží vydávať útočník alebo keď pripojenie preruší prihlasovacia obrazovka siete Wi‑Fi. Vaše informácie sú stále zabezpečené, pretože prehliadač Chromium zastavil pripojenie ešte pred výmenou dát.</translation>
 <translation id="9107467864910557787">Váš prehliadač spravuje <ph name="MANAGER" /></translation>
@@ -4223,6 +4229,7 @@
 <translation id="9139318394846604261">Nákupy</translation>
 <translation id="9141013498910525015">Spravovať adresy</translation>
 <translation id="9144951720726881238">Dátum ukončenia platnosti:</translation>
+<translation id="9145910032514306808">Ak chcete získať pomoc s písaním, znova <ph name="BEGIN_LINK" />sa prihláste<ph name="END_LINK" /> a vráťte sa na túto kartu</translation>
 <translation id="9148507642005240123">&amp;Vrátiť späť úpravu</translation>
 <translation id="9148599396704355100">Cena je nízka</translation>
 <translation id="9150025764986957246">Môžete napríklad zadať:</translation>
diff --git a/components/strings/components_strings_sl.xtb b/components/strings/components_strings_sl.xtb
index 43d05ab..3a8912f 100644
--- a/components/strings/components_strings_sl.xtb
+++ b/components/strings/components_strings_sl.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Spremljanje cene je izklopljeno</translation>
 <translation id="127777513559587977">Televizijske pogovorne oddaje</translation>
 <translation id="1281476433249504884">Zlagalnik 1</translation>
+<translation id="1281536351321444151">Če želite, da se številka IBAN naslednjič izpolni samodejno, jo shranite v računu Google</translation>
 <translation id="1282358575813748144">Čolni in plovila</translation>
 <translation id="1283977499362032052">Življenjepisi in portfelji</translation>
 <translation id="1285320974508926690">Nikoli ne prevedi tega spletnega mesta</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Pladenj 8</translation>
 <translation id="1530707389502320859">Spletno mesto, ki ste ga pravkar poskusili odpreti, je videti lažno. Napadalci včasih poskušajo kopirati spletna mesta, tako da skoraj neopazno spremenijo URL.</translation>
 <translation id="1532118530259321453">Ta stran sporoča:</translation>
+<translation id="1533966801397200693">Profil, v katerega ste prijavljeni, je upravljani profil. Skrbnik lahko na daljavo spreminja nastavitve profila, analizira podatke o brskalniku prek poročanja in izvaja druga potrebna opravila. <ph name="BEGIN_LINK" />Več o tem<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Prevedi stran</translation>
 <translation id="1537807545287921620">Ta datoteka PDF ni dostopna. Odprite kontekstni meni in vklopite možnost »pridobivanja besedila iz datoteke PDF«</translation>
 <translation id="1539840569003678498">Poslano poročilo:</translation>
@@ -568,6 +570,7 @@
 <translation id="2046951263634619614">Trgovine s knjigami</translation>
 <translation id="2048261947532620704">Prevajanje strani</translation>
 <translation id="2053111141626950936">Strani v jeziku <ph name="LANGUAGE" /> ne bodo prevedene.</translation>
+<translation id="2055461225779831292">Uporaba in premikanje kamer (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Zaklepanje kazalca miške</translation>
 <translation id="2056658168519009885">Spletna mesta lahko od Chroma zahtevajo podatke za pomoč pri osebnem prilagajanju prikazanih oglasov.</translation>
 <translation id="2059166748188874810">Občina</translation>
@@ -715,6 +718,7 @@
 <translation id="2300306941146563769">Ni naloženo</translation>
 <translation id="2301098101308036335">Katera spletna mesta so obiskana in kdaj.</translation>
 <translation id="230286397113210245">Gumb za odpiranje anonimnega okna, aktivirajte, če želite odpreti novo anonimno okno za zasebno brskanje</translation>
+<translation id="2306124309679506798">Želite dovoliti prostorsko izkušnjo?</translation>
 <translation id="2312234273148520048">Prelivi in dodatki</translation>
 <translation id="2316087952091171402">Manj kot <ph name="UPPER_ESTIMATE" />. Nekatera spletna mesta se bodo ob naslednjem obisku morda počasneje naložila.</translation>
 <translation id="2316159751672436664">Osebno prilagajanje orodij za ljudi s posebnimi potrebami v nastavitvah sistema Chrome OS.</translation>
@@ -1170,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, pritisnite tabulatorko, nato Enter, če želite prilagoditi videz brskalnika.</translation>
 <translation id="3240791268468473923">Preglednica za neujemanje poverilnic poverilnice za varno plačilo je odprta</translation>
 <translation id="324180406144491771">Povezave gostitelja »<ph name="HOST_NAME" />« so blokirane</translation>
+<translation id="3248329428895535435">Ne pokaži na tem spletnem mestu</translation>
 <translation id="3252772880526154546">Arhitektura</translation>
 <translation id="3254301855501243548">18 x 22 palcev</translation>
 <translation id="3255926992597692024">Chromium poskuša spremeniti nastavitve za izpolnjevanje podatkov o plačilnih sredstvih.</translation>
@@ -1185,6 +1190,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Vnesite <ph name="NUMBER_OF_DIGITS" />-mestno kodo za preverjanje</translation>
 <translation id="3272643614306383237">Manj kot 1 MB. Nekatera spletna mesta se bodo ob naslednjem obisku morda počasneje naložila.</translation>
+<translation id="3273738040255912340">Skrbnik lahko na daljavo spreminja vaš profil in brskalnik, analizira podatke o brskalniku prek poročanja in izvaja druga potrebna opravila. Dejavnost v tej napravi morda tudi upravljajo zunaj Chromiuma. <ph name="BEGIN_LINK" />Več o tem<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Pravilnik skrbnika ne priporoča odpiranja te datoteke tukaj: <ph name="DESTINATION_NAME" />.}one{Pravilnik skrbnika ne priporoča odpiranja teh datotek tukaj: <ph name="DESTINATION_NAME" />.}two{Pravilnik skrbnika ne priporoča odpiranja teh datotek tukaj: <ph name="DESTINATION_NAME" />.}few{Pravilnik skrbnika ne priporoča odpiranja teh datotek tukaj: <ph name="DESTINATION_NAME" />.}other{Pravilnik skrbnika ne priporoča odpiranja teh datotek tukaj: <ph name="DESTINATION_NAME" />.}}</translation>
 <translation id="3282085321714087552">Vaša organizacija, <ph name="ENROLLMENT_DOMAIN" />, je poslala nekatere podatke, kot so nastavitve ali pravilniki, na ta spletna mesta.</translation>
 <translation id="3286372614333682499">pokončno</translation>
@@ -1603,6 +1609,7 @@
 <translation id="4082333119419111506">Paper (Preprinted)</translation>
 <translation id="4082393374666368382">Nastavitve – upravljanje</translation>
 <translation id="4084219288110917128">Kuverta C1</translation>
+<translation id="4085326869263783566">Pomagaj mi pisati. Pritisnite tabulatorko in tipko Enter, če želite odpreti.</translation>
 <translation id="4088981014127559358">Pomik slike na 1. strani v Y</translation>
 <translation id="4089152113577680600">Pladenj 14</translation>
 <translation id="4092349052316400070">Izpolni naslov</translation>
@@ -3783,6 +3790,7 @@
 <translation id="8263001937536038617">Fotografske in video storitve</translation>
 <translation id="8265992338205884890">Vidni podatki</translation>
 <translation id="8267698848189296333">Prijava kot: <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Ločeni dokumenti/zbrane kopije</translation>
 <translation id="8269703227894255363">{0,plural, =1{Odpiranje datoteke je blokirano}one{Odpiranje <ph name="FILE_COUNT" /> datoteke je blokirano}two{Odpiranje <ph name="FILE_COUNT" /> datotek je blokirano}few{Odpiranje <ph name="FILE_COUNT" /> datotek je blokirano}other{Odpiranje <ph name="FILE_COUNT" /> datotek je blokirano}}</translation>
 <translation id="8270173610195068258">Kriminaliteta in pravosodje</translation>
@@ -3887,6 +3895,7 @@
 <translation id="8446884382197647889">Več o tem</translation>
 <translation id="8449155699563577224">17 x 24 palcev</translation>
 <translation id="8449836157089738489">Odpri vse v novi skupini zavihkov</translation>
+<translation id="84561192812921051">Skrbnik lahko na daljavo spreminja vaš profil in brskalnik, analizira podatke o brskalniku prek poročanja in izvaja druga potrebna opravila. Dejavnost v tej napravi morda tudi upravljajo zunaj Chroma.  <ph name="BEGIN_LINK" />Več o tem<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Neomejeno</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Vklopi</translation>
@@ -4201,6 +4210,7 @@
 <translation id="9094544726794842788">S palcem dol odprete obrazec za pošiljanje podrobnih povratnih informacij glede tega, zakaj vam ti rezultati niso všeč</translation>
 <translation id="9095388113577226029">Več jezikov …</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, pritisnite tabulatorko, nato tipko Enter, če želite nastaviti Chrome kot privzeti brskalnik sistema v nastavitvah sistema iOS.</translation>
+<translation id="9101450247048146228">Uporaba in premikanje kamere (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Pladenj 1</translation>
 <translation id="9103872766612412690">Spletno mesto <ph name="SITE" /> za zaščito vaših podatkov običajno uporablja šifriranje. Ko se je Chromium tokrat poskusil povezati s spletnim mestom <ph name="SITE" />, je to vrnilo nenavadne in nepravilne poverilnice. Do tega lahko pride, če se napadalec lažno predstavlja za spletno mesto <ph name="SITE" /> ali če je povezavo prekinil zaslon za prijavo v omrežje Wi-Fi. Vaši podatki so še vedno varni, saj je Chromium pred izmenjavo podatkov prekinil povezavo.</translation>
 <translation id="9107467864910557787">Vaš brskalnik upravlja domena <ph name="MANAGER" /></translation>
@@ -4223,6 +4233,8 @@
 <translation id="9139318394846604261">Nakupovanje</translation>
 <translation id="9141013498910525015">Upravljanje naslovov</translation>
 <translation id="9144951720726881238">Datum poteka:</translation>
+<translation id="9145910032514306808">Znova <ph name="BEGIN_LINK" />se prijavite<ph name="END_LINK" />,
+    nato se vrnite na ta zavihek, če želite pomoč pri pisanju</translation>
 <translation id="9148507642005240123">&amp;Razveljavi urejanje</translation>
 <translation id="9148599396704355100">Cena je nizka</translation>
 <translation id="9150025764986957246">Vnesete lahko na primer:</translation>
diff --git a/components/strings/components_strings_sq.xtb b/components/strings/components_strings_sq.xtb
index bc74a547..ee27472 100644
--- a/components/strings/components_strings_sq.xtb
+++ b/components/strings/components_strings_sq.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Monitorimi i çmimeve është joaktiv</translation>
 <translation id="127777513559587977">Emisione televizive debati</translation>
 <translation id="1281476433249504884">Stivuesi 1</translation>
+<translation id="1281536351321444151">Për të plotësuar automatikisht këtë numër IBAN, ruaje atë në "Llogarinë tënde të Google"</translation>
 <translation id="1282358575813748144">Varka dhe mjete ujore</translation>
 <translation id="1283977499362032052">Rezyme dhe portofola pune</translation>
 <translation id="1285320974508926690">Asnjëherë mos e përkthe këtë sajt</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Tabakaja 8</translation>
 <translation id="1530707389502320859">Sajti ku sapo u përpoqe të hyje duket i rremë. Sulmuesit ndonjëherë i imitojnë sajtet duke bërë tek URL-ja ndryshime të vogla që janë të vështira për t'u shikuar.</translation>
 <translation id="1532118530259321453">Kjo faqe thotë</translation>
+<translation id="1533966801397200693">Profili në të cilin je identifikuar është një profil i menaxhuar. Administratori yt mund të bëjë ndryshime në cilësimet e profilit tënd në distancë, mund të analizojë informacionet rreth shfletuesit nëpërmjet raportimit dhe mund të kryejë detyra të tjera të nevojshme. <ph name="BEGIN_LINK" />Mëso më shumë<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Përkthe faqen</translation>
 <translation id="1537807545287921620">Kjo PDF është e paarritshme. Hap menynë kontekstuale dhe aktivizo "nxirr tekstin nga skedari PDF"</translation>
 <translation id="1539840569003678498">Raporti u dërgua:</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">Fut kodin e verifikimit <ph name="NUMBER_OF_DIGITS" />-shifror</translation>
 <translation id="3272643614306383237">Më pak se 1 MB. Disa sajte mund të ngarkohen më ngadalë në vizitën tënde të radhës.</translation>
+<translation id="3273738040255912340">Administratori yt mund të bëjë ndryshime në profilin dhe shfletuesin tënd në distancë, mund të analizojë informacionet rreth shfletuesit nëpërmjet raportimit dhe mund të kryejë detyra të tjera të nevojshme. Aktiviteti në këtë pajisje mund të menaxhohet edhe jashtë Chromium. <ph name="BEGIN_LINK" />Mëso më shumë<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Politika e administratorit nuk rekomandon hapjen e këtij skedari te: <ph name="DESTINATION_NAME" />}other{Politika e administratorit nuk rekomandon hapjen e këtyre skedarëve te: <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Organizata jote, <ph name="ENROLLMENT_DOMAIN" />, ka dërguar disa informacione te sajtet e mëposhtme të uebit, si p.sh. cilësime ose politika.</translation>
 <translation id="3286372614333682499">portret</translation>
@@ -3885,6 +3888,7 @@
 <translation id="8446884382197647889">Mëso më shumë</translation>
 <translation id="8449155699563577224">17 x 24 inç</translation>
 <translation id="8449836157089738489">Hapi të gjitha në një grup të ri skedash</translation>
+<translation id="84561192812921051">Administratori yt mund të bëjë ndryshime në profilin dhe shfletuesin tënd në distancë, mund të analizojë informacionet rreth shfletuesit nëpërmjet raportimit dhe mund të kryejë detyra të tjera të nevojshme. Aktiviteti në këtë pajisje mund të menaxhohet edhe jashtë Chrome.  <ph name="BEGIN_LINK" />Mëso më shumë<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">E papërcaktuar</translation>
 <translation id="8458202188076138974">Letër shtesë</translation>
 <translation id="8460854335417802511">Aktivizoje</translation>
diff --git a/components/strings/components_strings_sw.xtb b/components/strings/components_strings_sw.xtb
index 8419e13b..7f24c9d 100644
--- a/components/strings/components_strings_sw.xtb
+++ b/components/strings/components_strings_sw.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Ufuatiliaji bei umezimwa</translation>
 <translation id="127777513559587977">Vipindi vya Midahalo kwenye Runinga</translation>
 <translation id="1281476433249504884">Tupio la kutoa la printa la kwanza</translation>
+<translation id="1281536351321444151">Ili IBAN hii ijazwe kiotomatiki wakati ujao, ihifadhi kwenye akaunti yako ya Google</translation>
 <translation id="1282358575813748144">Mashua na Vyombo vya Majini</translation>
 <translation id="1283977499362032052">Wasifu na Violezo vya Wasifu</translation>
 <translation id="1285320974508926690">Kamwe usitafsiri tovuti hii</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Trei ya nane</translation>
 <translation id="1530707389502320859">Tovuti ambayo umejaribu kutembelea inaonekana kuwa bandia. Wakati mwingine, wadukuzi wanaweza kuiga tovuti kwa kufanya mabadiliko madogo na yasiyoonekana kwa urahisi kwenye URL.</translation>
 <translation id="1532118530259321453">Ukurasa huu unasema</translation>
+<translation id="1533966801397200693">Umetumia wasifu unaodhibitiwa kuingia katika akaunti. Msimamizi wako anaweza kufanya mabadiliko kwenye mipangilio ya wasifu wako akiwa mbali, kuchanganua taarifa kuhusu kivinjari kupitia kuripoti na kufanya majukumu mengine muhimu. <ph name="BEGIN_LINK" />Pata maelezo zaidi<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Tafsiri ukurasa</translation>
 <translation id="1537807545287921620">PDF hii haiwezi kufikiwa. Fungua menyu kisha uwashe kipengele cha "dondoa maandishi kwenye PDF"</translation>
 <translation id="1539840569003678498">Ripoti imetumwa:</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Ukubwa wa Super B</translation>
 <translation id="3272112314896217187">Weka namba ya kuthibitisha iliyo na tarakimu <ph name="NUMBER_OF_DIGITS" /></translation>
 <translation id="3272643614306383237">Chini ya MB 1. Huenda baadhi ya tovuti zikapakia polepole zaidi wakati mwingine utakapozitembelea.</translation>
+<translation id="3273738040255912340">Msimamizi wako anaweza kufanya mabadiliko kwenye wasifu na kivinjari chako akiwa mbali, kuchanganua maelezo kuhusu kivinjari kupitia kuripoti na kutekeleza majukumu mengine muhimu. Huenda pia shughuli kwenye kifaa hiki zikadhibitiwa nje ya Chromium. <ph name="BEGIN_LINK" />Pata maelezo zaidi<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Sera ya msimamizi haipendekezi kufungua faili hii kwenye <ph name="DESTINATION_NAME" />}other{Sera ya msimamizi haipendekezi kufungua faili hizi kwenye <ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Shirika lako, <ph name="ENROLLMENT_DOMAIN" />, limetuma maelezo fulani kwenye tovuti zifuatazo, kama vile mipangilio au sera.</translation>
 <translation id="3286372614333682499">wima</translation>
@@ -3883,6 +3886,7 @@
 <translation id="8446884382197647889">Pata Maelezo Zaidi</translation>
 <translation id="8449155699563577224">Inchi 17 x 24</translation>
 <translation id="8449836157089738489">Fungua zote katika kikundi kipya cha vichupo</translation>
+<translation id="84561192812921051">Msimamizi wako anaweza kufanya mabadiliko kwenye wasifu na kivinjari chako akiwa mbali, kuchanganua maelezo kuhusu kivinjari kupitia kuripoti na kutekeleza majukumu mengine muhimu. Huenda shughuli kwenye kifaa hiki zikadhibitiwa nje ya Chrome.  <ph name="BEGIN_LINK" />Pata maelezo zaidi<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Haijabainishwa</translation>
 <translation id="8458202188076138974">Ukubwa wa Letter Extra</translation>
 <translation id="8460854335417802511">Washa</translation>
diff --git a/components/strings/components_strings_ta.xtb b/components/strings/components_strings_ta.xtb
index 488c8471..20601aa 100644
--- a/components/strings/components_strings_ta.xtb
+++ b/components/strings/components_strings_ta.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">விலையைக் கண்காணிப்பது நிறுத்தப்பட்டுள்ளது</translation>
 <translation id="127777513559587977">டிவி உரையாடல் நிகழ்ச்சிகள்</translation>
 <translation id="1281476433249504884">ஸ்டேக்கர் 1</translation>
+<translation id="1281536351321444151">இந்த IBAN அடுத்த முறை தானாக நிரப்பப்பட இதை உங்கள் Google கணக்கில் சேமியுங்கள்</translation>
 <translation id="1282358575813748144">படகுகள் &amp; நீரில் செல்லும் வாகனங்கள்</translation>
 <translation id="1283977499362032052">ரெஸ்யூம்கள் &amp; போர்ட்ஃபோலியோக்கள்</translation>
 <translation id="1285320974508926690">இந்த தளத்தை எப்போதும் மொழிபெயர்க்க வேண்டாம்</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">தட்டு 8</translation>
 <translation id="1530707389502320859">நீங்கள் சற்றுமுன் பார்வையிட முயற்சித்த தளம் போலியானதைப் போல் தெரிகிறது. சில நேரங்களில் கண்டுப்பிடிக்கவே முடியாத அளவிற்கு URLல் சிறிய அளவு மாற்றங்களைச் செய்து போலியான தளங்களை தீங்கிழைப்பவர்கள் உருவாக்குவார்கள்.</translation>
 <translation id="1532118530259321453">இந்தப் பக்கம் தெரிவிப்பது:</translation>
+<translation id="1533966801397200693">நீங்கள் உள்நுழைந்துள்ள சுயவிவரம் நிர்வகிக்கப்படும் சுயவிவரமாகும். உங்கள் நிர்வாகி உங்கள் சுயவிவர அமைப்புகளில் தொலைநிலையில் இருந்தே மாற்றங்களைச் செய்யலாம், அறிக்கை மூலம் உலாவியைப் பற்றிய தகவல்களைப் பகுப்பாய்வு செய்யலாம், அவசியமான பிற பணிகளைச் செய்யலாம். <ph name="BEGIN_LINK" />மேலும் அறிக<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">பக்கத்தை மொழிபெயர்</translation>
 <translation id="1537807545287921620">இந்த PDFஐ அணுக முடியவில்லை. சூழல் மெனுவைத் திறந்து "PDF ஃபைலில் இருந்து வார்த்தைகளைப் பிரித்தெடு" என்பதை இயக்கவும்.</translation>
 <translation id="1539840569003678498">அறிக்கை அனுப்பப்பட்டது:</translation>
@@ -1182,6 +1184,7 @@
 <translation id="3272091146646336650">சூப்பர் B</translation>
 <translation id="3272112314896217187"><ph name="NUMBER_OF_DIGITS" /> இலக்கச் சரிபார்ப்புக் குறியீட்டை டைப் செய்யுங்கள்</translation>
 <translation id="3272643614306383237">1 மெ.பை. அளவைவிடக் குறைவாக உள்ளது. அடுத்த முறை சில தளங்கள் இன்னும் தாமதமாகக் காட்டப்படலாம்.</translation>
+<translation id="3273738040255912340">உங்கள் நிர்வாகி உங்கள் சுயவிவரத்திலும் உலாவியிலும் தொலைநிலையில் இருந்தே மாற்றங்களைச் செய்யலாம், அறிக்கை மூலம் உலாவியைப் பற்றிய தகவல்களைப் பகுப்பாய்வு செய்யலாம், அவசியமான பிற பணிகளைச் செய்யலாம். இந்தச் சாதனத்தில் மேற்கொள்ளப்படும் செயல்பாடுகளை Chromium அல்லாத பிற உலாவிகளிலும் நிர்வகிக்கலாம். <ph name="BEGIN_LINK" />மேலும் அறிக<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{<ph name="DESTINATION_NAME" /> இல் இந்த ஃபைலைத் திறப்பதை நிர்வாகக் கொள்கை பரிந்துரைக்கவில்லை}other{<ph name="DESTINATION_NAME" /> இல் இந்த ஃபைல்களைத் திறப்பதை நிர்வாகக் கொள்கை பரிந்துரைக்கவில்லை}}</translation>
 <translation id="3282085321714087552">அமைப்புகள், கொள்கைகள் போன்ற சில தகவல்களை உங்கள் நிறுவனம் <ph name="ENROLLMENT_DOMAIN" /> பின்வரும் இணையதளங்களுக்கு அனுப்பியுள்ளது.</translation>
 <translation id="3286372614333682499">போர்ட்ரெயிட்</translation>
@@ -3882,6 +3885,7 @@
 <translation id="8446884382197647889">மேலும் அறிக</translation>
 <translation id="8449155699563577224">17 x 24 இன்ச்</translation>
 <translation id="8449836157089738489">அனைத்தையும் புதிய பிரிவுக் குழுவில் திற</translation>
+<translation id="84561192812921051">உங்கள் நிர்வாகி உங்கள் சுயவிவரத்திலும் உலாவியிலும் தொலைநிலையில் இருந்தே மாற்றங்களைச் செய்யலாம், அறிக்கை மூலம் உலாவியைப் பற்றிய தகவல்களைப் பகுப்பாய்வு செய்யலாம், அவசியமான பிற பணிகளைச் செய்யலாம். இந்தச் சாதனத்தில் மேற்கொள்ளப்படும் செயல்பாடுகளை Chrome அல்லாத பிற உலாவிகளிலும் நிர்வகிக்கலாம்.  <ph name="BEGIN_LINK" />மேலும் அறிக<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">கால வரையறை இன்றி</translation>
 <translation id="8458202188076138974">லெட்டர் எக்ஸ்ட்ரா</translation>
 <translation id="8460854335417802511">இயக்கு</translation>
diff --git a/components/strings/components_strings_te.xtb b/components/strings/components_strings_te.xtb
index 31a4fa9..c9e15ed7 100644
--- a/components/strings/components_strings_te.xtb
+++ b/components/strings/components_strings_te.xtb
@@ -565,6 +565,7 @@
 <translation id="2046951263634619614">పుస్తకాల రిటైలర్‌లు</translation>
 <translation id="2048261947532620704">పేజీని అనువదిస్తోంది</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> భాషలో ఉన్న పేజీలు అనువదించబడవు.</translation>
+<translation id="2055461225779831292">మీ కెమెరాలను ఉపయోగించండి &amp; తరలించండి (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">మీ మౌస్ పాయింటర్‌ను లాక్ చేయండి</translation>
 <translation id="2056658168519009885">మీకు కనిపించే యాడ్‌లను వ్యక్తిగతీకరించడంలో సహాయపడే సమాచారాన్ని అందించాల్సిందిగా సైట్‌లు Chromeను అడగవచ్చు.</translation>
 <translation id="2059166748188874810">మున్సిపాలిటీ</translation>
@@ -712,6 +713,7 @@
 <translation id="2300306941146563769">అప్‌లోడ్ చేయలేదు</translation>
 <translation id="2301098101308036335">ఏ వెబ్‌సైట్‌లను సందర్శించారు, అలాగే ఎప్పుడు సందర్శించారు.</translation>
 <translation id="230286397113210245">'అజ్ఞాత విండోను తెరవండి' బటన్, ప్రైవేట్‌గా బ్రౌజ్ చేయడం కోసం కొత్త అజ్ఞాత విండోను తెరవడానికి దీన్ని యాక్టివేట్ చేయండి</translation>
+<translation id="2306124309679506798">లీనమయ్యే అనుభవాన్ని అనుమతించాలా?</translation>
 <translation id="2312234273148520048">మసాలాలు &amp; డ్రస్సింగ్</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" /> కంటే తక్కువ. మీరు తర్వాతిసారి ఉపయోగించినప్పుడు కొన్ని సైట్‌లు మరింత నిదానంగా లోడ్ కావచ్చు.</translation>
 <translation id="2316159751672436664">ChromeOS సెట్టింగ్‌లలో మీ యాక్సెసిబిలిటీ టూల్స్‌ను వ్యక్తిగతీకరించండి</translation>
@@ -1167,6 +1169,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, మీ బ్రౌజర్ రూపాన్ని అనుకూలంగా మార్చడానికి 'Tab'ను నొక్కి, ఆపై 'Enter'ను నొక్కండి</translation>
 <translation id="3240791268468473923">సురక్షితమైన పేమెంట్ ఆధారానికి సంబంధించిన మ్యాచ్ అయ్యే ఆధారాల షీట్ ఏదీ తెరవబడలేదు</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” లింక్‌లు బ్లాక్ చేయబడ్డాయి</translation>
+<translation id="3248329428895535435">ఈ సైట్‌లో చూపవద్దు</translation>
 <translation id="3252772880526154546">ఆర్కిటెక్చర్</translation>
 <translation id="3254301855501243548">18 x 22 అంగుళాలు</translation>
 <translation id="3255926992597692024">పేమెంట్ ఆప్షన్‌లను పూరించడానికి సంబంధించిన సెట్టింగ్‌లను ఎడిట్ చేయడానికి Chromium ట్రై చేస్తోంది.</translation>
@@ -1601,6 +1604,7 @@
 <translation id="4082333119419111506">పేపర్ (ప్రీప్రింటెడ్)</translation>
 <translation id="4082393374666368382">సెట్టింగ్‌లు - నిర్వహణ</translation>
 <translation id="4084219288110917128">ఎన్వలప్ C1</translation>
+<translation id="4085326869263783566">రాయడంలో సహాయం పొందండి. తెరవడానికి, Tabతో పాటు, Enter కీని నొక్కండి</translation>
 <translation id="4088981014127559358">1 వైపు ప్రింట్‌లో చిత్రాన్ని Y అక్షంలో జరపు</translation>
 <translation id="4089152113577680600">ట్రే 14</translation>
 <translation id="4092349052316400070">అడ్రస్‌ను పూరించండి</translation>
@@ -3781,6 +3785,7 @@
 <translation id="8263001937536038617">ఫోటో &amp; వీడియో సర్వీస్‌లు</translation>
 <translation id="8265992338205884890">కనిపించే డేటా</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" />గా సైన్ ఇన్ చేస్తోంది</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">విడి డాక్యుమెంట్‌లు/సమగ్ర కాపీలు</translation>
 <translation id="8269703227894255363">{0,plural, =1{తెరవకుండా ఫైల్ బ్లాక్ చేయబడింది}other{తెరవకుండా <ph name="FILE_COUNT" /> ఫైల్స్ బ్లాక్ చేయబడ్డాయి}}</translation>
 <translation id="8270173610195068258">నేరం &amp; న్యాయం</translation>
@@ -4200,6 +4205,7 @@
 <translation id="9094544726794842788">మీరు ఈ ఫలితాలను ఎందుకు డిస్‌లైక్ చేశారు అనే దాని గురించి వివరణాత్మక ఫీడ్‌బ్యాక్‌ను పంపడానికి 'బాగా లేదు' ఆప్షన్ మీ కోసం ఫారమ్‌ను తెరుస్తుంది</translation>
 <translation id="9095388113577226029">మరిన్ని భాషలు...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, ట్యాబ్‌ను నొక్కి, ఆపై 'Enter'ను నొక్కి iOS సెట్టింగ్‌లలో Chromeను సిస్టమ్ ఆటోమేటిక్ బ్రౌజర్‌గా సెట్ చేయండి</translation>
+<translation id="9101450247048146228">కెమెరా ఉపయోగం &amp; తరలింపు (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">ట్రే 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> సాధారణంగా మీ సమాచారాన్ని రక్షించడానికి ఎన్‌క్రిప్ష‌న్‌ను ఉపయోగిస్తుంది. Chromium ఈసారి <ph name="SITE" />‌ను కనెక్ట్ చేయడానికి ప్రయత్నించినప్పుడు, వెబ్‌సైట్ అసాధారణ మరియు తప్పు ఆధారాలు అని ప్రతిస్పందించింది. దాడి చేసే వ్యక్తి <ph name="SITE" />గా వ్యవహరించి మోసగించడానికి ప్రయత్నిస్తున్నప్పుడు లేదా Wi-Fi సైన్-ఇన్ స్క్రీన్ కనెక్షన్‌కు అంతరాయం కలిగించినప్పుడు ఇలా జరగవచ్చు. ఎలాంటి డేటా వినిమయం సంభవించక ముందే Chromium, కనెక్షన్‌ను ఆపివేసినందున మీ సమాచారం ఇప్పటికీ సురక్షితంగానే ఉంది.</translation>
 <translation id="9107467864910557787"><ph name="MANAGER" />, మీ బ్రౌజర్‌ను మేనేజ్ చేస్తోంది</translation>
@@ -4222,6 +4228,8 @@
 <translation id="9139318394846604261">షాపింగ్</translation>
 <translation id="9141013498910525015">అడ్రస్‌లను నిర్వహించండి</translation>
 <translation id="9144951720726881238">గడువు తేదీ:</translation>
+<translation id="9145910032514306808">మళ్లీ <ph name="BEGIN_LINK" />సైన్ ఇన్ చేసి<ph name="END_LINK" />,
+    తర్వాత తిరిగి ఈ ట్యాబ్‌కు వచ్చి రాయడంలో సహాయం పొందండి</translation>
 <translation id="9148507642005240123">&amp;సవరించడాన్ని రద్దు చేయండి</translation>
 <translation id="9148599396704355100">ధర తక్కువగా ఉంటుంది</translation>
 <translation id="9150025764986957246">మీరు ఇటువంటి అంశాలను ఎంటర్ చేయవచ్చు:</translation>
diff --git a/components/strings/components_strings_tr.xtb b/components/strings/components_strings_tr.xtb
index a9ea929..71baf28c 100644
--- a/components/strings/components_strings_tr.xtb
+++ b/components/strings/components_strings_tr.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Fiyat takibi devre dışı</translation>
 <translation id="127777513559587977">Televizyon Sohbet Programları</translation>
 <translation id="1281476433249504884">Yığınlayıcı 1</translation>
+<translation id="1281536351321444151">Bir dahaki sefere bu IBAN'ı otomatik doldurmak için Google Hesabınıza kaydedin</translation>
 <translation id="1282358575813748144">Tekneler ve Su Taşıtları</translation>
 <translation id="1283977499362032052">Özgeçmişler ve Portfolyolar</translation>
 <translation id="1285320974508926690">Bu siteyi asla çevirme</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Tepsi 8</translation>
 <translation id="1530707389502320859">Az önce girmeye çalıştığınız site sahte görünüyor. Saldırganlar bazen URL'de görülmesi zor ufak değişiklikler yaparak siteleri taklit ederler.</translation>
 <translation id="1532118530259321453">Bu sayfanın mesajı</translation>
+<translation id="1533966801397200693">Oturum açtığınız profil, yönetilen bir profildir. Yöneticiniz profil ayarlarınızda uzaktan değişiklik yapabilir, raporlama aracılığıyla tarayıcı hakkındaki bilgileri analiz edebilir ve diğer gerekli görevleri yerine getirebilir. <ph name="BEGIN_LINK" />Daha fazla bilgi<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Sayfayı çevir</translation>
 <translation id="1537807545287921620">Bu PDF'ye erişilemiyor. İçerik menüsünü açıp "PDF'den Metin Çıkar" ayarını etkinleştirin</translation>
 <translation id="1539840569003678498">Rapor gönderildi:</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187"><ph name="NUMBER_OF_DIGITS" /> haneli doğrulama kodunu girin</translation>
 <translation id="3272643614306383237">1 MB'tan az. Sonraki ziyaretinizde bazı siteler daha yavaş yüklenebilir.</translation>
+<translation id="3273738040255912340">Yöneticiniz profilinizde ve tarayıcınızda uzaktan değişiklik yapabilir, raporlama aracılığıyla tarayıcı hakkındaki bilgileri analiz edebilir ve diğer gerekli görevleri yerine getirebilir. Bu cihazdaki etkinlikler Chromium dışında da yönetilebilir. <ph name="BEGIN_LINK" />Daha fazla bilgi<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Yönetici politikası bu dosyayı <ph name="DESTINATION_NAME" /> hedefinde açmanızı önermiyor}other{Yönetici politikası bu dosyaları <ph name="DESTINATION_NAME" /> hedefinde açmanızı önermiyor}}</translation>
 <translation id="3282085321714087552">Kuruluşunuz (<ph name="ENROLLMENT_DOMAIN" />), aşağıdaki web sitelerine ayarlar ve politikalar gibi bazı bilgiler gönderdi.</translation>
 <translation id="3286372614333682499">dikey</translation>
@@ -3887,6 +3890,7 @@
 <translation id="8446884382197647889">Daha Fazla Bilgi Edinin</translation>
 <translation id="8449155699563577224">17 x 24 inç</translation>
 <translation id="8449836157089738489">Tümünü yeni sekme grubunda aç</translation>
+<translation id="84561192812921051">Yöneticiniz profilinizde ve tarayıcınızda uzaktan değişiklik yapabilir, raporlama aracılığıyla tarayıcı hakkındaki bilgileri analiz edebilir ve diğer gerekli görevleri yerine getirebilir. Bu cihazdaki etkinlikler Chrome dışında da yönetilebilir.  <ph name="BEGIN_LINK" />Daha fazla bilgi<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Süresiz</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Etkinleştir</translation>
diff --git a/components/strings/components_strings_uk.xtb b/components/strings/components_strings_uk.xtb
index 6cc6ad18..a29a37fc 100644
--- a/components/strings/components_strings_uk.xtb
+++ b/components/strings/components_strings_uk.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">Книжкові крамниці</translation>
 <translation id="2048261947532620704">Переклад сторінки</translation>
 <translation id="2053111141626950936">Сторінки цією мовою (<ph name="LANGUAGE" />) не перекладатимуться.</translation>
+<translation id="2055461225779831292">Використовувати й переміщувати камери (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">заблокувати курсор миші</translation>
 <translation id="2056658168519009885">Сайти можуть запитувати в Chrome інформацію, щоб персоналізувати для вас оголошення.</translation>
 <translation id="2059166748188874810">Муніципалітет</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">Не завантажено</translation>
 <translation id="2301098101308036335">Список відвідуваних веб-сайтів (із зазначенням часу відвідування).</translation>
 <translation id="230286397113210245">Кнопка "Відкрити вікно в режимі анонімного перегляду"; активуйте, щоб відкрити нове вікно в режимі анонімного перегляду</translation>
+<translation id="2306124309679506798">Дозволити ефект присутності?</translation>
 <translation id="2312234273148520048">Приправи й заправки</translation>
 <translation id="2316087952091171402">Менше ніж <ph name="UPPER_ESTIMATE" />. Деякі сайти можуть завантажуватися повільніше під час наступного відвідування.</translation>
 <translation id="2316159751672436664">Персоналізуйте інструменти спеціальних можливостей у налаштуваннях ОС Chrome</translation>
@@ -1172,6 +1174,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />; натисніть Tab, а потім – Enter, щоб налаштувати вигляд веб-переглядача</translation>
 <translation id="3240791268468473923">Відкрито нижній екран невідповідності облікових даних для безпечних платежів</translation>
 <translation id="324180406144491771">Посилання <ph name="HOST_NAME" /> заблоковано</translation>
+<translation id="3248329428895535435">Не показувати на цьому сайті</translation>
 <translation id="3252772880526154546">Архітектура</translation>
 <translation id="3254301855501243548">18 x 22 дюйм.</translation>
 <translation id="3255926992597692024">Chromium намагається змінити параметри заповнення способів оплати.</translation>
@@ -1606,6 +1609,7 @@
 <translation id="4082333119419111506">Папір (попередній друк)</translation>
 <translation id="4082393374666368382">Налаштування – керування</translation>
 <translation id="4084219288110917128">Конверт C1</translation>
+<translation id="4085326869263783566">Допомога з текстом. Щоб відкрити, натисніть Tab і Enter.</translation>
 <translation id="4088981014127559358">Вертикальний зсув сторони 1 зображення</translation>
 <translation id="4089152113577680600">Лоток 14</translation>
 <translation id="4092349052316400070">Введіть адресу</translation>
@@ -3786,6 +3790,7 @@
 <translation id="8263001937536038617">Фото- й відеопослуги</translation>
 <translation id="8265992338205884890">Видимі дані</translation>
 <translation id="8267698848189296333">Ви входите як <ph name="USERNAME" /></translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Окремі документи/підібрані копії</translation>
 <translation id="8269703227894255363">{0,plural, =1{Файл заборонено відкривати}one{<ph name="FILE_COUNT" /> файл заборонено відкривати}few{<ph name="FILE_COUNT" /> файли заборонено відкривати}many{<ph name="FILE_COUNT" /> файлів заборонено відкривати}other{<ph name="FILE_COUNT" /> файлу заборонено відкривати}}</translation>
 <translation id="8270173610195068258">Злочини й правосуддя</translation>
@@ -4206,6 +4211,7 @@
 <translation id="9094544726794842788">Якщо натиснути "Не подобається", відкриється форма, де ви зможете залишити докладний відгук про те, чому вам не подобаються ці результати</translation>
 <translation id="9095388113577226029">Інші мови…</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />; щоб зробити Chrome веб-переглядачем системи за умовчанням у налаштуваннях iOS, натисніть Tab, а потім – Enter</translation>
+<translation id="9101450247048146228">Використання й переміщення камери (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Лоток 1</translation>
 <translation id="9103872766612412690">Веб-сайт <ph name="SITE" /> зазвичай використовує шифрування для захисту вашої інформації. Під час цієї спроби Chromium під’єднатися до сторінки <ph name="SITE" /> з неї отримано незвичні й неправильні облікові дані. Це може статися, коли зловмисник намагається видавати себе за веб-сайт <ph name="SITE" /> або з’єднання перервано екраном входу Wi-Fi. Ваша інформація залишається захищеною, оскільки Chromium припинив з’єднання до того, як почався обмін будь-якими даними.</translation>
 <translation id="9107467864910557787">Вашим веб-переглядачем керує <ph name="MANAGER" /></translation>
@@ -4228,6 +4234,8 @@
 <translation id="9139318394846604261">Покупки</translation>
 <translation id="9141013498910525015">Керувати адресами</translation>
 <translation id="9144951720726881238">Діє до:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Увійдіть<ph name="END_LINK" /> 
+    знову, а потім поверніться на цю вкладку, щоб отримати допомогу з написанням тексту</translation>
 <translation id="9148507642005240123">&amp;Відмінити редагування</translation>
 <translation id="9148599396704355100">Низька ціна</translation>
 <translation id="9150025764986957246">Введіть щось, наприклад:</translation>
diff --git a/components/strings/components_strings_ur.xtb b/components/strings/components_strings_ur.xtb
index 1b70573..2d545e0ac0 100644
--- a/components/strings/components_strings_ur.xtb
+++ b/components/strings/components_strings_ur.xtb
@@ -570,6 +570,7 @@
 <translation id="2046951263634619614">کتاب کے ریٹیلرز</translation>
 <translation id="2048261947532620704">صفحہ کا ترجمہ کیا جا رہا ہے</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> کے صفحات کا ترجمہ نہیں کیا جائے گا۔</translation>
+<translation id="2055461225779831292">آپ کا کیمرا استعمال کرنا اور اسے حرکت دینا چاہتی ہے (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">اپنے ماؤس پوائنٹر کو لاک کریں</translation>
 <translation id="2056658168519009885">‏آپ کو دکھائی دینے والے اشتہارات کو ذاتی نوعیت کا بنانے میں مدد کرنے کے لیے سائٹس Chrome سے معلومات طلب کر سکتی ہیں۔</translation>
 <translation id="2059166748188874810">میونسپلٹی</translation>
@@ -717,6 +718,7 @@
 <translation id="2300306941146563769">اپ لوڈ نہیں ہوا</translation>
 <translation id="2301098101308036335">کون سی ویب سائٹ دیکھی گئی ہے اور کب۔</translation>
 <translation id="230286397113210245">پوشیدگی ونڈو کھولیں بٹن، نجی طور پر براؤز کرنے کی خاطر ایک نئی پوشیدگی ونڈو کھولنے کے لیے فعال کریں</translation>
+<translation id="2306124309679506798">عمیق تجربے کی اجازت دیں؟</translation>
 <translation id="2312234273148520048">مصالحہ جات اور سجاوٹیں</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" /> سے کم۔ آپ کے اگلے ملاحظہ پر کچھ سائٹس مزید آہستہ سے لوڈ ہو سکتی ہیں۔</translation>
 <translation id="2316159751672436664">‏ChromeOS کی ترتیبات میں اپنی ایکسیسبیلٹی کے ٹولز کو ذاتی نوعیت کا بنائیں</translation>
@@ -1173,6 +1175,7 @@
 <translation id="3240683217920639535">‏<ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />، اپنے براؤزر کی شکل کو حسب ضرورت بنانے کیلئے ٹیب پھر Enter دبائیں</translation>
 <translation id="3240791268468473923">ادائیگی کی اسناد محفوظ کریں کوئی مماثل اسناد نہیں کی شیٹ کھلی ہوئی ہے</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” لنکس مسدود ہیں</translation>
+<translation id="3248329428895535435">اس سائٹ پر نہ دکھائیں</translation>
 <translation id="3252772880526154546">فن تعمیر</translation>
 <translation id="3254301855501243548">‏‎18 x 22 انچ</translation>
 <translation id="3255926992597692024">‏ادائیگی کے طریقوں پُر کرنے کی خاطر ترتیبات میں ترمیم کرنے کے لیے Chromium کوشش کر رہا ہے۔</translation>
@@ -1607,6 +1610,7 @@
 <translation id="4082333119419111506">کاغذ (پری پرنٹڈ)</translation>
 <translation id="4082393374666368382">ترتیبات، نظم و نسق</translation>
 <translation id="4084219288110917128">‏C1 لفافہ</translation>
+<translation id="4085326869263783566">‏لکھنے میں میری مدد کریں۔ کھولنے کیلئے ٹیب اور Enter دبائیں</translation>
 <translation id="4088981014127559358">‏سائڈ 1 تصویر Y شفٹ</translation>
 <translation id="4089152113577680600">ٹرے 14</translation>
 <translation id="4092349052316400070">پتہ درج کریں</translation>
@@ -2307,6 +2311,7 @@
 <translation id="5447765697759493033">اس سائٹ کا ترجمہ نہیں ہوگا</translation>
 <translation id="5452270690849572955">یہ <ph name="HOST_NAME" /> صفحہ تلاش نہیں کیا جا سکتا ہے</translation>
 <translation id="5455374756549232013">غلط پالیسی ٹائم اسٹامپ</translation>
+<translation id="5456428544444655325">کبھی نہ دکھائیں</translation>
 <translation id="5456839782162429664">جب بھی آپ آٹو فل کا استعمال کرتے ہوئے ادائیگی کرتے ہیں تو دستی طور پر توثیق کریں</translation>
 <translation id="5457113250005438886">غلط</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> اور <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> مزید}other{<ph name="CONTACT_PREVIEW" /> اور <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> مزید}}</translation>
@@ -3787,6 +3792,7 @@
 <translation id="8263001937536038617">فوٹو اور ویڈیو سروسز</translation>
 <translation id="8265992338205884890">مرئی ڈیٹا</translation>
 <translation id="8267698848189296333"><ph name="USERNAME" /> کے بطور سائن ان کر رہا ہے</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">علیحدہ دستاویزات/ملائی ہوئی کاپیاں</translation>
 <translation id="8269703227894255363">{0,plural, =1{فائل کو کھلنے سے مسدود کر دیا گیا}other{<ph name="FILE_COUNT" /> فائلز کو کھلنے سے مسدود کر دیا گیا}}</translation>
 <translation id="8270173610195068258">جرم اور انصاف</translation>
@@ -4206,6 +4212,7 @@
 <translation id="9094544726794842788">اظہار ناپسندیدگی آپ کو ان نتائج کو ناپسند کرنے کے بارے میں تفصیلی تاثرات جمع کرانے کے لیے ایک فارم کھولتا ہے</translation>
 <translation id="9095388113577226029">مزید زبانیں...</translation>
 <translation id="9096425087209440047">‏<ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />، iOS کی ترتیبات میں Chrome کو سسٹم کے ڈیفالٹ براؤزر کے بطور سیٹ کرنے کے لیے ٹیب پھر Enter دبائیں</translation>
+<translation id="9101450247048146228">کیمرے کا استعمال اور نقل و حرکت (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">ٹرے 1</translation>
 <translation id="9103872766612412690">‏<ph name="SITE" /> عام طور پر آپ کی معلومات کے تحفظ کیلئے مرموز کاری کا استعمال کرتی ہے۔ اس بار جب Chromium نے <ph name="SITE" /> سے منسلک ہونے کی کوشش کی تو ویب سائٹ
 نے خلاف معمول اور غلط اسناد واپس بھیجے۔ یہ اس وقت ہو سکتا ہے جب کوئی حملہ آور <ph name="SITE" /> بننے کا بھیس بنا رہا ہو یا ایک Wi-Fi سائن ان اسکرین نے کنکشن میں خلل ڈالا ہو۔ آپ کی معلومات اب بھی محفوظ ہے کیونکہ Chromium نے کسی ڈیٹا کا تبادلہ ہونے سے پہلے کنکشن روک دیا۔</translation>
@@ -4229,6 +4236,7 @@
 <translation id="9139318394846604261">خریداری</translation>
 <translation id="9141013498910525015">پتوں کا نظم کریں</translation>
 <translation id="9144951720726881238">اختتامی تاریخ:</translation>
+<translation id="9145910032514306808">دوبارہ <ph name="BEGIN_LINK" />سائن ان کریں<ph name="END_LINK" />، پھر تحریری مدد حاصل کرنے کیلئے اس ٹیب پر واپس آئیں</translation>
 <translation id="9148507642005240123">ترمیم کریں کو &amp;کالعدم کریں</translation>
 <translation id="9148599396704355100">قیمت کم ہے</translation>
 <translation id="9150025764986957246">آپ ان جیسی چیزیں درج کر سکتے ہیں:</translation>
diff --git a/components/strings/components_strings_uz.xtb b/components/strings/components_strings_uz.xtb
index 776e4070..be74155 100644
--- a/components/strings/components_strings_uz.xtb
+++ b/components/strings/components_strings_uz.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Narxni kuzatish oʻchiq</translation>
 <translation id="127777513559587977">TV tok-shoulari</translation>
 <translation id="1281476433249504884">Taxlovchi 1</translation>
+<translation id="1281536351321444151">Bu IBAN raqami keyingi safar avtomatik kiritilishi uchun uni Google hisobiga saqlang</translation>
 <translation id="1282358575813748144">Qayiq va kemalar</translation>
 <translation id="1283977499362032052">Rezyume va portfoliolar</translation>
 <translation id="1285320974508926690">Bu sayt hech qachon tarjima qilinmasin</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Tarnov 8</translation>
 <translation id="1530707389502320859">Hozirgina ochilgan sayt soxta shekilli. Odatda shubhali kimsalar URL manzilda kichik oʻzgarishlar kiritib, saytlarga soxta nusxalar yasaydi.</translation>
 <translation id="1532118530259321453">Amalni tasdiqlang</translation>
+<translation id="1533966801397200693">Siz boshqariladigan profildan kirgansiz. Administrator profil sozlamalarini masofadan oʻzgartirishi, brauzer maʼlumotlaridan iborat hisobotlarni tahlil qilishi hamda boshqa vazifalarni bajarishi mumkin. <ph name="BEGIN_LINK" />Batafsil<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Sahifani tarjima qilish</translation>
 <translation id="1537807545287921620">Bu PDF fayl ochilmaydi. Kontekst menyusini oching va "PDF ichidan matn chiqarish" funksiyasini yoqing</translation>
 <translation id="1539840569003678498">Hisobot yuborildi:</translation>
@@ -567,6 +569,7 @@
 <translation id="2046951263634619614">Kitob sotuvchilar</translation>
 <translation id="2048261947532620704">Sahifa tarjima qilinmoqda</translation>
 <translation id="2053111141626950936"><ph name="LANGUAGE" /> tilidagi sahifalar tarjima qilinmaydi</translation>
+<translation id="2055461225779831292">Kameradan foydalanish va siljitish (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="2056492565825767809">Sichqoncha kursorini qulflash</translation>
 <translation id="2056658168519009885">Saytlar sizga aloqador reklamalarni chiqarish uchun Chrome brauzeridan maʼlumot olishi mumkin.</translation>
 <translation id="2059166748188874810">Munitsipalitet</translation>
@@ -714,6 +717,7 @@
 <translation id="2300306941146563769">Yuklanmagan</translation>
 <translation id="2301098101308036335">Foydalanuvchilar qaysi saytlarga kiryapti va qachon.</translation>
 <translation id="230286397113210245">Inkognito oyna ochish tugmasi, yangi Inkognito oynani ochish va Internetdan maxfiy foydalanish uchun faollashtiring</translation>
+<translation id="2306124309679506798">Immersiv rejim yoqilsinmi?</translation>
 <translation id="2312234273148520048">Ziravorlar va taom bezatish</translation>
 <translation id="2316087952091171402"><ph name="UPPER_ESTIMATE" /> dam kam Ayrim saytlar keyingi kirishda sekinroq yuklanishi mumkin.</translation>
 <translation id="2316159751672436664">ChromeOS sozlamalari orqali qulaylik vositalarini moslashtirish</translation>
@@ -1167,6 +1171,7 @@
 <translation id="3240683217920639535"><ph name="MANAGE_CHROME_THEMES_FOCUSED_FRIENDLY_MATCH_TEXT" />, Brauzeringiz koʻrinishini moslash uchun avval Tab, keyin Enter tugmasini bosing</translation>
 <translation id="3240791268468473923">Xavfsiz toʻlov maʼlumotlari ochilgan jadvaldagi maʼlumotlarga mos kelmadi</translation>
 <translation id="324180406144491771">“<ph name="HOST_NAME" />” havolalari bloklangan</translation>
+<translation id="3248329428895535435">Bu sahifada chiqmasin</translation>
 <translation id="3252772880526154546">Arxitektura</translation>
 <translation id="3254301855501243548">18 x 22 in</translation>
 <translation id="3255926992597692024">Chromium toʻlov usuli kiritilishi sozlamasini oʻzgaritishga urinmoqda.</translation>
@@ -1182,6 +1187,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187"><ph name="NUMBER_OF_DIGITS" /> xonali tasdiqlash kodini kiriting</translation>
 <translation id="3272643614306383237">1 MBdan kam Ayrim saytlar keyingi kirishda sekinroq yuklanishi mumkin.</translation>
+<translation id="3273738040255912340">Administrator profil va brauzer sozlamalarini masofadan oʻzgartirishi, brauzer maʼlumotlaridan iborat hisobotlarni tahlil qilishi hamda boshqa vazifalarni bajarishi mumkin. Bu qurilmadagi amallar Chromium tashqarisidan boshqarilishi mumkin. <ph name="BEGIN_LINK" />Batafsil<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Administrator bu faylni <ph name="DESTINATION_NAME" />da ochishni tavsiya qilmaydi}other{Administrator bu fayllarni <ph name="DESTINATION_NAME" />da ochishni tavsiya qilmaydi}}</translation>
 <translation id="3282085321714087552"><ph name="ENROLLMENT_DOMAIN" /> tashkilotingiz quyidagi saytlarga sozlamalar va qoidalar kabi ayrim axborotlarni yubordi.</translation>
 <translation id="3286372614333682499">tik</translation>
@@ -1598,6 +1604,7 @@
 <translation id="4082333119419111506">Qogʻoz (rasmli)</translation>
 <translation id="4082393374666368382">Sozlamalar – Boshqaruv</translation>
 <translation id="4084219288110917128">Envelope C1</translation>
+<translation id="4085326869263783566">Matn yordamchisi. Ochish uchun Tab va Enter tugmalarini bosing</translation>
 <translation id="4088981014127559358">Tasvirning old tomondagi Y oʻqidagi siljish</translation>
 <translation id="4089152113577680600">Tarnov 14</translation>
 <translation id="4092349052316400070">Manzilni kiriting</translation>
@@ -2298,6 +2305,7 @@
 <translation id="5447765697759493033">Bu sayt tarjima qilinmaydi</translation>
 <translation id="5452270690849572955"><ph name="HOST_NAME" /> sahifasi topilmadi</translation>
 <translation id="5455374756549232013">Siyosat vaqti belgisi buzilgan</translation>
+<translation id="5456428544444655325">Hech qachon chiqmasin</translation>
 <translation id="5456839782162429664">Avtomatik kiritish orqali toʻlovlar har safar mustaqil tasdiqlansin</translation>
 <translation id="5457113250005438886">Yaroqsiz</translation>
 <translation id="5458150163479425638">{CONTACT,plural, =0{<ph name="CONTACT_PREVIEW" />}=1{<ph name="CONTACT_PREVIEW" /> va yana <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ta}other{<ph name="CONTACT_PREVIEW" /> va yana <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ta}}</translation>
@@ -3776,6 +3784,7 @@
 <translation id="8263001937536038617">Foto va video xizmatlar</translation>
 <translation id="8265992338205884890">Chiquvchi axborot</translation>
 <translation id="8267698848189296333">Tizimga <ph name="USERNAME" /> nomidan kirilmoqda</translation>
+<translation id="8268967003421414091">Verve</translation>
 <translation id="8269242089528251720">Bir nechta hujjat/Tartibli nusxalarda</translation>
 <translation id="8269703227894255363">{0,plural, =1{Faylni ochish taqiqlangan}other{<ph name="FILE_COUNT" /> ta faylni ochish taqiqlangan}}</translation>
 <translation id="8270173610195068258">Jinoyat va adolat</translation>
@@ -3880,6 +3889,7 @@
 <translation id="8446884382197647889">Batafsil</translation>
 <translation id="8449155699563577224">17 x 24 in</translation>
 <translation id="8449836157089738489">Barchasini yangi varaqlar guruhida ochish</translation>
+<translation id="84561192812921051">Administrator profil va brauzer sozlamalarini masofadan oʻzgartirishi, brauzer maʼlumotlaridan iborat hisobotlarni tahlil qilishi hamda boshqa vazifalarni bajarishi mumkin. Bu qurilmadagi amallar Chrome tashqarisidan boshqarilishi mumkin.  <ph name="BEGIN_LINK" />Batafsil<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Noaniq</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">Yoqish</translation>
@@ -4194,6 +4204,7 @@
 <translation id="9094544726794842788">Salbiy baho bosilsa, bu natijalarning nega yoqmagani haqida batafsil fikr-mulohaza yuborish shakli ochiladi</translation>
 <translation id="9095388113577226029">Boshqa tillar...</translation>
 <translation id="9096425087209440047"><ph name="SET_CHROME_AS_DEFAULT_BROWSER_FOCUSED_FRIENDLY_MATCH_TEXT" />, iOS sozlamalari orqali Chrome brauzerini tizimning asosiy brauzeri sifatida sozlash uchun avval Tab, keyin esa Enter tugmasini bosing.</translation>
+<translation id="9101450247048146228">Kameradan foydalanish va siljitish (<ph name="CAMERAS_COUNT" />)</translation>
 <translation id="9101630580131696064">Tarnov 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> sayti ma’lumotlaringizni himoyalash uchun shifrlashdan foydalanadi, lekin hozir Chromium <ph name="SITE" /> saytiga ulanish uchun uringanda, ushbu sayt shubhali va noto‘g‘ri tasdiqlash ma’lumotlarini qaytarmoqda. Bunday holat zararli sayt o‘zini <ph name="SITE" /> o‘rnida ko‘rsatayotganda yoki Wi-Fi ulanishi uzilib qolganda yuz berishi mumkin. Shaxsiy ma’lumotlaringizga hech qanday xavf tug‘ilgani yo‘q, chunki Chromium aloqani ma’lumotlar almashinuvidan oldin uzib qo‘ydi.</translation>
 <translation id="9107467864910557787">Brauzeringiz <ph name="MANAGER" /> tomonidan boshqariladi</translation>
@@ -4216,6 +4227,8 @@
 <translation id="9139318394846604261">Xaridlar</translation>
 <translation id="9141013498910525015">Manzillarni boshqarish</translation>
 <translation id="9144951720726881238">Tugash muddati:</translation>
+<translation id="9145910032514306808"><ph name="BEGIN_LINK" />Hisobga kirib<ph name="END_LINK" />,
+    yozishda yordam olish uchun shu sahifaga qayting</translation>
 <translation id="9148507642005240123">&amp;Tahrirni bekor qilish</translation>
 <translation id="9148599396704355100">Narx past</translation>
 <translation id="9150025764986957246">Nima kiritish mumkin:</translation>
diff --git a/components/strings/components_strings_zh-HK.xtb b/components/strings/components_strings_zh-HK.xtb
index 46a11431..a3c34c7 100644
--- a/components/strings/components_strings_zh-HK.xtb
+++ b/components/strings/components_strings_zh-HK.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">已關閉價格追蹤</translation>
 <translation id="127777513559587977">電視清談節目</translation>
 <translation id="1281476433249504884">堆疊器 1</translation>
+<translation id="1281536351321444151">如要下次自動填入此 IBAN,請先儲存至 Google 帳戶</translation>
 <translation id="1282358575813748144">遊輪和船隻</translation>
 <translation id="1283977499362032052">履歷表和作品集</translation>
 <translation id="1285320974508926690">永不翻譯此網站</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">紙匣 8</translation>
 <translation id="1530707389502320859">您剛才嘗試前往的網站可能是假網站。攻擊者有時會在網址中加入難以辨識的細微變更來仿冒網站。</translation>
 <translation id="1532118530259321453">此網頁顯示:</translation>
+<translation id="1533966801397200693">你已登入受管設定檔。管理員可遠端變更你的設定檔設定、透過報告分析瀏覽器相關資料,以及執行其他必要工作。<ph name="BEGIN_LINK" />瞭解詳情<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">翻譯網頁</translation>
 <translation id="1537807545287921620">無法存取此 PDF。�請開啟內容選單和「擷取 PDF 中的文字」</translation>
 <translation id="1539840569003678498">報告傳送時間:</translation>
@@ -1185,6 +1187,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">請輸入 <ph name="NUMBER_OF_DIGITS" /> 位數驗證碼</translation>
 <translation id="3272643614306383237">小於 1 MB。下次瀏覽部分網站時,載入速度可能會變慢。</translation>
+<translation id="3273738040255912340">管理員可遠端變更你的設定檔和瀏覽器、透過報告分析瀏覽器相關資料,以及執行其他必要工作。此裝置上的活動亦可透過 Chromium 以外的服務管理。<ph name="BEGIN_LINK" />瞭解詳情<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{管理員政策不建議在<ph name="DESTINATION_NAME" />中開啟這個檔案}other{管理員政策不建議在<ph name="DESTINATION_NAME" />中開啟這些檔案}}</translation>
 <translation id="3282085321714087552">機構 (<ph name="ENROLLMENT_DOMAIN" />) 已將一些資訊 (例如設定或政策) 傳送到以下網站。</translation>
 <translation id="3286372614333682499">直向</translation>
@@ -3886,6 +3889,7 @@
 <translation id="8446884382197647889">瞭解詳情</translation>
 <translation id="8449155699563577224">17 x 24 吋</translation>
 <translation id="8449836157089738489">在新分頁群組中開啟所有網址</translation>
+<translation id="84561192812921051">管理員可遠端變更你的設定檔和瀏覽器、透過報告分析瀏覽器相關資料,以及執行其他必要工作。此裝置上的活動亦可透過 Chrome 以外的服務管理。<ph name="BEGIN_LINK" />瞭解詳情<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">無限期</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">開啟</translation>
diff --git a/components/strings/components_strings_zh-TW.xtb b/components/strings/components_strings_zh-TW.xtb
index dd447dd..eaed708 100644
--- a/components/strings/components_strings_zh-TW.xtb
+++ b/components/strings/components_strings_zh-TW.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">已關閉價格追蹤</translation>
 <translation id="127777513559587977">電視談話節目</translation>
 <translation id="1281476433249504884">堆疊出紙器 1</translation>
+<translation id="1281536351321444151">如要下次自動填入這個 IBAN,請先儲存到 Google 帳戶</translation>
 <translation id="1282358575813748144">船舶與水運工具</translation>
 <translation id="1283977499362032052">履歷與作品集</translation>
 <translation id="1285320974508926690">一律不翻譯此網站</translation>
@@ -291,6 +292,7 @@
 <translation id="1529789484829130889">紙匣 8</translation>
 <translation id="1530707389502320859">你剛才嘗試造訪的網站可能是假網站。攻擊者有時會在網址中加入難以辨識的細微變更來仿冒網站。</translation>
 <translation id="1532118530259321453">這個網頁顯示</translation>
+<translation id="1533966801397200693">你登入的是受管理的設定檔。系統管理員可以從遠端變更你的設定檔設定、透過報表分析瀏覽器相關資訊,以及執行其他必要工作。<ph name="BEGIN_LINK" />瞭解詳情<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">翻譯網頁</translation>
 <translation id="1537807545287921620">這份 PDF 無法存取。請依序開啟內容選單和「擷取 PDF 中的文字」</translation>
 <translation id="1539840569003678498">回報時間:</translation>
@@ -1183,6 +1185,7 @@
 <translation id="3272091146646336650">Super B</translation>
 <translation id="3272112314896217187">輸入 <ph name="NUMBER_OF_DIGITS" /> 位數驗證碼</translation>
 <translation id="3272643614306383237">低於 1 MB。下次造訪某些網站時,載入速度可能會變慢。</translation>
+<translation id="3273738040255912340">系統管理員可以從遠端變更你的設定檔和瀏覽器、透過報表分析瀏覽器相關資訊,以及執行其他必要工作。這部裝置上的活動也可透過 Chromium 以外的服務管理。<ph name="BEGIN_LINK" />瞭解詳情<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{根據系統管理員政策,建議你不要在「<ph name="DESTINATION_NAME" />」中開啟這個檔案}other{根據系統管理員政策,建議你不要在「<ph name="DESTINATION_NAME" />」中開啟這些檔案}}</translation>
 <translation id="3282085321714087552">貴機構 (<ph name="ENROLLMENT_DOMAIN" />) 已將一些資訊 (例如設定或政策) 傳送到下列網站。</translation>
 <translation id="3286372614333682499">直向</translation>
@@ -3885,6 +3888,7 @@
 <translation id="8446884382197647889">瞭解詳情</translation>
 <translation id="8449155699563577224">17 x 24 吋</translation>
 <translation id="8449836157089738489">在新分頁群組中開啟所有網址</translation>
+<translation id="84561192812921051">系統管理員可以從遠端變更你的設定檔和瀏覽器、透過報表分析瀏覽器相關資訊,以及執行其他必要工作。這部裝置上的活動也可以透過 Chrome 以外的服務管理。<ph name="BEGIN_LINK" />瞭解詳情<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">無限期</translation>
 <translation id="8458202188076138974">Letter Extra</translation>
 <translation id="8460854335417802511">啟用</translation>
diff --git a/components/strings/components_strings_zu.xtb b/components/strings/components_strings_zu.xtb
index 0326205..85de9ace 100644
--- a/components/strings/components_strings_zu.xtb
+++ b/components/strings/components_strings_zu.xtb
@@ -153,6 +153,7 @@
 <translation id="1273592791152866347">Ukulandelela intengo kuvaliwe</translation>
 <translation id="127777513559587977">Izinhlelo Zezingxoxo ku-TV</translation>
 <translation id="1281476433249504884">Isitaki esingu-1</translation>
+<translation id="1281536351321444151">Ukuze ugcwalise ngokuzenzakalelayo le IBAN ngokuzayo, ilondoloze e-akhawuntini yakho ye-Google</translation>
 <translation id="1282358575813748144">Izikebhe Nemikhumbi</translation>
 <translation id="1283977499362032052">Ukuqhubeka Namaphothifoliyo</translation>
 <translation id="1285320974508926690">Ungalokothi uhumushe leli sayithi</translation>
@@ -292,6 +293,7 @@
 <translation id="1529789484829130889">Ithileyi elingu-8</translation>
 <translation id="1530707389502320859">Isayithi osanda kuzama ukulivakashela libonakala liyimbumbulu. Abahlaseli kwesinye isikhathi balingisa amasayithi ngokwenza ushintsho oluncane, olubonakala kanzima ku-URL.</translation>
 <translation id="1532118530259321453">Leli khasi lithi</translation>
+<translation id="1533966801397200693">Iphrofayela ongene kuyo ngemvume yiphrofayela ephethwe. Umlawuli wakho angenza izinguquko kumasethingi ephrofayela yakho ekude, ahlaziye ulwazi mayelana nebhrawuza ngokubika, futhi enze eminye imisebenzi edingekayo. <ph name="BEGIN_LINK" />Funda kabanzi<ph name="END_LINK" /></translation>
 <translation id="1536390784834419204">Humusha ikhasi</translation>
 <translation id="1537807545287921620">Le-PDF ayifinyeleleki Vula imenyu yokuqukethwe bese uvula okuthi "khipha umbhalo ku-PDF"</translation>
 <translation id="1539840569003678498">Umbiko uthunyelwe:</translation>
@@ -1183,6 +1185,7 @@
 <translation id="3272091146646336650">I-Super-B</translation>
 <translation id="3272112314896217187">Fake ikhodi yokuqinisekisa yamadijithi angu-<ph name="NUMBER_OF_DIGITS" /></translation>
 <translation id="3272643614306383237">Ngaphansi kunokungu-1 MB. Amanye amasayithi angalayisha kancane kakhulu ekuvakasheni kwakho okulandelayo.</translation>
+<translation id="3273738040255912340">Umlawuli wakho angenza izinguquko kuphrofayela yakho nebhrawuza ekude, ahlaziye ulwazi mayelana nebhrawuza ngokubika, futhi enze eminye imisebenzi edingekayo. Umsebenzi okule divayisi ungaphinda uphathwe ngaphandle kwe-Chromium. <ph name="BEGIN_LINK" />Funda kabanzi<ph name="END_LINK" /></translation>
 <translation id="3281350579597955952">{0,plural, =1{Inqubomgomo yomlawuli ayincomi ukuvula leli fayela e-<ph name="DESTINATION_NAME" />}one{Inqubomgomo yomlawuli ayincomi ukuvula lamafayela ku-<ph name="DESTINATION_NAME" />}other{Inqubomgomo yomlawuli ayincomi ukuvula lamafayela ku-<ph name="DESTINATION_NAME" />}}</translation>
 <translation id="3282085321714087552">Inhlangano yakho, i-<ph name="ENROLLMENT_DOMAIN" />, ithumele ulwazi kumawebhusayithi alandelayo, njengamasethingi noma izinqumbomgomo.</translation>
 <translation id="3286372614333682499">ukuma ngobude</translation>
@@ -3883,6 +3886,7 @@
 <translation id="8446884382197647889">Funda kabanzi</translation>
 <translation id="8449155699563577224">U-17 x 24 phakathi</translation>
 <translation id="8449836157089738489">Vula konke kwiqembu lethebhu entsha</translation>
+<translation id="84561192812921051">Umlawuli wakho angenza izinguquko kuphrofayela yakho nebhrawuza ekude, ahlaziye ulwazi mayelana nebhrawuza ngokubika, futhi enze eminye imisebenzi edingekayo. Umsebenzi kule divayisi ungaphinda uphathwe ngaphandle kwe-Chrome.  <ph name="BEGIN_LINK" />Funda kabanzi<ph name="END_LINK" /></translation>
 <translation id="8457125768502047971">Ngenamkhawulo</translation>
 <translation id="8458202188076138974">Incwadi-Engeziwe</translation>
 <translation id="8460854335417802511">Yivule</translation>
diff --git a/components/tpcd/metadata/browser/manager.cc b/components/tpcd/metadata/browser/manager.cc
index 2bd53d7..7f4e09a 100644
--- a/components/tpcd/metadata/browser/manager.cc
+++ b/components/tpcd/metadata/browser/manager.cc
@@ -60,15 +60,6 @@
 
   rand_generator_ = std::make_unique<RandGenerator>();
 
-  if (base::FeatureList::IsEnabled(
-          content_settings::features::kHostIndexedMetadataGrants)) {
-    base::AutoLock lock(grants_lock_);
-    grants_ = content_settings::HostIndexedContentSettings();
-  } else {
-    base::AutoLock lock(grants_lock_);
-    grants_ = ContentSettingsForOneType();
-  }
-
   parser_->AddObserver(this);
   if (!parser_->GetMetadata().empty()) {
     OnMetadataReady();
@@ -96,20 +87,14 @@
 }
 
 void Manager::SetGrants(const ContentSettingsForOneType& grants) {
-  if (base::FeatureList::IsEnabled(
-          content_settings::features::kHostIndexedMetadataGrants)) {
-    auto indices = content_settings::HostIndexedContentSettings::Create(grants);
-    if (indices.empty()) {
-      base::AutoLock lock(grants_lock_);
-      grants_ = content_settings::HostIndexedContentSettings();
-    } else {
-      CHECK_EQ(indices.size(), 1u);
-      base::AutoLock lock(grants_lock_);
-      grants_ = std::move(indices.front());
-    }
-  } else {
+  auto indices = content_settings::HostIndexedContentSettings::Create(grants);
+  if (indices.empty()) {
     base::AutoLock lock(grants_lock_);
-    grants_ = grants;
+    grants_ = content_settings::HostIndexedContentSettings();
+  } else {
+    CHECK_EQ(indices.size(), 1u);
+    base::AutoLock lock(grants_lock_);
+    grants_ = std::move(indices.front());
   }
 
   if (grants_sync_callback_) {
@@ -236,15 +221,8 @@
     return ContentSettingsForOneType();
   }
 
-  if (base::FeatureList::IsEnabled(
-          content_settings::features::kHostIndexedMetadataGrants)) {
     base::AutoLock lock(grants_lock_);
-    return GetContentSettingForOneType(
-        absl::get<content_settings::HostIndexedContentSettings>(grants_));
-  }
-
-  base::AutoLock lock(grants_lock_);
-  return absl::get<ContentSettingsForOneType>(grants_);
+    return GetContentSettingForOneType(grants_);
 }
 
 void Manager::ResetCohorts() {
diff --git a/components/tpcd/metadata/browser/manager.h b/components/tpcd/metadata/browser/manager.h
index 748be86..03c17ec 100644
--- a/components/tpcd/metadata/browser/manager.h
+++ b/components/tpcd/metadata/browser/manager.h
@@ -113,10 +113,8 @@
   raw_ptr<Parser> parser_;
   GrantsSyncCallback grants_sync_callback_;
   mutable base::Lock grants_lock_;
-  // grants_ holds a `content_settings::HostIndexedContentSettings` if
-  // `IsHostIndexedMetadataGrantsEnabled()` returns true, otherwise, it holds a
-  // `ContentSettingsForOneType`.
-  common::Grants grants_ GUARDED_BY(grants_lock_);
+
+  content_settings::HostIndexedContentSettings grants_ GUARDED_BY(grants_lock_);
   std::unique_ptr<RandGenerator> rand_generator_;
 
   // TODO(b/333529481): Get rid of this dangling pointer during re-architecture
diff --git a/components/tpcd/metadata/browser/parser.cc b/components/tpcd/metadata/browser/parser.cc
index 99548bf..c47b731 100644
--- a/components/tpcd/metadata/browser/parser.cc
+++ b/components/tpcd/metadata/browser/parser.cc
@@ -185,32 +185,9 @@
   }
 }
 
-Metadata GenerateLargeTestMetadata() {
-  Metadata metadata;
-  for (int i = 1; i < content_settings::features::kUseTestMetadata.Get() + 1;
-       ++i) {
-    std::string hostname = "";
-    int j = i;
-    while (j > 0) {
-      hostname.push_back('a' + j % 24);
-      j /= 24;
-    }
-    helpers::AddEntryToMetadata(metadata,
-                                base::StrCat({"http://", hostname, ".test"}),
-                                "*", Parser::kSourceTest, /*dtrp=*/0);
-  }
-  CHECK(Parser::IsValidMetadata(metadata, base::NullCallback()));
-  return metadata;
-}
-
 MetadataEntries Parser::GetMetadata() {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
 
-  if (content_settings::features::kUseTestMetadata.Get() > 0) {
-    metadata_source_ = MetadataSource::kClient;
-    return ToMetadataEntries(GenerateLargeTestMetadata());
-  }
-
   base::FieldTrialParams params;
   bool has_feature_params = base::GetFieldTrialParamsByFeature(
       net::features::kTpcdMetadataGrants, &params);
diff --git a/components/tpcd/metadata/browser/parser_unittest.cc b/components/tpcd/metadata/browser/parser_unittest.cc
index af9236a..1574e61 100644
--- a/components/tpcd/metadata/browser/parser_unittest.cc
+++ b/components/tpcd/metadata/browser/parser_unittest.cc
@@ -56,12 +56,6 @@
         net::features::kTpcdMetadataGrants, params);
   }
 
-  void EnableFeatureWithLargeMetadata() {
-    scoped_feature_list_.InitAndEnableFeatureWithParameters(
-        content_settings::features::kHostIndexedMetadataGrants,
-        {{content_settings::features::kUseTestMetadataName, "10000"}});
-  }
-
   void EnableFeature() {
     scoped_feature_list_.InitAndEnableFeature(
         net::features::kTpcdMetadataGrants);
@@ -376,16 +370,4 @@
   }
 }
 
-TEST_F(ParserTest, GetMetadata_TestMetadataOnly) {
-  const std::string primary_pattern_spec = "http://b.test";
-  const std::string secondary_pattern_spec = "*";
-
-  EnableFeatureWithLargeMetadata();
-
-  MetadataEntries me = parser()->GetMetadata();
-  ASSERT_EQ(me.size(), 10000u);
-  ASSERT_EQ(me.front().primary_pattern_spec(), primary_pattern_spec);
-  ASSERT_EQ(me.front().secondary_pattern_spec(), secondary_pattern_spec);
-}
-
 }  // namespace tpcd::metadata
diff --git a/components/tpcd/metadata/common/manager_base.cc b/components/tpcd/metadata/common/manager_base.cc
index 6d79a7b..30171ed 100644
--- a/components/tpcd/metadata/common/manager_base.cc
+++ b/components/tpcd/metadata/common/manager_base.cc
@@ -31,34 +31,19 @@
 }
 
 ContentSetting ManagerBase::GetContentSetting(
-    const Grants& grants,
+    const content_settings::HostIndexedContentSettings& grants,
     const GURL& third_party_url,
     const GURL& first_party_url,
     content_settings::SettingInfo* out_info) const {
   ContentSetting result = CONTENT_SETTING_BLOCK;
 
   if (base::FeatureList::IsEnabled(net::features::kTpcdMetadataGrants)) {
-    if (absl::holds_alternative<content_settings::HostIndexedContentSettings>(
-            grants)) {
-      const content_settings::RuleEntry* found =
-          absl::get<content_settings::HostIndexedContentSettings>(grants).Find(
-              third_party_url, first_party_url);
-      if (found) {
-        result = content_settings::ValueToContentSetting(found->second.value);
-        if (out_info) {
-          out_info->SetAttributes(*found);
-        }
-      }
-    } else {
-      const ContentSettingPatternSource* found =
-          content_settings::FindContentSetting(
-              third_party_url, first_party_url,
-              absl::get<ContentSettingsForOneType>(grants));
-      if (found) {
-        result = found->GetContentSetting();
-        if (out_info) {
-          out_info->SetAttributes(*found);
-        }
+    const content_settings::RuleEntry* found =
+        grants.Find(third_party_url, first_party_url);
+    if (found) {
+      result = content_settings::ValueToContentSetting(found->second.value);
+      if (out_info) {
+        out_info->SetAttributes(*found);
       }
     }
   }
diff --git a/components/tpcd/metadata/common/manager_base.h b/components/tpcd/metadata/common/manager_base.h
index 9fd797c..91f73a2a8 100644
--- a/components/tpcd/metadata/common/manager_base.h
+++ b/components/tpcd/metadata/common/manager_base.h
@@ -10,10 +10,6 @@
 
 namespace tpcd::metadata::common {
 
-typedef absl::variant<ContentSettingsForOneType,
-                      content_settings::HostIndexedContentSettings>
-    Grants;
-
 class ManagerBase {
  public:
   ManagerBase();
@@ -23,7 +19,7 @@
   ManagerBase& operator=(const ManagerBase&) = delete;
 
   [[nodiscard]] ContentSetting GetContentSetting(
-      const Grants& grants,
+      const content_settings::HostIndexedContentSettings& grants,
       const GURL& third_party_url,
       const GURL& first_party_url,
       content_settings::SettingInfo* out_info) const;
diff --git a/components/tpcd/metadata/common/manager_base_unittest.cc b/components/tpcd/metadata/common/manager_base_unittest.cc
index 38eb5df..d432fc3 100644
--- a/components/tpcd/metadata/common/manager_base_unittest.cc
+++ b/components/tpcd/metadata/common/manager_base_unittest.cc
@@ -86,42 +86,38 @@
       std::move(value), content_settings::ProviderType::kNone,
       /*incognito=*/false, rule_metadata);
 
-  std::vector<common::Grants> v_grants;
-  v_grants.emplace_back(grants);
-  v_grants.emplace_back(std::move(
-      content_settings::HostIndexedContentSettings::Create(grants).front()));
+  auto index = std::move(
+      content_settings::HostIndexedContentSettings::Create(grants).front());
 
-  for (const auto& itr : v_grants) {
+  {
+    content_settings::SettingInfo out_info;
+    EXPECT_EQ(GetManagerBase()->GetContentSetting(index, third_party_url,
+                                                  first_party_url, &out_info),
+              IsTpcdMetadataGrantsEnabled() ? CONTENT_SETTING_ALLOW
+                                            : CONTENT_SETTING_BLOCK);
+    EXPECT_EQ(out_info.primary_pattern.ToString(),
+              IsTpcdMetadataGrantsEnabled() ? primary_pattern_spec : "*");
+    EXPECT_EQ(out_info.secondary_pattern.ToString(),
+              IsTpcdMetadataGrantsEnabled() ? secondary_pattern_spec : "*");
+    EXPECT_EQ(out_info.metadata.tpcd_metadata_rule_source(),
+              IsTpcdMetadataGrantsEnabled()
+                  ? content_settings::mojom::TpcdMetadataRuleSource::SOURCE_TEST
+                  : content_settings::mojom::TpcdMetadataRuleSource::
+                        SOURCE_UNSPECIFIED);
+  }
+
     {
       content_settings::SettingInfo out_info;
-      EXPECT_EQ(GetManagerBase()->GetContentSetting(itr, third_party_url,
-                                                    first_party_url, &out_info),
-                IsTpcdMetadataGrantsEnabled() ? CONTENT_SETTING_ALLOW
-                                              : CONTENT_SETTING_BLOCK);
-      EXPECT_EQ(out_info.primary_pattern.ToString(),
-                IsTpcdMetadataGrantsEnabled() ? primary_pattern_spec : "*");
-      EXPECT_EQ(out_info.secondary_pattern.ToString(),
-                IsTpcdMetadataGrantsEnabled() ? secondary_pattern_spec : "*");
       EXPECT_EQ(
-          out_info.metadata.tpcd_metadata_rule_source(),
-          IsTpcdMetadataGrantsEnabled()
-              ? content_settings::mojom::TpcdMetadataRuleSource::SOURCE_TEST
-              : content_settings::mojom::TpcdMetadataRuleSource::
-                    SOURCE_UNSPECIFIED);
-    }
-
-    {
-      content_settings::SettingInfo out_info;
-      EXPECT_EQ(GetManagerBase()->GetContentSetting(
-                    itr, third_party_url_no_grants, first_party_url, &out_info),
-                CONTENT_SETTING_BLOCK);
+          GetManagerBase()->GetContentSetting(index, third_party_url_no_grants,
+                                              first_party_url, &out_info),
+          CONTENT_SETTING_BLOCK);
       EXPECT_EQ(out_info.primary_pattern.ToString(), "*");
       EXPECT_EQ(out_info.secondary_pattern.ToString(), "*");
       EXPECT_EQ(
           out_info.metadata.tpcd_metadata_rule_source(),
           content_settings::mojom::TpcdMetadataRuleSource::SOURCE_UNSPECIFIED);
     }
-  }
 }
 
 class ManagerBaseCohortTest
@@ -174,6 +170,7 @@
             content_settings::mojom::TpcdMetadataCohort::kMaxValue) +
             1,
         /*step=*/1));
+
 TEST_P(ManagerBaseCohortTest, GetContentSetting) {
   const std::string primary_pattern_spec = "https://www.der.com";
   const std::string secondary_pattern_spec = "https://www.foo.com";
@@ -195,9 +192,12 @@
       std::move(value), content_settings::ProviderType::kNone,
       /*incognito=*/false, rule_metadata);
 
+  auto index = std::move(
+      content_settings::HostIndexedContentSettings::Create(grants).front());
+
   {
     content_settings::SettingInfo out_info;
-    EXPECT_EQ(GetManagerBase()->GetContentSetting(grants, third_party_url,
+    EXPECT_EQ(GetManagerBase()->GetContentSetting(index, third_party_url,
                                                   first_party_url, &out_info),
               ExpectedContentSetting(GetCohortBeingTested()));
     EXPECT_EQ(out_info.primary_pattern.ToString(), primary_pattern_spec);
@@ -209,10 +209,9 @@
 
   {
     content_settings::SettingInfo out_info;
-    EXPECT_EQ(
-        GetManagerBase()->GetContentSetting(grants, third_party_url_no_grants,
-                                            first_party_url, &out_info),
-        CONTENT_SETTING_BLOCK);
+    EXPECT_EQ(GetManagerBase()->GetContentSetting(
+                  index, third_party_url_no_grants, first_party_url, &out_info),
+              CONTENT_SETTING_BLOCK);
     EXPECT_EQ(out_info.primary_pattern.ToString(), "*");
     EXPECT_EQ(out_info.secondary_pattern.ToString(), "*");
     EXPECT_EQ(
diff --git a/components/update_client/component.cc b/components/update_client/component.cc
index 5e8d43ad..03e832d 100644
--- a/components/update_client/component.cc
+++ b/components/update_client/component.cc
@@ -4,6 +4,7 @@
 
 #include "components/update_client/component.h"
 
+#include <memory>
 #include <tuple>
 #include <utility>
 #include <vector>
@@ -67,6 +68,13 @@
 //     |               +-<- [differential update?]           |
 //     |               |               |                     |
 //     |               |           yes |                     |
+//     |               |               |                     |
+//     |    error, no  |               |                     |
+//     +-<----------[disk space available?]                  |
+//     |               |               |                     |
+//     |           yes |           yes |                     |
+//     |               |               |                     |
+//     |               |               |                     |
 //     |               | error         V                     |
 //     |               +-<----- kDownloadingDiff             |
 //     |               |               |                     |
@@ -1043,31 +1051,64 @@
   EndState();
 }
 
-Component::StateDownloadingDiff::StateDownloadingDiff(Component* component)
-    : State(component, ComponentState::kDownloadingDiff) {}
+Component::StateDownloadingBase::StateDownloadingBase(Component* component,
+                                                      ComponentState state)
+    : State(component, state) {}
 
-Component::StateDownloadingDiff::~StateDownloadingDiff() {
+Component::StateDownloadingBase::~StateDownloadingBase() {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
 }
 
-void Component::StateDownloadingDiff::DoHandle() {
+void Component::StateDownloadingBase::DoHandle() {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
 
   auto& component = Component::State::component();
   CHECK(component.crx_component());
 
+  base::ThreadPool::PostTaskAndReplyWithResult(
+      FROM_HERE, kTaskTraits,
+      base::BindOnce(
+          [](base::RepeatingCallback<int64_t(const base::FilePath&)>
+                 get_available_space) -> int64_t {
+            base::ScopedTempDir temp_dir;
+            return temp_dir.CreateUniqueTempDir()
+                       ? get_available_space.Run(temp_dir.GetPath())
+                       : 0;
+          },
+          component.update_context_->get_available_space),
+      base::BindOnce(&Component::StateDownloadingBase::HandleAvailableSpace,
+                     base::Unretained(this)));
+}
+
+void Component::StateDownloadingBase::HandleAvailableSpace(
+    const int64_t available_bytes) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+
+  auto& component = Component::State::component();
+  CHECK(component.crx_component());
+
+  if (available_bytes <= component_size() * 2) {
+    VLOG(1) << "available_bytes: " << available_bytes
+            << ", download size: " << component_size();
+    component.error_category_ = ErrorCategory::kDownload;
+    component.error_code_ = static_cast<int>(CrxDownloaderError::DISK_FULL);
+
+    TransitionState(std::make_unique<StateUpdateError>(&component));
+    return;
+  }
+
   component.downloaded_bytes_ = -1;
   component.total_bytes_ = -1;
 
   crx_downloader_ =
       component.config()->GetCrxDownloaderFactory()->MakeCrxDownloader(
-          component.CanDoBackgroundDownload(component.sizediff_));
+          component.CanDoBackgroundDownload(component_size()));
   crx_downloader_->set_progress_callback(
-      base::BindRepeating(&Component::StateDownloadingDiff::DownloadProgress,
+      base::BindRepeating(&Component::StateDownloadingBase::DownloadProgress,
                           base::Unretained(this)));
   cancel_callback_ = crx_downloader_->StartDownload(
-      component.crx_diffurls_, component.hashdiff_sha256_,
-      base::BindOnce(&Component::StateDownloadingDiff::DownloadComplete,
+      component_crx_urls(), component_hash_sha256(),
+      base::BindOnce(&Component::StateDownloadingBase::DownloadComplete,
                      base::Unretained(this)));
 
   component.NotifyObservers(Events::COMPONENT_UPDATE_DOWNLOADING);
@@ -1076,7 +1117,7 @@
 // Called when progress is being made downloading a CRX. Can be called multiple
 // times due to how the CRX downloader switches between different downloaders
 // and fallback urls.
-void Component::StateDownloadingDiff::DownloadProgress(int64_t downloaded_bytes,
+void Component::StateDownloadingBase::DownloadProgress(int64_t downloaded_bytes,
                                                        int64_t total_bytes) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
   auto& component = Component::State::component();
@@ -1085,11 +1126,12 @@
   component.NotifyObservers(Events::COMPONENT_UPDATE_DOWNLOADING);
 }
 
-void Component::StateDownloadingDiff::DownloadComplete(
+void Component::StateDownloadingBase::DownloadComplete(
     const CrxDownloader::Result& download_result) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
 
   auto& component = Component::State::component();
+
   for (const auto& download_metrics : crx_downloader_->download_metrics()) {
     component.AppendEvent(component.MakeEventDownloadMetrics(download_metrics));
   }
@@ -1105,90 +1147,81 @@
 
   if (download_result.error) {
     CHECK(download_result.response.empty());
-    component.diff_error_category_ = ErrorCategory::kDownload;
-    component.diff_error_code_ = download_result.error;
+    set_component_error_category(ErrorCategory::kDownload);
+    set_component_error_code(download_result.error);
 
-    TransitionState(std::make_unique<StateDownloading>(&component));
+    TransitionState(next_state_on_error());
     return;
   }
 
   component.payload_path_ = download_result.response;
 
-  TransitionState(std::make_unique<StateUpdatingDiff>(&component));
+  TransitionState(next_state());
 }
 
 Component::StateDownloading::StateDownloading(Component* component)
-    : State(component, ComponentState::kDownloading) {}
-
+    : StateDownloadingBase(component, ComponentState::kDownloading) {}
 Component::StateDownloading::~StateDownloading() {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
 }
 
-void Component::StateDownloading::DoHandle() {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-
+int64_t Component::StateDownloading::component_size() const {
+  return Component::State::component().size_;
+}
+std::vector<GURL> Component::StateDownloading::component_crx_urls() const {
+  return Component::State::component().crx_urls_;
+}
+std::string Component::StateDownloading::component_hash_sha256() const {
+  return Component::State::component().hash_sha256_;
+}
+void Component::StateDownloading::set_component_error_category(
+    ErrorCategory error_category) {
+  Component::State::component().error_category_ = error_category;
+}
+void Component::StateDownloading::set_component_error_code(int error_code) {
+  Component::State::component().error_code_ = error_code;
+}
+std::unique_ptr<Component::State>
+Component::StateDownloading::next_state_on_error() {
   auto& component = Component::State::component();
-  CHECK(component.crx_component());
-
-  component.downloaded_bytes_ = -1;
-  component.total_bytes_ = -1;
-
-  crx_downloader_ =
-      component.config()->GetCrxDownloaderFactory()->MakeCrxDownloader(
-          component.CanDoBackgroundDownload(component.size_));
-  crx_downloader_->set_progress_callback(base::BindRepeating(
-      &Component::StateDownloading::DownloadProgress, base::Unretained(this)));
-  cancel_callback_ = crx_downloader_->StartDownload(
-      component.crx_urls_, component.hash_sha256_,
-      base::BindOnce(&Component::StateDownloading::DownloadComplete,
-                     base::Unretained(this)));
-
-  component.NotifyObservers(Events::COMPONENT_UPDATE_DOWNLOADING);
+  return std::make_unique<Component::StateUpdateError>(&component);
+}
+std::unique_ptr<Component::State> Component::StateDownloading::next_state() {
+  auto& component = Component::State::component();
+  return std::make_unique<Component::StateUpdating>(&component);
 }
 
-// Called when progress is being made downloading a CRX. Can be called multiple
-// times due to how the CRX downloader switches between different downloaders
-// and fallback urls.
-void Component::StateDownloading::DownloadProgress(int64_t downloaded_bytes,
-                                                   int64_t total_bytes) {
+Component::StateDownloadingDiff::StateDownloadingDiff(Component* component)
+    : StateDownloadingBase(component, ComponentState::kDownloadingDiff) {}
+Component::StateDownloadingDiff::~StateDownloadingDiff() {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  auto& component = Component::State::component();
-  component.downloaded_bytes_ = downloaded_bytes;
-  component.total_bytes_ = total_bytes;
-  component.NotifyObservers(Events::COMPONENT_UPDATE_DOWNLOADING);
 }
 
-void Component::StateDownloading::DownloadComplete(
-    const CrxDownloader::Result& download_result) {
-  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-
+int64_t Component::StateDownloadingDiff::component_size() const {
+  return Component::State::component().sizediff_;
+}
+std::vector<GURL> Component::StateDownloadingDiff::component_crx_urls() const {
+  return Component::State::component().crx_diffurls_;
+}
+std::string Component::StateDownloadingDiff::component_hash_sha256() const {
+  return Component::State::component().hashdiff_sha256_;
+}
+void Component::StateDownloadingDiff::set_component_error_category(
+    ErrorCategory error_category) {
+  Component::State::component().diff_error_category_ = error_category;
+}
+void Component::StateDownloadingDiff::set_component_error_code(int error_code) {
+  Component::State::component().diff_error_code_ = error_code;
+}
+std::unique_ptr<Component::State>
+Component::StateDownloadingDiff::next_state_on_error() {
   auto& component = Component::State::component();
-
-  for (const auto& download_metrics : crx_downloader_->download_metrics()) {
-    component.AppendEvent(component.MakeEventDownloadMetrics(download_metrics));
-  }
-
-  crx_downloader_ = nullptr;
-
-  if (component.update_context_->is_cancelled) {
-    TransitionState(std::make_unique<StateUpdateError>(&component));
-    component.error_category_ = ErrorCategory::kService;
-    component.error_code_ = static_cast<int>(ServiceError::CANCELLED);
-    return;
-  }
-
-  if (download_result.error) {
-    CHECK(download_result.response.empty());
-    component.error_category_ = ErrorCategory::kDownload;
-    component.error_code_ = download_result.error;
-
-    TransitionState(std::make_unique<StateUpdateError>(&component));
-    return;
-  }
-
-  component.payload_path_ = download_result.response;
-
-  TransitionState(std::make_unique<StateUpdating>(&component));
+  return std::make_unique<Component::StateDownloading>(&component);
+}
+std::unique_ptr<Component::State>
+Component::StateDownloadingDiff::next_state() {
+  auto& component = Component::State::component();
+  return std::make_unique<Component::StateUpdatingDiff>(&component);
 }
 
 Component::StateUpdatingDiff::StateUpdatingDiff(Component* component)
diff --git a/components/update_client/component.h b/components/update_client/component.h
index 10bc12c..44a1288 100644
--- a/components/update_client/component.h
+++ b/components/update_client/component.h
@@ -257,17 +257,29 @@
     void DoHandle() override;
   };
 
-  class StateDownloadingDiff : public State {
+  class StateDownloadingBase : public State {
    public:
-    explicit StateDownloadingDiff(Component* component);
-    StateDownloadingDiff(const StateDownloadingDiff&) = delete;
-    StateDownloadingDiff& operator=(const StateDownloadingDiff&) = delete;
-    ~StateDownloadingDiff() override;
+    explicit StateDownloadingBase(Component* component, ComponentState state);
+    StateDownloadingBase(const StateDownloadingBase&) = delete;
+    StateDownloadingBase& operator=(const StateDownloadingBase&) = delete;
+    ~StateDownloadingBase() override;
+
+    virtual int64_t component_size() const = 0;
+    virtual std::vector<GURL> component_crx_urls() const = 0;
+    virtual std::string component_hash_sha256() const = 0;
+    virtual void set_component_error_category(ErrorCategory error_category) = 0;
+    virtual void set_component_error_code(int error_code) = 0;
+    virtual std::unique_ptr<State> next_state_on_error() = 0;
+    virtual std::unique_ptr<State> next_state() = 0;
 
    private:
     // State overrides.
     void DoHandle() override;
 
+    // Starts the download if there is enough disk space available to download.
+    // If not enough disk space, transitions to the error state.
+    void HandleAvailableSpace(const int64_t available_bytes);
+
     // Called when progress is being made downloading a CRX. Can be called
     // multiple times due to how the CRX downloader switches between
     // different downloaders and fallback urls.
@@ -279,26 +291,36 @@
     scoped_refptr<CrxDownloader> crx_downloader_;
   };
 
-  class StateDownloading : public State {
+  class StateDownloading : public StateDownloadingBase {
    public:
     explicit StateDownloading(Component* component);
     StateDownloading(const StateDownloading&) = delete;
     StateDownloading& operator=(const StateDownloading&) = delete;
     ~StateDownloading() override;
 
-   private:
-    // State overrides.
-    void DoHandle() override;
+    int64_t component_size() const override;
+    std::vector<GURL> component_crx_urls() const override;
+    std::string component_hash_sha256() const override;
+    void set_component_error_category(ErrorCategory error_category) override;
+    void set_component_error_code(int error_code) override;
+    std::unique_ptr<State> next_state_on_error() override;
+    std::unique_ptr<State> next_state() override;
+  };
 
-    // Called when progress is being made downloading a CRX. Can be called
-    // multiple times due to how the CRX downloader switches between
-    // different downloaders and fallback urls.
-    void DownloadProgress(int64_t downloaded_bytes, int64_t total_bytes);
+  class StateDownloadingDiff : public StateDownloadingBase {
+   public:
+    explicit StateDownloadingDiff(Component* component);
+    StateDownloadingDiff(const StateDownloadingDiff&) = delete;
+    StateDownloadingDiff& operator=(const StateDownloadingDiff&) = delete;
+    ~StateDownloadingDiff() override;
 
-    void DownloadComplete(const CrxDownloader::Result& download_result);
-
-    // Downloads updates for one CRX id only.
-    scoped_refptr<CrxDownloader> crx_downloader_;
+    int64_t component_size() const override;
+    std::vector<GURL> component_crx_urls() const override;
+    std::string component_hash_sha256() const override;
+    void set_component_error_category(ErrorCategory error_category) override;
+    void set_component_error_code(int error_code) override;
+    std::unique_ptr<State> next_state_on_error() override;
+    std::unique_ptr<State> next_state() override;
   };
 
   class StateUpdatingDiff : public State {
diff --git a/components/update_client/update_client_errors.h b/components/update_client/update_client_errors.h
index 56bb2dd..0b9cee0 100644
--- a/components/update_client/update_client_errors.h
+++ b/components/update_client/update_client_errors.h
@@ -33,14 +33,15 @@
   kUpdateCheck,
 };
 
-// These errors are returned with the |kNetworkError| error category. This
-// category could include other errors such as the errors defined by
-// the Chrome net stack.
+// These errors are returned with the `kDownload` error category. This category
+// could include other errors such as the errors defined by the Chrome net
+// stack.
 enum class CrxDownloaderError {
   NONE = 0,
   NO_URL = 10,
   NO_HASH = 11,
   BAD_HASH = 12,  // The downloaded file fails the hash verification.
+  DISK_FULL = 13,
   // The Windows BITS queue contains to many update client jobs. The value is
   // chosen so that it can be reported as a custom COM error on this platform.
   BITS_TOO_MANY_JOBS = 0x0200,
diff --git a/components/update_client/update_client_unittest.cc b/components/update_client/update_client_unittest.cc
index 302f70f..efa9498 100644
--- a/components/update_client/update_client_unittest.cc
+++ b/components/update_client/update_client_unittest.cc
@@ -3624,6 +3624,529 @@
   RunThreads();
 }
 
+TEST_F(UpdateClientTest, DiskFull) {
+  class DataCallbackMock {
+   public:
+    static void Callback(
+        const std::vector<std::string>& ids,
+        base::OnceCallback<
+            void(const std::vector<std::optional<CrxComponent>>&)> callback) {
+      CrxComponent crx1;
+      crx1.app_id = "jebgalgnebhfojomionfpkfelancnnkf";
+      crx1.name = "test_jebg";
+      crx1.pk_hash.assign(std::begin(jebg_hash), std::end(jebg_hash));
+      crx1.version = base::Version("0.9");
+      crx1.installer = base::MakeRefCounted<TestInstaller>();
+      crx1.crx_format_requirement = crx_file::VerifierFormat::CRX3;
+
+      std::move(callback).Run({crx1});
+    }
+  };
+
+  class CompletionCallbackMock {
+   public:
+    static void Callback(base::OnceClosure quit_closure, Error error) {
+      EXPECT_EQ(Error::NONE, error);
+      std::move(quit_closure).Run();
+    }
+  };
+
+  class MockUpdateChecker : public UpdateChecker {
+   public:
+    explicit MockUpdateChecker(int) {}
+
+    void CheckForUpdates(
+        scoped_refptr<UpdateContext> context,
+        const base::flat_map<std::string, std::string>& additional_attributes,
+        UpdateCheckCallback update_check_callback) override {
+      /*
+      Mock the following response:
+
+      <?xml version='1.0' encoding='UTF-8'?>
+      <response protocol='3.1'>
+        <app appid='jebgalgnebhfojomionfpkfelancnnkf'>
+          <updatecheck status='ok'>
+            <urls>
+              <url codebase='http://localhost/download/'/>
+            </urls>
+            <manifest version='1.0' prodversionmin='11.0.1.0'>
+              <packages>
+                <package name='jebgalgnebhfojomionfpkfelancnnkf.crx'
+                         hash_sha256='7ab32f071cd9b5ef8e0d7913be161f532d98b3e9f
+                                      a284a7cd8059c3409ce0498'
+                         fp='somefingerprint'/>
+              </packages>
+            </manifest>
+          </updatecheck>
+        </app>
+      </response>
+      */
+      EXPECT_FALSE(context->session_id.empty());
+      EXPECT_EQ(1u, context->components_to_check_for_updates.size());
+
+      context->get_available_space = base::BindRepeating(
+          [](const base::FilePath&) -> int64_t { return 0; });
+
+      ProtocolParser::Results results;
+      {
+        const std::string id = "jebgalgnebhfojomionfpkfelancnnkf";
+        EXPECT_EQ(id, context->components_to_check_for_updates[0]);
+        EXPECT_EQ(1u, context->components.count(id));
+
+        ProtocolParser::Result::Manifest::Package package;
+        package.name = "jebgalgnebhfojomionfpkfelancnnkf.crx";
+        package.fingerprint = "somefingerprint";
+        package.hash_sha256 =
+            "7ab32f071cd9b5ef8e0d7913be161f532d98b3e9fa284a7cd8059c3409ce0498";
+
+        ProtocolParser::Result result;
+        result.extension_id = "jebgalgnebhfojomionfpkfelancnnkf";
+        result.status = "ok";
+        result.crx_urls.emplace_back("http://localhost/download/");
+        result.manifest.version = "1.0";
+        result.manifest.browser_min_version = "11.0.1.0";
+        result.manifest.packages.push_back(package);
+        results.list.push_back(result);
+
+        EXPECT_FALSE(context->components.at(id)->is_foreground());
+      }
+
+      base::SequencedTaskRunner::GetCurrentDefault()->PostTask(
+          FROM_HERE, base::BindOnce(std::move(update_check_callback), results,
+                                    ErrorCategory::kNone, 0, 0));
+    }
+  };
+  MockUpdateCheckerFactory<MockUpdateChecker> mock_update_checker_factory;
+
+  class MockCrxDownloader : public CrxDownloader {
+   public:
+    MockCrxDownloader() : CrxDownloader(nullptr) {}
+
+   private:
+    ~MockCrxDownloader() override = default;
+
+    base::OnceClosure DoStartDownload(const GURL& url) override {
+      NOTREACHED_IN_MIGRATION();
+      return base::DoNothing();
+    }
+  };
+
+  class MockPingManager : public MockPingManagerImpl {
+   public:
+    explicit MockPingManager(scoped_refptr<Configurator> config)
+        : MockPingManagerImpl(config) {}
+
+   protected:
+    ~MockPingManager() override {
+      const auto ping_data = MockPingManagerImpl::ping_data();
+      EXPECT_EQ(1u, ping_data.size());
+      EXPECT_EQ("jebgalgnebhfojomionfpkfelancnnkf", ping_data[0].id);
+      EXPECT_EQ(base::Version("0.9"), ping_data[0].previous_version);
+      EXPECT_EQ(base::Version("1.0"), ping_data[0].next_version);
+      EXPECT_EQ(1, static_cast<int>(ping_data[0].error_category));
+      EXPECT_EQ(static_cast<int>(CrxDownloaderError::DISK_FULL),
+                ping_data[0].error_code);
+    }
+  };
+
+  SetMockCrxDownloader<MockCrxDownloader>();
+  scoped_refptr<UpdateClient> update_client =
+      base::MakeRefCounted<UpdateClientImpl>(
+          config(), base::MakeRefCounted<MockPingManager>(config()),
+          mock_update_checker_factory.GetFactory());
+
+  MockObserver observer;
+  {
+    InSequence seq;
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_CHECKING_FOR_UPDATES,
+                                  "jebgalgnebhfojomionfpkfelancnnkf"))
+        .Times(1);
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATE_FOUND,
+                                  "jebgalgnebhfojomionfpkfelancnnkf"))
+        .Times(1);
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATE_ERROR,
+                                  "jebgalgnebhfojomionfpkfelancnnkf"))
+        .Times(1);
+  }
+
+  std::vector<CrxUpdateItem> items;
+  auto receiver = base::MakeRefCounted<MockCrxStateChangeReceiver>();
+  EXPECT_CALL(*receiver, Receive(_))
+      .WillRepeatedly(
+          [&items](const CrxUpdateItem& item) { items.push_back(item); });
+
+  update_client->AddObserver(&observer);
+  const std::vector<std::string> ids = {"jebgalgnebhfojomionfpkfelancnnkf"};
+  update_client->Update(
+      ids, base::BindOnce(&DataCallbackMock::Callback),
+      base::BindRepeating(&MockCrxStateChangeReceiver::Receive, receiver),
+      false, base::BindOnce(&CompletionCallbackMock::Callback, quit_closure()));
+  RunThreads();
+
+  EXPECT_EQ(3u, items.size());
+  EXPECT_EQ(ComponentState::kChecking, items[0].state);
+  EXPECT_STREQ("jebgalgnebhfojomionfpkfelancnnkf", items[0].id.c_str());
+  EXPECT_EQ(ComponentState::kCanUpdate, items[1].state);
+  EXPECT_STREQ("jebgalgnebhfojomionfpkfelancnnkf", items[1].id.c_str());
+  EXPECT_EQ(ComponentState::kUpdateError, items[2].state);
+  EXPECT_STREQ("jebgalgnebhfojomionfpkfelancnnkf", items[2].id.c_str());
+
+  update_client->RemoveObserver(&observer);
+}
+
+TEST_F(UpdateClientTest, DiskFullDiff) {
+  class DataCallbackMock : public base::RefCountedThreadSafe<DataCallbackMock> {
+   public:
+    DataCallbackMock() {
+      installer_->set_installer_progress_samples({-1, 50, 100});
+    }
+
+    void Callback(
+        const std::vector<std::string>& ids,
+        base::OnceCallback<
+            void(const std::vector<std::optional<CrxComponent>>&)> callback) {
+      ++num_calls_;
+
+      CrxComponent crx;
+      crx.app_id = "ihfokbkgjpifnbbojhneepfflplebdkc";
+      crx.name = "test_ihfo";
+      crx.pk_hash.assign(std::begin(ihfo_hash), std::end(ihfo_hash));
+      crx.installer = installer_;
+      crx.crx_format_requirement = crx_file::VerifierFormat::CRX3;
+      if (num_calls_ == 1) {
+        crx.version = base::Version("0.8");
+      } else if (num_calls_ == 2) {
+        crx.version = base::Version("1.0");
+      } else {
+        NOTREACHED_IN_MIGRATION();
+      }
+
+      std::move(callback).Run({crx});
+    }
+
+   private:
+    friend class base::RefCountedThreadSafe<DataCallbackMock>;
+    ~DataCallbackMock() = default;
+
+    int num_calls_ = 0;
+    scoped_refptr<VersionedTestInstaller> installer_ =
+        base::MakeRefCounted<VersionedTestInstaller>();
+  };
+  auto data_callback_mock = MakeMockCallback<DataCallbackMock>();
+
+  class CompletionCallbackMock {
+   public:
+    static void Callback(base::OnceClosure quit_closure, Error error) {
+      EXPECT_EQ(Error::NONE, error);
+      std::move(quit_closure).Run();
+    }
+  };
+
+  class MockUpdateChecker : public UpdateChecker {
+   public:
+    explicit MockUpdateChecker(int num_calls) : num_calls_(num_calls) {}
+
+    void CheckForUpdates(
+        scoped_refptr<UpdateContext> context,
+        const base::flat_map<std::string, std::string>& additional_attributes,
+        UpdateCheckCallback update_check_callback) override {
+      EXPECT_FALSE(context->session_id.empty());
+
+      ProtocolParser::Results results;
+
+      if (num_calls_ == 1) {
+        /*
+        Mock the following response:
+        <?xml version='1.0' encoding='UTF-8'?>
+        <response protocol='3.1'>
+          <app appid='ihfokbkgjpifnbbojhneepfflplebdkc'>
+            <updatecheck status='ok'>
+              <urls>
+                <url codebase='http://localhost/download/'/>
+              </urls>
+              <manifest version='1.0' prodversionmin='11.0.1.0'>
+                <packages>
+                  <package name='ihfokbkgjpifnbbojhneepfflplebdkc_1.crx'
+                           hash_sha256='813c59747e139a608b3b5fc49633affc6db57437
+                                        3f309f156ea6d27229c0b3f9'
+                                        fp='21'/>
+                </packages>
+              </manifest>
+            </updatecheck>
+          </app>
+        </response>
+        */
+        const std::string id = "ihfokbkgjpifnbbojhneepfflplebdkc";
+        EXPECT_EQ(id, context->components_to_check_for_updates[0]);
+        EXPECT_EQ(1u, context->components.count(id));
+
+        ProtocolParser::Result::Manifest::Package package;
+        package.name = "ihfokbkgjpifnbbojhneepfflplebdkc_1.crx";
+        package.hash_sha256 =
+            "8f5aa190311237cae00675af87ff457f278cd1a05895470ac5d46647d4a3c2ea";
+        package.fingerprint = "21";
+        auto& component = context->components[id];
+        component->set_previous_fp("20");
+
+        ProtocolParser::Result result;
+        result.extension_id = id;
+        result.status = "ok";
+        result.crx_urls.emplace_back("http://localhost/download/");
+        result.manifest.version = "1.0";
+        result.manifest.browser_min_version = "11.0.1.0";
+        result.manifest.packages.push_back(package);
+        results.list.push_back(result);
+      } else if (num_calls_ == 2) {
+        /*
+        Mock the following response:
+        <?xml version='1.0' encoding='UTF-8'?>
+        <response protocol='3.1'>
+          <app appid='ihfokbkgjpifnbbojhneepfflplebdkc'>
+            <updatecheck status='ok'>
+              <urls>
+                <url codebase='http://localhost/download/'/>
+                <url codebasediff='http://localhost/download/'/>
+              </urls>
+              <manifest version='2.0' prodversionmin='11.0.1.0'>
+                <packages>
+                  <package name='ihfokbkgjpifnbbojhneepfflplebdkc_2.crx'
+                           namediff='ihfokbkgjpifnbbojhneepfflplebdkc_1to2.crx'
+                           hash_sha256='c87d8742c3ff3d7a0cb6f3c91aa2fcf3dea6361
+                                        8086a7db1c5be5300e1d4d6b6'
+                           fp='22'
+                           hashdiff_sha256='0fd48a5dd87006a709756cfc47198cbc4c4
+                                            928f33ac4277d79573c15164a33eb'/>
+                </packages>
+              </manifest>
+            </updatecheck>
+          </app>
+        </response>
+        */
+        const std::string id = "ihfokbkgjpifnbbojhneepfflplebdkc";
+        EXPECT_EQ(id, context->components_to_check_for_updates[0]);
+        EXPECT_EQ(1u, context->components.count(id));
+        context->get_available_space = base::BindRepeating(
+            [](const base::FilePath&) -> int64_t { return 0; });
+
+        ProtocolParser::Result::Manifest::Package package;
+        package.name = "ihfokbkgjpifnbbojhneepfflplebdkc_2.crx";
+        package.namediff = "ihfokbkgjpifnbbojhneepfflplebdkc_1to2.puff";
+        package.hash_sha256 =
+            "c87d8742c3ff3d7a0cb6f3c91aa2fcf3dea63618086a7db1c5be5300e1d4d6b6";
+        package.hashdiff_sha256 =
+            "f2254da51fa2478a8ba90e58e1c28e24033ec7841015eebf1c82e31b957c44b2";
+        package.fingerprint = "22";
+
+        auto& component = context->components[id];
+        component->set_previous_fp("21");
+
+        ProtocolParser::Result result;
+        result.extension_id = id;
+        result.status = "ok";
+        result.crx_urls.emplace_back("http://localhost/download/");
+        result.crx_diffurls.emplace_back("http://localhost/download/");
+        result.manifest.version = "2.0";
+        result.manifest.browser_min_version = "11.0.1.0";
+        result.manifest.packages.push_back(package);
+        results.list.push_back(result);
+      } else {
+        NOTREACHED_IN_MIGRATION();
+      }
+
+      base::SequencedTaskRunner::GetCurrentDefault()->PostTask(
+          FROM_HERE, base::BindOnce(std::move(update_check_callback), results,
+                                    ErrorCategory::kNone, 0, 0));
+    }
+
+   private:
+    const int num_calls_;
+  };
+  MockUpdateCheckerFactory<MockUpdateChecker> mock_update_checker_factory;
+
+  class MockCrxDownloader : public CrxDownloader {
+   public:
+    MockCrxDownloader() : CrxDownloader(nullptr) {}
+
+   private:
+    ~MockCrxDownloader() override = default;
+
+    base::OnceClosure DoStartDownload(const GURL& url) override {
+      DownloadMetrics download_metrics;
+      base::FilePath path;
+      Result result;
+      if (url.path() == "/download/ihfokbkgjpifnbbojhneepfflplebdkc_1.crx") {
+        download_metrics.url = url;
+        download_metrics.downloader = DownloadMetrics::kNone;
+        download_metrics.error = 0;
+        download_metrics.downloaded_bytes = 53638;
+        download_metrics.total_bytes = 53638;
+        download_metrics.download_time_ms = 2000;
+
+        EXPECT_TRUE(MakeTestFile(
+            GetTestFilePath("ihfokbkgjpifnbbojhneepfflplebdkc_1.crx"), &path));
+
+        result.error = 0;
+        result.response = path;
+      } else {
+        NOTREACHED_IN_MIGRATION();
+      }
+
+      base::SequencedTaskRunner::GetCurrentDefault()->PostTask(
+          FROM_HERE, base::BindOnce(&MockCrxDownloader::OnDownloadProgress,
+                                    base::Unretained(this),
+                                    download_metrics.downloaded_bytes / 2,
+                                    download_metrics.total_bytes));
+
+      base::SequencedTaskRunner::GetCurrentDefault()->PostTask(
+          FROM_HERE, base::BindOnce(&MockCrxDownloader::OnDownloadProgress,
+                                    base::Unretained(this),
+                                    download_metrics.downloaded_bytes,
+                                    download_metrics.total_bytes));
+
+      base::SequencedTaskRunner::GetCurrentDefault()->PostTask(
+          FROM_HERE, base::BindOnce(&MockCrxDownloader::OnDownloadComplete,
+                                    base::Unretained(this), true, result,
+                                    download_metrics));
+      return base::DoNothing();
+    }
+  };
+
+  class MockPingManager : public MockPingManagerImpl {
+   public:
+    explicit MockPingManager(scoped_refptr<Configurator> config)
+        : MockPingManagerImpl(config) {}
+
+   protected:
+    ~MockPingManager() override {
+      const auto ping_data = MockPingManagerImpl::ping_data();
+      EXPECT_EQ(2u, ping_data.size());
+      EXPECT_EQ("ihfokbkgjpifnbbojhneepfflplebdkc", ping_data[0].id);
+      EXPECT_EQ(base::Version("0.8"), ping_data[0].previous_version);
+      EXPECT_EQ(base::Version("1.0"), ping_data[0].next_version);
+      EXPECT_EQ(0, static_cast<int>(ping_data[0].error_category));
+      EXPECT_EQ(0, ping_data[0].error_code);
+      EXPECT_EQ("ihfokbkgjpifnbbojhneepfflplebdkc", ping_data[1].id);
+      EXPECT_EQ(base::Version("1.0"), ping_data[1].previous_version);
+      EXPECT_EQ(base::Version("2.0"), ping_data[1].next_version);
+      EXPECT_EQ(1, static_cast<int>(ping_data[1].error_category));
+      EXPECT_EQ(static_cast<int>(CrxDownloaderError::DISK_FULL),
+                ping_data[1].error_code);
+    }
+  };
+
+  SetMockCrxDownloader<MockCrxDownloader>();
+  scoped_refptr<UpdateClient> update_client =
+      base::MakeRefCounted<UpdateClientImpl>(
+          config(), base::MakeRefCounted<MockPingManager>(config()),
+          mock_update_checker_factory.GetFactory());
+
+  MockObserver observer;
+  {
+    InSequence seq;
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_CHECKING_FOR_UPDATES,
+                                  "ihfokbkgjpifnbbojhneepfflplebdkc"))
+        .Times(1);
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATE_FOUND,
+                                  "ihfokbkgjpifnbbojhneepfflplebdkc"))
+        .Times(1);
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATE_DOWNLOADING,
+                                  "ihfokbkgjpifnbbojhneepfflplebdkc"))
+        .Times(AtLeast(1));
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATE_READY,
+                                  "ihfokbkgjpifnbbojhneepfflplebdkc"))
+        .Times(1);
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATE_UPDATING,
+                                  "ihfokbkgjpifnbbojhneepfflplebdkc"))
+        .Times(3);
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATED,
+                                  "ihfokbkgjpifnbbojhneepfflplebdkc"))
+        .Times(1);
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_CHECKING_FOR_UPDATES,
+                                  "ihfokbkgjpifnbbojhneepfflplebdkc"))
+        .Times(1);
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATE_FOUND,
+                                  "ihfokbkgjpifnbbojhneepfflplebdkc"))
+        .Times(1);
+    EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATE_ERROR,
+                                  "ihfokbkgjpifnbbojhneepfflplebdkc"))
+        .Times(1);
+  }
+
+  update_client->AddObserver(&observer);
+  const std::vector<std::string> ids = {"ihfokbkgjpifnbbojhneepfflplebdkc"};
+  {
+    std::vector<CrxUpdateItem> items;
+    auto receiver = base::MakeRefCounted<MockCrxStateChangeReceiver>();
+    EXPECT_CALL(*receiver, Receive(_))
+        .WillRepeatedly(
+            [&items](const CrxUpdateItem& item) { items.push_back(item); });
+
+    base::RunLoop runloop;
+    update_client->Update(
+        ids, data_callback_mock,
+        base::BindRepeating(&MockCrxStateChangeReceiver::Receive, receiver),
+        false,
+        base::BindOnce(&CompletionCallbackMock::Callback,
+                       runloop.QuitClosure()));
+    runloop.Run();
+
+    EXPECT_EQ(10u, items.size());
+    EXPECT_EQ(ComponentState::kChecking, items[0].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[0].id.c_str());
+    EXPECT_EQ(ComponentState::kCanUpdate, items[1].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[1].id.c_str());
+    EXPECT_EQ(ComponentState::kDownloading, items[2].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[2].id.c_str());
+    EXPECT_EQ(ComponentState::kDownloading, items[3].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[3].id.c_str());
+    EXPECT_EQ(ComponentState::kDownloading, items[4].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[4].id.c_str());
+    EXPECT_EQ(ComponentState::kUpdating, items[5].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[5].id.c_str());
+    EXPECT_EQ(ComponentState::kUpdating, items[6].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[6].id.c_str());
+    EXPECT_EQ(ComponentState::kUpdating, items[7].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[7].id.c_str());
+    EXPECT_EQ(ComponentState::kUpdating, items[8].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[8].id.c_str());
+    EXPECT_EQ(ComponentState::kUpdated, items[9].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[9].id.c_str());
+
+    std::vector<int> samples = {-1, -1, -1, -1, -1, -1, -1, 50, 100, 100};
+    EXPECT_EQ(items.size(), samples.size());
+    for (size_t i = 0; i != items.size(); ++i) {
+      EXPECT_EQ(items[i].install_progress, samples[i]);
+    }
+  }
+
+  {
+    std::vector<CrxUpdateItem> items;
+    auto receiver = base::MakeRefCounted<MockCrxStateChangeReceiver>();
+    EXPECT_CALL(*receiver, Receive(_))
+        .WillRepeatedly(
+            [&items](const CrxUpdateItem& item) { items.push_back(item); });
+
+    base::RunLoop runloop;
+    update_client->Update(
+        ids, data_callback_mock,
+        base::BindRepeating(&MockCrxStateChangeReceiver::Receive, receiver),
+        false,
+        base::BindOnce(&CompletionCallbackMock::Callback,
+                       runloop.QuitClosure()));
+    runloop.Run();
+
+    EXPECT_EQ(3u, items.size());
+    EXPECT_EQ(ComponentState::kChecking, items[0].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[0].id.c_str());
+    EXPECT_EQ(ComponentState::kCanUpdate, items[1].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[1].id.c_str());
+    EXPECT_EQ(ComponentState::kUpdateError, items[2].state);
+    EXPECT_STREQ("ihfokbkgjpifnbbojhneepfflplebdkc", items[2].id.c_str());
+  }
+
+  update_client->RemoveObserver(&observer);
+}
+
 struct SendPingTestCase {
   const int event_type;
   const int result;
diff --git a/components/update_client/update_engine.cc b/components/update_client/update_engine.cc
index f36bf0c..3376dafa 100644
--- a/components/update_client/update_engine.cc
+++ b/components/update_client/update_engine.cc
@@ -13,6 +13,7 @@
 #include "base/check.h"
 #include "base/check_op.h"
 #include "base/feature_list.h"
+#include "base/files/file_path.h"
 #include "base/functional/bind.h"
 #include "base/functional/callback.h"
 #include "base/functional/callback_helpers.h"
@@ -46,7 +47,8 @@
     const UpdateEngine::NotifyObserversCallback& notify_observers_callback,
     UpdateEngine::Callback callback,
     PersistedData* persisted_data,
-    bool is_update_check_only)
+    bool is_update_check_only,
+    base::RepeatingCallback<int64_t(const base::FilePath&)> get_available_space)
     : config(config),
       crx_cache_(crx_cache),
       is_foreground(is_foreground),
@@ -58,7 +60,8 @@
       session_id(base::StrCat(
           {"{", base::Uuid::GenerateRandomV4().AsLowercaseString(), "}"})),
       persisted_data(persisted_data),
-      is_update_check_only(is_update_check_only) {
+      is_update_check_only(is_update_check_only),
+      get_available_space(get_available_space) {
   for (const auto& id : ids) {
     components.insert(
         std::make_pair(id, std::make_unique<Component>(*this, id)));
diff --git a/components/update_client/update_engine.h b/components/update_client/update_engine.h
index ffba8e7..81f2fa1 100644
--- a/components/update_client/update_engine.h
+++ b/components/update_client/update_engine.h
@@ -12,10 +12,13 @@
 #include <vector>
 
 #include "base/containers/queue.h"
+#include "base/files/file_path.h"
+#include "base/functional/bind.h"
 #include "base/functional/callback.h"
 #include "base/memory/raw_ptr.h"
 #include "base/memory/ref_counted.h"
 #include "base/sequence_checker.h"
+#include "base/system/sys_info.h"
 #include "base/time/time.h"
 #include "components/update_client/component.h"
 #include "components/update_client/crx_cache.h"
@@ -141,7 +144,12 @@
       const UpdateEngine::NotifyObserversCallback& notify_observers_callback,
       UpdateEngine::Callback callback,
       PersistedData* persisted_data,
-      bool is_update_check_only);
+      bool is_update_check_only,
+      base::RepeatingCallback<int64_t(const base::FilePath&)>
+          get_available_space =
+              base::BindRepeating([](const base::FilePath& dir) {
+                return base::SysInfo::AmountOfFreeDiskSpace(dir);
+              }));
   UpdateContext(const UpdateContext&) = delete;
   UpdateContext& operator=(const UpdateContext&) = delete;
 
@@ -210,6 +218,8 @@
   // True if this context is for an update check operation.
   bool is_update_check_only = false;
 
+  base::RepeatingCallback<int64_t(const base::FilePath&)> get_available_space;
+
  private:
   friend class base::RefCountedThreadSafe<UpdateContext>;
   ~UpdateContext();
diff --git a/components/viz/common/features.cc b/components/viz/common/features.cc
index 9333d9b..e07b952 100644
--- a/components/viz/common/features.cc
+++ b/components/viz/common/features.cc
@@ -237,7 +237,11 @@
 
 BASE_FEATURE(kAllowUndamagedNonrootRenderPassToSkip,
              "AllowUndamagedNonrootRenderPassToSkip",
+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS_LACROS)
+             base::FEATURE_ENABLED_BY_DEFAULT);
+#else
              base::FEATURE_DISABLED_BY_DEFAULT);
+#endif
 
 // Allow SurfaceAggregator to merge render passes when they contain quads that
 // require overlay (e.g. protected video). See usage in |EmitSurfaceContent|.
@@ -357,7 +361,7 @@
 // Enabled by default 03/2014, kept to run a holdback experiment.
 BASE_FEATURE(kEvictionUnlocksResources,
              "EvictionUnlocksResources",
-             base::FEATURE_ENABLED_BY_DEFAULT);
+             base::FEATURE_DISABLED_BY_DEFAULT);
 
 // If enabled, FrameRateDecider will toggle to half framerate if there's only
 // one video on screen whose framerate is lower than the display vsync and in
diff --git a/components/viz/service/display/skia_renderer.cc b/components/viz/service/display/skia_renderer.cc
index ef64adc..84bb829 100644
--- a/components/viz/service/display/skia_renderer.cc
+++ b/components/viz/service/display/skia_renderer.cc
@@ -1368,8 +1368,7 @@
       resource_provider_.get(), /*allow_access_to_gpu_thread=*/true);
 
   for (const auto& mailbox : released_overlays) {
-    auto iter = base::ranges::find(awaiting_release_overlay_locks_, mailbox,
-                                   &OverlayLock::mailbox);
+    auto iter = awaiting_release_overlay_locks_.find(mailbox);
     if (iter == awaiting_release_overlay_locks_.end()) {
       // The released overlay should always be found as awaiting to be released.
       DLOG(FATAL) << "Got an unexpected mailbox";
@@ -4423,11 +4422,27 @@
 #endif  // BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_OZONE) || BUILDFLAG(IS_WIN)
 
 #if BUILDFLAG(IS_APPLE)
-bool SkiaRenderer::OverlayLockComparator::operator()(
+std::size_t SkiaRenderer::OverlayLockHash::operator()(
+    const OverlayLock& o) const {
+  return std::hash<gpu::Mailbox>{}(o.mailbox());
+}
+
+std::size_t SkiaRenderer::OverlayLockHash::operator()(
+    const gpu::Mailbox& m) const {
+  return std::hash<gpu::Mailbox>{}(m);
+}
+
+bool SkiaRenderer::OverlayLockKeyEqual::operator()(
     const OverlayLock& lhs,
     const OverlayLock& rhs) const {
-  return lhs.mailbox() < rhs.mailbox();
+  return lhs.mailbox() == rhs.mailbox();
 }
-#endif  // BUILDFLAG(IS_APPLE)
+
+bool SkiaRenderer::OverlayLockKeyEqual::operator()(
+    const OverlayLock& lhs,
+    const gpu::Mailbox& rhs) const {
+  return lhs.mailbox() == rhs;
+}
+#endif
 
 }  // namespace viz
diff --git a/components/viz/service/display/skia_renderer.h b/components/viz/service/display/skia_renderer.h
index 320a7ac..6197955 100644
--- a/components/viz/service/display/skia_renderer.h
+++ b/components/viz/service/display/skia_renderer.h
@@ -7,11 +7,11 @@
 
 #include <memory>
 #include <tuple>
+#include <unordered_set>
 #include <utility>
 #include <vector>
 
 #include "base/containers/flat_map.h"
-#include "base/containers/flat_set.h"
 #include "base/memory/raw_ptr.h"
 #include "build/build_config.h"
 #include "components/viz/service/display/direct_renderer.h"
@@ -528,15 +528,21 @@
       read_lock_release_fence_overlay_locks_;
 
 #if BUILDFLAG(IS_APPLE)
-  class OverlayLockComparator {
-   public:
+  struct OverlayLockHash {
+    using is_transparent = void;
+    std::size_t operator()(const OverlayLock& o) const;
+    std::size_t operator()(const gpu::Mailbox& m) const;
+  };
+
+  struct OverlayLockKeyEqual {
     using is_transparent = void;
     bool operator()(const OverlayLock& lhs, const OverlayLock& rhs) const;
+    bool operator()(const OverlayLock& lhs, const gpu::Mailbox& rhs) const;
   };
 
   // A set for locks of overlays which are waiting to be released, using
-  // mailbox() as the unique key.
-  base::flat_set<OverlayLock, OverlayLockComparator>
+  // the mailbox() as the unique key.
+  std::unordered_set<OverlayLock, OverlayLockHash, OverlayLockKeyEqual>
       awaiting_release_overlay_locks_;
 #endif  // BUILDFLAG(IS_APPLE)
 
diff --git a/components/viz/service/display_embedder/skia_output_device_buffer_queue.cc b/components/viz/service/display_embedder/skia_output_device_buffer_queue.cc
index 5712035..8c7098bf 100644
--- a/components/viz/service/display_embedder/skia_output_device_buffer_queue.cc
+++ b/components/viz/service/display_embedder/skia_output_device_buffer_queue.cc
@@ -61,7 +61,8 @@
 
 class SkiaOutputDeviceBufferQueue::OverlayData {
  public:
-  OverlayData() = default;
+  OverlayData() = delete;
+  OverlayData(OverlayData&& other) = delete;
 
   OverlayData(std::unique_ptr<gpu::OverlayImageRepresentation> representation,
               std::unique_ptr<gpu::OverlayImageRepresentation::ScopedReadAccess>
@@ -69,28 +70,14 @@
               bool is_root_render_pass)
       : representation_(std::move(representation)),
         scoped_read_access_(std::move(scoped_read_access)),
-        ref_(1),
         is_root_render_pass_(is_root_render_pass) {
     DCHECK(representation_);
     DCHECK(scoped_read_access_);
   }
 
-  OverlayData(OverlayData&& other) { *this = std::move(other); }
+  ~OverlayData() = default;
 
-  ~OverlayData() { Reset(); }
-
-  OverlayData& operator=(OverlayData&& other) {
-    DCHECK(!IsInUseByWindowServer());
-    DCHECK(!ref_);
-    DCHECK(!scoped_read_access_);
-    DCHECK(!representation_);
-    scoped_read_access_ = std::move(other.scoped_read_access_);
-    representation_ = std::move(other.representation_);
-    ref_ = other.ref_;
-    other.ref_ = 0;
-    is_root_render_pass_ = other.is_root_render_pass_;
-    return *this;
-  }
+  OverlayData& operator=(OverlayData&& other) = delete;
 
   bool IsInUseByWindowServer() const {
 #if BUILDFLAG(IS_APPLE)
@@ -108,19 +95,15 @@
 #endif
   }
 
-  void Ref() { ++ref_; }
+  void Ref() const { ++ref_; }
 
-  void Unref() {
-    DCHECK_GT(ref_, 0);
-    if (ref_ > 1) {
-      --ref_;
-    } else if (ref_ == 1) {
-      DCHECK(!IsInUseByWindowServer());
-      Reset();
-    }
+  void Unref() const {
+    // Unref should only be called when there is more than one reference.
+    DCHECK_GT(ref_, 1);
+    --ref_;
   }
 
-  void OnReuse() {
+  void OnReuse() const {
     // This is a proxy check for single-buffered overlay.
     if ((representation_->usage() &
          gpu::SHARED_IMAGE_USAGE_CONCURRENT_READ_WRITE) &&
@@ -133,7 +116,7 @@
     }
   }
 
-  void OnContextLost() { representation_->OnContextLost(); }
+  void OnContextLost() const { representation_->OnContextLost(); }
 
   bool unique() const { return ref_ == 1; }
   const gpu::Mailbox& mailbox() const { return representation_->mailbox(); }
@@ -142,20 +125,14 @@
     return scoped_read_access_.get();
   }
 
-  bool IsRootRenderPass() { return is_root_render_pass_; }
+  bool IsRootRenderPass() const { return is_root_render_pass_; }
 
  private:
-  void Reset() {
-    scoped_read_access_.reset();
-    representation_.reset();
-    ref_ = 0;
-  }
-
-  std::unique_ptr<gpu::OverlayImageRepresentation> representation_;
-  std::unique_ptr<gpu::OverlayImageRepresentation::ScopedReadAccess>
+  const std::unique_ptr<gpu::OverlayImageRepresentation> representation_;
+  mutable std::unique_ptr<gpu::OverlayImageRepresentation::ScopedReadAccess>
       scoped_read_access_;
-  int ref_ = 0;
-  bool is_root_render_pass_ = false;
+  mutable int ref_ = 1;
+  const bool is_root_render_pass_ = false;
 };
 
 SkiaOutputDeviceBufferQueue::SkiaOutputDeviceBufferQueue(
@@ -372,7 +349,7 @@
   }
 }
 
-SkiaOutputDeviceBufferQueue::OverlayData*
+const SkiaOutputDeviceBufferQueue::OverlayData*
 SkiaOutputDeviceBufferQueue::GetOrCreateOverlayData(const gpu::Mailbox& mailbox,
                                                     bool is_root_render_pass,
                                                     bool* is_existing) {
@@ -589,7 +566,7 @@
   [[maybe_unused]] std::vector<gpu::Mailbox> released_overlays;
   // Go through backings of all overlays, and release overlay backings which are
   // not used.
-  base::EraseIf(overlays_, [&result, &has_in_use_overlays,
+  std::erase_if(overlays_, [&result, &has_in_use_overlays,
                             &released_overlays](auto& overlay) {
     if (!overlay.unique()) {
       return false;
@@ -618,7 +595,6 @@
       overlay.scoped_read_access()->SetReleaseFence(
           result.release_fence.Clone());
     }
-    overlay.Unref();
     return true;
   });
 
@@ -674,7 +650,7 @@
 
   std::vector<gpu::Mailbox> released_overlays;
 
-  base::EraseIf(overlays_, [&released_overlays](auto& overlay) {
+  std::erase_if(overlays_, [&released_overlays](auto& overlay) {
     if (!overlay.unique() || overlay.IsInUseByWindowServer() ||
         overlay.IsRootRenderPass()) {
       return false;
@@ -689,8 +665,6 @@
 #else
     (void)released_overlays;
 #endif
-
-    overlay.Unref();
     return true;
   });
 
@@ -809,21 +783,26 @@
   return RecreateImages();
 }
 
-bool SkiaOutputDeviceBufferQueue::OverlayDataComparator::operator()(
-    const OverlayData& lhs,
-    const OverlayData& rhs) const {
-  return lhs.mailbox() < rhs.mailbox();
+size_t SkiaOutputDeviceBufferQueue::OverlayDataHash::operator()(
+    const OverlayData& o) const {
+  return std::hash<gpu::Mailbox>{}(o.mailbox());
 }
 
-bool SkiaOutputDeviceBufferQueue::OverlayDataComparator::operator()(
+size_t SkiaOutputDeviceBufferQueue::OverlayDataHash::operator()(
+    const gpu::Mailbox& m) const {
+  return std::hash<gpu::Mailbox>{}(m);
+}
+
+bool SkiaOutputDeviceBufferQueue::OverlayDataKeyEqual::operator()(
+    const OverlayData& lhs,
+    const OverlayData& rhs) const {
+  return lhs.mailbox() == rhs.mailbox();
+}
+
+bool SkiaOutputDeviceBufferQueue::OverlayDataKeyEqual::operator()(
     const OverlayData& lhs,
     const gpu::Mailbox& rhs) const {
-  return lhs.mailbox() < rhs;
-}
-bool SkiaOutputDeviceBufferQueue::OverlayDataComparator::operator()(
-    const gpu::Mailbox& lhs,
-    const OverlayData& rhs) const {
-  return lhs < rhs.mailbox();
+  return lhs.mailbox() == rhs;
 }
 
 void SkiaOutputDeviceBufferQueue::SetVSyncDisplayID(int64_t display_id) {
diff --git a/components/viz/service/display_embedder/skia_output_device_buffer_queue.h b/components/viz/service/display_embedder/skia_output_device_buffer_queue.h
index 2913cac..d0f343be 100644
--- a/components/viz/service/display_embedder/skia_output_device_buffer_queue.h
+++ b/components/viz/service/display_embedder/skia_output_device_buffer_queue.h
@@ -7,11 +7,11 @@
 
 #include <memory>
 #include <unordered_map>
+#include <unordered_set>
 #include <utility>
 #include <vector>
 
 #include "base/cancelable_callback.h"
-#include "base/containers/flat_set.h"
 #include "base/memory/raw_ptr.h"
 #include "base/time/default_tick_clock.h"
 #include "base/time/time.h"
@@ -101,9 +101,9 @@
 
   // Given an overlay mailbox, returns the corresponding OverlayData* from
   // |overlays_|. Inserts an OverlayData if mailbox is not in |overlays_|.
-  OverlayData* GetOrCreateOverlayData(const gpu::Mailbox& mailbox,
-                                      bool is_root_render_pass,
-                                      bool* is_existing = nullptr);
+  const OverlayData* GetOrCreateOverlayData(const gpu::Mailbox& mailbox,
+                                            bool is_root_render_pass,
+                                            bool* is_existing = nullptr);
 
   std::unique_ptr<OutputPresenter> presenter_;
   const gpu::GpuDriverBugWorkarounds workarounds_;
@@ -144,16 +144,22 @@
   // Mailboxes of committed overlays for the last SwapBuffers call.
   std::vector<gpu::Mailbox> committed_overlay_mailboxes_;
 
-  class OverlayDataComparator {
-   public:
+  struct OverlayDataHash {
+    using is_transparent = void;
+    std::size_t operator()(const OverlayData& o) const;
+    std::size_t operator()(const gpu::Mailbox& m) const;
+  };
+
+  struct OverlayDataKeyEqual {
     using is_transparent = void;
     bool operator()(const OverlayData& lhs, const OverlayData& rhs) const;
     bool operator()(const OverlayData& lhs, const gpu::Mailbox& rhs) const;
-    bool operator()(const gpu::Mailbox& lhs, const OverlayData& rhs) const;
   };
+
   // A set for all overlays. The set uses overlay_data.mailbox() as the unique
   // key.
-  base::flat_set<OverlayData, OverlayDataComparator> overlays_;
+  std::unordered_set<OverlayData, OverlayDataHash, OverlayDataKeyEqual>
+      overlays_;
 
   // Set to true if no image is to be used for the primary plane of this frame.
   bool current_frame_has_no_primary_plane_ = false;
diff --git a/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreBottomSheetMediator.java b/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreBottomSheetMediator.java
index bea5938..a33cec76 100644
--- a/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreBottomSheetMediator.java
+++ b/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreBottomSheetMediator.java
@@ -99,6 +99,7 @@
         }
         mModel.set(PwaRestoreProperties.APPS, appList);
         mModel.set(PwaRestoreProperties.DESELECT_BUTTON_ENABLED, false);
+        mModel.set(PwaRestoreProperties.EXPANDED_BUTTON_ENABLED, false);
     }
 
     private void onRestoreButtonClicked() {
@@ -137,6 +138,7 @@
         }
 
         mModel.set(PwaRestoreProperties.DESELECT_BUTTON_ENABLED, somethingSelected);
+        mModel.set(PwaRestoreProperties.EXPANDED_BUTTON_ENABLED, somethingSelected);
     }
 
     PropertyModel getModel() {
diff --git a/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreBottomSheetViewBinder.java b/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreBottomSheetViewBinder.java
index b4dd46ea..76ffe32 100644
--- a/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreBottomSheetViewBinder.java
+++ b/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreBottomSheetViewBinder.java
@@ -46,6 +46,9 @@
         } else if (propertyKey.equals(PwaRestoreProperties.EXPANDED_BUTTON_LABEL)) {
             ((Button) view.getContentView().findViewById(R.id.restore_button))
                     .setText(model.get(PwaRestoreProperties.EXPANDED_BUTTON_LABEL));
+        } else if (propertyKey.equals(PwaRestoreProperties.EXPANDED_BUTTON_ENABLED)) {
+            ((Button) view.getContentView().findViewById(R.id.restore_button))
+                    .setEnabled(model.get(PwaRestoreProperties.EXPANDED_BUTTON_ENABLED));
         } else if (propertyKey.equals(PwaRestoreProperties.BACK_BUTTON_ON_CLICK_CALLBACK)) {
             view.setBackButtonListener(
                     model.get(PwaRestoreProperties.BACK_BUTTON_ON_CLICK_CALLBACK));
diff --git a/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreProperties.java b/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreProperties.java
index d0d9009..717361a 100644
--- a/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreProperties.java
+++ b/components/webapps/browser/android/java/src/org/chromium/components/webapps/pwa_restore_ui/PwaRestoreProperties.java
@@ -106,6 +106,8 @@
             new WritableObjectPropertyKey<>();
     static final WritableObjectPropertyKey<String> EXPANDED_BUTTON_LABEL =
             new WritableObjectPropertyKey<>();
+    static final WritableObjectPropertyKey<Boolean> EXPANDED_BUTTON_ENABLED =
+            new WritableObjectPropertyKey<>();
     static final WritableObjectPropertyKey<String> APPS_TITLE = new WritableObjectPropertyKey<>();
 
     // Button handling:
@@ -133,6 +135,7 @@
         DESELECT_BUTTON_LABEL,
         DESELECT_BUTTON_ENABLED,
         EXPANDED_BUTTON_LABEL,
+        EXPANDED_BUTTON_ENABLED,
         APPS_TITLE,
         BACK_BUTTON_ON_CLICK_CALLBACK,
         REVIEW_BUTTON_ON_CLICK_CALLBACK,
diff --git a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc
index 282ec1f9..2459948 100644
--- a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc
+++ b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc
@@ -767,7 +767,10 @@
           attribution_reporting::kAttributionReportingRegisterSourceHeader,
           &value)) {
         if (web_source_header.has_value()) {
-          // TODO(https://crbug.com/40242261): Log an audit issue.
+          MaybeLogAuditIssue(registrations.render_frame_id(), reporting_url,
+                             registrations.devtools_request_id(),
+                             /*invalid_parameter=*/std::nullopt,
+                             AttributionReportingIssueType::kSourceIgnored);
           return std::nullopt;
         }
         web_source_header = std::move(value);
@@ -783,7 +786,10 @@
           attribution_reporting::kAttributionReportingRegisterTriggerHeader,
           &value)) {
         if (web_trigger_header.has_value()) {
-          // TODO(https://crbug.com/40242261): Log an audit issue.
+          MaybeLogAuditIssue(registrations.render_frame_id(), reporting_url,
+                             registrations.devtools_request_id(),
+                             /*invalid_parameter=*/std::nullopt,
+                             AttributionReportingIssueType::kTriggerIgnored);
           return std::nullopt;
         }
         web_trigger_header = std::move(value);
diff --git a/content/browser/browsing_data/browsing_data_remover_impl.cc b/content/browser/browsing_data/browsing_data_remover_impl.cc
index 0ddfc1a3..e69d13e 100644
--- a/content/browser/browsing_data/browsing_data_remover_impl.cc
+++ b/content/browser/browsing_data/browsing_data_remover_impl.cc
@@ -517,7 +517,7 @@
     bool perform_storage_cleanup =
         delete_begin_.is_null() && delete_end_.is_max() &&
         origin_type_mask_ & ORIGIN_TYPE_UNPROTECTED_WEB &&
-        filter_builder->GetMode() == BrowsingDataFilterBuilder::Mode::kPreserve;
+        filter_builder->MatchesMostOriginsAndDomains();
 
     storage_partition->ClearData(
         storage_partition_remove_mask,
@@ -537,7 +537,9 @@
     network::mojom::NetworkContext* network_context =
         storage_partition->GetNetworkContext();
 
-    RenderProcessHostImpl::ClearAllResourceCaches();
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
+      RenderProcessHostImpl::ClearAllResourceCaches();
+    }
 
     // TODO(crbug.com/40563720): implement retry on network service.
 
@@ -552,8 +554,7 @@
             features::kCodeCacheDeletionWithoutFilter)) {
       // Experimentally perform preservelist deletions without filter and skip
       // origin specific deletions. See crbug.com/1040039#26.
-      if (filter_builder->GetMode() ==
-          BrowsingDataFilterBuilder::Mode::kPreserve) {
+      if (filter_builder->MatchesMostOriginsAndDomains()) {
         storage_partition->ClearCodeCaches(
             delete_begin, delete_end, /*url_matcher=*/base::NullCallback(),
             CreateTaskCompletionClosureForMojo(TracingDataType::kCodeCaches));
@@ -565,8 +566,7 @@
     }
 
     // TODO(crbug.com/1985971) : Implement filtering for NetworkHistory.
-    if (filter_builder->GetMode() ==
-        BrowsingDataFilterBuilder::Mode::kPreserve) {
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
       // When clearing cache, wipe accumulated network related data
       // (TransportSecurityState and HttpServerPropertiesManager data).
       network_context->ClearNetworkingHistoryBetween(
@@ -575,7 +575,9 @@
     }
 
     // Clears the PrefetchedSignedExchangeCache of all RenderFrameHostImpls.
-    RenderFrameHostImpl::ClearAllPrefetchedSignedExchangeCache();
+    if (filter_builder->MatchesMostOriginsAndDomains()) {
+      RenderFrameHostImpl::ClearAllPrefetchedSignedExchangeCache();
+    }
 
     // Clears the CORS PreFlight cache. We don't support delete_begin,
     // delete_end time range, as the preflight cache max age is capped to 2hrs.
@@ -789,8 +791,7 @@
   }
 
   base::TimeDelta delta = base::TimeTicks::Now() - task.task_started;
-  if (task.filter_builder->GetMode() ==
-      BrowsingDataFilterBuilder::Mode::kPreserve) {
+  if (task.filter_builder->MatchesMostOriginsAndDomains()) {
     // Full, and time based and filtered deletions are often implemented
     // differently, so we track them in separate metrics.
     if (!task.filter_builder->MatchesAllOriginsAndDomains()) {
diff --git a/content/browser/child_process_security_policy_impl.cc b/content/browser/child_process_security_policy_impl.cc
index 1e27fc5..338c8f88 100644
--- a/content/browser/child_process_security_policy_impl.cc
+++ b/content/browser/child_process_security_policy_impl.cc
@@ -467,14 +467,18 @@
     can_read_raw_cookies_ = false;
   }
 
-  void GrantOpaqueOriginForLoadDataWithBaseURL(const url::Origin& origin) {
-    CHECK(origin.opaque());
-    load_data_with_base_url_origin_set_.insert(origin);
+  void GrantOriginCheckExemptionForWebView(const url::Origin& origin) {
+    // This should only be allowed for opaque origins with LoadDataWithBaseURL
+    // and file origins with allow_universal_access_from_file_urls.
+    CHECK(origin.opaque() || origin.scheme() == url::kFileScheme);
+    webview_origin_exemption_set_.insert(origin);
   }
 
-  bool IsOpaqueOriginForLoadDataWithBaseURL(const url::Origin& origin) {
-    CHECK(origin.opaque());
-    return base::Contains(load_data_with_base_url_origin_set_, origin);
+  bool HasOriginCheckExemptionForWebView(const url::Origin& origin) {
+    // This should only be allowed for opaque origins with LoadDataWithBaseURL
+    // and file origins with allow_universal_access_from_file_urls.
+    CHECK(origin.opaque() || origin.scheme() == url::kFileScheme);
+    return base::Contains(webview_origin_exemption_set_, origin);
   }
 
   void GrantPermissionForMidi() { can_send_midi_ = true; }
@@ -709,9 +713,11 @@
   // The set of files the child process is permitted to load.
   FileSet request_file_set_;
 
-  // The set of opaque origins loaded with LoadDataWithBaseURL in the child
-  // process, which are allowed to bypass some navigation checks.
-  OriginSet load_data_with_base_url_origin_set_;
+  // The set of origins in Android WebView and <webview> tags that are allowed
+  // to bypass some navigation checks. Limited to opaque origins loaded with
+  // LoadDataWithBaseURL and file origins loaded with
+  // allow_universal_access_from_file_urls.
+  OriginSet webview_origin_exemption_set_;
 
   int enabled_bindings_;
 
@@ -1215,7 +1221,7 @@
   state->second->RevokeReadRawCookies();
 }
 
-void ChildProcessSecurityPolicyImpl::GrantOpaqueOriginForLoadDataWithBaseURL(
+void ChildProcessSecurityPolicyImpl::GrantOriginCheckExemptionForWebView(
     int child_id,
     const url::Origin& origin) {
   base::AutoLock lock(lock_);
@@ -1225,10 +1231,10 @@
     return;
   }
 
-  state->GrantOpaqueOriginForLoadDataWithBaseURL(origin);
+  state->GrantOriginCheckExemptionForWebView(origin);
 }
 
-bool ChildProcessSecurityPolicyImpl::IsOpaqueOriginForLoadDataWithBaseURL(
+bool ChildProcessSecurityPolicyImpl::HasOriginCheckExemptionForWebView(
     int child_id,
     const url::Origin& origin) {
   base::AutoLock lock(lock_);
@@ -1238,7 +1244,7 @@
     return false;
   }
 
-  return state->IsOpaqueOriginForLoadDataWithBaseURL(origin);
+  return state->HasOriginCheckExemptionForWebView(origin);
 }
 
 bool ChildProcessSecurityPolicyImpl::CanRequestURL(
@@ -1644,23 +1650,43 @@
     int child_id,
     const IsolationContext& isolation_context,
     const UrlInfo& url_info) {
+  DCHECK(url_info.origin.has_value());
+  const url::Origin& origin = *url_info.origin;
   // First check whether the URL is allowed to commit, without considering the
   // origin. This involves scheme checks as well as CanAccessDataForOrigin.
   if (base::FeatureList::IsEnabled(
           features::kAdditionalNavigationCommitChecks) &&
       !CanCommitURL(child_id, url_info.url)) {
+    // WebView's allow_universal_access_from_file_urls setting allows file
+    // origins to access any other origin and bypass normal commit checks. When
+    // this mode is enabled, RenderFrameHostImpl::ValidateURLAndOrigin returns
+    // early before this function is called.
+    //
+    // However, there are also cases where WebView apps in the wild turn on this
+    // mode, load one file:// document, then turn it off again and call
+    // document.open on another file:// document, causing it to inherit a URL
+    // that is not permitted by CanCommitURL anymore. We exempt these cases from
+    // the CanCommitURL check specifically, by ignoring a failure if it occurs
+    // in a file:// origin within a process which previously had universal
+    // access. (This exemption could be done in ValidateURLAndOrigin alongside
+    // the universal access check, but in practice no apps in the wild seem to
+    // be failing any other types of validation, so doing it here is a narrower
+    // exemption.) See https://crbug.com/326250356.
+    bool exempt_due_to_webview_universal_access =
+        (origin.scheme() == url::kFileScheme) &&
+        HasOriginCheckExemptionForWebView(child_id, origin);
+
     // This enforcement is currently skipped on Android WebView due to crashes.
     // TODO(https://crbug.com/326250356): Diagnose and enable for Android
     // WebView as well.
-    if (GetContentClient()->browser()->ShouldEnforceNewCanCommitUrlChecks()) {
+    if (GetContentClient()->browser()->ShouldEnforceNewCanCommitUrlChecks() &&
+        !exempt_due_to_webview_universal_access) {
       return CanCommitStatus::CANNOT_COMMIT_URL;
     }
   }
 
   // Next check whether the origin resolved from the URL is allowed to commit.
-  DCHECK(url_info.origin.has_value());
-  const url::Origin url_origin =
-      url::Origin::Resolve(url_info.url, *url_info.origin);
+  const url::Origin url_origin = url::Origin::Resolve(url_info.url, origin);
   if (!CanAccessOrigin(child_id, url_origin, AccessType::kCanCommitNewOrigin)) {
     // Check for special cases, like blob:null/ and data: URLs, where the
     // origin does not contain information to match against the process lock,
@@ -1678,8 +1704,7 @@
   }
 
   // Finally check the origin on its own.
-  if (!CanAccessOrigin(child_id, *url_info.origin,
-                       AccessType::kCanCommitNewOrigin)) {
+  if (!CanAccessOrigin(child_id, origin, AccessType::kCanCommitNewOrigin)) {
     return CanCommitStatus::CANNOT_COMMIT_ORIGIN;
   }
 
@@ -1689,7 +1714,7 @@
   const auto url_tuple_or_precursor_tuple =
       url_origin.GetTupleOrPrecursorTupleIfOpaque();
   const auto origin_tuple_or_precursor_tuple =
-      url_info.origin->GetTupleOrPrecursorTupleIfOpaque();
+      origin.GetTupleOrPrecursorTupleIfOpaque();
 
   if (url_tuple_or_precursor_tuple.IsValid() &&
       origin_tuple_or_precursor_tuple.IsValid() &&
diff --git a/content/browser/child_process_security_policy_impl.h b/content/browser/child_process_security_policy_impl.h
index 52adba7e..115ffeb 100644
--- a/content/browser/child_process_security_policy_impl.h
+++ b/content/browser/child_process_security_policy_impl.h
@@ -428,22 +428,27 @@
   // Revoke read raw cookies permission.
   void RevokeReadRawCookies(int child_id);
 
-  // Opaque origins loaded with LoadDataWithBaseURL are allowed to bypass some
+  // Some APIs for Android WebView and <webview> tags allow bypassing some
   // security checks, such as which URLs are allowed to commit. This method
-  // grants that ability to any document from such an opaque origin, because
-  // those actions could be taken from about:blank frames that inherit the same
-  // origin.
+  // grants that ability to any document with an origin used with these APIs,
+  // because the exemption is needed for about:blank frames that inherit the
+  // same origin.
+  //
+  // For safety, this is limited to opaque origins used with LoadDataWithBaseURL
+  // in unlocked processes, as well as file origins used with
+  // allow_universal_access_from_file_urls.
   //
   // Note that LoadDataWithBaseURL can be used with non-opaque origins as well,
   // but in that case the bypass is only allowed for the document and not the
   // entire origin, to prevent other code in the origin from bypassing checks.
-  void GrantOpaqueOriginForLoadDataWithBaseURL(int child_id,
-                                               const url::Origin& origin);
+  void GrantOriginCheckExemptionForWebView(int child_id,
+                                           const url::Origin& origin);
 
-  // Returns whether the given opaque origin was loaded via LoadDataWithBaseURL,
-  // allowing its navigations to bypass certain URL and origin checks.
-  bool IsOpaqueOriginForLoadDataWithBaseURL(int child_id,
-                                            const url::Origin& origin);
+  // Returns whether the given opaque or file origin was granted an exemption
+  // due to Android WebView and <webview> APIs, allowing its documents to bypass
+  // certain URL and origin checks.
+  bool HasOriginCheckExemptionForWebView(int child_id,
+                                         const url::Origin& origin);
 
   // Explicit permissions checks for FileSystemURL specified files.
   bool CanReadFileSystemFile(int child_id,
diff --git a/content/browser/devtools/devtools_url_loader_interceptor.cc b/content/browser/devtools/devtools_url_loader_interceptor.cc
index f3a33d6..eba3889 100644
--- a/content/browser/devtools/devtools_url_loader_interceptor.cc
+++ b/content/browser/devtools/devtools_url_loader_interceptor.cc
@@ -1295,7 +1295,7 @@
   while (headers.EnumerateHeader(&iter, name, &cookie_line)) {
     std::unique_ptr<net::CanonicalCookie> cookie = net::CanonicalCookie::Create(
         create_loader_params_->request.url, cookie_line, now, server_time,
-        std::nullopt, /*block_truncated=*/true, net::CookieSourceType::kOther,
+        std::nullopt, net::CookieSourceType::kOther,
         /*status=*/nullptr);
     if (cookie)
       cookies.emplace_back(std::move(cookie));
diff --git a/content/browser/navigation_transitions/back_forward_transition_animation_manager_android.cc b/content/browser/navigation_transitions/back_forward_transition_animation_manager_android.cc
index 2da25e3..458d060e 100644
--- a/content/browser/navigation_transitions/back_forward_transition_animation_manager_android.cc
+++ b/content/browser/navigation_transitions/back_forward_transition_animation_manager_android.cc
@@ -133,7 +133,7 @@
 
 void BackForwardTransitionAnimationManagerAndroid::
     OnDidNavigatePrimaryMainFramePreCommit(
-        const NavigationRequest& navigation_request,
+        NavigationRequest* navigation_request,
         RenderFrameHostImpl* old_host,
         RenderFrameHostImpl* new_host) {
   if (animator_) {
diff --git a/content/browser/navigation_transitions/back_forward_transition_animation_manager_android.h b/content/browser/navigation_transitions/back_forward_transition_animation_manager_android.h
index 1a761fd..324cba7e 100644
--- a/content/browser/navigation_transitions/back_forward_transition_animation_manager_android.h
+++ b/content/browser/navigation_transitions/back_forward_transition_animation_manager_android.h
@@ -70,7 +70,7 @@
   // launch. Without RD we need to make sure no frames from the old document is
   // associated with the updated LocalSurfaceId (https://crbug.com/1445976).
   void OnDidNavigatePrimaryMainFramePreCommit(
-      const NavigationRequest& navigation_request,
+      NavigationRequest* navigation_request,
       RenderFrameHostImpl* old_host,
       RenderFrameHostImpl* new_host);
 
diff --git a/content/browser/navigation_transitions/back_forward_transition_animation_manager_android_browsertest.cc b/content/browser/navigation_transitions/back_forward_transition_animation_manager_android_browsertest.cc
index 754885f..85870df 100644
--- a/content/browser/navigation_transitions/back_forward_transition_animation_manager_android_browsertest.cc
+++ b/content/browser/navigation_transitions/back_forward_transition_animation_manager_android_browsertest.cc
@@ -2323,4 +2323,72 @@
     ::testing::ValuesIn(kGestureNavTypes),
     &DescribeGestureNavType);
 
+namespace {
+
+class BackForwardTransitionAnimationManagerWithRedirectBrowserTest
+    : public BackForwardTransitionAnimationManagerBrowserTest {
+ public:
+  BackForwardTransitionAnimationManagerWithRedirectBrowserTest() = default;
+  ~BackForwardTransitionAnimationManagerWithRedirectBrowserTest() override =
+      default;
+
+  void SetUpOnMainThread() override {
+    SetupCrossSiteRedirector(embedded_test_server());
+    BackForwardTransitionAnimationManagerBrowserTest::SetUpOnMainThread();
+  }
+};
+
+}  // namespace
+
+IN_PROC_BROWSER_TEST_P(
+    BackForwardTransitionAnimationManagerWithRedirectBrowserTest,
+    AbortedOnCrossOriginRedirect) {
+  DisableBackForwardCacheForTesting(
+      web_contents(),
+      BackForwardCache::DisableForTestingReason::TEST_REQUIRES_NO_CACHING);
+
+  std::vector<GestureAndScreenChanged> expected;
+  expected.push_back({.gesture = GestureType::kStart});
+  expected.push_back({.gesture = GestureType::k60ViewportWidth});
+  HistoryBackNavAndAssertAnimatedTransition(expected);
+
+  bool invoke_played = false;
+  GetAnimatorForTesting()->set_on_invoke_animation_displayed(
+      base::BindLambdaForTesting([&]() { invoke_played = true; }));
+  base::RunLoop destroyed;
+  GetAnimatorForTesting()->set_on_impl_destroyed(destroyed.QuitClosure());
+
+  std::string different_host("b.com");
+  GURL redirect = embedded_test_server()->GetURL(
+      "/cross-site/" + different_host + "/empty.html");
+  GURL expected_url =
+      embedded_test_server()->GetURL(different_host, "/empty.html");
+
+  // [red&, green*]
+  ASSERT_EQ(web_contents()->GetController().GetEntryCount(), 2);
+  web_contents()->GetController().GetEntryAtIndex(0)->SetURL(redirect);
+
+  TestNavigationManager redirect_nav(web_contents(), redirect);
+
+  GetAnimatorForTesting()->SetFinishedStateToDisplayingInvokeAnimation();
+  GetAnimationManager(web_contents())->OnGestureInvoked();
+
+  ASSERT_TRUE(redirect_nav.WaitForNavigationFinished());
+  destroyed.Run();
+  ASSERT_FALSE(invoke_played);
+
+  // [empty.html*, green&]
+  ASSERT_EQ(web_contents()->GetController().GetEntryCount(), 2);
+  ASSERT_EQ(web_contents()->GetController().GetEntryAtIndex(0)->GetURL(),
+            expected_url);
+  ASSERT_EQ(web_contents()->GetController().GetEntryAtIndex(1)->GetURL(),
+            GreenURL());
+}
+
+INSTANTIATE_TEST_SUITE_P(
+    All,
+    BackForwardTransitionAnimationManagerWithRedirectBrowserTest,
+    ::testing::ValuesIn(kGestureNavTypes),
+    &DescribeGestureNavType);
+
 }  // namespace content
diff --git a/content/browser/navigation_transitions/back_forward_transition_animator.cc b/content/browser/navigation_transitions/back_forward_transition_animator.cc
index 02971ac9..15b5e4b0 100644
--- a/content/browser/navigation_transitions/back_forward_transition_animator.cc
+++ b/content/browser/navigation_transitions/back_forward_transition_animator.cc
@@ -257,7 +257,7 @@
 }
 
 void BackForwardTransitionAnimator::OnDidNavigatePrimaryMainFramePreCommit(
-    const NavigationRequest& navigation_request,
+    NavigationRequest* navigation_request,
     RenderFrameHostImpl* old_host,
     RenderFrameHostImpl* new_host) {
   // Ignore all the subframe requests. Safe to do so as a start point because:
@@ -270,7 +270,7 @@
   //
   // Note: Also implicitly, all the subframes' DidFinishNavigation()s are
   // ignored.
-  CHECK(navigation_request.IsInPrimaryMainFrame());
+  CHECK(navigation_request->IsInPrimaryMainFrame());
 
   bool skip_all_animations_and_self_destroy = false;
 
@@ -289,25 +289,44 @@
       CHECK(primary_main_frame_navigation_request_id_of_gesture_nav_);
 
       if (navigation_state_ == NavigationState::kStarted) {
-        if (navigation_request.GetNavigationId() !=
+        if (navigation_request->GetNavigationId() !=
             primary_main_frame_navigation_request_id_of_gesture_nav_.value()) {
           // A previously pending navigation has committed since we started
           // tracking our gesture navigation. Ignore this committed navigation.
           return;
         }
+
+        // Before we display the crossfade animation to show the new page, we
+        // need to check if the new page matches the origin of the screenshot.
+        // We are not allowed to cross-fade from a screenshot of A.com to a page
+        // of B.com.
+        bool land_on_error_page = navigation_request->DidEncounterError();
+        const auto& original_url = navigation_request->GetOriginalRequestURL();
+        std::optional<url::Origin> committed_origin =
+            navigation_request->GetOriginToCommit();
+        CHECK(committed_origin.has_value());
+        // NOTE: Converting from a URL to an Origin isn't always safe (see
+        // https://chromium.googlesource.com/chromium/src/+/main/docs/security/origin-vs-url.md#risky).
+        // It's okay to convert here because the edge cases either won't
+        // redirect (e.g., about:blank) or won't affect the animation decision
+        // (e.g., a sandboxed frame).
+        bool same_origin = url::Origin::Create(original_url)
+                               .IsSameOriginWith(*committed_origin);
+        if (!land_on_error_page && !same_origin) {
+          skip_all_animations_and_self_destroy = true;
+          break;
+        }
+
         // Our gesture navigation has committed.
         navigation_state_ = NavigationState::kCommitted;
         physics_model_.OnNavigationFinished(/*navigation_committed=*/true);
-        if (navigation_request.DidEncounterError()) {
+        if (land_on_error_page) {
           // TODO(crbug.com/41482489): Implement a different UX if we
           // decide not show the animation at all (i.e. abort animation early
           // when we receive the response header).
         }
         CloneOldSurfaceLayerAndRegisterNewFrameActivationObserver(old_host,
                                                                   new_host);
-        // TODO(crbug.com/41492130): Handle the cross-origin server
-        // redirect. We cannot show a cross-origin fullscreen overlay of a.com
-        // if a.com redirect the user to b.com.
       } else {
         // Our navigation has already committed while a second navigation
         // commits. This can be a client redirect: A.com -> B.com and B.com's
diff --git a/content/browser/navigation_transitions/back_forward_transition_animator.h b/content/browser/navigation_transitions/back_forward_transition_animator.h
index 48582ce..bbf2ccbf 100644
--- a/content/browser/navigation_transitions/back_forward_transition_animator.h
+++ b/content/browser/navigation_transitions/back_forward_transition_animator.h
@@ -71,7 +71,7 @@
   void OnGestureCancelled();
   void OnGestureInvoked();
   void OnDidNavigatePrimaryMainFramePreCommit(
-      const NavigationRequest& navigation_request,
+      NavigationRequest* navigation_request,
       RenderFrameHostImpl* old_host,
       RenderFrameHostImpl* new_host);
   void OnNavigationCancelledBeforeStart(NavigationHandle* navigation_handle);
diff --git a/content/browser/renderer_host/cookie_browsertest.cc b/content/browser/renderer_host/cookie_browsertest.cc
index d1b4ffc..56d75c2 100644
--- a/content/browser/renderer_host/cookie_browsertest.cc
+++ b/content/browser/renderer_host/cookie_browsertest.cc
@@ -10,7 +10,6 @@
 #include "base/functional/bind.h"
 #include "base/functional/callback_helpers.h"
 #include "base/test/bind.h"
-#include "base/test/metrics/histogram_tester.h"
 #include "base/test/scoped_feature_list.h"
 #include "content/browser/bad_message.h"
 #include "content/browser/renderer_host/frame_tree.h"
@@ -280,37 +279,9 @@
   EXPECT_EQ("none=1", GetCookieFromJS(b_iframe));
 }
 
-class TruncatedCookieBrowserTestP : public CookieBrowserTest,
-                                    public testing::WithParamInterface<bool> {
- public:
-  TruncatedCookieBrowserTestP() {
-    truncated_cookies_blocked_ = GetParam();
-
-    if (TruncatedCookiesBlocked()) {
-      feature_list_.InitAndEnableFeature(net::features::kBlockTruncatedCookies);
-    } else {
-      feature_list_.InitAndDisableFeature(
-          net::features::kBlockTruncatedCookies);
-    }
-  }
-
-  bool TruncatedCookiesBlocked() { return truncated_cookies_blocked_; }
-
- private:
-  base::test::ScopedFeatureList feature_list_;
-  bool truncated_cookies_blocked_;
-};
-
-INSTANTIATE_TEST_SUITE_P(TruncatedCookieBrowserTests,
-                         TruncatedCookieBrowserTestP,
-                         testing::Values(true, false));
-
-IN_PROC_BROWSER_TEST_P(TruncatedCookieBrowserTestP,
-                       CookieTruncatingCharFromJavascript) {
+IN_PROC_BROWSER_TEST_F(CookieBrowserTest, CookieTruncatingCharFromJavascript) {
   using std::string_literals::operator""s;
 
-  base::HistogramTester histogram;
-
   ASSERT_TRUE(embedded_test_server()->Start());
 
   ASSERT_TRUE(
@@ -343,31 +314,7 @@
     SetCookieFromJS(frame, cookie_string);
   }
 
-  int expected_histogram_hit_count;
-  if (TruncatedCookiesBlocked()) {
-    EXPECT_EQ("", GetCookieFromJS(frame));
-    expected_histogram_hit_count = 0;
-  } else {
-    // Note: the last three test cases above are detectable as truncations
-    // (since the first case results in a failure that occurs before the
-    // histogram is recorded), so check for that below.
-    EXPECT_EQ("foo2=bar; foo3=ba; foo4=bar", GetCookieFromJS(frame));
-    expected_histogram_hit_count = 3;
-  }
-
-  FetchHistogramsFromChildProcesses();
-  histogram.ExpectBucketCount(
-      "Cookie.TruncatingCharacterInCookieString",
-      net::TruncatingCharacterInCookieStringType::kTruncatingCharNull,
-      expected_histogram_hit_count);
-  histogram.ExpectBucketCount(
-      "Cookie.TruncatingCharacterInCookieString",
-      net::TruncatingCharacterInCookieStringType::kTruncatingCharNewline,
-      expected_histogram_hit_count);
-  histogram.ExpectBucketCount(
-      "Cookie.TruncatingCharacterInCookieString",
-      net::TruncatingCharacterInCookieStringType::kTruncatingCharLineFeed,
-      expected_histogram_hit_count);
+  EXPECT_EQ("", GetCookieFromJS(frame));
 }
 
 IN_PROC_BROWSER_TEST_F(CookieBrowserTest, CookieTruncatingCharFromHeaders) {
@@ -385,7 +332,6 @@
   ASSERT_TRUE(embedded_test_server()->Start());
 
   GURL http_url = embedded_test_server()->GetURL("/");
-  base::HistogramTester histogram;
 
   // Test scenarios where a control char may appear at start, middle and end of
   // a cookie line. Control char array with NULL (\x0), CR (\xD), and LF (xA)
@@ -412,17 +358,6 @@
   // Test if there are multiple control characters that terminate.
   cookie_string = "foo=bar;\xA\xDhttponly"s;
   EXPECT_TRUE(NavigateToURL(shell(), http_url));
-
-  FetchHistogramsFromChildProcesses();
-  histogram.ExpectBucketCount(
-      "Cookie.TruncatingCharacterInCookieString",
-      net::TruncatingCharacterInCookieStringType::kTruncatingCharNull, 0);
-  histogram.ExpectBucketCount(
-      "Cookie.TruncatingCharacterInCookieString",
-      net::TruncatingCharacterInCookieStringType::kTruncatingCharNewline, 0);
-  histogram.ExpectBucketCount(
-      "Cookie.TruncatingCharacterInCookieString",
-      net::TruncatingCharacterInCookieStringType::kTruncatingCharLineFeed, 0);
 }
 
 class RestrictedCookieManagerInterceptor
diff --git a/content/browser/renderer_host/navigation_controller_impl.cc b/content/browser/renderer_host/navigation_controller_impl.cc
index b49efca..64664994 100644
--- a/content/browser/renderer_host/navigation_controller_impl.cc
+++ b/content/browser/renderer_host/navigation_controller_impl.cc
@@ -1423,8 +1423,16 @@
     // reaching here.
     CHECK(!is_same_document_navigation);
 
-    // TODO(crbug.com/340606786): Add a check to ensure `pending_entry_` isn't
-    // pointing to `entry_replaced_by_post_commit_error_`.
+    if (pending_entry_) {
+      // Before `entry_replaced_by_post_commit_error_` is moved back, make sure
+      // `pending_entry_` isn't pointing to the last committed entry.
+      // Instead, all reload approaches (e.g., in `Reload` and
+      // `LoadIfNecessary`) should attempt to load the
+      // `entry_replaced_by_post_commit_error_` instead of the post commit error
+      // entry itself.
+      CHECK_NE(pending_entry_, entries_[last_committed_entry_index_].get())
+          << "Incorrectly reloading the post commit error page entry.";
+    }
 
     // Any commit while a post-commit error page is showing should put the
     // original entry back, replacing the error page's entry.  This includes
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index 325edea..2d28bd72 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -13379,11 +13379,17 @@
     bool is_same_document_navigation,
     NavigationRequest* navigation_request,
     std::string origin_calculation_debug_info) {
-  // file: URLs can be allowed to access any other origin, based on settings.
+  // WebView's allow_universal_access_from_file_urls setting allows file origins
+  // to access any other origin and bypass normal commit checks. If new
+  // documents in the same process and origin may also bypass these checks after
+  // the setting is disabled (e.g., due to document.open), they are allowed a
+  // narrower exemption in ChildProcessSecurityPolicyImpl::CanCommitOriginAndUrl
+  // due to compatibility requirements for existing apps.
   if (origin.scheme() == url::kFileScheme) {
     auto prefs = GetOrCreateWebPreferences();
-    if (prefs.allow_universal_access_from_file_urls)
+    if (prefs.allow_universal_access_from_file_urls) {
       return true;
+    }
   }
 
   // If the --disable-web-security flag is specified, all bets are off and the
@@ -13418,7 +13424,7 @@
        renderer_url_info_.was_loaded_from_load_data_with_base_url) ||
       (origin.opaque() &&
        ChildProcessSecurityPolicyImpl::GetInstance()
-           ->IsOpaqueOriginForLoadDataWithBaseURL(process->GetID(), origin))) {
+           ->HasOriginCheckExemptionForWebView(process->GetID(), origin))) {
     // Allow bypass if the process isn't locked. Otherwise run normal checks.
     if (!process->GetProcessLock().is_locked_to_site())
       return true;
@@ -13672,14 +13678,25 @@
   // CanCommitURL checks (unlike opaque origins for pseudoschemes, as seen in
   // https://crbug.com/326250356).
   //
-  // TODO(crbug.com/40092527): Move this to UpdatePermissionsForNavigation
+  // A similar exemption is granted for file origins when WebView's
+  // allow_universal_access_from_file_urls setting is enabled, in case that
+  // setting is later disabled and then a previously-exempted URL is inherited
+  // by a new same-origin document via document.open.
+  //
+  // TODO(crbug.com/40092527): Move these to UpdatePermissionsForNavigation
   // once origin can be reliably computed by NavigationRequest at commit time.
   if (navigation_request && navigation_request->IsLoadDataWithBaseURL() &&
       params->origin.opaque() &&
       !GetProcess()->GetProcessLock().is_locked_to_site()) {
     ChildProcessSecurityPolicyImpl::GetInstance()
-        ->GrantOpaqueOriginForLoadDataWithBaseURL(GetProcess()->GetID(),
-                                                  params->origin);
+        ->GrantOriginCheckExemptionForWebView(GetProcess()->GetID(),
+                                              params->origin);
+  }
+  if (GetOrCreateWebPreferences().allow_universal_access_from_file_urls &&
+      params->origin.scheme() == url::kFileScheme) {
+    ChildProcessSecurityPolicyImpl::GetInstance()
+        ->GrantOriginCheckExemptionForWebView(GetProcess()->GetID(),
+                                              params->origin);
   }
 
   if (!ValidateDidCommitParams(navigation_request.get(), params.get(),
diff --git a/content/browser/renderer_host/render_frame_host_manager_browsertest.cc b/content/browser/renderer_host/render_frame_host_manager_browsertest.cc
index fe53618..25b745e 100644
--- a/content/browser/renderer_host/render_frame_host_manager_browsertest.cc
+++ b/content/browser/renderer_host/render_frame_host_manager_browsertest.cc
@@ -3564,6 +3564,47 @@
       ExecJs(root, JsReplace("history.pushState({}, '', $1);", file_url)));
   ASSERT_TRUE(web_contents->GetPrimaryMainFrame()->IsRenderFrameLive());
   EXPECT_EQ(4, web_contents->GetController().GetEntryCount());
+
+  // Illegal schemes would not normally be allowed to commit by CanCommitURL,
+  // but they are granted an exception if allow_universal_access_from_file_urls
+  // is in use.
+  GURL illegal_url("google:com");
+  EXPECT_TRUE(ExecJs(
+      root, JsReplace("history.replaceState({}, '', $1);", illegal_url)));
+  ASSERT_TRUE(web_contents->GetPrimaryMainFrame()->IsRenderFrameLive());
+  EXPECT_EQ(4, web_contents->GetController().GetEntryCount());
+
+  // Illegal schemes should also work for document.open on same-origin frames,
+  // where the initiator's URL is inherited (in the renderer process).
+  std::string create_frame_and_open_script =
+      "var new_iframe = document.createElement('iframe');"
+      "document.documentElement.appendChild(new_iframe);"
+      "new_iframe.contentDocument.open();";
+  EXPECT_TRUE(ExecJs(shell(), create_frame_and_open_script));
+  EXPECT_EQ(
+      illegal_url,
+      root->child_at(0)->current_frame_host()->last_document_url_in_renderer());
+  // Ensure the renderer process has not crashed.
+  ASSERT_TRUE(ExecJs(shell(), "true"));
+  ASSERT_TRUE(root->child_at(0)->current_frame_host()->IsRenderFrameLive());
+
+  // Now disable universal access, while still allowing file URLs to access each
+  // other. This generally turns off the exemption from commit-time security
+  // checks, while still allowing document.open to work in file:// origins.
+  prefs.allow_universal_access_from_file_urls = false;
+  prefs.allow_file_access_from_file_urls = true;
+  web_contents->SetWebPreferences(prefs);
+
+  // Calling document.open on another iframe should remember that the process
+  // already had an exemption for file:// origins and continue to work.
+  // See https://crbug.com/326250356#comment26.
+  EXPECT_TRUE(ExecJs(shell(), create_frame_and_open_script));
+  EXPECT_EQ(
+      illegal_url,
+      root->child_at(1)->current_frame_host()->last_document_url_in_renderer());
+  // Ensure the renderer process has not crashed.
+  ASSERT_TRUE(ExecJs(shell(), "true"));
+  ASSERT_TRUE(root->child_at(1)->current_frame_host()->IsRenderFrameLive());
 }
 
 // Ensure that navigating back from a sad tab to an existing process works
diff --git a/content/browser/storage_partition_impl_unittest.cc b/content/browser/storage_partition_impl_unittest.cc
index 9615cd2..93b6121 100644
--- a/content/browser/storage_partition_impl_unittest.cc
+++ b/content/browser/storage_partition_impl_unittest.cc
@@ -154,8 +154,7 @@
             origin.GetURL(), "A=1", base::Time::Now(),
             /*server_time=*/std::nullopt,
             /*cookie_partition_key=*/std::nullopt,
-            /*block_truncated=*/true, net::CookieSourceType::kUnknown,
-            &status));
+            net::CookieSourceType::kUnknown, &status));
     base::RunLoop loop;
     storage_partition_->GetCookieManagerForBrowserProcess()->SetCanonicalCookie(
         *cc, origin.GetURL(), net::CookieOptions::MakeAllInclusive(),
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 3ac02a3..5165187a6 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -6726,7 +6726,7 @@
           GetBackForwardTransitionAnimationManager());
   if (animation_manager) {
     animation_manager->OnDidNavigatePrimaryMainFramePreCommit(
-        *request, frame_tree_node->render_manager()->current_frame_host(),
+        request, frame_tree_node->render_manager()->current_frame_host(),
         request->GetRenderFrameHost());
   }
 #endif
diff --git a/docs/website b/docs/website
index 610abd2..2b7cfaa 160000
--- a/docs/website
+++ b/docs/website
@@ -1 +1 @@
-Subproject commit 610abd294843897ceb5cbe4d26e33f11330021ad
+Subproject commit 2b7cfaa61f6bba49ecef7b8b050188c6a2103b66
diff --git a/extensions/browser/guest_view/app_view/app_view_guest.cc b/extensions/browser/guest_view/app_view/app_view_guest.cc
index 736675f..27e5c463 100644
--- a/extensions/browser/guest_view/app_view/app_view_guest.cc
+++ b/extensions/browser/guest_view/app_view/app_view_guest.cc
@@ -273,7 +273,9 @@
       content::SiteInstance::CreateForURL(browser_context(),
                                           guest_extension->url()));
   params.guest_delegate = this;
-  std::move(callback).Run(std::move(owned_this), WebContents::Create(params));
+  auto web_contents = WebContents::Create(params);
+  app_delegate_->InitWebContents(web_contents.get());
+  std::move(callback).Run(std::move(owned_this), std::move(web_contents));
 }
 
 void AppViewGuest::LaunchAppAndFireEvent(
diff --git a/gin/gin_features.cc b/gin/gin_features.cc
index ca803124..7f77053e 100644
--- a/gin/gin_features.cc
+++ b/gin/gin_features.cc
@@ -18,6 +18,11 @@
              "V8CompactWithStack",
              base::FEATURE_ENABLED_BY_DEFAULT);
 
+// Decommit (rather than discard) pooled pages.
+BASE_FEATURE(kV8DecommitPooledPages,
+             "DecommitPooledPages",
+             base::FEATURE_DISABLED_BY_DEFAULT);
+
 // Enables optimization of JavaScript in V8.
 BASE_FEATURE(kV8OptimizeJavascript,
              "V8OptimizeJavascript",
diff --git a/gin/gin_features.h b/gin/gin_features.h
index dd05981..964b0de 100644
--- a/gin/gin_features.h
+++ b/gin/gin_features.h
@@ -22,6 +22,7 @@
 GIN_EXPORT BASE_DECLARE_FEATURE(kV8ConcurrentSparkplugHighPriorityThreads);
 GIN_EXPORT BASE_DECLARE_FEATURE(kV8DelayMemoryReducer);
 GIN_EXPORT BASE_DECLARE_FEATURE(kV8ConcurrentMarkingHighPriorityThreads);
+GIN_EXPORT BASE_DECLARE_FEATURE(kV8DecommitPooledPages);
 GIN_EXPORT BASE_DECLARE_FEATURE(kV8ExperimentalRegexpEngine);
 GIN_EXPORT extern const base::FeatureParam<int> kV8FlushBytecodeOldAge;
 GIN_EXPORT BASE_DECLARE_FEATURE(kV8FlushBaselineCode);
diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc
index 7f517a42..4f50339 100644
--- a/gin/v8_initializer.cc
+++ b/gin/v8_initializer.cc
@@ -322,6 +322,9 @@
   SetV8FlagsIfOverridden(features::kV8SingleThreadedGCInBackground,
                          "--single-threaded-gc-in-background",
                          "--no-single-threaded-gc-in-background");
+  SetV8FlagsIfOverridden(features::kV8DecommitPooledPages,
+                         "--decommit-pooled-pages",
+                         "--no-decommit-pooled-pages");
 
   if (base::FeatureList::IsEnabled(features::kV8ConcurrentSparkplug)) {
     if (int max_threads = features::kV8ConcurrentSparkplugMaxThreads.Get()) {
diff --git a/gpu/command_buffer/common/mailbox.cc b/gpu/command_buffer/common/mailbox.cc
index d0263e8..7e45c62 100644
--- a/gpu/command_buffer/common/mailbox.cc
+++ b/gpu/command_buffer/common/mailbox.cc
@@ -15,25 +15,23 @@
 namespace gpu {
 namespace {
 
-// The last byte of the mailbox's name stores the SharedImage flag. This avoids
-// conflicts with Verify logic, which uses the first byte.
-constexpr size_t kSharedImageFlagIndex = GL_MAILBOX_SIZE_CHROMIUM - 1;
+// The last byte of the mailbox's name stores a bit that ensures that the
+// mailbox doesn't end up being generated as zero. This avoids conflicts with
+// Verify logic, which uses the first byte.
+constexpr size_t kLiveMailboxIndex = GL_MAILBOX_SIZE_CHROMIUM - 1;
 
-// Use the lowest bit for the SharedImage flag (any bit would work).
-constexpr int8_t kSharedImageFlag = 0x1;
+// Use the lowest bit for the flag marking the mailbox as live (any bit would
+// work).
+constexpr int8_t kLiveMailboxFlag = 0x1;
 
-void MarkMailboxAsSharedImage(bool is_shared_image, int8_t* name) {
-  if (is_shared_image)
-    name[kSharedImageFlagIndex] |= kSharedImageFlag;
-  else
-    name[kSharedImageFlagIndex] &= ~kSharedImageFlag;
-}
-
-Mailbox GenerateMailbox(bool is_shared_image) {
+Mailbox GenerateMailbox() {
   Mailbox result;
   // Generates cryptographically-secure bytes.
   base::RandBytes(base::as_writable_byte_span(result.name));
-  MarkMailboxAsSharedImage(is_shared_image, result.name);
+
+  // Ensure that the mailbox is non-zero.
+  result.name[kLiveMailboxIndex] |= kLiveMailboxFlag;
+
 #if !defined(NDEBUG)
   int8_t value = 1;
   for (size_t i = 1; i < sizeof(result.name); ++i)
@@ -67,7 +65,7 @@
 }
 
 Mailbox Mailbox::GenerateForSharedImage() {
-  return GenerateMailbox(true /* is_shared_image */);
+  return GenerateMailbox();
 }
 
 bool Mailbox::Verify() const {
diff --git a/gpu/command_buffer/common/mailbox.h b/gpu/command_buffer/common/mailbox.h
index 9d37b02..2edd691 100644
--- a/gpu/command_buffer/common/mailbox.h
+++ b/gpu/command_buffer/common/mailbox.h
@@ -68,4 +68,16 @@
 
 }  // namespace gpu
 
+template <>
+struct std::hash<gpu::Mailbox> {
+  std::size_t operator()(const gpu::Mailbox& m) const noexcept {
+    // As the name is cryptographically random bytes, the first few bytes
+    // should be more than sufficient as a hash.
+    return static_cast<size_t>(m.name[0]) |
+           (static_cast<size_t>(m.name[1]) << 8) |
+           (static_cast<size_t>(m.name[2]) << 16) |
+           (static_cast<size_t>(m.name[3]) << 24);
+  }
+};
+
 #endif  // GPU_COMMAND_BUFFER_COMMON_MAILBOX_H_
diff --git a/gpu/command_buffer/service/shared_image/shared_image_format_service_utils.cc b/gpu/command_buffer/service/shared_image/shared_image_format_service_utils.cc
index 89fa3e6..371dfe92 100644
--- a/gpu/command_buffer/service/shared_image/shared_image_format_service_utils.cc
+++ b/gpu/command_buffer/service/shared_image/shared_image_format_service_utils.cc
@@ -497,12 +497,6 @@
                                             int plane_index) {
   // The multi plane formats create a separate image per plane and return the
   // single planar equivalents.
-  // TODO(crbug.com/40269645): The above reasoning does not hold unilaterally
-  // on Android, and this function will need more information to determine the
-  // correct operation to take on that platform.
-#if BUILDFLAG(IS_ANDROID)
-  CHECK(format.is_single_plane() && !format.IsLegacyMultiplanar());
-#endif
   if (format.is_multi_plane()) {
     int num_channels = format.NumChannelsInPlane(plane_index);
     switch (format.channel_format()) {
diff --git a/gpu/command_buffer/service/shared_image/shared_image_format_service_utils.h b/gpu/command_buffer/service/shared_image/shared_image_format_service_utils.h
index 8247d78..df9735df 100644
--- a/gpu/command_buffer/service/shared_image/shared_image_format_service_utils.h
+++ b/gpu/command_buffer/service/shared_image/shared_image_format_service_utils.h
@@ -137,6 +137,8 @@
 // Returns wgpu::TextureFormat format for given `format` and `plane_index`. Note
 // that this returns a single plane Dawn format i.e the TextureView format and
 // not a multi-planar format.
+// NOTE: This should not be used on Android when using YCbCr sampling, as in
+// that case wgpu::TextureFormat::EXTERNAL must be used.
 GPU_GLES2_EXPORT wgpu::TextureFormat ToDawnTextureViewFormat(
     viz::SharedImageFormat format,
     int plane_index);
diff --git a/gpu/command_buffer/service/shared_image/video_image_reader_image_backing.cc b/gpu/command_buffer/service/shared_image/video_image_reader_image_backing.cc
index 9827302..c040fbd 100644
--- a/gpu/command_buffer/service/shared_image/video_image_reader_image_backing.cc
+++ b/gpu/command_buffer/service/shared_image/video_image_reader_image_backing.cc
@@ -424,14 +424,26 @@
     desc.nextInChain = &stm_ahardwarebuffer_desc;
     shared_texture_memory_ = device.ImportSharedTextureMemory(&desc);
 
-    // Create the Dawn texture and wrap it in a Skia texture.
+    // Create the Dawn texture.
     texture_ = shared_texture_memory_.CreateTexture(&texture_descriptor);
     if (!shared_texture_memory_.BeginAccess(texture_, &begin_access_desc)) {
       LOG(ERROR) << "Failed to begin access for texture";
     }
-    // TODO(crbug.com/41488897): Obtain the needed YCbCr info and pass it in a
-    // DawnTextureInfo when creating the BackendTexture.
-    return {skgpu::graphite::BackendTexture(texture_.Get())};
+
+    // Obtain the YCbCr info from the SharedTextureMemory.
+    wgpu::SharedTextureMemoryProperties properties;
+    wgpu::SharedTextureMemoryAHardwareBufferProperties ahb_properties = {};
+    properties.nextInChain = &ahb_properties;
+    shared_texture_memory_.GetProperties(&properties);
+
+    // Wrap the Dawn texture in a Skia texture, passing the YCbCr info.
+    skgpu::graphite::DawnTextureInfo dawn_texture_info(
+        /*sampleCount=*/1, skgpu::Mipmapped::kNo, webgpu_format, webgpu_format,
+        texture_descriptor.usage, wgpu::TextureAspect::All, /*slice=*/0,
+        ahb_properties.yCbCrInfo);
+    return {skgpu::graphite::BackendTexture(
+        SkISize::Make(ahb_desc.width, ahb_desc.height), dawn_texture_info,
+        texture_.Get())};
   }
 
   void EndReadAccess() override {
diff --git a/gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc b/gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc
index d2b80b1..caab7dce 100644
--- a/gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc
+++ b/gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc
@@ -231,6 +231,14 @@
             plane_size.width(), plane_size.height(), GetSkColorType(plane),
             fallback_color, mipmap, is_renderable, is_protected, nullptr,
             nullptr, GetLabel(debug_label));
+
+    // Call above has write operation to clear the texture, so it requires the
+    // submit before texture can be accessed on the different thread.
+    if (is_thread_safe()) {
+      auto* gr_context = context_state_->gr_context();
+      gr_context->submit();
+    }
+
 #else
     texture.backend_texture =
         context_state_->gr_context()->createBackendTexture(
@@ -370,41 +378,55 @@
     int final_msaa_count,
     const SkSurfaceProps& surface_props,
     scoped_refptr<SharedContextState> context_state) {
-  // This method should only be called on the same thread on which this
-  // backing is created on. Hence adding a dcheck on context_state to ensure
-  // this.
-  DCHECK_EQ(context_state_, context_state);
-  if (context_state_->context_lost()) {
+  if (context_state->context_lost()) {
     return {};
   }
-  DCHECK(context_state_->IsCurrent(nullptr));
+  DCHECK(context_state->IsCurrent(nullptr));
 
   std::vector<sk_sp<SkSurface>> surfaces;
   surfaces.reserve(textures_.size());
-  for (int plane = 0; plane < format().NumberOfPlanes(); ++plane) {
-    auto& texture = textures_[plane];
-    // Note that we are using |promise_texture| as a key to the cache below
-    // since it is safe to do so. |promise_texture| is not destroyed until we
-    // remove the entry from the cache.
-    DCHECK(texture.promise_texture);
-    auto surface =
-        context_state_->GetCachedSkSurface(texture.promise_texture.get());
-    if (!surface || final_msaa_count != surface_msaa_count_ ||
-        surface_props != surface->props()) {
-      surface = SkSurfaces::WrapBackendTexture(
-          context_state_->gr_context(), texture.backend_texture,
+
+  if (context_state == context_state_) {
+    for (int plane = 0; plane < format().NumberOfPlanes(); ++plane) {
+      auto& texture = textures_[plane];
+      // Note that we are using |promise_texture| as a key to the cache below
+      // since it is safe to do so. |promise_texture| is not destroyed until we
+      // remove the entry from the cache.
+      DCHECK(texture.promise_texture);
+      auto surface =
+          context_state_->GetCachedSkSurface(texture.promise_texture.get());
+      if (!surface || final_msaa_count != surface_msaa_count_ ||
+          surface_props != surface->props()) {
+        surface = SkSurfaces::WrapBackendTexture(
+            context_state_->gr_context(), texture.backend_texture,
+            surface_origin(), final_msaa_count, GetSkColorType(plane),
+            color_space().ToSkColorSpace(), &surface_props);
+        if (!surface) {
+          LOG(ERROR) << "MakeFromBackendTexture() failed.";
+          context_state_->EraseCachedSkSurface(texture.promise_texture.get());
+          return {};
+        }
+        context_state_->CacheSkSurface(texture.promise_texture.get(), surface);
+      }
+      surfaces.push_back(std::move(surface));
+    }
+    surface_msaa_count_ = final_msaa_count;
+  } else {
+    // If we're are going to use surface on a SharedContextState that is
+    // different from the one we used to create textures, we can't cache
+    // SkSurfaces, so just create them always.
+    for (int plane = 0; plane < format().NumberOfPlanes(); ++plane) {
+      auto surface = SkSurfaces::WrapBackendTexture(
+          context_state->gr_context(), textures_[plane].backend_texture,
           surface_origin(), final_msaa_count, GetSkColorType(plane),
           color_space().ToSkColorSpace(), &surface_props);
       if (!surface) {
         LOG(ERROR) << "MakeFromBackendTexture() failed.";
-        context_state_->EraseCachedSkSurface(texture.promise_texture.get());
         return {};
       }
-      context_state_->CacheSkSurface(texture.promise_texture.get(), surface);
+      surfaces.push_back(std::move(surface));
     }
-    surfaces.push_back(std::move(surface));
   }
-  surface_msaa_count_ = final_msaa_count;
   return surfaces;
 }
 
diff --git a/gpu/config/gpu_finch_features.h b/gpu/config/gpu_finch_features.h
index d3cb942..e7fca776 100644
--- a/gpu/config/gpu_finch_features.h
+++ b/gpu/config/gpu_finch_features.h
@@ -41,10 +41,6 @@
 
 GPU_EXPORT BASE_DECLARE_FEATURE(kCanvasOopWithoutGpuTileRaster);
 
-#if BUILDFLAG(IS_OZONE)
-GPU_EXPORT BASE_DECLARE_FEATURE(kOzoneFrontBufferUsage);
-#endif
-
 GPU_EXPORT BASE_DECLARE_FEATURE(kEnableMSAAOnNewIntelGPUs);
 
 GPU_EXPORT BASE_DECLARE_FEATURE(kCanvasContextLostInBackground);
diff --git a/infra/config/generated/luci/cr-buildbucket.cfg b/infra/config/generated/luci/cr-buildbucket.cfg
index 10a6cec..26463f9 100644
--- a/infra/config/generated/luci/cr-buildbucket.cfg
+++ b/infra/config/generated/luci/cr-buildbucket.cfg
@@ -64774,14 +64774,15 @@
       }
       build_numbers: YES
       service_account: "chromium-cipd-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -64858,14 +64859,15 @@
       }
       build_numbers: YES
       service_account: "chromium-cipd-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -64943,14 +64945,15 @@
       }
       build_numbers: YES
       service_account: "chromium-cipd-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65039,14 +65042,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65134,14 +65138,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65229,14 +65234,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65324,14 +65330,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65420,14 +65427,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65515,14 +65523,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65610,14 +65619,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65706,14 +65716,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65802,14 +65813,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -65987,14 +65999,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66082,14 +66095,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66177,14 +66191,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66272,9 +66287,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -66292,6 +66304,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66379,14 +66395,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66474,14 +66491,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66569,14 +66587,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66685,14 +66704,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66779,14 +66799,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66874,14 +66895,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -66961,14 +66983,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67055,14 +67078,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67151,14 +67175,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67246,14 +67271,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67342,14 +67368,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67438,14 +67465,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67534,14 +67562,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67630,14 +67659,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67726,14 +67756,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67822,14 +67853,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -67918,14 +67950,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68014,14 +68047,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68110,14 +68144,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68206,14 +68241,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68302,14 +68338,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68398,14 +68435,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68494,14 +68532,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68590,14 +68629,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68686,14 +68726,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68783,14 +68824,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68880,14 +68922,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -68976,14 +69019,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69072,14 +69116,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69168,14 +69213,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69265,14 +69311,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69362,14 +69409,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69458,14 +69506,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69554,14 +69603,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69650,14 +69700,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69746,14 +69797,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69842,14 +69894,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -69936,14 +69989,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70031,14 +70085,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70125,14 +70180,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70220,14 +70276,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70318,14 +70375,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70414,14 +70472,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70508,14 +70567,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70603,14 +70663,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70698,14 +70759,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70794,14 +70856,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70889,14 +70952,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -70984,14 +71048,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71079,14 +71144,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71174,14 +71240,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71269,14 +71336,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71364,14 +71432,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71459,14 +71528,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71554,14 +71624,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71649,14 +71720,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71744,14 +71816,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71839,14 +71912,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -71935,14 +72009,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72030,14 +72105,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72125,14 +72201,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72220,9 +72297,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 100
@@ -72232,6 +72306,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72319,9 +72397,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -72335,6 +72410,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72423,14 +72502,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72519,9 +72599,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -72535,6 +72612,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72623,14 +72704,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72719,14 +72801,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72814,14 +72897,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -72909,9 +72993,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 100
@@ -72921,6 +73002,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73009,14 +73094,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73105,14 +73191,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73200,9 +73287,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 50
@@ -73212,6 +73296,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73300,14 +73388,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73395,14 +73484,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73478,14 +73568,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73573,14 +73664,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73668,14 +73760,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73764,14 +73857,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73859,14 +73953,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -73954,14 +74049,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74050,14 +74146,15 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74146,14 +74243,15 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74247,14 +74345,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74348,14 +74447,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74444,14 +74544,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74539,9 +74640,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 100
@@ -74551,6 +74649,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74638,14 +74740,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74733,14 +74836,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74829,14 +74933,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -74925,14 +75030,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75020,14 +75126,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75109,14 +75216,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75202,14 +75310,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75297,14 +75406,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75392,14 +75502,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75487,14 +75598,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75582,14 +75694,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75677,14 +75790,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75772,14 +75886,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75867,14 +75982,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -75961,14 +76077,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76054,14 +76171,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76147,14 +76265,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76240,14 +76359,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76334,14 +76454,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76429,14 +76550,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76524,14 +76646,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76619,14 +76742,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76714,14 +76838,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76809,14 +76934,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76904,14 +77030,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -76999,14 +77126,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -77093,14 +77221,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -77188,14 +77317,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -77283,14 +77413,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -77378,14 +77509,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -77523,14 +77655,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -77619,14 +77752,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -77728,14 +77862,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -77814,14 +77949,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -77908,14 +78044,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78006,14 +78143,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78100,14 +78238,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78195,14 +78334,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78291,14 +78431,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78386,14 +78527,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78483,14 +78625,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78579,14 +78722,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78676,14 +78820,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78772,9 +78917,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -78792,6 +78934,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78879,14 +79025,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -78966,14 +79113,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79062,14 +79210,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79153,14 +79302,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79245,14 +79395,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79337,14 +79488,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79429,14 +79581,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79521,14 +79674,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79613,14 +79767,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79705,14 +79860,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79797,14 +79953,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79889,14 +80046,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -79981,14 +80139,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80073,14 +80232,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80165,14 +80325,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80257,14 +80418,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80349,14 +80511,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80441,14 +80604,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80533,14 +80697,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80625,14 +80790,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80717,14 +80883,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80809,14 +80976,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80901,14 +81069,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -80991,14 +81160,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81081,14 +81251,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81171,14 +81342,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81261,14 +81433,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81351,14 +81524,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81441,14 +81615,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81531,14 +81706,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81621,14 +81797,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81711,14 +81888,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81801,14 +81979,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81891,14 +82070,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -81981,14 +82161,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82071,14 +82252,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82161,14 +82343,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82251,14 +82434,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82343,14 +82527,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82435,14 +82620,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82527,14 +82713,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82619,14 +82806,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82711,14 +82899,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82803,14 +82992,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82895,14 +83085,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -82987,14 +83178,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83079,14 +83271,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83171,14 +83364,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83263,14 +83457,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83355,14 +83550,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83447,14 +83643,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83539,14 +83736,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83629,14 +83827,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83719,14 +83918,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83811,14 +84011,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -83989,14 +84190,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84086,14 +84288,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84183,14 +84386,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84280,14 +84484,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84377,14 +84582,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84474,14 +84680,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84571,14 +84778,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84666,9 +84874,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -84678,6 +84883,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84767,14 +84976,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84864,14 +85074,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -84962,9 +85173,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -84978,6 +85186,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85069,14 +85281,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85166,14 +85379,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85264,14 +85478,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85361,14 +85576,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85458,14 +85674,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85555,14 +85772,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85652,14 +85870,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85749,14 +85968,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85844,14 +86064,15 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -85940,14 +86161,15 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86041,14 +86263,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86142,14 +86365,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86238,14 +86462,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86334,9 +86559,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 100
@@ -86346,6 +86568,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86433,14 +86659,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86529,14 +86756,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86624,14 +86852,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86720,14 +86949,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86815,14 +87045,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -86911,14 +87142,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87130,14 +87362,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87225,14 +87458,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87320,14 +87554,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87416,14 +87651,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87511,14 +87747,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87606,14 +87843,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87701,14 +87939,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87796,14 +88035,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87891,14 +88131,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -87986,14 +88227,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88081,14 +88323,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88176,14 +88419,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88271,14 +88515,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88367,14 +88612,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88462,14 +88708,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88557,14 +88804,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88652,14 +88900,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88738,14 +88987,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88832,14 +89082,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -88927,9 +89178,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 100
@@ -88939,6 +89187,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89026,14 +89278,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89121,14 +89374,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89217,9 +89471,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -89233,6 +89484,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89320,14 +89575,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89406,14 +89662,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89500,14 +89757,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89596,14 +89854,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89690,14 +89949,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89784,14 +90044,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89880,14 +90141,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -89975,14 +90237,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90070,14 +90333,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90165,14 +90429,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90260,14 +90525,15 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90356,14 +90622,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90452,14 +90719,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90548,14 +90816,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90643,14 +90912,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90739,14 +91009,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90834,14 +91105,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -90921,14 +91193,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91015,14 +91288,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91110,14 +91384,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91205,14 +91480,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91300,9 +91576,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -91316,6 +91589,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91403,14 +91680,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91498,14 +91776,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91594,14 +91873,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91693,9 +91973,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 100
@@ -91705,6 +91982,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91791,14 +92072,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91886,14 +92168,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -91981,14 +92264,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92076,14 +92360,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92172,14 +92457,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92267,9 +92553,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -92283,6 +92566,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92370,14 +92657,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92465,14 +92753,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92560,14 +92849,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92655,14 +92945,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92747,14 +93038,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92839,14 +93131,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -92980,14 +93273,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93072,14 +93366,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93164,14 +93459,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93259,14 +93555,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93354,14 +93651,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93449,14 +93747,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93544,14 +93843,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93639,14 +93939,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93734,14 +94035,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93829,14 +94131,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -93924,14 +94227,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94021,14 +94325,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94118,14 +94423,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94213,14 +94519,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94309,14 +94616,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94404,14 +94712,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94499,14 +94808,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94594,14 +94904,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94690,14 +95001,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94786,14 +95098,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94882,14 +95195,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -94977,9 +95291,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -94997,6 +95308,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95084,14 +95399,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95180,14 +95496,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95275,14 +95592,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95370,14 +95688,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95467,14 +95786,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95565,9 +95885,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 100
@@ -95577,6 +95894,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95664,14 +95985,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95764,14 +96086,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95859,14 +96182,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -95954,9 +96278,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -95970,6 +96291,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -96057,14 +96382,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -96152,14 +96478,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -96247,14 +96574,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -96342,14 +96670,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -96563,14 +96892,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -96657,14 +96987,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -96749,14 +97080,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -96844,14 +97176,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -96937,14 +97270,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97030,14 +97364,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97124,14 +97459,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97215,14 +97551,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97308,14 +97645,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97402,14 +97740,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97495,14 +97834,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97590,14 +97930,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97684,14 +98025,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97778,14 +98120,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97871,14 +98214,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -97965,14 +98309,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98059,14 +98404,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98154,9 +98500,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 10
@@ -98170,6 +98513,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98255,14 +98602,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98349,14 +98697,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98442,14 +98791,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98532,14 +98882,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98626,14 +98977,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98720,14 +99072,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98814,14 +99167,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -98908,14 +99262,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99001,14 +99356,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99095,14 +99451,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99188,14 +99545,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99281,14 +99639,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99375,14 +99734,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99469,14 +99829,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99562,14 +99923,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99656,14 +100018,15 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99750,14 +100113,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99844,14 +100208,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -99937,14 +100302,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100030,14 +100396,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100125,14 +100492,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100218,14 +100586,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100312,14 +100681,15 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100407,14 +100777,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100502,14 +100873,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100597,14 +100969,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100692,14 +101065,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100787,14 +101161,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100881,14 +101256,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -100975,14 +101351,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101070,9 +101447,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 100
@@ -101082,6 +101456,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101168,14 +101546,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101262,14 +101641,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101356,14 +101736,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101450,14 +101831,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101544,14 +101926,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101638,14 +102021,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101732,14 +102116,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101818,14 +102203,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -101914,14 +102300,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -102008,14 +102395,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -102090,14 +102478,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -102177,14 +102566,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -102267,14 +102657,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -102362,14 +102753,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -102457,14 +102849,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -102552,14 +102945,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -102771,14 +103165,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -102914,14 +103309,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103009,14 +103405,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103103,14 +103500,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103199,14 +103597,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103295,14 +103694,15 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103391,14 +103791,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103487,14 +103888,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103582,14 +103984,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103677,14 +104080,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103772,14 +104176,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103866,14 +104271,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -103962,14 +104368,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104063,9 +104470,6 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.enable_cleandead"
         value: 100
@@ -104075,6 +104479,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104161,14 +104569,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104256,14 +104665,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104344,14 +104754,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104438,9 +104849,6 @@
       }
       build_numbers: YES
       service_account: "chromium-orchestrator@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium.add_one_test_shard"
         value: 5
@@ -104458,6 +104866,10 @@
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104545,14 +104957,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104640,14 +105053,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104735,14 +105149,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104830,14 +105245,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -104922,14 +105338,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105063,14 +105480,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105204,14 +105622,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105296,14 +105715,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105388,14 +105808,15 @@
       expiration_secs: 7200
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105484,14 +105905,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105580,14 +106002,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105667,14 +106090,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105761,14 +106185,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105856,14 +106281,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -105951,14 +106377,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106047,14 +106474,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106143,14 +106571,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106237,14 +106666,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106329,14 +106759,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106425,14 +106856,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106520,14 +106952,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106616,14 +107049,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106712,14 +107146,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106808,14 +107243,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106903,14 +107339,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -106998,14 +107435,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -107093,14 +107531,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-gpu-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -107173,14 +107612,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
@@ -107253,14 +107693,15 @@
       }
       build_numbers: YES
       service_account: "chromium-try-builder@chops-service-accounts.iam.gserviceaccount.com"
-      task_template_canary_percentage {
-        value: 5
-      }
       experiments {
         key: "chromium_swarming.expose_merge_script_failures"
         value: 100
       }
       experiments {
+        key: "luci.buildbucket.canary_software"
+        value: 5
+      }
+      experiments {
         key: "luci.recipes.use_python3"
         value: 100
       }
diff --git a/infra/config/generated/luci/project.cfg b/infra/config/generated/luci/project.cfg
index a193d43..8973a928c 100644
--- a/infra/config/generated/luci/project.cfg
+++ b/infra/config/generated/luci/project.cfg
@@ -13,4 +13,5 @@
   entry_point: "main.star"
   experiments: "crbug.com/1182002"
   experiments: "crbug.com/1347252"
+  experiments: "crbug.com/1496969"
 }
diff --git a/infra/config/lib/builder_config.star b/infra/config/lib/builder_config.star
index 4893bfb6..cc93866 100644
--- a/infra/config/lib/builder_config.star
+++ b/infra/config/lib/builder_config.star
@@ -463,9 +463,6 @@
             relative to the per-builder output root dir.
     """
     if not builder_spec and not mirrors:
-        if settings:
-            fail("settings specified without builder_spec or mirrors")
-
         # TODO(gbeaty) Eventually make this a failure for the chromium
         # family of recipes
         return
diff --git a/infra/config/lib/builders.star b/infra/config/lib/builders.star
index 987fe43..10864fd1 100644
--- a/infra/config/lib/builders.star
+++ b/infra/config/lib/builders.star
@@ -363,6 +363,7 @@
     siso_experiments = [],
     siso_remote_jobs = None,
     health_spec = None,
+    builder_config_settings = None,
 
     # Variables for modifying builder characteristics in a shadow bucket
     shadow_builderless = None,
@@ -402,7 +403,7 @@
         builder_group = args.DEFAULT,
         builder_spec = None,
         mirrors = None,
-        builder_config_settings = None,
+        builder_config_settings = args.DEFAULT,
         pool = args.DEFAULT,
         ssd = args.DEFAULT,
         sheriff_rotations = None,
@@ -690,9 +691,6 @@
 
     if builder_spec and mirrors:
         fail("Only one of builder_spec or mirrors can be set")
-    if builder_config_settings and not (builder_spec or mirrors):
-        fail("builder_config_settings can only be set if builder_spec or " +
-             "mirrors is set")
 
     dimensions = {}
 
@@ -946,6 +944,10 @@
 
     additional_exclusions = register_gn_args(builder_group, bucket, name, gn_args, use_siso)
 
+    builder_config_settings = defaults.get_value(
+        "builder_config_settings",
+        builder_config_settings,
+    )
     register_builder_config(
         bucket,
         name,
diff --git a/infra/config/main.star b/infra/config/main.star
index 05e3569..28bfa41 100755
--- a/infra/config/main.star
+++ b/infra/config/main.star
@@ -13,7 +13,7 @@
 load("//project.star", "settings")
 
 lucicfg.check_version(
-    min = "1.40.0",
+    min = "1.43.6",
     message = "Update depot_tools",
 )
 
diff --git a/infra/inclusive_language_presubmit_exempt_dirs.txt b/infra/inclusive_language_presubmit_exempt_dirs.txt
index 4ac28df..3b45f04 100644
--- a/infra/inclusive_language_presubmit_exempt_dirs.txt
+++ b/infra/inclusive_language_presubmit_exempt_dirs.txt
@@ -664,11 +664,11 @@
 third_party/rust/chromium_crates_io/vendor/clap_lex-0.7.0 2 2
 third_party/rust/chromium_crates_io/vendor/codespan-reporting-0.11.1 2 1
 third_party/rust/chromium_crates_io/vendor/codespan-reporting-0.11.1/examples 1 1
-third_party/rust/chromium_crates_io/vendor/cxx-1.0.121 1 1
-third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book 1 1
-third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src 3 1
-third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows 4 3
-third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src 4 1
+third_party/rust/chromium_crates_io/vendor/cxx-1.0.122 1 1
+third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book 1 1
+third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src 3 1
+third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows 4 3
+third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src 4 1
 third_party/rust/chromium_crates_io/vendor/either-1.11.0/.github/workflows 1 1
 third_party/rust/chromium_crates_io/vendor/getrandom-0.2.15 5 1
 third_party/rust/chromium_crates_io/vendor/hex-0.4.3 1 1
diff --git a/internal b/internal
index c7ca139..4e05864 160000
--- a/internal
+++ b/internal
@@ -1 +1 @@
-Subproject commit c7ca139b5030a1740c3ef47563720f66d1501d6c
+Subproject commit 4e05864666c58f0cc169127b45bd44f103b594fc
diff --git a/ios/chrome/app/main_controller.mm b/ios/chrome/app/main_controller.mm
index 3877a294..28613796 100644
--- a/ios/chrome/app/main_controller.mm
+++ b/ios/chrome/app/main_controller.mm
@@ -8,8 +8,10 @@
 
 #import "base/apple/bundle_locations.h"
 #import "base/apple/foundation_util.h"
+#import "base/barrier_closure.h"
 #import "base/feature_list.h"
 #import "base/functional/callback.h"
+#import "base/functional/concurrent_closures.h"
 #import "base/ios/ios_util.h"
 #import "base/memory/raw_ptr.h"
 #import "base/metrics/histogram_functions.h"
@@ -165,20 +167,6 @@
              base::FEATURE_DISABLED_BY_DEFAULT);
 #endif  // BUILDFLAG(FAST_APP_TERMINATE_ENABLED)
 
-// Returns a RepeatingClosure that will call `closure` after being called
-// exactly n time. The closure does not have to be called on a specific
-// thread or sequence.
-base::RepeatingClosure ExpectNCall(uint32_t n, base::RepeatingClosure closure) {
-  return base::BindRepeating(
-      [](base::RepeatingClosure closure,
-         const std::unique_ptr<std::atomic<uint32_t>>& counter) {
-        if (!--*counter) {
-          closure.Run();
-        }
-      },
-      std::move(closure), std::make_unique<std::atomic<uint32_t>>(n));
-}
-
 // Constants for deferring resetting the startup attempt count (to give the app
 // a little while to make sure it says alive).
 NSString* const kStartupAttemptReset = @"StartupAttemptReset";
@@ -573,10 +561,12 @@
       GetApplicationContext()
           ->GetChromeBrowserStateManager()
           ->GetLoadedBrowserStates();
-  // `completion` should be called only once when all browser states are
+
+  // `completion` should be called only once all BrowserStates have been
   // migrated.
-  base::RepeatingClosure closure =
-      ExpectNCall(loadedBrowserStates.size(), base::BindRepeating(completion));
+  base::RepeatingClosure closure = base::BarrierClosure(
+      loadedBrowserStates.size(), base::BindOnce(completion));
+
   // MigrateSessionStorageFormat is synchronous if the storage is already in
   // the requested format, so this is safe to call and won't block the app
   // startup.
@@ -950,9 +940,9 @@
     // `expectedCount` times.
     dispatch_semaphore_t semaphore = dispatch_semaphore_create(0);
     base::RepeatingClosure closure =
-        ExpectNCall(expectedCount, base::BindRepeating(^{
-                      dispatch_semaphore_signal(semaphore);
-                    }));
+        base::BarrierClosure(expectedCount, base::BindOnce(^{
+                               dispatch_semaphore_signal(semaphore);
+                             }));
 
     for (ChromeBrowserState* browserState : loadedBrowserStates) {
       SessionRestorationServiceFactory::GetForBrowserState(browserState)
@@ -1485,21 +1475,24 @@
       GetApplicationContext()
           ->GetChromeBrowserStateManager()
           ->GetLoadedBrowserStates();
-  for (ChromeBrowserState* browserState : loadedBrowserStates) {
-    base::RepeatingClosure dataDeletedClosure = ExpectNCall(
-        browserState->HasOffTheRecordChromeBrowserState() ? 2u : 1u,
-        base::BindRepeating(&sessions_storage_util::ResetDiscardedSessions));
 
+  base::ConcurrentClosures concurrent;
+  for (ChromeBrowserState* browserState : loadedBrowserStates) {
     SessionRestorationServiceFactory::GetForBrowserState(browserState)
-        ->DeleteDataForDiscardedSessions(identifiers, dataDeletedClosure);
+        ->DeleteDataForDiscardedSessions(identifiers,
+                                         concurrent.CreateClosure());
 
     if (browserState->HasOffTheRecordChromeBrowserState()) {
       ChromeBrowserState* otrBrowserState =
           browserState->GetOffTheRecordChromeBrowserState();
       SessionRestorationServiceFactory::GetForBrowserState(otrBrowserState)
-          ->DeleteDataForDiscardedSessions(identifiers, dataDeletedClosure);
+          ->DeleteDataForDiscardedSessions(identifiers,
+                                           concurrent.CreateClosure());
     }
   }
+
+  std::move(concurrent)
+      .Done(base::BindOnce(&sessions_storage_util::ResetDiscardedSessions));
 }
 
 - (void)pingDistributionServices {
diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios_strings.grd
index 9126474..02cc68f 100644
--- a/ios/chrome/app/strings/ios_strings.grd
+++ b/ios/chrome/app/strings/ios_strings.grd
@@ -2505,7 +2505,7 @@
         Manage
       </message>
       <message name="IDS_IOS_NOTIFICATIONS_OPT_IN_PRICE_TRACKING_TOGGLE_MESSAGE" desc="The label for the notification opt-in toggle message for price tracking notifications.">
-        Recieve price drop alerts for products you track.
+        Receive price drop alerts for products you track.
       </message>
       <message name="IDS_IOS_NOTIFICATIONS_OPT_IN_PRICE_TRACKING_TOGGLE_TITLE" desc="The label for the notification opt-in toggle title for price tracking notifications.">
         Price Tracking
diff --git a/ios/chrome/app/strings/ios_strings_grd/IDS_IOS_NOTIFICATIONS_OPT_IN_PRICE_TRACKING_TOGGLE_MESSAGE.png.sha1 b/ios/chrome/app/strings/ios_strings_grd/IDS_IOS_NOTIFICATIONS_OPT_IN_PRICE_TRACKING_TOGGLE_MESSAGE.png.sha1
index 725772c..b3a5cd1 100644
--- a/ios/chrome/app/strings/ios_strings_grd/IDS_IOS_NOTIFICATIONS_OPT_IN_PRICE_TRACKING_TOGGLE_MESSAGE.png.sha1
+++ b/ios/chrome/app/strings/ios_strings_grd/IDS_IOS_NOTIFICATIONS_OPT_IN_PRICE_TRACKING_TOGGLE_MESSAGE.png.sha1
@@ -1 +1 @@
-f51496eb89a9b3cbe0f9f7ed203314226fdd9220
\ No newline at end of file
+6df1b9b03109601783d7fe66bd145ac339862802
\ No newline at end of file
diff --git a/ios/chrome/app/strings/resources/ios_strings_ca.xtb b/ios/chrome/app/strings/resources/ios_strings_ca.xtb
index 9da10a9..25c05ab 100644
--- a/ios/chrome/app/strings/resources/ios_strings_ca.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_ca.xtb
@@ -584,7 +584,7 @@
 <translation id="4038354071007134711">Cap aplicació del dispos. no pot obrir el fitxer.</translation>
 <translation id="4042870976416480368">Cerca a la pàgina</translation>
 <translation id="4045648459118332842">Obtén les contrasenyes desades en qualsevol aplicació amb un sol toc</translation>
-<translation id="4049507953662678203">Assegureu-vos que teniu una connexió a la xarxa i torneu-ho a provar.</translation>
+<translation id="4049507953662678203">Assegureu-vos que teniu una connexió de xarxa i torneu-ho a provar.</translation>
 <translation id="4054572406751135230">Estigues al dia de les notícies, dels esports i més.</translation>
 <translation id="4092655288299341041">Mostra l'ajuda</translation>
 <translation id="4105841739161771091">{count,plural, =1{Suprimeix l'adreça}other{Suprimeix les adreces}}</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_de.xtb b/ios/chrome/app/strings/resources/ios_strings_de.xtb
index 3a9f8e3..47bd111e 100644
--- a/ios/chrome/app/strings/resources/ios_strings_de.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_de.xtb
@@ -837,7 +837,7 @@
 <translation id="5318298563956633672">Du beobachtest dieses Produkt bereits.</translation>
 <translation id="5327753393331509826">Inhaltsbenachrichtigungen erhalten</translation>
 <translation id="5329451663851195956">Zum Aktualisieren nach unten ziehen.</translation>
-<translation id="5333148247954006827">Zu anderem Profil wechseln</translation>
+<translation id="5333148247954006827">Zu einem anderen Profil wechseln</translation>
 <translation id="5339316356165661760">Synchronisierung aktivieren</translation>
 <translation id="5343472494710226394">Nachrichten, Sport und Inhalte, die deinen Interessen entsprechen.</translation>
 <translation id="5345660046352249607">{COUNT,plural, =1{Dieses Paket verfolgen?}other{{COUNT} Pakete verfolgen?}}</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb b/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb
index 2151f95..987c8c7 100644
--- a/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb
@@ -544,7 +544,7 @@
 <translation id="3819183753496523827">您未联网。请检查您的互联网连接状况,然后重试。</translation>
 <translation id="3832419617903252251">密码仅保存在此设备上</translation>
 <translation id="3835964409414434850">转到下一个标签页</translation>
-<translation id="383781833195845844">使用此标签页继续</translation>
+<translation id="383781833195845844">继续使用此标签页</translation>
 <translation id="3838691874161539578">检查您已保存的密码,让您在上网时更安全、更安心</translation>
 <translation id="385051799172605136">返回</translation>
 <translation id="3851938967634752633">用于登录 <ph name="WEBSITE" />、<ph name="SECOND_WEBSITE" /> 和另外 <ph name="NUMBER_OF_ACCOUNTS" /> 个网站的密码将被删除。您的相关账号不会被删除。</translation>
diff --git a/ios/chrome/browser/plus_addresses/ui/plus_address_bottom_sheet_view_controller.mm b/ios/chrome/browser/plus_addresses/ui/plus_address_bottom_sheet_view_controller.mm
index 901f58e..aed2bcb5 100644
--- a/ios/chrome/browser/plus_addresses/ui/plus_address_bottom_sheet_view_controller.mm
+++ b/ios/chrome/browser/plus_addresses/ui/plus_address_bottom_sheet_view_controller.mm
@@ -219,10 +219,10 @@
 }
 
 - (void)didConfirmPlusAddress {
-  plus_addresses::PlusAddressMetrics::RecordModalShownDuration(
+  plus_addresses::PlusAddressMetrics::RecordModalShownOutcome(
       plus_addresses::PlusAddressMetrics::PlusAddressModalCompletionStatus::
           kModalConfirmed,
-      base::Time::Now() - _bottomSheetShownTime);
+      base::Time::Now() - _bottomSheetShownTime, /*refresh_count=*/0);
   [_activityIndicator stopAnimating];
   [_browserCoordinatorHandler dismissPlusAddressBottomSheet];
 }
@@ -361,14 +361,14 @@
       plus_addresses::PlusAddressMetrics::PlusAddressModalEvent::
           kModalCanceled);
   if (_bottomSheetErrorStatus.has_value()) {
-    plus_addresses::PlusAddressMetrics::RecordModalShownDuration(
+    plus_addresses::PlusAddressMetrics::RecordModalShownOutcome(
         _bottomSheetErrorStatus.value(),
-        base::Time::Now() - _bottomSheetShownTime);
+        base::Time::Now() - _bottomSheetShownTime, /*refresh_count=*/0);
   } else {
-    plus_addresses::PlusAddressMetrics::RecordModalShownDuration(
+    plus_addresses::PlusAddressMetrics::RecordModalShownOutcome(
         plus_addresses::PlusAddressMetrics::PlusAddressModalCompletionStatus::
             kModalCanceled,
-        base::Time::Now() - _bottomSheetShownTime);
+        base::Time::Now() - _bottomSheetShownTime, /*refresh_count=*/0);
   }
   [_browserCoordinatorHandler dismissPlusAddressBottomSheet];
 }
diff --git a/ios/chrome/browser/safe_browsing/model/chrome_password_protection_service.mm b/ios/chrome/browser/safe_browsing/model/chrome_password_protection_service.mm
index 7689bba..d99a3427 100644
--- a/ios/chrome/browser/safe_browsing/model/chrome_password_protection_service.mm
+++ b/ios/chrome/browser/safe_browsing/model/chrome_password_protection_service.mm
@@ -503,7 +503,7 @@
     return false;
   }
   return base::Contains(safe_browsing::GetExcludedCountries(),
-                        variations_service->GetStoredPermanentCountry());
+                        variations_service->GetLatestCountry());
 }
 
 void ChromePasswordProtectionService::MaybeStartProtectedPasswordEntryRequest(
diff --git a/ios/chrome/browser/sessions/legacy_session_restoration_service_unittest.mm b/ios/chrome/browser/sessions/legacy_session_restoration_service_unittest.mm
index 50b61e9..24e30df 100644
--- a/ios/chrome/browser/sessions/legacy_session_restoration_service_unittest.mm
+++ b/ios/chrome/browser/sessions/legacy_session_restoration_service_unittest.mm
@@ -7,6 +7,7 @@
 #import <map>
 #import <set>
 
+#import "base/barrier_closure.h"
 #import "base/check_op.h"
 #import "base/containers/span.h"
 #import "base/files/file_enumerator.h"
@@ -283,18 +284,6 @@
   return result;
 }
 
-// Returns a closure that expects to be call `n` times and that will invoke
-// `closure` on the n-th invocation.
-base::RepeatingClosure ExpectNCall(base::RepeatingClosure closure, size_t n) {
-  __block size_t counter = 0;
-  return base::BindRepeating(^{
-    DCHECK_LT(counter, n);
-    if (++counter == n) {
-      closure.Run();
-    }
-  });
-}
-
 // Moves all WebStates from `src_web_state_list` to `dst_web_state_list` as
 // a batch operation. This respects the `active` flag, but drop any existing
 // opener-opened relationship.
@@ -372,7 +361,7 @@
                           base::span<const std::string_view> urls) {
     base::RunLoop run_loop;
     ScopedTestWebStateObserver web_state_observer(
-        ExpectNCall(run_loop.QuitClosure(), std::size(urls)));
+        base::BarrierClosure(std::size(urls), run_loop.QuitClosure()));
 
     WebStateList* web_state_list = browser.GetWebStateList();
     for (std::string_view url : urls) {
diff --git a/ios/chrome/browser/sessions/session_restoration_service_impl_unittest.mm b/ios/chrome/browser/sessions/session_restoration_service_impl_unittest.mm
index 0930fa1e..a5dc818 100644
--- a/ios/chrome/browser/sessions/session_restoration_service_impl_unittest.mm
+++ b/ios/chrome/browser/sessions/session_restoration_service_impl_unittest.mm
@@ -7,6 +7,7 @@
 #import <map>
 #import <set>
 
+#import "base/barrier_closure.h"
 #import "base/check_op.h"
 #import "base/containers/span.h"
 #import "base/files/file_enumerator.h"
@@ -273,18 +274,6 @@
   return result;
 }
 
-// Returns a closure that expects to be call `n` times and that will invoke
-// `closure` on the n-th invocation.
-base::RepeatingClosure ExpectNCall(base::RepeatingClosure closure, size_t n) {
-  __block size_t counter = 0;
-  return base::BindRepeating(^{
-    DCHECK_LT(counter, n);
-    if (++counter == n) {
-      closure.Run();
-    }
-  });
-}
-
 // Moves all WebStates from `src_web_state_list` to `dst_web_state_list` as
 // a batch operation. This respects the `active` flag, but drop any existing
 // opener-opened relationship.
@@ -359,7 +348,7 @@
                           base::span<const std::string_view> urls) {
     base::RunLoop run_loop;
     ScopedTestWebStateObserver web_state_observer(
-        ExpectNCall(run_loop.QuitClosure(), std::size(urls)));
+        base::BarrierClosure(std::size(urls), run_loop.QuitClosure()));
 
     WebStateList* web_state_list = browser.GetWebStateList();
     for (std::string_view url : urls) {
diff --git a/ios/chrome/browser/shared/public/features/features.h b/ios/chrome/browser/shared/public/features/features.h
index 18325ab..545287e 100644
--- a/ios/chrome/browser/shared/public/features/features.h
+++ b/ios/chrome/browser/shared/public/features/features.h
@@ -327,6 +327,9 @@
 // Feature flag enabling Save to Photos.
 BASE_DECLARE_FEATURE(kIOSSaveToPhotos);
 
+// Feature flag enabling a fix for the Download manager mediator.
+BASE_DECLARE_FEATURE(kIOSDownloadNoUIUpdateInBackground);
+
 // Causes the restore shorty and re-signin flows to offer a history opt-in
 // screen.
 BASE_DECLARE_FEATURE(kHistoryOptInForRestoreShortyAndReSignin);
diff --git a/ios/chrome/browser/shared/public/features/features.mm b/ios/chrome/browser/shared/public/features/features.mm
index 37ec62e..ba8a12f 100644
--- a/ios/chrome/browser/shared/public/features/features.mm
+++ b/ios/chrome/browser/shared/public/features/features.mm
@@ -333,6 +333,10 @@
              "IOSSaveToPhotos",
              base::FEATURE_ENABLED_BY_DEFAULT);
 
+BASE_FEATURE(kIOSDownloadNoUIUpdateInBackground,
+             "IOSDownloadNoUIUpdateInBackground",
+             base::FEATURE_DISABLED_BY_DEFAULT);
+
 BASE_FEATURE(kHistoryOptInForRestoreShortyAndReSignin,
              "HistoryOptInForRestoreShortyAndReSignin",
              base::FEATURE_ENABLED_BY_DEFAULT);
diff --git a/ios/chrome/browser/ui/autofill/authentication/BUILD.gn b/ios/chrome/browser/ui/autofill/authentication/BUILD.gn
index 7f38839a..ba45162 100644
--- a/ios/chrome/browser/ui/autofill/authentication/BUILD.gn
+++ b/ios/chrome/browser/ui/autofill/authentication/BUILD.gn
@@ -168,12 +168,21 @@
     "//ui/base",
   ]
   public_deps = [
+    ":card_unmask_authentication_selection_constants",
     ":card_unmask_authentication_selection_consumer",
     ":card_unmask_authentication_selection_mutator",
   ]
   frameworks = [ "UIKit.framework" ]
 }
 
+source_set("card_unmask_authentication_selection_constants") {
+  sources = [
+    "card_unmask_authentication_selection_constants.h",
+    "card_unmask_authentication_selection_constants.mm",
+  ]
+  frameworks = [ "UIKit.framework" ]
+}
+
 source_set("card_unmask_authentication_selection_mutator") {
   sources = [ "card_unmask_authentication_selection_mutator.h" ]
 }
@@ -203,6 +212,7 @@
     "otp_input_dialog_egtest.mm",
   ]
   deps = [
+    ":card_unmask_authentication_selection_constants",
     ":egtest_util",
     ":otp_input_dialog_ui_constants",
     "//components/autofill/core/browser:test_support",
diff --git a/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_egtest.mm b/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_egtest.mm
index 5e7aaaa..e738ad6e 100644
--- a/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_egtest.mm
+++ b/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_egtest.mm
@@ -9,6 +9,7 @@
 #import "components/autofill/core/common/autofill_payments_features.h"
 #import "components/strings/grit/components_strings.h"
 #import "ios/chrome/browser/ui/autofill/authentication/authentication_egtest_util.h"
+#import "ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_constants.h"
 #import "ios/chrome/browser/ui/autofill/autofill_app_interface.h"
 #import "ios/chrome/grit/ios_strings.h"
 #import "ios/chrome/test/earl_grey/chrome_actions.h"
@@ -53,14 +54,18 @@
   return grey_allOf(
       chrome_test_util::ButtonWithAccessibilityLabelId(
           IDS_AUTOFILL_CARD_UNMASK_AUTHENTICATION_SELECTION_DIALOG_OK_BUTTON_LABEL_SEND),
-      grey_not(grey_accessibilityTrait(UIAccessibilityTraitNotEnabled)), nil);
+      grey_accessibilityID(
+          kCardUnmaskAuthenticationSelectionAcceptanceButtonAccessibilityIdentifier),
+      nil);
 }
 
 // Matcher for the "Cancel" button.
 id<GREYMatcher> CardUnmaskAuthenticationSelectionCancelButton() {
   return grey_allOf(
       chrome_test_util::CancelButton(),
-      grey_not(grey_accessibilityTrait(UIAccessibilityTraitNotEnabled)), nil);
+      grey_accessibilityID(
+          kCardUnmaskAuthenticationSelectionCancelButtonAccessibilityIdentifier),
+      nil);
 }
 
 @interface CardUnmaskAuthenticationSelectionEgtest : ChromeTestCase
@@ -231,7 +236,8 @@
           grey_allOf(
               chrome_test_util::ButtonWithAccessibilityLabelId(
                   IDS_AUTOFILL_CARD_UNMASK_AUTHENTICATION_SELECTION_DIALOG_OK_BUTTON_LABEL_CONTINUE),
-              grey_not(grey_accessibilityTrait(UIAccessibilityTraitNotEnabled)),
+              grey_accessibilityID(
+                  kCardUnmaskAuthenticationSelectionAcceptanceButtonAccessibilityIdentifier),
               nil)] assertWithMatcher:grey_sufficientlyVisible()];
 }
 
diff --git a/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_constants.h b/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_constants.h
new file mode 100644
index 0000000..e82a949
--- /dev/null
+++ b/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_constants.h
@@ -0,0 +1,15 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef IOS_CHROME_BROWSER_UI_AUTOFILL_AUTHENTICATION_CARD_UNMASK_AUTHENTICATION_SELECTION_CONSTANTS_H_
+#define IOS_CHROME_BROWSER_UI_AUTOFILL_AUTHENTICATION_CARD_UNMASK_AUTHENTICATION_SELECTION_CONSTANTS_H_
+
+#import <Foundation/Foundation.h>
+
+extern NSString* const
+    kCardUnmaskAuthenticationSelectionAcceptanceButtonAccessibilityIdentifier;
+extern NSString* const
+    kCardUnmaskAuthenticationSelectionCancelButtonAccessibilityIdentifier;
+
+#endif  // IOS_CHROME_BROWSER_UI_AUTOFILL_AUTHENTICATION_CARD_UNMASK_AUTHENTICATION_SELECTION_CONSTANTS_H_
diff --git a/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_constants.mm b/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_constants.mm
new file mode 100644
index 0000000..f67423b
--- /dev/null
+++ b/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_constants.mm
@@ -0,0 +1,12 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#import "ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_constants.h"
+
+NSString* const
+    kCardUnmaskAuthenticationSelectionAcceptanceButtonAccessibilityIdentifier =
+        @"CardUnmaskAuthenticationSelectionAcceptanceButtonAccessiblityId";
+NSString* const
+    kCardUnmaskAuthenticationSelectionCancelButtonAccessibilityIdentifier =
+        @"CardUnmaskAuthenticationSelectionCancelButtonAccessibilityId";
diff --git a/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_view_controller.mm b/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_view_controller.mm
index 67ba9e13..13d6253 100644
--- a/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_view_controller.mm
+++ b/ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_view_controller.mm
@@ -9,6 +9,7 @@
 #import "ios/chrome/browser/shared/ui/table_view/cells/table_view_detail_icon_item.h"
 #import "ios/chrome/browser/shared/ui/table_view/cells/table_view_link_header_footer_item.h"
 #import "ios/chrome/browser/shared/ui/table_view/table_view_utils.h"
+#import "ios/chrome/browser/ui/autofill/authentication/card_unmask_authentication_selection_constants.h"
 #import "ios/chrome/browser/ui/autofill/cells/card_unmask_header_item.h"
 #import "ios/chrome/common/ui/colors/semantic_color_names.h"
 #import "ui/base/l10n/l10n_util.h"
@@ -42,10 +43,13 @@
   self.title = l10n_util::GetNSString(
       IDS_AUTOFILL_CARD_UNMASK_PROMPT_NAVIGATION_TITLE_VERIFICATION);
   // Configure the cancel button.
-  self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]
+  UIBarButtonItem* cancelBarButtonItem = [[UIBarButtonItem alloc]
       initWithBarButtonSystemItem:UIBarButtonSystemItemCancel
                            target:self
                            action:@selector(didTapCancelButton)];
+  cancelBarButtonItem.accessibilityIdentifier =
+      kCardUnmaskAuthenticationSelectionCancelButtonAccessibilityIdentifier;
+  self.navigationItem.leftBarButtonItem = cancelBarButtonItem;
 
   // Configure the table items.
   self.tableView.allowsSelection = YES;
@@ -106,11 +110,14 @@
 }
 
 - (void)setChallengeAcceptanceLabel:(NSString*)challengeAcceptanceLabel {
-  self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]
+  UIBarButtonItem* barButtonItem = [[UIBarButtonItem alloc]
       initWithTitle:challengeAcceptanceLabel
               style:UIBarButtonItemStylePlain
              target:self
              action:@selector(didTapChallengeAcceptanceButton)];
+  barButtonItem.accessibilityIdentifier =
+      kCardUnmaskAuthenticationSelectionAcceptanceButtonAccessibilityIdentifier;
+  self.navigationItem.rightBarButtonItem = barButtonItem;
 }
 
 - (void)enterPendingState {
diff --git a/ios/chrome/browser/ui/autofill/form_input_accessory/form_input_accessory_coordinator.mm b/ios/chrome/browser/ui/autofill/form_input_accessory/form_input_accessory_coordinator.mm
index 0e11304..5d042b2 100644
--- a/ios/chrome/browser/ui/autofill/form_input_accessory/form_input_accessory_coordinator.mm
+++ b/ios/chrome/browser/ui/autofill/form_input_accessory/form_input_accessory_coordinator.mm
@@ -23,6 +23,7 @@
 #import "components/keyed_service/core/service_access_type.h"
 #import "components/password_manager/core/browser/manage_passwords_referrer.h"
 #import "components/password_manager/core/browser/password_ui_utils.h"
+#import "components/password_manager/core/browser/ui/credential_ui_entry.h"
 #import "components/password_manager/core/common/password_manager_features.h"
 #import "components/password_manager/ios/password_generation_provider.h"
 #import "components/strings/grit/components_strings.h"
@@ -41,6 +42,7 @@
 #import "ios/chrome/browser/shared/public/commands/command_dispatcher.h"
 #import "ios/chrome/browser/shared/public/commands/open_new_tab_command.h"
 #import "ios/chrome/browser/shared/public/commands/security_alert_commands.h"
+#import "ios/chrome/browser/shared/public/commands/settings_commands.h"
 #import "ios/chrome/browser/shared/public/features/features.h"
 #import "ios/chrome/browser/shared/ui/util/layout_guide_names.h"
 #import "ios/chrome/browser/shared/ui/util/uikit_ui_util.h"
@@ -508,6 +510,15 @@
   [generationProvider triggerPasswordGeneration];
 }
 
+- (void)openPasswordDetailsForCredential:
+    (password_manager::CredentialUIEntry)credential {
+  [self reset];
+  id<SettingsCommands> settingsCommandsHandler = HandlerForProtocol(
+      self.browser->GetCommandDispatcher(), SettingsCommands);
+  [settingsCommandsHandler showPasswordDetailsForCredential:credential
+                                           showCancelButton:YES];
+}
+
 #pragma mark - ManualFillAllPasswordCoordinatorDelegate
 
 - (void)manualFillAllPasswordCoordinatorWantsToBeDismissed:
diff --git a/ios/chrome/browser/ui/autofill/manual_fill/BUILD.gn b/ios/chrome/browser/ui/autofill/manual_fill/BUILD.gn
index d276d64..1926541 100644
--- a/ios/chrome/browser/ui/autofill/manual_fill/BUILD.gn
+++ b/ios/chrome/browser/ui/autofill/manual_fill/BUILD.gn
@@ -148,6 +148,7 @@
     "//ios/chrome/browser/shared/ui/table_view:styler",
     "//ios/chrome/browser/shared/ui/table_view:table_view",
     "//ios/chrome/browser/shared/ui/table_view:utils",
+    "//ios/chrome/browser/ui/menu",
     "//ios/chrome/browser/ui/settings/password:title_view",
     "//ios/chrome/common:string_util",
     "//ios/chrome/common/ui/favicon",
@@ -290,6 +291,7 @@
     "//ios/chrome/browser/ui/settings/password:eg_test_support+eg2",
     "//ios/chrome/browser/ui/settings/password:features",
     "//ios/chrome/browser/ui/settings/password:password_constants",
+    "//ios/chrome/browser/ui/settings/password/password_details:password_details_table_view_constants",
     "//ios/chrome/common/ui/elements:form_input_accessory",
     "//ios/chrome/test:eg_test_support+eg2",
     "//ios/chrome/test/earl_grey:eg_test_support+eg2",
diff --git a/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_coordinator.h b/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_coordinator.h
index 5618183..2a73321 100644
--- a/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_coordinator.h
+++ b/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_coordinator.h
@@ -15,6 +15,10 @@
 class FormRendererId;
 }
 
+namespace password_manager {
+struct CredentialUIEntry;
+}
+
 // Delegate for the coordinator actions.
 @protocol PasswordCoordinatorDelegate <FallbackCoordinatorDelegate>
 
@@ -30,6 +34,10 @@
 // Opens password suggestion confirmation alert.
 - (void)openPasswordSuggestion;
 
+// Opens the details of the given credential.
+- (void)openPasswordDetailsForCredential:
+    (password_manager::CredentialUIEntry)credential;
+
 @end
 
 // Creates and manages a view controller to present passwords to the user. It
diff --git a/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_coordinator.mm b/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_coordinator.mm
index b47182e..8ff17cb 100644
--- a/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_coordinator.mm
+++ b/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_coordinator.mm
@@ -7,6 +7,7 @@
 #import "base/apple/foundation_util.h"
 #import "components/keyed_service/core/service_access_type.h"
 #import "components/password_manager/core/browser/password_store/password_store_interface.h"
+#import "components/password_manager/core/browser/ui/credential_ui_entry.h"
 #import "ios/chrome/browser/favicon/model/favicon_loader.h"
 #import "ios/chrome/browser/favicon/model/ios_chrome_favicon_loader_factory.h"
 #import "ios/chrome/browser/passwords/model/ios_chrome_account_password_store_factory.h"
@@ -143,4 +144,13 @@
   }];
 }
 
+- (void)openPasswordDetailsForCredential:
+    (password_manager::CredentialUIEntry)credential {
+  __weak id<PasswordCoordinatorDelegate> weakDelegate = self.delegate;
+
+  [self dismissIfNecessaryThenDoCompletion:^{
+    [weakDelegate openPasswordDetailsForCredential:credential];
+  }];
+}
+
 @end
diff --git a/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_mediator.mm b/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_mediator.mm
index 12a3dae3..1d9f251 100644
--- a/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_mediator.mm
+++ b/ios/chrome/browser/ui/autofill/manual_fill/manual_fill_password_mediator.mm
@@ -45,6 +45,7 @@
 #import "ui/gfx/favicon_size.h"
 #import "url/gurl.h"
 
+using password_manager::CredentialUIEntry;
 using password_manager::PasswordForm;
 
 namespace manual_fill {
@@ -201,7 +202,7 @@
 - (void)fetchAllPasswords {
   CHECK(_savedPasswordsPresenter);
 
-  std::vector<password_manager::CredentialUIEntry> savedCredentials =
+  std::vector<CredentialUIEntry> savedCredentials =
       _savedPasswordsPresenter->GetSavedCredentials();
   self.passwordForms = [self passwordFormsFromCredentials:savedCredentials];
   self.credentials =
@@ -217,7 +218,8 @@
   NSString* searchText = searchController.searchBar.text;
   if (!searchText.length) {
     NSArray<ManualFillCredentialItem*>* credentialItems =
-        [self createItemsForCredentials:self.credentials];
+        [self createItemsForCredentials:self.credentials
+                      withPasswordForms:self.passwordForms];
     [self.consumer presentCredentials:credentialItems];
     return;
   }
@@ -228,7 +230,8 @@
   NSArray* filteredCredentials =
       [self.credentials filteredArrayUsingPredicate:predicate];
   NSArray<ManualFillCredentialItem*>* credentialItems =
-      [self createItemsForCredentials:filteredCredentials];
+      [self createItemsForCredentials:filteredCredentials
+                    withPasswordForms:self.passwordForms];
   [self.consumer presentCredentials:credentialItems];
 }
 
@@ -252,13 +255,15 @@
     return;
   }
   NSArray<ManualFillCredentialItem*>* credentials =
-      [self createItemsForCredentials:self.credentials];
+      [self createItemsForCredentials:self.credentials
+                    withPasswordForms:self.passwordForms];
   [self.consumer presentCredentials:credentials];
 }
 
 // Creates a table view model with the passed credentials.
-- (NSArray<ManualFillCredentialItem*>*)createItemsForCredentials:
-    (NSArray<ManualFillCredential*>*)credentials {
+- (NSArray<ManualFillCredentialItem*>*)
+    createItemsForCredentials:(NSArray<ManualFillCredential*>*)credentials
+            withPasswordForms:(const std::vector<PasswordForm>&)passwordForms {
   NSMutableArray* items =
       [[NSMutableArray alloc] initWithCapacity:credentials.count];
   for (int i = 0; i < (int)credentials.count; i++) {
@@ -272,13 +277,14 @@
         IsKeyboardAccessoryUpgradeEnabled()
             ? NO
             : AreCredentialsAtIndicesConnected(credentials, i, i + 1);
-    ManualFillCredential* credential = credentials[i];
-    NSArray<UIAction*>* menuActions = IsKeyboardAccessoryUpgradeEnabled()
-                                          ? @[ [self createMenuEditAction] ]
-                                          : @[];
+
+    NSArray<UIAction*>* menuActions =
+        IsKeyboardAccessoryUpgradeEnabled()
+            ? @[ [self createMenuEditActionForPassword:passwordForms[i]] ]
+            : @[];
 
     ManualFillCredentialItem* item = [[ManualFillCredentialItem alloc]
-               initWithCredential:credential
+               initWithCredential:credentials[i]
         isConnectedToPreviousItem:isConnectedToPreviousItem
             isConnectedToNextItem:isConnectedToNextItem
                   contentInjector:self
@@ -427,16 +433,19 @@
   return manualFillCredentials;
 }
 
-// Creates an "Edit" UIAction to be used with a UIMenu.
-- (UIAction*)createMenuEditAction {
+// Creates a UIAction to edit a password from a UIMenu.
+- (UIAction*)createMenuEditActionForPassword:(PasswordForm)password {
   MenuScenarioHistogram menuScenario =
       self.isActionSectionEnabled
           ? kMenuScenarioHistogramAutofillManualFallbackAllPasswordsEntry
           : kMenuScenarioHistogramAutofillManualFallbackPasswordEntry;
   ActionFactory* actionFactory =
       [[ActionFactory alloc] initWithScenario:menuScenario];
+
+  __weak __typeof(self) weakSelf = self;
   UIAction* editAction = [actionFactory actionToEditWithBlock:^{
-      // TODO(crbug.com/326413057): Handle tap.
+    [weakSelf.navigator
+        openPasswordDetailsForCredential:CredentialUIEntry(password)];
   }];
 
   return editAction;
diff --git a/ios/chrome/browser/ui/autofill/manual_fill/password_list_navigator.h b/ios/chrome/browser/ui/autofill/manual_fill/password_list_navigator.h
index 45f317d..87dcacb4 100644
--- a/ios/chrome/browser/ui/autofill/manual_fill/password_list_navigator.h
+++ b/ios/chrome/browser/ui/autofill/manual_fill/password_list_navigator.h
@@ -5,6 +5,10 @@
 #ifndef IOS_CHROME_BROWSER_UI_AUTOFILL_MANUAL_FILL_PASSWORD_LIST_NAVIGATOR_H_
 #define IOS_CHROME_BROWSER_UI_AUTOFILL_MANUAL_FILL_PASSWORD_LIST_NAVIGATOR_H_
 
+namespace password_manager {
+struct CredentialUIEntry;
+}
+
 // Object to navigate different views in manual fallback's passwords list.
 @protocol PasswordListNavigator
 
@@ -20,6 +24,10 @@
 // Opens password suggestion.
 - (void)openPasswordSuggestion;
 
+// Opens the details of the given credential.
+- (void)openPasswordDetailsForCredential:
+    (password_manager::CredentialUIEntry)credential;
+
 @end
 
 #endif  // IOS_CHROME_BROWSER_UI_AUTOFILL_MANUAL_FILL_PASSWORD_LIST_NAVIGATOR_H_
diff --git a/ios/chrome/browser/ui/autofill/manual_fill/password_view_controller_egtest.mm b/ios/chrome/browser/ui/autofill/manual_fill/password_view_controller_egtest.mm
index e80246b..3b64ccb 100644
--- a/ios/chrome/browser/ui/autofill/manual_fill/password_view_controller_egtest.mm
+++ b/ios/chrome/browser/ui/autofill/manual_fill/password_view_controller_egtest.mm
@@ -17,6 +17,7 @@
 #import "ios/chrome/browser/ui/autofill/manual_fill/manual_fill_constants.h"
 #import "ios/chrome/browser/ui/passwords/bottom_sheet/password_suggestion_bottom_sheet_app_interface.h"
 #import "ios/chrome/browser/ui/settings/google_services/manage_sync_settings_constants.h"
+#import "ios/chrome/browser/ui/settings/password/password_details/password_details_table_view_constants.h"
 #import "ios/chrome/browser/ui/settings/password/password_manager_egtest_utils.h"
 #import "ios/chrome/browser/ui/settings/password/password_manager_ui_features.h"
 #import "ios/chrome/browser/ui/settings/password/password_settings_app_interface.h"
@@ -1118,7 +1119,12 @@
   [[EarlGrey selectElementWithMatcher:OverflowMenuEditAction()]
       performAction:grey_tap()];
 
-  // TODO(crbug.com/326413057): Check that the password details opened in search
+  // Check that the details page opened.
+  [[EarlGrey selectElementWithMatcher:grey_accessibilityID(
+                                          kPasswordDetailsViewControllerID)]
+      assertWithMatcher:grey_sufficientlyVisible()];
+
+  // TODO(crbug.com/326406846): Check that the details page was opened in edit
   // mode.
 }
 
diff --git a/ios/chrome/browser/ui/download/download_manager_coordinator.mm b/ios/chrome/browser/ui/download/download_manager_coordinator.mm
index 4edb589..6211164 100644
--- a/ios/chrome/browser/ui/download/download_manager_coordinator.mm
+++ b/ios/chrome/browser/ui/download/download_manager_coordinator.mm
@@ -135,6 +135,9 @@
 
   _mediator.SetDownloadTask(_downloadTask);
   _mediator.SetConsumer(_viewController);
+  if (base::FeatureList::IsEnabled(kIOSDownloadNoUIUpdateInBackground)) {
+    _mediator.StartObservingNotifications();
+  }
 
   self.presenter.baseViewController = self.baseViewController;
   self.presenter.presentedViewController = _viewController;
@@ -151,7 +154,9 @@
   _mediator.SetDriveService(nullptr);
   _mediator.SetPrefService(nullptr);
   _mediator.SetIdentityManager(nullptr);
-  _mediator.Disconnect();
+  if (base::FeatureList::IsEnabled(kIOSDownloadNoUIUpdateInBackground)) {
+    _mediator.StopObservingNotifications();
+  }
 
   if (_viewController) {
     [self.presenter dismissAnimated:self.animatesPresentation];
diff --git a/ios/chrome/browser/ui/download/download_manager_mediator.h b/ios/chrome/browser/ui/download/download_manager_mediator.h
index 750855d..94f801ef 100644
--- a/ios/chrome/browser/ui/download/download_manager_mediator.h
+++ b/ios/chrome/browser/ui/download/download_manager_mediator.h
@@ -79,8 +79,9 @@
   // Updates consumer.
   void UpdateConsumer();
 
-  // Disconnects the mediator as an Observer.
-  void Disconnect();
+  // Start/stop listening for foregrounding notifications.
+  void StartObservingNotifications();
+  void StopObservingNotifications();
 
  private:
   // Moves the downloaded file to user's Documents if it exists.
@@ -123,7 +124,6 @@
   void OnPrimaryAccountChanged(
       const signin::PrimaryAccountChangeEvent& event_details) override;
 
-  void AppDidEnterBackground();
   void AppWillEnterForeground();
 
   raw_ptr<signin::IdentityManager> identity_manager_ = nullptr;
@@ -134,9 +134,7 @@
   raw_ptr<web::DownloadTask> download_task_ = nullptr;
   raw_ptr<UploadTask> upload_task_ = nullptr;
   __weak id<DownloadManagerConsumer> consumer_ = nil;
-  bool app_in_background_ = false;
   // Observers for NSNotificationCenter notifications.
-  __strong id<NSObject> application_backgrounding_observer_;
   __strong id<NSObject> application_foregrounding_observer_;
 
   base::WeakPtrFactory<DownloadManagerMediator> weak_ptr_factory_;
diff --git a/ios/chrome/browser/ui/download/download_manager_mediator.mm b/ios/chrome/browser/ui/download/download_manager_mediator.mm
index a6c5d0a..5c4bb9f5 100644
--- a/ios/chrome/browser/ui/download/download_manager_mediator.mm
+++ b/ios/chrome/browser/ui/download/download_manager_mediator.mm
@@ -24,31 +24,10 @@
 #import "net/base/net_errors.h"
 #import "ui/base/l10n/l10n_util.h"
 
-DownloadManagerMediator::DownloadManagerMediator() : weak_ptr_factory_(this) {
-  // Register for backgrounding and foregrounding notifications.
-  application_backgrounding_observer_ = [[NSNotificationCenter defaultCenter]
-      addObserverForName:UIApplicationDidEnterBackgroundNotification
-                  object:nil
-                   queue:nil
-              usingBlock:
-                  base::CallbackToBlock(
-                      base::IgnoreArgs<NSNotification*>(base::BindRepeating(
-                          &DownloadManagerMediator::AppDidEnterBackground,
-                          weak_ptr_factory_.GetWeakPtr())))];
+DownloadManagerMediator::DownloadManagerMediator() : weak_ptr_factory_(this) {}
 
-  application_foregrounding_observer_ = [[NSNotificationCenter defaultCenter]
-      addObserverForName:UIApplicationWillEnterForegroundNotification
-                  object:nil
-                   queue:nil
-              usingBlock:
-                  base::CallbackToBlock(
-                      base::IgnoreArgs<NSNotification*>(base::BindRepeating(
-                          &DownloadManagerMediator::AppWillEnterForeground,
-                          weak_ptr_factory_.GetWeakPtr())))];
-}
 DownloadManagerMediator::~DownloadManagerMediator() {
   DCHECK(!application_foregrounding_observer_);
-  DCHECK(!application_backgrounding_observer_);
   SetDownloadTask(nullptr);
   if (identity_manager_) {
     identity_manager_->RemoveObserver(this);
@@ -170,13 +149,20 @@
                                        drive_service_, pref_service_);
 }
 
-void DownloadManagerMediator::Disconnect() {
-  if (application_backgrounding_observer_) {
-    [[NSNotificationCenter defaultCenter]
-        removeObserver:application_backgrounding_observer_];
-    application_backgrounding_observer_ = nil;
-  }
+void DownloadManagerMediator::StartObservingNotifications() {
+  DCHECK(!application_foregrounding_observer_);
+  application_foregrounding_observer_ = [[NSNotificationCenter defaultCenter]
+      addObserverForName:UIApplicationWillEnterForegroundNotification
+                  object:nil
+                   queue:nil
+              usingBlock:
+                  base::CallbackToBlock(
+                      base::IgnoreArgs<NSNotification*>(base::BindRepeating(
+                          &DownloadManagerMediator::AppWillEnterForeground,
+                          weak_ptr_factory_.GetWeakPtr())))];
+}
 
+void DownloadManagerMediator::StopObservingNotifications() {
   if (application_foregrounding_observer_) {
     [[NSNotificationCenter defaultCenter]
         removeObserver:application_foregrounding_observer_];
@@ -187,7 +173,9 @@
 #pragma mark - Private
 
 void DownloadManagerMediator::UpdateConsumer() {
-  if (app_in_background_) {
+  if (base::FeatureList::IsEnabled(kIOSDownloadNoUIUpdateInBackground) &&
+      UIApplication.sharedApplication.applicationState ==
+          UIApplicationStateBackground) {
     // If the app is in the background, do nothing.
     return;
   }
@@ -328,12 +316,8 @@
   }
 }
 
-void DownloadManagerMediator::AppDidEnterBackground() {
-  app_in_background_ = true;
-}
-
 void DownloadManagerMediator::AppWillEnterForeground() {
-  app_in_background_ = false;
+  CHECK(base::FeatureList::IsEnabled(kIOSDownloadNoUIUpdateInBackground));
   UpdateConsumer();
 }
 
diff --git a/ios/chrome/browser/ui/download/download_manager_mediator_unittest.mm b/ios/chrome/browser/ui/download/download_manager_mediator_unittest.mm
index 42601d00..caf86a1 100644
--- a/ios/chrome/browser/ui/download/download_manager_mediator_unittest.mm
+++ b/ios/chrome/browser/ui/download/download_manager_mediator_unittest.mm
@@ -43,7 +43,6 @@
     OCMStub([application_ sharedApplication]).andReturn(application_);
   }
   ~DownloadManagerMediatorTest() override {
-    mediator_.Disconnect();
     [application_ stopMocking];
   }
 
diff --git a/ios/chrome/browser/ui/omnibox/omnibox_additional_text_consumer.h b/ios/chrome/browser/ui/omnibox/omnibox_additional_text_consumer.h
index f98cae21..697b3e2 100644
--- a/ios/chrome/browser/ui/omnibox/omnibox_additional_text_consumer.h
+++ b/ios/chrome/browser/ui/omnibox/omnibox_additional_text_consumer.h
@@ -13,6 +13,11 @@
 // additional text.
 - (void)updateAdditionalText:(NSString*)additionalText;
 
+/// Notifies the consumer whether the omnibox has a rich inline default
+/// suggestion. Only used when `RichAutocompletion` is enabled without
+/// additional text.
+- (void)setOmniboxHasRichInline:(BOOL)omniboxHasRichInline;
+
 @end
 
 #endif  // IOS_CHROME_BROWSER_UI_OMNIBOX_OMNIBOX_ADDITIONAL_TEXT_CONSUMER_H_
diff --git a/ios/chrome/browser/ui/omnibox/omnibox_container_view.mm b/ios/chrome/browser/ui/omnibox/omnibox_container_view.mm
index 055cf2a..685fa833 100644
--- a/ios/chrome/browser/ui/omnibox/omnibox_container_view.mm
+++ b/ios/chrome/browser/ui/omnibox/omnibox_container_view.mm
@@ -299,6 +299,12 @@
   }
 }
 
+- (void)setOmniboxHasRichInline:(BOOL)omniboxHasRichInline {
+  CHECK(IsRichAutocompletionEnabled(
+      RichAutocompletionImplementation::kNoAdditionalText));
+  _textField.omniboxHasRichInline = omniboxHasRichInline;
+}
+
 #pragma mark - TextFieldViewContaining
 
 - (UIView*)textFieldView {
diff --git a/ios/chrome/browser/ui/omnibox/omnibox_text_field_experimental.mm b/ios/chrome/browser/ui/omnibox/omnibox_text_field_experimental.mm
index dfabb8a..df859c4 100644
--- a/ios/chrome/browser/ui/omnibox/omnibox_text_field_experimental.mm
+++ b/ios/chrome/browser/ui/omnibox/omnibox_text_field_experimental.mm
@@ -550,7 +550,8 @@
 - (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer*)gestureRecognizer {
   if (gestureRecognizer == self.tapGestureRecognizer) {
     return [self isPreEditing] || [self hasAutocompleteText] ||
-           (IsRichAutocompletionEnabled() && [self hasAdditionalText]);
+           (IsRichAutocompletionEnabled() && [self hasAdditionalText]) ||
+           self.omniboxHasRichInline;
   }
   return YES;
 }
@@ -568,6 +569,9 @@
   if (IsRichAutocompletionEnabled() && self.hasAdditionalText) {
     [self handleUserInitiatedRemovalOfAdditionalText];
   }
+  if (IsRichAutocompletionEnabled() && self.omniboxHasRichInline) {
+    [self handleUserInitiatedRemovalOfRichInline];
+  }
 }
 
 - (void)select:(id)sender {
@@ -801,7 +805,8 @@
     case OmniboxKeyboardActionLeftArrow:
     case OmniboxKeyboardActionRightArrow:
       return ([self isPreEditing] || [self hasAutocompleteText] ||
-              (IsRichAutocompletionEnabled() && [self hasAdditionalText]));
+              (IsRichAutocompletionEnabled() && [self hasAdditionalText]) ||
+              self.omniboxHasRichInline);
   }
 }
 
@@ -825,8 +830,8 @@
 #pragma mark preedit and inline autocomplete key commands
 
 - (void)keyCommandLeft {
-  DCHECK([self isPreEditing] || [self hasAutocompleteText] ||
-         [self hasAdditionalText]);
+  CHECK([self isPreEditing] || [self hasAutocompleteText] ||
+        [self hasAdditionalText] || self.omniboxHasRichInline);
 
   // Cursor offset.
   NSInteger offset = 0;
@@ -848,6 +853,12 @@
     }
     [self handleUserInitiatedRemovalOfAdditionalText];
   }
+  if (IsRichAutocompletionEnabled() && self.omniboxHasRichInline) {
+    if (!hasAutocompleteText) {
+      offset = self.userText.length - 1;
+    }
+    [self handleUserInitiatedRemovalOfRichInline];
+  }
 
   // Place the cursor at computed offset.
   UITextPosition* beginning = self.beginningOfDocument;
@@ -859,8 +870,8 @@
 }
 
 - (void)keyCommandRight {
-  DCHECK([self isPreEditing] || [self hasAutocompleteText] ||
-         [self hasAdditionalText]);
+  CHECK([self isPreEditing] || [self hasAutocompleteText] ||
+        [self hasAdditionalText] || self.omniboxHasRichInline);
 
   if ([self isPreEditing]) {
     [self exitPreEditState];
@@ -872,6 +883,9 @@
   if (IsRichAutocompletionEnabled() && [self hasAdditionalText]) {
     [self handleUserInitiatedRemovalOfAdditionalText];
   }
+  if (IsRichAutocompletionEnabled() && self.omniboxHasRichInline) {
+    [self handleUserInitiatedRemovalOfRichInline];
+  }
 
   // Put the cursor to the end of the input.
   UITextPosition* end = self.endOfDocument;
@@ -935,6 +949,19 @@
   }
 }
 
+/// Removes the rich inline as default suggestion.
+- (void)handleUserInitiatedRemovalOfRichInline {
+  if (!self.omniboxHasRichInline) {
+    return;
+  }
+
+  self.omniboxHasRichInline = NO;
+  if ([self.delegate
+          respondsToSelector:@selector(textFieldDidRemoveAdditionalText:)]) {
+    [self.delegate textFieldDidRemoveAdditionalText:self];
+  }
+}
+
 /// Accepts the autocomplete text.
 - (void)acceptAutocompleteText {
   [self setText:[self textWithoutAdditionalText].string];
diff --git a/ios/chrome/browser/ui/omnibox/omnibox_text_field_ios.h b/ios/chrome/browser/ui/omnibox/omnibox_text_field_ios.h
index cf9a797..fa902c3 100644
--- a/ios/chrome/browser/ui/omnibox/omnibox_text_field_ios.h
+++ b/ios/chrome/browser/ui/omnibox/omnibox_text_field_ios.h
@@ -114,6 +114,10 @@
 @property(nonatomic, assign) BOOL incognito;
 @property(nonatomic, strong) NSAttributedString* additionalText;
 
+/// Whether the omnibox has a rich inline default suggestion. Only used when
+/// `RichAutocompletion` is enabled with no additional text.
+@property(nonatomic, assign) BOOL omniboxHasRichInline;
+
 @end
 
 // A category for defining new methods that access private ivars.
diff --git a/ios/chrome/browser/ui/omnibox/omnibox_view_ios.mm b/ios/chrome/browser/ui/omnibox/omnibox_view_ios.mm
index 4a816cc..d1dff410 100644
--- a/ios/chrome/browser/ui/omnibox/omnibox_view_ios.mm
+++ b/ios/chrome/browser/ui/omnibox/omnibox_view_ios.mm
@@ -262,9 +262,13 @@
 }
 
 void OmniboxViewIOS::SetAdditionalText(const std::u16string& text) {
-  if (!IsRichAutocompletionEnabled() ||
-      IsRichAutocompletionEnabled(
+  if (!IsRichAutocompletionEnabled()) {
+    return;
+  }
+
+  if (IsRichAutocompletionEnabled(
           RichAutocompletionImplementation::kNoAdditionalText)) {
+    [additional_text_consumer_ setOmniboxHasRichInline:text.length()];
     return;
   }
 
diff --git a/ios/chrome/browser/ui/passwords/bottom_sheet/password_suggestion_bottom_sheet_exit_reason.h b/ios/chrome/browser/ui/passwords/bottom_sheet/password_suggestion_bottom_sheet_exit_reason.h
index dfe49f9..7554da9d 100644
--- a/ios/chrome/browser/ui/passwords/bottom_sheet/password_suggestion_bottom_sheet_exit_reason.h
+++ b/ios/chrome/browser/ui/passwords/bottom_sheet/password_suggestion_bottom_sheet_exit_reason.h
@@ -14,7 +14,8 @@
   kUsePasswordSuggestion = 1,
   kShowPasswordManager = 2,
   kShowPasswordDetails = 3,
-  kMaxValue = kShowPasswordDetails,
+  kBadProvider = 4,
+  kMaxValue = kBadProvider,
 };
 
 #endif  // IOS_CHROME_BROWSER_UI_PASSWORDS_BOTTOM_SHEET_PASSWORD_SUGGESTION_BOTTOM_SHEET_EXIT_REASON_H_
diff --git a/ios/chrome/browser/ui/passwords/bottom_sheet/password_suggestion_bottom_sheet_mediator.mm b/ios/chrome/browser/ui/passwords/bottom_sheet/password_suggestion_bottom_sheet_mediator.mm
index 805ef4d..92a0e609 100644
--- a/ios/chrome/browser/ui/passwords/bottom_sheet/password_suggestion_bottom_sheet_mediator.mm
+++ b/ios/chrome/browser/ui/passwords/bottom_sheet/password_suggestion_bottom_sheet_mediator.mm
@@ -50,6 +50,7 @@
 const char kImageFetcherUmaClient[] = "PasswordBottomSheet";
 const CGFloat kProfileImageSize = 80.0;
 
+using PasswordSuggestionBottomSheetExitReason::kBadProvider;
 using ReauthenticationEvent::kAttempt;
 using ReauthenticationEvent::kFailure;
 using ReauthenticationEvent::kMissingPasscode;
@@ -408,7 +409,11 @@
 // Perform suggestion selection
 - (void)selectSuggestion:(FormSuggestion*)suggestion {
   default_browser::NotifyPasswordAutofillSuggestionUsed(_engagementTracker);
-  [self.suggestionsProvider didSelectSuggestion:suggestion];
+  if (self.suggestionsProvider.type == SuggestionProviderTypePassword) {
+    [self.suggestionsProvider didSelectSuggestion:suggestion];
+  } else {
+    [self logExitReason:kBadProvider];
+  }
   [self disconnect];
 }
 
diff --git a/ios/chrome/browser/ui/tab_switcher/tab_strip/ui/tab_strip_view_controller.swift b/ios/chrome/browser/ui/tab_switcher/tab_strip/ui/tab_strip_view_controller.swift
index 77bf071..ea42230 100644
--- a/ios/chrome/browser/ui/tab_switcher/tab_strip/ui/tab_strip_view_controller.swift
+++ b/ios/chrome/browser/ui/tab_switcher/tab_strip/ui/tab_strip_view_controller.swift
@@ -679,6 +679,7 @@
   @objc func newTabButtonTapped() {
     UserMetricsUtils.recordAction("MobileTabSwitched")
     UserMetricsUtils.recordAction("MobileTabStripNewTab")
+    UserMetricsUtils.recordAction("MobileTabNewTab")
 
     mutator?.addNewItem()
   }
diff --git a/ios/chrome/test/earl_grey/chrome_earl_grey_app_interface.mm b/ios/chrome/test/earl_grey/chrome_earl_grey_app_interface.mm
index b5479cf..6041890 100644
--- a/ios/chrome/test/earl_grey/chrome_earl_grey_app_interface.mm
+++ b/ios/chrome/test/earl_grey/chrome_earl_grey_app_interface.mm
@@ -7,6 +7,7 @@
 #import <WebKit/WebKit.h>
 
 #import "base/apple/foundation_util.h"
+#import "base/barrier_closure.h"
 #import "base/command_line.h"
 #import "base/containers/contains.h"
 #import "base/files/file.h"
@@ -126,20 +127,6 @@
   return base::SysUTF8ToNSString(serialized_value);
 }
 
-// Returns a RepeatingClosure that will call `closure` after being called
-// exactly n time. The closure does not have to be called on a specific
-// thread or sequence.
-base::RepeatingClosure ExpectNCall(uint32_t n, base::RepeatingClosure closure) {
-  return base::BindRepeating(
-      [](base::RepeatingClosure closure,
-         const std::unique_ptr<std::atomic<uint32_t>>& counter) {
-        if (!--*counter) {
-          closure.Run();
-        }
-      },
-      std::move(closure), std::make_unique<std::atomic<uint32_t>>(n));
-}
-
 }  // namespace
 
 @implementation JavaScriptExecutionResult
@@ -217,9 +204,9 @@
 
   dispatch_semaphore_t semaphore = dispatch_semaphore_create(0);
   base::RepeatingClosure closure =
-      ExpectNCall(otrService ? 2u : 1u, base::BindRepeating(^{
-                    dispatch_semaphore_signal(semaphore);
-                  }));
+      base::BarrierClosure(otrService ? 2u : 1u, base::BindRepeating(^{
+                             dispatch_semaphore_signal(semaphore);
+                           }));
 
   service->SaveSessions();
   service->InvokeClosureWhenBackgroundProcessingDone(closure);
diff --git a/ios_internal b/ios_internal
index 446152a..777169d 160000
--- a/ios_internal
+++ b/ios_internal
@@ -1 +1 @@
-Subproject commit 446152abe1f5e9c4257723613550ac630d2484fa
+Subproject commit 777169d126a0d105da7e96ff3f5afcb2cb9482fb
diff --git a/media/base/media_switches.h b/media/base/media_switches.h
index 3912631..7f7c29b 100644
--- a/media/base/media_switches.h
+++ b/media/base/media_switches.h
@@ -309,7 +309,6 @@
 MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseWritePixelsYUV);
 MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseMultiPlaneFormatForHardwareVideo);
 MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseMultiPlaneFormatForSoftwareVideo);
-MEDIA_EXPORT BASE_DECLARE_FEATURE(kMultiPlaneSoftwareVideoSharedImages);
 MEDIA_EXPORT BASE_DECLARE_FEATURE(kMultiPlaneVideoCaptureSharedImages);
 MEDIA_EXPORT BASE_DECLARE_FEATURE(kOverlayFullscreenVideo);
 MEDIA_EXPORT BASE_DECLARE_FEATURE(kPauseBackgroundMutedAudio);
diff --git a/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc b/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc
index 1d35295..fb079f3 100644
--- a/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc
+++ b/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc
@@ -75,8 +75,8 @@
   const gfx::Size coded_size_;
   const gfx::ColorSpace color_space_;
   std::unique_ptr<gfx::GpuMemoryBuffer> gpu_memory_buffer_;
-  gpu::MailboxHolder mailbox_holders_[VideoFrame::kMaxPlanes];
   scoped_refptr<gpu::ClientSharedImage> shared_images_[VideoFrame::kMaxPlanes];
+  gpu::SyncToken sync_token_;
 };
 
 // The owner of the RenderableGpuMemoryBufferVideoFramePool::Client needs to be
@@ -170,8 +170,7 @@
     if (!shared_images_[i]) {
       continue;
     }
-    context->DestroySharedImage(mailbox_holders_[i].sync_token,
-                                std::move(shared_images_[i]));
+    context->DestroySharedImage(sync_token_, std::move(shared_images_[i]));
   }
 }
 
@@ -251,13 +250,7 @@
         shared_images_[0] = context->CreateSharedImage(
             gpu_memory_buffer_.get(), viz::MultiPlaneFormat::kNV12,
             color_space_, kTopLeft_GrSurfaceOrigin, kPremul_SkAlphaType,
-            kSharedImageUsage, mailbox_holders_[0].sync_token);
-        if (shared_images_[0]) {
-          mailbox_holders_[0].mailbox = shared_images_[0]->mailbox();
-        }
-        mailbox_holders_[0].texture_target =
-            shared_images_[0] ? shared_images_[0]->GetTextureTargetForOverlays()
-                              : GL_TEXTURE_2D;
+            kSharedImageUsage, sync_token_);
         return true;
       }
 
@@ -270,15 +263,9 @@
         shared_images_[plane] = context->CreateSharedImage(
             gpu_memory_buffer_.get(), kPlanes[plane], color_space_,
             kTopLeft_GrSurfaceOrigin, kPremul_SkAlphaType, kSharedImageUsage,
-            mailbox_holders_[plane].sync_token);
-        if (shared_images_[plane]) {
-          mailbox_holders_[plane].mailbox = shared_images_[plane]->mailbox();
-        }
-        mailbox_holders_[plane].texture_target =
-            shared_images_[plane]
-                ? shared_images_[plane]->GetTextureTargetForOverlays()
-                : GL_TEXTURE_2D;
+            sync_token_);
       }
+
       return true;
     }
     case PIXEL_FORMAT_ABGR:
@@ -288,12 +275,7 @@
       shared_images_[0] = context->CreateSharedImage(
           gpu_memory_buffer_.get(), image_format, color_space_,
           kTopLeft_GrSurfaceOrigin, kPremul_SkAlphaType, kSharedImageUsage,
-          mailbox_holders_[0].sync_token);
-      if (shared_images_[0]) {
-        mailbox_holders_[0].mailbox = shared_images_[0]->mailbox();
-        mailbox_holders_[0].texture_target =
-            shared_images_[0]->GetTextureTargetForOverlays();
-      }
+          sync_token_);
       return true;
     }
     default:
@@ -312,9 +294,11 @@
   const gfx::Rect visible_rect(coded_size_);
   const gfx::Size natural_size = coded_size_;
   auto video_frame = VideoFrame::WrapExternalGpuMemoryBuffer(
-      visible_rect, natural_size, std::move(gpu_memory_buffer_),
-      mailbox_holders_, VideoFrame::ReleaseMailboxAndGpuMemoryBufferCB(),
-      base::TimeDelta());
+      visible_rect, natural_size, std::move(gpu_memory_buffer_), shared_images_,
+      sync_token_,
+      shared_images_[0] ? shared_images_[0]->GetTextureTargetForOverlays()
+                        : GL_TEXTURE_2D,
+      VideoFrame::ReleaseMailboxAndGpuMemoryBufferCB(), base::TimeDelta());
   if (!video_frame) {
     return nullptr;
   }
@@ -346,9 +330,7 @@
     const gpu::SyncToken& sync_token) {
   DCHECK(!gpu_memory_buffer_);
   gpu_memory_buffer_ = std::move(gpu_memory_buffer);
-  for (auto& holder : mailbox_holders_) {
-    holder.sync_token = sync_token;
-  }
+  sync_token_ = sync_token;
 }
 
 ////////////////////////////////////////////////////////////////////////////////
diff --git a/media/video/video_encode_accelerator_adapter.cc b/media/video/video_encode_accelerator_adapter.cc
index 7a70451..a142d99 100644
--- a/media/video/video_encode_accelerator_adapter.cc
+++ b/media/video/video_encode_accelerator_adapter.cc
@@ -210,10 +210,11 @@
     VideoFrame::ReleaseMailboxAndGpuMemoryBufferCB reuse_cb =
         base::BindPostTaskToCurrentDefault(
             base::BindOnce(&GpuMemoryBufferVideoFramePool::ReuseFrame, this));
-    const gpu::MailboxHolder kEmptyMailBoxes[media::VideoFrame::kMaxPlanes] =
-        {};
+    scoped_refptr<gpu::ClientSharedImage>
+        kEmptySharedImages[media::VideoFrame::kMaxPlanes];
     return VideoFrame::WrapExternalGpuMemoryBuffer(
-        gfx::Rect(visible_size), visible_size, std::move(gmb), kEmptyMailBoxes,
+        gfx::Rect(visible_size), visible_size, std::move(gmb),
+        kEmptySharedImages, gpu::SyncToken(), /*texture_target=*/0,
         std::move(reuse_cb), base::TimeDelta());
   }
 
diff --git a/media/video/video_encode_accelerator_adapter_test.cc b/media/video/video_encode_accelerator_adapter_test.cc
index fa49619..c936b38e 100644
--- a/media/video/video_encode_accelerator_adapter_test.cc
+++ b/media/video/video_encode_accelerator_adapter_test.cc
@@ -104,10 +104,12 @@
            gmb->stride(1) * gmb_size.height() / 2);
     gmb->Unmap();
 
-    gpu::MailboxHolder empty_mailboxes[media::VideoFrame::kMaxPlanes];
+    scoped_refptr<gpu::ClientSharedImage>
+        empty_shared_images[media::VideoFrame::kMaxPlanes];
     auto frame = VideoFrame::WrapExternalGpuMemoryBuffer(
-        gfx::Rect(gmb_size), size, std::move(gmb), empty_mailboxes,
-        base::NullCallback(), timestamp);
+        gfx::Rect(gmb_size), size, std::move(gmb), empty_shared_images,
+        gpu::SyncToken(), /*texture_target=*/0, base::NullCallback(),
+        timestamp);
     frame->set_color_space(kYUVColorSpace);
     return frame;
   }
diff --git a/net/base/features.cc b/net/base/features.cc
index ba20979..c8e9d212 100644
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -221,10 +221,6 @@
              "AncestorChainBitEnabledInPartitionedCookies",
              base::FEATURE_DISABLED_BY_DEFAULT);
 
-BASE_FEATURE(kBlockTruncatedCookies,
-             "BlockTruncatedCookies",
-             base::FEATURE_ENABLED_BY_DEFAULT);
-
 BASE_FEATURE(kStaticKeyPinningEnforcement,
              "StaticKeyPinningEnforcement",
              base::FEATURE_ENABLED_BY_DEFAULT);
diff --git a/net/base/features.h b/net/base/features.h
index ae62e63..ee45244 100644
--- a/net/base/features.h
+++ b/net/base/features.h
@@ -248,10 +248,6 @@
 // key in partitioned cookies.
 NET_EXPORT BASE_DECLARE_FEATURE(kAncestorChainBitEnabledInPartitionedCookies);
 
-// When enabled, cookie-related code will treat cookies containing '\0', '\r',
-// and '\n' as invalid and reject the cookie.
-NET_EXPORT BASE_DECLARE_FEATURE(kBlockTruncatedCookies);
-
 // Controls whether static key pinning is enforced.
 NET_EXPORT BASE_DECLARE_FEATURE(kStaticKeyPinningEnforcement);
 
diff --git a/net/cookies/canonical_cookie.cc b/net/cookies/canonical_cookie.cc
index 42d5873..f6ea43d6e 100644
--- a/net/cookies/canonical_cookie.cc
+++ b/net/cookies/canonical_cookie.cc
@@ -307,7 +307,6 @@
     const base::Time& creation_time,
     std::optional<base::Time> server_time,
     std::optional<CookiePartitionKey> cookie_partition_key,
-    bool block_truncated,
     CookieSourceType source_type,
     CookieInclusionStatus* status) {
   // Put a pointer on the stack so the rest of the function can assign to it if
@@ -325,7 +324,7 @@
     return nullptr;
   }
 
-  ParsedCookie parsed_cookie(cookie_line, block_truncated, status);
+  ParsedCookie parsed_cookie(cookie_line, status);
 
   // We record this metric before checking validity because the presence of an
   // HTAB will invalidate the ParsedCookie.
@@ -491,10 +490,6 @@
   UMA_HISTOGRAM_BOOLEAN("Cookie.DoubleUnderscorePrefixedName",
                         name_prefixed_with_underscores);
 
-  UMA_HISTOGRAM_ENUMERATION(
-      "Cookie.TruncatingCharacterInCookieString",
-      parsed_cookie.GetTruncatingCharacterInCookieStringType());
-
   return cc;
 }
 
@@ -764,12 +759,10 @@
     const base::Time& creation_time,
     std::optional<base::Time> server_time,
     std::optional<CookiePartitionKey> cookie_partition_key,
-    bool block_truncated,
     CookieSourceType source_type,
     CookieInclusionStatus* status) {
   return CanonicalCookie::Create(url, cookie_line, creation_time, server_time,
-                                 cookie_partition_key, block_truncated,
-                                 source_type, status);
+                                 cookie_partition_key, source_type, status);
 }
 
 bool CanonicalCookie::IsEquivalentForSecureCookieMatching(
diff --git a/net/cookies/canonical_cookie.h b/net/cookies/canonical_cookie.h
index 7782cc03..f559bfb 100644
--- a/net/cookies/canonical_cookie.h
+++ b/net/cookies/canonical_cookie.h
@@ -104,10 +104,6 @@
   // will be unpartitioned even when the cookie line has the Partitioned
   // attribute.
   //
-  // The `block_truncated` argument indicates whether the '\0', '\n', and '\r'
-  // characters should cause the cookie to fail to be created if present
-  // (instead of truncating `cookie_line` at the first occurrence).
-  //
   // If a cookie is returned, `cookie->IsCanonical()` will be true.
   //
   // NOTE: Do not add any defaults to this constructor, we want every caller to
@@ -118,7 +114,6 @@
       const base::Time& creation_time,
       std::optional<base::Time> server_time,
       std::optional<CookiePartitionKey> cookie_partition_key,
-      bool block_truncated,
       CookieSourceType source_type,
       CookieInclusionStatus* status);
 
@@ -202,7 +197,6 @@
       const base::Time& creation_time,
       std::optional<base::Time> server_time = std::nullopt,
       std::optional<CookiePartitionKey> cookie_partition_key = std::nullopt,
-      bool block_truncated = true,
       CookieSourceType source_type = CookieSourceType::kUnknown,
       CookieInclusionStatus* status = nullptr);
 
diff --git a/net/cookies/canonical_cookie_unittest.cc b/net/cookies/canonical_cookie_unittest.cc
index 32acf9fb..c1b3dc0b 100644
--- a/net/cookies/canonical_cookie_unittest.cc
+++ b/net/cookies/canonical_cookie_unittest.cc
@@ -155,7 +155,6 @@
   cookie = CanonicalCookie::Create(GURL("http://www.example.com/test/foo.html"),
                                    "\b=foo", creation_time, server_time,
                                    /*cookie_partition_key=*/std::nullopt,
-                                   /*block_truncated=*/true,
                                    CookieSourceType::kUnknown, &status);
   EXPECT_FALSE(cookie.get());
   EXPECT_TRUE(status.HasExclusionReason(
@@ -163,7 +162,6 @@
   cookie = CanonicalCookie::Create(GURL("http://www.example.com/test/foo.html"),
                                    "bar=\b", creation_time, server_time,
                                    /*cookie_partition_key=*/std::nullopt,
-                                   /*block_truncated=*/true,
                                    CookieSourceType::kUnknown, &status);
   EXPECT_FALSE(cookie.get());
   EXPECT_TRUE(status.HasExclusionReason(
@@ -180,7 +178,6 @@
   cookie = CanonicalCookie::Create(GURL("http://www.example.com/test/foo.html"),
                                    too_long_value, creation_time, server_time,
                                    /*cookie_partition_key=*/std::nullopt,
-                                   /*block_truncated=*/true,
                                    CookieSourceType::kUnknown, &status);
   EXPECT_FALSE(cookie.get());
   EXPECT_TRUE(
@@ -317,10 +314,10 @@
   // An invalid port leads to an invalid GURL, which causes cookie creation
   // to fail.
   CookieInclusionStatus status;
-  cookie = CanonicalCookie::Create(
-      GURL("http://www.foo.com:70000"), "B=1", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(GURL("http://www.foo.com:70000"), "B=1",
+                                   creation_time, server_time,
+                                   /*cookie_partition_key=*/std::nullopt,
+                                   CookieSourceType::kUnknown, &status);
   EXPECT_FALSE(cookie.get());
   EXPECT_TRUE(status.HasExclusionReason(
       CookieInclusionStatus::ExclusionReason::EXCLUDE_FAILURE_TO_STORE));
@@ -332,8 +329,8 @@
   CookieInclusionStatus status;
   std::unique_ptr<CanonicalCookie> cookie = CanonicalCookie::Create(
       GURL("http://.127.0.0.1/path"), "A=2", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status);
+      /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+      &status);
   EXPECT_FALSE(cookie.get());
   EXPECT_TRUE(status.HasExclusionReason(
       CookieInclusionStatus::ExclusionReason::EXCLUDE_FAILURE_TO_STORE));
@@ -402,10 +399,10 @@
   CookieInclusionStatus status;
 
   // An HttpOnly cookie can be created.
-  std::unique_ptr<CanonicalCookie> cookie = CanonicalCookie::Create(
-      url, "A=2; HttpOnly", now, server_time,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  std::unique_ptr<CanonicalCookie> cookie =
+      CanonicalCookie::Create(url, "A=2; HttpOnly", now, server_time,
+                              /*cookie_partition_key=*/std::nullopt,
+                              CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cookie->IsHttpOnly());
   EXPECT_TRUE(status.IsInclude());
 }
@@ -418,8 +415,8 @@
 
   std::unique_ptr<CanonicalCookie> cookie = CanonicalCookie::Create(
       url, "A=2; Domain=wrongdomain.com", now, server_time,
-      /*cookie_partition_key=*/std::nullopt, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status);
+      /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+      &status);
   EXPECT_EQ(nullptr, cookie.get());
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_DOMAIN}));
@@ -434,9 +431,9 @@
   CookieInclusionStatus status;
 
   // Host cookie can be created for an eTLD.
-  std::unique_ptr<CanonicalCookie> cookie = CanonicalCookie::Create(
-      url, "A=2", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  std::unique_ptr<CanonicalCookie> cookie =
+      CanonicalCookie::Create(url, "A=2", now, server_time, std::nullopt,
+                              CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->IsHostCookie());
   EXPECT_EQ("com", cookie->Domain());
@@ -444,25 +441,25 @@
   // Attempting to create a domain cookie still yields a valid cookie, but only
   // if the domain attribute is the same as the URL's host, and it becomes a
   // host cookie only.
-  cookie = CanonicalCookie::Create(
-      url, "A=2; domain=com", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(url, "A=2; domain=com", now, server_time,
+                                   std::nullopt, CookieSourceType::kUnknown,
+                                   &status);
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->IsHostCookie());
   EXPECT_EQ("com", cookie->Domain());
 
   // Same thing if the domain attribute is specified with a dot.
-  cookie = CanonicalCookie::Create(
-      url, "A=2; domain=.com", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(url, "A=2; domain=.com", now, server_time,
+                                   std::nullopt, CookieSourceType::kUnknown,
+                                   &status);
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->IsHostCookie());
   EXPECT_EQ("com", cookie->Domain());
 
   // Capitalization is ok because everything is canonicalized.
-  cookie = CanonicalCookie::Create(
-      url, "A=2; domain=CoM", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(url, "A=2; domain=CoM", now, server_time,
+                                   std::nullopt, CookieSourceType::kUnknown,
+                                   &status);
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->IsHostCookie());
   EXPECT_EQ("com", cookie->Domain());
@@ -471,55 +468,55 @@
   // If the domain attribute minus any leading dot is the same as the url's
   // host, allow it to become a host cookie.
   GURL multilabel_url = GURL("http://co.uk/path");
-  cookie = CanonicalCookie::Create(
-      multilabel_url, "A=2", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(multilabel_url, "A=2", now, server_time,
+                                   std::nullopt, CookieSourceType::kUnknown,
+                                   &status);
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->IsHostCookie());
   EXPECT_EQ("co.uk", cookie->Domain());
 
-  cookie = CanonicalCookie::Create(
-      multilabel_url, "A=2; domain=co.uk", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(multilabel_url, "A=2; domain=co.uk", now,
+                                   server_time, std::nullopt,
+                                   CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->IsHostCookie());
   EXPECT_EQ("co.uk", cookie->Domain());
 
-  cookie = CanonicalCookie::Create(
-      multilabel_url, "A=2; domain=.co.uk", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(multilabel_url, "A=2; domain=.co.uk", now,
+                                   server_time, std::nullopt,
+                                   CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->IsHostCookie());
   EXPECT_EQ("co.uk", cookie->Domain());
 
   // Don't allow setting a domain cookie from a public suffix for a superdomain.
-  cookie = CanonicalCookie::Create(
-      multilabel_url, "A=2; domain=uk", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(multilabel_url, "A=2; domain=uk", now,
+                                   server_time, std::nullopt,
+                                   CookieSourceType::kUnknown, &status);
   EXPECT_EQ(nullptr, cookie.get());
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_DOMAIN}));
 
-  cookie = CanonicalCookie::Create(
-      multilabel_url, "A=2; domain=.uk", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(multilabel_url, "A=2; domain=.uk", now,
+                                   server_time, std::nullopt,
+                                   CookieSourceType::kUnknown, &status);
   EXPECT_EQ(nullptr, cookie.get());
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_DOMAIN}));
 
   // Don't allow setting a domain cookie for an unrelated domain.
-  cookie = CanonicalCookie::Create(
-      multilabel_url, "A=2; domain=foo.com", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(multilabel_url, "A=2; domain=foo.com", now,
+                                   server_time, std::nullopt,
+                                   CookieSourceType::kUnknown, &status);
   EXPECT_EQ(nullptr, cookie.get());
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_DOMAIN}));
 
   // Don't allow setting a domain cookie for some other domain with no
   // registrable domain.
-  cookie = CanonicalCookie::Create(
-      multilabel_url, "A=2; domain=com", now, server_time, std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  cookie = CanonicalCookie::Create(multilabel_url, "A=2; domain=com", now,
+                                   server_time, std::nullopt,
+                                   CookieSourceType::kUnknown, &status);
   EXPECT_EQ(nullptr, cookie.get());
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_DOMAIN}));
@@ -539,8 +536,8 @@
     // Test that non-ascii characters are rejected.
     std::unique_ptr<CanonicalCookie> cookie = CanonicalCookie::Create(
         url, "A=1; Domain=\xC3\xA9xample.com", now, server_time,
-        /*cookie_partition_key=*/std::nullopt, /*block_truncated=*/true,
-        CookieSourceType::kUnknown, &status);
+        /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+        &status);
     EXPECT_EQ(nullptr, cookie.get());
     EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
         {CookieInclusionStatus::EXCLUDE_INVALID_DOMAIN,
@@ -557,8 +554,8 @@
 
     std::unique_ptr<CanonicalCookie> cookie2 = CanonicalCookie::Create(
         url, "A=2; Domain=\xC3\xA9xample.com", now, server_time,
-        /*cookie_partition_key=*/std::nullopt,
-        /*block_truncated=*/true, CookieSourceType::kUnknown, &status2);
+        /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+        &status2);
 
     EXPECT_TRUE(cookie2.get());
     EXPECT_TRUE(status2.IsInclude());
@@ -570,8 +567,8 @@
   CookieInclusionStatus status3;
   std::unique_ptr<CanonicalCookie> cookie3 = CanonicalCookie::Create(
       url, "A=3; Domain=xn--xample-9ua.com", now, server_time,
-      /*cookie_partition_key=*/std::nullopt, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status3);
+      /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+      &status3);
   EXPECT_TRUE(cookie3.get());
   EXPECT_TRUE(status3.IsInclude());
   EXPECT_FALSE(
@@ -611,10 +608,10 @@
   };
 
   for (const auto& test : kTests) {
-    std::unique_ptr<CanonicalCookie> cookie = CanonicalCookie::Create(
-        test.url, test.cookie_line, now, server_time,
-        /*cookie_partition_key=*/std::nullopt,
-        /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+    std::unique_ptr<CanonicalCookie> cookie =
+        CanonicalCookie::Create(test.url, test.cookie_line, now, server_time,
+                                /*cookie_partition_key=*/std::nullopt,
+                                CookieSourceType::kUnknown, &status);
     if (test.expectedResult) {
       ASSERT_TRUE(cookie.get());
       EXPECT_EQ(test.url.host(), cookie->Domain());
@@ -637,8 +634,7 @@
   // Valid Partitioned attribute
   std::unique_ptr<CanonicalCookie> cookie = CanonicalCookie::Create(
       url, "__Host-A=2; Partitioned; Path=/; Secure", creation_time,
-      server_time, partition_key, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status);
+      server_time, partition_key, CookieSourceType::kUnknown, &status);
   ASSERT_TRUE(cookie.get());
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->SecureAttribute());
@@ -651,7 +647,6 @@
   status = CookieInclusionStatus();
   cookie = CanonicalCookie::Create(url, "__Host-A=2; Path=/; Secure",
                                    creation_time, server_time, partition_key,
-                                   /*block_truncated=*/true,
                                    CookieSourceType::kUnknown, &status);
   ASSERT_TRUE(cookie.get());
   EXPECT_TRUE(status.IsInclude());
@@ -663,7 +658,6 @@
   status = CookieInclusionStatus();
   cookie = CanonicalCookie::Create(url, "A=2; Partitioned; Path=/; Secure",
                                    creation_time, server_time, partition_key,
-                                   /*block_truncated=*/true,
                                    CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cookie.get());
   EXPECT_TRUE(status.IsInclude());
@@ -674,7 +668,6 @@
   status = CookieInclusionStatus();
   cookie = CanonicalCookie::Create(url, "A=2; Partitioned; Path=/",
                                    creation_time, server_time, partition_key,
-                                   /*block_truncated=*/true,
                                    CookieSourceType::kUnknown, &status);
   EXPECT_FALSE(cookie.get());
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
@@ -684,7 +677,6 @@
   status = CookieInclusionStatus();
   cookie = CanonicalCookie::Create(url, "A=2; Partitioned; Secure",
                                    creation_time, server_time, partition_key,
-                                   /*block_truncated=*/true,
                                    CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cookie.get());
   EXPECT_TRUE(status.IsInclude());
@@ -695,8 +687,7 @@
   status = CookieInclusionStatus();
   cookie = CanonicalCookie::Create(
       url, "A=2; Partitioned; Path=/foobar; Secure", creation_time, server_time,
-      partition_key, /*block_truncated=*/true, CookieSourceType::kUnknown,
-      &status);
+      partition_key, CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cookie.get());
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->IsPartitioned());
@@ -706,8 +697,8 @@
   status = CookieInclusionStatus();
   cookie = CanonicalCookie::Create(
       url, "A=2; Partitioned; Path=/; Secure; Domain=example.com",
-      creation_time, server_time, partition_key, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status);
+      creation_time, server_time, partition_key, CookieSourceType::kUnknown,
+      &status);
   EXPECT_TRUE(cookie.get());
   LOG(ERROR) << status;
   EXPECT_TRUE(status.IsInclude());
@@ -723,8 +714,7 @@
           base::UnguessableToken::Create()));
   cookie = CanonicalCookie::Create(
       url, "__Host-A=2; Path=/; Secure", creation_time, server_time,
-      partition_key_with_nonce, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status);
+      partition_key_with_nonce, CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cookie.get());
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->IsPartitioned());
@@ -741,8 +731,7 @@
 
   std::unique_ptr<CanonicalCookie> cookie = CanonicalCookie::Create(
       url, "foo=bar; Path=/; Secure; Partitioned", creation_time, server_time,
-      partition_key, /*block_truncated=*/true, CookieSourceType::kUnknown,
-      &status);
+      partition_key, CookieSourceType::kUnknown, &status);
   ASSERT_TRUE(cookie.get());
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(cookie->SecureAttribute());
@@ -2778,7 +2767,7 @@
   CookieInclusionStatus create_status;
   auto cookie2 = CanonicalCookie::Create(
       url, "__Secure-notactuallysecure=value;Domain=some-other-domain.com",
-      creation_time, server_time, /*cookie_partition_key=*/std::nullopt, true,
+      creation_time, server_time, /*cookie_partition_key=*/std::nullopt,
       CookieSourceType::kUnknown, &create_status);
   ASSERT_FALSE(cookie2);
   EXPECT_TRUE(create_status.HasExactlyExclusionReasonsForTesting(
@@ -2840,16 +2829,16 @@
   CookieInclusionStatus status;
 
   // A __Secure- cookie must be Secure.
-  EXPECT_FALSE(CanonicalCookie::Create(
-      https_url, "__Secure-A=B", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+  EXPECT_FALSE(CanonicalCookie::Create(https_url, "__Secure-A=B", creation_time,
+                                       server_time,
+                                       /*cookie_partition_key=*/std::nullopt,
+                                       CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
-  EXPECT_FALSE(CanonicalCookie::Create(
-      https_url, "__Secure-A=B; httponly", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+  EXPECT_FALSE(CanonicalCookie::Create(https_url, "__Secure-A=B; httponly",
+                                       creation_time, server_time,
+                                       /*cookie_partition_key=*/std::nullopt,
+                                       CookieSourceType::kUnknown, &status));
   // (EXCLUDE_HTTP_ONLY would be fine, too)
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
@@ -2892,24 +2881,24 @@
                                                 creation_time, server_time));
 
   // A __Secure- cookie can't be set on a non-secure origin.
-  EXPECT_FALSE(CanonicalCookie::Create(
-      http_url, "__Secure-A=B; Secure", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+  EXPECT_FALSE(CanonicalCookie::Create(http_url, "__Secure-A=B; Secure",
+                                       creation_time, server_time,
+                                       /*cookie_partition_key=*/std::nullopt,
+                                       CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
 
   // Hidden __Secure- prefixes should be rejected.
-  EXPECT_FALSE(CanonicalCookie::Create(
-      https_url, "=__Secure-A=B; Secure", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+  EXPECT_FALSE(CanonicalCookie::Create(https_url, "=__Secure-A=B; Secure",
+                                       creation_time, server_time,
+                                       /*cookie_partition_key=*/std::nullopt,
+                                       CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
-  EXPECT_FALSE(CanonicalCookie::Create(
-      https_url, "=__Secure-A; Secure", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+  EXPECT_FALSE(CanonicalCookie::Create(https_url, "=__Secure-A; Secure",
+                                       creation_time, server_time,
+                                       /*cookie_partition_key=*/std::nullopt,
+                                       CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
 
@@ -2927,16 +2916,16 @@
   CookieInclusionStatus status;
 
   // A __Host- cookie must be Secure.
-  EXPECT_FALSE(CanonicalCookie::Create(
-      https_url, "__Host-A=B;", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+  EXPECT_FALSE(CanonicalCookie::Create(https_url, "__Host-A=B;", creation_time,
+                                       server_time,
+                                       /*cookie_partition_key=*/std::nullopt,
+                                       CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
   EXPECT_FALSE(CanonicalCookie::Create(
       https_url, "__Host-A=B; Domain=" + domain + "; Path=/;", creation_time,
       server_time, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+      CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
   EXPECT_TRUE(CanonicalCookie::CreateForTesting(
@@ -2946,7 +2935,7 @@
   EXPECT_FALSE(CanonicalCookie::Create(
       http_url, "__Host-A=B; Domain=" + domain + "; Path=/; Secure;",
       creation_time, server_time, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+      CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
   EXPECT_TRUE(CanonicalCookie::CreateForTesting(
@@ -2956,13 +2945,13 @@
   EXPECT_FALSE(CanonicalCookie::Create(
       https_url, "__Host-A=B; Domain=" + domain + "; Path=/; Secure;",
       creation_time, server_time, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+      CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
   EXPECT_FALSE(CanonicalCookie::Create(
       https_url, "__Host-A=B; Domain=" + domain + "; Secure;", creation_time,
       server_time, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+      CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
 
@@ -2972,25 +2961,25 @@
       GURL("https://127.0.0.1"),
       "__Host-A=B; Domain=127.0.0.1; Path=/; Secure;", creation_time,
       server_time, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+      CookieSourceType::kUnknown, &status));
   // A __Host- cookie with an IP address domain does not need the domain
   // attribute specified explicitly (just like a normal domain).
   EXPECT_TRUE(CanonicalCookie::Create(
       GURL("https://127.0.0.1"), "__Host-A=B; Domain=; Path=/; Secure;",
       creation_time, server_time, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+      CookieSourceType::kUnknown, &status));
 
   // A __Host- cookie must have a Path of "/".
   EXPECT_FALSE(CanonicalCookie::Create(
       https_url, "__Host-A=B; Path=/foo; Secure;", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status));
+      /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+      &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
-  EXPECT_FALSE(CanonicalCookie::Create(
-      https_url, "__Host-A=B; Secure;", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt, true, CookieSourceType::kUnknown,
-      &status));
+  EXPECT_FALSE(CanonicalCookie::Create(https_url, "__Host-A=B; Secure;",
+                                       creation_time, server_time,
+                                       /*cookie_partition_key=*/std::nullopt,
+                                       CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
   EXPECT_TRUE(CanonicalCookie::CreateForTesting(
@@ -3000,21 +2989,21 @@
   EXPECT_FALSE(CanonicalCookie::Create(
       http_url, "__host-A=B; Domain=" + domain + "; Path=/;", creation_time,
       server_time, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+      CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
 
   EXPECT_FALSE(CanonicalCookie::Create(
       http_url, "__HOST-A=B; Domain=" + domain + "; Path=/;", creation_time,
       server_time, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+      CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
 
   EXPECT_FALSE(CanonicalCookie::Create(
       http_url, "__HoSt-A=B; Domain=" + domain + "; Path=/;", creation_time,
       server_time, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+      CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
 
@@ -3026,17 +3015,17 @@
     EXPECT_TRUE(CanonicalCookie::Create(
         http_url, "__host-A=B; Domain=" + domain + "; Path=/;", creation_time,
         server_time, /*cookie_partition_key=*/std::nullopt,
-        /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+        CookieSourceType::kUnknown, &status));
 
     EXPECT_TRUE(CanonicalCookie::Create(
         http_url, "__HOST-A=B; Domain=" + domain + "; Path=/;", creation_time,
         server_time, /*cookie_partition_key=*/std::nullopt,
-        /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+        CookieSourceType::kUnknown, &status));
 
     EXPECT_TRUE(CanonicalCookie::Create(
         http_url, "__HoSt-A=B; Domain=" + domain + "; Path=/;", creation_time,
         server_time, /*cookie_partition_key=*/std::nullopt,
-        /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+        CookieSourceType::kUnknown, &status));
   }
 
   // Rules don't apply for a typoed prefix.
@@ -3055,14 +3044,14 @@
   // Hidden __Host- prefixes should be rejected.
   EXPECT_FALSE(CanonicalCookie::Create(
       https_url, "=__Host-A=B; Path=/; Secure;", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status));
+      /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+      &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
-  EXPECT_FALSE(CanonicalCookie::Create(
-      https_url, "=__Host-A; Path=/; Secure;", creation_time, server_time,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status));
+  EXPECT_FALSE(CanonicalCookie::Create(https_url, "=__Host-A; Path=/; Secure;",
+                                       creation_time, server_time,
+                                       /*cookie_partition_key=*/std::nullopt,
+                                       CookieSourceType::kUnknown, &status));
   EXPECT_TRUE(status.HasExactlyExclusionReasonsForTesting(
       {CookieInclusionStatus::EXCLUDE_INVALID_PREFIX}));
 
@@ -4562,7 +4551,7 @@
   // A secure url doesn't need "Secure" to have a source scheme of secure
   cc = CanonicalCookie::Create(secure_url, "a=b; SameSite=Lax",
                                base::Time::Now(), std::nullopt, std::nullopt,
-                               /*block_truncated=*/true,
+
                                CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cc);
   EXPECT_TRUE(status.IsInclude());
@@ -4574,7 +4563,6 @@
   // But having "Secure" shouldn't change anything
   cc = CanonicalCookie::Create(secure_url, "a=b; SameSite=Lax; Secure",
                                base::Time::Now(), std::nullopt, std::nullopt,
-                               /*block_truncated=*/true,
                                CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cc);
   EXPECT_TRUE(status.IsInclude());
@@ -4587,7 +4575,6 @@
   // a default port.
   cc = CanonicalCookie::Create(insecure_url, "a=b; SameSite=Lax",
                                base::Time::Now(), std::nullopt, std::nullopt,
-                               /*block_truncated=*/true,
                                CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cc);
   EXPECT_TRUE(status.IsInclude());
@@ -4601,7 +4588,6 @@
   // tentatively allowed.
   cc = CanonicalCookie::Create(insecure_url, "a=b; SameSite=Lax; Secure",
                                base::Time::Now(), std::nullopt, std::nullopt,
-                               /*block_truncated=*/true,
                                CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cc);
   EXPECT_TRUE(status.IsInclude());
@@ -4615,7 +4601,6 @@
   // non-secure source scheme and keep its port.
   cc = CanonicalCookie::Create(insecure_url_custom_port, "a=b; SameSite=Lax",
                                base::Time::Now(), std::nullopt, std::nullopt,
-                               /*block_truncated=*/true,
                                CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cc);
   EXPECT_TRUE(status.IsInclude());
@@ -4629,8 +4614,7 @@
   // source scheme was tentatively allowed.
   cc = CanonicalCookie::Create(
       insecure_url_custom_port, "a=b; SameSite=Lax; Secure", base::Time::Now(),
-      std::nullopt, std::nullopt, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status);
+      std::nullopt, std::nullopt, CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cc);
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(status.HasExactlyWarningReasonsForTesting(
@@ -5403,7 +5387,6 @@
   std::unique_ptr<CanonicalCookie> cookie_with_long_path =
       CanonicalCookie::Create(url, "A=B; Path=/" + long_path, current_time,
                               std::nullopt, std::nullopt,
-                              /*block_truncated=*/true,
                               CookieSourceType::kUnknown, &status);
   CookieAccessResult cookie_access_result(status);
   CookieOptions cookie_with_long_path_options;
diff --git a/net/cookies/cookie_constants.h b/net/cookies/cookie_constants.h
index f202457..2281dc16 100644
--- a/net/cookies/cookie_constants.h
+++ b/net/cookies/cookie_constants.h
@@ -334,23 +334,6 @@
 // Empty string was chosen because it is the smallest, non-null value.
 NET_EXPORT extern const char kEmptyCookiePartitionKey[];
 
-// Used for a histogram that measures which character caused the cookie
-// string to be truncated.
-//
-// Do not reorder or renumber. Used for metrics.
-enum class TruncatingCharacterInCookieStringType {
-  // No truncating character in the cookie line.
-  kTruncatingCharNone = 0,
-  // Cookie line truncated because of \x0.
-  kTruncatingCharNull = 1,
-  // Cookie line truncated because of \xD.
-  kTruncatingCharNewline = 2,
-  // Cookie line truncated because of \xA.
-  kTruncatingCharLineFeed = 3,
-
-  kMaxValue = kTruncatingCharLineFeed,  // Keep as the last value.
-};
-
 // Enum for measuring usage patterns of CookiesAllowedForUrls.
 // The policy supports wildcards in the primary or secondary content setting
 // pattern, and explicit patterns for both. Each variant of this enum represents
diff --git a/net/cookies/cookie_monster_unittest.cc b/net/cookies/cookie_monster_unittest.cc
index c747716..922482f 100644
--- a/net/cookies/cookie_monster_unittest.cc
+++ b/net/cookies/cookie_monster_unittest.cc
@@ -5513,11 +5513,11 @@
 
   CookieInclusionStatus status;
   // Cookie can be created successfully; SameSite is not checked on Creation.
-  auto cookie = CanonicalCookie::CreateForTesting(
-      url, cookie_line, base::Time::Now(),
-      /*server_time=*/std::nullopt,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  auto cookie =
+      CanonicalCookie::CreateForTesting(url, cookie_line, base::Time::Now(),
+                                        /*server_time=*/std::nullopt,
+                                        /*cookie_partition_key=*/std::nullopt,
+                                        CookieSourceType::kUnknown, &status);
   ASSERT_TRUE(cookie != nullptr);
   ASSERT_TRUE(status.IsInclude());
 
@@ -5540,8 +5540,8 @@
   // on Create.
   auto cookie = CanonicalCookie::CreateForTesting(
       http_url, cookie_line, base::Time::Now(), /*server_time=*/std::nullopt,
-      /*cookie_partition_key=*/std::nullopt, /*block_truncated=*/true,
-      CookieSourceType::kUnknown, &status);
+      /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+      &status);
 
   ASSERT_TRUE(cookie != nullptr);
   ASSERT_TRUE(status.IsInclude());
@@ -5563,11 +5563,11 @@
   CookieMonster cm(nullptr, nullptr);
   CookieInclusionStatus status;
   // Cookie can be created successfully; HttpOnly is not checked on Create.
-  auto cookie = CanonicalCookie::CreateForTesting(
-      url, cookie_line, base::Time::Now(),
-      /*server_time=*/std::nullopt,
-      /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+  auto cookie =
+      CanonicalCookie::CreateForTesting(url, cookie_line, base::Time::Now(),
+                                        /*server_time=*/std::nullopt,
+                                        /*cookie_partition_key=*/std::nullopt,
+                                        CookieSourceType::kUnknown, &status);
 
   ASSERT_TRUE(cookie != nullptr);
   ASSERT_TRUE(status.IsInclude());
diff --git a/net/cookies/cookie_store_unittest.h b/net/cookies/cookie_store_unittest.h
index 95c5efe1..f4142256 100644
--- a/net/cookies/cookie_store_unittest.h
+++ b/net/cookies/cookie_store_unittest.h
@@ -229,8 +229,7 @@
 
     auto cookie = CanonicalCookie::Create(
         url, cookie_line, system_time.value_or(last), server_time,
-        cookie_partition_key,
-        /*block_truncated=*/true, source_type, /*status=*/nullptr);
+        cookie_partition_key, source_type, /*status=*/nullptr);
 
     if (!cookie)
       return false;
@@ -307,8 +306,8 @@
     CookieInclusionStatus create_status;
     auto cookie = CanonicalCookie::Create(
         url, cookie_line, base::Time::Now(), /*server_time=*/std::nullopt,
-        /*cookie_partition_key=*/std::nullopt, /*block_truncated=*/true,
-        CookieSourceType::kUnknown, &create_status);
+        /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+        &create_status);
     if (!cookie)
       return create_status;
 
@@ -637,7 +636,7 @@
   auto cookie = CanonicalCookie::Create(
       this->http_www_foo_.url(), "foo=1; Secure", base::Time::Now(),
       /*server_time=*/std::nullopt, /*cookie_partition_key=*/std::nullopt,
-      /*block_truncated=*/true, CookieSourceType::kUnknown, &status);
+      CookieSourceType::kUnknown, &status);
   EXPECT_TRUE(cookie->SecureAttribute());
   EXPECT_TRUE(status.IsInclude());
   EXPECT_TRUE(this->SetCanonicalCookieReturnAccessResult(
@@ -687,8 +686,8 @@
     auto c = CanonicalCookie::Create(
         this->http_www_foo_.url(), "bar=1; HttpOnly", base::Time::Now(),
         /*server_time=*/std::nullopt,
-        /*cookie_partition_key=*/std::nullopt,
-        /*block_truncated=*/true, CookieSourceType::kUnknown, &create_status);
+        /*cookie_partition_key=*/std::nullopt, CookieSourceType::kUnknown,
+        &create_status);
     EXPECT_TRUE(c->IsHttpOnly());
     EXPECT_TRUE(create_status.IsInclude());
     EXPECT_TRUE(this->SetCanonicalCookieReturnAccessResult(
diff --git a/net/cookies/parsed_cookie.cc b/net/cookies/parsed_cookie.cc
index 6960e7029..8633a2a 100644
--- a/net/cookies/parsed_cookie.cc
+++ b/net/cookies/parsed_cookie.cc
@@ -131,7 +131,6 @@
 namespace net {
 
 ParsedCookie::ParsedCookie(const std::string& cookie_line,
-                           bool block_truncated,
                            CookieInclusionStatus* status_out) {
   // Put a pointer on the stack so the rest of the function can assign to it if
   // the default nullptr is passed in.
@@ -141,7 +140,7 @@
   }
   *status_out = CookieInclusionStatus();
 
-  ParseTokenValuePairs(cookie_line, block_truncated, *status_out);
+  ParseTokenValuePairs(cookie_line, *status_out);
   if (IsValid()) {
     SetupAttributes();
   } else {
@@ -503,7 +502,6 @@
 
 // Parse all token/value pairs and populate pairs_.
 void ParsedCookie::ParseTokenValuePairs(const std::string& cookie_line,
-                                        bool block_truncated,
                                         CookieInclusionStatus& status_out) {
   pairs_.clear();
 
@@ -516,30 +514,11 @@
   // Then we can log any unexpected terminators.
   std::string::const_iterator end = FindFirstTerminator(cookie_line);
 
-  // For metrics on truncating character presence in the cookie line.
+  // Block cookies that were truncated by control characters.
   if (end < cookie_line.end()) {
-    switch (*end) {
-      case '\0':
-        truncating_char_in_cookie_string_type_ =
-            TruncatingCharacterInCookieStringType::kTruncatingCharNull;
-        break;
-      case '\r':
-        truncating_char_in_cookie_string_type_ =
-            TruncatingCharacterInCookieStringType::kTruncatingCharNewline;
-        break;
-      case '\n':
-        truncating_char_in_cookie_string_type_ =
-            TruncatingCharacterInCookieStringType::kTruncatingCharLineFeed;
-        break;
-      default:
-        NOTREACHED_IN_MIGRATION();
-    }
-    if (block_truncated &&
-        base::FeatureList::IsEnabled(net::features::kBlockTruncatedCookies)) {
-      status_out.AddExclusionReason(
-          CookieInclusionStatus::EXCLUDE_DISALLOWED_CHARACTER);
-      return;
-    }
+    status_out.AddExclusionReason(
+        CookieInclusionStatus::EXCLUDE_DISALLOWED_CHARACTER);
+    return;
   }
 
   // Exit early for an empty cookie string.
diff --git a/net/cookies/parsed_cookie.h b/net/cookies/parsed_cookie.h
index ed84c8fc..c98aba3 100644
--- a/net/cookies/parsed_cookie.h
+++ b/net/cookies/parsed_cookie.h
@@ -36,10 +36,7 @@
   // informative exclusion reasons if the resulting ParsedCookie is invalid.
   // The CookieInclusionStatus will not be altered if the resulting ParsedCookie
   // is valid.
-  // `block_truncated` indicates whether cookies containing '\00', '\r', or '\n'
-  // characters should be treated as invalid.
   explicit ParsedCookie(const std::string& cookie_line,
-                        bool block_truncated = true,
                         CookieInclusionStatus* status_out = nullptr);
 
   ParsedCookie(const ParsedCookie&) = delete;
@@ -87,10 +84,6 @@
   CookiePriority Priority() const;
   bool IsPartitioned() const { return partitioned_index_ != 0; }
   bool HasInternalHtab() const { return internal_htab_; }
-  TruncatingCharacterInCookieStringType
-  GetTruncatingCharacterInCookieStringType() const {
-    return truncating_char_in_cookie_string_type_;
-  }
   // Returns the number of attributes, for example, returning 2 for:
   //   "BLAH=hah; path=/; domain=.google.com"
   size_t NumberOfAttributes() const { return pairs_.size() - 1; }
@@ -175,7 +168,6 @@
 
  private:
   void ParseTokenValuePairs(const std::string& cookie_line,
-                            bool block_truncated,
                             CookieInclusionStatus& status_out);
   void SetupAttributes();
 
@@ -212,8 +204,6 @@
   size_t same_site_index_ = 0;
   size_t priority_index_ = 0;
   size_t partitioned_index_ = 0;
-  TruncatingCharacterInCookieStringType truncating_char_in_cookie_string_type_ =
-      TruncatingCharacterInCookieStringType::kTruncatingCharNone;
   // For metrics on cookie name/value internal HTABS
   bool internal_htab_ = false;
 };
diff --git a/net/cookies/parsed_cookie_unittest.cc b/net/cookies/parsed_cookie_unittest.cc
index 1d4c43f..18f75de9 100644
--- a/net/cookies/parsed_cookie_unittest.cc
+++ b/net/cookies/parsed_cookie_unittest.cc
@@ -61,7 +61,7 @@
 
 TEST(ParsedCookieTest, TestSetEmptyNameValue) {
   CookieInclusionStatus status;
-  ParsedCookie empty("", /*block_truncated=*/false, &status);
+  ParsedCookie empty("", &status);
   EXPECT_FALSE(empty.IsValid());
   EXPECT_TRUE(status.HasExclusionReason(
       CookieInclusionStatus::ExclusionReason::EXCLUDE_NO_COOKIE_CONTENT));
@@ -384,7 +384,7 @@
   EXPECT_TRUE(pc2.IsValid());
   EXPECT_EQ(max_name, pc2.Name());
 
-  ParsedCookie pc3(max_name + "X=", /*block_truncated=*/true, &status);
+  ParsedCookie pc3(max_name + "X=", &status);
   EXPECT_FALSE(pc3.IsValid());
   EXPECT_TRUE(status.HasOnlyExclusionReason(
       CookieInclusionStatus::ExclusionReason::
@@ -398,7 +398,7 @@
   EXPECT_TRUE(pc5.IsValid());
   EXPECT_EQ(max_value, pc5.Value());
 
-  ParsedCookie pc6("=" + max_value + "X", /*block_truncated=*/true, &status);
+  ParsedCookie pc6("=" + max_value + "X", &status);
   EXPECT_FALSE(pc6.IsValid());
   EXPECT_TRUE(status.HasOnlyExclusionReason(
       CookieInclusionStatus::ExclusionReason::
@@ -414,7 +414,7 @@
   EXPECT_EQ(almost_max_name, pc8.Name());
   EXPECT_EQ("x", pc8.Value());
 
-  ParsedCookie pc9(almost_max_name + "=xX", /*block_truncated=*/true, &status);
+  ParsedCookie pc9(almost_max_name + "=xX", &status);
   EXPECT_FALSE(pc9.IsValid());
   EXPECT_TRUE(status.HasOnlyExclusionReason(
       CookieInclusionStatus::ExclusionReason::
@@ -430,8 +430,7 @@
   EXPECT_EQ("x", pc11.Name());
   EXPECT_EQ(almost_max_value, pc11.Value());
 
-  ParsedCookie pc12("xX=" + almost_max_value, /*block_truncated=*/true,
-                    &status);
+  ParsedCookie pc12("xX=" + almost_max_value, &status);
   EXPECT_FALSE(pc12.IsValid());
   EXPECT_TRUE(status.HasOnlyExclusionReason(
       CookieInclusionStatus::ExclusionReason::
@@ -448,8 +447,7 @@
   EXPECT_TRUE(pc20.HasPath());
   EXPECT_EQ("/" + almost_max_path, pc20.Path());
 
-  ParsedCookie pc21("name=value; path=" + too_long_path,
-                    /*block_truncated=*/true, &status);
+  ParsedCookie pc21("name=value; path=" + too_long_path, &status);
   EXPECT_TRUE(pc21.IsValid());
   EXPECT_FALSE(pc21.HasPath());
   EXPECT_TRUE(status.HasWarningReason(
@@ -561,45 +559,22 @@
 TEST(ParsedCookieTest, EmbeddedTerminator) {
   using std::string_literals::operator""s;
 
-  base::test::ScopedFeatureList feature_list;
-  feature_list.InitAndEnableFeature(net::features::kBlockTruncatedCookies);
+  CookieInclusionStatus status1;
+  CookieInclusionStatus status2;
+  CookieInclusionStatus status3;
+  ParsedCookie pc1("AAA=BB\0ZYX"s, &status1);
+  ParsedCookie pc2("AAA=BB\rZYX"s, &status2);
+  ParsedCookie pc3("AAA=BB\nZYX"s, &status3);
 
-  for (const bool block_truncated : {true, false}) {
-    SCOPED_TRACE(testing::Message()
-                 << "Using block_trucated == " << block_truncated);
-
-    CookieInclusionStatus status1;
-    CookieInclusionStatus status2;
-    CookieInclusionStatus status3;
-    ParsedCookie pc1("AAA=BB\0ZYX"s, block_truncated, &status1);
-    ParsedCookie pc2("AAA=BB\rZYX"s, block_truncated, &status2);
-    ParsedCookie pc3("AAA=BB\nZYX"s, block_truncated, &status3);
-
-    if (block_truncated) {
-      EXPECT_FALSE(pc1.IsValid());
-      EXPECT_FALSE(pc2.IsValid());
-      EXPECT_FALSE(pc3.IsValid());
-      EXPECT_TRUE(status1.HasOnlyExclusionReason(
-          CookieInclusionStatus::ExclusionReason::
-              EXCLUDE_DISALLOWED_CHARACTER));
-      EXPECT_TRUE(status2.HasOnlyExclusionReason(
-          CookieInclusionStatus::ExclusionReason::
-              EXCLUDE_DISALLOWED_CHARACTER));
-      EXPECT_TRUE(status3.HasOnlyExclusionReason(
-          CookieInclusionStatus::ExclusionReason::
-              EXCLUDE_DISALLOWED_CHARACTER));
-    } else {
-      ASSERT_TRUE(pc1.IsValid());
-      EXPECT_EQ("AAA", pc1.Name());
-      EXPECT_EQ("BB", pc1.Value());
-      ASSERT_TRUE(pc2.IsValid());
-      EXPECT_EQ("AAA", pc2.Name());
-      EXPECT_EQ("BB", pc2.Value());
-      ASSERT_TRUE(pc3.IsValid());
-      EXPECT_EQ("AAA", pc3.Name());
-      EXPECT_EQ("BB", pc3.Value());
-    }
-  }
+  EXPECT_FALSE(pc1.IsValid());
+  EXPECT_FALSE(pc2.IsValid());
+  EXPECT_FALSE(pc3.IsValid());
+  EXPECT_TRUE(status1.HasOnlyExclusionReason(
+      CookieInclusionStatus::ExclusionReason::EXCLUDE_DISALLOWED_CHARACTER));
+  EXPECT_TRUE(status2.HasOnlyExclusionReason(
+      CookieInclusionStatus::ExclusionReason::EXCLUDE_DISALLOWED_CHARACTER));
+  EXPECT_TRUE(status3.HasOnlyExclusionReason(
+      CookieInclusionStatus::ExclusionReason::EXCLUDE_DISALLOWED_CHARACTER));
 }
 
 TEST(ParsedCookieTest, ParseTokensAndValues) {
@@ -1115,7 +1090,7 @@
     SCOPED_TRACE(testing::Message()
                  << "Test case #" << base::NumberToString(i + 1));
     CookieInclusionStatus status;
-    ParsedCookie pc(cases[i], /*block_truncated=*/true, &status);
+    ParsedCookie pc(cases[i], &status);
     EXPECT_FALSE(pc.IsValid());
     EXPECT_TRUE(status.HasOnlyExclusionReason(
         CookieInclusionStatus::ExclusionReason::EXCLUDE_DISALLOWED_CHARACTER));
@@ -1193,92 +1168,58 @@
   EXPECT_TRUE(pc9.IsValid());
 }
 
-TEST(ParsedCookieTest, TruncatingCharInCookieLine) {
+TEST(ParsedCookieTest, PreviouslyTruncatingCharInCookieLine) {
   using std::string_literals::operator""s;
 
-  base::test::ScopedFeatureList feature_list;
-  feature_list.InitAndEnableFeature(net::features::kBlockTruncatedCookies);
-
   // Test scenarios where a control char may appear at start, middle and end of
   // a cookie line. Control char array with NULL (\x0), CR (\xD), LF (xA),
   // HT (\x9) and BS (\x1B).
   const struct {
     const char ctlChar;
-    const TruncatingCharacterInCookieStringType
-        expectedTruncatingCharInCookieStringType;
-  } kTests[] = {
-      {'\x0', TruncatingCharacterInCookieStringType::kTruncatingCharNull},
-      {'\xD', TruncatingCharacterInCookieStringType::kTruncatingCharNewline},
-      {'\xA', TruncatingCharacterInCookieStringType::kTruncatingCharLineFeed},
-      {'\x9', TruncatingCharacterInCookieStringType::kTruncatingCharNone},
-      {'\x1B', TruncatingCharacterInCookieStringType::kTruncatingCharNone}};
+    bool invalid_character;
+  } kTests[] = {{'\x0', true},
+                {'\xD', true},
+                {'\xA', true},
+                {'\x9', false},
+                {'\x1B', false}};
 
-  for (const bool block_truncated : {true, false}) {
-    SCOPED_TRACE(testing::Message()
-                 << "Using block_trucated == " << block_truncated);
+  for (const auto& test : kTests) {
+    SCOPED_TRACE(testing::Message() << "Using test.ctlChar == "
+                                    << base::NumberToString(test.ctlChar));
+    std::string ctl_string(1, test.ctlChar);
+    std::string ctl_at_start_cookie_string = ctl_string + "foo=bar"s;
+    ParsedCookie ctl_at_start_cookie(ctl_at_start_cookie_string);
+    // Lots of factors determine whether IsValid() is true here:
+    //
+    //  - For the tab character ('\x9), leading whitespace is valid and the
+    //  spec indicates that it should just be removed and the cookie parsed
+    //  normally. Thus, in this case the cookie is always valid.
+    //
+    //  - For control characters that historically truncated the cookie, they
+    //  now cause the cookie to be deemed invalid.
+    //
+    //  - For other control characters the cookie is always treated as invalid.
+    EXPECT_EQ(ctl_at_start_cookie.IsValid(), test.ctlChar == '\x9');
 
-    for (const auto& test : kTests) {
-      SCOPED_TRACE(testing::Message() << "Using test.ctlChar == "
-                                      << base::NumberToString(test.ctlChar));
-      const bool would_be_truncated =
-          test.expectedTruncatingCharInCookieStringType !=
-          TruncatingCharacterInCookieStringType::kTruncatingCharNone;
-      std::string ctl_string(1, test.ctlChar);
-      std::string ctl_at_start_cookie_string = ctl_string + "foo=bar"s;
-      ParsedCookie ctl_at_start_cookie(ctl_at_start_cookie_string,
-                                       block_truncated);
-      EXPECT_EQ(ctl_at_start_cookie.GetTruncatingCharacterInCookieStringType(),
-                test.expectedTruncatingCharInCookieStringType);
-      // Lots of factors determine whether IsValid() is true here:
-      //
-      //  - For the tab character ('\x9), leading whitespace is valid and the
-      //  spec indicates that it should just be removed and the cookie parsed
-      //  normally. Thus, in this case the cookie is valid regardless of whether
-      //  `block_truncated` is true.
-      //
-      //  - For control characters that would truncate the cookie, they either
-      //  cause the cookie to be invalid if `block_truncated` is true or they
-      //  cause cookie truncation which results in an empty cookie, which is
-      //  also treated as invalid.
-      //
-      //  - For the other control character case the cookie is always just
-      //  treated as invalid.
-      EXPECT_EQ(ctl_at_start_cookie.IsValid(), test.ctlChar == '\x9');
-
-      std::string ctl_at_middle_cookie_string =
-          "foo=bar;"s + ctl_string + "secure"s;
-      ParsedCookie ctl_at_middle_cookie(ctl_at_middle_cookie_string,
-                                        block_truncated);
-      EXPECT_EQ(ctl_at_middle_cookie.GetTruncatingCharacterInCookieStringType(),
-                test.expectedTruncatingCharInCookieStringType);
-      if (would_be_truncated) {
-        EXPECT_EQ(ctl_at_middle_cookie.IsValid(), !block_truncated);
-      }
-
-      std::string ctl_at_end_cookie_string =
-          "foo=bar;"s + "secure;"s + ctl_string;
-      ParsedCookie ctl_at_end_cookie(ctl_at_end_cookie_string, block_truncated);
-      EXPECT_EQ(ctl_at_end_cookie.GetTruncatingCharacterInCookieStringType(),
-                test.expectedTruncatingCharInCookieStringType);
-      if (would_be_truncated) {
-        EXPECT_EQ(ctl_at_end_cookie.IsValid(), !block_truncated);
-      }
+    std::string ctl_at_middle_cookie_string =
+        "foo=bar;"s + ctl_string + "secure"s;
+    ParsedCookie ctl_at_middle_cookie(ctl_at_middle_cookie_string);
+    if (test.invalid_character) {
+      EXPECT_EQ(ctl_at_middle_cookie.IsValid(), false);
     }
 
-    // Test if there are multiple control characters that terminate.
-    std::string ctls_cookie_string = "foo=bar;\xA\xD"s;
-    ParsedCookie ctls_cookie(ctls_cookie_string, block_truncated);
-    EXPECT_EQ(ctls_cookie.GetTruncatingCharacterInCookieStringType(),
-              TruncatingCharacterInCookieStringType::kTruncatingCharLineFeed);
-    EXPECT_EQ(ctls_cookie.IsValid(), !block_truncated);
-
-    // Test with no control characters.
-    std::string cookie_string = "foo=bar;"s;
-    ParsedCookie cookie(cookie_string, block_truncated);
-    EXPECT_EQ(cookie.GetTruncatingCharacterInCookieStringType(),
-              TruncatingCharacterInCookieStringType::kTruncatingCharNone);
-    EXPECT_TRUE(cookie.IsValid());
+    std::string ctl_at_end_cookie_string =
+        "foo=bar;"s + "secure;"s + ctl_string;
+    ParsedCookie ctl_at_end_cookie(ctl_at_end_cookie_string);
+    if (test.invalid_character) {
+      EXPECT_EQ(ctl_at_end_cookie.IsValid(), false);
+    }
   }
+
+  // Test if there are multiple control characters that terminate.
+  std::string ctls_cookie_string = "foo=bar;\xA\xD"s;
+  ParsedCookie ctls_cookie(ctls_cookie_string);
+  EXPECT_EQ(ctls_cookie.IsValid(), false);
 }
 
 TEST(ParsedCookieTest, HtabInNameOrValue) {
diff --git a/net/http/http_stream_factory_job_controller.cc b/net/http/http_stream_factory_job_controller.cc
index 972aa1e..f8dd063 100644
--- a/net/http/http_stream_factory_job_controller.cc
+++ b/net/http/http_stream_factory_job_controller.cc
@@ -200,7 +200,7 @@
   priority_ = priority;
 
   auto request = std::make_unique<HttpStreamRequest>(
-      this, delegate, websocket_handshake_stream_create_helper, source_net_log,
+      this, websocket_handshake_stream_create_helper, source_net_log,
       stream_type);
   // Keep a raw pointer but release ownership of HttpStreamRequest instance.
   request_ = request.get();
diff --git a/net/http/http_stream_request.cc b/net/http/http_stream_request.cc
index 6f7bc31..3f39da5 100644
--- a/net/http/http_stream_request.cc
+++ b/net/http/http_stream_request.cc
@@ -18,7 +18,6 @@
 
 HttpStreamRequest::HttpStreamRequest(
     Helper* helper,
-    HttpStreamRequest::Delegate* delegate,
     WebSocketHandshakeStreamBase::CreateHelper*
         websocket_handshake_stream_create_helper,
     const NetLogWithSource& net_log,
diff --git a/net/http/http_stream_request.h b/net/http/http_stream_request.h
index db767a65..36db46f 100644
--- a/net/http/http_stream_request.h
+++ b/net/http/http_stream_request.h
@@ -129,10 +129,9 @@
     virtual void SetPriority(RequestPriority priority) = 0;
   };
 
-  // Request will notify |job_controller| when it's destructed.
-  // Thus |job_controller| is valid for the lifetime of the |this| Request.
+  // Request will notify `helper` when it's destructed.
+  // Thus `helper` is valid for the lifetime of the `this` Request.
   HttpStreamRequest(Helper* helper,
-                    HttpStreamRequest::Delegate* delegate,
                     WebSocketHandshakeStreamBase::CreateHelper*
                         websocket_handshake_stream_create_helper,
                     const NetLogWithSource& net_log,
diff --git a/net/http/transport_security_state_static.pins b/net/http/transport_security_state_static.pins
index dbbe554..c14c0b2 100644
--- a/net/http/transport_security_state_static.pins
+++ b/net/http/transport_security_state_static.pins
@@ -43,9 +43,9 @@
 #   hash function for preloaded entries again (we have already done so once).
 #
 
-# Last updated: 2024-05-16 13:17 UTC
+# Last updated: 2024-05-17 12:59 UTC
 PinsListTimestamp
-1715865434
+1715950760
 
 TestSPKI
 sha256/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
diff --git a/net/http/transport_security_state_static_pins.json b/net/http/transport_security_state_static_pins.json
index b7a55f0..1810943 100644
--- a/net/http/transport_security_state_static_pins.json
+++ b/net/http/transport_security_state_static_pins.json
@@ -31,7 +31,7 @@
 // the 'static_spki_hashes' and 'bad_static_spki_hashes' fields in 'pinsets'
 // refer to, and the timestamp at which the pins list was last updated.
 //
-// Last updated: 2024-05-16 13:17 UTC
+// Last updated: 2024-05-17 12:59 UTC
 //
 {
   "pinsets": [
diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc
index 02998fb..9747ba95 100644
--- a/net/url_request/url_request_http_job.cc
+++ b/net/url_request/url_request_http_job.cc
@@ -977,18 +977,9 @@
 
     num_cookie_lines_left_++;
 
-    // For the block_truncated parameter, the value shouldn't matter here
-    // because HTTP requests containing NULLs causes an error before this code
-    // can be reached and unpaired carriage returns and line feed characters
-    // cause truncation during HTTP header processing before reaching this
-    // point, so DCHECK this assumption and just pass true for this parameter.
-    DCHECK(cookie_string.find('\0') == std::string::npos);
-    DCHECK(cookie_string.find('\r') == std::string::npos);
-    DCHECK(cookie_string.find('\n') == std::string::npos);
     std::unique_ptr<CanonicalCookie> cookie = net::CanonicalCookie::Create(
         request_->url(), cookie_string, base::Time::Now(), server_time,
-        request_->cookie_partition_key(),
-        /*block_truncated=*/true, net::CookieSourceType::kHTTP,
+        request_->cookie_partition_key(), net::CookieSourceType::kHTTP,
         &returned_status);
 
     std::optional<CanonicalCookie> cookie_to_return = std::nullopt;
diff --git a/services/network/cookie_settings.cc b/services/network/cookie_settings.cc
index 009c21c..9ca58a6 100644
--- a/services/network/cookie_settings.cc
+++ b/services/network/cookie_settings.cc
@@ -140,12 +140,6 @@
 }
 
 CookieSettings::CookieSettings() {
-  if (base::FeatureList::IsEnabled(
-          content_settings::features::kHostIndexedMetadataGrants)) {
-    content_settings_ = EntryIndex();
-  } else {
-    content_settings_ = EntryMap();
-  }
   // Initialize content_settings_ until we receive data.
   for (auto type : GetContentSettingsTypes()) {
     set_content_settings(type, {});
@@ -162,15 +156,8 @@
          "`network::tpcd::metadata::Manager`.";
   CHECK(IsValidType(type)) << static_cast<int>(type);
 
-  // EntryIndex is only used if kHostIndexedMetadataGrants is enabled. Check
-  // holds_alternative<>, not the flag, because b/328475709 is changing the flag
-  // value during execution and leading to "bad variant access".
-  if (absl::holds_alternative<EntryIndex>(content_settings_)) {
-    absl::get<EntryIndex>(content_settings_)[type] =
-        content_settings::HostIndexedContentSettings::Create(settings);
-  } else {
-    absl::get<EntryMap>(content_settings_)[type] = settings;
-  }
+  content_settings_[type] =
+      content_settings::HostIndexedContentSettings::Create(settings);
 
   if (type == ContentSettingsType::COOKIES) {
     // Ensure that a default cookie setting is specified.
@@ -178,24 +165,11 @@
         settings.back().primary_pattern != ContentSettingsPattern::Wildcard() ||
         settings.back().secondary_pattern !=
             ContentSettingsPattern::Wildcard()) {
-      // EntryIndex is only used if kHostIndexedMetadataGrants is enabled. Check
-      // holds_alternative<>, not the flag, because b/328475709 is changing the
-      // flag value during execution and leading to "bad variant access".
-      if (absl::holds_alternative<EntryIndex>(content_settings_)) {
-        auto& index =
-            absl::get<EntryIndex>(content_settings_)[type].emplace_back(
-                content_settings::ProviderType::kDefaultProvider, false);
-        index.SetValue(ContentSettingsPattern::Wildcard(),
-                       ContentSettingsPattern::Wildcard(),
-                       base::Value(CONTENT_SETTING_ALLOW), /*metadata=*/{});
-      } else {
-        absl::get<EntryMap>(content_settings_)[type].emplace_back(
-            ContentSettingsPattern::Wildcard(),
-            ContentSettingsPattern::Wildcard(),
-            base::Value(CONTENT_SETTING_ALLOW),
-            content_settings::ProviderType::kDefaultProvider,
-            /*incognito=*/false);
-      }
+      auto& index = content_settings_[type].emplace_back(
+          content_settings::ProviderType::kDefaultProvider, false);
+      index.SetValue(ContentSettingsPattern::Wildcard(),
+                     ContentSettingsPattern::Wildcard(),
+                     base::Value(CONTENT_SETTING_ALLOW), /*metadata=*/{});
     }
   }
 }
@@ -206,25 +180,19 @@
     return DeleteCookiePredicate();
   }
   ContentSettingsForOneType settings;
-  // EntryIndex is only used if kHostIndexedMetadataGrants is enabled. Check
-  // holds_alternative<>, not the flag, because b/328475709 is changing the flag
-  // value during execution and leading to "bad variant access".
-  if (absl::holds_alternative<EntryIndex>(content_settings_)) {
-    // TODO(b/316530672): Ideally, clear on exit would work with the index
-    // directly to benefit from faster lookup times instead of iterating over
-    // a vector of content settings.
-    for (const auto& index :
-         GetHostIndexedContentSettings(ContentSettingsType::COOKIES)) {
-      for (const auto& entry : index) {
-        settings.emplace_back(entry.first.primary_pattern,
-                              entry.first.secondary_pattern,
-                              entry.second.value.Clone(), index.source(),
-                              *index.off_the_record(), entry.second.metadata);
-      }
+  // TODO(b/316530672): Ideally, clear on exit would work with the index
+  // directly to benefit from faster lookup times instead of iterating over
+  // a vector of content settings.
+  for (const auto& index :
+       GetHostIndexedContentSettings(ContentSettingsType::COOKIES)) {
+    for (const auto& entry : index) {
+      settings.emplace_back(entry.first.primary_pattern,
+                            entry.first.secondary_pattern,
+                            entry.second.value.Clone(), index.source(),
+                            *index.off_the_record(), entry.second.metadata);
     }
-  } else {
-    settings = GetContentSettings(ContentSettingsType::COOKIES);
   }
+
   return base::BindRepeating(&CookieSettings::ShouldDeleteCookieOnExit,
                              base::Unretained(this), std::move(settings));
 }
@@ -350,45 +318,22 @@
 }
 
 bool CookieSettings::HasSessionOnlyOrigins() const {
-  // EntryIndex is only used if kHostIndexedMetadataGrants is enabled. Check
-  // holds_alternative<>, not the flag, because b/328475709 is changing the flag
-  // value during execution and leading to "bad variant access".
-  if (absl::holds_alternative<EntryIndex>(content_settings_)) {
-    for (const auto& index :
-         GetHostIndexedContentSettings(ContentSettingsType::COOKIES)) {
-      for (const auto& entry : index) {
-        if (content_settings::ValueToContentSetting(entry.second.value) ==
-            CONTENT_SETTING_SESSION_ONLY) {
-          return true;
-        }
+  for (const auto& index :
+       GetHostIndexedContentSettings(ContentSettingsType::COOKIES)) {
+    for (const auto& entry : index) {
+      if (content_settings::ValueToContentSetting(entry.second.value) ==
+          CONTENT_SETTING_SESSION_ONLY) {
+        return true;
       }
     }
-    return false;
   }
-  return base::ranges::any_of(
-      GetContentSettings(ContentSettingsType::COOKIES), [](const auto& entry) {
-        return entry.GetContentSetting() == CONTENT_SETTING_SESSION_ONLY;
-      });
-}
-
-const ContentSettingsForOneType& CookieSettings::GetContentSettings(
-    ContentSettingsType type) const {
-  CHECK(IsValidType(type)) << "network::CookieSettings::GetContentSettings() "
-                              "called with invalid type "
-                           << type;
-  CHECK(absl::holds_alternative<EntryMap>(content_settings_))
-      << "network::CookieSettings::content_settings_ held an EntryIndex "
-         "instead of an EntryMap";
-  CHECK(absl::get<EntryMap>(content_settings_).contains(type))
-      << "network::CookieSettings::content_settings_ did not contain type "
-      << type;
-  return absl::get<EntryMap>(content_settings_).at(type);
+  return false;
 }
 
 const std::vector<content_settings::HostIndexedContentSettings>&
 CookieSettings::GetHostIndexedContentSettings(ContentSettingsType type) const {
   CHECK(IsValidType(type)) << static_cast<int>(type);
-  return absl::get<EntryIndex>(content_settings_).at(type);
+  return content_settings_.at(type);
 }
 
 ContentSetting CookieSettings::GetContentSetting(
@@ -405,33 +350,16 @@
                                                        secondary_url, info);
     }
   } else {
-    // EntryIndex is only used if kHostIndexedMetadataGrants is enabled. Check
-    // holds_alternative<>, not the flag, because b/328475709 is changing the
-    // flag value during execution and leading to "bad variant access".
-    if (absl::holds_alternative<EntryIndex>(content_settings_)) {
-      for (const auto& index : GetHostIndexedContentSettings(content_type)) {
-        const content_settings::RuleEntry* result =
-            index.Find(primary_url, secondary_url);
-        if (result) {
-          if (info) {
-            info->SetAttributes(*result);
-            info->source = content_settings::GetSettingSourceFromProviderType(
-                index.source());
-          }
-          return content_settings::ValueToContentSetting(result->second.value);
-        }
-      }
-    } else {
-      const ContentSettingPatternSource* result =
-          content_settings::FindContentSetting(
-              primary_url, secondary_url, GetContentSettings(content_type));
+    for (const auto& index : GetHostIndexedContentSettings(content_type)) {
+      const content_settings::RuleEntry* result =
+          index.Find(primary_url, secondary_url);
       if (result) {
         if (info) {
           info->SetAttributes(*result);
           info->source = content_settings::GetSettingSourceFromProviderType(
-              result->source);
+              index.source());
         }
-        return result->GetContentSetting();
+        return content_settings::ValueToContentSetting(result->second.value);
       }
     }
   }
diff --git a/services/network/cookie_settings.h b/services/network/cookie_settings.h
index 24cba5e..f555ea5 100644
--- a/services/network/cookie_settings.h
+++ b/services/network/cookie_settings.h
@@ -25,7 +25,6 @@
 #include "net/cookies/cookie_util.h"
 #include "net/first_party_sets/first_party_set_metadata.h"
 #include "services/network/public/cpp/session_cookie_delete_predicate.h"
-#include "third_party/abseil-cpp/absl/types/variant.h"
 
 class GURL;
 
@@ -178,9 +177,6 @@
 
   bool IsThirdPartyPhaseoutEnabled() const;
 
-  const ContentSettingsForOneType& GetContentSettings(
-      ContentSettingsType type) const;
-
   // Returns a vector of host-indexed content settings associated with the input
   // `type`. Each element of the vector corresponds to a Provider from
   // HostContentSettingsMap with the highest priority Provider first.
@@ -244,9 +240,7 @@
       std::vector<content_settings::HostIndexedContentSettings>>
       EntryIndex;
 
-  // Holds an EntryIndex if kHostIndexedMetadataGrants is enabled.
-  // Holds an EntryMap otherwise.
-  absl::variant<EntryMap, EntryIndex> content_settings_;
+  EntryIndex content_settings_;
 
   raw_ptr<tpcd::metadata::Manager> tpcd_metadata_manager_;
 };
diff --git a/services/network/cookie_settings_unittest.cc b/services/network/cookie_settings_unittest.cc
index 25b9ffc..55f9e5e0 100644
--- a/services/network/cookie_settings_unittest.cc
+++ b/services/network/cookie_settings_unittest.cc
@@ -119,7 +119,6 @@
 enum TestVariables {
   kGrantSource,
   kBlockSource,
-  kHostIndexedMetadataGrantsEnabled
 };
 
 class CookieSettingsTestBase : public testing::Test {
@@ -159,41 +158,15 @@
 // Default test class to be used by most tests. If you want to add a new
 // parameter, consider whether all test cases actually require this parameter
 // or whether it is sufficient to add a new subclass of CookieSettingsTestBase.
-class CookieSettingsTest
-    : public CookieSettingsTestBase,
-      public testing::WithParamInterface<
-          std::tuple</*kHostIndexedMetadataGrantsEnabled*/ bool>> {
- public:
-  CookieSettingsTest() {
-    std::vector<base::test::FeatureRefAndParams> enabled_features;
-    std::vector<base::test::FeatureRef> disabled_features;
-
-    if (IsHostIndexedMetadataGrantsEnabled()) {
-      enabled_features.push_back(
-          {content_settings::features::kHostIndexedMetadataGrants, {}});
-    } else {
-      disabled_features.push_back(
-          content_settings::features::kHostIndexedMetadataGrants);
-    }
-
-    feature_list_.InitWithFeaturesAndParameters(enabled_features,
-                                                disabled_features);
-  }
-
-  bool IsHostIndexedMetadataGrantsEnabled() const {
-    return std::get<0>(GetParam());
-  }
-};
+class CookieSettingsTest : public CookieSettingsTestBase {};
 
 // Parameterized class that tests combinations of StorageAccess grants and 3pcd
 // grants. Tests that don't need the whole range of combinations should create
 // their own parameterized subclasses.
-class CookieSettingsTestP
-    : public CookieSettingsTestBase,
-      public testing::WithParamInterface<
-          std::tuple</*kGrantSource*/ GrantSource,
-                     /*kBlockSource*/ BlockSource,
-                     /*kHostIndexedMetadataGrantsEnabled*/ bool>> {
+class CookieSettingsTestP : public CookieSettingsTestBase,
+                            public testing::WithParamInterface<
+                                std::tuple</*kGrantSource*/ GrantSource,
+                                           /*kBlockSource*/ BlockSource>> {
  public:
   CookieSettingsTestP() {
     std::vector<base::test::FeatureRefAndParams> enabled_features;
@@ -206,14 +179,6 @@
           {net::features::kThirdPartyStoragePartitioning, {}});
     }
 
-    if (IsHostIndexedMetadataGrantsEnabled()) {
-      enabled_features.push_back(
-          {content_settings::features::kHostIndexedMetadataGrants, {}});
-    } else {
-      disabled_features.push_back(
-          content_settings::features::kHostIndexedMetadataGrants);
-    }
-
     feature_list_.InitWithFeaturesAndParameters(enabled_features,
                                                 disabled_features);
   }
@@ -245,11 +210,6 @@
            GrantSource::kTopLevelStorageAccessGrantEligible;
   }
 
-  bool IsHostIndexedMetadataGrantsEnabled() const {
-    return std::get<TestVariables::kHostIndexedMetadataGrantsEnabled>(
-        GetParam());
-  }
-
   net::CookieSettingOverrides GetCookieSettingOverrides() const {
     net::CookieSettingOverrides overrides;
     if (IsStorageAccessGrantEligible()) {
@@ -305,14 +265,14 @@
   }
 };
 
-TEST_P(CookieSettingsTest, GetCookieSettingDefault) {
+TEST_F(CookieSettingsTest, GetCookieSettingDefault) {
   CookieSettings settings;
   EXPECT_EQ(settings.GetCookieSetting(GURL(kURL), GURL(kURL),
                                       net::CookieSettingOverrides(), nullptr),
             CONTENT_SETTING_ALLOW);
 }
 
-TEST_P(CookieSettingsTest, GetCookieSetting) {
+TEST_F(CookieSettingsTest, GetCookieSetting) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -322,7 +282,7 @@
             CONTENT_SETTING_BLOCK);
 }
 
-TEST_P(CookieSettingsTest, GetCookieSettingMultipleProviders) {
+TEST_F(CookieSettingsTest, GetCookieSettingMultipleProviders) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -342,7 +302,7 @@
             CONTENT_SETTING_BLOCK);
 }
 
-TEST_P(CookieSettingsTest, GetCookieSettingOtrProviders) {
+TEST_F(CookieSettingsTest, GetCookieSettingOtrProviders) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -383,7 +343,7 @@
             CONTENT_SETTING_BLOCK);
 }
 
-TEST_P(CookieSettingsTest, GetCookieSettingGetsFirstSetting) {
+TEST_F(CookieSettingsTest, GetCookieSettingGetsFirstSetting) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -394,7 +354,7 @@
             CONTENT_SETTING_BLOCK);
 }
 
-TEST_P(CookieSettingsTest, GetCookieSettingDontBlockThirdParty) {
+TEST_F(CookieSettingsTest, GetCookieSettingDontBlockThirdParty) {
   base::HistogramTester histogram_tester;
   histogram_tester.ExpectTotalCount(kAllowedRequestsHistogram, 0);
 
@@ -411,7 +371,7 @@
       net::cookie_util::StorageAccessResult::ACCESS_ALLOWED, 1);
 }
 
-TEST_P(CookieSettingsTest, GetCookieSettingBlockThirdParty) {
+TEST_F(CookieSettingsTest, GetCookieSettingBlockThirdParty) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -438,7 +398,7 @@
             SettingWithSaaOverride(CONTENT_SETTING_SESSION_ONLY));
 }
 
-TEST_P(CookieSettingsTest, GetCookieSettingDontBlockThirdPartyWithException) {
+TEST_F(CookieSettingsTest, GetCookieSettingDontBlockThirdPartyWithException) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -790,12 +750,12 @@
             CONTENT_SETTING_BLOCK);
 }
 
-TEST_P(CookieSettingsTest, CreateDeleteCookieOnExitPredicateNoSettings) {
+TEST_F(CookieSettingsTest, CreateDeleteCookieOnExitPredicateNoSettings) {
   CookieSettings settings;
   EXPECT_FALSE(settings.CreateDeleteCookieOnExitPredicate());
 }
 
-TEST_P(CookieSettingsTest, CreateDeleteCookieOnExitPredicateNoSessionOnly) {
+TEST_F(CookieSettingsTest, CreateDeleteCookieOnExitPredicateNoSessionOnly) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -803,7 +763,7 @@
   EXPECT_FALSE(settings.CreateDeleteCookieOnExitPredicate());
 }
 
-TEST_P(CookieSettingsTest, CreateDeleteCookieOnExitPredicateSessionOnly) {
+TEST_F(CookieSettingsTest, CreateDeleteCookieOnExitPredicateSessionOnly) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -812,7 +772,7 @@
       "foo.com", net::CookieSourceScheme::kNonSecure));
 }
 
-TEST_P(CookieSettingsTest, CreateDeleteCookieOnExitPredicateExceptionOnly) {
+TEST_F(CookieSettingsTest, CreateDeleteCookieOnExitPredicateExceptionOnly) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -824,7 +784,7 @@
       "other.com", net::CookieSourceScheme::kSecure));
 }
 
-TEST_P(CookieSettingsTest, CreateDeleteCookieOnExitPredicateAllow) {
+TEST_F(CookieSettingsTest, CreateDeleteCookieOnExitPredicateAllow) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::COOKIES,
@@ -834,7 +794,7 @@
       "foo.com", net::CookieSourceScheme::kNonSecure));
 }
 
-TEST_P(CookieSettingsTest, GetCookieSettingSecureOriginCookiesAllowed) {
+TEST_F(CookieSettingsTest, GetCookieSettingSecureOriginCookiesAllowed) {
   CookieSettings settings;
   settings.set_secure_origin_cookies_allowed_schemes({"chrome"});
   settings.set_block_third_party_cookies(true);
@@ -858,7 +818,7 @@
       CONTENT_SETTING_BLOCK);
 }
 
-TEST_P(CookieSettingsTest, GetCookieSettingWithThirdPartyCookiesAllowedScheme) {
+TEST_F(CookieSettingsTest, GetCookieSettingWithThirdPartyCookiesAllowedScheme) {
   CookieSettings settings;
   settings.set_third_party_cookies_allowed_schemes({"chrome-extension"});
   settings.set_block_third_party_cookies(true);
@@ -882,7 +842,7 @@
       CONTENT_SETTING_BLOCK);
 }
 
-TEST_P(CookieSettingsTest, GetCookieSettingMatchingSchemeCookiesAllowed) {
+TEST_F(CookieSettingsTest, GetCookieSettingMatchingSchemeCookiesAllowed) {
   CookieSettings settings;
   settings.set_matching_scheme_cookies_allowed_schemes({"chrome-extension"});
   settings.set_block_third_party_cookies(true);
@@ -906,7 +866,7 @@
       CONTENT_SETTING_BLOCK);
 }
 
-TEST_P(CookieSettingsTest, LegacyCookieAccessDefault) {
+TEST_F(CookieSettingsTest, LegacyCookieAccessDefault) {
   CookieSettings settings;
 
   EXPECT_EQ(settings.GetSettingForLegacyCookieAccess(kDomain),
@@ -915,7 +875,7 @@
             settings.GetCookieAccessSemanticsForDomain(kDomain));
 }
 
-TEST_P(CookieSettingsTest, CookieAccessSemanticsForDomain) {
+TEST_F(CookieSettingsTest, CookieAccessSemanticsForDomain) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::LEGACY_COOKIE_ACCESS,
@@ -937,7 +897,7 @@
   }
 }
 
-TEST_P(CookieSettingsTest, CookieAccessSemanticsForDomainWithWildcard) {
+TEST_F(CookieSettingsTest, CookieAccessSemanticsForDomainWithWildcard) {
   CookieSettings settings;
   settings.set_content_settings(
       ContentSettingsType::LEGACY_COOKIE_ACCESS,
@@ -1497,7 +1457,7 @@
   }
 }
 
-TEST_P(CookieSettingsTest,
+TEST_F(CookieSettingsTest,
        AnnotateAndMoveUserBlockedCookies_CrossSiteEmbed_3PCAllowed) {
   CookieSettings settings;
   settings.set_block_third_party_cookies(false);
@@ -1540,7 +1500,7 @@
                   _, _, _))));
 }
 
-TEST_P(CookieSettingsTest,
+TEST_F(CookieSettingsTest,
        AnnotateAndMoveUserBlockedCookies_SameSiteEmbed_3PCAllowed) {
   CookieSettings settings;
   settings.set_block_third_party_cookies(false);
@@ -1560,18 +1520,22 @@
       net::CookieSettingOverrides(), maybe_included_cookies, excluded_cookies));
 
   // Verify that the allowed cookie does not have the 3PC warning reason.
-  EXPECT_THAT(maybe_included_cookies,
-              ElementsAre(MatchesCookieWithAccessResult(
-                  net::MatchesCookieWithName("cookie"),
-                  MatchesCookieAccessResult(
-                      AllOf(net::IsInclude(),
-                            Not(net::HasWarningReason(
-                                net::CookieInclusionStatus::WarningReason::
-                                    WARN_THIRD_PARTY_PHASEOUT))),
-                      _, _, _))));
+  EXPECT_THAT(
+      maybe_included_cookies,
+      ElementsAre(MatchesCookieWithAccessResult(
+          net::MatchesCookieWithName("cookie"),
+          MatchesCookieAccessResult(
+              AllOf(net::IsInclude(),
+                    Not(net::HasWarningReason(
+                        net::CookieInclusionStatus::WarningReason::
+                            WARN_THIRD_PARTY_PHASEOUT)),
+                    net::HasExactlyExemptionReason(
+                        net::CookieInclusionStatus::ExemptionReason::kNone)),
+              _, _, _))));
 
   // This is a third-party context, even though the request URL and the
   // top-frame URL are same-site with each other.
+  maybe_included_cookies[0].access_result.status = net::CookieInclusionStatus();
   EXPECT_TRUE(settings.AnnotateAndMoveUserBlockedCookies(
       GURL(kSubDomainURL), net::SiteForCookies(), &origin,
       net::FirstPartySetMetadata(
@@ -1592,6 +1556,88 @@
 }
 
 TEST_P(CookieSettingsTestP,
+       AnnotateAndMoveUserBlockedCookies_SameSiteEmbed_FirstPartyContext) {
+  CookieSettings settings;
+  settings.set_block_third_party_cookies(true);
+  if (IsTrackingProtectionEnabledFor3pcd()) {
+    settings.set_tracking_protection_enabled_for_3pcd(true);
+  }
+
+  net::CookieAccessResultList maybe_included_cookies = {
+      {*MakeCanonicalSameSiteNoneCookie("third_party", kURL), {}},
+      {*MakeCanonicalCookie("cookie", kURL), {}}};
+  net::CookieAccessResultList excluded_cookies = {
+      {*MakeCanonicalSameSiteNoneCookie("excluded_other", kURL),
+       // The ExclusionReason below is irrelevant, as long as there is
+       // one.
+       net::CookieAccessResult(net::CookieInclusionStatus(
+           net::CookieInclusionStatus::ExclusionReason::EXCLUDE_SECURE_ONLY))},
+      {*MakeCanonicalCookie("excluded_samesitelax", kURL),
+       // The ExclusionReason below is irrelevant, as long as there is
+       // one.
+       net::CookieAccessResult(net::CookieInclusionStatus(
+           net::CookieInclusionStatus::ExclusionReason::EXCLUDE_SECURE_ONLY))},
+  };
+  url::Origin origin = url::Origin::Create(GURL(kURL));
+
+  // Note that `url` does not match the `top_frame_origin`.
+  EXPECT_TRUE(settings.AnnotateAndMoveUserBlockedCookies(
+      GURL(kURL), net::SiteForCookies::FromUrl(GURL(kURL)), &origin,
+      net::FirstPartySetMetadata(
+          /*frame_entry=*/nullptr,
+          /*top_frame_entry=*/nullptr),
+      GetCookieSettingOverrides(), maybe_included_cookies, excluded_cookies));
+
+  EXPECT_THAT(
+      maybe_included_cookies,
+      UnorderedElementsAre(
+          MatchesCookieWithAccessResult(
+              net::MatchesCookieWithName("cookie"),
+              // This cookie really ought to be excluded based on SameSite
+              // rules, but those are not enforced by CookieSettings.
+              MatchesCookieAccessResult(
+                  AllOf(
+                      net::IsInclude(),
+                      Not(net::HasWarningReason(
+                          net::CookieInclusionStatus::WarningReason::
+                              WARN_THIRD_PARTY_PHASEOUT)),
+                      net::HasExactlyExemptionReason(
+                          net::CookieInclusionStatus::ExemptionReason::kNone)),
+                  _, _, _)),
+          MatchesCookieWithAccessResult(
+              net::MatchesCookieWithName("third_party"),
+              MatchesCookieAccessResult(
+                  AllOf(
+                      net::IsInclude(),
+                      Not(net::HasWarningReason(
+                          net::CookieInclusionStatus::WarningReason::
+                              WARN_THIRD_PARTY_PHASEOUT)),
+                      net::HasExactlyExemptionReason(
+                          net::CookieInclusionStatus::ExemptionReason::kNone)),
+                  _, _, _))));
+
+  EXPECT_THAT(
+      excluded_cookies,
+      UnorderedElementsAre(
+          MatchesCookieWithAccessResult(
+              net::MatchesCookieWithName("excluded_other"),
+              MatchesCookieAccessResult(
+                  HasExactlyExclusionReasonsForTesting(
+                      std::vector<net::CookieInclusionStatus::ExclusionReason>{
+                          net::CookieInclusionStatus::ExclusionReason::
+                              EXCLUDE_SECURE_ONLY}),
+                  _, _, _)),
+          MatchesCookieWithAccessResult(
+              net::MatchesCookieWithName("excluded_samesitelax"),
+              MatchesCookieAccessResult(
+                  HasExactlyExclusionReasonsForTesting(
+                      std::vector<net::CookieInclusionStatus::ExclusionReason>{
+                          net::CookieInclusionStatus::ExclusionReason::
+                              EXCLUDE_SECURE_ONLY}),
+                  _, _, _))));
+}
+
+TEST_P(CookieSettingsTestP,
        AnnotateAndMoveUserBlockedCookies_SameSiteEmbed_ThirdPartyContext) {
   CookieSettings settings;
   settings.set_block_third_party_cookies(true);
@@ -1870,7 +1916,7 @@
 
 }  // namespace
 
-TEST_P(CookieSettingsTest,
+TEST_F(CookieSettingsTest,
        AnnotateAndMoveUserBlockedCookies_PartitionedCookies) {
   CookieSettings settings;
 
@@ -1965,11 +2011,6 @@
   EXPECT_THAT(excluded_cookies, IsEmpty());
 }
 
-INSTANTIATE_TEST_SUITE_P(
-    /* no prefix */,
-    CookieSettingsTest,
-    testing::Combine(testing::Bool()));
-
 // NOTE: These tests will fail if their FINAL name is of length greater than 256
 // characters. Thus, try to avoid (unnecessary) generalized parameterization
 // when possible.
@@ -1981,9 +2022,7 @@
       << "GrantSource_"
       << std::get<TestVariables::kGrantSource>(info.param)
       << "_BlockSource_"
-      << std::get<TestVariables::kBlockSource>(info.param)
-      << "_HostIndexed_"
-      << std::get<TestVariables::kHostIndexedMetadataGrantsEnabled>(info.param);
+      << std::get<TestVariables::kBlockSource>(info.param);
   // clang-format on
   return custom_test_name.str();
 }
@@ -1994,8 +2033,7 @@
     testing::Combine(testing::Range(GrantSource::kNoneGranted,
                                     GrantSource::kGrantSourceCount),
                      testing::Range(BlockSource::kNoneBlocked,
-                                    BlockSource::kBlockSourceCount),
-                     testing::Bool()),
+                                    BlockSource::kBlockSourceCount)),
     CustomTestName);
 
 class CookieSettingsTpcdMetadataGrantsTest
diff --git a/services/network/restricted_cookie_manager.cc b/services/network/restricted_cookie_manager.cc
index d2c94fe..d217cd8 100644
--- a/services/network/restricted_cookie_manager.cc
+++ b/services/network/restricted_cookie_manager.cc
@@ -954,8 +954,7 @@
   std::unique_ptr<net::CanonicalCookie> parsed_cookie =
       net::CanonicalCookie::Create(
           url, cookie, base::Time::Now(), /*server_time=*/std::nullopt,
-          cookie_partition_key_,
-          /*block_truncated=*/true, net::CookieSourceType::kScript, &status);
+          cookie_partition_key_, net::CookieSourceType::kScript, &status);
   if (!parsed_cookie) {
     if (cookie_observer_) {
       std::vector<network::mojom::CookieOrLineWithAccessResultPtr>
diff --git a/services/network/tpcd/metadata/manager.cc b/services/network/tpcd/metadata/manager.cc
index ee75857..b7b1617 100644
--- a/services/network/tpcd/metadata/manager.cc
+++ b/services/network/tpcd/metadata/manager.cc
@@ -16,29 +16,17 @@
 
 namespace network::tpcd::metadata {
 
-Manager::Manager() {
-  if (base::FeatureList::IsEnabled(
-          content_settings::features::kHostIndexedMetadataGrants)) {
-    grants_ = content_settings::HostIndexedContentSettings();
-  } else {
-    grants_ = ContentSettingsForOneType();
-  }
-}
+Manager::Manager() = default;
 
 Manager::~Manager() = default;
 
 void Manager::SetGrants(const ContentSettingsForOneType& grants) {
-  if (absl::holds_alternative<content_settings::HostIndexedContentSettings>(
-          grants_)) {
-    auto indices = content_settings::HostIndexedContentSettings::Create(grants);
-    if (indices.empty()) {
-      grants_ = content_settings::HostIndexedContentSettings();
-    } else {
-      CHECK_EQ(indices.size(), 1u);
-      grants_ = std::move(indices.front());
-    }
+  auto indices = content_settings::HostIndexedContentSettings::Create(grants);
+  if (indices.empty()) {
+    grants_ = content_settings::HostIndexedContentSettings();
   } else {
-    grants_ = grants;
+    CHECK_EQ(indices.size(), 1u);
+    grants_ = std::move(indices.front());
   }
 }
 
@@ -55,13 +43,7 @@
     return ContentSettingsForOneType();
   }
 
-  if (absl::holds_alternative<content_settings::HostIndexedContentSettings>(
-          grants_)) {
-    return ManagerBase::GetContentSettingForOneType(
-        absl::get<content_settings::HostIndexedContentSettings>(grants_));
-  }
-
-  return absl::get<ContentSettingsForOneType>(grants_);
+  return ManagerBase::GetContentSettingForOneType(grants_);
 }
 
 }  // namespace network::tpcd::metadata
diff --git a/services/network/tpcd/metadata/manager.h b/services/network/tpcd/metadata/manager.h
index 241c76ef..80380b7 100644
--- a/services/network/tpcd/metadata/manager.h
+++ b/services/network/tpcd/metadata/manager.h
@@ -35,13 +35,7 @@
       content_settings::SettingInfo* out_info) const;
 
  private:
-  typedef absl::variant<ContentSettingsForOneType,
-                        content_settings::HostIndexedContentSettings>
-      Grants;
-  // grants_ holds a `content_settings::HostIndexedContentSettings` if
-  // `IsHostIndexedMetadataGrantsEnabled()` is true, otherwise, it holds a
-  // `ContentSettingsForOneType`.
-  Grants grants_;
+  content_settings::HostIndexedContentSettings grants_;
 };
 
 }  // namespace network::tpcd::metadata
diff --git a/testing/buildbot/filters/android.emulator_13.chrome_public_test_apk.filter b/testing/buildbot/filters/android.emulator_13.chrome_public_test_apk.filter
index 6a84e1e..1380305e 100644
--- a/testing/buildbot/filters/android.emulator_13.chrome_public_test_apk.filter
+++ b/testing/buildbot/filters/android.emulator_13.chrome_public_test_apk.filter
@@ -114,3 +114,6 @@
 
 # crbug.com/339896162
 -org.chromium.chrome.browser.signin.SigninFirstRunFragmentTest.testContinueButtonWithAnAccountOtherThanTheSignedInAccount
+
+# crbug.com/341168292
+-org.chromium.chrome.browser.quick_delete.QuickDeleteControllerTest.*
diff --git a/testing/buildbot/filters/ios.use_blink.components_unittests.filter b/testing/buildbot/filters/ios.use_blink.components_unittests.filter
index 184cfa8..095aa36 100644
--- a/testing/buildbot/filters/ios.use_blink.components_unittests.filter
+++ b/testing/buildbot/filters/ios.use_blink.components_unittests.filter
@@ -8,6 +8,7 @@
 -AutofillAcrossIframesTest.Resolve
 -AutofillAcrossIframesTest.SetAndGetParent
 -AutofillAcrossIframesTest.TriggerExtractionInFrame
+-AutofillAcrossIframesTest.FillForm
 
 # TODO(crbug.com/40945935): Test currently fails on iOS blink.
 -AutofillAgentTests.OnFormDataFilledTestWithFrameMessagingUsingRendererIDs
@@ -25,6 +26,8 @@
 -AutofillAgentTests.showAutofillPopup_PreferCustomIconForCreditCardSuggestions
 -AutofillAgentTests.showAutofillPopup_ShowIconForCreditCardSuggestionsOnly
 -AutofillAgentTests.showAutofillPopup_ShowVirtualCards
+-AutofillAgentTests.FillSpecificFormField_UpdateWithResults_WhenFailure
+-AutofillAgentTests.FillSpecificFormField_UpdateWithResults_WhenSuccess
 
 # TODO(crbug.com/339492594): The below tests have been failing since
 # https://crrev.com/c/5496051. It looks like it's missing a
@@ -236,3 +239,10 @@
 -UkmUrlRecorderTest.IgnoreDownloadUrl
 -UkmUrlRecorderTest.IgnoreUrlInSubframe
 -UkmUrlRecorderTest.InitialUrl
+
+# TODO(crbug.com/341124496): Test currently fails on iOS Blink.
+-ProfileInteractionManagerTestSuiteInstantiation/ProfileInteractionManagerTest.OnPageActivationComputesLevelAndDecision/FPFDisabled_UserOptIn_Exception
+-ProfileInteractionManagerTestSuiteInstantiation/ProfileInteractionManagerTest.OnPageActivationComputesLevelAndDecision/FPFDisabled_UserOptOut_Exception
+-ProfileInteractionManagerTestSuiteInstantiation/ProfileInteractionManagerTest.OnPageActivationComputesLevelAndDecision/FPFEnabled_UserOptIn_Exception
+-ProfileInteractionManagerTestSuiteInstantiation/ProfileInteractionManagerTest.OnPageActivationComputesLevelAndDecision/FPFEnabled_UserOptIn_NoException
+-ProfileInteractionManagerTestSuiteInstantiation/ProfileInteractionManagerTest.OnPageActivationComputesLevelAndDecision/FPFEnabled_UserOptOut_Exception
diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variations/fieldtrial_testing_config.json
index 0aa9c71..9dda856 100644
--- a/testing/variations/fieldtrial_testing_config.json
+++ b/testing/variations/fieldtrial_testing_config.json
@@ -9896,6 +9896,21 @@
             ]
         }
     ],
+    "IOSDownloadNoUIUpdateInBackground": [
+        {
+            "platforms": [
+                "ios"
+            ],
+            "experiments": [
+                {
+                    "name": "Enabled",
+                    "enable_features": [
+                        "IOSDownloadNoUIUpdateInBackground"
+                    ]
+                }
+            ]
+        }
+    ],
     "IOSEnableColorLensAndVoiceIconsInHomeScreenWidget": [
         {
             "platforms": [
diff --git a/third_party/angle b/third_party/angle
index b71fe1c..8f6b295 160000
--- a/third_party/angle
+++ b/third_party/angle
@@ -1 +1 @@
-Subproject commit b71fe1c594db7bca182308c23314f11d2876e4eb
+Subproject commit 8f6b295aac73fc2c6a2954778b6c701b9805ebbd
diff --git a/third_party/blink/perf_tests/accessibility/many-nodes-toggle-aria-hidden.html b/third_party/blink/perf_tests/accessibility/many-nodes-toggle-aria-hidden.html
new file mode 100644
index 0000000..e9298a9
--- /dev/null
+++ b/third_party/blink/perf_tests/accessibility/many-nodes-toggle-aria-hidden.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <style>
+    #root1, #root2 {
+        width: 100%;
+        padding: 5px;
+    }
+    .child {
+        border: 1px solid black;
+        height: 10px;
+        width: 10px;
+        margin: -1px;
+        display: inline-block;
+    }
+  </style>
+  <script src="../resources/runner.js"></script>
+</head>
+<body>
+<div id="container"></div>
+</body>
+
+<script>
+
+var isDone = false;
+var startTime;
+var container = document.getElementById('container');
+
+function runTest() {
+  if (startTime) {
+    PerfTestRunner.measureValueAsync(PerfTestRunner.now() - startTime);
+    PerfTestRunner.addRunTestEndMarker();
+  }
+  if (!isDone) {
+    PerfTestRunner.addRunTestStartMarker();
+    startTime = PerfTestRunner.now();
+
+
+    if (container.innerHTML =='')
+      generateAllContent();
+
+    setTimeout(toggleDisplay, 250);
+
+    // Re-run the same test.
+    // Wait to allow the asynchronous accessibility code that's
+    // covered by traceEventsToMeasure to have a chance to run.
+    setTimeout(runTest, 2500);
+  }
+}
+
+function generateAllContent() {
+  const root1 = container.appendChild(document.createElement('div'));
+  root1.id = 'root1';
+
+  const root2 = container.appendChild(document.createElement('div'));
+  root2.id = 'root2';
+
+  for (let i = 0; i < 50; i++) {
+    const child1 = generateNodes(12, "blue");
+    root1.appendChild(child1);
+    const child2 = generateNodes(12, "green");
+    root2.appendChild(child2);
+  }
+}
+
+// Recursively add layers of descendants.
+function generateNodes(depth, color) {
+  if (depth === 0)
+    return;
+
+  const node = document.createElement("div");
+  node.className = "child";
+  node.style.backgroundColor = color;
+  depth--;
+  const child = generateNodes(depth, color);
+  if(child) {
+    node.appendChild(child);
+  }
+  return node;
+}
+
+function toggleDisplay(text) {
+  window.hideTop = !window.hideTop;
+  document.getElementById("root1").setAttribute('aria-hidden', window.hideTop);
+  document.getElementById("root2").setAttribute('aria-hidden', !window.hideTop);
+}
+
+PerfTestRunner.startMeasureValuesAsync({
+  description: 'Test accessibility performance when toggling display:none/block on large subtrees.',
+  unit: 'ms',
+  done: function () {
+    isDone = true;
+  },
+  run: function() {
+    runTest();
+  },
+  iterationCount: 6,
+  tracingCategories: 'accessibility',
+  traceEventsToMeasure: [
+    'ProcessDeferredAccessibilityEvents2',
+    'UpdateTreeIfNeeded',
+    'GetUpdatesAndEventsForSerialization',
+    'RenderAccessibilityImpl::SendPendingAccessibilityEvents',
+    'BrowserAccessibilityManager::OnAccessibilityEvents',
+    'SerializeLocationChanges',
+    "BrowserAccessibilityManager::OnLocationChanges"
+  ]
+});
+</script>
+
+</html>
diff --git a/third_party/blink/renderer/core/layout/anchor_evaluator_impl.h b/third_party/blink/renderer/core/layout/anchor_evaluator_impl.h
index 2b4211c..89a222c 100644
--- a/third_party/blink/renderer/core/layout/anchor_evaluator_impl.h
+++ b/third_party/blink/renderer/core/layout/anchor_evaluator_impl.h
@@ -318,8 +318,9 @@
   std::optional<PhysicalOffset> ComputeAnchorCenterOffsets(
       const ComputedStyleBuilder&) override;
 
- private:
   const LogicalAnchorQuery* AnchorQuery() const;
+
+ private:
   const LogicalAnchorReference* ResolveAnchorReference(
       const AnchorSpecifierValue& anchor_specifier,
       const ScopedCSSName* position_anchor) const;
diff --git a/third_party/blink/renderer/core/layout/anchor_position_scroll_data.cc b/third_party/blink/renderer/core/layout/anchor_position_scroll_data.cc
index aea54fe..91f3a5d 100644
--- a/third_party/blink/renderer/core/layout/anchor_position_scroll_data.cc
+++ b/third_party/blink/renderer/core/layout/anchor_position_scroll_data.cc
@@ -23,7 +23,7 @@
                                 : box.AcceptableImplicitAnchor();
 }
 
-const Vector<NonOverflowingScrollRange>* GetNonOverflowingScrollRanges(
+const HeapVector<NonOverflowingScrollRange>* GetNonOverflowingScrollRanges(
     const LayoutObject* layout_object) {
   if (!layout_object || !layout_object->IsOutOfFlowPositioned()) {
     return nullptr;
@@ -56,6 +56,15 @@
   return anchored_element_->GetAnchorPositionScrollData() == this;
 }
 
+gfx::Vector2dF AnchorPositionScrollData::TotalOffset(
+    const LayoutObject& anchor_object) const {
+  if (anchor_object == default_anchor_adjustment_data_.anchor_object) {
+    return default_anchor_adjustment_data_.TotalOffset();
+  }
+
+  return ComputeAdjustmentContainersData(anchor_object).TotalOffset();
+}
+
 AnchorPositionScrollData::AdjustmentData
 AnchorPositionScrollData::ComputeAdjustmentContainersData(
     const LayoutObject& anchor) const {
@@ -71,6 +80,7 @@
     return container;
   };
 
+  result.anchor_object = &anchor;
   const auto* bounding_container = container_ignore_layout_view_for_fixed_pos(
       *anchored_element_->GetLayoutObject());
 
@@ -174,31 +184,24 @@
   AdjustmentData new_adjustment_data = ComputeDefaultAnchorAdjustmentData();
 
   SnapshotDiff diff = SnapshotDiff::kNone;
-  if (AdjustmentContainerIds() !=
-      new_adjustment_data.adjustment_container_ids) {
+  if (default_anchor_adjustment_data_.anchor_object !=
+          new_adjustment_data.anchor_object ||
+      AdjustmentContainerIds() !=
+          new_adjustment_data.adjustment_container_ids ||
+      !IsFallbackPositionValid(new_adjustment_data)) {
     diff = SnapshotDiff::kScrollersOrFallbackPosition;
-  } else {
-    const bool anchor_scrolled =
-        TotalOffset() !=
-            new_adjustment_data.accumulated_adjustment +
-                new_adjustment_data.anchored_element_container_scroll_offset ||
-        AccumulatedAdjustmentScrollOrigin() !=
-            new_adjustment_data.accumulated_adjustment_scroll_origin;
-    if (anchor_scrolled &&
-        !IsFallbackPositionValid(
-            new_adjustment_data.accumulated_adjustment,
-            new_adjustment_data.anchored_element_container_scroll_offset)) {
-      diff = SnapshotDiff::kScrollersOrFallbackPosition;
-    } else if (anchor_scrolled ||
-               NeedsScrollAdjustmentInX() !=
-                   new_adjustment_data.needs_scroll_adjustment_in_x ||
-               NeedsScrollAdjustmentInY() !=
-                   new_adjustment_data.needs_scroll_adjustment_in_y) {
-      // When needs_scroll_adjustment_in_x/y changes, we still need to update
-      // paint properties so that compositor can calculate the translation
-      // offset correctly.
-      diff = SnapshotDiff::kOffsetOnly;
-    }
+  } else if (NeedsScrollAdjustmentInX() !=
+                 new_adjustment_data.needs_scroll_adjustment_in_x ||
+             NeedsScrollAdjustmentInY() !=
+                 new_adjustment_data.needs_scroll_adjustment_in_y ||
+             default_anchor_adjustment_data_.TotalOffset() !=
+                 new_adjustment_data.TotalOffset() ||
+             AccumulatedAdjustmentScrollOrigin() !=
+                 new_adjustment_data.accumulated_adjustment_scroll_origin) {
+    // When needs_scroll_adjustment_in_x/y changes, we still need to update
+    // paint properties so that compositor can calculate the translation
+    // offset correctly.
+    diff = SnapshotDiff::kOffsetOnly;
   }
 
   if (update && diff != SnapshotDiff::kNone) {
@@ -209,9 +212,8 @@
 }
 
 bool AnchorPositionScrollData::IsFallbackPositionValid(
-    const gfx::Vector2dF& new_accumulated_adjustment,
-    const gfx::Vector2dF& new_anchored_element_container_scroll_offset) const {
-  const Vector<NonOverflowingScrollRange>* non_overflowing_scroll_ranges =
+    const AdjustmentData& new_adjustment_data) const {
+  const HeapVector<NonOverflowingScrollRange>* non_overflowing_scroll_ranges =
       GetNonOverflowingScrollRanges(anchored_element_->GetLayoutObject());
   if (!non_overflowing_scroll_ranges ||
       non_overflowing_scroll_ranges->empty()) {
@@ -220,39 +222,31 @@
 
   for (const NonOverflowingScrollRange& range :
        *non_overflowing_scroll_ranges) {
-    if (range.Contains(TotalOffset()) !=
-        range.Contains(new_accumulated_adjustment +
-                       new_anchored_element_container_scroll_offset)) {
-      return false;
+    if (range.anchor_object != new_adjustment_data.anchor_object) {
+      // The range was calculated with a different anchor object. Check if the
+      // anchored element (which previously overflowed with the try option that
+      // specified that anchor) will become non-overflowing with that option.
+      if (range.Contains(TotalOffset(*range.anchor_object))) {
+        return false;
+      }
+    } else {
+      // The range was calculated with the same anchor object as this data.
+      // Check if the overflow status of the anchored element will change with
+      // the new total offset.
+      if (range.Contains(default_anchor_adjustment_data_.TotalOffset()) !=
+          range.Contains(new_adjustment_data.TotalOffset())) {
+        return false;
+      }
     }
   }
   return true;
 }
 
 void AnchorPositionScrollData::UpdateSnapshot() {
-  if (!IsActive()) {
-    return;
-  }
-
-  SnapshotDiff diff = TakeAndCompareSnapshot(true /* update */);
-  switch (diff) {
-    case SnapshotDiff::kNone:
-      return;
-    case SnapshotDiff::kOffsetOnly:
-      InvalidatePaint();
-      return;
-    case SnapshotDiff::kScrollersOrFallbackPosition:
-      InvalidateLayoutAndPaint();
-      return;
-  }
+  ValidateSnapshot();
 }
 
 bool AnchorPositionScrollData::ValidateSnapshot() {
-  if (is_snapshot_validated_) {
-    return true;
-  }
-  is_snapshot_validated_ = true;
-
   // If this AnchorPositionScrollData is detached in the previous style recalc,
   // we no longer need to validate it.
   if (!IsActive()) {
@@ -262,10 +256,9 @@
   SnapshotDiff diff = TakeAndCompareSnapshot(true /* update */);
   switch (diff) {
     case SnapshotDiff::kNone:
+      return true;
     case SnapshotDiff::kOffsetOnly:
-      // We don't need to rewind to layout recalc for offset-only diff, as this
-      // function is called at LayoutClean during lifecycle update, and
-      // offset-only diff only needs paint update.
+      InvalidatePaint();
       return true;
     case SnapshotDiff::kScrollersOrFallbackPosition:
       InvalidateLayoutAndPaint();
@@ -304,6 +297,7 @@
 
 void AnchorPositionScrollData::Trace(Visitor* visitor) const {
   visitor->Trace(anchored_element_);
+  visitor->Trace(default_anchor_adjustment_data_);
   visitor->Trace(position_visibility_observer_);
   ScrollSnapshotClient::Trace(visitor);
   ElementRareDataField::Trace(visitor);
diff --git a/third_party/blink/renderer/core/layout/anchor_position_scroll_data.h b/third_party/blink/renderer/core/layout/anchor_position_scroll_data.h
index 04c76e4..8d59a8a 100644
--- a/third_party/blink/renderer/core/layout/anchor_position_scroll_data.h
+++ b/third_party/blink/renderer/core/layout/anchor_position_scroll_data.h
@@ -66,11 +66,20 @@
     return default_anchor_adjustment_data_.needs_scroll_adjustment_in_y;
   }
 
-  gfx::Vector2dF TotalOffset() const {
-    return default_anchor_adjustment_data_.accumulated_adjustment +
-           default_anchor_adjustment_data_
-               .anchored_element_container_scroll_offset;
-  }
+  // Returns the total offset of the anchored element from the layout location
+  // due to scroll and other adjustments from the containers between the given
+  // `anchor_object` and the anchored element and the scroll container of the
+  // anchored element itself. There are two cases:
+  // 1. If `anchor_object` is the anchor object used to create the snapshot,
+  //    The result will be from the last snapshotted result.
+  // 2. Otherwise the result will be calculated on the fly, which may use stale
+  //    layout data if this is called during layout.
+  // ValidateSnapshot() (called after the first layout during a lifecycle
+  // update) will reschedule layout, or ShouldScheduleNextService() (called at
+  // the end of a lifecycle update) will schedule another lifecycle update,
+  // if the final layout data may cause layout changes.
+  gfx::Vector2dF TotalOffset(const LayoutObject& anchor_object) const;
+
   gfx::Vector2dF AccumulatedAdjustment() const {
     return default_anchor_adjustment_data_.accumulated_adjustment;
   }
@@ -127,6 +136,9 @@
   struct AdjustmentData {
     DISALLOW_NEW();
 
+    // The anchor object used when calculating this data.
+    Member<const LayoutObject> anchor_object;
+
     // Compositor element ids of the ancestor scroll adjustment containers
     // (see the class documentation) of some element (anchor), up to the
     // containing block of `anchored_element_` (exclusively), along the
@@ -159,6 +171,12 @@
     bool needs_scroll_adjustment_in_y = false;
 
     bool has_chained_anchor = false;
+
+    void Trace(Visitor* visitor) const { visitor->Trace(anchor_object); }
+
+    gfx::Vector2dF TotalOffset() const {
+      return accumulated_adjustment + anchored_element_container_scroll_offset;
+    }
   };
 
   AdjustmentData ComputeAdjustmentContainersData(
@@ -167,17 +185,11 @@
   // Takes an up-to-date snapshot, and compares it with the existing one.
   // If `update` is true, also rewrites the existing snapshot.
   SnapshotDiff TakeAndCompareSnapshot(bool update);
-  bool IsFallbackPositionValid(
-      const gfx::Vector2dF& new_accumulated_adjustment,
-      const gfx::Vector2dF& new_anchored_element_container_scroll_offset) const;
+  bool IsFallbackPositionValid(const AdjustmentData& new_adjustment_data) const;
 
   void InvalidateLayoutAndPaint();
   void InvalidatePaint();
 
-  // ValidateSnapshot is called every frame, but AnchorPositionScrollData only
-  // needs to perform the validation once (during the frame it was created).
-  bool is_snapshot_validated_ = false;
-
   // The anchor-positioned element.
   Member<Element> anchored_element_;
 
diff --git a/third_party/blink/renderer/core/layout/block_layout_algorithm_utils.cc b/third_party/blink/renderer/core/layout/block_layout_algorithm_utils.cc
index bccd2a5..671b3e9 100644
--- a/third_party/blink/renderer/core/layout/block_layout_algorithm_utils.cc
+++ b/third_party/blink/renderer/core/layout/block_layout_algorithm_utils.cc
@@ -54,15 +54,11 @@
                         WebFeature::kEffectiveAlignContentForTableCell);
     }
   }
-  if (!RuntimeEnabledFeatures::AlignContentForBlocksEnabled()) {
-    position = ContentPosition::kNormal;
-  }
 
   // https://drafts.csswg.org/css-align/#typedef-overflow-position
   // UAs that have not implemented the "smart" default behavior must behave as
   // safe for align-content on block containers
-  if (RuntimeEnabledFeatures::AlignContentForScrollableBlocksEnabled() &&
-      overflow == OverflowAlignment::kDefault) {
+  if (overflow == OverflowAlignment::kDefault) {
     overflow = OverflowAlignment::kSafe;
   }
   const bool is_safe = overflow == OverflowAlignment::kSafe;
@@ -197,10 +193,6 @@
     return;
   }
 
-  if (!RuntimeEnabledFeatures::AlignContentForBlocksEnabled()) {
-    ComputeContentAlignmentForBlock(style, &builder.Node().GetDocument());
-    return;
-  }
   if (!ShouldIncludeBlockEndBorderPadding(builder)) {
     // Do nothing for the first fragment without block-end border and padding.
     // See css/css-align/blocks/align-content-block-break-overflow-010.html
diff --git a/third_party/blink/renderer/core/layout/layout_block_flow_hot.cc b/third_party/blink/renderer/core/layout/layout_block_flow_hot.cc
index eacaaa09..7c3adb9 100644
--- a/third_party/blink/renderer/core/layout/layout_block_flow_hot.cc
+++ b/third_party/blink/renderer/core/layout/layout_block_flow_hot.cc
@@ -32,12 +32,10 @@
   // https://drafts.csswg.org/css-align/#distribution-block
   // All values other than normal force the block container to establish an
   // independent formatting context.
-  if (RuntimeEnabledFeatures::AlignContentForBlocksEnabled()) {
-    if (StyleRef().AlignContent().GetPosition() != ContentPosition::kNormal ||
-        StyleRef().AlignContent().Distribution() !=
-            ContentDistributionType::kDefault) {
-      return true;
-    }
+  if (StyleRef().AlignContent().GetPosition() != ContentPosition::kNormal ||
+      StyleRef().AlignContent().Distribution() !=
+          ContentDistributionType::kDefault) {
+    return true;
   }
 
   if (IsRenderedLegend())
diff --git a/third_party/blink/renderer/core/layout/layout_box.cc b/third_party/blink/renderer/core/layout/layout_box.cc
index 359738fa..3e28eb7 100644
--- a/third_party/blink/renderer/core/layout/layout_box.cc
+++ b/third_party/blink/renderer/core/layout/layout_box.cc
@@ -4358,8 +4358,8 @@
   return is_acceptable_anchor ? anchor_layout_object : nullptr;
 }
 
-const Vector<NonOverflowingScrollRange>* LayoutBox::NonOverflowingScrollRanges()
-    const {
+const HeapVector<NonOverflowingScrollRange>*
+LayoutBox::NonOverflowingScrollRanges() const {
   const auto& layout_results = GetLayoutResults();
   if (layout_results.empty()) {
     return nullptr;
diff --git a/third_party/blink/renderer/core/layout/layout_box.h b/third_party/blink/renderer/core/layout/layout_box.h
index 5e8404d..9dd79745 100644
--- a/third_party/blink/renderer/core/layout/layout_box.h
+++ b/third_party/blink/renderer/core/layout/layout_box.h
@@ -1272,7 +1272,8 @@
   // https://drafts.csswg.org/css-anchor-position-1/#ref-for-valdef-anchor-implicit
   const LayoutObject* AcceptableImplicitAnchor() const;
 
-  const Vector<NonOverflowingScrollRange>* NonOverflowingScrollRanges() const;
+  const HeapVector<NonOverflowingScrollRange>* NonOverflowingScrollRanges()
+      const;
 
   const BoxStrut& OutOfFlowInsetsForGetComputedStyle() const;
 
diff --git a/third_party/blink/renderer/core/layout/layout_result.cc b/third_party/blink/renderer/core/layout/layout_result.cc
index 7399df527..ca21be8 100644
--- a/third_party/blink/renderer/core/layout/layout_result.cc
+++ b/third_party/blink/renderer/core/layout/layout_result.cc
@@ -376,6 +376,7 @@
 
 void LayoutResult::RareData::Trace(Visitor* visitor) const {
   visitor->Trace(early_break);
+  visitor->Trace(non_overflowing_scroll_ranges);
   // This will not cause TOCTOU issue because data_union_type is set in the
   // constructor and never changed.
   if (const BlockData* data = GetBlockData())
diff --git a/third_party/blink/renderer/core/layout/layout_result.h b/third_party/blink/renderer/core/layout/layout_result.h
index 30a591f..f80e21e 100644
--- a/third_party/blink/renderer/core/layout/layout_result.h
+++ b/third_party/blink/renderer/core/layout/layout_result.h
@@ -177,7 +177,8 @@
   // positioned nodes are set.
   void CopyMutableOutOfFlowData(const LayoutResult& previous_result) const;
 
-  const Vector<NonOverflowingScrollRange>* NonOverflowingScrollRanges() const {
+  const HeapVector<NonOverflowingScrollRange>* NonOverflowingScrollRanges()
+      const {
     return rare_data_ ? rare_data_->NonOverflowingScrollRanges() : nullptr;
   }
 
@@ -525,7 +526,7 @@
     }
 
     void SetNonOverflowingScrollRanges(
-        const Vector<NonOverflowingScrollRange>& non_overflowing_ranges) {
+        const HeapVector<NonOverflowingScrollRange>& non_overflowing_ranges) {
       if (layout_result_->rare_data_ || !non_overflowing_ranges.empty()) {
         layout_result_->EnsureRareData()->SetNonOverflowingScrollRanges(
             non_overflowing_ranges);
@@ -854,10 +855,10 @@
     }
 
     void SetNonOverflowingScrollRanges(
-        const Vector<NonOverflowingScrollRange>& non_overflowing_ranges) {
+        const HeapVector<NonOverflowingScrollRange>& non_overflowing_ranges) {
       non_overflowing_scroll_ranges = non_overflowing_ranges;
     }
-    const Vector<NonOverflowingScrollRange>* NonOverflowingScrollRanges()
+    const HeapVector<NonOverflowingScrollRange>* NonOverflowingScrollRanges()
         const {
       if (non_overflowing_scroll_ranges.empty()) {
         return nullptr;
@@ -903,7 +904,7 @@
     // Only valid if line_box_bfc_block_offset_is_set
     LayoutUnit line_box_bfc_block_offset;
 
-    Vector<NonOverflowingScrollRange> non_overflowing_scroll_ranges;
+    HeapVector<NonOverflowingScrollRange> non_overflowing_scroll_ranges;
 
     // Only valid if oof_positioned_offset_is_set
     LogicalOffset oof_positioned_offset;
diff --git a/third_party/blink/renderer/core/layout/non_overflowing_scroll_range.h b/third_party/blink/renderer/core/layout/non_overflowing_scroll_range.h
index 26bf73c..4a74ac3 100644
--- a/third_party/blink/renderer/core/layout/non_overflowing_scroll_range.h
+++ b/third_party/blink/renderer/core/layout/non_overflowing_scroll_range.h
@@ -6,9 +6,13 @@
 #define THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_NON_OVERFLOWING_SCROLL_RANGE_H_
 
 #include "third_party/blink/renderer/core/layout/geometry/scroll_offset_range.h"
+#include "third_party/blink/renderer/platform/heap/member.h"
+#include "third_party/blink/renderer/platform/wtf/vector_traits.h"
 
 namespace blink {
 
+class LayoutObject;
+
 // Helper structure for CSS anchor positioning's fallback positioning. Each
 // fallback position has a corresponding `NonOverflowingScrollRange`. See
 // https://drafts.csswg.org/css-anchor-position-1/#fallback-apply
@@ -20,6 +24,9 @@
   // containing block rect.
   PhysicalScrollRange containing_block_range;
 
+  // The default anchor used for the corresponding fallback position.
+  Member<const LayoutObject> anchor_object;
+
   // Checks if the given scroll offsets are within the scroll ranges, i.e., if
   // the fallback position's margin box overflows the bounds.
   bool Contains(const gfx::Vector2dF& anchor_scroll_offset) const {
@@ -29,8 +36,13 @@
   bool operator==(const NonOverflowingScrollRange& other) const {
     return containing_block_range == other.containing_block_range;
   }
+
+  void Trace(Visitor* visitor) const { visitor->Trace(anchor_object); }
 };
 
 }  // namespace blink
 
+WTF_ALLOW_MOVE_INIT_AND_COMPARE_WITH_MEM_FUNCTIONS(
+    blink::NonOverflowingScrollRange)
+
 #endif  // THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_NON_OVERFLOWING_SCROLL_RANGE_H_
diff --git a/third_party/blink/renderer/core/layout/out_of_flow_layout_part.cc b/third_party/blink/renderer/core/layout/out_of_flow_layout_part.cc
index 6f3fe0ab..7338a78 100644
--- a/third_party/blink/renderer/core/layout/out_of_flow_layout_part.cc
+++ b/third_party/blink/renderer/core/layout/out_of_flow_layout_part.cc
@@ -323,8 +323,9 @@
 
 const Element* GetPositionAnchorElement(
     const BlockNode& node,
+    const ComputedStyle& style,
     const LogicalAnchorQuery& anchor_query) {
-  if (const ScopedCSSName* specifier = node.Style().PositionAnchor()) {
+  if (const ScopedCSSName* specifier = style.PositionAnchor()) {
     if (const LogicalAnchorReference* reference =
             anchor_query.AnchorReference(*node.GetLayoutBox(), specifier);
         reference && reference->layout_object) {
@@ -338,6 +339,30 @@
   return nullptr;
 }
 
+const LayoutObject* GetPositionAnchorObject(
+    const BlockNode& node,
+    const ComputedStyle& style,
+    const LogicalAnchorQuery& anchor_query) {
+  if (const Element* element =
+          GetPositionAnchorElement(node, style, anchor_query)) {
+    return element->GetLayoutObject();
+  }
+  return nullptr;
+}
+
+gfx::Vector2dF GetAnchorOffset(const BlockNode& node,
+                               const ComputedStyle& style,
+                               const LogicalAnchorQuery& anchor_query) {
+  if (const LayoutObject* anchor_object =
+          GetPositionAnchorObject(node, style, anchor_query)) {
+    if (const AnchorPositionScrollData* data =
+            To<Element>(node.GetDOMNode())->GetAnchorPositionScrollData()) {
+      return data->TotalOffset(*anchor_object);
+    }
+  }
+  return gfx::Vector2dF();
+}
+
 // Updates `node`'s associated `PaintLayer` for `position-visibility`. See:
 // https://drafts.csswg.org/css-anchor-position-1/#position-visibility. The
 // values of `no-overflow` and `anchors-valid` are computed and directly update
@@ -378,7 +403,8 @@
   // The spec is still in-flux about whether we should use multiple anchors
   // (from `anchor()` and `anchor-size()`), or just the default anchor.
   const Element* anchor =
-      anchored ? GetPositionAnchorElement(node, *anchor_query) : nullptr;
+      anchored ? GetPositionAnchorElement(node, node.Style(), *anchor_query)
+               : nullptr;
   if (is_anchor_positioned && has_anchors_visible_visibility && anchor) {
     anchored->EnsureAnchorPositionScrollData()
         .EnsureAnchorPositionVisibilityObserver()
@@ -1872,16 +1898,8 @@
 OutOfFlowLayoutPart::OffsetInfo OutOfFlowLayoutPart::CalculateOffset(
     const NodeInfo& node_info,
     const LogicalAnchorQueryMap* anchor_queries) {
-  gfx::Vector2dF anchor_offset;
-  if (Element* element = DynamicTo<Element>(node_info.node.GetDOMNode())) {
-    if (const AnchorPositionScrollData* data =
-            element->GetAnchorPositionScrollData()) {
-      anchor_offset = data->TotalOffset();
-    }
-  }
-
   // See non_overflowing_scroll_range.h for documentation.
-  Vector<NonOverflowingScrollRange> non_overflowing_scroll_ranges;
+  HeapVector<NonOverflowingScrollRange> non_overflowing_scroll_ranges;
 
   // Note: This assumes @position-try rounds can't affect
   // writing-mode/position-anchor.
@@ -1915,7 +1933,7 @@
     // However, without @position-try, the style is the current style.
     CHECK(has_try_options || &style == &iter.GetStyle());
     std::optional<OffsetInfo> offset_info =
-        TryCalculateOffset(node_info, style, &anchor_evaluator,
+        TryCalculateOffset(node_info, style, anchor_evaluator,
                            try_fit_available_space, &non_overflowing_range);
 
     // Also check if it fits the containing block after applying scroll offset
@@ -1923,7 +1941,8 @@
     if (offset_info) {
       if (try_fit_available_space) {
         non_overflowing_scroll_ranges.push_back(non_overflowing_range);
-        if (!non_overflowing_range.Contains(anchor_offset)) {
+        if (!non_overflowing_range.Contains(GetAnchorOffset(
+                node_info.node, style, *anchor_evaluator.AnchorQuery()))) {
           continue;
         }
       }
@@ -1960,7 +1979,7 @@
     // offset again, using the non-base style.
     const ComputedStyle& style = iter.ActivateStyleForChosenOption();
     NonOverflowingScrollRange non_overflowing_range_unused;
-    offset_info = TryCalculateOffset(node_info, style, &anchor_evaluator,
+    offset_info = TryCalculateOffset(node_info, style, anchor_evaluator,
                                      /* try_fit_available_space */ false,
                                      &non_overflowing_range_unused);
     offset_info->overflows_containing_block = overflows_containing_block;
@@ -1981,7 +2000,7 @@
 OutOfFlowLayoutPart::TryCalculateOffset(
     const NodeInfo& node_info,
     const ComputedStyle& candidate_style,
-    AnchorEvaluatorImpl* anchor_evaluator,
+    AnchorEvaluatorImpl& anchor_evaluator,
     bool try_fit_available_space,
     NonOverflowingScrollRange* out_non_overflowing_range) {
   // TryCalculateOffset may be called multiple times if we have multiple @try
@@ -2248,6 +2267,8 @@
         LogicalScrollRange{inline_scroll_min, inline_scroll_max,
                            block_scroll_min, block_scroll_max}
             .ToPhysical(candidate_writing_direction);
+    out_non_overflowing_range->anchor_object = GetPositionAnchorObject(
+        node_info.node, candidate_style, *anchor_evaluator.AnchorQuery());
   }
 
   bool anchor_center_x = anchor_center_position.inline_offset.has_value();
@@ -2256,9 +2277,9 @@
     std::swap(anchor_center_x, anchor_center_y);
   }
   offset_info.needs_scroll_adjustment_in_x =
-      anchor_center_x || anchor_evaluator->NeedsScrollAdjustmentInX();
+      anchor_center_x || anchor_evaluator.NeedsScrollAdjustmentInX();
   offset_info.needs_scroll_adjustment_in_y =
-      anchor_center_y || anchor_evaluator->NeedsScrollAdjustmentInY();
+      anchor_center_y || anchor_evaluator.NeedsScrollAdjustmentInY();
 
   return offset_info;
 }
@@ -2855,6 +2876,7 @@
 
 void OutOfFlowLayoutPart::OffsetInfo::Trace(Visitor* visitor) const {
   visitor->Trace(initial_layout_result);
+  visitor->Trace(non_overflowing_scroll_ranges);
 }
 
 void OutOfFlowLayoutPart::NodeToLayout::Trace(Visitor* visitor) const {
diff --git a/third_party/blink/renderer/core/layout/out_of_flow_layout_part.h b/third_party/blink/renderer/core/layout/out_of_flow_layout_part.h
index b36653a..d8f50c7 100644
--- a/third_party/blink/renderer/core/layout/out_of_flow_layout_part.h
+++ b/third_party/blink/renderer/core/layout/out_of_flow_layout_part.h
@@ -207,7 +207,7 @@
     // This field is set only if this |OffsetInfo| is calculated from a
     // position-try-options style, either from a @position-try rule or a tactic,
     // or the anchored element has position-visibility: no-overflow.
-    Vector<NonOverflowingScrollRange> non_overflowing_scroll_ranges;
+    HeapVector<NonOverflowingScrollRange> non_overflowing_scroll_ranges;
 
     // This field is set when we're calculating |OffsetInfo| with
     // try_fit_available_space=true, e.g. when we have a non-empty
@@ -322,7 +322,7 @@
   std::optional<OffsetInfo> TryCalculateOffset(
       const NodeInfo& node_info,
       const ComputedStyle& style,
-      AnchorEvaluatorImpl*,
+      AnchorEvaluatorImpl&,
       bool try_fit_available_space,
       NonOverflowingScrollRange* out_scroll_range);
 
diff --git a/third_party/blink/renderer/core/paint/highlight_painter.cc b/third_party/blink/renderer/core/paint/highlight_painter.cc
index 3306c9e..b9b10074 100644
--- a/third_party/blink/renderer/core/paint/highlight_painter.cc
+++ b/third_party/blink/renderer/core/paint/highlight_painter.cc
@@ -442,7 +442,7 @@
   }
 }
 
-void HighlightPainter::Paint(Phase phase) {
+void HighlightPainter::PaintNonCssMarkers(Phase phase) {
   if (markers_.empty())
     return;
 
@@ -523,8 +523,8 @@
         if (marker->GetType() == DocumentMarker::kComposition &&
             !styleable_marker.TextColor().IsFullyTransparent() &&
             RuntimeEnabledFeatures::CompositionForegroundMarkersEnabled()) {
-          PaintDecoratedText(text, styleable_marker.TextColor(),
-                             paint_start_offset, paint_end_offset);
+          PaintTextForCompositionMarker(text, styleable_marker.TextColor(),
+                                        paint_start_offset, paint_end_offset);
         }
         break;
       }
@@ -1155,13 +1155,11 @@
   }
 }
 
-void HighlightPainter::PaintDecoratedText(const StringView& text,
-                                          const Color& text_color,
-                                          unsigned paint_start_offset,
-                                          unsigned paint_end_offset,
-                                          const PseudoId pseudo,
-                                          const AtomicString& pseudo_argument) {
-  const Document& document = node_->GetDocument();
+void HighlightPainter::PaintTextForCompositionMarker(
+    const StringView& text,
+    const Color& text_color,
+    unsigned paint_start_offset,
+    unsigned paint_end_offset) {
   TextPaintStyle text_style;
   text_style.current_color = text_style.fill_color = text_style.stroke_color =
       text_style.emphasis_mark_color = text_color;
@@ -1170,25 +1168,12 @@
   text_style.shadow = nullptr;
   text_style.paint_order = originating_style_.PaintOrder();
 
-  const ComputedStyle* pseudo_style =
-      pseudo == PseudoId::kPseudoIdNone
-          ? nullptr
-          : HighlightStyleUtils::HighlightPseudoStyle(node_, originating_style_,
-                                                      pseudo, pseudo_argument);
-
-  if (pseudo_style) {
-    text_style = HighlightStyleUtils::HighlightPaintingStyle(
-                     document, originating_style_, node_, pseudo, text_style,
-                     paint_info_, pseudo_argument)
-                     .style;
-  }
   LineRelativeRect decoration_rect = LineRelativeLocalRect(
       fragment_item_, text, paint_start_offset, paint_end_offset);
   decoration_rect.Move(LineRelativeOffset::CreateFromBoxOrigin(box_origin_));
   TextDecorationPainter decoration_painter(
       text_painter_, decoration_painter_.InlineContext(), paint_info_,
-      pseudo_style ? *pseudo_style : originating_style_, text_style,
-      decoration_rect, selection_);
+      originating_style_, text_style, decoration_rect, selection_);
 
   decoration_painter.Begin(fragment_item_, TextDecorationPainter::kOriginating);
   decoration_painter.PaintExceptLineThrough(
diff --git a/third_party/blink/renderer/core/paint/highlight_painter.h b/third_party/blink/renderer/core/paint/highlight_painter.h
index 349be1e..83b42249 100644
--- a/third_party/blink/renderer/core/paint/highlight_painter.h
+++ b/third_party/blink/renderer/core/paint/highlight_painter.h
@@ -143,8 +143,10 @@
   enum Phase { kBackground, kForeground };
 
   // Paints backgrounds or foregrounds for markers that are not exposed as CSS
-  // highlight pseudos.
-  void Paint(Phase phase);
+  // highlight pseudos. Note that when text is painted here, that text will have
+  // also been painted by the text fragment painter or one of the CSS-based
+  // methods like PaintHighlightOverlays. This will create antialiasing errors.
+  void PaintNonCssMarkers(Phase phase);
 
   // Indicates the way this painter should be used by the caller, aside from
   // the Paint method, which should always be used.
@@ -249,15 +251,12 @@
   void PaintDecorationsOnlyLineThrough(const HighlightOverlay::HighlightPart&,
                                        const LineRelativeRect&);
 
-  // Paints text with a highlight color. For composition markers, omit the last
-  // two arguments. For PseudoHighlightMarkers, include both the PseudoId and
-  // PseudoArgument.
-  void PaintDecoratedText(const StringView& text,
-                          const Color& text_color,
-                          unsigned paint_start_offset,
-                          unsigned paint_end_offset,
-                          const PseudoId pseudo = PseudoId::kPseudoIdNone,
-                          const AtomicString& pseudo_argument = g_empty_atom);
+  // Paints originating text and decorations (again) with the given color.
+  // Used for composition markers only.
+  void PaintTextForCompositionMarker(const StringView& text,
+                                     const Color& text_color,
+                                     unsigned paint_start_offset,
+                                     unsigned paint_end_offset);
 
   const TextFragmentPaintInfo& fragment_paint_info_;
 
diff --git a/third_party/blink/renderer/core/paint/text_fragment_painter.cc b/third_party/blink/renderer/core/paint/text_fragment_painter.cc
index aab409d..0536b66 100644
--- a/third_party/blink/renderer/core/paint/text_fragment_painter.cc
+++ b/third_party/blink/renderer/core/paint/text_fragment_painter.cc
@@ -468,7 +468,7 @@
   // highlight overlay system, such as composition highlights. They use physical
   // coordinates, so are painted before GraphicsContext rotation.
   if (paint_marker_backgrounds) {
-    highlight_painter.Paint(HighlightPainter::kBackground);
+    highlight_painter.PaintNonCssMarkers(HighlightPainter::kBackground);
   }
 
   if (rotation) {
@@ -559,7 +559,7 @@
   // Paint foregrounds for document markers that don’t participate in the CSS
   // highlight overlay system, such as composition highlights.
   if (paint_info.phase == PaintPhase::kForeground) {
-    highlight_painter.Paint(HighlightPainter::kForeground);
+    highlight_painter.PaintNonCssMarkers(HighlightPainter::kForeground);
   }
 
   // Paint ::selection foreground only.
diff --git a/third_party/blink/renderer/core/timing/performance_event_timing.cc b/third_party/blink/renderer/core/timing/performance_event_timing.cc
index 627784ca..c3b1e5d 100644
--- a/third_party/blink/renderer/core/timing/performance_event_timing.cc
+++ b/third_party/blink/renderer/core/timing/performance_event_timing.cc
@@ -129,6 +129,7 @@
 
 void PerformanceEventTiming::BuildJSONValue(V8ObjectBuilder& builder) const {
   PerformanceEntry::BuildJSONValue(builder);
+  builder.AddInteger("interactionId", interactionId());
   builder.AddNumber("processingStart", processingStart());
   builder.AddNumber("processingEnd", processingEnd());
   builder.AddBoolean("cancelable", cancelable_);
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
index 64faa61..572be51f 100644
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -283,16 +283,6 @@
       base_feature: "none",
     },
     {
-      // crbug.com/1500511
-      name: "AlignContentForBlocks",
-      status: "stable",
-    },
-    {
-      // crbug.com/331454369
-      name: "AlignContentForScrollableBlocks",
-      status: "stable",
-    },
-    {
       name: "AllowContentInitiatedDataUrlNavigations",
       base_feature: "none",
     },
diff --git a/third_party/blink/renderer/platform/scheduler/common/features.h b/third_party/blink/renderer/platform/scheduler/common/features.h
index db5159c1..cc93d286 100644
--- a/third_party/blink/renderer/platform/scheduler/common/features.h
+++ b/third_party/blink/renderer/platform/scheduler/common/features.h
@@ -66,12 +66,6 @@
              "MbiOverrideTaskRunnerHandle",
              base::FEATURE_DISABLED_BY_DEFAULT);
 
-// If enabled, per-AgentGroupScheduler CompositorTaskRunner will be used instead
-// of per-MainThreadScheduler CompositorTaskRunner.
-BASE_FEATURE(kMbiCompositorTaskRunnerPerAgentSchedulingGroup,
-             "MbiCompositorTaskRunnerPerAgentSchedulingGroup",
-             base::FEATURE_ENABLED_BY_DEFAULT);
-
 // Feature to experiment with different values for: "prioritize main thread
 // compositing tasks if we haven't done a main frame in this many milliseconds."
 PLATFORM_EXPORT BASE_DECLARE_FEATURE(kPrioritizeCompositingAfterDelayTrials);
diff --git a/third_party/blink/renderer/platform/scheduler/main_thread/agent_group_scheduler_impl.cc b/third_party/blink/renderer/platform/scheduler/main_thread/agent_group_scheduler_impl.cc
index c2b6f76..0e4fa40 100644
--- a/third_party/blink/renderer/platform/scheduler/main_thread/agent_group_scheduler_impl.cc
+++ b/third_party/blink/renderer/platform/scheduler/main_thread/agent_group_scheduler_impl.cc
@@ -81,13 +81,7 @@
 
 scoped_refptr<base::SingleThreadTaskRunner>
 AgentGroupSchedulerImpl::CompositorTaskRunner() {
-  if (main_thread_scheduler_->scheduling_settings()
-          .mbi_compositor_task_runner_per_agent_scheduling_group) {
-    return compositor_task_runner_;
-  }
-  // We temporarily redirect the per-AGS compositor task runner to the main
-  // thread's compositor task runner.
-  return main_thread_scheduler_->CompositorTaskRunner();
+  return compositor_task_runner_;
 }
 
 scoped_refptr<MainThreadTaskQueue>
diff --git a/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl.cc b/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl.cc
index 3b425101..edc8bfc 100644
--- a/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl.cc
+++ b/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl.cc
@@ -542,10 +542,6 @@
   mbi_override_task_runner_handle =
       base::FeatureList::IsEnabled(kMbiOverrideTaskRunnerHandle);
 
-  mbi_compositor_task_runner_per_agent_scheduling_group =
-      base::FeatureList::IsEnabled(
-          kMbiCompositorTaskRunnerPerAgentSchedulingGroup);
-
   compositor_tq_policy_during_threaded_scroll =
       base::FeatureList::IsEnabled(kThreadedScrollPreventRenderingStarvation)
           ? kCompositorTQPolicyDuringThreadedScroll.Get()
diff --git a/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl.h b/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl.h
index b1ba48b..cdf1604 100644
--- a/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl.h
+++ b/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl.h
@@ -130,10 +130,6 @@
     // per-ASG task runner instead of the per-thread task runner.
     bool mbi_override_task_runner_handle;
 
-    // If enabled, per-AgentGroupScheduler CompositorTaskRunner will be used
-    // instead of per-MainThreadScheduler CompositorTaskRunner.
-    bool mbi_compositor_task_runner_per_agent_scheduling_group;
-
     // If ThreadedScrollPreventRenderingStarvation is enabled, this is set to
     // the policy set in the associated feature param, otherwise this is
     // equivalent to the existing behavior.
diff --git a/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl_unittest.cc b/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl_unittest.cc
index 636d764..a196143 100644
--- a/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl_unittest.cc
+++ b/third_party/blink/renderer/platform/scheduler/main_thread/main_thread_scheduler_impl_unittest.cc
@@ -416,22 +416,14 @@
 
     default_task_runner_ =
         scheduler_->DefaultTaskQueue()->GetTaskRunnerWithDefaultTaskType();
-    if (!scheduler_->scheduling_settings()
-             .mbi_compositor_task_runner_per_agent_scheduling_group) {
-      compositor_task_runner_ =
-          scheduler_->CompositorTaskQueue()->GetTaskRunnerWithDefaultTaskType();
-    }
     idle_task_runner_ = scheduler_->IdleTaskRunner();
     v8_task_runner_ =
         scheduler_->V8TaskQueue()->GetTaskRunnerWithDefaultTaskType();
 
     agent_group_scheduler_ = static_cast<AgentGroupSchedulerImpl*>(
         scheduler_->CreateAgentGroupScheduler());
-    if (scheduler_->scheduling_settings()
-            .mbi_compositor_task_runner_per_agent_scheduling_group) {
-      compositor_task_runner_ = agent_group_scheduler_->CompositorTaskQueue()
-                                    ->GetTaskRunnerWithDefaultTaskType();
-    }
+    compositor_task_runner_ = agent_group_scheduler_->CompositorTaskQueue()
+                                  ->GetTaskRunnerWithDefaultTaskType();
     page_scheduler_ = std::make_unique<NiceMock<MockPageSchedulerImpl>>(
         scheduler_.get(), *agent_group_scheduler_);
     agent_group_scheduler_->AddPageSchedulerForTesting(page_scheduler_.get());
@@ -459,12 +451,7 @@
   }
 
   MainThreadTaskQueue* compositor_task_queue() {
-    if (scheduler_->scheduling_settings()
-            .mbi_compositor_task_runner_per_agent_scheduling_group) {
-      return agent_group_scheduler_->CompositorTaskQueue().get();
-    } else {
-      return scheduler_->CompositorTaskQueue().get();
-    }
+    return agent_group_scheduler_->CompositorTaskQueue().get();
   }
 
   MainThreadTaskQueue* loading_task_queue() {
diff --git a/third_party/blink/renderer/platform/widget/input/main_thread_event_queue.cc b/third_party/blink/renderer/platform/widget/input/main_thread_event_queue.cc
index 35f0c3cd..5c13e333 100644
--- a/third_party/blink/renderer/platform/widget/input/main_thread_event_queue.cc
+++ b/third_party/blink/renderer/platform/widget/input/main_thread_event_queue.cc
@@ -166,6 +166,26 @@
   bool IsWebInputEvent() const override { return true; }
 
   void Dispatch(MainThreadEventQueue* queue) override {
+    if (RuntimeEnabledFeatures::UnblockTouchMoveEarlierEnabled() &&
+        originally_cancelable_ &&
+        event_->Event().GetType() == WebInputEvent::Type::kTouchMove) {
+      auto* touch_event = static_cast<WebTouchEvent*>(event_->EventPointer());
+      if (queue->GetMainThreadOnly().should_unblock_touch_moves) {
+        // Though we have unblocked queued touch events when we set
+        // should_unblock_touch_moves_ to true, there is still chance of newly
+        // queued blocking touch events.
+        touch_event->dispatch_type =
+            WebInputEvent::DispatchType::kEventNonBlocking;
+      }
+      // If the touch move has been unblocked (above or in
+      // HandleTouchScrollStartQueued()), run callbacks before dispatching.
+      if (touch_event->dispatch_type ==
+          WebInputEvent::DispatchType::kEventNonBlocking) {
+        RunCallbacks(mojom::blink::InputEventResultState::kNotConsumed,
+                     event_->latency_info(), nullptr, std::nullopt);
+      }
+    }
+
     HandledEventCallback callback =
         base::BindOnce(&QueuedWebInputEvent::HandledEvent,
                        base::Unretained(this), base::RetainedRef(queue));
@@ -183,27 +203,7 @@
                     const ui::LatencyInfo& latency_info,
                     mojom::blink::DidOverscrollParamsPtr overscroll,
                     std::optional<cc::TouchAction> touch_action) {
-    // callback_ is null if we have already run it, in cases
-    // 1. the event had been a blocking touchmove before it was unblocked;
-    // 2. the event is an non-blocking event, and its callback was called when
-    //    the event was queued, then a blocking event was coalesced into the
-    //    the event.
-    if (callback_) {
-      std::move(callback_).Run(ack_result, latency_info, std::move(overscroll),
-                               touch_action);
-    }
-
-    if (!blocking_coalesced_callbacks_.empty()) {
-      ui::LatencyInfo coalesced_latency_info = latency_info;
-      coalesced_latency_info.set_coalesced();
-      for (auto& callback : blocking_coalesced_callbacks_) {
-        if (callback.first) {
-          coalesced_latency_info.set_trace_id(callback.second);
-          std::move(callback.first)
-              .Run(ack_result, coalesced_latency_info, nullptr, std::nullopt);
-        }
-      }
-    }
+    RunCallbacks(ack_result, latency_info, std::move(overscroll), touch_action);
 
     // TODO(dtapuska): Change the scheduler API to take into account number of
     // events processed.
@@ -230,12 +230,11 @@
       ui::LatencyInfo coalesced_latency_info = event_->latency_info();
       coalesced_latency_info.set_coalesced();
       for (auto& callback : blocking_coalesced_callbacks_) {
-        if (callback.first) {
-          coalesced_latency_info.set_trace_id(callback.second);
-          callbacks.emplace_back(std::move(callback.first),
-                                 coalesced_latency_info);
-        }
+        coalesced_latency_info.set_trace_id(callback.second);
+        callbacks.emplace_back(std::move(callback.first),
+                               coalesced_latency_info);
       }
+      blocking_coalesced_callbacks_.clear();
     }
   }
 
@@ -252,6 +251,32 @@
   }
 
  private:
+  void RunCallbacks(mojom::blink::InputEventResultState ack_result,
+                    const ui::LatencyInfo& latency_info,
+                    mojom::blink::DidOverscrollParamsPtr overscroll,
+                    const std::optional<cc::TouchAction>& touch_action) {
+    // callback_ is null if we have already run it, in cases
+    // 1. the event had been a blocking touchmove before it was unblocked;
+    // 2. the event is an non-blocking event, and its callback was called when
+    //    the event was queued, then a blocking event was coalesced into the
+    //    the event.
+    if (callback_) {
+      std::move(callback_).Run(ack_result, latency_info, std::move(overscroll),
+                               touch_action);
+    }
+
+    if (!blocking_coalesced_callbacks_.empty()) {
+      ui::LatencyInfo coalesced_latency_info = latency_info;
+      coalesced_latency_info.set_coalesced();
+      for (auto& callback : blocking_coalesced_callbacks_) {
+        coalesced_latency_info.set_trace_id(callback.second);
+        std::move(callback.first)
+            .Run(ack_result, coalesced_latency_info, nullptr, std::nullopt);
+      }
+      blocking_coalesced_callbacks_.clear();
+    }
+  }
+
   FilterResult HandleTouchScrollStartQueued() {
     // A TouchScrollStart will queued after this touch move which will make all
     // previous touch moves that are queued uncancelable.
@@ -831,25 +856,29 @@
     return;
   }
 
-  bool should_unblock_queued_touch_moves = false;
   {
+    bool& should_unblock_touch_moves =
+        GetMainThreadOnly().should_unblock_touch_moves;
+    bool& blocking_touch_start_not_consumed =
+        GetMainThreadOnly().blocking_touch_start_not_consumed;
     auto& touch_event = static_cast<const WebTouchEvent&>(dispatched_event);
     if (touch_event.touch_start_or_first_touch_move) {
       bool is_not_consumed_blocking =
           touch_event.dispatch_type == WebInputEvent::DispatchType::kBlocking &&
           ack_result == mojom::blink::InputEventResultState::kNotConsumed;
       if (touch_event.GetType() == WebInputEvent::Type::kTouchStart) {
-        blocking_touch_start_not_consumed_ = is_not_consumed_blocking;
+        blocking_touch_start_not_consumed = is_not_consumed_blocking;
+        should_unblock_touch_moves = false;
       } else {
         // `event` is the first touch move.
         CHECK_EQ(touch_event.GetType(), WebInputEvent::Type::kTouchMove);
-        should_unblock_queued_touch_moves =
-            blocking_touch_start_not_consumed_ && is_not_consumed_blocking;
+        should_unblock_touch_moves =
+            blocking_touch_start_not_consumed && is_not_consumed_blocking;
       }
     }
-  }
-  if (!should_unblock_queued_touch_moves) {
-    return;
+    if (!should_unblock_touch_moves) {
+      return;
+    }
   }
 
   // Neither the touchstart nor the first touchmove was consumed. The browser
@@ -892,4 +921,10 @@
   }
 }
 
+MainThreadEventQueue::MainThreadOnly&
+MainThreadEventQueue::GetMainThreadOnly() {
+  DCHECK(main_task_runner_->BelongsToCurrentThread());
+  return main_thread_only_;
+}
+
 }  // namespace blink
diff --git a/third_party/blink/renderer/platform/widget/input/main_thread_event_queue.h b/third_party/blink/renderer/platform/widget/input/main_thread_event_queue.h
index 6e2a171..c47f092 100644
--- a/third_party/blink/renderer/platform/widget/input/main_thread_event_queue.h
+++ b/third_party/blink/renderer/platform/widget/input/main_thread_event_queue.h
@@ -174,6 +174,13 @@
       const WebInputEvent& dispatched_event,
       mojom::blink::InputEventResultState ack_result);
 
+  // Contains data that are read and written on the main thread only.
+  struct MainThreadOnly {
+    bool blocking_touch_start_not_consumed = false;
+    bool should_unblock_touch_moves = false;
+  } main_thread_only_;
+  MainThreadOnly& GetMainThreadOnly();
+
   friend class QueuedWebInputEvent;
   friend class MainThreadEventQueueTest;
   friend class MainThreadEventQueueInitializationTest;
@@ -181,7 +188,6 @@
   const bool allow_raf_aligned_input_;
   bool last_touch_start_forced_nonblocking_due_to_fling_ = false;
   bool has_pointerrawupdate_handlers_ = false;
-  bool blocking_touch_start_not_consumed_ = false;
 
   // These variables are read on the compositor thread but are
   // written on the main thread, so we use atomics to keep them
diff --git a/third_party/blink/renderer/platform/widget/input/main_thread_event_queue_unittest.cc b/third_party/blink/renderer/platform/widget/input/main_thread_event_queue_unittest.cc
index 02fb0a7..7b3c9ff 100644
--- a/third_party/blink/renderer/platform/widget/input/main_thread_event_queue_unittest.cc
+++ b/third_party/blink/renderer/platform/widget/input/main_thread_event_queue_unittest.cc
@@ -148,7 +148,7 @@
 class ReceivedCallback {
  public:
   ReceivedCallback()
-      : ReceivedCallback(CallbackReceivedState::kPending, false) {}
+      : ReceivedCallback(CallbackReceivedState::kPending, false, kNotFound) {}
 
   ReceivedCallback(CallbackReceivedState state,
                    bool coalesced_latency,
@@ -159,20 +159,14 @@
   bool operator==(const ReceivedCallback& other) const {
     return state_ == other.state_ &&
            coalesced_latency_ == other.coalesced_latency_ &&
-           // Tests not caring about after_handled_tasks_ can leave it as
-           // kNotFound to ignore it.
-           (after_handled_tasks_ == kNotFound ||
-            other.after_handled_tasks_ == kNotFound ||
-            after_handled_tasks_ == other.after_handled_tasks_);
+           after_handled_tasks_ == other.after_handled_tasks_;
   }
   friend void PrintTo(const ReceivedCallback& callback, std::ostream* os) {
     PrintTo(callback.state_, os);
     if (callback.coalesced_latency_) {
       *os << " coalesced";
     }
-    if (callback.after_handled_tasks_ != kNotFound) {
-      *os << " after_handled_tasks=" << callback.after_handled_tasks_;
-    }
+    *os << " after_handled_tasks=" << callback.after_handled_tasks_;
   }
 
  private:
@@ -405,7 +399,7 @@
   // or was not called at all (kPending).
   EXPECT_THAT(received,
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+                  CallbackReceivedState::kCalledAfterHandleEvent, false, 0)));
 }
 
 TEST_P(MainThreadEventQueueTest, NonBlockingWheel) {
@@ -435,7 +429,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(2u, handled_tasks_.size());
@@ -525,7 +519,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(3u, handled_tasks_.size());
@@ -627,13 +621,13 @@
         GetAndResetCallbackResults(),
         testing::ElementsAre(
             ReceivedCallback(CallbackReceivedState::kCalledWhileHandlingEvent,
-                             false),
+                             false, 0),
             ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                             false),
+                             false, 2),
             ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                             true),
+                             true, 2),
             ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                             true)));
+                             true, 2)));
     EXPECT_EQ(0u, event_queue().size());
 
     const WebTouchEvent* last_touch_event = static_cast<const WebTouchEvent*>(
@@ -649,7 +643,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 2)));
 }
 
 TEST_P(MainThreadEventQueueTest, InterleavedEvents) {
@@ -686,7 +680,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(2u, handled_tasks_.size());
@@ -763,7 +757,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
 
   // Simulate the rAF running before the PostTask occurs. The rAF
   // will consume everything.
@@ -778,7 +772,7 @@
   main_task_runner_->RunUntilIdle();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 4)));
 
   // Simulate event consumption but no rAF signal. The mouse wheel events
   // should still be in the queue.
@@ -799,7 +793,7 @@
   RunSimulatedRafOnce();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
   EXPECT_EQ(wheelEvents[2].GetModifiers(),
             handled_tasks_.at(3)->taskAsEvent()->Event().GetModifiers());
   EXPECT_EQ(wheelEvents[0].GetModifiers(),
@@ -836,7 +830,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
 
   // Simulate the rAF running before the PostTask occurs. The rAF
   // will consume everything.
@@ -850,7 +844,7 @@
   main_task_runner_->RunUntilIdle();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 3)));
 
   // Simulate event consumption but no rAF signal. The touch events
   // should still be in the queue.
@@ -865,7 +859,7 @@
   RunSimulatedRafOnce();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
 
   // Simulate the touch move being discrete
   kEvents[0].touch_start_or_first_touch_move = true;
@@ -878,9 +872,15 @@
   EXPECT_TRUE(main_task_runner_->HasPendingTask());
   EXPECT_TRUE(needs_main_frame_);
   main_task_runner_->RunUntilIdle();
-  EXPECT_THAT(GetAndResetCallbackResults(),
-              testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+  EXPECT_THAT(
+      GetAndResetCallbackResults(),
+      testing::ElementsAre(
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 3),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 4),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 5)));
 }
 
 TEST_P(MainThreadEventQueueTest, RafAlignedTouchInputCoalescedMoves) {
@@ -915,9 +915,9 @@
         GetAndResetCallbackResults(),
         testing::ElementsAre(
             ReceivedCallback(CallbackReceivedState::kCalledWhileHandlingEvent,
-                             false),
+                             false, 0),
             ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                             true)));
+                             true, 1)));
   }
 
   // Send a non-cancelable ack required event, and then a non-ack
@@ -934,7 +934,7 @@
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 1)));
 
   // Send a non-ack required event, and then a non-cancelable ack
   // required event they should be coalesced together.
@@ -950,7 +950,7 @@
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 2)));
 }
 
 TEST_P(MainThreadEventQueueTest, RafAlignedTouchInputThrottlingMoves) {
@@ -978,7 +978,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
   HandleEvent(kEvents[0], blink::mojom::InputEventResultState::kNotConsumed);
   HandleEvent(kEvents[1], blink::mojom::InputEventResultState::kNotConsumed);
   EXPECT_EQ(1u, event_queue().size());
@@ -995,7 +995,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 1)));
   EXPECT_EQ(0u, event_queue().size());
 }
 
@@ -1022,7 +1022,7 @@
   main_task_runner_->RunUntilIdle();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
 
@@ -1041,7 +1041,7 @@
   main_task_runner_->RunUntilIdle();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 2)));
   EXPECT_EQ(0u, event_queue().size());
 
   // Now turn off low latency mode.
@@ -1055,7 +1055,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 4)));
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
 
@@ -1069,7 +1069,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 6)));
   EXPECT_EQ(0u, event_queue().size());
 }
 
@@ -1088,7 +1088,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 0)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(1u, handled_tasks_.size());
@@ -1109,7 +1109,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledWhileHandlingEvent, false)));
+                  CallbackReceivedState::kCalledWhileHandlingEvent, false, 1)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(2u, handled_tasks_.size());
@@ -1129,7 +1129,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+                  CallbackReceivedState::kCalledAfterHandleEvent, false, 3)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(3u, handled_tasks_.size());
@@ -1146,7 +1146,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+                  CallbackReceivedState::kCalledAfterHandleEvent, false, 4)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(4u, handled_tasks_.size());
@@ -1171,7 +1171,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+                  CallbackReceivedState::kCalledAfterHandleEvent, false, 1)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(1u, handled_tasks_.size());
@@ -1187,7 +1187,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+                  CallbackReceivedState::kCalledAfterHandleEvent, false, 2)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(2u, handled_tasks_.size());
@@ -1203,7 +1203,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+                  CallbackReceivedState::kCalledAfterHandleEvent, false, 3)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(3u, handled_tasks_.size());
@@ -1220,7 +1220,7 @@
   RunPendingTasksWithSimulatedRaf();
   EXPECT_THAT(GetAndResetCallbackResults(),
               testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+                  CallbackReceivedState::kCalledAfterHandleEvent, false, 4)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_EQ(4u, handled_tasks_.size());
@@ -1305,9 +1305,13 @@
   RunPendingTasksWithSimulatedRaf();
 
   EXPECT_EQ(0u, event_queue().size());
-  EXPECT_THAT(GetAndResetCallbackResults(),
-              testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+  EXPECT_THAT(
+      GetAndResetCallbackResults(),
+      testing::ElementsAre(
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 2),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 4)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_FALSE(needs_main_frame_);
 
@@ -1340,9 +1344,13 @@
   EXPECT_FALSE(needs_main_frame_);
   main_task_runner_->RunUntilIdle();
   EXPECT_EQ(0u, event_queue().size());
-  EXPECT_THAT(GetAndResetCallbackResults(),
-              testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+  EXPECT_THAT(
+      GetAndResetCallbackResults(),
+      testing::ElementsAre(
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 1),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 4)));
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_FALSE(needs_main_frame_);
 
@@ -1380,26 +1388,31 @@
   HandleEvent(scroll_start, blink::mojom::InputEventResultState::kNotConsumed);
   EXPECT_EQ(3u, event_queue().size());
   RunPendingTasksWithSimulatedRaf();
-  EXPECT_THAT(GetAndResetCallbackResults(),
-              testing::ElementsAre(
-                  ReceivedCallback(
-                      CallbackReceivedState::kCalledAfterHandleEvent, false),
-                  ReceivedCallback(
-                      CallbackReceivedState::kCalledWhileHandlingEvent, false),
-                  ReceivedCallback(
-                      CallbackReceivedState::kCalledAfterHandleEvent, false)));
+  EXPECT_THAT(
+      GetAndResetCallbackResults(),
+      testing::ElementsAre(
+          ReceivedCallback(
+              CallbackReceivedState::kCalledAfterHandleEvent, false,
+              RuntimeEnabledFeatures::UnblockTouchMoveEarlierEnabled() ? 0 : 1),
+          ReceivedCallback(CallbackReceivedState::kCalledWhileHandlingEvent,
+                           false, 0),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 3)));
+  EXPECT_THAT(
+      handled_tasks_,
+      ::testing::ElementsAre(
+          IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                              kEvents[0].unique_touch_event_id,
+                              WebInputEvent::DispatchType::kEventNonBlocking),
+          IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                              kEvents[1].unique_touch_event_id,
+                              WebInputEvent::DispatchType::kEventNonBlocking),
+          IsHandledTouchEvent(WebInputEvent::Type::kTouchScrollStarted,
+                              scroll_start.unique_touch_event_id,
+                              WebInputEvent::DispatchType::kBlocking)));
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_FALSE(needs_main_frame_);
-
-  EXPECT_EQ(WebInputEvent::DispatchType::kEventNonBlocking,
-            static_cast<const WebTouchEvent&>(
-                handled_tasks_.at(0)->taskAsEvent()->Event())
-                .dispatch_type);
-  EXPECT_EQ(WebInputEvent::DispatchType::kEventNonBlocking,
-            static_cast<const WebTouchEvent&>(
-                handled_tasks_.at(1)->taskAsEvent()->Event())
-                .dispatch_type);
 }
 
 TEST_P(MainThreadEventQueueTest, BlockingTouchMoveWithTouchEnd) {
@@ -1425,36 +1438,40 @@
   HandleEvent(scroll_start, blink::mojom::InputEventResultState::kNotConsumed);
   EXPECT_EQ(3u, event_queue().size());
   RunPendingTasksWithSimulatedRaf();
-  EXPECT_THAT(GetAndResetCallbackResults(),
-              testing::Each(ReceivedCallback(
-                  CallbackReceivedState::kCalledAfterHandleEvent, false)));
+  EXPECT_THAT(
+      GetAndResetCallbackResults(),
+      testing::ElementsAre(
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 1),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 2),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 3)));
+  EXPECT_THAT(handled_tasks_,
+              ::testing::ElementsAre(
+                  IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                      kEvents[0].unique_touch_event_id,
+                                      WebInputEvent::DispatchType::kBlocking),
+                  IsHandledTouchEvent(WebInputEvent::Type::kTouchEnd,
+                                      kEvents[1].unique_touch_event_id,
+                                      WebInputEvent::DispatchType::kBlocking),
+                  IsHandledTouchEvent(WebInputEvent::Type::kTouchScrollStarted,
+                                      scroll_start.unique_touch_event_id,
+                                      WebInputEvent::DispatchType::kBlocking)));
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_FALSE(needs_main_frame_);
-
-  EXPECT_EQ(WebInputEvent::DispatchType::kBlocking,
-            static_cast<const WebTouchEvent&>(
-                handled_tasks_.at(0)->taskAsEvent()->Event())
-                .dispatch_type);
-  EXPECT_EQ(WebInputEvent::DispatchType::kBlocking,
-            static_cast<const WebTouchEvent&>(
-                handled_tasks_.at(1)->taskAsEvent()->Event())
-                .dispatch_type);
 }
 
 TEST_P(MainThreadEventQueueTest,
        UnblockTouchMoveAfterTouchStartAndFirstTouchMoveNotConsumed) {
-  if (!RuntimeEnabledFeatures::UnblockTouchMoveEarlierEnabled()) {
-    return;
-  }
-
   SyntheticWebTouchEvent touch_start;
   touch_start.PressPoint(10, 10);
   touch_start.touch_start_or_first_touch_move = true;
   ASSERT_EQ(WebInputEvent::Type::kTouchStart, touch_start.GetType());
   ASSERT_EQ(WebInputEvent::DispatchType::kBlocking, touch_start.dispatch_type);
 
-  SyntheticWebTouchEvent touch_moves[3];
+  SyntheticWebTouchEvent touch_moves[5];
   for (auto& touch_move : touch_moves) {
     touch_move.MovePoint(0, 20, 30);
     ASSERT_EQ(WebInputEvent::Type::kTouchMove, touch_move.GetType());
@@ -1473,18 +1490,24 @@
       }
       auto touch_id = static_cast<const WebTouchEvent&>(event.Event())
                           .unique_touch_event_id;
-      if (touch_id == touch_moves[0].unique_touch_event_id &&
-          consume_first_touch_move) {
-        test.set_main_thread_ack_state(
-            blink::mojom::InputEventResultState::kConsumed);
-      }
-      // Simulates two new blocking touchmove events enqueued while the first
-      // touchmove is being dispatched, respectively.
       if (touch_id == touch_moves[0].unique_touch_event_id) {
+        if (consume_first_touch_move) {
+          test.set_main_thread_ack_state(
+              blink::mojom::InputEventResultState::kConsumed);
+        }
+        // Simulates two new blocking touchmove events enqueued while the
+        // first touchmove is being dispatched.
         test.HandleEvent(touch_moves[1],
                          blink::mojom::InputEventResultState::kNotConsumed);
         test.HandleEvent(touch_moves[2],
                          blink::mojom::InputEventResultState::kNotConsumed);
+      } else if (touch_id == touch_moves[1].unique_touch_event_id) {
+        // Simulates two new blocking touchmove events enqueued while the
+        // second touchmove is being dispatched.
+        test.HandleEvent(touch_moves[3],
+                         blink::mojom::InputEventResultState::kNotConsumed);
+        test.HandleEvent(touch_moves[4],
+                         blink::mojom::InputEventResultState::kNotConsumed);
       }
     }
 
@@ -1504,7 +1527,7 @@
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_CALL(*widget_scheduler_,
               DidHandleInputEventOnMainThread(testing::_, testing::_))
-      .Times(4);
+      .Times(6);
   HandleEvent(touch_start, blink::mojom::InputEventResultState::kNotConsumed);
   HandleEvent(touch_moves[0],
               blink::mojom::InputEventResultState::kNotConsumed);
@@ -1513,34 +1536,79 @@
   EXPECT_EQ(0u, event_queue().size());
   EXPECT_FALSE(main_task_runner_->HasPendingTask());
   EXPECT_FALSE(needs_main_frame_);
-  EXPECT_THAT(
-      GetAndResetCallbackResults(),
-      testing::ElementsAre(
-          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 1u),
-          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 2u),
-          // These callbacks were run just after handling the first touchmove.
-          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 2u),
-          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent, true,
-                           2u)));
-  EXPECT_THAT(
-      handled_tasks_,
-      ::testing::ElementsAre(
-          // touch_start should remain blocking.
-          IsHandledTouchEvent(WebInputEvent::Type::kTouchStart,
-                              touch_start.unique_touch_event_id,
-                              WebInputEvent::DispatchType::kBlocking),
-          // touch_moves[0] should remain blocking.
-          IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
-                              touch_moves[0].unique_touch_event_id,
-                              WebInputEvent::DispatchType::kBlocking),
-          // touch_moves[1] was unblocked while it was in the queue.
-          // touch_moves[2] was coalesced into touch_moves[1].
-          IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
-                              touch_moves[1].unique_touch_event_id,
-                              WebInputEvent::DispatchType::kEventNonBlocking)));
+  if (RuntimeEnabledFeatures::UnblockTouchMoveEarlierEnabled()) {
+    EXPECT_THAT(
+        GetAndResetCallbackResults(),
+        testing::ElementsAre(
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 1),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 2),
+            // These callbacks were run just after handling the first touchmove.
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 2),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             true, 2),
+            // These callbacks were run just after handling the second
+            // touchmove.
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 3),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             true, 3)));
+    EXPECT_THAT(
+        handled_tasks_,
+        ::testing::ElementsAre(
+            // touch_start should remain blocking.
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchStart,
+                                touch_start.unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            // touch_moves[0] should remain blocking.
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[0].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            // touch_moves[1] was unblocked while it was in the queue.
+            // touch_moves[2] was coalesced into touch_moves[1].
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[1].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kEventNonBlocking),
+            // touch_moves[3] was unblocked while it was in the queue.
+            // touch_moves[4] was coalesced into touch_moves[3].
+            IsHandledTouchEvent(
+                WebInputEvent::Type::kTouchMove,
+                touch_moves[3].unique_touch_event_id,
+                WebInputEvent::DispatchType::kEventNonBlocking)));
+  } else {
+    EXPECT_THAT(
+        GetAndResetCallbackResults(),
+        testing::ElementsAre(
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 1),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 2),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 3),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             true, 3),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 4),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             true, 4)));
+    EXPECT_THAT(
+        handled_tasks_,
+        ::testing::ElementsAre(
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchStart,
+                                touch_start.unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[0].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[1].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[3].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking)));
+  }
 
   // Start another touch sequence, with the first touch_move consumed. This
   // is not in a standalone test case to test the last unblocking status won't
@@ -1549,7 +1617,7 @@
   will_handle_input_event_callback.consume_first_touch_move = true;
   EXPECT_CALL(*widget_scheduler_,
               DidHandleInputEventOnMainThread(testing::_, testing::_))
-      .Times(4);
+      .Times(6);
   HandleEvent(touch_start, blink::mojom::InputEventResultState::kNotConsumed);
   HandleEvent(touch_moves[0],
               blink::mojom::InputEventResultState::kNotConsumed);
@@ -1558,13 +1626,17 @@
       GetAndResetCallbackResults(),
       testing::ElementsAre(
           ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 1u),
+                           false, 1),
           ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 2u),
+                           false, 2),
           ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 3u),
+                           false, 3),
           ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent, true,
-                           3u)));
+                           3),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 4),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent, true,
+                           4)));
   EXPECT_THAT(handled_tasks_,
               ::testing::ElementsAre(
                   IsHandledTouchEvent(WebInputEvent::Type::kTouchStart,
@@ -1575,6 +1647,9 @@
                                       WebInputEvent::DispatchType::kBlocking),
                   IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
                                       touch_moves[1].unique_touch_event_id,
+                                      WebInputEvent::DispatchType::kBlocking),
+                  IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                      touch_moves[3].unique_touch_event_id,
                                       WebInputEvent::DispatchType::kBlocking)));
 
   // Start another touch sequence, with the touch start consumed.
@@ -1583,7 +1658,7 @@
   will_handle_input_event_callback.consume_first_touch_move = false;
   EXPECT_CALL(*widget_scheduler_,
               DidHandleInputEventOnMainThread(testing::_, testing::_))
-      .Times(4);
+      .Times(6);
   HandleEvent(touch_start, blink::mojom::InputEventResultState::kNotConsumed);
   HandleEvent(touch_moves[0],
               blink::mojom::InputEventResultState::kNotConsumed);
@@ -1592,13 +1667,17 @@
       GetAndResetCallbackResults(),
       testing::ElementsAre(
           ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 1u),
+                           false, 1),
           ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 2u),
+                           false, 2),
           ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 3u),
+                           false, 3),
           ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent, true,
-                           3u)));
+                           3),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                           false, 4),
+          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent, true,
+                           4)));
   EXPECT_THAT(handled_tasks_,
               ::testing::ElementsAre(
                   IsHandledTouchEvent(WebInputEvent::Type::kTouchStart,
@@ -1609,6 +1688,9 @@
                                       WebInputEvent::DispatchType::kBlocking),
                   IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
                                       touch_moves[1].unique_touch_event_id,
+                                      WebInputEvent::DispatchType::kBlocking),
+                  IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                      touch_moves[3].unique_touch_event_id,
                                       WebInputEvent::DispatchType::kBlocking)));
 
   // Start another touch sequence, neither the touch start nor the first touch
@@ -1617,34 +1699,75 @@
   will_handle_input_event_callback.consume_touch_start = false;
   EXPECT_CALL(*widget_scheduler_,
               DidHandleInputEventOnMainThread(testing::_, testing::_))
-      .Times(4);
+      .Times(6);
   HandleEvent(touch_start, blink::mojom::InputEventResultState::kNotConsumed);
   HandleEvent(touch_moves[0],
               blink::mojom::InputEventResultState::kNotConsumed);
   RunPendingTasksWithSimulatedRaf();
-  EXPECT_THAT(
-      GetAndResetCallbackResults(),
-      testing::ElementsAre(
-          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 1u),
-          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 2u),
-          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
-                           false, 2u),
-          ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent, true,
-                           2u)));
-  EXPECT_THAT(
-      handled_tasks_,
-      ::testing::ElementsAre(
-          IsHandledTouchEvent(WebInputEvent::Type::kTouchStart,
-                              touch_start.unique_touch_event_id,
-                              WebInputEvent::DispatchType::kBlocking),
-          IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
-                              touch_moves[0].unique_touch_event_id,
-                              WebInputEvent::DispatchType::kBlocking),
-          IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
-                              touch_moves[1].unique_touch_event_id,
-                              WebInputEvent::DispatchType::kEventNonBlocking)));
+  if (RuntimeEnabledFeatures::UnblockTouchMoveEarlierEnabled()) {
+    EXPECT_THAT(
+        GetAndResetCallbackResults(),
+        testing::ElementsAre(
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 1),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 2),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 2),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             true, 2),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 3),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             true, 3)));
+    EXPECT_THAT(
+        handled_tasks_,
+        ::testing::ElementsAre(
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchStart,
+                                touch_start.unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[0].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[1].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kEventNonBlocking),
+            IsHandledTouchEvent(
+                WebInputEvent::Type::kTouchMove,
+                touch_moves[3].unique_touch_event_id,
+                WebInputEvent::DispatchType::kEventNonBlocking)));
+  } else {
+    EXPECT_THAT(
+        GetAndResetCallbackResults(),
+        testing::ElementsAre(
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 1),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 2),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 3),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             true, 3),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             false, 4),
+            ReceivedCallback(CallbackReceivedState::kCalledAfterHandleEvent,
+                             true, 4)));
+    EXPECT_THAT(
+        handled_tasks_,
+        ::testing::ElementsAre(
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchStart,
+                                touch_start.unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[0].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[1].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking),
+            IsHandledTouchEvent(WebInputEvent::Type::kTouchMove,
+                                touch_moves[3].unique_touch_event_id,
+                                WebInputEvent::DispatchType::kBlocking)));
+  }
 }
 
 TEST_P(MainThreadEventQueueTest, UnbufferedDispatchTouchEvent) {
diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/web_tests/TestExpectations
index a040d8f..dd74c4c 100644
--- a/third_party/blink/web_tests/TestExpectations
+++ b/third_party/blink/web_tests/TestExpectations
@@ -5113,6 +5113,8 @@
 # Sheriff 2021-12-21
 crbug.com/1281792 external/wpt/event-timing/min-duration-threshold.html [ Failure Pass ]
 
+crbug.com/335630145 external/wpt/client-hints/sec-ch-width-auto-sizes-001.https.html [ Failure ]
+crbug.com/335630145 external/wpt/client-hints/sec-ch-width-auto-sizes-003.https.html [ Failure ]
 
 # Sheriff 2021-12-22
 crbug.com/1283295 [ Mac ] fast/text-autosizing/hackernews-comments.html [ Failure Pass ]
diff --git a/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_8.json b/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_8.json
index 35f20bf..b206832 100644
--- a/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_8.json
+++ b/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_8.json
@@ -143682,6 +143682,19 @@
         ],
         {}
        ]
+      ],
+      "text-box-trim-tall-line-001.html": [
+       "1b2bbffc1483a8b30b5eeff0d60b8b51f981fde6",
+       [
+        null,
+        [
+         [
+          "/css/css-inline/text-box-trim/text-box-trim-tall-line-001-ref.html",
+          "=="
+         ]
+        ],
+        {}
+       ]
       ]
      }
     },
@@ -169870,6 +169883,21 @@
        {}
       ]
      ],
+     "break-within-bases": {
+      "basic.html": [
+       "da810c3dc5eb87c535ec2fac1db6334d6d23e276",
+       [
+        null,
+        [
+         [
+          "/css/css-ruby/break-within-bases/basic-ref.html",
+          "=="
+         ]
+        ],
+        {}
+       ]
+      ]
+     },
      "empty-ruby-base-container.html": [
       "4d86e07985d0e99e586848f7ca3195e63371c4d4",
       [
@@ -324237,6 +324265,10 @@
       "text-box-trim-start-001-ref.html": [
        "40067cc592504c4622ded772b545a3e3a29e57dd",
        []
+      ],
+      "text-box-trim-tall-line-001-ref.html": [
+       "5595fe1a8f2e14c94ce8197c2701ac7fff8e7b07",
+       []
       ]
      }
     },
@@ -330017,6 +330049,12 @@
       "06c6eccd9a8821e487d62e43248b1984ffe7426d",
       []
      ],
+     "break-within-bases": {
+      "basic-ref.html": [
+       "c2b129f913428a1d9a5c3a2f2edd06fb91fec25a",
+       []
+      ]
+     },
      "empty-ruby-base-container-ref.html": [
       "e6119468c59af5581d9deeb6e20f60bb18f6aab6",
       []
@@ -399673,7 +399711,7 @@
        []
       ],
       "gather.json": [
-       "a01654637f14e29d3cdb69609b583e2f223cb3d7",
+       "acd7ad8775e6df514547ed5871d386b42b82c78a",
        []
       ],
       "gemm.json": [
@@ -682612,7 +682650,7 @@
       ]
      ],
      "gather.https.any.js": [
-      "184e8033e6624cfd433494d7c01f917195c5b65d",
+      "668112cc10fff90db33c5f7aa100e1bdf258e5c8",
       [
        "webnn/validation_tests/gather.https.any.html",
        {
@@ -724029,7 +724067,7 @@
          ]
         ],
         "wheel.py": [
-         "ee0d4d4600d4522ec405296468add02e053014b8",
+         "3129e9b0e63ca15092f6264ce8eecfef471d0abd",
          [
           null,
           {}
@@ -726288,7 +726326,7 @@
         ]
        ],
        "wheel.py": [
-        "6d0f9ddb11fbe2a6775fb63747b5dc601a0acb8a",
+        "1c9bf082270429406080baab3373d5ff3f506aed",
         [
          null,
          {}
diff --git a/third_party/blink/web_tests/external/wpt/client-hints/sec-ch-width-auto-sizes-001.https.html b/third_party/blink/web_tests/external/wpt/client-hints/sec-ch-width-auto-sizes-001.https.html
new file mode 100644
index 0000000..5860718
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/client-hints/sec-ch-width-auto-sizes-001.https.html
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<meta http-equiv="Delegate-CH" content="Sec-CH-Width">
+<title>Tests Sec-CH-Width with auto sizes and a single srcset value</title>
+<link rel="help" href="https://wicg.github.io/responsive-image-client-hints/#sec-ch-width">
+<link rel="help" href="https://html.spec.whatwg.org/#sizes-attributes">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<script>
+  setup({explicit_done: true});
+
+  function run() {
+    test(() => {
+      const testImage = document.getElementsByTagName('img')[0];
+      assert_equals(testImage.naturalWidth, 2 * 50 * window.devicePixelRatio);
+      assert_equals(testImage.naturalHeight, 3 * 50 * window.devicePixelRatio);
+    }, 'Sec-CH-Width is set for lazy auto sizes');
+    done();
+  }
+</script>
+
+<div style="width: 100px; height: 100px;">
+  <img
+    onload="run()"
+    loading="lazy"
+    sizes="auto"
+    srcset="resources/2x3-svg-scaled-by-sec-ch-width.py 50w"
+    width="300"
+    height="300"
+    style="width: 50%; height: 50%;">
+</div>
diff --git a/third_party/blink/web_tests/external/wpt/client-hints/sec-ch-width-auto-sizes-002.https.html b/third_party/blink/web_tests/external/wpt/client-hints/sec-ch-width-auto-sizes-002.https.html
new file mode 100644
index 0000000..45b8d4e
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/client-hints/sec-ch-width-auto-sizes-002.https.html
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<meta http-equiv="Delegate-CH" content="Sec-CH-Width">
+<title>Tests Sec-CH-Width with auto sizes and multiple srcset values</title>
+<link rel="help" href="https://wicg.github.io/responsive-image-client-hints/#sec-ch-width">
+<link rel="help" href="https://html.spec.whatwg.org/#sizes-attributes">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<script>
+  setup({explicit_done: true});
+
+  function run() {
+    test(() => {
+      const testImage = document.getElementsByTagName('img')[0];
+      assert_equals(testImage.naturalWidth, 2 * 50 * window.devicePixelRatio);
+      assert_equals(testImage.naturalHeight, 3 * 50 * window.devicePixelRatio);
+    }, 'Sec-CH-Width is set for lazy auto sizes');
+    done();
+  }
+</script>
+
+<div style="width: 100px; height: 100px;">
+  <img
+    onload="run()"
+    loading="lazy"
+    sizes="auto"
+    srcset="fail-a 49w, resources/2x3-svg-scaled-by-sec-ch-width.py 50w, fail-b 51w"
+    width="300"
+    height="300"
+    style="width: 50%; height: 50%;">
+</div>
diff --git a/third_party/blink/web_tests/external/wpt/client-hints/sec-ch-width-auto-sizes-003.https.html b/third_party/blink/web_tests/external/wpt/client-hints/sec-ch-width-auto-sizes-003.https.html
new file mode 100644
index 0000000..83a4823
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/client-hints/sec-ch-width-auto-sizes-003.https.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<meta http-equiv="Delegate-CH" content="Sec-CH-Width">
+<title>Tests Sec-CH-Width with auto sizes and picture</title>
+<link rel="help" href="https://wicg.github.io/responsive-image-client-hints/#sec-ch-width">
+<link rel="help" href="https://html.spec.whatwg.org/#sizes-attributes">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<script>
+  setup({explicit_done: true});
+
+  function run() {
+    test(() => {
+      const testImage = document.getElementsByTagName('img')[0];
+      assert_equals(testImage.naturalWidth, 2 * 50 * window.devicePixelRatio);
+      assert_equals(testImage.naturalHeight, 3 * 50 * window.devicePixelRatio);
+    }, 'Sec-CH-Width is set for lazy auto sizes');
+    done();
+  }
+</script>
+
+<picture>
+  <source
+    media="(min-width: 600px)"
+    srcset="resources/2x3-svg-scaled-by-sec-ch-width.py 50w"
+    sizes="auto"
+    width="100"
+    height="100">
+  <img
+    onload="run()"
+    loading="lazy"
+    sizes="auto"
+    src="fail.png"
+    width="100"
+    height="100"
+    style="width: 50px; height: 50px;">
+</picture>
diff --git a/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-from-fixed-anchor-ref.html b/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-from-fixed-anchor-ref.html
new file mode 100644
index 0000000..72026a2
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-from-fixed-anchor-ref.html
@@ -0,0 +1,33 @@
+<!doctype html>
+<style>
+body {
+  width: 150vw;
+  height: 150vh;
+}
+.anchor {
+  width: 50px;
+  height: 50px;
+  background: orange;
+}
+#anchor1 {
+  position: absolute;
+  top: 100px;
+  left: 350px;
+}
+#anchor2 {
+  position:fixed;
+  right: 0;
+  bottom: 0;
+}
+#anchored {
+  position: absolute;
+  top: 50px;
+  left: 350px;
+  width: 50px;
+  height: 50px;
+  background: blue;
+}
+</style>
+<div class="anchor" id="anchor1"></div>
+<div class="anchor" id="anchor2"></div>
+<div id="anchored"></div>
diff --git a/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-from-fixed-anchor.html b/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-from-fixed-anchor.html
new file mode 100644
index 0000000..904aa55
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-from-fixed-anchor.html
@@ -0,0 +1,57 @@
+<!doctype html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: @position-try with different default anchors,
+       switching to fixed-position anchor on scroll and back on another scroll</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#fallback-rule">
+<link rel="match" href="position-try-switch-from-fixed-anchor-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+body {
+  width: 150vw;
+  height: 150vh;
+}
+.anchor {
+  width: 50px;
+  height: 50px;
+  background: orange;
+}
+#anchor1 {
+  anchor-name: --anchor1;
+  position: absolute;
+  top: 100px;
+  left: 350px;
+}
+#anchor2 {
+  anchor-name: --anchor2;
+  position:fixed;
+  right: 0;
+  bottom: 0;
+}
+#anchored {
+  position-anchor: --anchor1;
+  inset-area: top;
+  position-try-options: --fixed;
+  position: fixed;
+  width: 50px;
+  height: 50px;
+  background: blue;
+}
+@position-try --fixed {
+  inset-area: top left;
+  position-anchor: --anchor2;
+}
+</style>
+<div class="anchor" id="anchor1"></div>
+<div class="anchor" id="anchor2"></div>
+<div id="anchored"></div>
+<script>
+waitForAtLeastOneFrame().then(() => {
+  window.scrollTo(250, 100);
+  waitForAtLeastOneFrame().then(() => {
+    window.scrollTo(0, 0);
+    takeScreenshot();
+  });
+});
+</script>
diff --git a/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-to-fixed-anchor-ref.html b/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-to-fixed-anchor-ref.html
new file mode 100644
index 0000000..254cbf3
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-to-fixed-anchor-ref.html
@@ -0,0 +1,37 @@
+<!doctype html>
+<meta charset="utf-8">
+<style>
+body {
+  width: 150vw;
+  height: 150vh;
+}
+.anchor {
+  width: 50px;
+  height: 50px;
+  background: orange;
+}
+#anchor1 {
+  position: absolute;
+  top: 100px;
+  left: 350px;
+}
+#anchor2 {
+  position:fixed;
+  right: 0;
+  bottom: 0;
+}
+#anchored {
+  position: fixed;
+  right: 50px;
+  bottom: 50px;
+  width: 50px;
+  height: 50px;
+  background: blue;
+}
+</style>
+<div class="anchor" id="anchor1"></div>
+<div class="anchor" id="anchor2"></div>
+<div id="anchored"></div>
+<script>
+window.scrollTo(250, 100);
+</script>
diff --git a/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-to-fixed-anchor.html b/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-to-fixed-anchor.html
new file mode 100644
index 0000000..54fcb2e
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-anchor-position/position-try-switch-to-fixed-anchor.html
@@ -0,0 +1,53 @@
+<!doctype html>
+<html class=reftest-wait>
+<meta charset="utf-8">
+<title>CSS Anchor Positioning Test: @position-try with different default anchors, switching to fixed-position anchor on scroll</title>
+<link rel="help" href="https://drafts.csswg.org/css-anchor-position-1/#fallback-rule">
+<link rel="match" href="position-try-switch-to-fixed-anchor-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<script src="/common/rendering-utils.js"></script>
+<style>
+body {
+  width: 150vw;
+  height: 150vh;
+}
+.anchor {
+  width: 50px;
+  height: 50px;
+  background: orange;
+}
+#anchor1 {
+  anchor-name: --anchor1;
+  position: absolute;
+  top: 100px;
+  left: 350px;
+}
+#anchor2 {
+  anchor-name: --anchor2;
+  position:fixed;
+  right: 0;
+  bottom: 0;
+}
+#anchored {
+  position-anchor: --anchor1;
+  inset-area: top;
+  position-try-options: --fixed;
+  position: fixed;
+  width: 50px;
+  height: 50px;
+  background: blue;
+}
+@position-try --fixed {
+  inset-area: top left;
+  position-anchor: --anchor2;
+}
+</style>
+<div class="anchor" id="anchor1"></div>
+<div class="anchor" id="anchor2"></div>
+<div id="anchored"></div>
+<script>
+waitForAtLeastOneFrame().then(() => {
+  window.scrollTo(250, 100);
+  takeScreenshot();
+});
+</script>
diff --git a/third_party/blink/web_tests/external/wpt/webdriver/tests/bidi/input/perform_actions/wheel.py b/third_party/blink/web_tests/external/wpt/webdriver/tests/bidi/input/perform_actions/wheel.py
index ee0d4d4..3129e9b0 100644
--- a/third_party/blink/web_tests/external/wpt/webdriver/tests/bidi/input/perform_actions/wheel.py
+++ b/third_party/blink/web_tests/external/wpt/webdriver/tests/bidi/input/perform_actions/wheel.py
@@ -4,6 +4,7 @@
 from webdriver.bidi.modules.input import Actions, get_element_origin
 from webdriver.bidi.modules.script import ContextTarget
 
+from tests.support.sync import AsyncPoll
 from tests.support.keys import Keys
 from .. import get_events, get_object_from_context
 from . import get_shadow_root_from_test_page
@@ -73,7 +74,7 @@
 
 @pytest.mark.parametrize("delta_x, delta_y", [(0, 10), (5, 0), (5, 10)])
 async def test_scroll_iframe(
-    bidi_session, setup_wheel_test, top_context, get_element, delta_x, delta_y
+    bidi_session, setup_wheel_test, top_context, get_element, delta_x, delta_y, wait_for_future_safe
 ):
     actions = Actions()
 
@@ -85,7 +86,14 @@
     await bidi_session.input.perform_actions(
         actions=actions, context=top_context["context"]
     )
+
+    # Chrome requires some time (~10-20ms) to process the event from the iframe, so we wait for it.
+    async def wait_for_events(_):
+        return len(await get_events(bidi_session, top_context["context"])) > 0
+
+    await AsyncPoll(bidi_session, timeout=0.5, interval=0.01, message='No wheel events emitted').until(wait_for_events)
     events = await get_events(bidi_session, top_context["context"])
+
     assert len(events) == 1
     assert events[0]["type"] == "wheel"
     assert events[0]["deltaX"] == delta_x
diff --git a/third_party/blink/web_tests/external/wpt/webdriver/tests/classic/perform_actions/wheel.py b/third_party/blink/web_tests/external/wpt/webdriver/tests/classic/perform_actions/wheel.py
index 6d0f9dd..1c9bf08 100644
--- a/third_party/blink/web_tests/external/wpt/webdriver/tests/classic/perform_actions/wheel.py
+++ b/third_party/blink/web_tests/external/wpt/webdriver/tests/classic/perform_actions/wheel.py
@@ -2,9 +2,10 @@
 
 from webdriver.error import NoSuchWindowException
 
-
+import time
 from tests.classic.perform_actions.support.refine import get_events
 from tests.support.keys import Keys
+from tests.support.sync import Poll
 
 
 def test_null_response_value(session, wheel_chain):
@@ -55,7 +56,13 @@
 
     wheel_chain.scroll(0, 0, 5, 10, origin=target).perform()
 
+    # Chrome requires some time (~10-20ms) to process the event from the iframe, so we wait for it.
+    def wait_for_events(_):
+        return len(get_events(session)) > 0
+
+    Poll(session, timeout=0.5, interval=0.01, message='No wheel events found').until(wait_for_events)
     events = get_events(session)
+
     assert len(events) == 1
     assert events[0]["type"] == "wheel"
     assert events[0]["deltaX"] == 5
diff --git a/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-source-headers-ignored-expected.txt b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-source-headers-ignored-expected.txt
new file mode 100644
index 0000000..a2d52012
--- /dev/null
+++ b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-source-headers-ignored-expected.txt
@@ -0,0 +1,11 @@
+Test that clicking an attributionsrc anchor which returns multiple Attribution-Reporting-Register-Source headers triggers an issue.
+Issue reported: {
+    code : AttributionReportingIssue
+    details : {
+        attributionReportingIssueDetails : {
+            request : <object>
+            violationType : SourceIgnored
+        }
+    }
+}
+
diff --git a/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-source-headers-ignored.js b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-source-headers-ignored.js
new file mode 100644
index 0000000..143239a
--- /dev/null
+++ b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-source-headers-ignored.js
@@ -0,0 +1,25 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+(async function(/** @type {import('test_runner').TestRunner} */ testRunner) {
+  const { dp } = await testRunner.startHTML(
+    '<a href="https://devtools.test:8443/inspector-protocol/attribution-reporting/resources/register-multiple-sources.php" attributionsrc target="_blank">Link</a>',
+    "Test that clicking an attributionsrc anchor which returns multiple Attribution-Reporting-Register-Source headers triggers an issue."
+  );
+
+  await dp.Audits.enable();
+
+  const issue = dp.Audits.onceIssueAdded();
+
+  await dp.Runtime.evaluate({
+    expression: `document.querySelector('a').click()`,
+    userGesture: true,
+  });
+
+  testRunner.log((await issue).params.issue, "Issue reported: ", [
+    "request",
+  ]);
+
+  testRunner.completeTest();
+});
diff --git a/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-trigger-headers-ignored-expected.txt b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-trigger-headers-ignored-expected.txt
new file mode 100644
index 0000000..7c98e32
--- /dev/null
+++ b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-trigger-headers-ignored-expected.txt
@@ -0,0 +1,11 @@
+Test that clicking an attributionsrc anchor which returns multiple Attribution-Reporting-Register-Trigger headers triggers an issue.
+Issue reported: {
+    code : AttributionReportingIssue
+    details : {
+        attributionReportingIssueDetails : {
+            request : <object>
+            violationType : TriggerIgnored
+        }
+    }
+}
+
diff --git a/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-trigger-headers-ignored.js b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-trigger-headers-ignored.js
new file mode 100644
index 0000000..bd63c9d
--- /dev/null
+++ b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/multiple-trigger-headers-ignored.js
@@ -0,0 +1,31 @@
+// Copyright 2024 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// TODO(@anthonygarant): Update to be a background ping instead of a navigation
+// the keepalive in-browser migration is enabled in the main
+// attribution-reporting WPT suite. With a navigation, the trigger registration
+// would be ignored regardless of the fact that there are multiple headers since
+// the eligibility is source only.
+
+(async function(/** @type {import('test_runner').TestRunner} */ testRunner) {
+  const { dp } = await testRunner.startHTML(
+    '<a href="https://devtools.test:8443/inspector-protocol/attribution-reporting/resources/register-multiple-triggers.php" attributionsrc target="_blank">Link</a>',
+    "Test that clicking an attributionsrc anchor which returns multiple Attribution-Reporting-Register-Trigger headers triggers an issue."
+  );
+
+  await dp.Audits.enable();
+
+  const issue = dp.Audits.onceIssueAdded();
+
+  await dp.Runtime.evaluate({
+    expression: `document.querySelector('a').click()`,
+    userGesture: true,
+  });
+
+  testRunner.log((await issue).params.issue, "Issue reported: ", [
+    "request",
+  ]);
+
+  testRunner.completeTest();
+});
diff --git a/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/resources/register-multiple-sources.php b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/resources/register-multiple-sources.php
new file mode 100644
index 0000000..5766df4
--- /dev/null
+++ b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/resources/register-multiple-sources.php
@@ -0,0 +1,4 @@
+<?php
+header('Attribution-Reporting-Register-Source: {"source_event_id":"0","destination":"https://a.example"}');
+header('Attribution-Reporting-Register-Source: {"source_event_id":"1","destination":"https://b.example"}', /*replace=*/false);
+?>
diff --git a/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/resources/register-multiple-triggers.php b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/resources/register-multiple-triggers.php
new file mode 100644
index 0000000..a4152bd
--- /dev/null
+++ b/third_party/blink/web_tests/http/tests/inspector-protocol/attribution-reporting/resources/register-multiple-triggers.php
@@ -0,0 +1,4 @@
+<?php
+header('Attribution-Reporting-Register-Trigger: {}');
+header('Attribution-Reporting-Register-Trigger: {}', /*replace=*/false);
+?>
diff --git a/third_party/chromite b/third_party/chromite
index 8d0f67b..8a31c4e 160000
--- a/third_party/chromite
+++ b/third_party/chromite
@@ -1 +1 @@
-Subproject commit 8d0f67b603baecf2da3e1ad830062e356430f5ab
+Subproject commit 8a31c4e2f3416b669a31b6e6b8be77bf4ec12532
diff --git a/third_party/depot_tools b/third_party/depot_tools
index 9a8c80c..f97b5e2 160000
--- a/third_party/depot_tools
+++ b/third_party/depot_tools
@@ -1 +1 @@
-Subproject commit 9a8c80ca55f2bd2023c801dfd97651617e618867
+Subproject commit f97b5e242423158b83bcd9ca518dbd3b13cd85d3
diff --git a/third_party/devtools-frontend-internal b/third_party/devtools-frontend-internal
index 291ff6f..7ff0acf 160000
--- a/third_party/devtools-frontend-internal
+++ b/third_party/devtools-frontend-internal
@@ -1 +1 @@
-Subproject commit 291ff6f046be407b5bd3e20f6ae6aa4eeac27398
+Subproject commit 7ff0acfea354b4043618f5d0b24c23b0f8fb829c
diff --git a/third_party/devtools-frontend/src b/third_party/devtools-frontend/src
index 0d533fa..33a09fb 160000
--- a/third_party/devtools-frontend/src
+++ b/third_party/devtools-frontend/src
@@ -1 +1 @@
-Subproject commit 0d533faf672a300f96a692c96a8eed7a868a844a
+Subproject commit 33a09fb44a6f593270589acfac482d9b275b389c
diff --git a/third_party/highway/BUILD.gn b/third_party/highway/BUILD.gn
index 362f395..9364e7e8 100644
--- a/third_party/highway/BUILD.gn
+++ b/third_party/highway/BUILD.gn
@@ -13,14 +13,23 @@
     # explicitly disabling AVX2 and AVX3 targets.
     defines += [ "HWY_BROKEN_TARGETS=(HWY_AVX2|HWY_AVX3)" ]
   }
+  if (target_cpu == "arm64") {
+    # There are Chrome targets that use HWY_ALIGN on absl::uint128. This breaks
+    # with SVE, since HWY_ALIGN == 8 for it and the minimal alignment requirement
+    # for absl::uint128 is 16.
+    defines += [ "HWY_BROKEN_TARGETS=HWY_ALL_SVE" ]
+  }
 }
 
 source_set("libhwy") {
   sources = [
+    "src/hwy/abort.cc",
     "src/hwy/aligned_allocator.cc",
     "src/hwy/per_target.cc",
     "src/hwy/print.cc",
+    "src/hwy/stats.cc",
     "src/hwy/targets.cc",
+    "src/hwy/timer.cc",
   ]
 
   public_configs = [ ":libhwy_external_config" ]
diff --git a/third_party/highway/README.chromium b/third_party/highway/README.chromium
index 62e1c72..ace897ba 100644
--- a/third_party/highway/README.chromium
+++ b/third_party/highway/README.chromium
@@ -1,9 +1,9 @@
 Name: Highway: C++ library for SIMD
 Short Name: highway
 URL: https://github.com/google/highway
-Version: 1.1.0
-Date: 2024-03-14
-Revision: 8f20644eca693cfb74aa795b0006b6779c370e7a
+Version: N/A
+Date: 2024-05-16
+Revision: 8295336dd70f1201d42c22ab5b0861de38cf8fbf
 License: Apache 2.0
 License File: LICENSE
 Security Critical: yes
diff --git a/third_party/highway/src b/third_party/highway/src
index 8f20644..8295336 160000
--- a/third_party/highway/src
+++ b/third_party/highway/src
@@ -1 +1 @@
-Subproject commit 8f20644eca693cfb74aa795b0006b6779c370e7a
+Subproject commit 8295336dd70f1201d42c22ab5b0861de38cf8fbf
diff --git a/third_party/lit/v3_0/BUILD.gn b/third_party/lit/v3_0/BUILD.gn
index 0167d6f..1c9e891 100644
--- a/third_party/lit/v3_0/BUILD.gn
+++ b/third_party/lit/v3_0/BUILD.gn
@@ -22,6 +22,7 @@
     "//chrome/browser/resources/side_panel/history_clusters:build_ts",
     "//chrome/browser/resources/side_panel/reading_list:build_ts",
     "//chrome/browser/resources/side_panel/shared:build_ts",
+    "//chrome/browser/resources/webui_gallery:build_ts",
     "//chrome/browser/resources/welcome:build_ts",
     "//chrome/browser/resources/whats_new:build_ts",
     "//chrome/test/data/webui/cr_components:build_ts",
diff --git a/third_party/perfetto b/third_party/perfetto
index e12318b..a056c12 160000
--- a/third_party/perfetto
+++ b/third_party/perfetto
@@ -1 +1 @@
-Subproject commit e12318bd5a080502f7f18dbd12c0ac5b4cb5478d
+Subproject commit a056c122b9a4c09797d3f09fdf4671657ff98240
diff --git a/third_party/rust/chromium_crates_io/Cargo.lock b/third_party/rust/chromium_crates_io/Cargo.lock
index 5ec8927..89f8ec3 100644
--- a/third_party/rust/chromium_crates_io/Cargo.lock
+++ b/third_party/rust/chromium_crates_io/Cargo.lock
@@ -143,7 +143,7 @@
 
 [[package]]
 name = "cxx"
-version = "1.0.121"
+version = "1.0.122"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cc",
@@ -166,12 +166,12 @@
 
 [[package]]
 name = "cxxbridge-flags"
-version = "1.0.121"
+version = "1.0.122"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "cxxbridge-macro"
-version = "1.0.121"
+version = "1.0.122"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "proc-macro2",
diff --git a/third_party/rust/chromium_crates_io/supply-chain/audits.toml b/third_party/rust/chromium_crates_io/supply-chain/audits.toml
index 41741fb..9f03c7a 100644
--- a/third_party/rust/chromium_crates_io/supply-chain/audits.toml
+++ b/third_party/rust/chromium_crates_io/supply-chain/audits.toml
@@ -368,15 +368,6 @@
 [[audits.cxx]]
 who = "Lukasz Anforowicz <lukasza@chromium.org>"
 criteria = "does-not-implement-crypto"
-version = "1.0.116"
-notes = """
-Grepped for \"crypt\", \"cipher\" - there were no hits
-(except for benign hits in `MODULE.bazel.lock`)
-"""
-
-[[audits.cxx]]
-who = "Lukasz Anforowicz <lukasza@chromium.org>"
-criteria = "does-not-implement-crypto"
 version = "1.0.117"
 notes = """
 Grepped for \"crypt\", \"cipher\" - there were no hits
@@ -384,31 +375,30 @@
 """
 
 [[audits.cxx]]
-who = "Lukasz Anforowicz <lukasza@chromium.org>"
-criteria = "does-not-implement-crypto"
-delta = "1.0.110 -> 1.0.115"
-notes = """
-Grepped for \"crypt\", \"cipher\" - there were no hits
-(except for benign hits in `MODULE.bazel.lock`)
-"""
-
-[[audits.cxx]]
 who = "danakj <danakj@chromium.org>"
-criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-2"]
+criteria = ["does-not-implement-crypto"]
 delta = "1.0.117 -> 1.0.119"
 notes = "Reviewed in https://crrev.com/c/5362739"
 
 [[audits.cxx]]
 who = "Dustin J. Mitchell <djmitche@chromium.org>"
-criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-2"]
+criteria = ["does-not-implement-crypto"]
 delta = "1.0.119 -> 1.0.120"
 notes = "Reviewed in https://chromium-review.googlesource.com/c/chromium/src/+/5392544."
 
 [[audits.cxx]]
 who = "Adrian Taylor <adetaylor@chromium.org>"
-criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-2"]
+criteria = ["does-not-implement-crypto""]
 delta = "1.0.120 -> 1.0.121"
 
+[[audits.cxx]]
+who = "danakj <danakj@chromium.org>"
+criteria = ["does-not-implement-crypto"]
+version = "1.0.122"
+notes = """
+safe-to-deploy and ub-risk-2 are provided by exemption.
+"""
+
 [[audits.cxxbridge]]
 who = "danakj@chromium.org"
 criteria = ["safe-to-run", "does-not-implement-crypto"]
@@ -482,61 +472,21 @@
 """
 
 [[audits.cxxbridge-flags]]
-who = "Lukasz Anforowicz <lukasza@chromium.org>"
-criteria = "does-not-implement-crypto"
-version = "1.0.116"
-notes = 'Grepped for \"crypt\", \"cipher\" - there were no hits'
-
-[[audits.cxxbridge-flags]]
-who = "Lukasz Anforowicz <lukasza@chromium.org>"
+who = "danakj <danakj@chromium.org>"
 criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-0"]
-version = "1.0.117"
+version = "1.0.122"
+notes = "no grep hits for cipher, crypto, fs, net, or unsafe"
+
+[[audits.cxxbridge-macro]]
+who = "danakj <danakj@chromium.org>"
+criteria = ["does-not-implement-crypto"]
+version = "1.0.122"
 notes = """
-I grepped for \"crypt\", \"cipher\", \"fs\", \"net\", \"unsafe\" - there were no hits.
-The crate is very straightforward - it just defines a `pub const STD: &str`.
-The crate was added to Chromium in https://crrev.com/c/5029701.
+no grep hits for cipher, crypto.
+
+safe-to-deploy and ub-risk-2 are provided by exemption.
 """
 
-[[audits.cxxbridge-flags]]
-who = "Lukasz Anforowicz <lukasza@chromium.org>"
-criteria = "does-not-implement-crypto"
-delta = "1.0.110 -> 1.0.115"
-notes = 'Grepped for \"crypt\", \"cipher\" - there were no hits'
-
-[[audits.cxxbridge-flags]]
-who = "danakj <danakj@chromium.org>"
-criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-2"]
-delta = "1.0.117 -> 1.0.119"
-notes = "Reviewed in https://crrev.com/c/5362739"
-
-[[audits.cxxbridge-flags]]
-who = "Dustin J. Mitchell <djmitche@chromium.org>"
-criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-2"]
-delta = "1.0.119 -> 1.0.120"
-notes = "Reviewed in https://chromium-review.googlesource.com/c/chromium/src/+/5392544"
-
-[[audits.cxxbridge-flags]]
-who = "Adrian Taylor <adetaylor@chromium.org>"
-criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-0"]
-delta = "1.0.120 -> 1.0.121"
-
-[[audits.cxxbridge-macro]]
-who = "danakj <danakj@chromium.org>"
-criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-2"]
-delta = "1.0.117 -> 1.0.119"
-notes = "Reviewed in https://crrev.com/c/5362739"
-
-[[audits.cxxbridge-macro]]
-who = "Dustin J. Mitchell <djmitche@chromium.org>"
-criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-2"]
-delta = "1.0.119 -> 1.0.120"
-notes = "Reviewed in https://chromium-review.googlesource.com/c/chromium/src/+/5392544"
-
-[[audits.cxxbridge-macro]]
-who = "Adrian Taylor <adetaylor@chromium.org>"
-criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-2"]
-delta = "1.0.120 -> 1.0.121"
-
 [[audits.either]]
 who = "agl@chromium.org"
 criteria = ["safe-to-run", "does-not-implement-crypto"]
diff --git a/third_party/rust/chromium_crates_io/supply-chain/config.toml b/third_party/rust/chromium_crates_io/supply-chain/config.toml
index 0bb638f..f18fc9d 100644
--- a/third_party/rust/chromium_crates_io/supply-chain/config.toml
+++ b/third_party/rust/chromium_crates_io/supply-chain/config.toml
@@ -83,16 +83,16 @@
 [policy."codespan-reporting:0.11.1"]
 criteria = ["does-not-implement-crypto", "safe-to-run"]
 
-[policy."cxx:1.0.121"]
+[policy."cxx:1.0.122"]
 criteria = ["does-not-implement-crypto", "safe-to-deploy", "ub-risk-2"]
 
 [policy."cxxbridge-cmd:1.0.122"]
 criteria = ["does-not-implement-crypto", "safe-to-run"]
 
-[policy."cxxbridge-flags:1.0.121"]
+[policy."cxxbridge-flags:1.0.122"]
 criteria = ["does-not-implement-crypto", "safe-to-deploy", "ub-risk-2"]
 
-[policy."cxxbridge-macro:1.0.121"]
+[policy."cxxbridge-macro:1.0.122"]
 criteria = ["does-not-implement-crypto", "safe-to-deploy", "ub-risk-2"]
 
 [policy."either:1.11.0"]
@@ -282,7 +282,7 @@
 criteria = ["does-not-implement-crypto", "safe-to-run"]
 
 [[exemptions.cxx]]
-version = "1.0.117"
+version = "1.0.122"
 criteria = ["safe-to-deploy", "ub-risk-2"]
 notes = """
 Grandparented-in when setting up `cargo vet` in Jan 2024
@@ -292,10 +292,11 @@
 
 Exemption updated to 1.0.116 in Feb 2024.
 Exemption updated to 1.0.117 in Feb 2024.
+Exemption updated to 1.0.122 in May 2024.
 """
 
 [[exemptions.cxxbridge-macro]]
-version = "1.0.117"
+version = "1.0.122"
 criteria = ["safe-to-deploy", "does-not-implement-crypto", "ub-risk-2"]
 notes = """
 Grandparented-in when setting up `cargo vet` in Jan 2024
@@ -305,6 +306,7 @@
 
 Exemption updated to 1.0.116 in Feb 2024.
 Exemption updated to 1.0.117 in Feb 2024.
+Exemption updated to 1.0.122 in May 2024.
 """
 
 [[exemptions.libc]]
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.cargo_vcs_info.json b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.cargo_vcs_info.json
deleted file mode 100644
index 52a2614..0000000
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.cargo_vcs_info.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-  "git": {
-    "sha1": "084b47d7fa624a38cf429b9022cdd4ec2a05b88b"
-  },
-  "path_in_vcs": ""
-}
\ No newline at end of file
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.bazelignore b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.bazelignore
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.bazelignore
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.bazelignore
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.bazelrc b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.bazelrc
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.bazelrc
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.bazelrc
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.buckconfig b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.buckconfig
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.buckconfig
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.buckconfig
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.buckroot b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.buckroot
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.buckroot
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.buckroot
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.cargo-checksum.json b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.cargo-checksum.json
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.cargo-checksum.json
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.cargo-checksum.json
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.cargo_vcs_info.json b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.cargo_vcs_info.json
new file mode 100644
index 0000000..19f204c
--- /dev/null
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.cargo_vcs_info.json
@@ -0,0 +1,6 @@
+{
+  "git": {
+    "sha1": "462896c80629a51ddcdc72fa55af0bb4befbb675"
+  },
+  "path_in_vcs": ""
+}
\ No newline at end of file
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.clang-format b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.clang-format
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.clang-format
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.clang-format
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.clang-tidy b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.clang-tidy
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.clang-tidy
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.clang-tidy
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.devcontainer/Dockerfile b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.devcontainer/Dockerfile
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.devcontainer/Dockerfile
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.devcontainer/Dockerfile
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.devcontainer/README.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.devcontainer/README.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.devcontainer/README.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.devcontainer/README.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.devcontainer/build.Dockerfile b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.devcontainer/build.Dockerfile
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.devcontainer/build.Dockerfile
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.devcontainer/build.Dockerfile
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.devcontainer/devcontainer.json b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.devcontainer/devcontainer.json
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.devcontainer/devcontainer.json
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.devcontainer/devcontainer.json
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.gitattributes b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.gitattributes
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.gitattributes
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.gitattributes
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/FUNDING.yml b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/FUNDING.yml
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/FUNDING.yml
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/FUNDING.yml
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows/buck2.yml b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows/buck2.yml
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows/buck2.yml
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows/buck2.yml
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows/ci.yml b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows/ci.yml
similarity index 98%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows/ci.yml
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows/ci.yml
index 4478721..909de0ae6 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows/ci.yml
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows/ci.yml
@@ -25,7 +25,7 @@
           - rust: nightly
           - rust: beta
           - rust: stable
-          - rust: 1.60.0
+          - rust: 1.63.0
           - rust: 1.64.0
           - rust: 1.70.0
           - rust: 1.74.0
@@ -65,7 +65,7 @@
         shell: bash
       - run: cargo run --manifest-path demo/Cargo.toml
       - run: cargo test --workspace ${{steps.testsuite.outputs.exclude}}
-        if: matrix.rust != '1.60.0' && matrix.rust != '1.64.0'
+        if: matrix.rust != '1.63.0' && matrix.rust != '1.64.0'
       - run: cargo check --no-default-features --features alloc
         env:
           RUSTFLAGS: --cfg compile_error_if_std ${{env.RUSTFLAGS}}
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows/install.yml b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows/install.yml
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows/install.yml
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows/install.yml
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows/site.yml b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows/site.yml
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.github/workflows/site.yml
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.github/workflows/site.yml
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.gitignore b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.gitignore
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.gitignore
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.gitignore
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.gitmodules b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.gitmodules
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.gitmodules
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.gitmodules
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.vscode/README.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.vscode/README.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.vscode/README.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.vscode/README.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.vscode/launch.json b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.vscode/launch.json
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.vscode/launch.json
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.vscode/launch.json
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.vscode/settings.json b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.vscode/settings.json
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.vscode/settings.json
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.vscode/settings.json
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.vscode/tasks.json b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.vscode/tasks.json
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.vscode/tasks.json
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.vscode/tasks.json
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.watchmanconfig b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.watchmanconfig
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/.watchmanconfig
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/.watchmanconfig
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/BUCK b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/BUCK
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/BUCK
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/BUCK
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/BUILD b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/BUILD
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/BUILD
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/BUILD
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/Cargo.toml b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/Cargo.toml
similarity index 79%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/Cargo.toml
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/Cargo.toml
index c89a61a..12ddd8aac 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/Cargo.toml
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/Cargo.toml
@@ -11,10 +11,11 @@
 
 [package]
 edition = "2021"
-rust-version = "1.60"
+rust-version = "1.63"
 name = "cxx"
-version = "1.0.121"
+version = "1.0.122"
 authors = ["David Tolnay <dtolnay@gmail.com>"]
+build = "build.rs"
 links = "cxxbridge1"
 exclude = [
     "/demo",
@@ -23,6 +24,10 @@
     "/third-party",
     "/tools/buck/prelude",
 ]
+autobins = false
+autoexamples = false
+autotests = false
+autobenches = false
 description = "Safe interop between Rust and C++"
 homepage = "https://cxx.rs"
 documentation = "https://docs.rs/cxx"
@@ -67,16 +72,42 @@
 targets = ["x86_64-unknown-linux-gnu"]
 
 [lib]
+name = "cxx"
+path = "src/lib.rs"
 doc-scrape-examples = false
 
+[[test]]
+name = "cxx_vector"
+path = "tests/cxx_vector.rs"
+
+[[test]]
+name = "compiletest"
+path = "tests/compiletest.rs"
+
+[[test]]
+name = "cxx_gen"
+path = "tests/cxx_gen.rs"
+
+[[test]]
+name = "unique_ptr"
+path = "tests/unique_ptr.rs"
+
+[[test]]
+name = "cxx_string"
+path = "tests/cxx_string.rs"
+
+[[test]]
+name = "test"
+path = "tests/test.rs"
+
 [dependencies.cxxbridge-macro]
-version = "=1.0.121"
+version = "=1.0.122"
 
 [dependencies.link-cplusplus]
 version = "1.0.9"
 
 [dev-dependencies.cxx-build]
-version = "=1.0.121"
+version = "=1.0.122"
 
 [dev-dependencies.cxx-gen]
 version = "0.7"
@@ -95,7 +126,7 @@
 version = "1.0.83"
 
 [build-dependencies.cxxbridge-flags]
-version = "=1.0.121"
+version = "=1.0.122"
 default-features = false
 
 [features]
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/Cargo.toml.orig b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/Cargo.toml.orig
similarity index 88%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/Cargo.toml.orig
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/Cargo.toml.orig
index 997b6eb..205edde 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/Cargo.toml.orig
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/Cargo.toml.orig
@@ -1,6 +1,6 @@
 [package]
 name = "cxx"
-version = "1.0.121"
+version = "1.0.122"
 authors = ["David Tolnay <dtolnay@gmail.com>"]
 categories = ["development-tools::ffi", "api-bindings", "no-std"]
 description = "Safe interop between Rust and C++"
@@ -12,7 +12,7 @@
 license = "MIT OR Apache-2.0"
 links = "cxxbridge1"
 repository = "https://github.com/dtolnay/cxx"
-rust-version = "1.60"
+rust-version = "1.63"
 
 [features]
 default = ["std", "cxxbridge-flags/default"] # c++11
@@ -23,15 +23,15 @@
 std = ["alloc"]
 
 [dependencies]
-cxxbridge-macro = { version = "=1.0.121", path = "macro" }
+cxxbridge-macro = { version = "=1.0.122", path = "macro" }
 link-cplusplus = "1.0.9"
 
 [build-dependencies]
 cc = "1.0.83"
-cxxbridge-flags = { version = "=1.0.121", path = "flags", default-features = false }
+cxxbridge-flags = { version = "=1.0.122", path = "flags", default-features = false }
 
 [dev-dependencies]
-cxx-build = { version = "=1.0.121", path = "gen/build" }
+cxx-build = { version = "=1.0.122", path = "gen/build" }
 cxx-gen = { version = "0.7", path = "gen/lib" }
 cxx-test-suite = { version = "0", path = "tests/ffi" }
 rustversion = "1.0.13"
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/LICENSE-APACHE b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/LICENSE-APACHE
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/LICENSE-APACHE
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/LICENSE-APACHE
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/LICENSE-MIT b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/LICENSE-MIT
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/LICENSE-MIT
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/LICENSE-MIT
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/MODULE.bazel b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/MODULE.bazel
similarity index 82%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/MODULE.bazel
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/MODULE.bazel
index a597ca0..baae0aa9 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/MODULE.bazel
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/MODULE.bazel
@@ -1,11 +1,11 @@
 module(name = "cxx.rs")
 
 bazel_dep(name = "bazel_skylib", version = "1.5.0")
-bazel_dep(name = "rules_rust", version = "0.41.1")
+bazel_dep(name = "rules_rust", version = "0.42.1")
 
 rust = use_extension("@rules_rust//rust:extensions.bzl", "rust")
 rust.toolchain(
-    versions = ["1.77.0"],
+    versions = ["1.78.0"],
 )
 use_repo(rust, "rust_toolchains")
 
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/MODULE.bazel.lock b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/MODULE.bazel.lock
similarity index 85%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/MODULE.bazel.lock
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/MODULE.bazel.lock
index e021ab2..5d06516 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/MODULE.bazel.lock
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/MODULE.bazel.lock
@@ -1,6 +1,6 @@
 {
   "lockFileVersion": 6,
-  "moduleFileHash": "cfc1fb790ae3b331704c8cb14306153abf7a406b141152022ddb5c2a13e5c566",
+  "moduleFileHash": "d83ec7388a2db5e111023a9c2b6fab644449d337d017665e4ad745c61e00da46",
   "flags": {
     "cmdRegistries": [
       "https://bcr.bazel.build/"
@@ -44,7 +44,7 @@
               "tagName": "toolchain",
               "attributeValues": {
                 "versions": [
-                  "1.77.0"
+                  "1.78.0"
                 ]
               },
               "devDependency": false,
@@ -78,7 +78,7 @@
       ],
       "deps": {
         "bazel_skylib": "bazel_skylib@1.5.0",
-        "rules_rust": "rules_rust@0.41.1",
+        "rules_rust": "rules_rust@0.42.1",
         "bazel_tools": "bazel_tools@_",
         "local_config_platform": "local_config_platform@_"
       }
@@ -113,10 +113,10 @@
         }
       }
     },
-    "rules_rust@0.41.1": {
+    "rules_rust@0.42.1": {
       "name": "rules_rust",
-      "version": "0.41.1",
-      "key": "rules_rust@0.41.1",
+      "version": "0.42.1",
+      "key": "rules_rust@0.42.1",
       "repoName": "rules_rust",
       "executionPlatformsToRegister": [],
       "toolchainsToRegister": [
@@ -126,10 +126,10 @@
         {
           "extensionBzlFile": "@rules_rust//rust/private:extensions.bzl",
           "extensionName": "i",
-          "usingModule": "rules_rust@0.41.1",
+          "usingModule": "rules_rust@0.42.1",
           "location": {
-            "file": "https://bcr.bazel.build/modules/rules_rust/0.41.1/MODULE.bazel",
-            "line": 43,
+            "file": "https://bcr.bazel.build/modules/rules_rust/0.42.1/MODULE.bazel",
+            "line": 54,
             "column": 30
           },
           "imports": {
@@ -196,6 +196,13 @@
             "rules_rust_prost__tokio-1.28.2": "rules_rust_prost__tokio-1.28.2",
             "rules_rust_prost__tokio-stream-0.1.14": "rules_rust_prost__tokio-stream-0.1.14",
             "rules_rust_prost__tonic-0.9.2": "rules_rust_prost__tonic-0.9.2",
+            "rules_rust_proto__grpc-0.6.2": "rules_rust_proto__grpc-0.6.2",
+            "rules_rust_proto__grpc-compiler-0.6.2": "rules_rust_proto__grpc-compiler-0.6.2",
+            "rules_rust_proto__log-0.4.17": "rules_rust_proto__log-0.4.17",
+            "rules_rust_proto__protobuf-2.8.2": "rules_rust_proto__protobuf-2.8.2",
+            "rules_rust_proto__protobuf-codegen-2.8.2": "rules_rust_proto__protobuf-codegen-2.8.2",
+            "rules_rust_proto__tls-api-0.1.22": "rules_rust_proto__tls-api-0.1.22",
+            "rules_rust_proto__tls-api-stub-0.1.22": "rules_rust_proto__tls-api-stub-0.1.22",
             "rules_rust_test_load_arbitrary_tool": "rules_rust_test_load_arbitrary_tool",
             "rules_rust_tinyjson": "rules_rust_tinyjson",
             "rules_rust_toolchain_test_target_json": "rules_rust_toolchain_test_target_json",
@@ -229,15 +236,14 @@
         {
           "extensionBzlFile": "@rules_rust//rust:extensions.bzl",
           "extensionName": "rust",
-          "usingModule": "rules_rust@0.41.1",
+          "usingModule": "rules_rust@0.42.1",
           "location": {
-            "file": "https://bcr.bazel.build/modules/rules_rust/0.41.1/MODULE.bazel",
-            "line": 135,
+            "file": "https://bcr.bazel.build/modules/rules_rust/0.42.1/MODULE.bazel",
+            "line": 153,
             "column": 21
           },
           "imports": {
-            "rust_toolchains": "rust_toolchains",
-            "rust_host_tools": "rust_host_tools"
+            "rust_toolchains": "rust_toolchains"
           },
           "devImports": [],
           "tags": [
@@ -248,8 +254,8 @@
               },
               "devDependency": false,
               "location": {
-                "file": "https://bcr.bazel.build/modules/rules_rust/0.41.1/MODULE.bazel",
-                "line": 136,
+                "file": "https://bcr.bazel.build/modules/rules_rust/0.42.1/MODULE.bazel",
+                "line": 154,
                 "column": 15
               }
             }
@@ -258,12 +264,29 @@
           "hasNonDevUseExtension": true
         },
         {
+          "extensionBzlFile": "@rules_rust//rust:extensions.bzl",
+          "extensionName": "rust_host_tools",
+          "usingModule": "rules_rust@0.42.1",
+          "location": {
+            "file": "https://bcr.bazel.build/modules/rules_rust/0.42.1/MODULE.bazel",
+            "line": 176,
+            "column": 32
+          },
+          "imports": {
+            "rust_host_tools": "rust_host_tools"
+          },
+          "devImports": [],
+          "tags": [],
+          "hasDevUseExtension": false,
+          "hasNonDevUseExtension": true
+        },
+        {
           "extensionBzlFile": "@rules_rust//crate_universe/private/module_extensions:cargo_bazel_bootstrap.bzl",
           "extensionName": "cargo_bazel_bootstrap",
-          "usingModule": "rules_rust@0.41.1",
+          "usingModule": "rules_rust@0.42.1",
           "location": {
-            "file": "https://bcr.bazel.build/modules/rules_rust/0.41.1/MODULE.bazel",
-            "line": 145,
+            "file": "https://bcr.bazel.build/modules/rules_rust/0.42.1/MODULE.bazel",
+            "line": 179,
             "column": 38
           },
           "imports": {
@@ -292,9 +315,9 @@
         "ruleClassName": "http_archive",
         "attributes": {
           "urls": [
-            "https://github.com/bazelbuild/rules_rust/releases/download/0.41.1/rules_rust-v0.41.1.tar.gz"
+            "https://github.com/bazelbuild/rules_rust/releases/download/0.42.1/rules_rust-v0.42.1.tar.gz"
           ],
-          "integrity": "sha256-mUV3N2A8ORVVZbrm3O9yepAe/Kv4MD2ob9YQhB8aOI8=",
+          "integrity": "sha256-JLN47ZcAbx9wEr5Jiib4HduZATGLiDgK7oUi/fvotzU=",
           "strip_prefix": "",
           "remote_patches": {},
           "remote_patch_strip": 0
@@ -1328,22 +1351,204 @@
   "moduleExtensions": {
     "//tools/bazel:extension.bzl%crate_repositories": {
       "general": {
-        "bzlTransitiveDigest": "TsQgQi13G5yAQGDXUxspaktUq2+4PJ3lhFLa4pLDbwE=",
+        "bzlTransitiveDigest": "7PNfc9VDjcyFLTIEiASfh2+u2LlNqlcvESpBBlt2rgY=",
         "recordedFileInputs": {},
         "recordedDirentsInputs": {},
         "envVariables": {},
         "generatedRepoSpecs": {
-          "vendor__unicode-width-0.1.11": {
+          "vendor__unicode-width-0.1.12": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85",
+              "sha256": "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6",
               "type": "tar.gz",
               "urls": [
-                "https://static.crates.io/crates/unicode-width/0.1.11/download"
+                "https://static.crates.io/crates/unicode-width/0.1.12/download"
               ],
-              "strip_prefix": "unicode-width-0.1.11",
-              "build_file": "@@//third-party/bazel:BUILD.unicode-width-0.1.11.bazel"
+              "strip_prefix": "unicode-width-0.1.12",
+              "build_file": "@@//third-party/bazel:BUILD.unicode-width-0.1.12.bazel"
+            }
+          },
+          "vendor__proc-macro2-1.0.82": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/proc-macro2/1.0.82/download"
+              ],
+              "strip_prefix": "proc-macro2-1.0.82",
+              "build_file": "@@//third-party/bazel:BUILD.proc-macro2-1.0.82.bazel"
+            }
+          },
+          "vendor__quote-1.0.36": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/quote/1.0.36/download"
+              ],
+              "strip_prefix": "quote-1.0.36",
+              "build_file": "@@//third-party/bazel:BUILD.quote-1.0.36.bazel"
+            }
+          },
+          "vendor__clap_builder-4.5.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap_builder/4.5.2/download"
+              ],
+              "strip_prefix": "clap_builder-4.5.2",
+              "build_file": "@@//third-party/bazel:BUILD.clap_builder-4.5.2.bazel"
+            }
+          },
+          "vendor__anstyle-1.0.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anstyle/1.0.7/download"
+              ],
+              "strip_prefix": "anstyle-1.0.7",
+              "build_file": "@@//third-party/bazel:BUILD.anstyle-1.0.7.bazel"
+            }
+          },
+          "vendor__windows_x86_64_gnu-0.52.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_gnu/0.52.5/download"
+              ],
+              "strip_prefix": "windows_x86_64_gnu-0.52.5",
+              "build_file": "@@//third-party/bazel:BUILD.windows_x86_64_gnu-0.52.5.bazel"
+            }
+          },
+          "vendor__scratch-1.0.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "a3cf7c11c38cb994f3d40e8a8cde3bbd1f72a435e4c49e85d6553d8312306152",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/scratch/1.0.7/download"
+              ],
+              "strip_prefix": "scratch-1.0.7",
+              "build_file": "@@//third-party/bazel:BUILD.scratch-1.0.7.bazel"
+            }
+          },
+          "vendor__windows_aarch64_msvc-0.52.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_aarch64_msvc/0.52.5/download"
+              ],
+              "strip_prefix": "windows_aarch64_msvc-0.52.5",
+              "build_file": "@@//third-party/bazel:BUILD.windows_aarch64_msvc-0.52.5.bazel"
+            }
+          },
+          "vendor__windows_x86_64_gnullvm-0.52.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_gnullvm/0.52.5/download"
+              ],
+              "strip_prefix": "windows_x86_64_gnullvm-0.52.5",
+              "build_file": "@@//third-party/bazel:BUILD.windows_x86_64_gnullvm-0.52.5.bazel"
+            }
+          },
+          "vendor__windows_aarch64_gnullvm-0.52.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_aarch64_gnullvm/0.52.5/download"
+              ],
+              "strip_prefix": "windows_aarch64_gnullvm-0.52.5",
+              "build_file": "@@//third-party/bazel:BUILD.windows_aarch64_gnullvm-0.52.5.bazel"
+            }
+          },
+          "vendor__cc-1.0.97": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cc/1.0.97/download"
+              ],
+              "strip_prefix": "cc-1.0.97",
+              "build_file": "@@//third-party/bazel:BUILD.cc-1.0.97.bazel"
+            }
+          },
+          "vendor__clap_lex-0.7.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap_lex/0.7.0/download"
+              ],
+              "strip_prefix": "clap_lex-0.7.0",
+              "build_file": "@@//third-party/bazel:BUILD.clap_lex-0.7.0.bazel"
+            }
+          },
+          "vendor__windows-sys-0.52.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows-sys/0.52.0/download"
+              ],
+              "strip_prefix": "windows-sys-0.52.0",
+              "build_file": "@@//third-party/bazel:BUILD.windows-sys-0.52.0.bazel"
+            }
+          },
+          "vendor__windows_i686_msvc-0.52.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_i686_msvc/0.52.5/download"
+              ],
+              "strip_prefix": "windows_i686_msvc-0.52.5",
+              "build_file": "@@//third-party/bazel:BUILD.windows_i686_msvc-0.52.5.bazel"
+            }
+          },
+          "vendor__windows_x86_64_msvc-0.52.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_msvc/0.52.5/download"
+              ],
+              "strip_prefix": "windows_x86_64_msvc-0.52.5",
+              "build_file": "@@//third-party/bazel:BUILD.windows_x86_64_msvc-0.52.5.bazel"
             }
           },
           "vendor__once_cell-1.19.0": {
@@ -1372,82 +1577,17 @@
               "build_file": "@@//third-party/bazel:BUILD.termcolor-1.4.1.bazel"
             }
           },
-          "vendor__quote-1.0.35": {
+          "vendor__windows_i686_gnu-0.52.5": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef",
+              "sha256": "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670",
               "type": "tar.gz",
               "urls": [
-                "https://static.crates.io/crates/quote/1.0.35/download"
+                "https://static.crates.io/crates/windows_i686_gnu/0.52.5/download"
               ],
-              "strip_prefix": "quote-1.0.35",
-              "build_file": "@@//third-party/bazel:BUILD.quote-1.0.35.bazel"
-            }
-          },
-          "vendor__winapi-x86_64-pc-windows-gnu-0.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f",
-              "type": "tar.gz",
-              "urls": [
-                "https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
-              ],
-              "strip_prefix": "winapi-x86_64-pc-windows-gnu-0.4.0",
-              "build_file": "@@//third-party/bazel:BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel"
-            }
-          },
-          "vendor__winapi-0.3.9": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419",
-              "type": "tar.gz",
-              "urls": [
-                "https://static.crates.io/crates/winapi/0.3.9/download"
-              ],
-              "strip_prefix": "winapi-0.3.9",
-              "build_file": "@@//third-party/bazel:BUILD.winapi-0.3.9.bazel"
-            }
-          },
-          "vendor__anstyle-1.0.6": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc",
-              "type": "tar.gz",
-              "urls": [
-                "https://static.crates.io/crates/anstyle/1.0.6/download"
-              ],
-              "strip_prefix": "anstyle-1.0.6",
-              "build_file": "@@//third-party/bazel:BUILD.anstyle-1.0.6.bazel"
-            }
-          },
-          "vendor__clap_builder-4.5.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4",
-              "type": "tar.gz",
-              "urls": [
-                "https://static.crates.io/crates/clap_builder/4.5.2/download"
-              ],
-              "strip_prefix": "clap_builder-4.5.2",
-              "build_file": "@@//third-party/bazel:BUILD.clap_builder-4.5.2.bazel"
-            }
-          },
-          "vendor__winapi-i686-pc-windows-gnu-0.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
-              "type": "tar.gz",
-              "urls": [
-                "https://static.crates.io/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
-              ],
-              "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
-              "build_file": "@@//third-party/bazel:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
+              "strip_prefix": "windows_i686_gnu-0.52.5",
+              "build_file": "@@//third-party/bazel:BUILD.windows_i686_gnu-0.52.5.bazel"
             }
           },
           "crates.io": {
@@ -1470,19 +1610,6 @@
               "build_file": "@@//third-party/bazel:BUILD.unicode-ident-1.0.12.bazel"
             }
           },
-          "vendor__scratch-1.0.7": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "a3cf7c11c38cb994f3d40e8a8cde3bbd1f72a435e4c49e85d6553d8312306152",
-              "type": "tar.gz",
-              "urls": [
-                "https://static.crates.io/crates/scratch/1.0.7/download"
-              ],
-              "strip_prefix": "scratch-1.0.7",
-              "build_file": "@@//third-party/bazel:BUILD.scratch-1.0.7.bazel"
-            }
-          },
           "vendor__codespan-reporting-0.11.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -1496,19 +1623,6 @@
               "build_file": "@@//third-party/bazel:BUILD.codespan-reporting-0.11.1.bazel"
             }
           },
-          "vendor__cc-1.0.92": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2678b2e3449475e95b0aa6f9b506a28e61b3dc8996592b983695e8ebb58a8b41",
-              "type": "tar.gz",
-              "urls": [
-                "https://static.crates.io/crates/cc/1.0.92/download"
-              ],
-              "strip_prefix": "cc-1.0.92",
-              "build_file": "@@//third-party/bazel:BUILD.cc-1.0.92.bazel"
-            }
-          },
           "vendor__clap-4.5.4": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -1522,56 +1636,56 @@
               "build_file": "@@//third-party/bazel:BUILD.clap-4.5.4.bazel"
             }
           },
-          "vendor__clap_lex-0.7.0": {
+          "vendor__syn-2.0.61": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce",
+              "sha256": "c993ed8ccba56ae856363b1845da7266a7cb78e1d146c8a32d54b45a8b831fc9",
               "type": "tar.gz",
               "urls": [
-                "https://static.crates.io/crates/clap_lex/0.7.0/download"
+                "https://static.crates.io/crates/syn/2.0.61/download"
               ],
-              "strip_prefix": "clap_lex-0.7.0",
-              "build_file": "@@//third-party/bazel:BUILD.clap_lex-0.7.0.bazel"
+              "strip_prefix": "syn-2.0.61",
+              "build_file": "@@//third-party/bazel:BUILD.syn-2.0.61.bazel"
             }
           },
-          "vendor__winapi-util-0.1.6": {
+          "vendor__windows-targets-0.52.5": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596",
+              "sha256": "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb",
               "type": "tar.gz",
               "urls": [
-                "https://static.crates.io/crates/winapi-util/0.1.6/download"
+                "https://static.crates.io/crates/windows-targets/0.52.5/download"
               ],
-              "strip_prefix": "winapi-util-0.1.6",
-              "build_file": "@@//third-party/bazel:BUILD.winapi-util-0.1.6.bazel"
+              "strip_prefix": "windows-targets-0.52.5",
+              "build_file": "@@//third-party/bazel:BUILD.windows-targets-0.52.5.bazel"
             }
           },
-          "vendor__proc-macro2-1.0.79": {
+          "vendor__winapi-util-0.1.8": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e",
+              "sha256": "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b",
               "type": "tar.gz",
               "urls": [
-                "https://static.crates.io/crates/proc-macro2/1.0.79/download"
+                "https://static.crates.io/crates/winapi-util/0.1.8/download"
               ],
-              "strip_prefix": "proc-macro2-1.0.79",
-              "build_file": "@@//third-party/bazel:BUILD.proc-macro2-1.0.79.bazel"
+              "strip_prefix": "winapi-util-0.1.8",
+              "build_file": "@@//third-party/bazel:BUILD.winapi-util-0.1.8.bazel"
             }
           },
-          "vendor__syn-2.0.58": {
+          "vendor__windows_i686_gnullvm-0.52.5": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687",
+              "sha256": "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9",
               "type": "tar.gz",
               "urls": [
-                "https://static.crates.io/crates/syn/2.0.58/download"
+                "https://static.crates.io/crates/windows_i686_gnullvm/0.52.5/download"
               ],
-              "strip_prefix": "syn-2.0.58",
-              "build_file": "@@//third-party/bazel:BUILD.syn-2.0.58.bazel"
+              "strip_prefix": "windows_i686_gnullvm-0.52.5",
+              "build_file": "@@//third-party/bazel:BUILD.windows_i686_gnullvm-0.52.5.bazel"
             }
           }
         },
@@ -1593,8 +1707,8 @@
           ],
           [
             "",
-            "vendor__cc-1.0.92",
-            "vendor__cc-1.0.92"
+            "vendor__cc-1.0.97",
+            "vendor__cc-1.0.97"
           ],
           [
             "",
@@ -1613,13 +1727,13 @@
           ],
           [
             "",
-            "vendor__proc-macro2-1.0.79",
-            "vendor__proc-macro2-1.0.79"
+            "vendor__proc-macro2-1.0.82",
+            "vendor__proc-macro2-1.0.82"
           ],
           [
             "",
-            "vendor__quote-1.0.35",
-            "vendor__quote-1.0.35"
+            "vendor__quote-1.0.36",
+            "vendor__quote-1.0.36"
           ],
           [
             "",
@@ -1628,8 +1742,8 @@
           ],
           [
             "",
-            "vendor__syn-2.0.58",
-            "vendor__syn-2.0.58"
+            "vendor__syn-2.0.61",
+            "vendor__syn-2.0.61"
           ]
         ]
       }
@@ -1661,6 +1775,39 @@
         ]
       }
     },
+    "@@bazel_features~//private:extensions.bzl%version_extension": {
+      "general": {
+        "bzlTransitiveDigest": "3FcE0iMy2yYKEbEO19f72k9dzcpRUXHH+igow5yVy8g=",
+        "recordedFileInputs": {},
+        "recordedDirentsInputs": {},
+        "envVariables": {},
+        "generatedRepoSpecs": {
+          "bazel_features_version": {
+            "bzlFile": "@@bazel_features~//private:version_repo.bzl",
+            "ruleClassName": "version_repo",
+            "attributes": {}
+          },
+          "bazel_features_globals": {
+            "bzlFile": "@@bazel_features~//private:globals_repo.bzl",
+            "ruleClassName": "globals_repo",
+            "attributes": {
+              "globals": {
+                "RunEnvironmentInfo": "5.3.0",
+                "DefaultInfo": "0.0.1",
+                "__TestingOnly_NeverAvailable": "1000000000.0.0"
+              }
+            }
+          }
+        },
+        "recordedRepoMappingEntries": [
+          [
+            "bazel_features~",
+            "bazel_tools",
+            "bazel_tools"
+          ]
+        ]
+      }
+    },
     "@@bazel_tools//tools/cpp:cc_configure.bzl%cc_configure_extension": {
       "general": {
         "bzlTransitiveDigest": "PHpT2yqMGms2U4L3E/aZ+WcQalmZWm+ILdP3yiLsDhA=",
@@ -2230,7 +2377,7 @@
     },
     "@@rules_rust~//rust:extensions.bzl%rust": {
       "general": {
-        "bzlTransitiveDigest": "fuThwhlVrMVy1jd24+jEAspC7bT8RhfezJA1i8Pgw8c=",
+        "bzlTransitiveDigest": "SK5LDBC3NXoGJpZ7+I1UKZnqpkmBucyJltLo0L9X66w=",
         "recordedFileInputs": {},
         "recordedDirentsInputs": {},
         "envVariables": {},
@@ -2244,8 +2391,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-wasi",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2267,8 +2414,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-wasi",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2290,8 +2437,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-wasi",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2313,8 +2460,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-unknown-unknown",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2355,8 +2502,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "aarch64-unknown-linux-gnu",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2427,8 +2574,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-wasi",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2441,11 +2588,25 @@
               "auth": {}
             }
           },
-          "rustfmt_nightly-2024-03-21__aarch64-apple-darwin": {
+          "rustfmt_nightly-2024-04-09__x86_64-unknown-freebsd": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
             "attributes": {
-              "toolchain": "@rustfmt_nightly-2024-03-21__aarch64-apple-darwin_tools//:rustfmt_toolchain",
+              "toolchain": "@rustfmt_nightly-2024-04-09__x86_64-unknown-freebsd_tools//:rustfmt_toolchain",
+              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
+              "target_settings": [],
+              "exec_compatible_with": [
+                "@platforms//cpu:x86_64",
+                "@platforms//os:freebsd"
+              ],
+              "target_compatible_with": []
+            }
+          },
+          "rustfmt_nightly-2024-04-09__aarch64-apple-darwin": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "toolchain_repository_proxy",
+            "attributes": {
+              "toolchain": "@rustfmt_nightly-2024-04-09__aarch64-apple-darwin_tools//:rustfmt_toolchain",
               "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
               "target_settings": [],
               "exec_compatible_with": [
@@ -2464,8 +2625,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "x86_64-unknown-linux-gnu",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2487,8 +2648,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "aarch64-pc-windows-msvc",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2531,6 +2692,19 @@
               ]
             }
           },
+          "rust_analyzer_1.78.0_tools": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "rust_analyzer_toolchain_tools_repository",
+            "attributes": {
+              "version": "1.78.0",
+              "iso_date": "",
+              "sha256s": {},
+              "urls": [
+                "https://static.rust-lang.org/dist/{}.tar.xz"
+              ],
+              "auth": {}
+            }
+          },
           "rust_windows_x86_64__x86_64-pc-windows-msvc__stable_tools": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "rust_toolchain_tools_repository",
@@ -2540,8 +2714,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "x86_64-pc-windows-msvc",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2554,6 +2728,20 @@
               "auth": {}
             }
           },
+          "rustfmt_nightly-2024-04-09__x86_64-unknown-freebsd_tools": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "rustfmt_toolchain_tools_repository",
+            "attributes": {
+              "version": "nightly",
+              "iso_date": "2024-04-09",
+              "sha256s": {},
+              "urls": [
+                "https://static.rust-lang.org/dist/{}.tar.xz"
+              ],
+              "auth": {},
+              "exec_triple": "x86_64-unknown-freebsd"
+            }
+          },
           "rust_freebsd_x86_64__x86_64-unknown-freebsd__stable_tools": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "rust_toolchain_tools_repository",
@@ -2563,8 +2751,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "x86_64-unknown-freebsd",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2653,34 +2841,6 @@
               ]
             }
           },
-          "rustfmt_nightly-2024-03-21__x86_64-apple-darwin": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "toolchain_repository_proxy",
-            "attributes": {
-              "toolchain": "@rustfmt_nightly-2024-03-21__x86_64-apple-darwin_tools//:rustfmt_toolchain",
-              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
-              "target_settings": [],
-              "exec_compatible_with": [
-                "@platforms//cpu:x86_64",
-                "@platforms//os:osx"
-              ],
-              "target_compatible_with": []
-            }
-          },
-          "rustfmt_nightly-2024-03-21__aarch64-pc-windows-msvc": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "toolchain_repository_proxy",
-            "attributes": {
-              "toolchain": "@rustfmt_nightly-2024-03-21__aarch64-pc-windows-msvc_tools//:rustfmt_toolchain",
-              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
-              "target_settings": [],
-              "exec_compatible_with": [
-                "@platforms//cpu:aarch64",
-                "@platforms//os:windows"
-              ],
-              "target_compatible_with": []
-            }
-          },
           "rust_darwin_x86_64": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "rust_toolchain_set_repository",
@@ -2720,8 +2880,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-unknown-unknown",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2734,6 +2894,20 @@
               "auth": {}
             }
           },
+          "rustfmt_nightly-2024-04-09__x86_64-pc-windows-msvc_tools": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "rustfmt_toolchain_tools_repository",
+            "attributes": {
+              "version": "nightly",
+              "iso_date": "2024-04-09",
+              "sha256s": {},
+              "urls": [
+                "https://static.rust-lang.org/dist/{}.tar.xz"
+              ],
+              "auth": {},
+              "exec_triple": "x86_64-pc-windows-msvc"
+            }
+          },
           "rust_darwin_aarch64__wasm32-unknown-unknown__stable_tools": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "rust_toolchain_tools_repository",
@@ -2743,8 +2917,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-unknown-unknown",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2766,8 +2940,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-unknown-unknown",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2799,20 +2973,6 @@
               ]
             }
           },
-          "rustfmt_nightly-2024-03-21__x86_64-pc-windows-msvc": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "toolchain_repository_proxy",
-            "attributes": {
-              "toolchain": "@rustfmt_nightly-2024-03-21__x86_64-pc-windows-msvc_tools//:rustfmt_toolchain",
-              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
-              "target_settings": [],
-              "exec_compatible_with": [
-                "@platforms//cpu:x86_64",
-                "@platforms//os:windows"
-              ],
-              "target_compatible_with": []
-            }
-          },
           "rust_darwin_aarch64": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "rust_toolchain_set_repository",
@@ -2824,36 +2984,12 @@
               ]
             }
           },
-          "rustfmt_nightly-2024-03-21__x86_64-pc-windows-msvc_tools": {
+          "rustfmt_nightly-2024-04-09__aarch64-apple-darwin_tools": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "rustfmt_toolchain_tools_repository",
             "attributes": {
               "version": "nightly",
-              "iso_date": "2024-03-21",
-              "sha256s": {},
-              "urls": [
-                "https://static.rust-lang.org/dist/{}.tar.xz"
-              ],
-              "auth": {},
-              "exec_triple": "x86_64-pc-windows-msvc"
-            }
-          },
-          "rust_analyzer_1.77.0": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "toolchain_repository_proxy",
-            "attributes": {
-              "toolchain": "@rust_analyzer_1.77.0_tools//:rust_analyzer_toolchain",
-              "toolchain_type": "@rules_rust//rust/rust_analyzer:toolchain_type",
-              "exec_compatible_with": [],
-              "target_compatible_with": []
-            }
-          },
-          "rustfmt_nightly-2024-03-21__aarch64-apple-darwin_tools": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "rustfmt_toolchain_tools_repository",
-            "attributes": {
-              "version": "nightly",
-              "iso_date": "2024-03-21",
+              "iso_date": "2024-04-09",
               "sha256s": {},
               "urls": [
                 "https://static.rust-lang.org/dist/{}.tar.xz"
@@ -2890,8 +3026,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-unknown-unknown",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2913,8 +3049,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-wasi",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -2946,24 +3082,6 @@
               ]
             }
           },
-          "rust_host_tools": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "rust_toolchain_tools_repository",
-            "attributes": {
-              "exec_triple": "x86_64-unknown-linux-gnu",
-              "target_triple": "x86_64-unknown-linux-gnu",
-              "allocator_library": "@rules_rust//ffi/cc/allocator_library",
-              "dev_components": false,
-              "edition": "",
-              "rustfmt_version": "nightly/2024-03-21",
-              "sha256s": {},
-              "urls": [
-                "https://static.rust-lang.org/dist/{}.tar.xz"
-              ],
-              "version": "1.77.0",
-              "iso_date": ""
-            }
-          },
           "rust_freebsd_x86_64__wasm32-unknown-unknown__stable": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
@@ -3003,8 +3121,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-wasi",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -3017,20 +3135,6 @@
               "auth": {}
             }
           },
-          "rustfmt_nightly-2024-03-21__x86_64-unknown-linux-gnu_tools": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "rustfmt_toolchain_tools_repository",
-            "attributes": {
-              "version": "nightly",
-              "iso_date": "2024-03-21",
-              "sha256s": {},
-              "urls": [
-                "https://static.rust-lang.org/dist/{}.tar.xz"
-              ],
-              "auth": {},
-              "exec_triple": "x86_64-unknown-linux-gnu"
-            }
-          },
           "rust_windows_x86_64__wasm32-unknown-unknown__stable": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
@@ -3050,20 +3154,6 @@
               ]
             }
           },
-          "rustfmt_nightly-2024-03-21__aarch64-unknown-linux-gnu_tools": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "rustfmt_toolchain_tools_repository",
-            "attributes": {
-              "version": "nightly",
-              "iso_date": "2024-03-21",
-              "sha256s": {},
-              "urls": [
-                "https://static.rust-lang.org/dist/{}.tar.xz"
-              ],
-              "auth": {},
-              "exec_triple": "aarch64-unknown-linux-gnu"
-            }
-          },
           "rust_linux_x86_64__x86_64-unknown-linux-gnu__stable": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
@@ -3083,6 +3173,20 @@
               ]
             }
           },
+          "rustfmt_nightly-2024-04-09__aarch64-unknown-linux-gnu": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "toolchain_repository_proxy",
+            "attributes": {
+              "toolchain": "@rustfmt_nightly-2024-04-09__aarch64-unknown-linux-gnu_tools//:rustfmt_toolchain",
+              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
+              "target_settings": [],
+              "exec_compatible_with": [
+                "@platforms//cpu:aarch64",
+                "@platforms//os:linux"
+              ],
+              "target_compatible_with": []
+            }
+          },
           "rust_linux_x86_64": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "rust_toolchain_set_repository",
@@ -3094,20 +3198,6 @@
               ]
             }
           },
-          "rustfmt_nightly-2024-03-21__x86_64-apple-darwin_tools": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "rustfmt_toolchain_tools_repository",
-            "attributes": {
-              "version": "nightly",
-              "iso_date": "2024-03-21",
-              "sha256s": {},
-              "urls": [
-                "https://static.rust-lang.org/dist/{}.tar.xz"
-              ],
-              "auth": {},
-              "exec_triple": "x86_64-apple-darwin"
-            }
-          },
           "rust_windows_x86_64__x86_64-pc-windows-msvc__stable": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
@@ -3127,20 +3217,6 @@
               ]
             }
           },
-          "rustfmt_nightly-2024-03-21__x86_64-unknown-freebsd_tools": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "rustfmt_toolchain_tools_repository",
-            "attributes": {
-              "version": "nightly",
-              "iso_date": "2024-03-21",
-              "sha256s": {},
-              "urls": [
-                "https://static.rust-lang.org/dist/{}.tar.xz"
-              ],
-              "auth": {},
-              "exec_triple": "x86_64-unknown-freebsd"
-            }
-          },
           "rust_linux_x86_64__wasm32-wasi__stable": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
@@ -3169,8 +3245,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-unknown-unknown",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -3192,8 +3268,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "aarch64-apple-darwin",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -3215,8 +3291,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-wasi",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -3229,17 +3305,60 @@
               "auth": {}
             }
           },
-          "rust_analyzer_1.77.0_tools": {
+          "rustfmt_nightly-2024-04-09__aarch64-pc-windows-msvc": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "rust_analyzer_toolchain_tools_repository",
+            "ruleClassName": "toolchain_repository_proxy",
             "attributes": {
-              "version": "1.77.0",
-              "iso_date": "",
+              "toolchain": "@rustfmt_nightly-2024-04-09__aarch64-pc-windows-msvc_tools//:rustfmt_toolchain",
+              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
+              "target_settings": [],
+              "exec_compatible_with": [
+                "@platforms//cpu:aarch64",
+                "@platforms//os:windows"
+              ],
+              "target_compatible_with": []
+            }
+          },
+          "rustfmt_nightly-2024-04-09__aarch64-unknown-linux-gnu_tools": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "rustfmt_toolchain_tools_repository",
+            "attributes": {
+              "version": "nightly",
+              "iso_date": "2024-04-09",
               "sha256s": {},
               "urls": [
                 "https://static.rust-lang.org/dist/{}.tar.xz"
               ],
-              "auth": {}
+              "auth": {},
+              "exec_triple": "aarch64-unknown-linux-gnu"
+            }
+          },
+          "rustfmt_nightly-2024-04-09__x86_64-apple-darwin": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "toolchain_repository_proxy",
+            "attributes": {
+              "toolchain": "@rustfmt_nightly-2024-04-09__x86_64-apple-darwin_tools//:rustfmt_toolchain",
+              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
+              "target_settings": [],
+              "exec_compatible_with": [
+                "@platforms//cpu:x86_64",
+                "@platforms//os:osx"
+              ],
+              "target_compatible_with": []
+            }
+          },
+          "rustfmt_nightly-2024-04-09__aarch64-pc-windows-msvc_tools": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "rustfmt_toolchain_tools_repository",
+            "attributes": {
+              "version": "nightly",
+              "iso_date": "2024-04-09",
+              "sha256s": {},
+              "urls": [
+                "https://static.rust-lang.org/dist/{}.tar.xz"
+              ],
+              "auth": {},
+              "exec_triple": "aarch64-pc-windows-msvc"
             }
           },
           "rust_windows_aarch64__wasm32-unknown-unknown__stable": {
@@ -3261,6 +3380,20 @@
               ]
             }
           },
+          "rustfmt_nightly-2024-04-09__x86_64-apple-darwin_tools": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "rustfmt_toolchain_tools_repository",
+            "attributes": {
+              "version": "nightly",
+              "iso_date": "2024-04-09",
+              "sha256s": {},
+              "urls": [
+                "https://static.rust-lang.org/dist/{}.tar.xz"
+              ],
+              "auth": {},
+              "exec_triple": "x86_64-apple-darwin"
+            }
+          },
           "rust_linux_aarch64": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "rust_toolchain_set_repository",
@@ -3272,6 +3405,20 @@
               ]
             }
           },
+          "rustfmt_nightly-2024-04-09__x86_64-unknown-linux-gnu": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "toolchain_repository_proxy",
+            "attributes": {
+              "toolchain": "@rustfmt_nightly-2024-04-09__x86_64-unknown-linux-gnu_tools//:rustfmt_toolchain",
+              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
+              "target_settings": [],
+              "exec_compatible_with": [
+                "@platforms//cpu:x86_64",
+                "@platforms//os:linux"
+              ],
+              "target_compatible_with": []
+            }
+          },
           "rust_darwin_aarch64__wasm32-wasi__stable": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
@@ -3291,6 +3438,34 @@
               ]
             }
           },
+          "rustfmt_nightly-2024-04-09__x86_64-pc-windows-msvc": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "toolchain_repository_proxy",
+            "attributes": {
+              "toolchain": "@rustfmt_nightly-2024-04-09__x86_64-pc-windows-msvc_tools//:rustfmt_toolchain",
+              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
+              "target_settings": [],
+              "exec_compatible_with": [
+                "@platforms//cpu:x86_64",
+                "@platforms//os:windows"
+              ],
+              "target_compatible_with": []
+            }
+          },
+          "rustfmt_nightly-2024-04-09__x86_64-unknown-linux-gnu_tools": {
+            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
+            "ruleClassName": "rustfmt_toolchain_tools_repository",
+            "attributes": {
+              "version": "nightly",
+              "iso_date": "2024-04-09",
+              "sha256s": {},
+              "urls": [
+                "https://static.rust-lang.org/dist/{}.tar.xz"
+              ],
+              "auth": {},
+              "exec_triple": "x86_64-unknown-linux-gnu"
+            }
+          },
           "rust_windows_aarch64__aarch64-pc-windows-msvc__stable": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
@@ -3310,20 +3485,6 @@
               ]
             }
           },
-          "rustfmt_nightly-2024-03-21__aarch64-unknown-linux-gnu": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "toolchain_repository_proxy",
-            "attributes": {
-              "toolchain": "@rustfmt_nightly-2024-03-21__aarch64-unknown-linux-gnu_tools//:rustfmt_toolchain",
-              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
-              "target_settings": [],
-              "exec_compatible_with": [
-                "@platforms//cpu:aarch64",
-                "@platforms//os:linux"
-              ],
-              "target_compatible_with": []
-            }
-          },
           "rust_freebsd_x86_64__x86_64-unknown-freebsd__stable": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
@@ -3343,45 +3504,13 @@
               ]
             }
           },
-          "rustfmt_nightly-2024-03-21__x86_64-unknown-freebsd": {
+          "rust_analyzer_1.78.0": {
             "bzlFile": "@@rules_rust~//rust:repositories.bzl",
             "ruleClassName": "toolchain_repository_proxy",
             "attributes": {
-              "toolchain": "@rustfmt_nightly-2024-03-21__x86_64-unknown-freebsd_tools//:rustfmt_toolchain",
-              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
-              "target_settings": [],
-              "exec_compatible_with": [
-                "@platforms//cpu:x86_64",
-                "@platforms//os:freebsd"
-              ],
-              "target_compatible_with": []
-            }
-          },
-          "rustfmt_nightly-2024-03-21__aarch64-pc-windows-msvc_tools": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "rustfmt_toolchain_tools_repository",
-            "attributes": {
-              "version": "nightly",
-              "iso_date": "2024-03-21",
-              "sha256s": {},
-              "urls": [
-                "https://static.rust-lang.org/dist/{}.tar.xz"
-              ],
-              "auth": {},
-              "exec_triple": "aarch64-pc-windows-msvc"
-            }
-          },
-          "rustfmt_nightly-2024-03-21__x86_64-unknown-linux-gnu": {
-            "bzlFile": "@@rules_rust~//rust:repositories.bzl",
-            "ruleClassName": "toolchain_repository_proxy",
-            "attributes": {
-              "toolchain": "@rustfmt_nightly-2024-03-21__x86_64-unknown-linux-gnu_tools//:rustfmt_toolchain",
-              "toolchain_type": "@rules_rust//rust/rustfmt:toolchain_type",
-              "target_settings": [],
-              "exec_compatible_with": [
-                "@platforms//cpu:x86_64",
-                "@platforms//os:linux"
-              ],
+              "toolchain": "@rust_analyzer_1.78.0_tools//:rust_analyzer_toolchain",
+              "toolchain_type": "@rules_rust//rust/rust_analyzer:toolchain_type",
+              "exec_compatible_with": [],
               "target_compatible_with": []
             }
           },
@@ -3390,100 +3519,100 @@
             "ruleClassName": "toolchain_repository_hub",
             "attributes": {
               "toolchain_names": [
-                "rust_analyzer_1.77.0",
+                "rust_analyzer_1.78.0",
                 "rust_darwin_aarch64__aarch64-apple-darwin__stable",
                 "rust_darwin_aarch64__wasm32-unknown-unknown__stable",
                 "rust_darwin_aarch64__wasm32-wasi__stable",
-                "rustfmt_nightly-2024-03-21__aarch64-apple-darwin",
+                "rustfmt_nightly-2024-04-09__aarch64-apple-darwin",
                 "rust_windows_aarch64__aarch64-pc-windows-msvc__stable",
                 "rust_windows_aarch64__wasm32-unknown-unknown__stable",
                 "rust_windows_aarch64__wasm32-wasi__stable",
-                "rustfmt_nightly-2024-03-21__aarch64-pc-windows-msvc",
+                "rustfmt_nightly-2024-04-09__aarch64-pc-windows-msvc",
                 "rust_linux_aarch64__aarch64-unknown-linux-gnu__stable",
                 "rust_linux_aarch64__wasm32-unknown-unknown__stable",
                 "rust_linux_aarch64__wasm32-wasi__stable",
-                "rustfmt_nightly-2024-03-21__aarch64-unknown-linux-gnu",
+                "rustfmt_nightly-2024-04-09__aarch64-unknown-linux-gnu",
                 "rust_darwin_x86_64__x86_64-apple-darwin__stable",
                 "rust_darwin_x86_64__wasm32-unknown-unknown__stable",
                 "rust_darwin_x86_64__wasm32-wasi__stable",
-                "rustfmt_nightly-2024-03-21__x86_64-apple-darwin",
+                "rustfmt_nightly-2024-04-09__x86_64-apple-darwin",
                 "rust_windows_x86_64__x86_64-pc-windows-msvc__stable",
                 "rust_windows_x86_64__wasm32-unknown-unknown__stable",
                 "rust_windows_x86_64__wasm32-wasi__stable",
-                "rustfmt_nightly-2024-03-21__x86_64-pc-windows-msvc",
+                "rustfmt_nightly-2024-04-09__x86_64-pc-windows-msvc",
                 "rust_freebsd_x86_64__x86_64-unknown-freebsd__stable",
                 "rust_freebsd_x86_64__wasm32-unknown-unknown__stable",
                 "rust_freebsd_x86_64__wasm32-wasi__stable",
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-freebsd",
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-freebsd",
                 "rust_linux_x86_64__x86_64-unknown-linux-gnu__stable",
                 "rust_linux_x86_64__wasm32-unknown-unknown__stable",
                 "rust_linux_x86_64__wasm32-wasi__stable",
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-linux-gnu"
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-linux-gnu"
               ],
               "toolchain_labels": {
-                "rust_analyzer_1.77.0": "@rust_analyzer_1.77.0_tools//:rust_analyzer_toolchain",
+                "rust_analyzer_1.78.0": "@rust_analyzer_1.78.0_tools//:rust_analyzer_toolchain",
                 "rust_darwin_aarch64__aarch64-apple-darwin__stable": "@rust_darwin_aarch64__aarch64-apple-darwin__stable_tools//:rust_toolchain",
                 "rust_darwin_aarch64__wasm32-unknown-unknown__stable": "@rust_darwin_aarch64__wasm32-unknown-unknown__stable_tools//:rust_toolchain",
                 "rust_darwin_aarch64__wasm32-wasi__stable": "@rust_darwin_aarch64__wasm32-wasi__stable_tools//:rust_toolchain",
-                "rustfmt_nightly-2024-03-21__aarch64-apple-darwin": "@rustfmt_nightly-2024-03-21__aarch64-apple-darwin_tools//:rustfmt_toolchain",
+                "rustfmt_nightly-2024-04-09__aarch64-apple-darwin": "@rustfmt_nightly-2024-04-09__aarch64-apple-darwin_tools//:rustfmt_toolchain",
                 "rust_windows_aarch64__aarch64-pc-windows-msvc__stable": "@rust_windows_aarch64__aarch64-pc-windows-msvc__stable_tools//:rust_toolchain",
                 "rust_windows_aarch64__wasm32-unknown-unknown__stable": "@rust_windows_aarch64__wasm32-unknown-unknown__stable_tools//:rust_toolchain",
                 "rust_windows_aarch64__wasm32-wasi__stable": "@rust_windows_aarch64__wasm32-wasi__stable_tools//:rust_toolchain",
-                "rustfmt_nightly-2024-03-21__aarch64-pc-windows-msvc": "@rustfmt_nightly-2024-03-21__aarch64-pc-windows-msvc_tools//:rustfmt_toolchain",
+                "rustfmt_nightly-2024-04-09__aarch64-pc-windows-msvc": "@rustfmt_nightly-2024-04-09__aarch64-pc-windows-msvc_tools//:rustfmt_toolchain",
                 "rust_linux_aarch64__aarch64-unknown-linux-gnu__stable": "@rust_linux_aarch64__aarch64-unknown-linux-gnu__stable_tools//:rust_toolchain",
                 "rust_linux_aarch64__wasm32-unknown-unknown__stable": "@rust_linux_aarch64__wasm32-unknown-unknown__stable_tools//:rust_toolchain",
                 "rust_linux_aarch64__wasm32-wasi__stable": "@rust_linux_aarch64__wasm32-wasi__stable_tools//:rust_toolchain",
-                "rustfmt_nightly-2024-03-21__aarch64-unknown-linux-gnu": "@rustfmt_nightly-2024-03-21__aarch64-unknown-linux-gnu_tools//:rustfmt_toolchain",
+                "rustfmt_nightly-2024-04-09__aarch64-unknown-linux-gnu": "@rustfmt_nightly-2024-04-09__aarch64-unknown-linux-gnu_tools//:rustfmt_toolchain",
                 "rust_darwin_x86_64__x86_64-apple-darwin__stable": "@rust_darwin_x86_64__x86_64-apple-darwin__stable_tools//:rust_toolchain",
                 "rust_darwin_x86_64__wasm32-unknown-unknown__stable": "@rust_darwin_x86_64__wasm32-unknown-unknown__stable_tools//:rust_toolchain",
                 "rust_darwin_x86_64__wasm32-wasi__stable": "@rust_darwin_x86_64__wasm32-wasi__stable_tools//:rust_toolchain",
-                "rustfmt_nightly-2024-03-21__x86_64-apple-darwin": "@rustfmt_nightly-2024-03-21__x86_64-apple-darwin_tools//:rustfmt_toolchain",
+                "rustfmt_nightly-2024-04-09__x86_64-apple-darwin": "@rustfmt_nightly-2024-04-09__x86_64-apple-darwin_tools//:rustfmt_toolchain",
                 "rust_windows_x86_64__x86_64-pc-windows-msvc__stable": "@rust_windows_x86_64__x86_64-pc-windows-msvc__stable_tools//:rust_toolchain",
                 "rust_windows_x86_64__wasm32-unknown-unknown__stable": "@rust_windows_x86_64__wasm32-unknown-unknown__stable_tools//:rust_toolchain",
                 "rust_windows_x86_64__wasm32-wasi__stable": "@rust_windows_x86_64__wasm32-wasi__stable_tools//:rust_toolchain",
-                "rustfmt_nightly-2024-03-21__x86_64-pc-windows-msvc": "@rustfmt_nightly-2024-03-21__x86_64-pc-windows-msvc_tools//:rustfmt_toolchain",
+                "rustfmt_nightly-2024-04-09__x86_64-pc-windows-msvc": "@rustfmt_nightly-2024-04-09__x86_64-pc-windows-msvc_tools//:rustfmt_toolchain",
                 "rust_freebsd_x86_64__x86_64-unknown-freebsd__stable": "@rust_freebsd_x86_64__x86_64-unknown-freebsd__stable_tools//:rust_toolchain",
                 "rust_freebsd_x86_64__wasm32-unknown-unknown__stable": "@rust_freebsd_x86_64__wasm32-unknown-unknown__stable_tools//:rust_toolchain",
                 "rust_freebsd_x86_64__wasm32-wasi__stable": "@rust_freebsd_x86_64__wasm32-wasi__stable_tools//:rust_toolchain",
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-freebsd": "@rustfmt_nightly-2024-03-21__x86_64-unknown-freebsd_tools//:rustfmt_toolchain",
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-freebsd": "@rustfmt_nightly-2024-04-09__x86_64-unknown-freebsd_tools//:rustfmt_toolchain",
                 "rust_linux_x86_64__x86_64-unknown-linux-gnu__stable": "@rust_linux_x86_64__x86_64-unknown-linux-gnu__stable_tools//:rust_toolchain",
                 "rust_linux_x86_64__wasm32-unknown-unknown__stable": "@rust_linux_x86_64__wasm32-unknown-unknown__stable_tools//:rust_toolchain",
                 "rust_linux_x86_64__wasm32-wasi__stable": "@rust_linux_x86_64__wasm32-wasi__stable_tools//:rust_toolchain",
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-linux-gnu": "@rustfmt_nightly-2024-03-21__x86_64-unknown-linux-gnu_tools//:rustfmt_toolchain"
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-linux-gnu": "@rustfmt_nightly-2024-04-09__x86_64-unknown-linux-gnu_tools//:rustfmt_toolchain"
               },
               "toolchain_types": {
-                "rust_analyzer_1.77.0": "@rules_rust//rust/rust_analyzer:toolchain_type",
+                "rust_analyzer_1.78.0": "@rules_rust//rust/rust_analyzer:toolchain_type",
                 "rust_darwin_aarch64__aarch64-apple-darwin__stable": "@rules_rust//rust:toolchain",
                 "rust_darwin_aarch64__wasm32-unknown-unknown__stable": "@rules_rust//rust:toolchain",
                 "rust_darwin_aarch64__wasm32-wasi__stable": "@rules_rust//rust:toolchain",
-                "rustfmt_nightly-2024-03-21__aarch64-apple-darwin": "@rules_rust//rust/rustfmt:toolchain_type",
+                "rustfmt_nightly-2024-04-09__aarch64-apple-darwin": "@rules_rust//rust/rustfmt:toolchain_type",
                 "rust_windows_aarch64__aarch64-pc-windows-msvc__stable": "@rules_rust//rust:toolchain",
                 "rust_windows_aarch64__wasm32-unknown-unknown__stable": "@rules_rust//rust:toolchain",
                 "rust_windows_aarch64__wasm32-wasi__stable": "@rules_rust//rust:toolchain",
-                "rustfmt_nightly-2024-03-21__aarch64-pc-windows-msvc": "@rules_rust//rust/rustfmt:toolchain_type",
+                "rustfmt_nightly-2024-04-09__aarch64-pc-windows-msvc": "@rules_rust//rust/rustfmt:toolchain_type",
                 "rust_linux_aarch64__aarch64-unknown-linux-gnu__stable": "@rules_rust//rust:toolchain",
                 "rust_linux_aarch64__wasm32-unknown-unknown__stable": "@rules_rust//rust:toolchain",
                 "rust_linux_aarch64__wasm32-wasi__stable": "@rules_rust//rust:toolchain",
-                "rustfmt_nightly-2024-03-21__aarch64-unknown-linux-gnu": "@rules_rust//rust/rustfmt:toolchain_type",
+                "rustfmt_nightly-2024-04-09__aarch64-unknown-linux-gnu": "@rules_rust//rust/rustfmt:toolchain_type",
                 "rust_darwin_x86_64__x86_64-apple-darwin__stable": "@rules_rust//rust:toolchain",
                 "rust_darwin_x86_64__wasm32-unknown-unknown__stable": "@rules_rust//rust:toolchain",
                 "rust_darwin_x86_64__wasm32-wasi__stable": "@rules_rust//rust:toolchain",
-                "rustfmt_nightly-2024-03-21__x86_64-apple-darwin": "@rules_rust//rust/rustfmt:toolchain_type",
+                "rustfmt_nightly-2024-04-09__x86_64-apple-darwin": "@rules_rust//rust/rustfmt:toolchain_type",
                 "rust_windows_x86_64__x86_64-pc-windows-msvc__stable": "@rules_rust//rust:toolchain",
                 "rust_windows_x86_64__wasm32-unknown-unknown__stable": "@rules_rust//rust:toolchain",
                 "rust_windows_x86_64__wasm32-wasi__stable": "@rules_rust//rust:toolchain",
-                "rustfmt_nightly-2024-03-21__x86_64-pc-windows-msvc": "@rules_rust//rust/rustfmt:toolchain_type",
+                "rustfmt_nightly-2024-04-09__x86_64-pc-windows-msvc": "@rules_rust//rust/rustfmt:toolchain_type",
                 "rust_freebsd_x86_64__x86_64-unknown-freebsd__stable": "@rules_rust//rust:toolchain",
                 "rust_freebsd_x86_64__wasm32-unknown-unknown__stable": "@rules_rust//rust:toolchain",
                 "rust_freebsd_x86_64__wasm32-wasi__stable": "@rules_rust//rust:toolchain",
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-freebsd": "@rules_rust//rust/rustfmt:toolchain_type",
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-freebsd": "@rules_rust//rust/rustfmt:toolchain_type",
                 "rust_linux_x86_64__x86_64-unknown-linux-gnu__stable": "@rules_rust//rust:toolchain",
                 "rust_linux_x86_64__wasm32-unknown-unknown__stable": "@rules_rust//rust:toolchain",
                 "rust_linux_x86_64__wasm32-wasi__stable": "@rules_rust//rust:toolchain",
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-linux-gnu": "@rules_rust//rust/rustfmt:toolchain_type"
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-linux-gnu": "@rules_rust//rust/rustfmt:toolchain_type"
               },
               "exec_compatible_with": {
-                "rust_analyzer_1.77.0": [],
+                "rust_analyzer_1.78.0": [],
                 "rust_darwin_aarch64__aarch64-apple-darwin__stable": [
                   "@platforms//cpu:aarch64",
                   "@platforms//os:osx"
@@ -3496,7 +3625,7 @@
                   "@platforms//cpu:aarch64",
                   "@platforms//os:osx"
                 ],
-                "rustfmt_nightly-2024-03-21__aarch64-apple-darwin": [
+                "rustfmt_nightly-2024-04-09__aarch64-apple-darwin": [
                   "@platforms//cpu:aarch64",
                   "@platforms//os:osx"
                 ],
@@ -3512,7 +3641,7 @@
                   "@platforms//cpu:aarch64",
                   "@platforms//os:windows"
                 ],
-                "rustfmt_nightly-2024-03-21__aarch64-pc-windows-msvc": [
+                "rustfmt_nightly-2024-04-09__aarch64-pc-windows-msvc": [
                   "@platforms//cpu:aarch64",
                   "@platforms//os:windows"
                 ],
@@ -3528,7 +3657,7 @@
                   "@platforms//cpu:aarch64",
                   "@platforms//os:linux"
                 ],
-                "rustfmt_nightly-2024-03-21__aarch64-unknown-linux-gnu": [
+                "rustfmt_nightly-2024-04-09__aarch64-unknown-linux-gnu": [
                   "@platforms//cpu:aarch64",
                   "@platforms//os:linux"
                 ],
@@ -3544,7 +3673,7 @@
                   "@platforms//cpu:x86_64",
                   "@platforms//os:osx"
                 ],
-                "rustfmt_nightly-2024-03-21__x86_64-apple-darwin": [
+                "rustfmt_nightly-2024-04-09__x86_64-apple-darwin": [
                   "@platforms//cpu:x86_64",
                   "@platforms//os:osx"
                 ],
@@ -3560,7 +3689,7 @@
                   "@platforms//cpu:x86_64",
                   "@platforms//os:windows"
                 ],
-                "rustfmt_nightly-2024-03-21__x86_64-pc-windows-msvc": [
+                "rustfmt_nightly-2024-04-09__x86_64-pc-windows-msvc": [
                   "@platforms//cpu:x86_64",
                   "@platforms//os:windows"
                 ],
@@ -3576,7 +3705,7 @@
                   "@platforms//cpu:x86_64",
                   "@platforms//os:freebsd"
                 ],
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-freebsd": [
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-freebsd": [
                   "@platforms//cpu:x86_64",
                   "@platforms//os:freebsd"
                 ],
@@ -3592,13 +3721,13 @@
                   "@platforms//cpu:x86_64",
                   "@platforms//os:linux"
                 ],
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-linux-gnu": [
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-linux-gnu": [
                   "@platforms//cpu:x86_64",
                   "@platforms//os:linux"
                 ]
               },
               "target_compatible_with": {
-                "rust_analyzer_1.77.0": [],
+                "rust_analyzer_1.78.0": [],
                 "rust_darwin_aarch64__aarch64-apple-darwin__stable": [
                   "@platforms//cpu:aarch64",
                   "@platforms//os:osx"
@@ -3611,7 +3740,7 @@
                   "@platforms//cpu:wasm32",
                   "@platforms//os:wasi"
                 ],
-                "rustfmt_nightly-2024-03-21__aarch64-apple-darwin": [],
+                "rustfmt_nightly-2024-04-09__aarch64-apple-darwin": [],
                 "rust_windows_aarch64__aarch64-pc-windows-msvc__stable": [
                   "@platforms//cpu:aarch64",
                   "@platforms//os:windows"
@@ -3624,7 +3753,7 @@
                   "@platforms//cpu:wasm32",
                   "@platforms//os:wasi"
                 ],
-                "rustfmt_nightly-2024-03-21__aarch64-pc-windows-msvc": [],
+                "rustfmt_nightly-2024-04-09__aarch64-pc-windows-msvc": [],
                 "rust_linux_aarch64__aarch64-unknown-linux-gnu__stable": [
                   "@platforms//cpu:aarch64",
                   "@platforms//os:linux"
@@ -3637,7 +3766,7 @@
                   "@platforms//cpu:wasm32",
                   "@platforms//os:wasi"
                 ],
-                "rustfmt_nightly-2024-03-21__aarch64-unknown-linux-gnu": [],
+                "rustfmt_nightly-2024-04-09__aarch64-unknown-linux-gnu": [],
                 "rust_darwin_x86_64__x86_64-apple-darwin__stable": [
                   "@platforms//cpu:x86_64",
                   "@platforms//os:osx"
@@ -3650,7 +3779,7 @@
                   "@platforms//cpu:wasm32",
                   "@platforms//os:wasi"
                 ],
-                "rustfmt_nightly-2024-03-21__x86_64-apple-darwin": [],
+                "rustfmt_nightly-2024-04-09__x86_64-apple-darwin": [],
                 "rust_windows_x86_64__x86_64-pc-windows-msvc__stable": [
                   "@platforms//cpu:x86_64",
                   "@platforms//os:windows"
@@ -3663,7 +3792,7 @@
                   "@platforms//cpu:wasm32",
                   "@platforms//os:wasi"
                 ],
-                "rustfmt_nightly-2024-03-21__x86_64-pc-windows-msvc": [],
+                "rustfmt_nightly-2024-04-09__x86_64-pc-windows-msvc": [],
                 "rust_freebsd_x86_64__x86_64-unknown-freebsd__stable": [
                   "@platforms//cpu:x86_64",
                   "@platforms//os:freebsd"
@@ -3676,7 +3805,7 @@
                   "@platforms//cpu:wasm32",
                   "@platforms//os:wasi"
                 ],
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-freebsd": [],
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-freebsd": [],
                 "rust_linux_x86_64__x86_64-unknown-linux-gnu__stable": [
                   "@platforms//cpu:x86_64",
                   "@platforms//os:linux"
@@ -3689,7 +3818,7 @@
                   "@platforms//cpu:wasm32",
                   "@platforms//os:wasi"
                 ],
-                "rustfmt_nightly-2024-03-21__x86_64-unknown-linux-gnu": []
+                "rustfmt_nightly-2024-04-09__x86_64-unknown-linux-gnu": []
               }
             }
           },
@@ -3702,8 +3831,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "wasm32-unknown-unknown",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -3725,8 +3854,8 @@
               "global_allocator_library": "@rules_rust//ffi/cc/global_allocator_library",
               "target_triple": "x86_64-apple-darwin",
               "iso_date": "",
-              "version": "1.77.0",
-              "rustfmt_version": "nightly/2024-03-21",
+              "version": "1.78.0",
+              "rustfmt_version": "nightly/2024-04-09",
               "edition": "",
               "dev_components": false,
               "extra_rustc_flags": [],
@@ -3742,6 +3871,21 @@
         },
         "recordedRepoMappingEntries": [
           [
+            "bazel_features~",
+            "bazel_features_globals",
+            "bazel_features~~version_extension~bazel_features_globals"
+          ],
+          [
+            "bazel_features~",
+            "bazel_features_version",
+            "bazel_features~~version_extension~bazel_features_version"
+          ],
+          [
+            "rules_rust~",
+            "bazel_features",
+            "bazel_features~"
+          ],
+          [
             "rules_rust~",
             "bazel_skylib",
             "bazel_skylib~"
@@ -3761,7 +3905,7 @@
     },
     "@@rules_rust~//rust/private:extensions.bzl%i": {
       "general": {
-        "bzlTransitiveDigest": "eZeMLkl0iJEuccIUjjBrsyiUGZg0nK9q4PgJf7LWBlQ=",
+        "bzlTransitiveDigest": "X2v+7Bz11W5htCVO7xqy67eK7NWv0mmFRB4EQTVUZOY=",
         "recordedFileInputs": {},
         "recordedDirentsInputs": {},
         "envVariables": {},
@@ -3773,12 +3917,5230 @@
               "sha256": "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tracing/0.1.37/download"
+                "https://static.crates.io/crates/tracing/0.1.37/download"
               ],
               "strip_prefix": "tracing-0.1.37",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tracing-0.1.37.bazel"
             }
           },
+          "rules_rust_wasm_bindgen__walrus-0.20.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2c03529cd0c4400a2449f640d2f27cd1b48c3065226d15e26d98e4429ab0adb7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/walrus/0.20.3/download"
+              ],
+              "strip_prefix": "walrus-0.20.3",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.walrus-0.20.3.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__unicode-bidi-0.3.13": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicode-bidi/0.3.13/download"
+              ],
+              "strip_prefix": "unicode-bidi-0.3.13",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicode-bidi-0.3.13.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__windows_x86_64_gnu-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_gnu/0.48.0/download"
+              ],
+              "strip_prefix": "windows_x86_64_gnu-0.48.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_x86_64_gnu-0.48.0.bazel"
+            }
+          },
+          "cui__rustix-0.37.23": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rustix/0.37.23/download"
+              ],
+              "strip_prefix": "rustix-0.37.23",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rustix-0.37.23.bazel"
+            }
+          },
+          "cui__fuchsia-cprng-0.1.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/fuchsia-cprng/0.1.1/download"
+              ],
+              "strip_prefix": "fuchsia-cprng-0.1.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.fuchsia-cprng-0.1.1.bazel"
+            }
+          },
+          "cui__url-2.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/url/2.4.0/download"
+              ],
+              "strip_prefix": "url-2.4.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.url-2.4.0.bazel"
+            }
+          },
+          "cui__ryu-1.0.14": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "fe232bdf6be8c8de797b22184ee71118d63780ea42ac85b61d1baa6d3b782ae9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/ryu/1.0.14/download"
+              ],
+              "strip_prefix": "ryu-1.0.14",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.ryu-1.0.14.bazel"
+            }
+          },
+          "rules_rust_prost__protoc-gen-prost-0.2.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "patch_args": [
+                "-p1"
+              ],
+              "patches": [
+                "@@rules_rust~//proto/prost/private/3rdparty/patches:protoc-gen-prost.patch"
+              ],
+              "sha256": "a81e3a9bb429fec47008b209896f0b9ab99fbcbc1c3733b385d43fbfd64dd2ca",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/protoc-gen-prost/0.2.2/download"
+              ],
+              "strip_prefix": "protoc-gen-prost-0.2.2",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.protoc-gen-prost-0.2.2.bazel"
+            }
+          },
+          "rules_rust_bindgen__cfg-if-1.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cfg-if/1.0.0/download"
+              ],
+              "strip_prefix": "cfg-if-1.0.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.cfg-if-1.0.0.bazel"
+            }
+          },
+          "rules_rust_prost__protoc-gen-tonic-0.2.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "725a07a704f9cf7a956b302c21d81b5516ed5ee6cfbbf827edb69beeaae6cc30",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/protoc-gen-tonic/0.2.2/download"
+              ],
+              "strip_prefix": "protoc-gen-tonic-0.2.2",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.protoc-gen-tonic-0.2.2.bazel"
+            }
+          },
+          "cui__iana-time-zone-haiku-0.1.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/iana-time-zone-haiku/0.1.2/download"
+              ],
+              "strip_prefix": "iana-time-zone-haiku-0.1.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.iana-time-zone-haiku-0.1.2.bazel"
+            }
+          },
+          "cui__windows_x86_64_gnullvm-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_gnullvm/0.48.0/download"
+              ],
+              "strip_prefix": "windows_x86_64_gnullvm-0.48.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_x86_64_gnullvm-0.48.0.bazel"
+            }
+          },
+          "rules_rust_prost__percent-encoding-2.3.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/percent-encoding/2.3.0/download"
+              ],
+              "strip_prefix": "percent-encoding-2.3.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.percent-encoding-2.3.0.bazel"
+            }
+          },
+          "cui__fastrand-2.0.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/fastrand/2.0.1/download"
+              ],
+              "strip_prefix": "fastrand-2.0.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.fastrand-2.0.1.bazel"
+            }
+          },
+          "cui__flate2-1.0.28": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/flate2/1.0.28/download"
+              ],
+              "strip_prefix": "flate2-1.0.28",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.flate2-1.0.28.bazel"
+            }
+          },
+          "rules_rust_prost__cc-1.0.79": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cc/1.0.79/download"
+              ],
+              "strip_prefix": "cc-1.0.79",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.cc-1.0.79.bazel"
+            }
+          },
+          "rrra__winapi-0.3.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi/0.3.9/download"
+              ],
+              "strip_prefix": "winapi-0.3.9",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.winapi-0.3.9.bazel"
+            }
+          },
+          "cui__windows-targets-0.48.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows-targets/0.48.1/download"
+              ],
+              "strip_prefix": "windows-targets-0.48.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows-targets-0.48.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__ppv-lite86-0.2.17": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/ppv-lite86/0.2.17/download"
+              ],
+              "strip_prefix": "ppv-lite86-0.2.17",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.ppv-lite86-0.2.17.bazel"
+            }
+          },
+          "cui__smawk-0.3.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f67ad224767faa3c7d8b6d91985b78e70a1324408abcb1cfcc2be4c06bc06043",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/smawk/0.3.1/download"
+              ],
+              "strip_prefix": "smawk-0.3.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.smawk-0.3.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__heck-0.3.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/heck/0.3.3/download"
+              ],
+              "strip_prefix": "heck-0.3.3",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.heck-0.3.3.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__unicode-ident-1.0.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicode-ident/1.0.10/download"
+              ],
+              "strip_prefix": "unicode-ident-1.0.10",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicode-ident-1.0.10.bazel"
+            }
+          },
+          "cui__clap_derive-4.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap_derive/4.3.2/download"
+              ],
+              "strip_prefix": "clap_derive-4.3.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.clap_derive-4.3.2.bazel"
+            }
+          },
+          "cui__libm-0.2.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/libm/0.2.7/download"
+              ],
+              "strip_prefix": "libm-0.2.7",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.libm-0.2.7.bazel"
+            }
+          },
+          "cui__deranged-0.3.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/deranged/0.3.9/download"
+              ],
+              "strip_prefix": "deranged-0.3.9",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.deranged-0.3.9.bazel"
+            }
+          },
+          "cui__gix-negotiate-0.8.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "6f1697bf9911c6d1b8d709b9e6ef718cb5ea5821a1b7991520125a8134448004",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-negotiate/0.8.0/download"
+              ],
+              "strip_prefix": "gix-negotiate-0.8.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-negotiate-0.8.0.bazel"
+            }
+          },
+          "rules_rust_proto__autocfg-1.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/autocfg/1.1.0/download"
+              ],
+              "strip_prefix": "autocfg-1.1.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.autocfg-1.1.0.bazel"
+            }
+          },
+          "cui__io-lifetimes-1.0.11": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/io-lifetimes/1.0.11/download"
+              ],
+              "strip_prefix": "io-lifetimes-1.0.11",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.io-lifetimes-1.0.11.bazel"
+            }
+          },
+          "rules_rust_proto__cfg-if-0.1.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cfg-if/0.1.10/download"
+              ],
+              "strip_prefix": "cfg-if-0.1.10",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.cfg-if-0.1.10.bazel"
+            }
+          },
+          "rules_rust_prost__proc-macro2-1.0.60": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/proc-macro2/1.0.60/download"
+              ],
+              "strip_prefix": "proc-macro2-1.0.60",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.proc-macro2-1.0.60.bazel"
+            }
+          },
+          "rules_rust_bindgen__clap_complete-4.3.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7f6b5c519bab3ea61843a7923d074b04245624bb84a64a8c150f5deb014e388b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap_complete/4.3.1/download"
+              ],
+              "strip_prefix": "clap_complete-4.3.1",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.clap_complete-4.3.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__time-core-0.1.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/time-core/0.1.1/download"
+              ],
+              "strip_prefix": "time-core-0.1.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.time-core-0.1.1.bazel"
+            }
+          },
+          "cui__num-0.1.42": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4703ad64153382334aa8db57c637364c322d3372e097840c72000dabdcf6156e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num/0.1.42/download"
+              ],
+              "strip_prefix": "num-0.1.42",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-0.1.42.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__tiny_http-0.12.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "389915df6413a2e74fb181895f933386023c71110878cd0825588928e64cdc82",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tiny_http/0.12.0/download"
+              ],
+              "strip_prefix": "tiny_http-0.12.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.tiny_http-0.12.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__windows-sys-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows-sys/0.48.0/download"
+              ],
+              "strip_prefix": "windows-sys-0.48.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows-sys-0.48.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__libc-0.2.146": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/libc/0.2.146/download"
+              ],
+              "strip_prefix": "libc-0.2.146",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.libc-0.2.146.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__iana-time-zone-haiku-0.1.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/iana-time-zone-haiku/0.1.2/download"
+              ],
+              "strip_prefix": "iana-time-zone-haiku-0.1.2",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.iana-time-zone-haiku-0.1.2.bazel"
+            }
+          },
+          "rrra__memchr-2.5.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/memchr/2.5.0/download"
+              ],
+              "strip_prefix": "memchr-2.5.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.memchr-2.5.0.bazel"
+            }
+          },
+          "cui__getrandom-0.2.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/getrandom/0.2.10/download"
+              ],
+              "strip_prefix": "getrandom-0.2.10",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.getrandom-0.2.10.bazel"
+            }
+          },
+          "rules_rust_prost__bitflags-1.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bitflags/1.3.2/download"
+              ],
+              "strip_prefix": "bitflags-1.3.2",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
+            }
+          },
+          "cui__sha1_smol-1.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/sha1_smol/1.0.0/download"
+              ],
+              "strip_prefix": "sha1_smol-1.0.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.sha1_smol-1.0.0.bazel"
+            }
+          },
+          "cargo_bazel.buildifier-darwin-amd64": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_file",
+            "attributes": {
+              "urls": [
+                "https://github.com/bazelbuild/buildtools/releases/download/5.0.1/buildifier-darwin-amd64"
+              ],
+              "sha256": "2cb0a54683633ef6de4e0491072e22e66ac9c6389051432b76200deeeeaf93fb",
+              "downloaded_file_path": "buildifier.exe",
+              "executable": true
+            }
+          },
+          "rules_rust_proto__iovec-0.1.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/iovec/0.1.4/download"
+              ],
+              "strip_prefix": "iovec-0.1.4",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.iovec-0.1.4.bazel"
+            }
+          },
+          "rules_rust_proto__byteorder-1.4.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/byteorder/1.4.3/download"
+              ],
+              "strip_prefix": "byteorder-1.4.3",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.byteorder-1.4.3.bazel"
+            }
+          },
+          "cui__chrono-0.4.26": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/chrono/0.4.26/download"
+              ],
+              "strip_prefix": "chrono-0.4.26",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.chrono-0.4.26.bazel"
+            }
+          },
+          "rules_rust_proto__redox_syscall-0.1.57": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/redox_syscall/0.1.57/download"
+              ],
+              "strip_prefix": "redox_syscall-0.1.57",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.redox_syscall-0.1.57.bazel"
+            }
+          },
+          "rules_rust_bindgen__proc-macro2-1.0.60": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/proc-macro2/1.0.60/download"
+              ],
+              "strip_prefix": "proc-macro2-1.0.60",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.proc-macro2-1.0.60.bazel"
+            }
+          },
+          "rrra__windows_i686_msvc-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_i686_msvc/0.48.0/download"
+              ],
+              "strip_prefix": "windows_i686_msvc-0.48.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_i686_msvc-0.48.0.bazel"
+            }
+          },
+          "cui__overload-0.1.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/overload/0.1.1/download"
+              ],
+              "strip_prefix": "overload-0.1.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.overload-0.1.1.bazel"
+            }
+          },
+          "rules_rust_bindgen__clap_derive-4.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap_derive/4.3.2/download"
+              ],
+              "strip_prefix": "clap_derive-4.3.2",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.clap_derive-4.3.2.bazel"
+            }
+          },
+          "cui__anstream-0.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anstream/0.3.2/download"
+              ],
+              "strip_prefix": "anstream-0.3.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.anstream-0.3.2.bazel"
+            }
+          },
+          "cui__bitflags-1.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bitflags/1.3.2/download"
+              ],
+              "strip_prefix": "bitflags-1.3.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
+            }
+          },
+          "rules_rust_prost__smallvec-1.10.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/smallvec/1.10.0/download"
+              ],
+              "strip_prefix": "smallvec-1.10.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.smallvec-1.10.0.bazel"
+            }
+          },
+          "rules_rust_prost__windows_x86_64_gnu-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_gnu/0.48.0/download"
+              ],
+              "strip_prefix": "windows_x86_64_gnu-0.48.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows_x86_64_gnu-0.48.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__atty-0.2.14": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/atty/0.2.14/download"
+              ],
+              "strip_prefix": "atty-0.2.14",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.atty-0.2.14.bazel"
+            }
+          },
+          "cui__walkdir-2.3.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/walkdir/2.3.3/download"
+              ],
+              "strip_prefix": "walkdir-2.3.3",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.walkdir-2.3.3.bazel"
+            }
+          },
+          "rrra__aho-corasick-1.0.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/aho-corasick/1.0.2/download"
+              ],
+              "strip_prefix": "aho-corasick-1.0.2",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.aho-corasick-1.0.2.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__rustls-0.21.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rustls/0.21.8/download"
+              ],
+              "strip_prefix": "rustls-0.21.8",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rustls-0.21.8.bazel"
+            }
+          },
+          "cui__gix-refspec-0.18.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "0895cb7b1e70f3c3bd4550c329e9f5caf2975f97fcd4238e05754e72208ef61e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-refspec/0.18.0/download"
+              ],
+              "strip_prefix": "gix-refspec-0.18.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-refspec-0.18.0.bazel"
+            }
+          },
+          "cui__semver-1.0.20": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/semver/1.0.20/download"
+              ],
+              "strip_prefix": "semver-1.0.20",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.semver-1.0.20.bazel"
+            }
+          },
+          "rules_rust_proto__num_cpus-1.15.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num_cpus/1.15.0/download"
+              ],
+              "strip_prefix": "num_cpus-1.15.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.num_cpus-1.15.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__humantime-2.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/humantime/2.1.0/download"
+              ],
+              "strip_prefix": "humantime-2.1.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.humantime-2.1.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__bitflags-2.4.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bitflags/2.4.1/download"
+              ],
+              "strip_prefix": "bitflags-2.4.1",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.bitflags-2.4.1.bazel"
+            }
+          },
+          "rrra__regex-syntax-0.7.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/regex-syntax/0.7.4/download"
+              ],
+              "strip_prefix": "regex-syntax-0.7.4",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.regex-syntax-0.7.4.bazel"
+            }
+          },
+          "rules_rust_prost__autocfg-1.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/autocfg/1.1.0/download"
+              ],
+              "strip_prefix": "autocfg-1.1.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.autocfg-1.1.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__sct-0.7.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/sct/0.7.1/download"
+              ],
+              "strip_prefix": "sct-0.7.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.sct-0.7.1.bazel"
+            }
+          },
+          "rrra__winapi-util-0.1.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi-util/0.1.5/download"
+              ],
+              "strip_prefix": "winapi-util-0.1.5",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.winapi-util-0.1.5.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__strsim-0.10.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/strsim/0.10.0/download"
+              ],
+              "strip_prefix": "strsim-0.10.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.strsim-0.10.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__untrusted-0.9.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/untrusted/0.9.0/download"
+              ],
+              "strip_prefix": "untrusted-0.9.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.untrusted-0.9.0.bazel"
+            }
+          },
+          "rules_rust_proto__slab-0.4.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/slab/0.4.7/download"
+              ],
+              "strip_prefix": "slab-0.4.7",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.slab-0.4.7.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__crossbeam-epoch-0.9.15": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/crossbeam-epoch/0.9.15/download"
+              ],
+              "strip_prefix": "crossbeam-epoch-0.9.15",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.crossbeam-epoch-0.9.15.bazel"
+            }
+          },
+          "rrra__termcolor-1.2.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/termcolor/1.2.0/download"
+              ],
+              "strip_prefix": "termcolor-1.2.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.termcolor-1.2.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__errno-0.3.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/errno/0.3.1/download"
+              ],
+              "strip_prefix": "errno-0.3.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.errno-0.3.1.bazel"
+            }
+          },
+          "rules_rust_bindgen__unicode-width-0.1.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicode-width/0.1.10/download"
+              ],
+              "strip_prefix": "unicode-width-0.1.10",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.unicode-width-0.1.10.bazel"
+            }
+          },
+          "rules_rust_proto__crossbeam-queue-0.2.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/crossbeam-queue/0.2.3/download"
+              ],
+              "strip_prefix": "crossbeam-queue-0.2.3",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.crossbeam-queue-0.2.3.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__crossbeam-deque-0.8.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/crossbeam-deque/0.8.3/download"
+              ],
+              "strip_prefix": "crossbeam-deque-0.8.3",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.crossbeam-deque-0.8.3.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__wasi-0.11.0-wasi-snapshot-preview1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/wasi/0.11.0+wasi-snapshot-preview1/download"
+              ],
+              "strip_prefix": "wasi-0.11.0+wasi-snapshot-preview1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel"
+            }
+          },
+          "rrra__colorchoice-1.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/colorchoice/1.0.0/download"
+              ],
+              "strip_prefix": "colorchoice-1.0.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.colorchoice-1.0.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__regex-1.9.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/regex/1.9.1/download"
+              ],
+              "strip_prefix": "regex-1.9.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.regex-1.9.1.bazel"
+            }
+          },
+          "rrra__windows_x86_64_gnullvm-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_gnullvm/0.48.0/download"
+              ],
+              "strip_prefix": "windows_x86_64_gnullvm-0.48.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_x86_64_gnullvm-0.48.0.bazel"
+            }
+          },
+          "rules_rust_prost__slab-0.4.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/slab/0.4.8/download"
+              ],
+              "strip_prefix": "slab-0.4.8",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.slab-0.4.8.bazel"
+            }
+          },
+          "rrra__clap-4.3.11": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "1640e5cc7fb47dbb8338fd471b105e7ed6c3cb2aeb00c2e067127ffd3764a05d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap/4.3.11/download"
+              ],
+              "strip_prefix": "clap-4.3.11",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.clap-4.3.11.bazel"
+            }
+          },
+          "cui__adler-1.0.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/adler/1.0.2/download"
+              ],
+              "strip_prefix": "adler-1.0.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.adler-1.0.2.bazel"
+            }
+          },
+          "cross_x86_64-apple-darwin": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "urls": [
+                "https://github.com/rust-embedded/cross/releases/download/v0.2.1/cross-v0.2.1-x86_64-apple-darwin.tar.gz"
+              ],
+              "sha256": "589da89453291dc26f0b10b521cdadb98376d495645b210574bd9ca4ec8cfa2c",
+              "build_file_content": "exports_files(glob([\"**\"]), visibility = [\"//visibility:public\"])"
+            }
+          },
+          "rules_rust_prost__rustix-0.37.20": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b96e891d04aa506a6d1f318d2771bcb1c7dfda84e126660ace067c9b474bb2c0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rustix/0.37.20/download"
+              ],
+              "strip_prefix": "rustix-0.37.20",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.rustix-0.37.20.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__wasm-bindgen-macro-support-0.2.91": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/wasm-bindgen-macro-support/0.2.91/download"
+              ],
+              "strip_prefix": "wasm-bindgen-macro-support-0.2.91",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-macro-support-0.2.91.bazel"
+            }
+          },
+          "rules_rust_prost__fnv-1.0.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/fnv/1.0.7/download"
+              ],
+              "strip_prefix": "fnv-1.0.7",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.fnv-1.0.7.bazel"
+            }
+          },
+          "cui__windows_i686_msvc-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_i686_msvc/0.48.0/download"
+              ],
+              "strip_prefix": "windows_i686_msvc-0.48.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_i686_msvc-0.48.0.bazel"
+            }
+          },
+          "cui__jwalk-0.8.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2735847566356cd2179a2a38264839308f7079fa96e6bd5a42d740460e003c56",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/jwalk/0.8.1/download"
+              ],
+              "strip_prefix": "jwalk-0.8.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.jwalk-0.8.1.bazel"
+            }
+          },
+          "rules_rust_prost__getrandom-0.2.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/getrandom/0.2.10/download"
+              ],
+              "strip_prefix": "getrandom-0.2.10",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.getrandom-0.2.10.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__redox_syscall-0.2.16": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/redox_syscall/0.2.16/download"
+              ],
+              "strip_prefix": "redox_syscall-0.2.16",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.redox_syscall-0.2.16.bazel"
+            }
+          },
+          "rules_rust_prost__httpdate-1.0.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/httpdate/1.0.2/download"
+              ],
+              "strip_prefix": "httpdate-1.0.2",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.httpdate-1.0.2.bazel"
+            }
+          },
+          "cargo_bazel.buildifier-darwin-arm64": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_file",
+            "attributes": {
+              "urls": [
+                "https://github.com/bazelbuild/buildtools/releases/download/5.0.1/buildifier-darwin-arm64"
+              ],
+              "sha256": "4da23315f0dccabf878c8227fddbccf35545b23b3cb6225bfcf3107689cc4364",
+              "downloaded_file_path": "buildifier.exe",
+              "executable": true
+            }
+          },
+          "cui__cargo_toml-0.19.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "a98356df42a2eb1bd8f1793ae4ee4de48e384dd974ce5eac8eee802edb7492be",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cargo_toml/0.19.2/download"
+              ],
+              "strip_prefix": "cargo_toml-0.19.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cargo_toml-0.19.2.bazel"
+            }
+          },
+          "rules_rust_prost__num_cpus-1.15.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num_cpus/1.15.0/download"
+              ],
+              "strip_prefix": "num_cpus-1.15.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.num_cpus-1.15.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__lazycell-1.3.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/lazycell/1.3.0/download"
+              ],
+              "strip_prefix": "lazycell-1.3.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.lazycell-1.3.0.bazel"
+            }
+          },
+          "cui__tracing-subscriber-0.3.17": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tracing-subscriber/0.3.17/download"
+              ],
+              "strip_prefix": "tracing-subscriber-0.3.17",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tracing-subscriber-0.3.17.bazel"
+            }
+          },
+          "rules_rust_prost__bytes-1.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bytes/1.4.0/download"
+              ],
+              "strip_prefix": "bytes-1.4.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.bytes-1.4.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__mime_guess-2.0.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/mime_guess/2.0.4/download"
+              ],
+              "strip_prefix": "mime_guess-2.0.4",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.mime_guess-2.0.4.bazel"
+            }
+          },
+          "rules_rust_proto__protobuf-codegen-2.8.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "3d74b9cbbf2ac9a7169c85a3714ec16c51ee9ec7cfd511549527e9a7df720795",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/protobuf-codegen/2.8.2/download"
+              ],
+              "strip_prefix": "protobuf-codegen-2.8.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.protobuf-codegen-2.8.2.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__wasm-encoder-0.29.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "18c41dbd92eaebf3612a39be316540b8377c871cb9bde6b064af962984912881",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/wasm-encoder/0.29.0/download"
+              ],
+              "strip_prefix": "wasm-encoder-0.29.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-encoder-0.29.0.bazel"
+            }
+          },
+          "cui__regex-syntax-0.8.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/regex-syntax/0.8.2/download"
+              ],
+              "strip_prefix": "regex-syntax-0.8.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.regex-syntax-0.8.2.bazel"
+            }
+          },
+          "rules_rust_bindgen__clap_lex-0.5.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap_lex/0.5.0/download"
+              ],
+              "strip_prefix": "clap_lex-0.5.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.clap_lex-0.5.0.bazel"
+            }
+          },
+          "rules_rust_prost__http-body-0.4.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/http-body/0.4.5/download"
+              ],
+              "strip_prefix": "http-body-0.4.5",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.http-body-0.4.5.bazel"
+            }
+          },
+          "rules_rust_bindgen__utf8parse-0.2.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/utf8parse/0.2.1/download"
+              ],
+              "strip_prefix": "utf8parse-0.2.1",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.utf8parse-0.2.1.bazel"
+            }
+          },
+          "rules_rust_proto__lazy_static-1.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/lazy_static/1.4.0/download"
+              ],
+              "strip_prefix": "lazy_static-1.4.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.lazy_static-1.4.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__windows_x86_64_gnullvm-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_gnullvm/0.48.0/download"
+              ],
+              "strip_prefix": "windows_x86_64_gnullvm-0.48.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_x86_64_gnullvm-0.48.0.bazel"
+            }
+          },
+          "rules_rust_prost__fixedbitset-0.4.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/fixedbitset/0.4.2/download"
+              ],
+              "strip_prefix": "fixedbitset-0.4.2",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.fixedbitset-0.4.2.bazel"
+            }
+          },
+          "rrra__winapi-i686-pc-windows-gnu-0.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
+              ],
+              "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
+            }
+          },
+          "rules_rust_prost__regex-1.8.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/regex/1.8.4/download"
+              ],
+              "strip_prefix": "regex-1.8.4",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.regex-1.8.4.bazel"
+            }
+          },
+          "cui__winapi-0.3.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi/0.3.9/download"
+              ],
+              "strip_prefix": "winapi-0.3.9",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.winapi-0.3.9.bazel"
+            }
+          },
+          "cui__syn-2.0.32": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/syn/2.0.32/download"
+              ],
+              "strip_prefix": "syn-2.0.32",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.syn-2.0.32.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__wasm-bindgen-externref-xform-0.2.91": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "12b6ac5fca1d0992d2328147488169ea166bfe899c88f8ad06cf583f4c492fcf",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/wasm-bindgen-externref-xform/0.2.91/download"
+              ],
+              "strip_prefix": "wasm-bindgen-externref-xform-0.2.91",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-externref-xform-0.2.91.bazel"
+            }
+          },
+          "rules_rust_prost__rustversion-1.0.12": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rustversion/1.0.12/download"
+              ],
+              "strip_prefix": "rustversion-1.0.12",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.rustversion-1.0.12.bazel"
+            }
+          },
+          "rules_rust_prost__tokio-macros-2.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-macros/2.1.0/download"
+              ],
+              "strip_prefix": "tokio-macros-2.1.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tokio-macros-2.1.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__wasmprinter-0.2.60": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b76cb909fe3d9b0de58cee1f4072247e680ff5cc1558ccad2790a9de14a23993",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/wasmprinter/0.2.60/download"
+              ],
+              "strip_prefix": "wasmprinter-0.2.60",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasmprinter-0.2.60.bazel"
+            }
+          },
+          "rules_rust_proto__scoped-tls-0.1.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "332ffa32bf586782a3efaeb58f127980944bbc8c4d6913a86107ac2a5ab24b28",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/scoped-tls/0.1.2/download"
+              ],
+              "strip_prefix": "scoped-tls-0.1.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.scoped-tls-0.1.2.bazel"
+            }
+          },
+          "cui__gix-macros-0.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9d8acb5ee668d55f0f2d19a320a3f9ef67a6999ad483e11135abcc2464ed18b6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-macros/0.1.0/download"
+              ],
+              "strip_prefix": "gix-macros-0.1.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-macros-0.1.0.bazel"
+            }
+          },
+          "rrra__ryu-1.0.14": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "fe232bdf6be8c8de797b22184ee71118d63780ea42ac85b61d1baa6d3b782ae9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/ryu/1.0.14/download"
+              ],
+              "strip_prefix": "ryu-1.0.14",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.ryu-1.0.14.bazel"
+            }
+          },
+          "rrra__serde-1.0.171": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "30e27d1e4fd7659406c492fd6cfaf2066ba8773de45ca75e855590f856dc34a9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/serde/1.0.171/download"
+              ],
+              "strip_prefix": "serde-1.0.171",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.serde-1.0.171.bazel"
+            }
+          },
+          "rules_rust_prost__lock_api-0.4.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/lock_api/0.4.10/download"
+              ],
+              "strip_prefix": "lock_api-0.4.10",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.lock_api-0.4.10.bazel"
+            }
+          },
+          "rules_rust_bindgen__glob-0.3.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/glob/0.3.1/download"
+              ],
+              "strip_prefix": "glob-0.3.1",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.glob-0.3.1.bazel"
+            }
+          },
+          "rules_rust_prost__itertools-0.10.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/itertools/0.10.5/download"
+              ],
+              "strip_prefix": "itertools-0.10.5",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.itertools-0.10.5.bazel"
+            }
+          },
+          "cui__redox_syscall-0.4.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/redox_syscall/0.4.1/download"
+              ],
+              "strip_prefix": "redox_syscall-0.4.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.redox_syscall-0.4.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__id-arena-2.2.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/id-arena/2.2.1/download"
+              ],
+              "strip_prefix": "id-arena-2.2.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.id-arena-2.2.1.bazel"
+            }
+          },
+          "cui__normpath-1.1.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ec60c60a693226186f5d6edf073232bfb6464ed97eb22cf3b01c1e8198fd97f5",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/normpath/1.1.1/download"
+              ],
+              "strip_prefix": "normpath-1.1.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.normpath-1.1.1.bazel"
+            }
+          },
+          "rules_rust_bindgen__lazy_static-1.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/lazy_static/1.4.0/download"
+              ],
+              "strip_prefix": "lazy_static-1.4.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.lazy_static-1.4.0.bazel"
+            }
+          },
+          "rules_rust_prost__axum-0.6.18": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f8175979259124331c1d7bf6586ee7e0da434155e4b2d48ec2c8386281d8df39",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/axum/0.6.18/download"
+              ],
+              "strip_prefix": "axum-0.6.18",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.axum-0.6.18.bazel"
+            }
+          },
+          "rules_rust_prost__parking_lot-0.12.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/parking_lot/0.12.1/download"
+              ],
+              "strip_prefix": "parking_lot-0.12.1",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.parking_lot-0.12.1.bazel"
+            }
+          },
+          "cui__cargo-platform-0.1.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "12024c4645c97566567129c204f65d5815a8c9aecf30fcbe682b2fe034996d36",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cargo-platform/0.1.4/download"
+              ],
+              "strip_prefix": "cargo-platform-0.1.4",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cargo-platform-0.1.4.bazel"
+            }
+          },
+          "cui__slug-0.1.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b3bc762e6a4b6c6fcaade73e77f9ebc6991b676f88bb2358bddb56560f073373",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/slug/0.1.4/download"
+              ],
+              "strip_prefix": "slug-0.1.4",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.slug-0.1.4.bazel"
+            }
+          },
+          "rules_rust_prost__errno-dragonfly-0.1.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/errno-dragonfly/0.1.2/download"
+              ],
+              "strip_prefix": "errno-dragonfly-0.1.2",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.errno-dragonfly-0.1.2.bazel"
+            }
+          },
+          "cui__gix-url-0.24.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "6125ecf46e8c68bf7202da6cad239831daebf0247ffbab30210d72f3856e420f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-url/0.24.0/download"
+              ],
+              "strip_prefix": "gix-url-0.24.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-url-0.24.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__percent-encoding-2.3.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/percent-encoding/2.3.0/download"
+              ],
+              "strip_prefix": "percent-encoding-2.3.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.percent-encoding-2.3.0.bazel"
+            }
+          },
+          "cui__clap_builder-4.3.11": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "98c59138d527eeaf9b53f35a77fcc1fad9d883116070c63d5de1c7dc7b00c72b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap_builder/4.3.11/download"
+              ],
+              "strip_prefix": "clap_builder-4.3.11",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.clap_builder-4.3.11.bazel"
+            }
+          },
+          "cui__tracing-core-0.1.32": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tracing-core/0.1.32/download"
+              ],
+              "strip_prefix": "tracing-core-0.1.32",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tracing-core-0.1.32.bazel"
+            }
+          },
+          "rules_rust_proto__fuchsia-zircon-sys-0.3.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/fuchsia-zircon-sys/0.3.3/download"
+              ],
+              "strip_prefix": "fuchsia-zircon-sys-0.3.3",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.fuchsia-zircon-sys-0.3.3.bazel"
+            }
+          },
+          "rules_rust_proto__safemem-0.3.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/safemem/0.3.3/download"
+              ],
+              "strip_prefix": "safemem-0.3.3",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.safemem-0.3.3.bazel"
+            }
+          },
+          "cui__windows_x86_64_gnu-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_gnu/0.48.0/download"
+              ],
+              "strip_prefix": "windows_x86_64_gnu-0.48.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_x86_64_gnu-0.48.0.bazel"
+            }
+          },
+          "cui__gix-actor-0.27.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "08c60e982c5290897122d4e2622447f014a2dadd5a18cb73d50bb91b31645e27",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-actor/0.27.0/download"
+              ],
+              "strip_prefix": "gix-actor-0.27.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-actor-0.27.0.bazel"
+            }
+          },
+          "cui__unic-ucd-version-0.9.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unic-ucd-version/0.9.0/download"
+              ],
+              "strip_prefix": "unic-ucd-version-0.9.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-ucd-version-0.9.0.bazel"
+            }
+          },
+          "com_google_googleapis": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "urls": [
+                "https://github.com/googleapis/googleapis/archive/18becb1d1426feb7399db144d7beeb3284f1ccb0.zip"
+              ],
+              "strip_prefix": "googleapis-18becb1d1426feb7399db144d7beeb3284f1ccb0",
+              "sha256": "b8c487191eb942361af905e40172644eab490190e717c3d09bf83e87f3994fff"
+            }
+          },
+          "cui__either-1.9.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/either/1.9.0/download"
+              ],
+              "strip_prefix": "either-1.9.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.either-1.9.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__gimli-0.26.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gimli/0.26.2/download"
+              ],
+              "strip_prefix": "gimli-0.26.2",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.gimli-0.26.2.bazel"
+            }
+          },
+          "cui__parking_lot-0.12.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/parking_lot/0.12.1/download"
+              ],
+              "strip_prefix": "parking_lot-0.12.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.parking_lot-0.12.1.bazel"
+            }
+          },
+          "cui__globwalk-0.8.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "93e3af942408868f6934a7b85134a3230832b9977cf66125df2f9edcfce4ddcc",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/globwalk/0.8.1/download"
+              ],
+              "strip_prefix": "globwalk-0.8.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.globwalk-0.8.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__wasm-bindgen-wasm-interpreter-0.2.91": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "682940195a701dbf887f20017418b8cac916a37b3f91ededec33226619e973c1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/wasm-bindgen-wasm-interpreter/0.2.91/download"
+              ],
+              "strip_prefix": "wasm-bindgen-wasm-interpreter-0.2.91",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-wasm-interpreter-0.2.91.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__ring-0.17.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/ring/0.17.5/download"
+              ],
+              "strip_prefix": "ring-0.17.5",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.ring-0.17.5.bazel"
+            }
+          },
+          "rules_rust_prost__memchr-2.5.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/memchr/2.5.0/download"
+              ],
+              "strip_prefix": "memchr-2.5.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.memchr-2.5.0.bazel"
+            }
+          },
+          "cui__crates-index-2.2.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "33bc10579ea08741ae173928194b6c42c90b295d51ddd0d18238eaf15502ac87",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/crates-index/2.2.0/download"
+              ],
+              "strip_prefix": "crates-index-2.2.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crates-index-2.2.0.bazel"
+            }
+          },
+          "rules_rust_proto__winapi-0.3.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi/0.3.9/download"
+              ],
+              "strip_prefix": "winapi-0.3.9",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.winapi-0.3.9.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__crossbeam-channel-0.5.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/crossbeam-channel/0.5.8/download"
+              ],
+              "strip_prefix": "crossbeam-channel-0.5.8",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.crossbeam-channel-0.5.8.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__windows-sys-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows-sys/0.48.0/download"
+              ],
+              "strip_prefix": "windows-sys-0.48.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows-sys-0.48.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__flate2-1.0.28": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/flate2/1.0.28/download"
+              ],
+              "strip_prefix": "flate2-1.0.28",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.flate2-1.0.28.bazel"
+            }
+          },
+          "rules_rust_proto__semver-0.9.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/semver/0.9.0/download"
+              ],
+              "strip_prefix": "semver-0.9.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.semver-0.9.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__scopeguard-1.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/scopeguard/1.1.0/download"
+              ],
+              "strip_prefix": "scopeguard-1.1.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.scopeguard-1.1.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__fastrand-1.9.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/fastrand/1.9.0/download"
+              ],
+              "strip_prefix": "fastrand-1.9.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.fastrand-1.9.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__num_threads-0.1.6": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num_threads/0.1.6/download"
+              ],
+              "strip_prefix": "num_threads-0.1.6",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.num_threads-0.1.6.bazel"
+            }
+          },
+          "cui__rayon-core-1.12.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rayon-core/1.12.0/download"
+              ],
+              "strip_prefix": "rayon-core-1.12.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rayon-core-1.12.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__lazy_static-1.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/lazy_static/1.4.0/download"
+              ],
+              "strip_prefix": "lazy_static-1.4.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.lazy_static-1.4.0.bazel"
+            }
+          },
+          "cui__thread_local-1.1.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/thread_local/1.1.4/download"
+              ],
+              "strip_prefix": "thread_local-1.1.4",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.thread_local-1.1.4.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__threadpool-1.8.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/threadpool/1.8.1/download"
+              ],
+              "strip_prefix": "threadpool-1.8.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.threadpool-1.8.1.bazel"
+            }
+          },
+          "cui__linux-raw-sys-0.4.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/linux-raw-sys/0.4.10/download"
+              ],
+              "strip_prefix": "linux-raw-sys-0.4.10",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.linux-raw-sys-0.4.10.bazel"
+            }
+          },
+          "rules_rust_bindgen__anstyle-wincon-1.0.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anstyle-wincon/1.0.1/download"
+              ],
+              "strip_prefix": "anstyle-wincon-1.0.1",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.anstyle-wincon-1.0.1.bazel"
+            }
+          },
+          "rrra__windows_x86_64_msvc-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_msvc/0.48.0/download"
+              ],
+              "strip_prefix": "windows_x86_64_msvc-0.48.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_x86_64_msvc-0.48.0.bazel"
+            }
+          },
+          "cui__rand_core-0.3.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rand_core/0.3.1/download"
+              ],
+              "strip_prefix": "rand_core-0.3.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rand_core-0.3.1.bazel"
+            }
+          },
+          "cui__rayon-1.8.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rayon/1.8.0/download"
+              ],
+              "strip_prefix": "rayon-1.8.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rayon-1.8.0.bazel"
+            }
+          },
+          "cui__tempfile-3.8.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tempfile/3.8.1/download"
+              ],
+              "strip_prefix": "tempfile-3.8.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tempfile-3.8.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__windows_aarch64_msvc-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_aarch64_msvc/0.48.0/download"
+              ],
+              "strip_prefix": "windows_aarch64_msvc-0.48.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_aarch64_msvc-0.48.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__multipart-0.18.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "00dec633863867f29cb39df64a397cdf4a6354708ddd7759f70c7fb51c5f9182",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/multipart/0.18.0/download"
+              ],
+              "strip_prefix": "multipart-0.18.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.multipart-0.18.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__android_system_properties-0.1.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/android_system_properties/0.1.5/download"
+              ],
+              "strip_prefix": "android_system_properties-0.1.5",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.android_system_properties-0.1.5.bazel"
+            }
+          },
+          "cui__gix-ref-0.37.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "22e6b749660b613641769edc1954132eb8071a13c32224891686091bef078de4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-ref/0.37.0/download"
+              ],
+              "strip_prefix": "gix-ref-0.37.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-ref-0.37.0.bazel"
+            }
+          },
+          "cui__rand-0.8.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rand/0.8.5/download"
+              ],
+              "strip_prefix": "rand-0.8.5",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rand-0.8.5.bazel"
+            }
+          },
+          "cui__num-integer-0.1.45": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num-integer/0.1.45/download"
+              ],
+              "strip_prefix": "num-integer-0.1.45",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-integer-0.1.45.bazel"
+            }
+          },
+          "rules_rust_bindgen__anstyle-query-1.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anstyle-query/1.0.0/download"
+              ],
+              "strip_prefix": "anstyle-query-1.0.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.anstyle-query-1.0.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__hermit-abi-0.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/hermit-abi/0.3.2/download"
+              ],
+              "strip_prefix": "hermit-abi-0.3.2",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.hermit-abi-0.3.2.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__getrandom-0.2.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/getrandom/0.2.10/download"
+              ],
+              "strip_prefix": "getrandom-0.2.10",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.getrandom-0.2.10.bazel"
+            }
+          },
+          "rules_rust_proto__smallvec-0.6.14": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b97fcaeba89edba30f044a10c6a3cc39df9c3f17d7cd829dd1446cab35f890e0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/smallvec/0.6.14/download"
+              ],
+              "strip_prefix": "smallvec-0.6.14",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.smallvec-0.6.14.bazel"
+            }
+          },
+          "rules_rust_prost__httparse-1.8.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/httparse/1.8.0/download"
+              ],
+              "strip_prefix": "httparse-1.8.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.httparse-1.8.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__shlex-1.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/shlex/1.1.0/download"
+              ],
+              "strip_prefix": "shlex-1.1.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.shlex-1.1.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__predicates-1.0.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f49cfaf7fdaa3bfacc6fa3e7054e65148878354a5cfddcf661df4c851f8021df",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/predicates/1.0.8/download"
+              ],
+              "strip_prefix": "predicates-1.0.8",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.predicates-1.0.8.bazel"
+            }
+          },
+          "rules_rust_proto__scopeguard-1.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/scopeguard/1.1.0/download"
+              ],
+              "strip_prefix": "scopeguard-1.1.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.scopeguard-1.1.0.bazel"
+            }
+          },
+          "rrra__windows-targets-0.48.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows-targets/0.48.1/download"
+              ],
+              "strip_prefix": "windows-targets-0.48.1",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows-targets-0.48.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__serde_json-1.0.102": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b5062a995d481b2308b6064e9af76011f2921c35f97b0468811ed9f6cd91dfed",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/serde_json/1.0.102/download"
+              ],
+              "strip_prefix": "serde_json-1.0.102",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.serde_json-1.0.102.bazel"
+            }
+          },
+          "rrra__clap_builder-4.3.11": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "98c59138d527eeaf9b53f35a77fcc1fad9d883116070c63d5de1c7dc7b00c72b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap_builder/4.3.11/download"
+              ],
+              "strip_prefix": "clap_builder-4.3.11",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.clap_builder-4.3.11.bazel"
+            }
+          },
+          "rules_rust_prost__windows-sys-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows-sys/0.48.0/download"
+              ],
+              "strip_prefix": "windows-sys-0.48.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows-sys-0.48.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__windows_i686_gnu-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_i686_gnu/0.48.0/download"
+              ],
+              "strip_prefix": "windows_i686_gnu-0.48.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_i686_gnu-0.48.0.bazel"
+            }
+          },
+          "cui__gix-lock-10.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "47fc96fa8b6b6d33555021907c81eb3b27635daecf6e630630bdad44f8feaa95",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-lock/10.0.0/download"
+              ],
+              "strip_prefix": "gix-lock-10.0.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-lock-10.0.0.bazel"
+            }
+          },
+          "rules_rust_prost__indexmap-1.9.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/indexmap/1.9.3/download"
+              ],
+              "strip_prefix": "indexmap-1.9.3",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.indexmap-1.9.3.bazel"
+            }
+          },
+          "cui__num-iter-0.1.43": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num-iter/0.1.43/download"
+              ],
+              "strip_prefix": "num-iter-0.1.43",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-iter-0.1.43.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__ryu-1.0.14": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "fe232bdf6be8c8de797b22184ee71118d63780ea42ac85b61d1baa6d3b782ae9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/ryu/1.0.14/download"
+              ],
+              "strip_prefix": "ryu-1.0.14",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.ryu-1.0.14.bazel"
+            }
+          },
+          "rules_rust_prost__lazy_static-1.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/lazy_static/1.4.0/download"
+              ],
+              "strip_prefix": "lazy_static-1.4.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.lazy_static-1.4.0.bazel"
+            }
+          },
+          "rules_rust_prost__multimap-0.8.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/multimap/0.8.3/download"
+              ],
+              "strip_prefix": "multimap-0.8.3",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.multimap-0.8.3.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__difference-2.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/difference/2.0.0/download"
+              ],
+              "strip_prefix": "difference-2.0.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.difference-2.0.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__unicode-segmentation-1.10.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicode-segmentation/1.10.1/download"
+              ],
+              "strip_prefix": "unicode-segmentation-1.10.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicode-segmentation-1.10.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__proc-macro2-1.0.64": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "78803b62cbf1f46fde80d7c0e803111524b9877184cfe7c3033659490ac7a7da",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/proc-macro2/1.0.64/download"
+              ],
+              "strip_prefix": "proc-macro2-1.0.64",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.proc-macro2-1.0.64.bazel"
+            }
+          },
+          "rrra__cc-1.0.79": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cc/1.0.79/download"
+              ],
+              "strip_prefix": "cc-1.0.79",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.cc-1.0.79.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__rustls-webpki-0.101.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rustls-webpki/0.101.7/download"
+              ],
+              "strip_prefix": "rustls-webpki-0.101.7",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rustls-webpki-0.101.7.bazel"
+            }
+          },
+          "rules_rust_prost": {
+            "bzlFile": "@@rules_rust~//crate_universe/private:crates_vendor.bzl",
+            "ruleClassName": "crates_vendor_remote_repository",
+            "attributes": {
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.bazel",
+              "defs_module": "@@rules_rust~//proto/prost/private/3rdparty/crates:defs.bzl"
+            }
+          },
+          "rules_rust_bindgen__quote-1.0.28": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/quote/1.0.28/download"
+              ],
+              "strip_prefix": "quote-1.0.28",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.quote-1.0.28.bazel"
+            }
+          },
+          "cui__anstyle-query-1.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anstyle-query/1.0.0/download"
+              ],
+              "strip_prefix": "anstyle-query-1.0.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.anstyle-query-1.0.0.bazel"
+            }
+          },
+          "cui__bumpalo-3.13.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bumpalo/3.13.0/download"
+              ],
+              "strip_prefix": "bumpalo-3.13.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.bumpalo-3.13.0.bazel"
+            }
+          },
+          "rules_rust_prost__cfg-if-1.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cfg-if/1.0.0/download"
+              ],
+              "strip_prefix": "cfg-if-1.0.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.cfg-if-1.0.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__anstyle-parse-0.2.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e765fd216e48e067936442276d1d57399e37bce53c264d6fefbe298080cb57ee",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anstyle-parse/0.2.0/download"
+              ],
+              "strip_prefix": "anstyle-parse-0.2.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.anstyle-parse-0.2.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__bindgen-0.69.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9ffcebc3849946a7170a05992aac39da343a90676ab392c51a4280981d6379c2",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bindgen/0.69.1/download"
+              ],
+              "strip_prefix": "bindgen-0.69.1",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.bindgen-0.69.1.bazel"
+            }
+          },
+          "cui__num-complex-0.1.43": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b288631d7878aaf59442cffd36910ea604ecd7745c36054328595114001c9656",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num-complex/0.1.43/download"
+              ],
+              "strip_prefix": "num-complex-0.1.43",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-complex-0.1.43.bazel"
+            }
+          },
+          "rules_rust_prost__pin-project-1.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c95a7476719eab1e366eaf73d0260af3021184f18177925b07f54b30089ceead",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/pin-project/1.1.0/download"
+              ],
+              "strip_prefix": "pin-project-1.1.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.pin-project-1.1.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__quote-1.0.29": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/quote/1.0.29/download"
+              ],
+              "strip_prefix": "quote-1.0.29",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.quote-1.0.29.bazel"
+            }
+          },
+          "cui__parse-zoneinfo-0.3.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c705f256449c60da65e11ff6626e0c16a0a0b96aaa348de61376b249bc340f41",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/parse-zoneinfo/0.3.0/download"
+              ],
+              "strip_prefix": "parse-zoneinfo-0.3.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.parse-zoneinfo-0.3.0.bazel"
+            }
+          },
+          "cui__unicode-bidi-0.3.13": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicode-bidi/0.3.13/download"
+              ],
+              "strip_prefix": "unicode-bidi-0.3.13",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unicode-bidi-0.3.13.bazel"
+            }
+          },
+          "cui__gix-traverse-0.33.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "22ef04ab3643acba289b5cedd25d6f53c0430770b1d689d1d654511e6fb81ba0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-traverse/0.33.0/download"
+              ],
+              "strip_prefix": "gix-traverse-0.33.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-traverse-0.33.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__stable_deref_trait-1.2.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/stable_deref_trait/1.2.0/download"
+              ],
+              "strip_prefix": "stable_deref_trait-1.2.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.stable_deref_trait-1.2.0.bazel"
+            }
+          },
+          "rules_rust_proto__ws2_32-sys-0.2.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/ws2_32-sys/0.2.1/download"
+              ],
+              "strip_prefix": "ws2_32-sys-0.2.1",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.ws2_32-sys-0.2.1.bazel"
+            }
+          },
+          "cui__miniz_oxide-0.7.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/miniz_oxide/0.7.1/download"
+              ],
+              "strip_prefix": "miniz_oxide-0.7.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.miniz_oxide-0.7.1.bazel"
+            }
+          },
+          "rules_rust_bindgen__io-lifetimes-1.0.11": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/io-lifetimes/1.0.11/download"
+              ],
+              "strip_prefix": "io-lifetimes-1.0.11",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.io-lifetimes-1.0.11.bazel"
+            }
+          },
+          "cui__unic-char-range-0.9.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unic-char-range/0.9.0/download"
+              ],
+              "strip_prefix": "unic-char-range-0.9.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-char-range-0.9.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__leb128-0.2.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/leb128/0.2.5/download"
+              ],
+              "strip_prefix": "leb128-0.2.5",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.leb128-0.2.5.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__predicates-core-1.0.6": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/predicates-core/1.0.6/download"
+              ],
+              "strip_prefix": "predicates-core-1.0.6",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.predicates-core-1.0.6.bazel"
+            }
+          },
+          "cui__windows_aarch64_msvc-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_aarch64_msvc/0.48.0/download"
+              ],
+              "strip_prefix": "windows_aarch64_msvc-0.48.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_aarch64_msvc-0.48.0.bazel"
+            }
+          },
+          "cui__anstyle-1.0.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anstyle/1.0.1/download"
+              ],
+              "strip_prefix": "anstyle-1.0.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.anstyle-1.0.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__wasm-bindgen-0.2.91": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/wasm-bindgen/0.2.91/download"
+              ],
+              "strip_prefix": "wasm-bindgen-0.2.91",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-0.2.91.bazel"
+            }
+          },
+          "rules_rust_prost__winapi-i686-pc-windows-gnu-0.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
+              ],
+              "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
+            }
+          },
+          "cui__regex-automata-0.3.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/regex-automata/0.3.3/download"
+              ],
+              "strip_prefix": "regex-automata-0.3.3",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.regex-automata-0.3.3.bazel"
+            }
+          },
+          "rrra__windows_aarch64_msvc-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_aarch64_msvc/0.48.0/download"
+              ],
+              "strip_prefix": "windows_aarch64_msvc-0.48.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_aarch64_msvc-0.48.0.bazel"
+            }
+          },
+          "rules_rust_prost__which-4.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/which/4.4.0/download"
+              ],
+              "strip_prefix": "which-4.4.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.which-4.4.0.bazel"
+            }
+          },
+          "rrra__anstyle-wincon-1.0.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anstyle-wincon/1.0.1/download"
+              ],
+              "strip_prefix": "anstyle-wincon-1.0.1",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.anstyle-wincon-1.0.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__adler-1.0.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/adler/1.0.2/download"
+              ],
+              "strip_prefix": "adler-1.0.2",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.adler-1.0.2.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__log-0.4.19": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/log/0.4.19/download"
+              ],
+              "strip_prefix": "log-0.4.19",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.log-0.4.19.bazel"
+            }
+          },
+          "rules_rust_bindgen__heck-0.4.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/heck/0.4.1/download"
+              ],
+              "strip_prefix": "heck-0.4.1",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.heck-0.4.1.bazel"
+            }
+          },
+          "cui__digest-0.10.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/digest/0.10.7/download"
+              ],
+              "strip_prefix": "digest-0.10.7",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.digest-0.10.7.bazel"
+            }
+          },
+          "cui__equivalent-1.0.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/equivalent/1.0.1/download"
+              ],
+              "strip_prefix": "equivalent-1.0.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.equivalent-1.0.1.bazel"
+            }
+          },
+          "cui": {
+            "bzlFile": "@@rules_rust~//crate_universe/private:crates_vendor.bzl",
+            "ruleClassName": "crates_vendor_remote_repository",
+            "attributes": {
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.bazel",
+              "defs_module": "@@rules_rust~//crate_universe/3rdparty/crates:defs.bzl"
+            }
+          },
+          "rules_rust_wasm_bindgen__memchr-2.5.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/memchr/2.5.0/download"
+              ],
+              "strip_prefix": "memchr-2.5.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.memchr-2.5.0.bazel"
+            }
+          },
+          "rrra__once_cell-1.18.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/once_cell/1.18.0/download"
+              ],
+              "strip_prefix": "once_cell-1.18.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.once_cell-1.18.0.bazel"
+            }
+          },
+          "rules_rust_proto__tokio-tls-api-0.1.22": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "68d0e040d5b1f4cfca70ec4f371229886a5de5bb554d272a4a8da73004a7b2c9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-tls-api/0.1.22/download"
+              ],
+              "strip_prefix": "tokio-tls-api-0.1.22",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-tls-api-0.1.22.bazel"
+            }
+          },
+          "rules_rust_bindgen__is-terminal-0.4.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/is-terminal/0.4.7/download"
+              ],
+              "strip_prefix": "is-terminal-0.4.7",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.is-terminal-0.4.7.bazel"
+            }
+          },
+          "cui__autocfg-1.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/autocfg/1.1.0/download"
+              ],
+              "strip_prefix": "autocfg-1.1.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.autocfg-1.1.0.bazel"
+            }
+          },
+          "rules_rust_prost__tokio-util-0.7.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-util/0.7.8/download"
+              ],
+              "strip_prefix": "tokio-util-0.7.8",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tokio-util-0.7.8.bazel"
+            }
+          },
+          "rules_rust_prost__tokio-io-timeout-1.2.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-io-timeout/1.2.0/download"
+              ],
+              "strip_prefix": "tokio-io-timeout-1.2.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tokio-io-timeout-1.2.0.bazel"
+            }
+          },
+          "cui__num-traits-0.2.15": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num-traits/0.2.15/download"
+              ],
+              "strip_prefix": "num-traits-0.2.15",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-traits-0.2.15.bazel"
+            }
+          },
+          "rules_rust_proto__winapi-build-0.1.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi-build/0.1.1/download"
+              ],
+              "strip_prefix": "winapi-build-0.1.1",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.winapi-build-0.1.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__base64-0.13.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/base64/0.13.1/download"
+              ],
+              "strip_prefix": "base64-0.13.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.base64-0.13.1.bazel"
+            }
+          },
+          "rules_rust_proto__parking_lot-0.9.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/parking_lot/0.9.0/download"
+              ],
+              "strip_prefix": "parking_lot-0.9.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.parking_lot-0.9.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__humantime-2.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/humantime/2.1.0/download"
+              ],
+              "strip_prefix": "humantime-2.1.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.humantime-2.1.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__rand_chacha-0.3.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rand_chacha/0.3.1/download"
+              ],
+              "strip_prefix": "rand_chacha-0.3.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rand_chacha-0.3.1.bazel"
+            }
+          },
+          "cui__strsim-0.10.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/strsim/0.10.0/download"
+              ],
+              "strip_prefix": "strsim-0.10.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.strsim-0.10.0.bazel"
+            }
+          },
+          "rules_rust_prost__windows_aarch64_gnullvm-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_aarch64_gnullvm/0.48.0/download"
+              ],
+              "strip_prefix": "windows_aarch64_gnullvm-0.48.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows_aarch64_gnullvm-0.48.0.bazel"
+            }
+          },
+          "cui__cfg-if-1.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cfg-if/1.0.0/download"
+              ],
+              "strip_prefix": "cfg-if-1.0.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cfg-if-1.0.0.bazel"
+            }
+          },
+          "cui__errno-dragonfly-0.1.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/errno-dragonfly/0.1.2/download"
+              ],
+              "strip_prefix": "errno-dragonfly-0.1.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.errno-dragonfly-0.1.2.bazel"
+            }
+          },
+          "rules_rust_bindgen__regex-syntax-0.7.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/regex-syntax/0.7.2/download"
+              ],
+              "strip_prefix": "regex-syntax-0.7.2",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.regex-syntax-0.7.2.bazel"
+            }
+          },
+          "cui__proc-macro2-1.0.64": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "78803b62cbf1f46fde80d7c0e803111524b9877184cfe7c3033659490ac7a7da",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/proc-macro2/1.0.64/download"
+              ],
+              "strip_prefix": "proc-macro2-1.0.64",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.proc-macro2-1.0.64.bazel"
+            }
+          },
+          "cui__gix-prompt-0.7.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5c9a913769516f5e9d937afac206fb76428e3d7238e538845842887fda584678",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-prompt/0.7.0/download"
+              ],
+              "strip_prefix": "gix-prompt-0.7.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-prompt-0.7.0.bazel"
+            }
+          },
+          "cui__thiserror-impl-1.0.50": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/thiserror-impl/1.0.50/download"
+              ],
+              "strip_prefix": "thiserror-impl-1.0.50",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.thiserror-impl-1.0.50.bazel"
+            }
+          },
+          "rules_rust_prost__either-1.8.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/either/1.8.1/download"
+              ],
+              "strip_prefix": "either-1.8.1",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.either-1.8.1.bazel"
+            }
+          },
+          "rules_rust_bindgen__bindgen-cli-0.69.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "integrity": "sha256-iFZe4JEQqZ54KZiX+/7VA7mqAwZThu6MGBl/yvIotQE=",
+              "type": "tar.gz",
+              "urls": [
+                "https://crates.io/api/v1/crates/bindgen-cli/0.69.1/download"
+              ],
+              "strip_prefix": "bindgen-cli-0.69.1",
+              "build_file": "@@rules_rust~//bindgen/3rdparty:BUILD.bindgen-cli.bazel"
+            }
+          },
+          "cui__thiserror-1.0.50": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/thiserror/1.0.50/download"
+              ],
+              "strip_prefix": "thiserror-1.0.50",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.thiserror-1.0.50.bazel"
+            }
+          },
+          "rules_rust_proto__mio-uds-0.6.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "afcb699eb26d4332647cc848492bbc15eafb26f08d0304550d5aa1f612e066f0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/mio-uds/0.6.8/download"
+              ],
+              "strip_prefix": "mio-uds-0.6.8",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.mio-uds-0.6.8.bazel"
+            }
+          },
+          "rules_rust_proto__tokio-fs-0.1.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "297a1206e0ca6302a0eed35b700d292b275256f596e2f3fea7729d5e629b6ff4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-fs/0.1.7/download"
+              ],
+              "strip_prefix": "tokio-fs-0.1.7",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-fs-0.1.7.bazel"
+            }
+          },
+          "rules_rust_bindgen__linux-raw-sys-0.3.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/linux-raw-sys/0.3.8/download"
+              ],
+              "strip_prefix": "linux-raw-sys-0.3.8",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.linux-raw-sys-0.3.8.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__regex-automata-0.3.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/regex-automata/0.3.3/download"
+              ],
+              "strip_prefix": "regex-automata-0.3.3",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.regex-automata-0.3.3.bazel"
+            }
+          },
+          "cui__typenum-1.16.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/typenum/1.16.0/download"
+              ],
+              "strip_prefix": "typenum-1.16.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.typenum-1.16.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__rand-0.8.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rand/0.8.5/download"
+              ],
+              "strip_prefix": "rand-0.8.5",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rand-0.8.5.bazel"
+            }
+          },
+          "cui__errno-0.3.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/errno/0.3.1/download"
+              ],
+              "strip_prefix": "errno-0.3.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.errno-0.3.1.bazel"
+            }
+          },
+          "cui__num-rational-0.1.42": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num-rational/0.1.42/download"
+              ],
+              "strip_prefix": "num-rational-0.1.42",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-rational-0.1.42.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__difflib-0.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/difflib/0.4.0/download"
+              ],
+              "strip_prefix": "difflib-0.4.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.difflib-0.4.0.bazel"
+            }
+          },
+          "cui__sha2-0.10.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/sha2/0.10.8/download"
+              ],
+              "strip_prefix": "sha2-0.10.8",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.sha2-0.10.8.bazel"
+            }
+          },
+          "cui__clru-0.6.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b8191fa7302e03607ff0e237d4246cc043ff5b3cb9409d995172ba3bea16b807",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clru/0.6.1/download"
+              ],
+              "strip_prefix": "clru-0.6.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.clru-0.6.1.bazel"
+            }
+          },
+          "cui__rand-0.4.6": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rand/0.4.6/download"
+              ],
+              "strip_prefix": "rand-0.4.6",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rand-0.4.6.bazel"
+            }
+          },
+          "rrra__io-lifetimes-1.0.11": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/io-lifetimes/1.0.11/download"
+              ],
+              "strip_prefix": "io-lifetimes-1.0.11",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.io-lifetimes-1.0.11.bazel"
+            }
+          },
+          "cui__phf_shared-0.11.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/phf_shared/0.11.2/download"
+              ],
+              "strip_prefix": "phf_shared-0.11.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.phf_shared-0.11.2.bazel"
+            }
+          },
+          "rrra__bitflags-1.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bitflags/1.3.2/download"
+              ],
+              "strip_prefix": "bitflags-1.3.2",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
+            }
+          },
+          "rules_rust_prost__redox_syscall-0.3.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/redox_syscall/0.3.5/download"
+              ],
+              "strip_prefix": "redox_syscall-0.3.5",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.redox_syscall-0.3.5.bazel"
+            }
+          },
+          "cui__gix-packetline-blocking-0.16.6": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7d8395f7501c84d6a1fe902035fdfd8cd86d89e2dd6be0200ec1a72fd3c92d39",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-packetline-blocking/0.16.6/download"
+              ],
+              "strip_prefix": "gix-packetline-blocking-0.16.6",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-packetline-blocking-0.16.6.bazel"
+            }
+          },
+          "rules_rust_proto__fnv-1.0.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/fnv/1.0.7/download"
+              ],
+              "strip_prefix": "fnv-1.0.7",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.fnv-1.0.7.bazel"
+            }
+          },
+          "cui__windows_aarch64_gnullvm-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_aarch64_gnullvm/0.48.0/download"
+              ],
+              "strip_prefix": "windows_aarch64_gnullvm-0.48.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_aarch64_gnullvm-0.48.0.bazel"
+            }
+          },
+          "rules_rust_prost__tracing-core-0.1.31": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tracing-core/0.1.31/download"
+              ],
+              "strip_prefix": "tracing-core-0.1.31",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tracing-core-0.1.31.bazel"
+            }
+          },
+          "rrra__env_logger-0.10.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/env_logger/0.10.0/download"
+              ],
+              "strip_prefix": "env_logger-0.10.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.env_logger-0.10.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__aho-corasick-1.0.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/aho-corasick/1.0.2/download"
+              ],
+              "strip_prefix": "aho-corasick-1.0.2",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.aho-corasick-1.0.2.bazel"
+            }
+          },
+          "cui__time-0.3.30": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/time/0.3.30/download"
+              ],
+              "strip_prefix": "time-0.3.30",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.time-0.3.30.bazel"
+            }
+          },
+          "rules_rust_proto__grpc-0.6.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2aaf1d741fe6f3413f1f9f71b99f5e4e26776d563475a8a53ce53a73a8534c1d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/grpc/0.6.2/download"
+              ],
+              "strip_prefix": "grpc-0.6.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.grpc-0.6.2.bazel"
+            }
+          },
+          "rules_rust_bindgen__unicode-ident-1.0.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicode-ident/1.0.9/download"
+              ],
+              "strip_prefix": "unicode-ident-1.0.9",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.unicode-ident-1.0.9.bazel"
+            }
+          },
+          "rules_rust_prost__log-0.4.19": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/log/0.4.19/download"
+              ],
+              "strip_prefix": "log-0.4.19",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.log-0.4.19.bazel"
+            }
+          },
+          "cui__ucd-trie-0.1.6": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/ucd-trie/0.1.6/download"
+              ],
+              "strip_prefix": "ucd-trie-0.1.6",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.ucd-trie-0.1.6.bazel"
+            }
+          },
+          "cui__gix-pack-0.43.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7536203a45b31e1bc5694bbf90ba8da1b736c77040dd6a520db369f371eb1ab3",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-pack/0.43.0/download"
+              ],
+              "strip_prefix": "gix-pack-0.43.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-pack-0.43.0.bazel"
+            }
+          },
+          "rules_rust_prost__prettyplease-0.1.25": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/prettyplease/0.1.25/download"
+              ],
+              "strip_prefix": "prettyplease-0.1.25",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.prettyplease-0.1.25.bazel"
+            }
+          },
+          "cui__toml-0.7.6": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/toml/0.7.6/download"
+              ],
+              "strip_prefix": "toml-0.7.6",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.toml-0.7.6.bazel"
+            }
+          },
+          "rules_rust_prost__tempfile-3.6.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tempfile/3.6.0/download"
+              ],
+              "strip_prefix": "tempfile-3.6.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tempfile-3.6.0.bazel"
+            }
+          },
+          "rules_rust_prost__tokio-stream-0.1.14": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-stream/0.1.14/download"
+              ],
+              "strip_prefix": "tokio-stream-0.1.14",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tokio-stream-0.1.14.bazel"
+            }
+          },
+          "cui__unic-ucd-segment-0.9.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2079c122a62205b421f499da10f3ee0f7697f012f55b675e002483c73ea34700",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unic-ucd-segment/0.9.0/download"
+              ],
+              "strip_prefix": "unic-ucd-segment-0.9.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-ucd-segment-0.9.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__android-tzdata-0.1.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/android-tzdata/0.1.1/download"
+              ],
+              "strip_prefix": "android-tzdata-0.1.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.android-tzdata-0.1.1.bazel"
+            }
+          },
+          "generated_inputs_in_external_repo": {
+            "bzlFile": "@@rules_rust~//test/generated_inputs:external_repo.bzl",
+            "ruleClassName": "_generated_inputs_in_external_repo",
+            "attributes": {}
+          },
+          "cui__gix-submodule-0.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "dd0150e82e9282d3f2ab2dd57a22f9f6c3447b9d9856e5321ac92d38e3e0e2b7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-submodule/0.4.0/download"
+              ],
+              "strip_prefix": "gix-submodule-0.4.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-submodule-0.4.0.bazel"
+            }
+          },
+          "cui__serde_spanned-0.6.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/serde_spanned/0.6.5/download"
+              ],
+              "strip_prefix": "serde_spanned-0.6.5",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.serde_spanned-0.6.5.bazel"
+            }
+          },
+          "rules_rust_proto__kernel32-sys-0.2.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/kernel32-sys/0.2.2/download"
+              ],
+              "strip_prefix": "kernel32-sys-0.2.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.kernel32-sys-0.2.2.bazel"
+            }
+          },
+          "rules_rust_prost__mime-0.3.17": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/mime/0.3.17/download"
+              ],
+              "strip_prefix": "mime-0.3.17",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.mime-0.3.17.bazel"
+            }
+          },
+          "cui__gix-quote-0.4.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "475c86a97dd0127ba4465fbb239abac9ea10e68301470c9791a6dd5351cdc905",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-quote/0.4.7/download"
+              ],
+              "strip_prefix": "gix-quote-0.4.7",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-quote-0.4.7.bazel"
+            }
+          },
+          "rrra__linux-raw-sys-0.3.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/linux-raw-sys/0.3.8/download"
+              ],
+              "strip_prefix": "linux-raw-sys-0.3.8",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.linux-raw-sys-0.3.8.bazel"
+            }
+          },
+          "cui__memmap2-0.7.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f49388d20533534cd19360ad3d6a7dadc885944aa802ba3995040c5ec11288c6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/memmap2/0.7.1/download"
+              ],
+              "strip_prefix": "memmap2-0.7.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.memmap2-0.7.1.bazel"
+            }
+          },
+          "rules_rust_proto__tokio-reactor-0.1.12": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-reactor/0.1.12/download"
+              ],
+              "strip_prefix": "tokio-reactor-0.1.12",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-reactor-0.1.12.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__equivalent-1.0.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/equivalent/1.0.1/download"
+              ],
+              "strip_prefix": "equivalent-1.0.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.equivalent-1.0.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__fallible-iterator-0.2.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/fallible-iterator/0.2.0/download"
+              ],
+              "strip_prefix": "fallible-iterator-0.2.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.fallible-iterator-0.2.0.bazel"
+            }
+          },
+          "cui__pest_derive-2.7.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "aef623c9bbfa0eedf5a0efba11a5ee83209c326653ca31ff019bec3a95bfff2b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/pest_derive/2.7.0/download"
+              ],
+              "strip_prefix": "pest_derive-2.7.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.pest_derive-2.7.0.bazel"
+            }
+          },
+          "rules_rust_prost__once_cell-1.18.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/once_cell/1.18.0/download"
+              ],
+              "strip_prefix": "once_cell-1.18.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.once_cell-1.18.0.bazel"
+            }
+          },
+          "rules_rust_proto__fuchsia-zircon-0.3.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/fuchsia-zircon/0.3.3/download"
+              ],
+              "strip_prefix": "fuchsia-zircon-0.3.3",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.fuchsia-zircon-0.3.3.bazel"
+            }
+          },
+          "cui__hermit-abi-0.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/hermit-abi/0.3.2/download"
+              ],
+              "strip_prefix": "hermit-abi-0.3.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.hermit-abi-0.3.2.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__regex-syntax-0.7.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/regex-syntax/0.7.4/download"
+              ],
+              "strip_prefix": "regex-syntax-0.7.4",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.regex-syntax-0.7.4.bazel"
+            }
+          },
+          "rules_rust_bindgen__errno-dragonfly-0.1.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/errno-dragonfly/0.1.2/download"
+              ],
+              "strip_prefix": "errno-dragonfly-0.1.2",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.errno-dragonfly-0.1.2.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__miniz_oxide-0.7.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/miniz_oxide/0.7.1/download"
+              ],
+              "strip_prefix": "miniz_oxide-0.7.1",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.miniz_oxide-0.7.1.bazel"
+            }
+          },
+          "rules_rust_bindgen__windows_x86_64_gnullvm-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_gnullvm/0.48.0/download"
+              ],
+              "strip_prefix": "windows_x86_64_gnullvm-0.48.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows_x86_64_gnullvm-0.48.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__syn-2.0.18": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/syn/2.0.18/download"
+              ],
+              "strip_prefix": "syn-2.0.18",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.syn-2.0.18.bazel"
+            }
+          },
+          "rules_rust_proto__tokio-io-0.1.13": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-io/0.1.13/download"
+              ],
+              "strip_prefix": "tokio-io-0.1.13",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-io-0.1.13.bazel"
+            }
+          },
+          "cui__gix-utils-0.1.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b85d89dc728613e26e0ed952a19583744e7f5240fcd4aa30d6c824ffd8b52f0f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-utils/0.1.5/download"
+              ],
+              "strip_prefix": "gix-utils-0.1.5",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-utils-0.1.5.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__unicase-2.6.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicase/2.6.0/download"
+              ],
+              "strip_prefix": "unicase-2.6.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicase-2.6.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__cc-1.0.79": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cc/1.0.79/download"
+              ],
+              "strip_prefix": "cc-1.0.79",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.cc-1.0.79.bazel"
+            }
+          },
+          "rrra__unicode-ident-1.0.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicode-ident/1.0.10/download"
+              ],
+              "strip_prefix": "unicode-ident-1.0.10",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.unicode-ident-1.0.10.bazel"
+            }
+          },
+          "rules_rust_proto__crossbeam-epoch-0.8.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/crossbeam-epoch/0.8.2/download"
+              ],
+              "strip_prefix": "crossbeam-epoch-0.8.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.crossbeam-epoch-0.8.2.bazel"
+            }
+          },
+          "cui__clap_lex-0.5.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/clap_lex/0.5.0/download"
+              ],
+              "strip_prefix": "clap_lex-0.5.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.clap_lex-0.5.0.bazel"
+            }
+          },
+          "cui__indexmap-2.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/indexmap/2.1.0/download"
+              ],
+              "strip_prefix": "indexmap-2.1.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.indexmap-2.1.0.bazel"
+            }
+          },
+          "cui__hex-0.4.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/hex/0.4.3/download"
+              ],
+              "strip_prefix": "hex-0.4.3",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.hex-0.4.3.bazel"
+            }
+          },
+          "rules_rust_prost__quote-1.0.28": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/quote/1.0.28/download"
+              ],
+              "strip_prefix": "quote-1.0.28",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.quote-1.0.28.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__windows-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows/0.48.0/download"
+              ],
+              "strip_prefix": "windows-0.48.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows-0.48.0.bazel"
+            }
+          },
+          "rules_rust_proto__bitflags-1.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bitflags/1.3.2/download"
+              ],
+              "strip_prefix": "bitflags-1.3.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__unicode-normalization-0.1.22": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicode-normalization/0.1.22/download"
+              ],
+              "strip_prefix": "unicode-normalization-0.1.22",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicode-normalization-0.1.22.bazel"
+            }
+          },
+          "cargo_bazel.buildifier-linux-arm64": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_file",
+            "attributes": {
+              "urls": [
+                "https://github.com/bazelbuild/buildtools/releases/download/5.0.1/buildifier-linux-arm64"
+              ],
+              "sha256": "c657c628fca72b7e0446f1a542231722a10ba4321597bd6f6249a5da6060b6ff",
+              "downloaded_file_path": "buildifier.exe",
+              "executable": true
+            }
+          },
+          "rules_rust_wasm_bindgen__anyhow-1.0.71": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anyhow/1.0.71/download"
+              ],
+              "strip_prefix": "anyhow-1.0.71",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.anyhow-1.0.71.bazel"
+            }
+          },
+          "rules_rust_bindgen__memchr-2.5.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/memchr/2.5.0/download"
+              ],
+              "strip_prefix": "memchr-2.5.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.memchr-2.5.0.bazel"
+            }
+          },
+          "rules_rust_prost__parking_lot_core-0.9.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/parking_lot_core/0.9.8/download"
+              ],
+              "strip_prefix": "parking_lot_core-0.9.8",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.parking_lot_core-0.9.8.bazel"
+            }
+          },
+          "rules_rust_proto__bytes-0.4.12": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bytes/0.4.12/download"
+              ],
+              "strip_prefix": "bytes-0.4.12",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.bytes-0.4.12.bazel"
+            }
+          },
+          "cui__iana-time-zone-0.1.57": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/iana-time-zone/0.1.57/download"
+              ],
+              "strip_prefix": "iana-time-zone-0.1.57",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.iana-time-zone-0.1.57.bazel"
+            }
+          },
+          "cui__toml_edit-0.19.13": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5f8751d9c1b03c6500c387e96f81f815a4f8e72d142d2d4a9ffa6fedd51ddee7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/toml_edit/0.19.13/download"
+              ],
+              "strip_prefix": "toml_edit-0.19.13",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.toml_edit-0.19.13.bazel"
+            }
+          },
+          "rules_rust_prost__matchit-0.7.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b87248edafb776e59e6ee64a79086f65890d3510f2c656c000bf2a7e8a0aea40",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/matchit/0.7.0/download"
+              ],
+              "strip_prefix": "matchit-0.7.0",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.matchit-0.7.0.bazel"
+            }
+          },
+          "cui__gix-chunk-0.4.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5b42ea64420f7994000130328f3c7a2038f639120518870436d31b8bde704493",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-chunk/0.4.4/download"
+              ],
+              "strip_prefix": "gix-chunk-0.4.4",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-chunk-0.4.4.bazel"
+            }
+          },
+          "rules_rust_prost__sync_wrapper-0.1.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/sync_wrapper/0.1.2/download"
+              ],
+              "strip_prefix": "sync_wrapper-0.1.2",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.sync_wrapper-0.1.2.bazel"
+            }
+          },
+          "cui__idna-0.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/idna/0.4.0/download"
+              ],
+              "strip_prefix": "idna-0.4.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.idna-0.4.0.bazel"
+            }
+          },
+          "cui__wasm-bindgen-macro-support-0.2.87": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/wasm-bindgen-macro-support/0.2.87/download"
+              ],
+              "strip_prefix": "wasm-bindgen-macro-support-0.2.87",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.wasm-bindgen-macro-support-0.2.87.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__errno-dragonfly-0.1.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/errno-dragonfly/0.1.2/download"
+              ],
+              "strip_prefix": "errno-dragonfly-0.1.2",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.errno-dragonfly-0.1.2.bazel"
+            }
+          },
+          "rules_rust_prost__hyper-timeout-0.4.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/hyper-timeout/0.4.1/download"
+              ],
+              "strip_prefix": "hyper-timeout-0.4.1",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.hyper-timeout-0.4.1.bazel"
+            }
+          },
+          "rules_rust_bindgen__rustc-hash-1.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rustc-hash/1.1.0/download"
+              ],
+              "strip_prefix": "rustc-hash-1.1.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.rustc-hash-1.1.0.bazel"
+            }
+          },
+          "rules_rust_prost__http-0.2.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/http/0.2.9/download"
+              ],
+              "strip_prefix": "http-0.2.9",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.http-0.2.9.bazel"
+            }
+          },
+          "cui__crossbeam-epoch-0.9.15": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/crossbeam-epoch/0.9.15/download"
+              ],
+              "strip_prefix": "crossbeam-epoch-0.9.15",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crossbeam-epoch-0.9.15.bazel"
+            }
+          },
+          "cui__gix-config-value-0.14.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ea7505b97f4d8e7933e29735a568ba2f86d8de466669d9f0e8321384f9972f47",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-config-value/0.14.0/download"
+              ],
+              "strip_prefix": "gix-config-value-0.14.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-config-value-0.14.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__chrono-0.4.26": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/chrono/0.4.26/download"
+              ],
+              "strip_prefix": "chrono-0.4.26",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.chrono-0.4.26.bazel"
+            }
+          },
+          "cui__same-file-1.0.6": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/same-file/1.0.6/download"
+              ],
+              "strip_prefix": "same-file-1.0.6",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.same-file-1.0.6.bazel"
+            }
+          },
+          "cui__linux-raw-sys-0.3.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/linux-raw-sys/0.3.8/download"
+              ],
+              "strip_prefix": "linux-raw-sys-0.3.8",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.linux-raw-sys-0.3.8.bazel"
+            }
+          },
+          "rules_rust_bindgen__termcolor-1.2.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/termcolor/1.2.0/download"
+              ],
+              "strip_prefix": "termcolor-1.2.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.termcolor-1.2.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__rand_core-0.6.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rand_core/0.6.4/download"
+              ],
+              "strip_prefix": "rand_core-0.6.4",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rand_core-0.6.4.bazel"
+            }
+          },
+          "cui__crossbeam-channel-0.5.8": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/crossbeam-channel/0.5.8/download"
+              ],
+              "strip_prefix": "crossbeam-channel-0.5.8",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crossbeam-channel-0.5.8.bazel"
+            }
+          },
+          "cui__cc-1.0.79": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cc/1.0.79/download"
+              ],
+              "strip_prefix": "cc-1.0.79",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cc-1.0.79.bazel"
+            }
+          },
+          "rules_rust_prost__rand-0.8.5": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rand/0.8.5/download"
+              ],
+              "strip_prefix": "rand-0.8.5",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.rand-0.8.5.bazel"
+            }
+          },
+          "cui__gix-validate-0.8.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e05cab2b03a45b866156e052aa38619f4ece4adcb2f79978bfc249bc3b21b8c5",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-validate/0.8.0/download"
+              ],
+              "strip_prefix": "gix-validate-0.8.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-validate-0.8.0.bazel"
+            }
+          },
+          "rules_rust_prost__anyhow-1.0.71": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/anyhow/1.0.71/download"
+              ],
+              "strip_prefix": "anyhow-1.0.71",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.anyhow-1.0.71.bazel"
+            }
+          },
+          "cui__is-terminal-0.4.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/is-terminal/0.4.7/download"
+              ],
+              "strip_prefix": "is-terminal-0.4.7",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.is-terminal-0.4.7.bazel"
+            }
+          },
+          "cui__unicode-width-0.1.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unicode-width/0.1.10/download"
+              ],
+              "strip_prefix": "unicode-width-0.1.10",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unicode-width-0.1.10.bazel"
+            }
+          },
+          "rrra__humantime-2.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/humantime/2.1.0/download"
+              ],
+              "strip_prefix": "humantime-2.1.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.humantime-2.1.0.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__libc-0.2.150": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/libc/0.2.150/download"
+              ],
+              "strip_prefix": "libc-0.2.150",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.libc-0.2.150.bazel"
+            }
+          },
+          "rules_rust_bindgen__env_logger-0.10.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/env_logger/0.10.0/download"
+              ],
+              "strip_prefix": "env_logger-0.10.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.env_logger-0.10.0.bazel"
+            }
+          },
+          "cui__toml-0.8.10": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/toml/0.8.10/download"
+              ],
+              "strip_prefix": "toml-0.8.10",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.toml-0.8.10.bazel"
+            }
+          },
+          "rules_rust_prost__tracing-attributes-0.1.26": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tracing-attributes/0.1.26/download"
+              ],
+              "strip_prefix": "tracing-attributes-0.1.26",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tracing-attributes-0.1.26.bazel"
+            }
+          },
+          "rules_rust_prost__instant-0.1.12": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/instant/0.1.12/download"
+              ],
+              "strip_prefix": "instant-0.1.12",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.instant-0.1.12.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__indexmap-2.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/indexmap/2.0.0/download"
+              ],
+              "strip_prefix": "indexmap-2.0.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.indexmap-2.0.0.bazel"
+            }
+          },
+          "cui__windows_i686_gnu-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_i686_gnu/0.48.0/download"
+              ],
+              "strip_prefix": "windows_i686_gnu-0.48.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_i686_gnu-0.48.0.bazel"
+            }
+          },
+          "rrra__proc-macro2-1.0.64": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "78803b62cbf1f46fde80d7c0e803111524b9877184cfe7c3033659490ac7a7da",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/proc-macro2/1.0.64/download"
+              ],
+              "strip_prefix": "proc-macro2-1.0.64",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.proc-macro2-1.0.64.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__predicates-tree-1.0.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/predicates-tree/1.0.9/download"
+              ],
+              "strip_prefix": "predicates-tree-1.0.9",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.predicates-tree-1.0.9.bazel"
+            }
+          },
+          "rrra__errno-0.3.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/errno/0.3.1/download"
+              ],
+              "strip_prefix": "errno-0.3.1",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.errno-0.3.1.bazel"
+            }
+          },
+          "cui__num_threads-0.1.6": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/num_threads/0.1.6/download"
+              ],
+              "strip_prefix": "num_threads-0.1.6",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num_threads-0.1.6.bazel"
+            }
+          },
+          "cui__arc-swap-1.6.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/arc-swap/1.6.0/download"
+              ],
+              "strip_prefix": "arc-swap-1.6.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.arc-swap-1.6.0.bazel"
+            }
+          },
+          "rules_rust_proto__tokio-uds-0.2.7": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ab57a4ac4111c8c9dbcf70779f6fc8bc35ae4b2454809febac840ad19bd7e4e0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-uds/0.2.7/download"
+              ],
+              "strip_prefix": "tokio-uds-0.2.7",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-uds-0.2.7.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__webpki-roots-0.25.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/webpki-roots/0.25.2/download"
+              ],
+              "strip_prefix": "webpki-roots-0.25.2",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.webpki-roots-0.25.2.bazel"
+            }
+          },
+          "cui__gix-features-0.35.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "9b9ff423ae4983f762659040d13dd7a5defbd54b6a04ac3cc7347741cec828cd",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-features/0.35.0/download"
+              ],
+              "strip_prefix": "gix-features-0.35.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-features-0.35.0.bazel"
+            }
+          },
+          "cui__lock_api-0.4.11": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/lock_api/0.4.11/download"
+              ],
+              "strip_prefix": "lock_api-0.4.11",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.lock_api-0.4.11.bazel"
+            }
+          },
+          "cui__android-tzdata-0.1.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/android-tzdata/0.1.1/download"
+              ],
+              "strip_prefix": "android-tzdata-0.1.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.android-tzdata-0.1.1.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__winapi-i686-pc-windows-gnu-0.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
+              ],
+              "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
+            }
+          },
+          "rules_rust_prost__futures-task-0.3.28": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/futures-task/0.3.28/download"
+              ],
+              "strip_prefix": "futures-task-0.3.28",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.futures-task-0.3.28.bazel"
+            }
+          },
+          "cui__serde-1.0.190": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/serde/1.0.190/download"
+              ],
+              "strip_prefix": "serde-1.0.190",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.serde-1.0.190.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__ascii-1.1.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/ascii/1.1.0/download"
+              ],
+              "strip_prefix": "ascii-1.1.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.ascii-1.1.0.bazel"
+            }
+          },
+          "rules_rust_prost__prost-types-0.11.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/prost-types/0.11.9/download"
+              ],
+              "strip_prefix": "prost-types-0.11.9",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.prost-types-0.11.9.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__bstr-0.2.17": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bstr/0.2.17/download"
+              ],
+              "strip_prefix": "bstr-0.2.17",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.bstr-0.2.17.bazel"
+            }
+          },
+          "rules_rust_proto__rustc_version-0.2.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/rustc_version/0.2.3/download"
+              ],
+              "strip_prefix": "rustc_version-0.2.3",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.rustc_version-0.2.3.bazel"
+            }
+          },
+          "cui__aho-corasick-1.0.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/aho-corasick/1.0.2/download"
+              ],
+              "strip_prefix": "aho-corasick-1.0.2",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.aho-corasick-1.0.2.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__tinyvec-1.6.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tinyvec/1.6.0/download"
+              ],
+              "strip_prefix": "tinyvec-1.6.0",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.tinyvec-1.6.0.bazel"
+            }
+          },
+          "rules_rust_bindgen__windows_x86_64_msvc-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_x86_64_msvc/0.48.0/download"
+              ],
+              "strip_prefix": "windows_x86_64_msvc-0.48.0",
+              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows_x86_64_msvc-0.48.0.bazel"
+            }
+          },
+          "rules_rust_proto__winapi-x86_64-pc-windows-gnu-0.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
+              ],
+              "strip_prefix": "winapi-x86_64-pc-windows-gnu-0.4.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel"
+            }
+          },
+          "cui__winnow-0.5.18": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "176b6138793677221d420fd2f0aeeced263f197688b36484660da767bca2fa32",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winnow/0.5.18/download"
+              ],
+              "strip_prefix": "winnow-0.5.18",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.winnow-0.5.18.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__crossbeam-utils-0.8.16": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/crossbeam-utils/0.8.16/download"
+              ],
+              "strip_prefix": "crossbeam-utils-0.8.16",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.crossbeam-utils-0.8.16.bazel"
+            }
+          },
+          "cui__memchr-2.6.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/memchr/2.6.4/download"
+              ],
+              "strip_prefix": "memchr-2.6.4",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.memchr-2.6.4.bazel"
+            }
+          },
+          "rrra__serde_derive-1.0.171": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "389894603bd18c46fa56231694f8d827779c0951a667087194cf9de94ed24682",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/serde_derive/1.0.171/download"
+              ],
+              "strip_prefix": "serde_derive-1.0.171",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.serde_derive-1.0.171.bazel"
+            }
+          },
+          "cui__bitflags-2.4.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bitflags/2.4.1/download"
+              ],
+              "strip_prefix": "bitflags-2.4.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.bitflags-2.4.1.bazel"
+            }
+          },
+          "rrra__windows_aarch64_gnullvm-0.48.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/windows_aarch64_gnullvm/0.48.0/download"
+              ],
+              "strip_prefix": "windows_aarch64_gnullvm-0.48.0",
+              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_aarch64_gnullvm-0.48.0.bazel"
+            }
+          },
+          "rules_rust_prost__pin-project-lite-0.2.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/pin-project-lite/0.2.9/download"
+              ],
+              "strip_prefix": "pin-project-lite-0.2.9",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.pin-project-lite-0.2.9.bazel"
+            }
+          },
+          "rules_rust_proto__void-1.0.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/void/1.0.2/download"
+              ],
+              "strip_prefix": "void-1.0.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.void-1.0.2.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__wasm-bindgen-cli-support-0.2.91": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "806a045c4ec4ef7c3ad86dc27bcb641b84d9eeb3846200f56d7ab0885241d654",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/wasm-bindgen-cli-support/0.2.91/download"
+              ],
+              "strip_prefix": "wasm-bindgen-cli-support-0.2.91",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-cli-support-0.2.91.bazel"
+            }
+          },
+          "rules_rust_prost__regex-syntax-0.7.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/regex-syntax/0.7.2/download"
+              ],
+              "strip_prefix": "regex-syntax-0.7.2",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.regex-syntax-0.7.2.bazel"
+            }
+          },
+          "cui__pest_generator-2.7.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b3e8cba4ec22bada7fc55ffe51e2deb6a0e0db2d0b7ab0b103acc80d2510c190",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/pest_generator/2.7.0/download"
+              ],
+              "strip_prefix": "pest_generator-2.7.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.pest_generator-2.7.0.bazel"
+            }
+          },
+          "cui__chrono-tz-0.8.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e23185c0e21df6ed832a12e2bda87c7d1def6842881fb634a8511ced741b0d76",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/chrono-tz/0.8.4/download"
+              ],
+              "strip_prefix": "chrono-tz-0.8.4",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.chrono-tz-0.8.4.bazel"
+            }
+          },
+          "cross_x86_64-pc-windows-msvc": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "urls": [
+                "https://github.com/rust-embedded/cross/releases/download/v0.2.1/cross-v0.2.1-x86_64-pc-windows-msvc.tar.gz"
+              ],
+              "sha256": "3af59ff5a2229f92b54df937c50a9a88c96dffc8ac3dde520a38fdf046d656c4",
+              "build_file_content": "exports_files(glob([\"**\"]), visibility = [\"//visibility:public\"])"
+            }
+          },
+          "rules_rust_prost__heck": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8",
+              "type": "tar.gz",
+              "urls": [
+                "https://crates.io/api/v1/crates/heck/0.4.1/download"
+              ],
+              "strip_prefix": "heck-0.4.1",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.heck-0.4.1.bazel"
+            }
+          },
+          "rules_rust_prost__prost-build-0.11.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/prost-build/0.11.9/download"
+              ],
+              "strip_prefix": "prost-build-0.11.9",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.prost-build-0.11.9.bazel"
+            }
+          },
+          "cui__gix-discover-0.25.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "69507643d75a0ea9a402fcf73ced517d2b95cc95385904ac09d03e0b952fde33",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/gix-discover/0.25.0/download"
+              ],
+              "strip_prefix": "gix-discover-0.25.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-discover-0.25.0.bazel"
+            }
+          },
+          "rules_rust_proto__libc-0.2.139": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/libc/0.2.139/download"
+              ],
+              "strip_prefix": "libc-0.2.139",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.libc-0.2.139.bazel"
+            }
+          },
+          "cui__unic-common-0.9.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/unic-common/0.9.0/download"
+              ],
+              "strip_prefix": "unic-common-0.9.0",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-common-0.9.0.bazel"
+            }
+          },
+          "rules_rust_prost__tower-0.4.13": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tower/0.4.13/download"
+              ],
+              "strip_prefix": "tower-0.4.13",
+              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tower-0.4.13.bazel"
+            }
+          },
+          "rules_rust_wasm_bindgen__bitflags-1.3.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/bitflags/1.3.2/download"
+              ],
+              "strip_prefix": "bitflags-1.3.2",
+              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
+            }
+          },
+          "cui__utf8parse-0.2.1": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/utf8parse/0.2.1/download"
+              ],
+              "strip_prefix": "utf8parse-0.2.1",
+              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.utf8parse-0.2.1.bazel"
+            }
+          },
           "rules_rust_tinyjson": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -3797,7 +9159,7 @@
               "sha256": "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/bumpalo/3.13.0/download"
+                "https://static.crates.io/crates/bumpalo/3.13.0/download"
               ],
               "strip_prefix": "bumpalo-3.13.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.bumpalo-3.13.0.bazel"
@@ -3810,38 +9172,12 @@
               "sha256": "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/pin-project-lite/0.2.13/download"
+                "https://static.crates.io/crates/pin-project-lite/0.2.13/download"
               ],
               "strip_prefix": "pin-project-lite-0.2.13",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.pin-project-lite-0.2.13.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__walrus-0.20.3": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2c03529cd0c4400a2449f640d2f27cd1b48c3065226d15e26d98e4429ab0adb7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/walrus/0.20.3/download"
-              ],
-              "strip_prefix": "walrus-0.20.3",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.walrus-0.20.3.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__unicode-bidi-0.3.13": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicode-bidi/0.3.13/download"
-              ],
-              "strip_prefix": "unicode-bidi-0.3.13",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicode-bidi-0.3.13.bazel"
-            }
-          },
           "cui__generic-array-0.14.7": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -3849,7 +9185,7 @@
               "sha256": "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/generic-array/0.14.7/download"
+                "https://static.crates.io/crates/generic-array/0.14.7/download"
               ],
               "strip_prefix": "generic-array-0.14.7",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.generic-array-0.14.7.bazel"
@@ -3866,30 +9202,17 @@
               "build_file_content": "exports_files(glob([\"**\"]), visibility = [\"//visibility:public\"])"
             }
           },
-          "rules_rust_wasm_bindgen__windows_x86_64_gnu-0.48.0": {
+          "rules_rust_proto__tokio-codec-0.1.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1",
+              "sha256": "25b2998660ba0e70d18684de5d06b70b70a3a747469af9dea7618cc59e75976b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnu/0.48.0/download"
+                "https://static.crates.io/crates/tokio-codec/0.1.2/download"
               ],
-              "strip_prefix": "windows_x86_64_gnu-0.48.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_x86_64_gnu-0.48.0.bazel"
-            }
-          },
-          "cui__rustix-0.37.23": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rustix/0.37.23/download"
-              ],
-              "strip_prefix": "rustix-0.37.23",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rustix-0.37.23.bazel"
+              "strip_prefix": "tokio-codec-0.1.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-codec-0.1.2.bazel"
             }
           },
           "rules_rust_wasm_bindgen__ureq-2.8.0": {
@@ -3899,7 +9222,7 @@
               "sha256": "f5ccd538d4a604753ebc2f17cd9946e89b77bf87f6a8e2309667c6f2e87855e3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/ureq/2.8.0/download"
+                "https://static.crates.io/crates/ureq/2.8.0/download"
               ],
               "strip_prefix": "ureq-2.8.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.ureq-2.8.0.bazel"
@@ -3912,7 +9235,7 @@
               "sha256": "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/parking_lot_core/0.9.9/download"
+                "https://static.crates.io/crates/parking_lot_core/0.9.9/download"
               ],
               "strip_prefix": "parking_lot_core-0.9.9",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.parking_lot_core-0.9.9.bazel"
@@ -3925,38 +9248,12 @@
               "sha256": "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/core-foundation-sys/0.8.4/download"
+                "https://static.crates.io/crates/core-foundation-sys/0.8.4/download"
               ],
               "strip_prefix": "core-foundation-sys-0.8.4",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.core-foundation-sys-0.8.4.bazel"
             }
           },
-          "cui__fuchsia-cprng-0.1.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/fuchsia-cprng/0.1.1/download"
-              ],
-              "strip_prefix": "fuchsia-cprng-0.1.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.fuchsia-cprng-0.1.1.bazel"
-            }
-          },
-          "cui__url-2.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/url/2.4.0/download"
-              ],
-              "strip_prefix": "url-2.4.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.url-2.4.0.bazel"
-            }
-          },
           "rrra__quote-1.0.29": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -3964,12 +9261,31 @@
               "sha256": "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/quote/1.0.29/download"
+                "https://static.crates.io/crates/quote/1.0.29/download"
               ],
               "strip_prefix": "quote-1.0.29",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.quote-1.0.29.bazel"
             }
           },
+          "rules_rust_proto__protobuf-2.8.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "patch_args": [
+                "-p1"
+              ],
+              "patches": [
+                "@@rules_rust~//proto/protobuf/3rdparty/patches:protobuf-2.8.2.patch"
+              ],
+              "sha256": "70731852eec72c56d11226c8a5f96ad5058a3dab73647ca5f7ee351e464f2571",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/protobuf/2.8.2/download"
+              ],
+              "strip_prefix": "protobuf-2.8.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.protobuf-2.8.2.bazel"
+            }
+          },
           "rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.91": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -3977,7 +9293,7 @@
               "sha256": "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-shared/0.2.91/download"
+                "https://static.crates.io/crates/wasm-bindgen-shared/0.2.91/download"
               ],
               "strip_prefix": "wasm-bindgen-shared-0.2.91",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-shared-0.2.91.bazel"
@@ -3990,7 +9306,7 @@
               "sha256": "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/httpdate/1.0.2/download"
+                "https://static.crates.io/crates/httpdate/1.0.2/download"
               ],
               "strip_prefix": "httpdate-1.0.2",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.httpdate-1.0.2.bazel"
@@ -4003,7 +9319,7 @@
               "sha256": "1e7e19616c67967374137bae83e950e9b518a9ea8a605069bd6716ada357fd6f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-object/0.37.0/download"
+                "https://static.crates.io/crates/gix-object/0.37.0/download"
               ],
               "strip_prefix": "gix-object-0.37.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-object-0.37.0.bazel"
@@ -4016,7 +9332,7 @@
               "sha256": "d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/crossbeam-queue/0.3.8/download"
+                "https://static.crates.io/crates/crossbeam-queue/0.3.8/download"
               ],
               "strip_prefix": "crossbeam-queue-0.3.8",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crossbeam-queue-0.3.8.bazel"
@@ -4029,44 +9345,12 @@
               "sha256": "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/iana-time-zone/0.1.57/download"
+                "https://static.crates.io/crates/iana-time-zone/0.1.57/download"
               ],
               "strip_prefix": "iana-time-zone-0.1.57",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.iana-time-zone-0.1.57.bazel"
             }
           },
-          "cui__ryu-1.0.14": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "fe232bdf6be8c8de797b22184ee71118d63780ea42ac85b61d1baa6d3b782ae9",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/ryu/1.0.14/download"
-              ],
-              "strip_prefix": "ryu-1.0.14",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.ryu-1.0.14.bazel"
-            }
-          },
-          "rules_rust_prost__protoc-gen-prost-0.2.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "patch_args": [
-                "-p1"
-              ],
-              "patches": [
-                "@@rules_rust~//proto/prost/private/3rdparty/patches:protoc-gen-prost.patch"
-              ],
-              "sha256": "a81e3a9bb429fec47008b209896f0b9ab99fbcbc1c3733b385d43fbfd64dd2ca",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/protoc-gen-prost/0.2.2/download"
-              ],
-              "strip_prefix": "protoc-gen-prost-0.2.2",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.protoc-gen-prost-0.2.2.bazel"
-            }
-          },
           "rules_rust_bindgen__winapi-x86_64-pc-windows-gnu-0.4.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4074,7 +9358,7 @@
               "sha256": "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
+                "https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
               ],
               "strip_prefix": "winapi-x86_64-pc-windows-gnu-0.4.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel"
@@ -4087,90 +9371,12 @@
               "sha256": "850878694b7933ca4c9569d30a34b55031b9b139ee1fc7b94a527c4ef960d690",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/deunicode/0.4.3/download"
+                "https://static.crates.io/crates/deunicode/0.4.3/download"
               ],
               "strip_prefix": "deunicode-0.4.3",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.deunicode-0.4.3.bazel"
             }
           },
-          "rules_rust_bindgen__cfg-if-1.0.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/cfg-if/1.0.0/download"
-              ],
-              "strip_prefix": "cfg-if-1.0.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.cfg-if-1.0.0.bazel"
-            }
-          },
-          "rules_rust_prost__protoc-gen-tonic-0.2.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "725a07a704f9cf7a956b302c21d81b5516ed5ee6cfbbf827edb69beeaae6cc30",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/protoc-gen-tonic/0.2.2/download"
-              ],
-              "strip_prefix": "protoc-gen-tonic-0.2.2",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.protoc-gen-tonic-0.2.2.bazel"
-            }
-          },
-          "cui__iana-time-zone-haiku-0.1.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/iana-time-zone-haiku/0.1.2/download"
-              ],
-              "strip_prefix": "iana-time-zone-haiku-0.1.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.iana-time-zone-haiku-0.1.2.bazel"
-            }
-          },
-          "cui__windows_x86_64_gnullvm-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.48.0/download"
-              ],
-              "strip_prefix": "windows_x86_64_gnullvm-0.48.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_x86_64_gnullvm-0.48.0.bazel"
-            }
-          },
-          "rules_rust_prost__percent-encoding-2.3.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/percent-encoding/2.3.0/download"
-              ],
-              "strip_prefix": "percent-encoding-2.3.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.percent-encoding-2.3.0.bazel"
-            }
-          },
-          "cui__fastrand-2.0.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/fastrand/2.0.1/download"
-              ],
-              "strip_prefix": "fastrand-2.0.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.fastrand-2.0.1.bazel"
-            }
-          },
           "cui__wasm-bindgen-macro-0.2.87": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4178,25 +9384,12 @@
               "sha256": "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-macro/0.2.87/download"
+                "https://static.crates.io/crates/wasm-bindgen-macro/0.2.87/download"
               ],
               "strip_prefix": "wasm-bindgen-macro-0.2.87",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.wasm-bindgen-macro-0.2.87.bazel"
             }
           },
-          "cui__flate2-1.0.28": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/flate2/1.0.28/download"
-              ],
-              "strip_prefix": "flate2-1.0.28",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.flate2-1.0.28.bazel"
-            }
-          },
           "rules_rust_prost__pin-utils-0.1.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4204,38 +9397,12 @@
               "sha256": "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/pin-utils/0.1.0/download"
+                "https://static.crates.io/crates/pin-utils/0.1.0/download"
               ],
               "strip_prefix": "pin-utils-0.1.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.pin-utils-0.1.0.bazel"
             }
           },
-          "rules_rust_prost__cc-1.0.79": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/cc/1.0.79/download"
-              ],
-              "strip_prefix": "cc-1.0.79",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.cc-1.0.79.bazel"
-            }
-          },
-          "rrra__winapi-0.3.9": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/winapi/0.3.9/download"
-              ],
-              "strip_prefix": "winapi-0.3.9",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.winapi-0.3.9.bazel"
-            }
-          },
           "cui__gix-hashtable-0.4.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4243,7 +9410,7 @@
               "sha256": "409268480841ad008e81c17ca5a293393fbf9f2b6c2f85b8ab9de1f0c5176a16",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-hashtable/0.4.0/download"
+                "https://static.crates.io/crates/gix-hashtable/0.4.0/download"
               ],
               "strip_prefix": "gix-hashtable-0.4.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-hashtable-0.4.0.bazel"
@@ -4256,7 +9423,7 @@
               "sha256": "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/errno/0.3.1/download"
+                "https://static.crates.io/crates/errno/0.3.1/download"
               ],
               "strip_prefix": "errno-0.3.1",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.errno-0.3.1.bazel"
@@ -4269,25 +9436,12 @@
               "sha256": "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/fnv/1.0.7/download"
+                "https://static.crates.io/crates/fnv/1.0.7/download"
               ],
               "strip_prefix": "fnv-1.0.7",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.fnv-1.0.7.bazel"
             }
           },
-          "cui__windows-targets-0.48.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows-targets/0.48.1/download"
-              ],
-              "strip_prefix": "windows-targets-0.48.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows-targets-0.48.1.bazel"
-            }
-          },
           "cui__js-sys-0.3.64": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4295,7 +9449,7 @@
               "sha256": "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/js-sys/0.3.64/download"
+                "https://static.crates.io/crates/js-sys/0.3.64/download"
               ],
               "strip_prefix": "js-sys-0.3.64",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.js-sys-0.3.64.bazel"
@@ -4308,84 +9462,6 @@
               "target_json": "@@rules_rust~//test/unit/toolchain:toolchain-test-triple.json"
             }
           },
-          "rules_rust_wasm_bindgen__ppv-lite86-0.2.17": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/ppv-lite86/0.2.17/download"
-              ],
-              "strip_prefix": "ppv-lite86-0.2.17",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.ppv-lite86-0.2.17.bazel"
-            }
-          },
-          "cui__smawk-0.3.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f67ad224767faa3c7d8b6d91985b78e70a1324408abcb1cfcc2be4c06bc06043",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/smawk/0.3.1/download"
-              ],
-              "strip_prefix": "smawk-0.3.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.smawk-0.3.1.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__heck-0.3.3": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/heck/0.3.3/download"
-              ],
-              "strip_prefix": "heck-0.3.3",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.heck-0.3.3.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__unicode-ident-1.0.10": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicode-ident/1.0.10/download"
-              ],
-              "strip_prefix": "unicode-ident-1.0.10",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicode-ident-1.0.10.bazel"
-            }
-          },
-          "cui__clap_derive-4.3.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/clap_derive/4.3.2/download"
-              ],
-              "strip_prefix": "clap_derive-4.3.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.clap_derive-4.3.2.bazel"
-            }
-          },
-          "cui__libm-0.2.7": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/libm/0.2.7/download"
-              ],
-              "strip_prefix": "libm-0.2.7",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.libm-0.2.7.bazel"
-            }
-          },
           "rules_rust_bindgen__once_cell-1.18.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4393,7 +9469,7 @@
               "sha256": "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/once_cell/1.18.0/download"
+                "https://static.crates.io/crates/once_cell/1.18.0/download"
               ],
               "strip_prefix": "once_cell-1.18.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.once_cell-1.18.0.bazel"
@@ -4406,23 +9482,23 @@
               "sha256": "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/prost/0.11.9/download"
+                "https://static.crates.io/crates/prost/0.11.9/download"
               ],
               "strip_prefix": "prost-0.11.9",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.prost-0.11.9.bazel"
             }
           },
-          "cui__deranged-0.3.9": {
+          "rules_rust_proto__slab-0.3.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3",
+              "sha256": "17b4fcaed89ab08ef143da37bc52adbcc04d4a69014f4c1208d6b51f0c47bc23",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/deranged/0.3.9/download"
+                "https://static.crates.io/crates/slab/0.3.0/download"
               ],
-              "strip_prefix": "deranged-0.3.9",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.deranged-0.3.9.bazel"
+              "strip_prefix": "slab-0.3.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.slab-0.3.0.bazel"
             }
           },
           "rules_rust_prost__rand_core-0.6.4": {
@@ -4432,25 +9508,12 @@
               "sha256": "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rand_core/0.6.4/download"
+                "https://static.crates.io/crates/rand_core/0.6.4/download"
               ],
               "strip_prefix": "rand_core-0.6.4",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.rand_core-0.6.4.bazel"
             }
           },
-          "cui__gix-negotiate-0.8.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "6f1697bf9911c6d1b8d709b9e6ef718cb5ea5821a1b7991520125a8134448004",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-negotiate/0.8.0/download"
-              ],
-              "strip_prefix": "gix-negotiate-0.8.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-negotiate-0.8.0.bazel"
-            }
-          },
           "rules_rust_bindgen__bitflags-1.3.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4458,7 +9521,7 @@
               "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/bitflags/1.3.2/download"
+                "https://static.crates.io/crates/bitflags/1.3.2/download"
               ],
               "strip_prefix": "bitflags-1.3.2",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
@@ -4471,7 +9534,7 @@
               "sha256": "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download"
+                "https://static.crates.io/crates/wasi/0.11.0+wasi-snapshot-preview1/download"
               ],
               "strip_prefix": "wasi-0.11.0+wasi-snapshot-preview1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel"
@@ -4484,25 +9547,12 @@
               "sha256": "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_gnu/0.48.0/download"
+                "https://static.crates.io/crates/windows_i686_gnu/0.48.0/download"
               ],
               "strip_prefix": "windows_i686_gnu-0.48.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows_i686_gnu-0.48.0.bazel"
             }
           },
-          "cui__io-lifetimes-1.0.11": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/io-lifetimes/1.0.11/download"
-              ],
-              "strip_prefix": "io-lifetimes-1.0.11",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.io-lifetimes-1.0.11.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__alloc-no-stdlib-2.0.4": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4510,7 +9560,7 @@
               "sha256": "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/alloc-no-stdlib/2.0.4/download"
+                "https://static.crates.io/crates/alloc-no-stdlib/2.0.4/download"
               ],
               "strip_prefix": "alloc-no-stdlib-2.0.4",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.alloc-no-stdlib-2.0.4.bazel"
@@ -4523,7 +9573,7 @@
               "sha256": "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/env_logger/0.8.4/download"
+                "https://static.crates.io/crates/env_logger/0.8.4/download"
               ],
               "strip_prefix": "env_logger-0.8.4",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.env_logger-0.8.4.bazel"
@@ -4536,25 +9586,12 @@
               "sha256": "74212e6bbe9a4352329b2f68ba3130c15a3f26fe88ff22dbdc6cdd58fa85e99c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/smol_str/0.2.0/download"
+                "https://static.crates.io/crates/smol_str/0.2.0/download"
               ],
               "strip_prefix": "smol_str-0.2.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.smol_str-0.2.0.bazel"
             }
           },
-          "rules_rust_prost__proc-macro2-1.0.60": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/proc-macro2/1.0.60/download"
-              ],
-              "strip_prefix": "proc-macro2-1.0.60",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.proc-macro2-1.0.60.bazel"
-            }
-          },
           "cui__memoffset-0.9.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4562,38 +9599,12 @@
               "sha256": "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/memoffset/0.9.0/download"
+                "https://static.crates.io/crates/memoffset/0.9.0/download"
               ],
               "strip_prefix": "memoffset-0.9.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.memoffset-0.9.0.bazel"
             }
           },
-          "rules_rust_bindgen__clap_complete-4.3.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7f6b5c519bab3ea61843a7923d074b04245624bb84a64a8c150f5deb014e388b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/clap_complete/4.3.1/download"
-              ],
-              "strip_prefix": "clap_complete-4.3.1",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.clap_complete-4.3.1.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__time-core-0.1.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/time-core/0.1.1/download"
-              ],
-              "strip_prefix": "time-core-0.1.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.time-core-0.1.1.bazel"
-            }
-          },
           "cui__log-0.4.19": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4601,51 +9612,12 @@
               "sha256": "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/log/0.4.19/download"
+                "https://static.crates.io/crates/log/0.4.19/download"
               ],
               "strip_prefix": "log-0.4.19",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.log-0.4.19.bazel"
             }
           },
-          "cui__num-0.1.42": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4703ad64153382334aa8db57c637364c322d3372e097840c72000dabdcf6156e",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/num/0.1.42/download"
-              ],
-              "strip_prefix": "num-0.1.42",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-0.1.42.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__tiny_http-0.12.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "389915df6413a2e74fb181895f933386023c71110878cd0825588928e64cdc82",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tiny_http/0.12.0/download"
-              ],
-              "strip_prefix": "tiny_http-0.12.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.tiny_http-0.12.0.bazel"
-            }
-          },
-          "rules_rust_bindgen__windows-sys-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows-sys/0.48.0/download"
-              ],
-              "strip_prefix": "windows-sys-0.48.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows-sys-0.48.0.bazel"
-            }
-          },
           "cui__wasm-bindgen-backend-0.2.87": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4653,7 +9625,7 @@
               "sha256": "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-backend/0.2.87/download"
+                "https://static.crates.io/crates/wasm-bindgen-backend/0.2.87/download"
               ],
               "strip_prefix": "wasm-bindgen-backend-0.2.87",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.wasm-bindgen-backend-0.2.87.bazel"
@@ -4666,7 +9638,7 @@
               "sha256": "f73935e4d55e2abf7f130186537b19e7a4abc886a0252380b59248af473a3fc9",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/pest/2.7.0/download"
+                "https://static.crates.io/crates/pest/2.7.0/download"
               ],
               "strip_prefix": "pest-2.7.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.pest-2.7.0.bazel"
@@ -4679,25 +9651,12 @@
               "sha256": "7f3f119846c823f9eafcf953a8f6ffb6ed69bf6240883261a7f13b634579a51f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/docopt/1.1.1/download"
+                "https://static.crates.io/crates/docopt/1.1.1/download"
               ],
               "strip_prefix": "docopt-1.1.1",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.docopt-1.1.1.bazel"
             }
           },
-          "rules_rust_bindgen__libc-0.2.146": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/libc/0.2.146/download"
-              ],
-              "strip_prefix": "libc-0.2.146",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.libc-0.2.146.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__rustc-demangle-0.1.23": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4705,7 +9664,7 @@
               "sha256": "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rustc-demangle/0.1.23/download"
+                "https://static.crates.io/crates/rustc-demangle/0.1.23/download"
               ],
               "strip_prefix": "rustc-demangle-0.1.23",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rustc-demangle-0.1.23.bazel"
@@ -4718,25 +9677,12 @@
               "sha256": "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rand_chacha/0.3.1/download"
+                "https://static.crates.io/crates/rand_chacha/0.3.1/download"
               ],
               "strip_prefix": "rand_chacha-0.3.1",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.rand_chacha-0.3.1.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__iana-time-zone-haiku-0.1.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/iana-time-zone-haiku/0.1.2/download"
-              ],
-              "strip_prefix": "iana-time-zone-haiku-0.1.2",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.iana-time-zone-haiku-0.1.2.bazel"
-            }
-          },
           "cui__syn-1.0.109": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4744,38 +9690,12 @@
               "sha256": "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/syn/1.0.109/download"
+                "https://static.crates.io/crates/syn/1.0.109/download"
               ],
               "strip_prefix": "syn-1.0.109",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.syn-1.0.109.bazel"
             }
           },
-          "rrra__memchr-2.5.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/memchr/2.5.0/download"
-              ],
-              "strip_prefix": "memchr-2.5.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.memchr-2.5.0.bazel"
-            }
-          },
-          "cui__getrandom-0.2.10": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/getrandom/0.2.10/download"
-              ],
-              "strip_prefix": "getrandom-0.2.10",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.getrandom-0.2.10.bazel"
-            }
-          },
           "cui__pathdiff-0.2.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4783,25 +9703,12 @@
               "sha256": "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/pathdiff/0.2.1/download"
+                "https://static.crates.io/crates/pathdiff/0.2.1/download"
               ],
               "strip_prefix": "pathdiff-0.2.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.pathdiff-0.2.1.bazel"
             }
           },
-          "rules_rust_prost__bitflags-1.3.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bitflags/1.3.2/download"
-              ],
-              "strip_prefix": "bitflags-1.3.2",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
-            }
-          },
           "cargo_bazel.buildifier-linux-amd64": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_file",
@@ -4821,25 +9728,12 @@
               "sha256": "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/either/1.8.1/download"
+                "https://static.crates.io/crates/either/1.8.1/download"
               ],
               "strip_prefix": "either-1.8.1",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.either-1.8.1.bazel"
             }
           },
-          "cui__sha1_smol-1.0.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/sha1_smol/1.0.0/download"
-              ],
-              "strip_prefix": "sha1_smol-1.0.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.sha1_smol-1.0.0.bazel"
-            }
-          },
           "rules_rust_prost__windows_aarch64_msvc-0.48.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4847,7 +9741,7 @@
               "sha256": "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_msvc/0.48.0/download"
+                "https://static.crates.io/crates/windows_aarch64_msvc/0.48.0/download"
               ],
               "strip_prefix": "windows_aarch64_msvc-0.48.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows_aarch64_msvc-0.48.0.bazel"
@@ -4860,24 +9754,12 @@
               "sha256": "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/crc32fast/1.3.2/download"
+                "https://static.crates.io/crates/crc32fast/1.3.2/download"
               ],
               "strip_prefix": "crc32fast-1.3.2",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.crc32fast-1.3.2.bazel"
             }
           },
-          "cargo_bazel.buildifier-darwin-amd64": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_file",
-            "attributes": {
-              "urls": [
-                "https://github.com/bazelbuild/buildtools/releases/download/5.0.1/buildifier-darwin-amd64"
-              ],
-              "sha256": "2cb0a54683633ef6de4e0491072e22e66ac9c6389051432b76200deeeeaf93fb",
-              "downloaded_file_path": "buildifier.exe",
-              "executable": true
-            }
-          },
           "rules_rust_wasm_bindgen__wasm-bindgen-backend-0.2.91": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4885,51 +9767,12 @@
               "sha256": "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-backend/0.2.91/download"
+                "https://static.crates.io/crates/wasm-bindgen-backend/0.2.91/download"
               ],
               "strip_prefix": "wasm-bindgen-backend-0.2.91",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-backend-0.2.91.bazel"
             }
           },
-          "cui__chrono-0.4.26": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/chrono/0.4.26/download"
-              ],
-              "strip_prefix": "chrono-0.4.26",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.chrono-0.4.26.bazel"
-            }
-          },
-          "rules_rust_bindgen__proc-macro2-1.0.60": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/proc-macro2/1.0.60/download"
-              ],
-              "strip_prefix": "proc-macro2-1.0.60",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.proc-macro2-1.0.60.bazel"
-            }
-          },
-          "rrra__windows_i686_msvc-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_msvc/0.48.0/download"
-              ],
-              "strip_prefix": "windows_i686_msvc-0.48.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_i686_msvc-0.48.0.bazel"
-            }
-          },
           "cui__encoding_rs-0.8.33": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -4937,7 +9780,7 @@
               "sha256": "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/encoding_rs/0.8.33/download"
+                "https://static.crates.io/crates/encoding_rs/0.8.33/download"
               ],
               "strip_prefix": "encoding_rs-0.8.33",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.encoding_rs-0.8.33.bazel"
@@ -4950,23 +9793,23 @@
               "sha256": "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_msvc/0.48.0/download"
+                "https://static.crates.io/crates/windows_i686_msvc/0.48.0/download"
               ],
               "strip_prefix": "windows_i686_msvc-0.48.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows_i686_msvc-0.48.0.bazel"
             }
           },
-          "cui__overload-0.1.1": {
+          "rules_rust_proto__hermit-abi-0.2.6": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39",
+              "sha256": "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/overload/0.1.1/download"
+                "https://static.crates.io/crates/hermit-abi/0.2.6/download"
               ],
-              "strip_prefix": "overload-0.1.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.overload-0.1.1.bazel"
+              "strip_prefix": "hermit-abi-0.2.6",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.hermit-abi-0.2.6.bazel"
             }
           },
           "rules_rust_prost__want-0.3.1": {
@@ -4976,64 +9819,12 @@
               "sha256": "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/want/0.3.1/download"
+                "https://static.crates.io/crates/want/0.3.1/download"
               ],
               "strip_prefix": "want-0.3.1",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.want-0.3.1.bazel"
             }
           },
-          "rules_rust_bindgen__clap_derive-4.3.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/clap_derive/4.3.2/download"
-              ],
-              "strip_prefix": "clap_derive-4.3.2",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.clap_derive-4.3.2.bazel"
-            }
-          },
-          "cui__anstream-0.3.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/anstream/0.3.2/download"
-              ],
-              "strip_prefix": "anstream-0.3.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.anstream-0.3.2.bazel"
-            }
-          },
-          "cui__bitflags-1.3.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bitflags/1.3.2/download"
-              ],
-              "strip_prefix": "bitflags-1.3.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
-            }
-          },
-          "rules_rust_prost__smallvec-1.10.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/smallvec/1.10.0/download"
-              ],
-              "strip_prefix": "smallvec-1.10.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.smallvec-1.10.0.bazel"
-            }
-          },
           "cui__gix-glob-0.13.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5041,12 +9832,25 @@
               "sha256": "a9d76e85f11251dcf751d2c5e918a14f562db5be6f727fd24775245653e9b19d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-glob/0.13.0/download"
+                "https://static.crates.io/crates/gix-glob/0.13.0/download"
               ],
               "strip_prefix": "gix-glob-0.13.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-glob-0.13.0.bazel"
             }
           },
+          "rules_rust_proto__tokio-timer-0.2.13": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-timer/0.2.13/download"
+              ],
+              "strip_prefix": "tokio-timer-0.2.13",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-timer-0.2.13.bazel"
+            }
+          },
           "cui__itoa-1.0.8": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5054,23 +9858,23 @@
               "sha256": "62b02a5381cc465bd3041d84623d0fa3b66738b52b8e2fc3bab8ad63ab032f4a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/itoa/1.0.8/download"
+                "https://static.crates.io/crates/itoa/1.0.8/download"
               ],
               "strip_prefix": "itoa-1.0.8",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.itoa-1.0.8.bazel"
             }
           },
-          "rules_rust_prost__windows_x86_64_gnu-0.48.0": {
+          "rules_rust_proto__cloudabi-0.0.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1",
+              "sha256": "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnu/0.48.0/download"
+                "https://static.crates.io/crates/cloudabi/0.0.3/download"
               ],
-              "strip_prefix": "windows_x86_64_gnu-0.48.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows_x86_64_gnu-0.48.0.bazel"
+              "strip_prefix": "cloudabi-0.0.3",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.cloudabi-0.0.3.bazel"
             }
           },
           "cui__serde_json-1.0.108": {
@@ -5080,25 +9884,12 @@
               "sha256": "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/serde_json/1.0.108/download"
+                "https://static.crates.io/crates/serde_json/1.0.108/download"
               ],
               "strip_prefix": "serde_json-1.0.108",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.serde_json-1.0.108.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__atty-0.2.14": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/atty/0.2.14/download"
-              ],
-              "strip_prefix": "atty-0.2.14",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.atty-0.2.14.bazel"
-            }
-          },
           "rules_rust_bindgen__log-0.4.19": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5106,90 +9897,12 @@
               "sha256": "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/log/0.4.19/download"
+                "https://static.crates.io/crates/log/0.4.19/download"
               ],
               "strip_prefix": "log-0.4.19",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.log-0.4.19.bazel"
             }
           },
-          "cui__walkdir-2.3.3": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/walkdir/2.3.3/download"
-              ],
-              "strip_prefix": "walkdir-2.3.3",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.walkdir-2.3.3.bazel"
-            }
-          },
-          "rrra__aho-corasick-1.0.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/aho-corasick/1.0.2/download"
-              ],
-              "strip_prefix": "aho-corasick-1.0.2",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.aho-corasick-1.0.2.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__rustls-0.21.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rustls/0.21.8/download"
-              ],
-              "strip_prefix": "rustls-0.21.8",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rustls-0.21.8.bazel"
-            }
-          },
-          "cui__gix-refspec-0.18.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "0895cb7b1e70f3c3bd4550c329e9f5caf2975f97fcd4238e05754e72208ef61e",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-refspec/0.18.0/download"
-              ],
-              "strip_prefix": "gix-refspec-0.18.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-refspec-0.18.0.bazel"
-            }
-          },
-          "cui__semver-1.0.20": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/semver/1.0.20/download"
-              ],
-              "strip_prefix": "semver-1.0.20",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.semver-1.0.20.bazel"
-            }
-          },
-          "rules_rust_bindgen__humantime-2.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/humantime/2.1.0/download"
-              ],
-              "strip_prefix": "humantime-2.1.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.humantime-2.1.0.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__termcolor-1.2.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5197,38 +9910,12 @@
               "sha256": "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/termcolor/1.2.0/download"
+                "https://static.crates.io/crates/termcolor/1.2.0/download"
               ],
               "strip_prefix": "termcolor-1.2.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.termcolor-1.2.0.bazel"
             }
           },
-          "rules_rust_bindgen__bitflags-2.4.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bitflags/2.4.1/download"
-              ],
-              "strip_prefix": "bitflags-2.4.1",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.bitflags-2.4.1.bazel"
-            }
-          },
-          "rrra__regex-syntax-0.7.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/regex-syntax/0.7.4/download"
-              ],
-              "strip_prefix": "regex-syntax-0.7.4",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.regex-syntax-0.7.4.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__hermit-abi-0.1.19": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5236,51 +9923,12 @@
               "sha256": "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hermit-abi/0.1.19/download"
+                "https://static.crates.io/crates/hermit-abi/0.1.19/download"
               ],
               "strip_prefix": "hermit-abi-0.1.19",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.hermit-abi-0.1.19.bazel"
             }
           },
-          "rules_rust_prost__autocfg-1.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/autocfg/1.1.0/download"
-              ],
-              "strip_prefix": "autocfg-1.1.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.autocfg-1.1.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__sct-0.7.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/sct/0.7.1/download"
-              ],
-              "strip_prefix": "sct-0.7.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.sct-0.7.1.bazel"
-            }
-          },
-          "rrra__winapi-util-0.1.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/winapi-util/0.1.5/download"
-              ],
-              "strip_prefix": "winapi-util-0.1.5",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.winapi-util-0.1.5.bazel"
-            }
-          },
           "cui__bstr-1.6.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5288,7 +9936,7 @@
               "sha256": "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/bstr/1.6.0/download"
+                "https://static.crates.io/crates/bstr/1.6.0/download"
               ],
               "strip_prefix": "bstr-1.6.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.bstr-1.6.0.bazel"
@@ -5301,38 +9949,12 @@
               "sha256": "788ddb152c388206e81f36bcbb574e7ed7827c27d8fa62227b34edc333d8928c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-diff/0.36.0/download"
+                "https://static.crates.io/crates/gix-diff/0.36.0/download"
               ],
               "strip_prefix": "gix-diff-0.36.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-diff-0.36.0.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__strsim-0.10.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/strsim/0.10.0/download"
-              ],
-              "strip_prefix": "strsim-0.10.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.strsim-0.10.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__untrusted-0.9.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/untrusted/0.9.0/download"
-              ],
-              "strip_prefix": "untrusted-0.9.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.untrusted-0.9.0.bazel"
-            }
-          },
           "cui__gix-index-0.25.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5340,7 +9962,7 @@
               "sha256": "f54d63a9d13c13088f41f5a3accbec284e492ac8f4f707fcc307c139622e17b7",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-index/0.25.0/download"
+                "https://static.crates.io/crates/gix-index/0.25.0/download"
               ],
               "strip_prefix": "gix-index-0.25.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-index-0.25.0.bazel"
@@ -5353,12 +9975,25 @@
               "sha256": "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_gnu/0.48.0/download"
+                "https://static.crates.io/crates/windows_i686_gnu/0.48.0/download"
               ],
               "strip_prefix": "windows_i686_gnu-0.48.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows_i686_gnu-0.48.0.bazel"
             }
           },
+          "rules_rust_proto__lock_api-0.3.4": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/lock_api/0.3.4/download"
+              ],
+              "strip_prefix": "lock_api-0.3.4",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.lock_api-0.3.4.bazel"
+            }
+          },
           "cui__filetime-0.2.22": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5366,7 +10001,7 @@
               "sha256": "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/filetime/0.2.22/download"
+                "https://static.crates.io/crates/filetime/0.2.22/download"
               ],
               "strip_prefix": "filetime-0.2.22",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.filetime-0.2.22.bazel"
@@ -5379,51 +10014,12 @@
               "sha256": "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tracing-log/0.1.4/download"
+                "https://static.crates.io/crates/tracing-log/0.1.4/download"
               ],
               "strip_prefix": "tracing-log-0.1.4",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tracing-log-0.1.4.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__crossbeam-epoch-0.9.15": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/crossbeam-epoch/0.9.15/download"
-              ],
-              "strip_prefix": "crossbeam-epoch-0.9.15",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.crossbeam-epoch-0.9.15.bazel"
-            }
-          },
-          "rrra__termcolor-1.2.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/termcolor/1.2.0/download"
-              ],
-              "strip_prefix": "termcolor-1.2.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.termcolor-1.2.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__errno-0.3.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/errno/0.3.1/download"
-              ],
-              "strip_prefix": "errno-0.3.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.errno-0.3.1.bazel"
-            }
-          },
           "cui__rustix-0.38.21": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5431,25 +10027,12 @@
               "sha256": "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rustix/0.38.21/download"
+                "https://static.crates.io/crates/rustix/0.38.21/download"
               ],
               "strip_prefix": "rustix-0.38.21",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rustix-0.38.21.bazel"
             }
           },
-          "rules_rust_bindgen__unicode-width-0.1.10": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicode-width/0.1.10/download"
-              ],
-              "strip_prefix": "unicode-width-0.1.10",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.unicode-width-0.1.10.bazel"
-            }
-          },
           "cui__indoc-2.0.4": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5457,7 +10040,7 @@
               "sha256": "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/indoc/2.0.4/download"
+                "https://static.crates.io/crates/indoc/2.0.4/download"
               ],
               "strip_prefix": "indoc-2.0.4",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.indoc-2.0.4.bazel"
@@ -5470,25 +10053,12 @@
               "sha256": "98e90c70c9f0d4d1ee6d0a7d04aa06cb9bbd53d8cfbdd62a0269a7c2eb640552",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/unicode-bom/2.0.2/download"
+                "https://static.crates.io/crates/unicode-bom/2.0.2/download"
               ],
               "strip_prefix": "unicode-bom-2.0.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unicode-bom-2.0.2.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__crossbeam-deque-0.8.3": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/crossbeam-deque/0.8.3/download"
-              ],
-              "strip_prefix": "crossbeam-deque-0.8.3",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.crossbeam-deque-0.8.3.bazel"
-            }
-          },
           "cui__smallvec-1.11.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5496,7 +10066,7 @@
               "sha256": "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/smallvec/1.11.0/download"
+                "https://static.crates.io/crates/smallvec/1.11.0/download"
               ],
               "strip_prefix": "smallvec-1.11.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.smallvec-1.11.0.bazel"
@@ -5509,7 +10079,7 @@
               "sha256": "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/redox_syscall/0.3.5/download"
+                "https://static.crates.io/crates/redox_syscall/0.3.5/download"
               ],
               "strip_prefix": "redox_syscall-0.3.5",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.redox_syscall-0.3.5.bazel"
@@ -5522,25 +10092,12 @@
               "sha256": "713f1b139373f96a2e0ce3ac931cd01ee973c3c5dd7c40c0c2efe96ad2b6751d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/ignore/0.4.18/download"
+                "https://static.crates.io/crates/ignore/0.4.18/download"
               ],
               "strip_prefix": "ignore-0.4.18",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.ignore-0.4.18.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__wasi-0.11.0-wasi-snapshot-preview1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download"
-              ],
-              "strip_prefix": "wasi-0.11.0+wasi-snapshot-preview1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel"
-            }
-          },
           "cui__textwrap-0.16.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5548,7 +10105,7 @@
               "sha256": "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/textwrap/0.16.0/download"
+                "https://static.crates.io/crates/textwrap/0.16.0/download"
               ],
               "strip_prefix": "textwrap-0.16.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.textwrap-0.16.0.bazel"
@@ -5561,7 +10118,7 @@
               "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
+                "https://static.crates.io/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
               ],
               "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
@@ -5574,77 +10131,12 @@
               "sha256": "4e6b653f6820409609bda0f176e6949302307af7a7b9479cd4d4b1bdc31eb9cd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-wasm-conventions/0.2.91/download"
+                "https://static.crates.io/crates/wasm-bindgen-wasm-conventions/0.2.91/download"
               ],
               "strip_prefix": "wasm-bindgen-wasm-conventions-0.2.91",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-wasm-conventions-0.2.91.bazel"
             }
           },
-          "rrra__colorchoice-1.0.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/colorchoice/1.0.0/download"
-              ],
-              "strip_prefix": "colorchoice-1.0.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.colorchoice-1.0.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__regex-1.9.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/regex/1.9.1/download"
-              ],
-              "strip_prefix": "regex-1.9.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.regex-1.9.1.bazel"
-            }
-          },
-          "rrra__windows_x86_64_gnullvm-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.48.0/download"
-              ],
-              "strip_prefix": "windows_x86_64_gnullvm-0.48.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_x86_64_gnullvm-0.48.0.bazel"
-            }
-          },
-          "rules_rust_prost__slab-0.4.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/slab/0.4.8/download"
-              ],
-              "strip_prefix": "slab-0.4.8",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.slab-0.4.8.bazel"
-            }
-          },
-          "rrra__clap-4.3.11": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "1640e5cc7fb47dbb8338fd471b105e7ed6c3cb2aeb00c2e067127ffd3764a05d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/clap/4.3.11/download"
-              ],
-              "strip_prefix": "clap-4.3.11",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.clap-4.3.11.bazel"
-            }
-          },
           "cui__valuable-0.1.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5652,7 +10144,7 @@
               "sha256": "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/valuable/0.1.0/download"
+                "https://static.crates.io/crates/valuable/0.1.0/download"
               ],
               "strip_prefix": "valuable-0.1.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.valuable-0.1.0.bazel"
@@ -5665,12 +10157,38 @@
               "sha256": "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/form_urlencoded/1.2.0/download"
+                "https://static.crates.io/crates/form_urlencoded/1.2.0/download"
               ],
               "strip_prefix": "form_urlencoded-1.2.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.form_urlencoded-1.2.0.bazel"
             }
           },
+          "rules_rust_proto__cfg-if-1.0.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/cfg-if/1.0.0/download"
+              ],
+              "strip_prefix": "cfg-if-1.0.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.cfg-if-1.0.0.bazel"
+            }
+          },
+          "rules_rust_proto__tokio-core-0.1.18": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "87b1395334443abca552f63d4f61d0486f12377c2ba8b368e523f89e828cffd4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio-core/0.1.18/download"
+              ],
+              "strip_prefix": "tokio-core-0.1.18",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-core-0.1.18.bazel"
+            }
+          },
           "rules_rust_prost__prost-derive-0.11.9": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5678,25 +10196,12 @@
               "sha256": "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/prost-derive/0.11.9/download"
+                "https://static.crates.io/crates/prost-derive/0.11.9/download"
               ],
               "strip_prefix": "prost-derive-0.11.9",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.prost-derive-0.11.9.bazel"
             }
           },
-          "cui__adler-1.0.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/adler/1.0.2/download"
-              ],
-              "strip_prefix": "adler-1.0.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.adler-1.0.2.bazel"
-            }
-          },
           "cui__wasm-bindgen-shared-0.2.87": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5704,60 +10209,23 @@
               "sha256": "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-shared/0.2.87/download"
+                "https://static.crates.io/crates/wasm-bindgen-shared/0.2.87/download"
               ],
               "strip_prefix": "wasm-bindgen-shared-0.2.87",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.wasm-bindgen-shared-0.2.87.bazel"
             }
           },
-          "cross_x86_64-apple-darwin": {
+          "rules_rust_proto__crossbeam-utils-0.7.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "urls": [
-                "https://github.com/rust-embedded/cross/releases/download/v0.2.1/cross-v0.2.1-x86_64-apple-darwin.tar.gz"
-              ],
-              "sha256": "589da89453291dc26f0b10b521cdadb98376d495645b210574bd9ca4ec8cfa2c",
-              "build_file_content": "exports_files(glob([\"**\"]), visibility = [\"//visibility:public\"])"
-            }
-          },
-          "rules_rust_prost__rustix-0.37.20": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b96e891d04aa506a6d1f318d2771bcb1c7dfda84e126660ace067c9b474bb2c0",
+              "sha256": "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rustix/0.37.20/download"
+                "https://static.crates.io/crates/crossbeam-utils/0.7.2/download"
               ],
-              "strip_prefix": "rustix-0.37.20",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.rustix-0.37.20.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__wasm-bindgen-macro-support-0.2.91": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-macro-support/0.2.91/download"
-              ],
-              "strip_prefix": "wasm-bindgen-macro-support-0.2.91",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-macro-support-0.2.91.bazel"
-            }
-          },
-          "rules_rust_prost__fnv-1.0.7": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/fnv/1.0.7/download"
-              ],
-              "strip_prefix": "fnv-1.0.7",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.fnv-1.0.7.bazel"
+              "strip_prefix": "crossbeam-utils-0.7.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.crossbeam-utils-0.7.2.bazel"
             }
           },
           "cui__spectral-0.6.0": {
@@ -5767,25 +10235,12 @@
               "sha256": "ae3c15181f4b14e52eeaac3efaeec4d2764716ce9c86da0c934c3e318649c5ba",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/spectral/0.6.0/download"
+                "https://static.crates.io/crates/spectral/0.6.0/download"
               ],
               "strip_prefix": "spectral-0.6.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.spectral-0.6.0.bazel"
             }
           },
-          "cui__windows_i686_msvc-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_msvc/0.48.0/download"
-              ],
-              "strip_prefix": "windows_i686_msvc-0.48.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_i686_msvc-0.48.0.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__float-cmp-0.8.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5793,7 +10248,7 @@
               "sha256": "e1267f4ac4f343772758f7b1bdcbe767c218bbab93bb432acbf5162bbf85a6c4",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/float-cmp/0.8.0/download"
+                "https://static.crates.io/crates/float-cmp/0.8.0/download"
               ],
               "strip_prefix": "float-cmp-0.8.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.float-cmp-0.8.0.bazel"
@@ -5806,64 +10261,12 @@
               "sha256": "5ae0978f3e11dc57290ee75ac2477c815bca1ce2fa7ed5dc5f16db067410ac4d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-tempfile/10.0.0/download"
+                "https://static.crates.io/crates/gix-tempfile/10.0.0/download"
               ],
               "strip_prefix": "gix-tempfile-10.0.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-tempfile-10.0.0.bazel"
             }
           },
-          "cui__jwalk-0.8.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2735847566356cd2179a2a38264839308f7079fa96e6bd5a42d740460e003c56",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/jwalk/0.8.1/download"
-              ],
-              "strip_prefix": "jwalk-0.8.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.jwalk-0.8.1.bazel"
-            }
-          },
-          "rules_rust_prost__getrandom-0.2.10": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/getrandom/0.2.10/download"
-              ],
-              "strip_prefix": "getrandom-0.2.10",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.getrandom-0.2.10.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__redox_syscall-0.2.16": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/redox_syscall/0.2.16/download"
-              ],
-              "strip_prefix": "redox_syscall-0.2.16",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.redox_syscall-0.2.16.bazel"
-            }
-          },
-          "rules_rust_prost__httpdate-1.0.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/httpdate/1.0.2/download"
-              ],
-              "strip_prefix": "httpdate-1.0.2",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.httpdate-1.0.2.bazel"
-            }
-          },
           "rules_rust_prost__tower-layer-0.3.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5871,7 +10274,7 @@
               "sha256": "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tower-layer/0.3.2/download"
+                "https://static.crates.io/crates/tower-layer/0.3.2/download"
               ],
               "strip_prefix": "tower-layer-0.3.2",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tower-layer-0.3.2.bazel"
@@ -5884,24 +10287,12 @@
               "sha256": "03915af431787e6ffdcc74c645077518c6b6e01f80b761e0fbbfa288536311b3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/cfg-expr/0.15.5/download"
+                "https://static.crates.io/crates/cfg-expr/0.15.5/download"
               ],
               "strip_prefix": "cfg-expr-0.15.5",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cfg-expr-0.15.5.bazel"
             }
           },
-          "cargo_bazel.buildifier-darwin-arm64": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_file",
-            "attributes": {
-              "urls": [
-                "https://github.com/bazelbuild/buildtools/releases/download/5.0.1/buildifier-darwin-arm64"
-              ],
-              "sha256": "4da23315f0dccabf878c8227fddbccf35545b23b3cb6225bfcf3107689cc4364",
-              "downloaded_file_path": "buildifier.exe",
-              "executable": true
-            }
-          },
           "cui__prodash-26.2.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5909,7 +10300,7 @@
               "sha256": "794b5bf8e2d19b53dcdcec3e4bba628e20f5b6062503ba89281fa7037dd7bbcf",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/prodash/26.2.2/download"
+                "https://static.crates.io/crates/prodash/26.2.2/download"
               ],
               "strip_prefix": "prodash-26.2.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.prodash-26.2.2.bazel"
@@ -5922,64 +10313,12 @@
               "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
+                "https://static.crates.io/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
               ],
               "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
             }
           },
-          "cui__cargo_toml-0.19.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "a98356df42a2eb1bd8f1793ae4ee4de48e384dd974ce5eac8eee802edb7492be",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/cargo_toml/0.19.2/download"
-              ],
-              "strip_prefix": "cargo_toml-0.19.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cargo_toml-0.19.2.bazel"
-            }
-          },
-          "rules_rust_prost__num_cpus-1.15.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/num_cpus/1.15.0/download"
-              ],
-              "strip_prefix": "num_cpus-1.15.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.num_cpus-1.15.0.bazel"
-            }
-          },
-          "rules_rust_bindgen__lazycell-1.3.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/lazycell/1.3.0/download"
-              ],
-              "strip_prefix": "lazycell-1.3.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.lazycell-1.3.0.bazel"
-            }
-          },
-          "cui__tracing-subscriber-0.3.17": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tracing-subscriber/0.3.17/download"
-              ],
-              "strip_prefix": "tracing-subscriber-0.3.17",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tracing-subscriber-0.3.17.bazel"
-            }
-          },
           "cui__gix-0.54.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -5987,7 +10326,7 @@
               "sha256": "ad6d32e74454459690d57d18ea4ebec1629936e6b130b51d12cb4a81630ac953",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix/0.54.1/download"
+                "https://static.crates.io/crates/gix/0.54.1/download"
               ],
               "strip_prefix": "gix-0.54.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-0.54.1.bazel"
@@ -6000,38 +10339,12 @@
               "sha256": "3c576cfbf577f72c097b5f88aedea502cd62952bdc1fb3adcab4531d5525a4c7",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-command/0.2.10/download"
+                "https://static.crates.io/crates/gix-command/0.2.10/download"
               ],
               "strip_prefix": "gix-command-0.2.10",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-command-0.2.10.bazel"
             }
           },
-          "rules_rust_prost__bytes-1.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bytes/1.4.0/download"
-              ],
-              "strip_prefix": "bytes-1.4.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.bytes-1.4.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__mime_guess-2.0.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/mime_guess/2.0.4/download"
-              ],
-              "strip_prefix": "mime_guess-2.0.4",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.mime_guess-2.0.4.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__tinyvec_macros-0.1.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6039,7 +10352,7 @@
               "sha256": "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tinyvec_macros/0.1.1/download"
+                "https://static.crates.io/crates/tinyvec_macros/0.1.1/download"
               ],
               "strip_prefix": "tinyvec_macros-0.1.1",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.tinyvec_macros-0.1.1.bazel"
@@ -6052,7 +10365,7 @@
               "sha256": "8d6a392c6ba3a2f133cdc63120e9bc7aec81eef763db372c817de31febfe64bf",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-odb/0.53.0/download"
+                "https://static.crates.io/crates/gix-odb/0.53.0/download"
               ],
               "strip_prefix": "gix-odb-0.53.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-odb-0.53.0.bazel"
@@ -6065,7 +10378,7 @@
               "sha256": "b96e891d04aa506a6d1f318d2771bcb1c7dfda84e126660ace067c9b474bb2c0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rustix/0.37.20/download"
+                "https://static.crates.io/crates/rustix/0.37.20/download"
               ],
               "strip_prefix": "rustix-0.37.20",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.rustix-0.37.20.bazel"
@@ -6078,7 +10391,7 @@
               "sha256": "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_msvc/0.48.0/download"
+                "https://static.crates.io/crates/windows_i686_msvc/0.48.0/download"
               ],
               "strip_prefix": "windows_i686_msvc-0.48.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows_i686_msvc-0.48.0.bazel"
@@ -6091,7 +10404,7 @@
               "sha256": "acd4f3c17c83b0ba34ffbc4f8bbd74f079413f747f84a6f89292f138057e36ab",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/clap_builder/4.3.3/download"
+                "https://static.crates.io/crates/clap_builder/4.3.3/download"
               ],
               "strip_prefix": "clap_builder-4.3.3",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.clap_builder-4.3.3.bazel"
@@ -6116,95 +10429,17 @@
               ]
             }
           },
-          "rules_rust_wasm_bindgen__wasm-encoder-0.29.0": {
+          "rules_rust_proto__tokio-threadpool-0.1.18": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "18c41dbd92eaebf3612a39be316540b8377c871cb9bde6b064af962984912881",
+              "sha256": "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-encoder/0.29.0/download"
+                "https://static.crates.io/crates/tokio-threadpool/0.1.18/download"
               ],
-              "strip_prefix": "wasm-encoder-0.29.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-encoder-0.29.0.bazel"
-            }
-          },
-          "cui__regex-syntax-0.8.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/regex-syntax/0.8.2/download"
-              ],
-              "strip_prefix": "regex-syntax-0.8.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.regex-syntax-0.8.2.bazel"
-            }
-          },
-          "rules_rust_bindgen__clap_lex-0.5.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/clap_lex/0.5.0/download"
-              ],
-              "strip_prefix": "clap_lex-0.5.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.clap_lex-0.5.0.bazel"
-            }
-          },
-          "rules_rust_prost__http-body-0.4.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/http-body/0.4.5/download"
-              ],
-              "strip_prefix": "http-body-0.4.5",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.http-body-0.4.5.bazel"
-            }
-          },
-          "rules_rust_bindgen__utf8parse-0.2.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/utf8parse/0.2.1/download"
-              ],
-              "strip_prefix": "utf8parse-0.2.1",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.utf8parse-0.2.1.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__windows_x86_64_gnullvm-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.48.0/download"
-              ],
-              "strip_prefix": "windows_x86_64_gnullvm-0.48.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_x86_64_gnullvm-0.48.0.bazel"
-            }
-          },
-          "rules_rust_prost__fixedbitset-0.4.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/fixedbitset/0.4.2/download"
-              ],
-              "strip_prefix": "fixedbitset-0.4.2",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.fixedbitset-0.4.2.bazel"
+              "strip_prefix": "tokio-threadpool-0.1.18",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-threadpool-0.1.18.bazel"
             }
           },
           "rules_rust_bindgen__annotate-snippets-0.9.1": {
@@ -6214,7 +10449,7 @@
               "sha256": "c3b9d411ecbaf79885c6df4d75fff75858d5995ff25385657a28af47e82f9c36",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/annotate-snippets/0.9.1/download"
+                "https://static.crates.io/crates/annotate-snippets/0.9.1/download"
               ],
               "strip_prefix": "annotate-snippets-0.9.1",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.annotate-snippets-0.9.1.bazel"
@@ -6227,7 +10462,7 @@
               "sha256": "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/httparse/1.8.0/download"
+                "https://static.crates.io/crates/httparse/1.8.0/download"
               ],
               "strip_prefix": "httparse-1.8.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.httparse-1.8.0.bazel"
@@ -6240,7 +10475,7 @@
               "sha256": "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/powerfmt/0.2.0/download"
+                "https://static.crates.io/crates/powerfmt/0.2.0/download"
               ],
               "strip_prefix": "powerfmt-0.2.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.powerfmt-0.2.0.bazel"
@@ -6253,25 +10488,12 @@
               "sha256": "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/strsim/0.10.0/download"
+                "https://static.crates.io/crates/strsim/0.10.0/download"
               ],
               "strip_prefix": "strsim-0.10.0",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.strsim-0.10.0.bazel"
             }
           },
-          "rrra__winapi-i686-pc-windows-gnu-0.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
-              ],
-              "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
-            }
-          },
           "rules_rust_prost__tonic-0.9.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6279,25 +10501,12 @@
               "sha256": "3082666a3a6433f7f511c7192923fa1fe07c69332d3c6a2e6bb040b569199d5a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tonic/0.9.2/download"
+                "https://static.crates.io/crates/tonic/0.9.2/download"
               ],
               "strip_prefix": "tonic-0.9.2",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tonic-0.9.2.bazel"
             }
           },
-          "rules_rust_prost__regex-1.8.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/regex/1.8.4/download"
-              ],
-              "strip_prefix": "regex-1.8.4",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.regex-1.8.4.bazel"
-            }
-          },
           "rules_rust_prost__async-trait-0.1.68": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6305,7 +10514,7 @@
               "sha256": "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/async-trait/0.1.68/download"
+                "https://static.crates.io/crates/async-trait/0.1.68/download"
               ],
               "strip_prefix": "async-trait-0.1.68",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.async-trait-0.1.68.bazel"
@@ -6318,7 +10527,7 @@
               "sha256": "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/brotli-decompressor/2.5.1/download"
+                "https://static.crates.io/crates/brotli-decompressor/2.5.1/download"
               ],
               "strip_prefix": "brotli-decompressor-2.5.1",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.brotli-decompressor-2.5.1.bazel"
@@ -6331,7 +10540,7 @@
               "sha256": "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_msvc/0.48.0/download"
+                "https://static.crates.io/crates/windows_x86_64_msvc/0.48.0/download"
               ],
               "strip_prefix": "windows_x86_64_msvc-0.48.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_x86_64_msvc-0.48.0.bazel"
@@ -6344,7 +10553,7 @@
               "sha256": "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/unicode-normalization/0.1.22/download"
+                "https://static.crates.io/crates/unicode-normalization/0.1.22/download"
               ],
               "strip_prefix": "unicode-normalization-0.1.22",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unicode-normalization-0.1.22.bazel"
@@ -6357,51 +10566,12 @@
               "sha256": "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_msvc/0.48.0/download"
+                "https://static.crates.io/crates/windows_x86_64_msvc/0.48.0/download"
               ],
               "strip_prefix": "windows_x86_64_msvc-0.48.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows_x86_64_msvc-0.48.0.bazel"
             }
           },
-          "cui__winapi-0.3.9": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/winapi/0.3.9/download"
-              ],
-              "strip_prefix": "winapi-0.3.9",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.winapi-0.3.9.bazel"
-            }
-          },
-          "cui__syn-2.0.32": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/syn/2.0.32/download"
-              ],
-              "strip_prefix": "syn-2.0.32",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.syn-2.0.32.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__wasm-bindgen-externref-xform-0.2.91": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "12b6ac5fca1d0992d2328147488169ea166bfe899c88f8ad06cf583f4c492fcf",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-externref-xform/0.2.91/download"
-              ],
-              "strip_prefix": "wasm-bindgen-externref-xform-0.2.91",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-externref-xform-0.2.91.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__idna-0.4.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6409,7 +10579,7 @@
               "sha256": "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/idna/0.4.0/download"
+                "https://static.crates.io/crates/idna/0.4.0/download"
               ],
               "strip_prefix": "idna-0.4.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.idna-0.4.0.bazel"
@@ -6422,7 +10592,7 @@
               "sha256": "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/regex/1.9.1/download"
+                "https://static.crates.io/crates/regex/1.9.1/download"
               ],
               "strip_prefix": "regex-1.9.1",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.regex-1.9.1.bazel"
@@ -6435,25 +10605,12 @@
               "sha256": "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anstyle-parse/0.2.1/download"
+                "https://static.crates.io/crates/anstyle-parse/0.2.1/download"
               ],
               "strip_prefix": "anstyle-parse-0.2.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.anstyle-parse-0.2.1.bazel"
             }
           },
-          "rules_rust_prost__rustversion-1.0.12": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rustversion/1.0.12/download"
-              ],
-              "strip_prefix": "rustversion-1.0.12",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.rustversion-1.0.12.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__wait-timeout-0.2.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6461,7 +10618,7 @@
               "sha256": "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wait-timeout/0.2.0/download"
+                "https://static.crates.io/crates/wait-timeout/0.2.0/download"
               ],
               "strip_prefix": "wait-timeout-0.2.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wait-timeout-0.2.0.bazel"
@@ -6474,7 +10631,7 @@
               "sha256": "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.48.0/download"
+                "https://static.crates.io/crates/windows_aarch64_gnullvm/0.48.0/download"
               ],
               "strip_prefix": "windows_aarch64_gnullvm-0.48.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_aarch64_gnullvm-0.48.0.bazel"
@@ -6487,38 +10644,12 @@
               "sha256": "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/quick-error/1.2.3/download"
+                "https://static.crates.io/crates/quick-error/1.2.3/download"
               ],
               "strip_prefix": "quick-error-1.2.3",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.quick-error-1.2.3.bazel"
             }
           },
-          "rules_rust_prost__tokio-macros-2.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tokio-macros/2.1.0/download"
-              ],
-              "strip_prefix": "tokio-macros-2.1.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tokio-macros-2.1.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__wasmprinter-0.2.60": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b76cb909fe3d9b0de58cee1f4072247e680ff5cc1558ccad2790a9de14a23993",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/wasmprinter/0.2.60/download"
-              ],
-              "strip_prefix": "wasmprinter-0.2.60",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasmprinter-0.2.60.bazel"
-            }
-          },
           "rules_rust_bindgen__winapi-0.3.9": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6526,51 +10657,12 @@
               "sha256": "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi/0.3.9/download"
+                "https://static.crates.io/crates/winapi/0.3.9/download"
               ],
               "strip_prefix": "winapi-0.3.9",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.winapi-0.3.9.bazel"
             }
           },
-          "cui__gix-macros-0.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9d8acb5ee668d55f0f2d19a320a3f9ef67a6999ad483e11135abcc2464ed18b6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-macros/0.1.0/download"
-              ],
-              "strip_prefix": "gix-macros-0.1.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-macros-0.1.0.bazel"
-            }
-          },
-          "rrra__ryu-1.0.14": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "fe232bdf6be8c8de797b22184ee71118d63780ea42ac85b61d1baa6d3b782ae9",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/ryu/1.0.14/download"
-              ],
-              "strip_prefix": "ryu-1.0.14",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.ryu-1.0.14.bazel"
-            }
-          },
-          "rrra__serde-1.0.171": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "30e27d1e4fd7659406c492fd6cfaf2066ba8773de45ca75e855590f856dc34a9",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/serde/1.0.171/download"
-              ],
-              "strip_prefix": "serde-1.0.171",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.serde-1.0.171.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__core-foundation-sys-0.8.4": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6578,25 +10670,12 @@
               "sha256": "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/core-foundation-sys/0.8.4/download"
+                "https://static.crates.io/crates/core-foundation-sys/0.8.4/download"
               ],
               "strip_prefix": "core-foundation-sys-0.8.4",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.core-foundation-sys-0.8.4.bazel"
             }
           },
-          "rules_rust_prost__lock_api-0.4.10": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/lock_api/0.4.10/download"
-              ],
-              "strip_prefix": "lock_api-0.4.10",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.lock_api-0.4.10.bazel"
-            }
-          },
           "rules_rust_prost__futures-core-0.3.28": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6604,7 +10683,7 @@
               "sha256": "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/futures-core/0.3.28/download"
+                "https://static.crates.io/crates/futures-core/0.3.28/download"
               ],
               "strip_prefix": "futures-core-0.3.28",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.futures-core-0.3.28.bazel"
@@ -6617,7 +10696,7 @@
               "sha256": "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
+                "https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
               ],
               "strip_prefix": "winapi-x86_64-pc-windows-gnu-0.4.0",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel"
@@ -6630,7 +10709,7 @@
               "sha256": "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anstyle/1.0.1/download"
+                "https://static.crates.io/crates/anstyle/1.0.1/download"
               ],
               "strip_prefix": "anstyle-1.0.1",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.anstyle-1.0.1.bazel"
@@ -6643,25 +10722,12 @@
               "sha256": "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/dunce/1.0.4/download"
+                "https://static.crates.io/crates/dunce/1.0.4/download"
               ],
               "strip_prefix": "dunce-1.0.4",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.dunce-1.0.4.bazel"
             }
           },
-          "rules_rust_bindgen__glob-0.3.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/glob/0.3.1/download"
-              ],
-              "strip_prefix": "glob-0.3.1",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.glob-0.3.1.bazel"
-            }
-          },
           "cui__phf_generator-0.11.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6669,7 +10735,7 @@
               "sha256": "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/phf_generator/0.11.2/download"
+                "https://static.crates.io/crates/phf_generator/0.11.2/download"
               ],
               "strip_prefix": "phf_generator-0.11.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.phf_generator-0.11.2.bazel"
@@ -6682,25 +10748,12 @@
               "sha256": "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/fastrand/1.9.0/download"
+                "https://static.crates.io/crates/fastrand/1.9.0/download"
               ],
               "strip_prefix": "fastrand-1.9.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.fastrand-1.9.0.bazel"
             }
           },
-          "rules_rust_prost__itertools-0.10.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/itertools/0.10.5/download"
-              ],
-              "strip_prefix": "itertools-0.10.5",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.itertools-0.10.5.bazel"
-            }
-          },
           "rules_rust_bindgen__windows_x86_64_gnu-0.48.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6708,7 +10761,7 @@
               "sha256": "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnu/0.48.0/download"
+                "https://static.crates.io/crates/windows_x86_64_gnu/0.48.0/download"
               ],
               "strip_prefix": "windows_x86_64_gnu-0.48.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows_x86_64_gnu-0.48.0.bazel"
@@ -6721,7 +10774,7 @@
               "sha256": "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/memoffset/0.9.0/download"
+                "https://static.crates.io/crates/memoffset/0.9.0/download"
               ],
               "strip_prefix": "memoffset-0.9.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.memoffset-0.9.0.bazel"
@@ -6734,7 +10787,7 @@
               "sha256": "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows-targets/0.48.0/download"
+                "https://static.crates.io/crates/windows-targets/0.48.0/download"
               ],
               "strip_prefix": "windows-targets-0.48.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows-targets-0.48.0.bazel"
@@ -6747,38 +10800,12 @@
               "sha256": "59b11b2b5241ba34be09c3cc85a36e56e48f9888862e19cedf23336d35316ed1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/twoway/0.1.8/download"
+                "https://static.crates.io/crates/twoway/0.1.8/download"
               ],
               "strip_prefix": "twoway-0.1.8",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.twoway-0.1.8.bazel"
             }
           },
-          "cui__redox_syscall-0.4.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/redox_syscall/0.4.1/download"
-              ],
-              "strip_prefix": "redox_syscall-0.4.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.redox_syscall-0.4.1.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__id-arena-2.2.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/id-arena/2.2.1/download"
-              ],
-              "strip_prefix": "id-arena-2.2.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.id-arena-2.2.1.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__linux-raw-sys-0.3.8": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6786,25 +10813,12 @@
               "sha256": "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/linux-raw-sys/0.3.8/download"
+                "https://static.crates.io/crates/linux-raw-sys/0.3.8/download"
               ],
               "strip_prefix": "linux-raw-sys-0.3.8",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.linux-raw-sys-0.3.8.bazel"
             }
           },
-          "cui__normpath-1.1.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ec60c60a693226186f5d6edf073232bfb6464ed97eb22cf3b01c1e8198fd97f5",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/normpath/1.1.1/download"
-              ],
-              "strip_prefix": "normpath-1.1.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.normpath-1.1.1.bazel"
-            }
-          },
           "cui__quote-1.0.29": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6812,7 +10826,7 @@
               "sha256": "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/quote/1.0.29/download"
+                "https://static.crates.io/crates/quote/1.0.29/download"
               ],
               "strip_prefix": "quote-1.0.29",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.quote-1.0.29.bazel"
@@ -6825,51 +10839,12 @@
               "sha256": "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/safemem/0.3.3/download"
+                "https://static.crates.io/crates/safemem/0.3.3/download"
               ],
               "strip_prefix": "safemem-0.3.3",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.safemem-0.3.3.bazel"
             }
           },
-          "rules_rust_bindgen__lazy_static-1.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/lazy_static/1.4.0/download"
-              ],
-              "strip_prefix": "lazy_static-1.4.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.lazy_static-1.4.0.bazel"
-            }
-          },
-          "rules_rust_prost__axum-0.6.18": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f8175979259124331c1d7bf6586ee7e0da434155e4b2d48ec2c8386281d8df39",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/axum/0.6.18/download"
-              ],
-              "strip_prefix": "axum-0.6.18",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.axum-0.6.18.bazel"
-            }
-          },
-          "rules_rust_prost__parking_lot-0.12.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/parking_lot/0.12.1/download"
-              ],
-              "strip_prefix": "parking_lot-0.12.1",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.parking_lot-0.12.1.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__assert_cmd-1.0.8": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6877,25 +10852,12 @@
               "sha256": "c98233c6673d8601ab23e77eb38f999c51100d46c5703b17288c57fddf3a1ffe",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/assert_cmd/1.0.8/download"
+                "https://static.crates.io/crates/assert_cmd/1.0.8/download"
               ],
               "strip_prefix": "assert_cmd-1.0.8",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.assert_cmd-1.0.8.bazel"
             }
           },
-          "cui__cargo-platform-0.1.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "12024c4645c97566567129c204f65d5815a8c9aecf30fcbe682b2fe034996d36",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/cargo-platform/0.1.4/download"
-              ],
-              "strip_prefix": "cargo-platform-0.1.4",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cargo-platform-0.1.4.bazel"
-            }
-          },
           "cui__serde_starlark-0.1.14": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6903,25 +10865,12 @@
               "sha256": "29675b116dd4c7ab4012e00e71f6dee9ed8c731108468b4434779c6b9eec7957",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/serde_starlark/0.1.14/download"
+                "https://static.crates.io/crates/serde_starlark/0.1.14/download"
               ],
               "strip_prefix": "serde_starlark-0.1.14",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.serde_starlark-0.1.14.bazel"
             }
           },
-          "cui__slug-0.1.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b3bc762e6a4b6c6fcaade73e77f9ebc6991b676f88bb2358bddb56560f073373",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/slug/0.1.4/download"
-              ],
-              "strip_prefix": "slug-0.1.4",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.slug-0.1.4.bazel"
-            }
-          },
           "cui__ppv-lite86-0.2.17": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6929,7 +10878,7 @@
               "sha256": "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/ppv-lite86/0.2.17/download"
+                "https://static.crates.io/crates/ppv-lite86/0.2.17/download"
               ],
               "strip_prefix": "ppv-lite86-0.2.17",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.ppv-lite86-0.2.17.bazel"
@@ -6942,51 +10891,12 @@
               "sha256": "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rand_core/0.6.4/download"
+                "https://static.crates.io/crates/rand_core/0.6.4/download"
               ],
               "strip_prefix": "rand_core-0.6.4",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rand_core-0.6.4.bazel"
             }
           },
-          "rules_rust_prost__errno-dragonfly-0.1.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/errno-dragonfly/0.1.2/download"
-              ],
-              "strip_prefix": "errno-dragonfly-0.1.2",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.errno-dragonfly-0.1.2.bazel"
-            }
-          },
-          "cui__gix-url-0.24.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "6125ecf46e8c68bf7202da6cad239831daebf0247ffbab30210d72f3856e420f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-url/0.24.0/download"
-              ],
-              "strip_prefix": "gix-url-0.24.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-url-0.24.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__percent-encoding-2.3.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/percent-encoding/2.3.0/download"
-              ],
-              "strip_prefix": "percent-encoding-2.3.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.percent-encoding-2.3.0.bazel"
-            }
-          },
           "rules_rust_prost__wasi-0.11.0-wasi-snapshot-preview1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -6994,7 +10904,7 @@
               "sha256": "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download"
+                "https://static.crates.io/crates/wasi/0.11.0+wasi-snapshot-preview1/download"
               ],
               "strip_prefix": "wasi-0.11.0+wasi-snapshot-preview1",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel"
@@ -7007,38 +10917,12 @@
               "sha256": "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rustix/0.37.23/download"
+                "https://static.crates.io/crates/rustix/0.37.23/download"
               ],
               "strip_prefix": "rustix-0.37.23",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rustix-0.37.23.bazel"
             }
           },
-          "cui__clap_builder-4.3.11": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "98c59138d527eeaf9b53f35a77fcc1fad9d883116070c63d5de1c7dc7b00c72b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/clap_builder/4.3.11/download"
-              ],
-              "strip_prefix": "clap_builder-4.3.11",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.clap_builder-4.3.11.bazel"
-            }
-          },
-          "cui__tracing-core-0.1.32": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tracing-core/0.1.32/download"
-              ],
-              "strip_prefix": "tracing-core-0.1.32",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tracing-core-0.1.32.bazel"
-            }
-          },
           "rrra__clap_lex-0.5.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7046,7 +10930,7 @@
               "sha256": "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/clap_lex/0.5.0/download"
+                "https://static.crates.io/crates/clap_lex/0.5.0/download"
               ],
               "strip_prefix": "clap_lex-0.5.0",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.clap_lex-0.5.0.bazel"
@@ -7059,12 +10943,25 @@
               "sha256": "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/base64/0.21.2/download"
+                "https://static.crates.io/crates/base64/0.21.2/download"
               ],
               "strip_prefix": "base64-0.21.2",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.base64-0.21.2.bazel"
             }
           },
+          "rules_rust_proto__log-0.3.9": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/log/0.3.9/download"
+              ],
+              "strip_prefix": "log-0.3.9",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.log-0.3.9.bazel"
+            }
+          },
           "rules_rust_wasm_bindgen__windows_i686_msvc-0.48.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7072,7 +10969,7 @@
               "sha256": "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_msvc/0.48.0/download"
+                "https://static.crates.io/crates/windows_i686_msvc/0.48.0/download"
               ],
               "strip_prefix": "windows_i686_msvc-0.48.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_i686_msvc-0.48.0.bazel"
@@ -7085,36 +10982,23 @@
               "sha256": "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/home/0.5.5/download"
+                "https://static.crates.io/crates/home/0.5.5/download"
               ],
               "strip_prefix": "home-0.5.5",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.home-0.5.5.bazel"
             }
           },
-          "cui__windows_x86_64_gnu-0.48.0": {
+          "rules_rust_proto__memoffset-0.5.6": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1",
+              "sha256": "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnu/0.48.0/download"
+                "https://static.crates.io/crates/memoffset/0.5.6/download"
               ],
-              "strip_prefix": "windows_x86_64_gnu-0.48.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_x86_64_gnu-0.48.0.bazel"
-            }
-          },
-          "cui__gix-actor-0.27.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "08c60e982c5290897122d4e2622447f014a2dadd5a18cb73d50bb91b31645e27",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-actor/0.27.0/download"
-              ],
-              "strip_prefix": "gix-actor-0.27.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-actor-0.27.0.bazel"
+              "strip_prefix": "memoffset-0.5.6",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.memoffset-0.5.6.bazel"
             }
           },
           "cui__gix-attributes-0.19.0": {
@@ -7124,88 +11008,12 @@
               "sha256": "2451665e70709ba4753b623ef97511ee98c4a73816b2c5b5df25678d607ed820",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-attributes/0.19.0/download"
+                "https://static.crates.io/crates/gix-attributes/0.19.0/download"
               ],
               "strip_prefix": "gix-attributes-0.19.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-attributes-0.19.0.bazel"
             }
           },
-          "cui__unic-ucd-version-0.9.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unic-ucd-version/0.9.0/download"
-              ],
-              "strip_prefix": "unic-ucd-version-0.9.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-ucd-version-0.9.0.bazel"
-            }
-          },
-          "com_google_googleapis": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "urls": [
-                "https://github.com/googleapis/googleapis/archive/18becb1d1426feb7399db144d7beeb3284f1ccb0.zip"
-              ],
-              "strip_prefix": "googleapis-18becb1d1426feb7399db144d7beeb3284f1ccb0",
-              "sha256": "b8c487191eb942361af905e40172644eab490190e717c3d09bf83e87f3994fff"
-            }
-          },
-          "cui__either-1.9.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/either/1.9.0/download"
-              ],
-              "strip_prefix": "either-1.9.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.either-1.9.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__gimli-0.26.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gimli/0.26.2/download"
-              ],
-              "strip_prefix": "gimli-0.26.2",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.gimli-0.26.2.bazel"
-            }
-          },
-          "cui__parking_lot-0.12.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/parking_lot/0.12.1/download"
-              ],
-              "strip_prefix": "parking_lot-0.12.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.parking_lot-0.12.1.bazel"
-            }
-          },
-          "cui__globwalk-0.8.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "93e3af942408868f6934a7b85134a3230832b9977cf66125df2f9edcfce4ddcc",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/globwalk/0.8.1/download"
-              ],
-              "strip_prefix": "globwalk-0.8.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.globwalk-0.8.1.bazel"
-            }
-          },
           "rules_rust_bindgen__clap-4.3.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7213,25 +11021,12 @@
               "sha256": "ca8f255e4b8027970e78db75e78831229c9815fdbfa67eb1a1b777a62e24b4a0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/clap/4.3.3/download"
+                "https://static.crates.io/crates/clap/4.3.3/download"
               ],
               "strip_prefix": "clap-4.3.3",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.clap-4.3.3.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__wasm-bindgen-wasm-interpreter-0.2.91": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "682940195a701dbf887f20017418b8cac916a37b3f91ededec33226619e973c1",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-wasm-interpreter/0.2.91/download"
-              ],
-              "strip_prefix": "wasm-bindgen-wasm-interpreter-0.2.91",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-wasm-interpreter-0.2.91.bazel"
-            }
-          },
           "rules_rust_prost__hyper-0.14.26": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7239,7 +11034,7 @@
               "sha256": "ab302d72a6f11a3b910431ff93aae7e773078c769f0a3ef15fb9ec692ed147d4",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hyper/0.14.26/download"
+                "https://static.crates.io/crates/hyper/0.14.26/download"
               ],
               "strip_prefix": "hyper-0.14.26",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.hyper-0.14.26.bazel"
@@ -7252,51 +11047,12 @@
               "sha256": "59230a63c37f3e18569bdb90e4a89cbf5bf8b06fea0b84e65ea10cc4df47addd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/predicates/2.1.5/download"
+                "https://static.crates.io/crates/predicates/2.1.5/download"
               ],
               "strip_prefix": "predicates-2.1.5",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.predicates-2.1.5.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__ring-0.17.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/ring/0.17.5/download"
-              ],
-              "strip_prefix": "ring-0.17.5",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.ring-0.17.5.bazel"
-            }
-          },
-          "rules_rust_prost__memchr-2.5.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/memchr/2.5.0/download"
-              ],
-              "strip_prefix": "memchr-2.5.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.memchr-2.5.0.bazel"
-            }
-          },
-          "cui__crates-index-2.2.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "33bc10579ea08741ae173928194b6c42c90b295d51ddd0d18238eaf15502ac87",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/crates-index/2.2.0/download"
-              ],
-              "strip_prefix": "crates-index-2.2.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crates-index-2.2.0.bazel"
-            }
-          },
           "cui__windows_x86_64_msvc-0.48.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7304,38 +11060,12 @@
               "sha256": "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_msvc/0.48.0/download"
+                "https://static.crates.io/crates/windows_x86_64_msvc/0.48.0/download"
               ],
               "strip_prefix": "windows_x86_64_msvc-0.48.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_x86_64_msvc-0.48.0.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__crossbeam-channel-0.5.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/crossbeam-channel/0.5.8/download"
-              ],
-              "strip_prefix": "crossbeam-channel-0.5.8",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.crossbeam-channel-0.5.8.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__windows-sys-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows-sys/0.48.0/download"
-              ],
-              "strip_prefix": "windows-sys-0.48.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows-sys-0.48.0.bazel"
-            }
-          },
           "cui__redox_syscall-0.3.5": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7343,25 +11073,12 @@
               "sha256": "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/redox_syscall/0.3.5/download"
+                "https://static.crates.io/crates/redox_syscall/0.3.5/download"
               ],
               "strip_prefix": "redox_syscall-0.3.5",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.redox_syscall-0.3.5.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__flate2-1.0.28": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/flate2/1.0.28/download"
-              ],
-              "strip_prefix": "flate2-1.0.28",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.flate2-1.0.28.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__indexmap-1.9.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7369,7 +11086,7 @@
               "sha256": "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/indexmap/1.9.3/download"
+                "https://static.crates.io/crates/indexmap/1.9.3/download"
               ],
               "strip_prefix": "indexmap-1.9.3",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.indexmap-1.9.3.bazel"
@@ -7382,7 +11099,7 @@
               "sha256": "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/once_cell/1.18.0/download"
+                "https://static.crates.io/crates/once_cell/1.18.0/download"
               ],
               "strip_prefix": "once_cell-1.18.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.once_cell-1.18.0.bazel"
@@ -7395,7 +11112,7 @@
               "sha256": "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/termtree/0.4.1/download"
+                "https://static.crates.io/crates/termtree/0.4.1/download"
               ],
               "strip_prefix": "termtree-0.4.1",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.termtree-0.4.1.bazel"
@@ -7408,25 +11125,12 @@
               "sha256": "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anstream/0.3.2/download"
+                "https://static.crates.io/crates/anstream/0.3.2/download"
               ],
               "strip_prefix": "anstream-0.3.2",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.anstream-0.3.2.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__scopeguard-1.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/scopeguard/1.1.0/download"
-              ],
-              "strip_prefix": "scopeguard-1.1.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.scopeguard-1.1.0.bazel"
-            }
-          },
           "cui__gix-protocol-0.40.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7434,7 +11138,7 @@
               "sha256": "cc7b700dc20cc9be8a5130a1fd7e10c34117ffa7068431c8c24d963f0a2e0c9b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-protocol/0.40.0/download"
+                "https://static.crates.io/crates/gix-protocol/0.40.0/download"
               ],
               "strip_prefix": "gix-protocol-0.40.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-protocol-0.40.0.bazel"
@@ -7456,38 +11160,12 @@
               "sha256": "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/doc-comment/0.3.3/download"
+                "https://static.crates.io/crates/doc-comment/0.3.3/download"
               ],
               "strip_prefix": "doc-comment-0.3.3",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.doc-comment-0.3.3.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__fastrand-1.9.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/fastrand/1.9.0/download"
-              ],
-              "strip_prefix": "fastrand-1.9.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.fastrand-1.9.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__num_threads-0.1.6": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/num_threads/0.1.6/download"
-              ],
-              "strip_prefix": "num_threads-0.1.6",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.num_threads-0.1.6.bazel"
-            }
-          },
           "cui__crc32fast-1.3.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7495,51 +11173,12 @@
               "sha256": "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/crc32fast/1.3.2/download"
+                "https://static.crates.io/crates/crc32fast/1.3.2/download"
               ],
               "strip_prefix": "crc32fast-1.3.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crc32fast-1.3.2.bazel"
             }
           },
-          "cui__rayon-core-1.12.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rayon-core/1.12.0/download"
-              ],
-              "strip_prefix": "rayon-core-1.12.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rayon-core-1.12.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__lazy_static-1.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/lazy_static/1.4.0/download"
-              ],
-              "strip_prefix": "lazy_static-1.4.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.lazy_static-1.4.0.bazel"
-            }
-          },
-          "cui__thread_local-1.1.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/thread_local/1.1.4/download"
-              ],
-              "strip_prefix": "thread_local-1.1.4",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.thread_local-1.1.4.bazel"
-            }
-          },
           "rules_rust_bindgen__aho-corasick-1.0.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7547,25 +11186,12 @@
               "sha256": "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/aho-corasick/1.0.2/download"
+                "https://static.crates.io/crates/aho-corasick/1.0.2/download"
               ],
               "strip_prefix": "aho-corasick-1.0.2",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.aho-corasick-1.0.2.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__threadpool-1.8.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/threadpool/1.8.1/download"
-              ],
-              "strip_prefix": "threadpool-1.8.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.threadpool-1.8.1.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__walrus-macro-0.19.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7573,25 +11199,12 @@
               "sha256": "0a6e5bd22c71e77d60140b0bd5be56155a37e5bd14e24f5f87298040d0cc40d7",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/walrus-macro/0.19.0/download"
+                "https://static.crates.io/crates/walrus-macro/0.19.0/download"
               ],
               "strip_prefix": "walrus-macro-0.19.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.walrus-macro-0.19.0.bazel"
             }
           },
-          "cui__linux-raw-sys-0.4.10": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/linux-raw-sys/0.4.10/download"
-              ],
-              "strip_prefix": "linux-raw-sys-0.4.10",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.linux-raw-sys-0.4.10.bazel"
-            }
-          },
           "cui__rdrand-0.4.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7599,64 +11212,12 @@
               "sha256": "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rdrand/0.4.0/download"
+                "https://static.crates.io/crates/rdrand/0.4.0/download"
               ],
               "strip_prefix": "rdrand-0.4.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rdrand-0.4.0.bazel"
             }
           },
-          "rules_rust_bindgen__anstyle-wincon-1.0.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/anstyle-wincon/1.0.1/download"
-              ],
-              "strip_prefix": "anstyle-wincon-1.0.1",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.anstyle-wincon-1.0.1.bazel"
-            }
-          },
-          "rrra__windows_x86_64_msvc-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_msvc/0.48.0/download"
-              ],
-              "strip_prefix": "windows_x86_64_msvc-0.48.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_x86_64_msvc-0.48.0.bazel"
-            }
-          },
-          "cui__rand_core-0.3.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rand_core/0.3.1/download"
-              ],
-              "strip_prefix": "rand_core-0.3.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rand_core-0.3.1.bazel"
-            }
-          },
-          "cui__rayon-1.8.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rayon/1.8.0/download"
-              ],
-              "strip_prefix": "rayon-1.8.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rayon-1.8.0.bazel"
-            }
-          },
           "cui__cpufeatures-0.2.9": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7664,25 +11225,12 @@
               "sha256": "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/cpufeatures/0.2.9/download"
+                "https://static.crates.io/crates/cpufeatures/0.2.9/download"
               ],
               "strip_prefix": "cpufeatures-0.2.9",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cpufeatures-0.2.9.bazel"
             }
           },
-          "cui__tempfile-3.8.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tempfile/3.8.1/download"
-              ],
-              "strip_prefix": "tempfile-3.8.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tempfile-3.8.1.bazel"
-            }
-          },
           "rules_rust_prost__mio-0.8.8": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7690,23 +11238,23 @@
               "sha256": "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/mio/0.8.8/download"
+                "https://static.crates.io/crates/mio/0.8.8/download"
               ],
               "strip_prefix": "mio-0.8.8",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.mio-0.8.8.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__windows_aarch64_msvc-0.48.0": {
+          "rules_rust_proto__base64-0.9.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3",
+              "sha256": "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_msvc/0.48.0/download"
+                "https://static.crates.io/crates/base64/0.9.3/download"
               ],
-              "strip_prefix": "windows_aarch64_msvc-0.48.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_aarch64_msvc-0.48.0.bazel"
+              "strip_prefix": "base64-0.9.3",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.base64-0.9.3.bazel"
             }
           },
           "cui__rustc-serialize-0.3.25": {
@@ -7716,7 +11264,7 @@
               "sha256": "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rustc-serialize/0.3.25/download"
+                "https://static.crates.io/crates/rustc-serialize/0.3.25/download"
               ],
               "strip_prefix": "rustc-serialize-0.3.25",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rustc-serialize-0.3.25.bazel"
@@ -7729,7 +11277,7 @@
               "sha256": "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anyhow/1.0.71/download"
+                "https://static.crates.io/crates/anyhow/1.0.71/download"
               ],
               "strip_prefix": "anyhow-1.0.71",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.anyhow-1.0.71.bazel"
@@ -7742,7 +11290,7 @@
               "sha256": "6a1d370115171e3ae03c5c6d4f7d096f2981a40ddccb98dfd704c773530ba73b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-path/0.10.0/download"
+                "https://static.crates.io/crates/gix-path/0.10.0/download"
               ],
               "strip_prefix": "gix-path-0.10.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-path-0.10.0.bazel"
@@ -7755,38 +11303,12 @@
               "sha256": "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hermit-abi/0.3.1/download"
+                "https://static.crates.io/crates/hermit-abi/0.3.1/download"
               ],
               "strip_prefix": "hermit-abi-0.3.1",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.hermit-abi-0.3.1.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__multipart-0.18.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "00dec633863867f29cb39df64a397cdf4a6354708ddd7759f70c7fb51c5f9182",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/multipart/0.18.0/download"
-              ],
-              "strip_prefix": "multipart-0.18.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.multipart-0.18.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__android_system_properties-0.1.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/android_system_properties/0.1.5/download"
-              ],
-              "strip_prefix": "android_system_properties-0.1.5",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.android_system_properties-0.1.5.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__cc-1.0.83": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7794,77 +11316,12 @@
               "sha256": "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/cc/1.0.83/download"
+                "https://static.crates.io/crates/cc/1.0.83/download"
               ],
               "strip_prefix": "cc-1.0.83",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.cc-1.0.83.bazel"
             }
           },
-          "cui__gix-ref-0.37.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "22e6b749660b613641769edc1954132eb8071a13c32224891686091bef078de4",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-ref/0.37.0/download"
-              ],
-              "strip_prefix": "gix-ref-0.37.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-ref-0.37.0.bazel"
-            }
-          },
-          "cui__rand-0.8.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rand/0.8.5/download"
-              ],
-              "strip_prefix": "rand-0.8.5",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rand-0.8.5.bazel"
-            }
-          },
-          "cui__num-integer-0.1.45": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/num-integer/0.1.45/download"
-              ],
-              "strip_prefix": "num-integer-0.1.45",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-integer-0.1.45.bazel"
-            }
-          },
-          "rules_rust_bindgen__anstyle-query-1.0.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/anstyle-query/1.0.0/download"
-              ],
-              "strip_prefix": "anstyle-query-1.0.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.anstyle-query-1.0.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__hermit-abi-0.3.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/hermit-abi/0.3.2/download"
-              ],
-              "strip_prefix": "hermit-abi-0.3.2",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.hermit-abi-0.3.2.bazel"
-            }
-          },
           "rrra__utf8parse-0.2.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7872,23 +11329,23 @@
               "sha256": "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/utf8parse/0.2.1/download"
+                "https://static.crates.io/crates/utf8parse/0.2.1/download"
               ],
               "strip_prefix": "utf8parse-0.2.1",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.utf8parse-0.2.1.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__getrandom-0.2.10": {
+          "rules_rust_proto__futures-cpupool-0.1.8": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427",
+              "sha256": "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/getrandom/0.2.10/download"
+                "https://static.crates.io/crates/futures-cpupool/0.1.8/download"
               ],
-              "strip_prefix": "getrandom-0.2.10",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.getrandom-0.2.10.bazel"
+              "strip_prefix": "futures-cpupool-0.1.8",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.futures-cpupool-0.1.8.bazel"
             }
           },
           "cargo_bazel.buildifier-windows-amd64.exe": {
@@ -7910,38 +11367,12 @@
               "sha256": "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/regex/1.10.2/download"
+                "https://static.crates.io/crates/regex/1.10.2/download"
               ],
               "strip_prefix": "regex-1.10.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.regex-1.10.2.bazel"
             }
           },
-          "rules_rust_prost__httparse-1.8.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/httparse/1.8.0/download"
-              ],
-              "strip_prefix": "httparse-1.8.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.httparse-1.8.0.bazel"
-            }
-          },
-          "rules_rust_bindgen__shlex-1.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/shlex/1.1.0/download"
-              ],
-              "strip_prefix": "shlex-1.1.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.shlex-1.1.0.bazel"
-            }
-          },
           "rrra__log-0.4.19": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -7949,7 +11380,7 @@
               "sha256": "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/log/0.4.19/download"
+                "https://static.crates.io/crates/log/0.4.19/download"
               ],
               "strip_prefix": "log-0.4.19",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.log-0.4.19.bazel"
@@ -7962,51 +11393,12 @@
               "sha256": "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/cargo_metadata/0.18.1/download"
+                "https://static.crates.io/crates/cargo_metadata/0.18.1/download"
               ],
               "strip_prefix": "cargo_metadata-0.18.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cargo_metadata-0.18.1.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__predicates-1.0.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f49cfaf7fdaa3bfacc6fa3e7054e65148878354a5cfddcf661df4c851f8021df",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/predicates/1.0.8/download"
-              ],
-              "strip_prefix": "predicates-1.0.8",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.predicates-1.0.8.bazel"
-            }
-          },
-          "rrra__windows-targets-0.48.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows-targets/0.48.1/download"
-              ],
-              "strip_prefix": "windows-targets-0.48.1",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows-targets-0.48.1.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__serde_json-1.0.102": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b5062a995d481b2308b6064e9af76011f2921c35f97b0468811ed9f6cd91dfed",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/serde_json/1.0.102/download"
-              ],
-              "strip_prefix": "serde_json-1.0.102",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.serde_json-1.0.102.bazel"
-            }
-          },
           "cui__gix-fs-0.7.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8014,64 +11406,12 @@
               "sha256": "09815faba62fe9b32d918b75a554686c98e43f7d48c43a80df58eb718e5c6635",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-fs/0.7.0/download"
+                "https://static.crates.io/crates/gix-fs/0.7.0/download"
               ],
               "strip_prefix": "gix-fs-0.7.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-fs-0.7.0.bazel"
             }
           },
-          "rrra__clap_builder-4.3.11": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "98c59138d527eeaf9b53f35a77fcc1fad9d883116070c63d5de1c7dc7b00c72b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/clap_builder/4.3.11/download"
-              ],
-              "strip_prefix": "clap_builder-4.3.11",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.clap_builder-4.3.11.bazel"
-            }
-          },
-          "rules_rust_prost__windows-sys-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows-sys/0.48.0/download"
-              ],
-              "strip_prefix": "windows-sys-0.48.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows-sys-0.48.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__windows_i686_gnu-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_gnu/0.48.0/download"
-              ],
-              "strip_prefix": "windows_i686_gnu-0.48.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows_i686_gnu-0.48.0.bazel"
-            }
-          },
-          "cui__gix-lock-10.0.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "47fc96fa8b6b6d33555021907c81eb3b27635daecf6e630630bdad44f8feaa95",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-lock/10.0.0/download"
-              ],
-              "strip_prefix": "gix-lock-10.0.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-lock-10.0.0.bazel"
-            }
-          },
           "cui__gix-sec-0.10.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8079,25 +11419,12 @@
               "sha256": "92b9542ac025a8c02ed5d17b3fc031a111a384e859d0be3532ec4d58c40a0f28",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-sec/0.10.0/download"
+                "https://static.crates.io/crates/gix-sec/0.10.0/download"
               ],
               "strip_prefix": "gix-sec-0.10.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-sec-0.10.0.bazel"
             }
           },
-          "rules_rust_prost__indexmap-1.9.3": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/indexmap/1.9.3/download"
-              ],
-              "strip_prefix": "indexmap-1.9.3",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.indexmap-1.9.3.bazel"
-            }
-          },
           "cui__gix-trace-0.1.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8105,51 +11432,12 @@
               "sha256": "96b6d623a1152c3facb79067d6e2ecdae48130030cf27d6eb21109f13bd7b836",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-trace/0.1.3/download"
+                "https://static.crates.io/crates/gix-trace/0.1.3/download"
               ],
               "strip_prefix": "gix-trace-0.1.3",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-trace-0.1.3.bazel"
             }
           },
-          "cui__num-iter-0.1.43": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/num-iter/0.1.43/download"
-              ],
-              "strip_prefix": "num-iter-0.1.43",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-iter-0.1.43.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__ryu-1.0.14": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "fe232bdf6be8c8de797b22184ee71118d63780ea42ac85b61d1baa6d3b782ae9",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/ryu/1.0.14/download"
-              ],
-              "strip_prefix": "ryu-1.0.14",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.ryu-1.0.14.bazel"
-            }
-          },
-          "rules_rust_prost__lazy_static-1.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/lazy_static/1.4.0/download"
-              ],
-              "strip_prefix": "lazy_static-1.4.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.lazy_static-1.4.0.bazel"
-            }
-          },
           "cui__humansize-2.1.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8157,7 +11445,7 @@
               "sha256": "6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/humansize/2.1.3/download"
+                "https://static.crates.io/crates/humansize/2.1.3/download"
               ],
               "strip_prefix": "humansize-2.1.3",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.humansize-2.1.3.bazel"
@@ -8170,7 +11458,7 @@
               "sha256": "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
+                "https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
               ],
               "strip_prefix": "winapi-x86_64-pc-windows-gnu-0.4.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel"
@@ -8183,7 +11471,7 @@
               "sha256": "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/io-lifetimes/1.0.11/download"
+                "https://static.crates.io/crates/io-lifetimes/1.0.11/download"
               ],
               "strip_prefix": "io-lifetimes-1.0.11",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.io-lifetimes-1.0.11.bazel"
@@ -8196,7 +11484,7 @@
               "sha256": "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tower-service/0.3.2/download"
+                "https://static.crates.io/crates/tower-service/0.3.2/download"
               ],
               "strip_prefix": "tower-service-0.3.2",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tower-service-0.3.2.bazel"
@@ -8209,64 +11497,12 @@
               "sha256": "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/diff/0.1.13/download"
+                "https://static.crates.io/crates/diff/0.1.13/download"
               ],
               "strip_prefix": "diff-0.1.13",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.diff-0.1.13.bazel"
             }
           },
-          "rules_rust_prost__multimap-0.8.3": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/multimap/0.8.3/download"
-              ],
-              "strip_prefix": "multimap-0.8.3",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.multimap-0.8.3.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__difference-2.0.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/difference/2.0.0/download"
-              ],
-              "strip_prefix": "difference-2.0.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.difference-2.0.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__unicode-segmentation-1.10.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicode-segmentation/1.10.1/download"
-              ],
-              "strip_prefix": "unicode-segmentation-1.10.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicode-segmentation-1.10.1.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__proc-macro2-1.0.64": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "78803b62cbf1f46fde80d7c0e803111524b9877184cfe7c3033659490ac7a7da",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/proc-macro2/1.0.64/download"
-              ],
-              "strip_prefix": "proc-macro2-1.0.64",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.proc-macro2-1.0.64.bazel"
-            }
-          },
           "cui__rand_core-0.4.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8274,38 +11510,12 @@
               "sha256": "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rand_core/0.4.2/download"
+                "https://static.crates.io/crates/rand_core/0.4.2/download"
               ],
               "strip_prefix": "rand_core-0.4.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rand_core-0.4.2.bazel"
             }
           },
-          "rrra__cc-1.0.79": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/cc/1.0.79/download"
-              ],
-              "strip_prefix": "cc-1.0.79",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.cc-1.0.79.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__rustls-webpki-0.101.7": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rustls-webpki/0.101.7/download"
-              ],
-              "strip_prefix": "rustls-webpki-0.101.7",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rustls-webpki-0.101.7.bazel"
-            }
-          },
           "cui__phf-0.11.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8313,7 +11523,7 @@
               "sha256": "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/phf/0.11.2/download"
+                "https://static.crates.io/crates/phf/0.11.2/download"
               ],
               "strip_prefix": "phf-0.11.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.phf-0.11.2.bazel"
@@ -8326,7 +11536,7 @@
               "sha256": "90a2e577034352f9aa9352730fcf2562c68957f2e9b9ee70ab6379510e49e2fe",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-threads-xform/0.2.91/download"
+                "https://static.crates.io/crates/wasm-bindgen-threads-xform/0.2.91/download"
               ],
               "strip_prefix": "wasm-bindgen-threads-xform-0.2.91",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-threads-xform-0.2.91.bazel"
@@ -8339,20 +11549,12 @@
               "sha256": "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi/0.3.9/download"
+                "https://static.crates.io/crates/winapi/0.3.9/download"
               ],
               "strip_prefix": "winapi-0.3.9",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.winapi-0.3.9.bazel"
             }
           },
-          "rules_rust_prost": {
-            "bzlFile": "@@rules_rust~//crate_universe/private:crates_vendor.bzl",
-            "ruleClassName": "crates_vendor_remote_repository",
-            "attributes": {
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.bazel",
-              "defs_module": "@@rules_rust~//proto/prost/private/3rdparty/crates:defs.bzl"
-            }
-          },
           "cui__wasm-bindgen-0.2.87": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8360,25 +11562,12 @@
               "sha256": "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen/0.2.87/download"
+                "https://static.crates.io/crates/wasm-bindgen/0.2.87/download"
               ],
               "strip_prefix": "wasm-bindgen-0.2.87",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.wasm-bindgen-0.2.87.bazel"
             }
           },
-          "rules_rust_bindgen__quote-1.0.28": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/quote/1.0.28/download"
-              ],
-              "strip_prefix": "quote-1.0.28",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.quote-1.0.28.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__wasmparser-0.102.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8386,25 +11575,12 @@
               "sha256": "48134de3d7598219ab9eaf6b91b15d8e50d31da76b8519fe4ecfcec2cf35104b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasmparser/0.102.0/download"
+                "https://static.crates.io/crates/wasmparser/0.102.0/download"
               ],
               "strip_prefix": "wasmparser-0.102.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasmparser-0.102.0.bazel"
             }
           },
-          "cui__anstyle-query-1.0.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/anstyle-query/1.0.0/download"
-              ],
-              "strip_prefix": "anstyle-query-1.0.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.anstyle-query-1.0.0.bazel"
-            }
-          },
           "cui__winapi-x86_64-pc-windows-gnu-0.4.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8412,12 +11588,25 @@
               "sha256": "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
+                "https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
               ],
               "strip_prefix": "winapi-x86_64-pc-windows-gnu-0.4.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel"
             }
           },
+          "rules_rust_proto__grpc-compiler-0.6.2": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "907274ce8ee7b40a0d0b0db09022ea22846a47cfb1fc8ad2c983c70001b4ffb1",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/grpc-compiler/0.6.2/download"
+              ],
+              "strip_prefix": "grpc-compiler-0.6.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.grpc-compiler-0.6.2.bazel"
+            }
+          },
           "rrra__heck-0.4.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8425,7 +11614,7 @@
               "sha256": "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/heck/0.4.1/download"
+                "https://static.crates.io/crates/heck/0.4.1/download"
               ],
               "strip_prefix": "heck-0.4.1",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.heck-0.4.1.bazel"
@@ -8438,7 +11627,7 @@
               "sha256": "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hermit-abi/0.2.6/download"
+                "https://static.crates.io/crates/hermit-abi/0.2.6/download"
               ],
               "strip_prefix": "hermit-abi-0.2.6",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.hermit-abi-0.2.6.bazel"
@@ -8451,64 +11640,12 @@
               "sha256": "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/autocfg/1.1.0/download"
+                "https://static.crates.io/crates/autocfg/1.1.0/download"
               ],
               "strip_prefix": "autocfg-1.1.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.autocfg-1.1.0.bazel"
             }
           },
-          "cui__bumpalo-3.13.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bumpalo/3.13.0/download"
-              ],
-              "strip_prefix": "bumpalo-3.13.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.bumpalo-3.13.0.bazel"
-            }
-          },
-          "rules_rust_prost__cfg-if-1.0.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/cfg-if/1.0.0/download"
-              ],
-              "strip_prefix": "cfg-if-1.0.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.cfg-if-1.0.0.bazel"
-            }
-          },
-          "rules_rust_bindgen__anstyle-parse-0.2.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e765fd216e48e067936442276d1d57399e37bce53c264d6fefbe298080cb57ee",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/anstyle-parse/0.2.0/download"
-              ],
-              "strip_prefix": "anstyle-parse-0.2.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.anstyle-parse-0.2.0.bazel"
-            }
-          },
-          "rules_rust_bindgen__bindgen-0.69.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9ffcebc3849946a7170a05992aac39da343a90676ab392c51a4280981d6379c2",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bindgen/0.69.1/download"
-              ],
-              "strip_prefix": "bindgen-0.69.1",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.bindgen-0.69.1.bazel"
-            }
-          },
           "cui__version_check-0.9.4": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8516,25 +11653,12 @@
               "sha256": "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/version_check/0.9.4/download"
+                "https://static.crates.io/crates/version_check/0.9.4/download"
               ],
               "strip_prefix": "version_check-0.9.4",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.version_check-0.9.4.bazel"
             }
           },
-          "cui__num-complex-0.1.43": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b288631d7878aaf59442cffd36910ea604ecd7745c36054328595114001c9656",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/num-complex/0.1.43/download"
-              ],
-              "strip_prefix": "num-complex-0.1.43",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-complex-0.1.43.bazel"
-            }
-          },
           "cui__gix-date-0.8.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8542,7 +11666,7 @@
               "sha256": "fc7df669639582dc7c02737642f76890b03b5544e141caba68a7d6b4eb551e0d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-date/0.8.0/download"
+                "https://static.crates.io/crates/gix-date/0.8.0/download"
               ],
               "strip_prefix": "gix-date-0.8.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-date-0.8.0.bazel"
@@ -8555,38 +11679,12 @@
               "sha256": "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/scopeguard/1.2.0/download"
+                "https://static.crates.io/crates/scopeguard/1.2.0/download"
               ],
               "strip_prefix": "scopeguard-1.2.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.scopeguard-1.2.0.bazel"
             }
           },
-          "rules_rust_prost__pin-project-1.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c95a7476719eab1e366eaf73d0260af3021184f18177925b07f54b30089ceead",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/pin-project/1.1.0/download"
-              ],
-              "strip_prefix": "pin-project-1.1.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.pin-project-1.1.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__quote-1.0.29": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/quote/1.0.29/download"
-              ],
-              "strip_prefix": "quote-1.0.29",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.quote-1.0.29.bazel"
-            }
-          },
           "rules_rust_bindgen__clang-sys-1.6.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8594,51 +11692,12 @@
               "sha256": "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/clang-sys/1.6.1/download"
+                "https://static.crates.io/crates/clang-sys/1.6.1/download"
               ],
               "strip_prefix": "clang-sys-1.6.1",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.clang-sys-1.6.1.bazel"
             }
           },
-          "cui__parse-zoneinfo-0.3.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c705f256449c60da65e11ff6626e0c16a0a0b96aaa348de61376b249bc340f41",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/parse-zoneinfo/0.3.0/download"
-              ],
-              "strip_prefix": "parse-zoneinfo-0.3.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.parse-zoneinfo-0.3.0.bazel"
-            }
-          },
-          "cui__unicode-bidi-0.3.13": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicode-bidi/0.3.13/download"
-              ],
-              "strip_prefix": "unicode-bidi-0.3.13",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unicode-bidi-0.3.13.bazel"
-            }
-          },
-          "cui__gix-traverse-0.33.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "22ef04ab3643acba289b5cedd25d6f53c0430770b1d689d1d654511e6fb81ba0",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-traverse/0.33.0/download"
-              ],
-              "strip_prefix": "gix-traverse-0.33.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-traverse-0.33.0.bazel"
-            }
-          },
           "rrra__anstyle-parse-0.2.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8646,25 +11705,12 @@
               "sha256": "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anstyle-parse/0.2.1/download"
+                "https://static.crates.io/crates/anstyle-parse/0.2.1/download"
               ],
               "strip_prefix": "anstyle-parse-0.2.1",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.anstyle-parse-0.2.1.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__stable_deref_trait-1.2.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/stable_deref_trait/1.2.0/download"
-              ],
-              "strip_prefix": "stable_deref_trait-1.2.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.stable_deref_trait-1.2.0.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__num_cpus-1.16.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8672,7 +11718,7 @@
               "sha256": "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/num_cpus/1.16.0/download"
+                "https://static.crates.io/crates/num_cpus/1.16.0/download"
               ],
               "strip_prefix": "num_cpus-1.16.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.num_cpus-1.16.0.bazel"
@@ -8697,19 +11743,6 @@
               ]
             }
           },
-          "cui__miniz_oxide-0.7.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/miniz_oxide/0.7.1/download"
-              ],
-              "strip_prefix": "miniz_oxide-0.7.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.miniz_oxide-0.7.1.bazel"
-            }
-          },
           "cui__phf_codegen-0.11.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8717,7 +11750,7 @@
               "sha256": "e8d39688d359e6b34654d328e262234662d16cc0f60ec8dcbe5e718709342a5a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/phf_codegen/0.11.2/download"
+                "https://static.crates.io/crates/phf_codegen/0.11.2/download"
               ],
               "strip_prefix": "phf_codegen-0.11.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.phf_codegen-0.11.2.bazel"
@@ -8730,49 +11763,23 @@
               "sha256": "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-util/0.1.5/download"
+                "https://static.crates.io/crates/winapi-util/0.1.5/download"
               ],
               "strip_prefix": "winapi-util-0.1.5",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.winapi-util-0.1.5.bazel"
             }
           },
-          "rules_rust_bindgen__io-lifetimes-1.0.11": {
+          "rules_rust_proto__tokio-current-thread-0.1.7": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2",
+              "sha256": "b1de0e32a83f131e002238d7ccde18211c0a5397f60cbfffcb112868c2e0e20e",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/io-lifetimes/1.0.11/download"
+                "https://static.crates.io/crates/tokio-current-thread/0.1.7/download"
               ],
-              "strip_prefix": "io-lifetimes-1.0.11",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.io-lifetimes-1.0.11.bazel"
-            }
-          },
-          "cui__unic-char-range-0.9.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unic-char-range/0.9.0/download"
-              ],
-              "strip_prefix": "unic-char-range-0.9.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-char-range-0.9.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__leb128-0.2.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/leb128/0.2.5/download"
-              ],
-              "strip_prefix": "leb128-0.2.5",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.leb128-0.2.5.bazel"
+              "strip_prefix": "tokio-current-thread-0.1.7",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-current-thread-0.1.7.bazel"
             }
           },
           "cui__crossbeam-deque-0.8.3": {
@@ -8782,25 +11789,12 @@
               "sha256": "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/crossbeam-deque/0.8.3/download"
+                "https://static.crates.io/crates/crossbeam-deque/0.8.3/download"
               ],
               "strip_prefix": "crossbeam-deque-0.8.3",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crossbeam-deque-0.8.3.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__predicates-core-1.0.6": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/predicates-core/1.0.6/download"
-              ],
-              "strip_prefix": "predicates-core-1.0.6",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.predicates-core-1.0.6.bazel"
-            }
-          },
           "cui__android_system_properties-0.1.5": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8808,51 +11802,12 @@
               "sha256": "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/android_system_properties/0.1.5/download"
+                "https://static.crates.io/crates/android_system_properties/0.1.5/download"
               ],
               "strip_prefix": "android_system_properties-0.1.5",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.android_system_properties-0.1.5.bazel"
             }
           },
-          "cui__windows_aarch64_msvc-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_msvc/0.48.0/download"
-              ],
-              "strip_prefix": "windows_aarch64_msvc-0.48.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_aarch64_msvc-0.48.0.bazel"
-            }
-          },
-          "cui__anstyle-1.0.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/anstyle/1.0.1/download"
-              ],
-              "strip_prefix": "anstyle-1.0.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.anstyle-1.0.1.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__wasm-bindgen-0.2.91": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen/0.2.91/download"
-              ],
-              "strip_prefix": "wasm-bindgen-0.2.91",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-0.2.91.bazel"
-            }
-          },
           "cui__pest_meta-2.7.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8860,7 +11815,7 @@
               "sha256": "a01f71cb40bd8bb94232df14b946909e14660e33fc05db3e50ae2a82d7ea0ca0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/pest_meta/2.7.0/download"
+                "https://static.crates.io/crates/pest_meta/2.7.0/download"
               ],
               "strip_prefix": "pest_meta-2.7.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.pest_meta-2.7.0.bazel"
@@ -8873,7 +11828,7 @@
               "sha256": "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anstyle-wincon/1.0.1/download"
+                "https://static.crates.io/crates/anstyle-wincon/1.0.1/download"
               ],
               "strip_prefix": "anstyle-wincon-1.0.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.anstyle-wincon-1.0.1.bazel"
@@ -8886,25 +11841,12 @@
               "sha256": "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anstyle-query/1.0.0/download"
+                "https://static.crates.io/crates/anstyle-query/1.0.0/download"
               ],
               "strip_prefix": "anstyle-query-1.0.0",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.anstyle-query-1.0.0.bazel"
             }
           },
-          "rules_rust_prost__winapi-i686-pc-windows-gnu-0.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
-              ],
-              "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
-            }
-          },
           "rrra__clap_derive-4.3.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8912,7 +11854,7 @@
               "sha256": "b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/clap_derive/4.3.2/download"
+                "https://static.crates.io/crates/clap_derive/4.3.2/download"
               ],
               "strip_prefix": "clap_derive-4.3.2",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.clap_derive-4.3.2.bazel"
@@ -8925,7 +11867,7 @@
               "sha256": "1884c7b41ea0875217c1be9ce91322f90bde433e91d374d0e1276073a51ccc60",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-hash/0.13.1/download"
+                "https://static.crates.io/crates/gix-hash/0.13.1/download"
               ],
               "strip_prefix": "gix-hash-0.13.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-hash-0.13.1.bazel"
@@ -8938,38 +11880,12 @@
               "sha256": "0f1b8c13cb1f814b634a96b2c725449fe7ed464a7b8781de8688be5ffbd3f305",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/maybe-async/0.2.7/download"
+                "https://static.crates.io/crates/maybe-async/0.2.7/download"
               ],
               "strip_prefix": "maybe-async-0.2.7",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.maybe-async-0.2.7.bazel"
             }
           },
-          "cui__regex-automata-0.3.3": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/regex-automata/0.3.3/download"
-              ],
-              "strip_prefix": "regex-automata-0.3.3",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.regex-automata-0.3.3.bazel"
-            }
-          },
-          "rrra__windows_aarch64_msvc-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_msvc/0.48.0/download"
-              ],
-              "strip_prefix": "windows_aarch64_msvc-0.48.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_aarch64_msvc-0.48.0.bazel"
-            }
-          },
           "cui__gix-filter-0.5.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -8977,7 +11893,7 @@
               "sha256": "1be40d28cd41445bb6cd52c4d847d915900e5466f7433eaee6a9e0a3d1d88b08",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-filter/0.5.0/download"
+                "https://static.crates.io/crates/gix-filter/0.5.0/download"
               ],
               "strip_prefix": "gix-filter-0.5.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-filter-0.5.0.bazel"
@@ -8990,38 +11906,12 @@
               "sha256": "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/mime/0.3.17/download"
+                "https://static.crates.io/crates/mime/0.3.17/download"
               ],
               "strip_prefix": "mime-0.3.17",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.mime-0.3.17.bazel"
             }
           },
-          "rules_rust_prost__which-4.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/which/4.4.0/download"
-              ],
-              "strip_prefix": "which-4.4.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.which-4.4.0.bazel"
-            }
-          },
-          "rrra__anstyle-wincon-1.0.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/anstyle-wincon/1.0.1/download"
-              ],
-              "strip_prefix": "anstyle-wincon-1.0.1",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.anstyle-wincon-1.0.1.bazel"
-            }
-          },
           "rrra__rustix-0.37.23": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9029,7 +11919,7 @@
               "sha256": "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rustix/0.37.23/download"
+                "https://static.crates.io/crates/rustix/0.37.23/download"
               ],
               "strip_prefix": "rustix-0.37.23",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.rustix-0.37.23.bazel"
@@ -9042,51 +11932,12 @@
               "sha256": "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hermit-abi/0.3.1/download"
+                "https://static.crates.io/crates/hermit-abi/0.3.1/download"
               ],
               "strip_prefix": "hermit-abi-0.3.1",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.hermit-abi-0.3.1.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__adler-1.0.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/adler/1.0.2/download"
-              ],
-              "strip_prefix": "adler-1.0.2",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.adler-1.0.2.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__log-0.4.19": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/log/0.4.19/download"
-              ],
-              "strip_prefix": "log-0.4.19",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.log-0.4.19.bazel"
-            }
-          },
-          "rules_rust_bindgen__heck-0.4.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/heck/0.4.1/download"
-              ],
-              "strip_prefix": "heck-0.4.1",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.heck-0.4.1.bazel"
-            }
-          },
           "cui__maplit-1.0.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9094,7 +11945,7 @@
               "sha256": "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/maplit/1.0.2/download"
+                "https://static.crates.io/crates/maplit/1.0.2/download"
               ],
               "strip_prefix": "maplit-1.0.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.maplit-1.0.2.bazel"
@@ -9107,25 +11958,12 @@
               "sha256": "15e3fc8c0c74267e2df136e5e5fb656a464158aa57624053375eb9c8c6e25ae2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/syn/2.0.25/download"
+                "https://static.crates.io/crates/syn/2.0.25/download"
               ],
               "strip_prefix": "syn-2.0.25",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.syn-2.0.25.bazel"
             }
           },
-          "cui__digest-0.10.7": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/digest/0.10.7/download"
-              ],
-              "strip_prefix": "digest-0.10.7",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.digest-0.10.7.bazel"
-            }
-          },
           "cui__gix-worktree-0.26.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9133,25 +11971,12 @@
               "sha256": "9f5e32972801bd82d56609e6fc84efc358fa1f11f25c5e83b7807ee2280f14fe",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-worktree/0.26.0/download"
+                "https://static.crates.io/crates/gix-worktree/0.26.0/download"
               ],
               "strip_prefix": "gix-worktree-0.26.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-worktree-0.26.0.bazel"
             }
           },
-          "cui__equivalent-1.0.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/equivalent/1.0.1/download"
-              ],
-              "strip_prefix": "equivalent-1.0.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.equivalent-1.0.1.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__semver-1.0.17": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9159,33 +11984,12 @@
               "sha256": "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/semver/1.0.17/download"
+                "https://static.crates.io/crates/semver/1.0.17/download"
               ],
               "strip_prefix": "semver-1.0.17",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.semver-1.0.17.bazel"
             }
           },
-          "cui": {
-            "bzlFile": "@@rules_rust~//crate_universe/private:crates_vendor.bzl",
-            "ruleClassName": "crates_vendor_remote_repository",
-            "attributes": {
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.bazel",
-              "defs_module": "@@rules_rust~//crate_universe/3rdparty/crates:defs.bzl"
-            }
-          },
-          "rules_rust_wasm_bindgen__memchr-2.5.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/memchr/2.5.0/download"
-              ],
-              "strip_prefix": "memchr-2.5.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.memchr-2.5.0.bazel"
-            }
-          },
           "cui__once_cell-1.18.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9193,7 +11997,7 @@
               "sha256": "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/once_cell/1.18.0/download"
+                "https://static.crates.io/crates/once_cell/1.18.0/download"
               ],
               "strip_prefix": "once_cell-1.18.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.once_cell-1.18.0.bazel"
@@ -9206,25 +12010,12 @@
               "sha256": "449167e2832691a1bff24cde28d2804e90e09586a448c8e76984792c44334a6b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasmparser/0.80.2/download"
+                "https://static.crates.io/crates/wasmparser/0.80.2/download"
               ],
               "strip_prefix": "wasmparser-0.80.2",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasmparser-0.80.2.bazel"
             }
           },
-          "rrra__once_cell-1.18.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/once_cell/1.18.0/download"
-              ],
-              "strip_prefix": "once_cell-1.18.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.once_cell-1.18.0.bazel"
-            }
-          },
           "cui__heck-0.4.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9232,7 +12023,7 @@
               "sha256": "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/heck/0.4.1/download"
+                "https://static.crates.io/crates/heck/0.4.1/download"
               ],
               "strip_prefix": "heck-0.4.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.heck-0.4.1.bazel"
@@ -9245,51 +12036,12 @@
               "sha256": "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
+                "https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download"
               ],
               "strip_prefix": "winapi-x86_64-pc-windows-gnu-0.4.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel"
             }
           },
-          "rules_rust_bindgen__is-terminal-0.4.7": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/is-terminal/0.4.7/download"
-              ],
-              "strip_prefix": "is-terminal-0.4.7",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.is-terminal-0.4.7.bazel"
-            }
-          },
-          "cui__autocfg-1.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/autocfg/1.1.0/download"
-              ],
-              "strip_prefix": "autocfg-1.1.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.autocfg-1.1.0.bazel"
-            }
-          },
-          "rules_rust_prost__tokio-util-0.7.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tokio-util/0.7.8/download"
-              ],
-              "strip_prefix": "tokio-util-0.7.8",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tokio-util-0.7.8.bazel"
-            }
-          },
           "libc": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9310,7 +12062,7 @@
               "sha256": "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/either/1.8.1/download"
+                "https://static.crates.io/crates/either/1.8.1/download"
               ],
               "strip_prefix": "either-1.8.1",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.either-1.8.1.bazel"
@@ -9323,51 +12075,12 @@
               "sha256": "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/minimal-lexical/0.2.1/download"
+                "https://static.crates.io/crates/minimal-lexical/0.2.1/download"
               ],
               "strip_prefix": "minimal-lexical-0.2.1",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.minimal-lexical-0.2.1.bazel"
             }
           },
-          "rules_rust_prost__tokio-io-timeout-1.2.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tokio-io-timeout/1.2.0/download"
-              ],
-              "strip_prefix": "tokio-io-timeout-1.2.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tokio-io-timeout-1.2.0.bazel"
-            }
-          },
-          "cui__num-traits-0.2.15": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/num-traits/0.2.15/download"
-              ],
-              "strip_prefix": "num-traits-0.2.15",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-traits-0.2.15.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__base64-0.13.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/base64/0.13.1/download"
-              ],
-              "strip_prefix": "base64-0.13.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.base64-0.13.1.bazel"
-            }
-          },
           "rrra__regex-automata-0.3.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9375,7 +12088,7 @@
               "sha256": "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/regex-automata/0.3.3/download"
+                "https://static.crates.io/crates/regex-automata/0.3.3/download"
               ],
               "strip_prefix": "regex-automata-0.3.3",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.regex-automata-0.3.3.bazel"
@@ -9388,7 +12101,7 @@
               "sha256": "62bde1398b09b9f93fc2fc9b9da86e362693e999d3a54a8ac47a99a5a73f638b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/spdx/0.10.3/download"
+                "https://static.crates.io/crates/spdx/0.10.3/download"
               ],
               "strip_prefix": "spdx-0.10.3",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.spdx-0.10.3.bazel"
@@ -9401,7 +12114,7 @@
               "sha256": "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/normalize-line-endings/0.3.0/download"
+                "https://static.crates.io/crates/normalize-line-endings/0.3.0/download"
               ],
               "strip_prefix": "normalize-line-endings-0.3.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.normalize-line-endings-0.3.0.bazel"
@@ -9414,7 +12127,7 @@
               "sha256": "d357c7ae988e7d2182f7d7871d0b963962420b0678b0997ce7de72001aeab782",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/h2/0.3.19/download"
+                "https://static.crates.io/crates/h2/0.3.19/download"
               ],
               "strip_prefix": "h2-0.3.19",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.h2-0.3.19.bazel"
@@ -9427,7 +12140,7 @@
               "sha256": "76c956109dcb41436a39391139d9b6e2d0a5e0b158e1293ef352ec977e5e36c5",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasmparser/0.108.0/download"
+                "https://static.crates.io/crates/wasmparser/0.108.0/download"
               ],
               "strip_prefix": "wasmparser-0.108.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasmparser-0.108.0.bazel"
@@ -9440,36 +12153,23 @@
               "sha256": "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/colorchoice/1.0.0/download"
+                "https://static.crates.io/crates/colorchoice/1.0.0/download"
               ],
               "strip_prefix": "colorchoice-1.0.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.colorchoice-1.0.0.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__humantime-2.1.0": {
+          "rules_rust_proto__tokio-sync-0.1.8": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4",
+              "sha256": "edfe50152bc8164fcc456dab7891fa9bf8beaf01c5ee7e1dd43a397c3cf87dee",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/humantime/2.1.0/download"
+                "https://static.crates.io/crates/tokio-sync/0.1.8/download"
               ],
-              "strip_prefix": "humantime-2.1.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.humantime-2.1.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__rand_chacha-0.3.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rand_chacha/0.3.1/download"
-              ],
-              "strip_prefix": "rand_chacha-0.3.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rand_chacha-0.3.1.bazel"
+              "strip_prefix": "tokio-sync-0.1.8",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-sync-0.1.8.bazel"
             }
           },
           "rules_rust_bindgen__nom-7.1.3": {
@@ -9479,64 +12179,12 @@
               "sha256": "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/nom/7.1.3/download"
+                "https://static.crates.io/crates/nom/7.1.3/download"
               ],
               "strip_prefix": "nom-7.1.3",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.nom-7.1.3.bazel"
             }
           },
-          "cui__strsim-0.10.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/strsim/0.10.0/download"
-              ],
-              "strip_prefix": "strsim-0.10.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.strsim-0.10.0.bazel"
-            }
-          },
-          "rules_rust_prost__windows_aarch64_gnullvm-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.48.0/download"
-              ],
-              "strip_prefix": "windows_aarch64_gnullvm-0.48.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows_aarch64_gnullvm-0.48.0.bazel"
-            }
-          },
-          "cui__cfg-if-1.0.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/cfg-if/1.0.0/download"
-              ],
-              "strip_prefix": "cfg-if-1.0.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cfg-if-1.0.0.bazel"
-            }
-          },
-          "cui__errno-dragonfly-0.1.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/errno-dragonfly/0.1.2/download"
-              ],
-              "strip_prefix": "errno-dragonfly-0.1.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.errno-dragonfly-0.1.2.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__hashbrown-0.12.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9544,7 +12192,7 @@
               "sha256": "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hashbrown/0.12.3/download"
+                "https://static.crates.io/crates/hashbrown/0.12.3/download"
               ],
               "strip_prefix": "hashbrown-0.12.3",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.hashbrown-0.12.3.bazel"
@@ -9557,25 +12205,12 @@
               "sha256": "1640e5cc7fb47dbb8338fd471b105e7ed6c3cb2aeb00c2e067127ffd3764a05d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/clap/4.3.11/download"
+                "https://static.crates.io/crates/clap/4.3.11/download"
               ],
               "strip_prefix": "clap-4.3.11",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.clap-4.3.11.bazel"
             }
           },
-          "rules_rust_bindgen__regex-syntax-0.7.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/regex-syntax/0.7.2/download"
-              ],
-              "strip_prefix": "regex-syntax-0.7.2",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.regex-syntax-0.7.2.bazel"
-            }
-          },
           "rules_rust_bindgen__cexpr-0.6.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9583,25 +12218,12 @@
               "sha256": "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/cexpr/0.6.0/download"
+                "https://static.crates.io/crates/cexpr/0.6.0/download"
               ],
               "strip_prefix": "cexpr-0.6.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.cexpr-0.6.0.bazel"
             }
           },
-          "cui__proc-macro2-1.0.64": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "78803b62cbf1f46fde80d7c0e803111524b9877184cfe7c3033659490ac7a7da",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/proc-macro2/1.0.64/download"
-              ],
-              "strip_prefix": "proc-macro2-1.0.64",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.proc-macro2-1.0.64.bazel"
-            }
-          },
           "cui__num-bigint-0.1.44": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9609,25 +12231,12 @@
               "sha256": "e63899ad0da84ce718c14936262a41cee2c79c981fc0a0e7c7beb47d5a07e8c1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/num-bigint/0.1.44/download"
+                "https://static.crates.io/crates/num-bigint/0.1.44/download"
               ],
               "strip_prefix": "num-bigint-0.1.44",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-bigint-0.1.44.bazel"
             }
           },
-          "cui__gix-prompt-0.7.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5c9a913769516f5e9d937afac206fb76428e3d7238e538845842887fda584678",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-prompt/0.7.0/download"
-              ],
-              "strip_prefix": "gix-prompt-0.7.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-prompt-0.7.0.bazel"
-            }
-          },
           "cui__nu-ansi-term-0.46.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9635,12 +12244,25 @@
               "sha256": "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/nu-ansi-term/0.46.0/download"
+                "https://static.crates.io/crates/nu-ansi-term/0.46.0/download"
               ],
               "strip_prefix": "nu-ansi-term-0.46.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.nu-ansi-term-0.46.0.bazel"
             }
           },
+          "rules_rust_proto__winapi-i686-pc-windows-gnu-0.4.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
+              ],
+              "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
+            }
+          },
           "cui__lazy_static-1.4.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9648,7 +12270,7 @@
               "sha256": "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/lazy_static/1.4.0/download"
+                "https://static.crates.io/crates/lazy_static/1.4.0/download"
               ],
               "strip_prefix": "lazy_static-1.4.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.lazy_static-1.4.0.bazel"
@@ -9661,7 +12283,7 @@
               "sha256": "389894603bd18c46fa56231694f8d827779c0951a667087194cf9de94ed24682",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/serde_derive/1.0.171/download"
+                "https://static.crates.io/crates/serde_derive/1.0.171/download"
               ],
               "strip_prefix": "serde_derive-1.0.171",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.serde_derive-1.0.171.bazel"
@@ -9674,7 +12296,7 @@
               "sha256": "41ed9a86bf92ae6580e0a31281f65a1b1d867c0cc68d5346e2ae128dddfa6a7d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anstyle/1.0.0/download"
+                "https://static.crates.io/crates/anstyle/1.0.0/download"
               ],
               "strip_prefix": "anstyle-1.0.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.anstyle-1.0.0.bazel"
@@ -9687,25 +12309,12 @@
               "sha256": "8a8384b1e964151aff0d5632dd9b191059d07dff358b96bd940f1b452600d7ab",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-packetline/0.16.7/download"
+                "https://static.crates.io/crates/gix-packetline/0.16.7/download"
               ],
               "strip_prefix": "gix-packetline-0.16.7",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-packetline-0.16.7.bazel"
             }
           },
-          "cui__thiserror-impl-1.0.50": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/thiserror-impl/1.0.50/download"
-              ],
-              "strip_prefix": "thiserror-impl-1.0.50",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.thiserror-impl-1.0.50.bazel"
-            }
-          },
           "cui__time-core-0.1.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9713,25 +12322,12 @@
               "sha256": "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/time-core/0.1.2/download"
+                "https://static.crates.io/crates/time-core/0.1.2/download"
               ],
               "strip_prefix": "time-core-0.1.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.time-core-0.1.2.bazel"
             }
           },
-          "rules_rust_prost__either-1.8.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/either/1.8.1/download"
-              ],
-              "strip_prefix": "either-1.8.1",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.either-1.8.1.bazel"
-            }
-          },
           "cui__itertools-0.12.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9739,7 +12335,7 @@
               "sha256": "25db6b064527c5d482d0423354fcd07a89a2dfe07b67892e62411946db7f07b0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/itertools/0.12.0/download"
+                "https://static.crates.io/crates/itertools/0.12.0/download"
               ],
               "strip_prefix": "itertools-0.12.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.itertools-0.12.0.bazel"
@@ -9752,7 +12348,7 @@
               "sha256": "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/time-macros/0.2.15/download"
+                "https://static.crates.io/crates/time-macros/0.2.15/download"
               ],
               "strip_prefix": "time-macros-0.2.15",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.time-macros-0.2.15.bazel"
@@ -9765,7 +12361,7 @@
               "sha256": "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/try-lock/0.2.4/download"
+                "https://static.crates.io/crates/try-lock/0.2.4/download"
               ],
               "strip_prefix": "try-lock-0.2.4",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.try-lock-0.2.4.bazel"
@@ -9778,25 +12374,12 @@
               "sha256": "970dff17c11e884a4a09bc76e3a17ef71e01bb13447a11e85226e254fe6d10b8",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tera/1.19.1/download"
+                "https://static.crates.io/crates/tera/1.19.1/download"
               ],
               "strip_prefix": "tera-1.19.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tera-1.19.1.bazel"
             }
           },
-          "rules_rust_bindgen__bindgen-cli-0.69.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "integrity": "sha256-iFZe4JEQqZ54KZiX+/7VA7mqAwZThu6MGBl/yvIotQE=",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bindgen-cli/0.69.1/download"
-              ],
-              "strip_prefix": "bindgen-cli-0.69.1",
-              "build_file": "@@rules_rust~//bindgen/3rdparty:BUILD.bindgen-cli.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__tempfile-3.6.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9804,7 +12387,7 @@
               "sha256": "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tempfile/3.6.0/download"
+                "https://static.crates.io/crates/tempfile/3.6.0/download"
               ],
               "strip_prefix": "tempfile-3.6.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.tempfile-3.6.0.bazel"
@@ -9817,25 +12400,12 @@
               "sha256": "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/axum-core/0.3.4/download"
+                "https://static.crates.io/crates/axum-core/0.3.4/download"
               ],
               "strip_prefix": "axum-core-0.3.4",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.axum-core-0.3.4.bazel"
             }
           },
-          "cui__thiserror-1.0.50": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/thiserror/1.0.50/download"
-              ],
-              "strip_prefix": "thiserror-1.0.50",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.thiserror-1.0.50.bazel"
-            }
-          },
           "cui__globset-0.4.11": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9843,7 +12413,7 @@
               "sha256": "1391ab1f92ffcc08911957149833e682aa3fe252b9f45f966d2ef972274c97df",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/globset/0.4.11/download"
+                "https://static.crates.io/crates/globset/0.4.11/download"
               ],
               "strip_prefix": "globset-0.4.11",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.globset-0.4.11.bazel"
@@ -9856,7 +12426,7 @@
               "sha256": "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/colorchoice/1.0.0/download"
+                "https://static.crates.io/crates/colorchoice/1.0.0/download"
               ],
               "strip_prefix": "colorchoice-1.0.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.colorchoice-1.0.0.bazel"
@@ -9869,25 +12439,12 @@
               "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows-sys/0.48.0/download"
+                "https://static.crates.io/crates/windows-sys/0.48.0/download"
               ],
               "strip_prefix": "windows-sys-0.48.0",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows-sys-0.48.0.bazel"
             }
           },
-          "rules_rust_bindgen__linux-raw-sys-0.3.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/linux-raw-sys/0.3.8/download"
-              ],
-              "strip_prefix": "linux-raw-sys-0.3.8",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.linux-raw-sys-0.3.8.bazel"
-            }
-          },
           "rules_rust_prost__libc-0.2.146": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9895,25 +12452,12 @@
               "sha256": "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/libc/0.2.146/download"
+                "https://static.crates.io/crates/libc/0.2.146/download"
               ],
               "strip_prefix": "libc-0.2.146",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.libc-0.2.146.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__regex-automata-0.3.3": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/regex-automata/0.3.3/download"
-              ],
-              "strip_prefix": "regex-automata-0.3.3",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.regex-automata-0.3.3.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__wasm-bindgen-multi-value-xform-0.2.91": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -9921,7 +12465,7 @@
               "sha256": "d1e019acde479e2f090fb7f14a51fa0077ec3a7bb12a56e0e888a82be7b5bd3f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-multi-value-xform/0.2.91/download"
+                "https://static.crates.io/crates/wasm-bindgen-multi-value-xform/0.2.91/download"
               ],
               "strip_prefix": "wasm-bindgen-multi-value-xform-0.2.91",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-multi-value-xform-0.2.91.bazel"
@@ -9934,7 +12478,7 @@
               "sha256": "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/itertools/0.10.5/download"
+                "https://static.crates.io/crates/itertools/0.10.5/download"
               ],
               "strip_prefix": "itertools-0.10.5",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.itertools-0.10.5.bazel"
@@ -9947,62 +12491,36 @@
               "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows-sys/0.48.0/download"
+                "https://static.crates.io/crates/windows-sys/0.48.0/download"
               ],
               "strip_prefix": "windows-sys-0.48.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows-sys-0.48.0.bazel"
             }
           },
-          "cui__typenum-1.16.0": {
+          "rules_rust_proto__futures-0.1.31": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba",
+              "sha256": "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/typenum/1.16.0/download"
+                "https://static.crates.io/crates/futures/0.1.31/download"
               ],
-              "strip_prefix": "typenum-1.16.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.typenum-1.16.0.bazel"
+              "strip_prefix": "futures-0.1.31",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.futures-0.1.31.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__rand-0.8.5": {
+          "rules_rust_proto__crossbeam-deque-0.7.4": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404",
+              "sha256": "c20ff29ded3204c5106278a81a38f4b482636ed4fa1e6cfbeef193291beb29ed",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rand/0.8.5/download"
+                "https://static.crates.io/crates/crossbeam-deque/0.7.4/download"
               ],
-              "strip_prefix": "rand-0.8.5",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rand-0.8.5.bazel"
-            }
-          },
-          "cui__errno-0.3.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/errno/0.3.1/download"
-              ],
-              "strip_prefix": "errno-0.3.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.errno-0.3.1.bazel"
-            }
-          },
-          "cui__num-rational-0.1.42": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/num-rational/0.1.42/download"
-              ],
-              "strip_prefix": "num-rational-0.1.42",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num-rational-0.1.42.bazel"
+              "strip_prefix": "crossbeam-deque-0.7.4",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.crossbeam-deque-0.7.4.bazel"
             }
           },
           "rules_rust_wasm_bindgen__rayon-1.7.0": {
@@ -10012,7 +12530,7 @@
               "sha256": "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rayon/1.7.0/download"
+                "https://static.crates.io/crates/rayon/1.7.0/download"
               ],
               "strip_prefix": "rayon-1.7.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rayon-1.7.0.bazel"
@@ -10025,23 +12543,23 @@
               "sha256": "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/spin/0.9.8/download"
+                "https://static.crates.io/crates/spin/0.9.8/download"
               ],
               "strip_prefix": "spin-0.9.8",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.spin-0.9.8.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__difflib-0.4.0": {
+          "rules_rust_proto__winapi-0.2.8": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8",
+              "sha256": "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/difflib/0.4.0/download"
+                "https://static.crates.io/crates/winapi/0.2.8/download"
               ],
-              "strip_prefix": "difflib-0.4.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.difflib-0.4.0.bazel"
+              "strip_prefix": "winapi-0.2.8",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.winapi-0.2.8.bazel"
             }
           },
           "rules_rust_wasm_bindgen__num-traits-0.2.15": {
@@ -10051,51 +12569,12 @@
               "sha256": "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/num-traits/0.2.15/download"
+                "https://static.crates.io/crates/num-traits/0.2.15/download"
               ],
               "strip_prefix": "num-traits-0.2.15",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.num-traits-0.2.15.bazel"
             }
           },
-          "cui__sha2-0.10.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/sha2/0.10.8/download"
-              ],
-              "strip_prefix": "sha2-0.10.8",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.sha2-0.10.8.bazel"
-            }
-          },
-          "cui__clru-0.6.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b8191fa7302e03607ff0e237d4246cc043ff5b3cb9409d995172ba3bea16b807",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/clru/0.6.1/download"
-              ],
-              "strip_prefix": "clru-0.6.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.clru-0.6.1.bazel"
-            }
-          },
-          "cui__rand-0.4.6": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rand/0.4.6/download"
-              ],
-              "strip_prefix": "rand-0.4.6",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rand-0.4.6.bazel"
-            }
-          },
           "rules_rust_prost__heck-0.4.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10103,7 +12582,7 @@
               "sha256": "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/heck/0.4.1/download"
+                "https://static.crates.io/crates/heck/0.4.1/download"
               ],
               "strip_prefix": "heck-0.4.1",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.heck-0.4.1.bazel"
@@ -10116,25 +12595,12 @@
               "sha256": "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rand_chacha/0.3.1/download"
+                "https://static.crates.io/crates/rand_chacha/0.3.1/download"
               ],
               "strip_prefix": "rand_chacha-0.3.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rand_chacha-0.3.1.bazel"
             }
           },
-          "rrra__io-lifetimes-1.0.11": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/io-lifetimes/1.0.11/download"
-              ],
-              "strip_prefix": "io-lifetimes-1.0.11",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.io-lifetimes-1.0.11.bazel"
-            }
-          },
           "rrra__anstream-0.3.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10142,38 +12608,12 @@
               "sha256": "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anstream/0.3.2/download"
+                "https://static.crates.io/crates/anstream/0.3.2/download"
               ],
               "strip_prefix": "anstream-0.3.2",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.anstream-0.3.2.bazel"
             }
           },
-          "cui__phf_shared-0.11.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/phf_shared/0.11.2/download"
-              ],
-              "strip_prefix": "phf_shared-0.11.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.phf_shared-0.11.2.bazel"
-            }
-          },
-          "rrra__bitflags-1.3.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bitflags/1.3.2/download"
-              ],
-              "strip_prefix": "bitflags-1.3.2",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
-            }
-          },
           "cui__cargo-lock-9.0.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10181,7 +12621,7 @@
               "sha256": "e11c675378efb449ed3ce8de78d75d0d80542fc98487c26aba28eb3b82feac72",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/cargo-lock/9.0.0/download"
+                "https://static.crates.io/crates/cargo-lock/9.0.0/download"
               ],
               "strip_prefix": "cargo-lock-9.0.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cargo-lock-9.0.0.bazel"
@@ -10194,7 +12634,7 @@
               "sha256": "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-util/0.1.5/download"
+                "https://static.crates.io/crates/winapi-util/0.1.5/download"
               ],
               "strip_prefix": "winapi-util-0.1.5",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.winapi-util-0.1.5.bazel"
@@ -10207,23 +12647,23 @@
               "sha256": "b953a6887648bb07a535631f2bc00fbdb2a2216f135552cb3f534ed136b9c07f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/buf_redux/0.8.4/download"
+                "https://static.crates.io/crates/buf_redux/0.8.4/download"
               ],
               "strip_prefix": "buf_redux-0.8.4",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.buf_redux-0.8.4.bazel"
             }
           },
-          "rules_rust_prost__redox_syscall-0.3.5": {
+          "rules_rust_proto__tls-api-0.1.22": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29",
+              "sha256": "049c03787a0595182357fbd487577947f4351b78ce20c3668f6d49f17feb13d1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/redox_syscall/0.3.5/download"
+                "https://static.crates.io/crates/tls-api/0.1.22/download"
               ],
-              "strip_prefix": "redox_syscall-0.3.5",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.redox_syscall-0.3.5.bazel"
+              "strip_prefix": "tls-api-0.1.22",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tls-api-0.1.22.bazel"
             }
           },
           "cui__faster-hex-0.8.1": {
@@ -10233,64 +12673,12 @@
               "sha256": "239f7bfb930f820ab16a9cd95afc26f88264cf6905c960b340a615384aa3338a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/faster-hex/0.8.1/download"
+                "https://static.crates.io/crates/faster-hex/0.8.1/download"
               ],
               "strip_prefix": "faster-hex-0.8.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.faster-hex-0.8.1.bazel"
             }
           },
-          "cui__gix-packetline-blocking-0.16.6": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7d8395f7501c84d6a1fe902035fdfd8cd86d89e2dd6be0200ec1a72fd3c92d39",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-packetline-blocking/0.16.6/download"
-              ],
-              "strip_prefix": "gix-packetline-blocking-0.16.6",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-packetline-blocking-0.16.6.bazel"
-            }
-          },
-          "cui__windows_aarch64_gnullvm-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.48.0/download"
-              ],
-              "strip_prefix": "windows_aarch64_gnullvm-0.48.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_aarch64_gnullvm-0.48.0.bazel"
-            }
-          },
-          "rules_rust_prost__tracing-core-0.1.31": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tracing-core/0.1.31/download"
-              ],
-              "strip_prefix": "tracing-core-0.1.31",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tracing-core-0.1.31.bazel"
-            }
-          },
-          "rrra__env_logger-0.10.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/env_logger/0.10.0/download"
-              ],
-              "strip_prefix": "env_logger-0.10.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.env_logger-0.10.0.bazel"
-            }
-          },
           "rules_rust_prost__hashbrown-0.12.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10298,25 +12686,12 @@
               "sha256": "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hashbrown/0.12.3/download"
+                "https://static.crates.io/crates/hashbrown/0.12.3/download"
               ],
               "strip_prefix": "hashbrown-0.12.3",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.hashbrown-0.12.3.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__aho-corasick-1.0.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/aho-corasick/1.0.2/download"
-              ],
-              "strip_prefix": "aho-corasick-1.0.2",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.aho-corasick-1.0.2.bazel"
-            }
-          },
           "cui__crossbeam-0.8.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10324,7 +12699,7 @@
               "sha256": "2801af0d36612ae591caa9568261fddce32ce6e08a7275ea334a06a4ad021a2c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/crossbeam/0.8.2/download"
+                "https://static.crates.io/crates/crossbeam/0.8.2/download"
               ],
               "strip_prefix": "crossbeam-0.8.2",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crossbeam-0.8.2.bazel"
@@ -10337,25 +12712,12 @@
               "sha256": "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/futures-channel/0.3.28/download"
+                "https://static.crates.io/crates/futures-channel/0.3.28/download"
               ],
               "strip_prefix": "futures-channel-0.3.28",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.futures-channel-0.3.28.bazel"
             }
           },
-          "cui__time-0.3.30": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/time/0.3.30/download"
-              ],
-              "strip_prefix": "time-0.3.30",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.time-0.3.30.bazel"
-            }
-          },
           "rules_rust_prost__scopeguard-1.1.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10363,25 +12725,12 @@
               "sha256": "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/scopeguard/1.1.0/download"
+                "https://static.crates.io/crates/scopeguard/1.1.0/download"
               ],
               "strip_prefix": "scopeguard-1.1.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.scopeguard-1.1.0.bazel"
             }
           },
-          "rules_rust_bindgen__unicode-ident-1.0.9": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicode-ident/1.0.9/download"
-              ],
-              "strip_prefix": "unicode-ident-1.0.9",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.unicode-ident-1.0.9.bazel"
-            }
-          },
           "rules_rust_prost__futures-util-0.3.28": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10389,51 +12738,12 @@
               "sha256": "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/futures-util/0.3.28/download"
+                "https://static.crates.io/crates/futures-util/0.3.28/download"
               ],
               "strip_prefix": "futures-util-0.3.28",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.futures-util-0.3.28.bazel"
             }
           },
-          "rules_rust_prost__log-0.4.19": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/log/0.4.19/download"
-              ],
-              "strip_prefix": "log-0.4.19",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.log-0.4.19.bazel"
-            }
-          },
-          "cui__ucd-trie-0.1.6": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/ucd-trie/0.1.6/download"
-              ],
-              "strip_prefix": "ucd-trie-0.1.6",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.ucd-trie-0.1.6.bazel"
-            }
-          },
-          "cui__gix-pack-0.43.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7536203a45b31e1bc5694bbf90ba8da1b736c77040dd6a520db369f371eb1ab3",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-pack/0.43.0/download"
-              ],
-              "strip_prefix": "gix-pack-0.43.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-pack-0.43.0.bazel"
-            }
-          },
           "rules_rust_prost__serde-1.0.164": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10441,7 +12751,7 @@
               "sha256": "9e8c8cf938e98f769bc164923b06dce91cea1751522f46f8466461af04c9027d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/serde/1.0.164/download"
+                "https://static.crates.io/crates/serde/1.0.164/download"
               ],
               "strip_prefix": "serde-1.0.164",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.serde-1.0.164.bazel"
@@ -10454,7 +12764,7 @@
               "sha256": "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/crossbeam-utils/0.8.16/download"
+                "https://static.crates.io/crates/crossbeam-utils/0.8.16/download"
               ],
               "strip_prefix": "crossbeam-utils-0.8.16",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crossbeam-utils-0.8.16.bazel"
@@ -10467,7 +12777,7 @@
               "sha256": "e4ed5d26be57f84f176157270c112ef57b86debac9cd21daaabbe56db0f88f23",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/unic-segment/0.9.0/download"
+                "https://static.crates.io/crates/unic-segment/0.9.0/download"
               ],
               "strip_prefix": "unic-segment-0.9.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-segment-0.9.0.bazel"
@@ -10480,23 +12790,23 @@
               "sha256": "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/regex-automata/0.4.3/download"
+                "https://static.crates.io/crates/regex-automata/0.4.3/download"
               ],
               "strip_prefix": "regex-automata-0.4.3",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.regex-automata-0.4.3.bazel"
             }
           },
-          "rules_rust_prost__prettyplease-0.1.25": {
+          "rules_rust_proto__miow-0.2.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86",
+              "sha256": "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/prettyplease/0.1.25/download"
+                "https://static.crates.io/crates/miow/0.2.2/download"
               ],
-              "strip_prefix": "prettyplease-0.1.25",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.prettyplease-0.1.25.bazel"
+              "strip_prefix": "miow-0.2.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.miow-0.2.2.bazel"
             }
           },
           "rules_rust_wasm_bindgen__filetime-0.2.21": {
@@ -10506,51 +12816,12 @@
               "sha256": "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/filetime/0.2.21/download"
+                "https://static.crates.io/crates/filetime/0.2.21/download"
               ],
               "strip_prefix": "filetime-0.2.21",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.filetime-0.2.21.bazel"
             }
           },
-          "cui__toml-0.7.6": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/toml/0.7.6/download"
-              ],
-              "strip_prefix": "toml-0.7.6",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.toml-0.7.6.bazel"
-            }
-          },
-          "rules_rust_prost__tempfile-3.6.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tempfile/3.6.0/download"
-              ],
-              "strip_prefix": "tempfile-3.6.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tempfile-3.6.0.bazel"
-            }
-          },
-          "rules_rust_prost__tokio-stream-0.1.14": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tokio-stream/0.1.14/download"
-              ],
-              "strip_prefix": "tokio-stream-0.1.14",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tokio-stream-0.1.14.bazel"
-            }
-          },
           "rules_rust_prost__windows-targets-0.48.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10558,25 +12829,12 @@
               "sha256": "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows-targets/0.48.0/download"
+                "https://static.crates.io/crates/windows-targets/0.48.0/download"
               ],
               "strip_prefix": "windows-targets-0.48.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows-targets-0.48.0.bazel"
             }
           },
-          "cui__unic-ucd-segment-0.9.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2079c122a62205b421f499da10f3ee0f7697f012f55b675e002483c73ea34700",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unic-ucd-segment/0.9.0/download"
-              ],
-              "strip_prefix": "unic-ucd-segment-0.9.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-ucd-segment-0.9.0.bazel"
-            }
-          },
           "rules_rust_prost__petgraph-0.6.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10584,56 +12842,12 @@
               "sha256": "4dd7d28ee937e54fe3080c91faa1c3a46c06de6252988a7f4592ba2310ef22a4",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/petgraph/0.6.3/download"
+                "https://static.crates.io/crates/petgraph/0.6.3/download"
               ],
               "strip_prefix": "petgraph-0.6.3",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.petgraph-0.6.3.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__android-tzdata-0.1.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/android-tzdata/0.1.1/download"
-              ],
-              "strip_prefix": "android-tzdata-0.1.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.android-tzdata-0.1.1.bazel"
-            }
-          },
-          "generated_inputs_in_external_repo": {
-            "bzlFile": "@@rules_rust~//test/generated_inputs:external_repo.bzl",
-            "ruleClassName": "_generated_inputs_in_external_repo",
-            "attributes": {}
-          },
-          "cui__gix-submodule-0.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "dd0150e82e9282d3f2ab2dd57a22f9f6c3447b9d9856e5321ac92d38e3e0e2b7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-submodule/0.4.0/download"
-              ],
-              "strip_prefix": "gix-submodule-0.4.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-submodule-0.4.0.bazel"
-            }
-          },
-          "cui__serde_spanned-0.6.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/serde_spanned/0.6.5/download"
-              ],
-              "strip_prefix": "serde_spanned-0.6.5",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.serde_spanned-0.6.5.bazel"
-            }
-          },
           "cui__gix-revwalk-0.8.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10641,7 +12855,7 @@
               "sha256": "e9870c6b1032f2084567710c3b2106ac603377f8d25766b8a6b7c33e6e3ca279",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-revwalk/0.8.0/download"
+                "https://static.crates.io/crates/gix-revwalk/0.8.0/download"
               ],
               "strip_prefix": "gix-revwalk-0.8.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-revwalk-0.8.0.bazel"
@@ -10654,7 +12868,7 @@
               "sha256": "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows-targets/0.48.1/download"
+                "https://static.crates.io/crates/windows-targets/0.48.1/download"
               ],
               "strip_prefix": "windows-targets-0.48.1",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows-targets-0.48.1.bazel"
@@ -10667,64 +12881,12 @@
               "sha256": "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/syn/1.0.109/download"
+                "https://static.crates.io/crates/syn/1.0.109/download"
               ],
               "strip_prefix": "syn-1.0.109",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.syn-1.0.109.bazel"
             }
           },
-          "rules_rust_prost__mime-0.3.17": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/mime/0.3.17/download"
-              ],
-              "strip_prefix": "mime-0.3.17",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.mime-0.3.17.bazel"
-            }
-          },
-          "cui__gix-quote-0.4.7": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "475c86a97dd0127ba4465fbb239abac9ea10e68301470c9791a6dd5351cdc905",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-quote/0.4.7/download"
-              ],
-              "strip_prefix": "gix-quote-0.4.7",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-quote-0.4.7.bazel"
-            }
-          },
-          "rrra__linux-raw-sys-0.3.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/linux-raw-sys/0.3.8/download"
-              ],
-              "strip_prefix": "linux-raw-sys-0.3.8",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.linux-raw-sys-0.3.8.bazel"
-            }
-          },
-          "cui__memmap2-0.7.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "f49388d20533534cd19360ad3d6a7dadc885944aa802ba3995040c5ec11288c6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/memmap2/0.7.1/download"
-              ],
-              "strip_prefix": "memmap2-0.7.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.memmap2-0.7.1.bazel"
-            }
-          },
           "cui__percent-encoding-2.3.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10732,7 +12894,7 @@
               "sha256": "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/percent-encoding/2.3.0/download"
+                "https://static.crates.io/crates/percent-encoding/2.3.0/download"
               ],
               "strip_prefix": "percent-encoding-2.3.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.percent-encoding-2.3.0.bazel"
@@ -10745,38 +12907,12 @@
               "sha256": "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hashbrown/0.14.0/download"
+                "https://static.crates.io/crates/hashbrown/0.14.0/download"
               ],
               "strip_prefix": "hashbrown-0.14.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.hashbrown-0.14.0.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__equivalent-1.0.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/equivalent/1.0.1/download"
-              ],
-              "strip_prefix": "equivalent-1.0.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.equivalent-1.0.1.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__fallible-iterator-0.2.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/fallible-iterator/0.2.0/download"
-              ],
-              "strip_prefix": "fallible-iterator-0.2.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.fallible-iterator-0.2.0.bazel"
-            }
-          },
           "cui__toml_datetime-0.6.5": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10784,36 +12920,23 @@
               "sha256": "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/toml_datetime/0.6.5/download"
+                "https://static.crates.io/crates/toml_datetime/0.6.5/download"
               ],
               "strip_prefix": "toml_datetime-0.6.5",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.toml_datetime-0.6.5.bazel"
             }
           },
-          "cui__pest_derive-2.7.0": {
+          "rules_rust_proto__log-0.4.17": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "aef623c9bbfa0eedf5a0efba11a5ee83209c326653ca31ff019bec3a95bfff2b",
+              "sha256": "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/pest_derive/2.7.0/download"
+                "https://static.crates.io/crates/log/0.4.17/download"
               ],
-              "strip_prefix": "pest_derive-2.7.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.pest_derive-2.7.0.bazel"
-            }
-          },
-          "rules_rust_prost__once_cell-1.18.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/once_cell/1.18.0/download"
-              ],
-              "strip_prefix": "once_cell-1.18.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.once_cell-1.18.0.bazel"
+              "strip_prefix": "log-0.4.17",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.log-0.4.17.bazel"
             }
           },
           "cui__tinyvec-1.6.0": {
@@ -10823,7 +12946,7 @@
               "sha256": "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tinyvec/1.6.0/download"
+                "https://static.crates.io/crates/tinyvec/1.6.0/download"
               ],
               "strip_prefix": "tinyvec-1.6.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tinyvec-1.6.0.bazel"
@@ -10836,7 +12959,7 @@
               "sha256": "9dd6407f73a9b8b6162d8a2ef999fe6afd7cc15902ebf42c5cd296addf17e0ad",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/btoi/0.4.3/download"
+                "https://static.crates.io/crates/btoi/0.4.3/download"
               ],
               "strip_prefix": "btoi-0.4.3",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.btoi-0.4.3.bazel"
@@ -10849,7 +12972,7 @@
               "sha256": "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/ppv-lite86/0.2.17/download"
+                "https://static.crates.io/crates/ppv-lite86/0.2.17/download"
               ],
               "strip_prefix": "ppv-lite86-0.2.17",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.ppv-lite86-0.2.17.bazel"
@@ -10862,64 +12985,12 @@
               "sha256": "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi/0.3.9/download"
+                "https://static.crates.io/crates/winapi/0.3.9/download"
               ],
               "strip_prefix": "winapi-0.3.9",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.winapi-0.3.9.bazel"
             }
           },
-          "cui__hermit-abi-0.3.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/hermit-abi/0.3.2/download"
-              ],
-              "strip_prefix": "hermit-abi-0.3.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.hermit-abi-0.3.2.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__regex-syntax-0.7.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/regex-syntax/0.7.4/download"
-              ],
-              "strip_prefix": "regex-syntax-0.7.4",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.regex-syntax-0.7.4.bazel"
-            }
-          },
-          "rules_rust_bindgen__errno-dragonfly-0.1.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/errno-dragonfly/0.1.2/download"
-              ],
-              "strip_prefix": "errno-dragonfly-0.1.2",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.errno-dragonfly-0.1.2.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__miniz_oxide-0.7.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/miniz_oxide/0.7.1/download"
-              ],
-              "strip_prefix": "miniz_oxide-0.7.1",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.miniz_oxide-0.7.1.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__winapi-util-0.1.5": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -10927,36 +12998,36 @@
               "sha256": "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/winapi-util/0.1.5/download"
+                "https://static.crates.io/crates/winapi-util/0.1.5/download"
               ],
               "strip_prefix": "winapi-util-0.1.5",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.winapi-util-0.1.5.bazel"
             }
           },
-          "rules_rust_bindgen__windows_x86_64_gnullvm-0.48.0": {
+          "rules_rust_proto__maybe-uninit-2.0.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953",
+              "sha256": "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.48.0/download"
+                "https://static.crates.io/crates/maybe-uninit/2.0.0/download"
               ],
-              "strip_prefix": "windows_x86_64_gnullvm-0.48.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows_x86_64_gnullvm-0.48.0.bazel"
+              "strip_prefix": "maybe-uninit-2.0.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.maybe-uninit-2.0.0.bazel"
             }
           },
-          "rules_rust_bindgen__syn-2.0.18": {
+          "rules_rust_proto__tokio-tcp-0.1.4": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e",
+              "sha256": "98df18ed66e3b72e742f185882a9e201892407957e45fbff8da17ae7a7c51f72",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/syn/2.0.18/download"
+                "https://static.crates.io/crates/tokio-tcp/0.1.4/download"
               ],
-              "strip_prefix": "syn-2.0.18",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.syn-2.0.18.bazel"
+              "strip_prefix": "tokio-tcp-0.1.4",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-tcp-0.1.4.bazel"
             }
           },
           "rules_rust_bindgen__yansi-term-0.1.2": {
@@ -10966,7 +13037,7 @@
               "sha256": "fe5c30ade05e61656247b2e334a031dfd0cc466fadef865bdcdea8d537951bf1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/yansi-term/0.1.2/download"
+                "https://static.crates.io/crates/yansi-term/0.1.2/download"
               ],
               "strip_prefix": "yansi-term-0.1.2",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.yansi-term-0.1.2.bazel"
@@ -10979,38 +13050,12 @@
               "sha256": "0c9ffdf896f8daaabf9b66ba8e77ea1ed5ed0f72821b398aba62352e95062951",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/toml_edit/0.22.4/download"
+                "https://static.crates.io/crates/toml_edit/0.22.4/download"
               ],
               "strip_prefix": "toml_edit-0.22.4",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.toml_edit-0.22.4.bazel"
             }
           },
-          "cui__gix-utils-0.1.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b85d89dc728613e26e0ed952a19583744e7f5240fcd4aa30d6c824ffd8b52f0f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-utils/0.1.5/download"
-              ],
-              "strip_prefix": "gix-utils-0.1.5",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-utils-0.1.5.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__unicase-2.6.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicase/2.6.0/download"
-              ],
-              "strip_prefix": "unicase-2.6.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicase-2.6.0.bazel"
-            }
-          },
           "rules_rust_bindgen__windows_aarch64_msvc-0.48.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11018,38 +13063,12 @@
               "sha256": "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_msvc/0.48.0/download"
+                "https://static.crates.io/crates/windows_aarch64_msvc/0.48.0/download"
               ],
               "strip_prefix": "windows_aarch64_msvc-0.48.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows_aarch64_msvc-0.48.0.bazel"
             }
           },
-          "rules_rust_bindgen__cc-1.0.79": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/cc/1.0.79/download"
-              ],
-              "strip_prefix": "cc-1.0.79",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.cc-1.0.79.bazel"
-            }
-          },
-          "rrra__unicode-ident-1.0.10": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicode-ident/1.0.10/download"
-              ],
-              "strip_prefix": "unicode-ident-1.0.10",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.unicode-ident-1.0.10.bazel"
-            }
-          },
           "cui__block-buffer-0.10.4": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11057,90 +13076,12 @@
               "sha256": "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/block-buffer/0.10.4/download"
+                "https://static.crates.io/crates/block-buffer/0.10.4/download"
               ],
               "strip_prefix": "block-buffer-0.10.4",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.block-buffer-0.10.4.bazel"
             }
           },
-          "cui__clap_lex-0.5.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/clap_lex/0.5.0/download"
-              ],
-              "strip_prefix": "clap_lex-0.5.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.clap_lex-0.5.0.bazel"
-            }
-          },
-          "cui__indexmap-2.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/indexmap/2.1.0/download"
-              ],
-              "strip_prefix": "indexmap-2.1.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.indexmap-2.1.0.bazel"
-            }
-          },
-          "cui__hex-0.4.3": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/hex/0.4.3/download"
-              ],
-              "strip_prefix": "hex-0.4.3",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.hex-0.4.3.bazel"
-            }
-          },
-          "rules_rust_prost__quote-1.0.28": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/quote/1.0.28/download"
-              ],
-              "strip_prefix": "quote-1.0.28",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.quote-1.0.28.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__windows-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows/0.48.0/download"
-              ],
-              "strip_prefix": "windows-0.48.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.windows-0.48.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__unicode-normalization-0.1.22": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicode-normalization/0.1.22/download"
-              ],
-              "strip_prefix": "unicode-normalization-0.1.22",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.unicode-normalization-0.1.22.bazel"
-            }
-          },
           "cui__chrono-tz-build-0.2.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11148,7 +13089,7 @@
               "sha256": "433e39f13c9a060046954e0592a8d0a4bcb1040125cbf91cb8ee58964cfb350f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/chrono-tz-build/0.2.1/download"
+                "https://static.crates.io/crates/chrono-tz-build/0.2.1/download"
               ],
               "strip_prefix": "chrono-tz-build-0.2.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.chrono-tz-build-0.2.1.bazel"
@@ -11161,50 +13102,12 @@
               "sha256": "0ccab4bc576844ddb51b78d81b4a42d73e6229660fa614dfc3d3999c874d1959",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-bitmap/0.2.7/download"
+                "https://static.crates.io/crates/gix-bitmap/0.2.7/download"
               ],
               "strip_prefix": "gix-bitmap-0.2.7",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-bitmap-0.2.7.bazel"
             }
           },
-          "cargo_bazel.buildifier-linux-arm64": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_file",
-            "attributes": {
-              "urls": [
-                "https://github.com/bazelbuild/buildtools/releases/download/5.0.1/buildifier-linux-arm64"
-              ],
-              "sha256": "c657c628fca72b7e0446f1a542231722a10ba4321597bd6f6249a5da6060b6ff",
-              "downloaded_file_path": "buildifier.exe",
-              "executable": true
-            }
-          },
-          "rules_rust_wasm_bindgen__anyhow-1.0.71": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/anyhow/1.0.71/download"
-              ],
-              "strip_prefix": "anyhow-1.0.71",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.anyhow-1.0.71.bazel"
-            }
-          },
-          "rules_rust_bindgen__memchr-2.5.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/memchr/2.5.0/download"
-              ],
-              "strip_prefix": "memchr-2.5.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.memchr-2.5.0.bazel"
-            }
-          },
           "cui__gix-pathspec-0.3.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11212,7 +13115,7 @@
               "sha256": "c3e26c9b47c51be73f98d38c84494bd5fb99334c5d6fda14ef5d036d50a9e5fd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-pathspec/0.3.0/download"
+                "https://static.crates.io/crates/gix-pathspec/0.3.0/download"
               ],
               "strip_prefix": "gix-pathspec-0.3.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-pathspec-0.3.0.bazel"
@@ -11225,25 +13128,12 @@
               "sha256": "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/libc/0.2.147/download"
+                "https://static.crates.io/crates/libc/0.2.147/download"
               ],
               "strip_prefix": "libc-0.2.147",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.libc-0.2.147.bazel"
             }
           },
-          "rules_rust_prost__parking_lot_core-0.9.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/parking_lot_core/0.9.8/download"
-              ],
-              "strip_prefix": "parking_lot_core-0.9.8",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.parking_lot_core-0.9.8.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__base64-0.21.5": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11251,7 +13141,7 @@
               "sha256": "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/base64/0.21.5/download"
+                "https://static.crates.io/crates/base64/0.21.5/download"
               ],
               "strip_prefix": "base64-0.21.5",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.base64-0.21.5.bazel"
@@ -11264,51 +13154,12 @@
               "sha256": "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tracing-attributes/0.1.27/download"
+                "https://static.crates.io/crates/tracing-attributes/0.1.27/download"
               ],
               "strip_prefix": "tracing-attributes-0.1.27",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tracing-attributes-0.1.27.bazel"
             }
           },
-          "cui__iana-time-zone-0.1.57": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/iana-time-zone/0.1.57/download"
-              ],
-              "strip_prefix": "iana-time-zone-0.1.57",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.iana-time-zone-0.1.57.bazel"
-            }
-          },
-          "cui__toml_edit-0.19.13": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5f8751d9c1b03c6500c387e96f81f815a4f8e72d142d2d4a9ffa6fedd51ddee7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/toml_edit/0.19.13/download"
-              ],
-              "strip_prefix": "toml_edit-0.19.13",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.toml_edit-0.19.13.bazel"
-            }
-          },
-          "rules_rust_prost__matchit-0.7.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b87248edafb776e59e6ee64a79086f65890d3510f2c656c000bf2a7e8a0aea40",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/matchit/0.7.0/download"
-              ],
-              "strip_prefix": "matchit-0.7.0",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.matchit-0.7.0.bazel"
-            }
-          },
           "rules_rust_test_load_arbitrary_tool": {
             "bzlFile": "@@rules_rust~//test/load_arbitrary_tool:load_arbitrary_tool_test.bzl",
             "ruleClassName": "_load_arbitrary_tool_test",
@@ -11321,12 +13172,25 @@
               "sha256": "94d7b1cfd2aa4011f2de74c2c4c63665e27a71006b0a192dcd2710272e73dfa2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tokio/1.28.2/download"
+                "https://static.crates.io/crates/tokio/1.28.2/download"
               ],
               "strip_prefix": "tokio-1.28.2",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tokio-1.28.2.bazel"
             }
           },
+          "rules_rust_proto__parking_lot_core-0.6.3": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "bda66b810a62be75176a80873726630147a5ca780cd33921e0b5709033e66b0a",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/parking_lot_core/0.6.3/download"
+              ],
+              "strip_prefix": "parking_lot_core-0.6.3",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.parking_lot_core-0.6.3.bazel"
+            }
+          },
           "rules_rust_wasm_bindgen__chunked_transfer-1.4.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11334,51 +13198,12 @@
               "sha256": "cca491388666e04d7248af3f60f0c40cfb0991c72205595d7c396e3510207d1a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/chunked_transfer/1.4.1/download"
+                "https://static.crates.io/crates/chunked_transfer/1.4.1/download"
               ],
               "strip_prefix": "chunked_transfer-1.4.1",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.chunked_transfer-1.4.1.bazel"
             }
           },
-          "cui__gix-chunk-0.4.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5b42ea64420f7994000130328f3c7a2038f639120518870436d31b8bde704493",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-chunk/0.4.4/download"
-              ],
-              "strip_prefix": "gix-chunk-0.4.4",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-chunk-0.4.4.bazel"
-            }
-          },
-          "rules_rust_prost__sync_wrapper-0.1.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/sync_wrapper/0.1.2/download"
-              ],
-              "strip_prefix": "sync_wrapper-0.1.2",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.sync_wrapper-0.1.2.bazel"
-            }
-          },
-          "cui__idna-0.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/idna/0.4.0/download"
-              ],
-              "strip_prefix": "idna-0.4.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.idna-0.4.0.bazel"
-            }
-          },
           "cui__tinyvec_macros-0.1.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11386,23 +13211,23 @@
               "sha256": "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tinyvec_macros/0.1.1/download"
+                "https://static.crates.io/crates/tinyvec_macros/0.1.1/download"
               ],
               "strip_prefix": "tinyvec_macros-0.1.1",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tinyvec_macros-0.1.1.bazel"
             }
           },
-          "cui__wasm-bindgen-macro-support-0.2.87": {
+          "rules_rust_proto__semver-parser-0.7.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b",
+              "sha256": "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-macro-support/0.2.87/download"
+                "https://static.crates.io/crates/semver-parser/0.7.0/download"
               ],
-              "strip_prefix": "wasm-bindgen-macro-support-0.2.87",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.wasm-bindgen-macro-support-0.2.87.bazel"
+              "strip_prefix": "semver-parser-0.7.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.semver-parser-0.7.0.bazel"
             }
           },
           "rrra__windows_i686_gnu-0.48.0": {
@@ -11412,49 +13237,23 @@
               "sha256": "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_gnu/0.48.0/download"
+                "https://static.crates.io/crates/windows_i686_gnu/0.48.0/download"
               ],
               "strip_prefix": "windows_i686_gnu-0.48.0",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_i686_gnu-0.48.0.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__errno-dragonfly-0.1.2": {
+          "rules_rust_proto__tokio-udp-0.1.6": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf",
+              "sha256": "e2a0b10e610b39c38b031a2fcab08e4b82f16ece36504988dcbd81dbba650d82",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/errno-dragonfly/0.1.2/download"
+                "https://static.crates.io/crates/tokio-udp/0.1.6/download"
               ],
-              "strip_prefix": "errno-dragonfly-0.1.2",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.errno-dragonfly-0.1.2.bazel"
-            }
-          },
-          "rules_rust_prost__hyper-timeout-0.4.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/hyper-timeout/0.4.1/download"
-              ],
-              "strip_prefix": "hyper-timeout-0.4.1",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.hyper-timeout-0.4.1.bazel"
-            }
-          },
-          "rules_rust_bindgen__rustc-hash-1.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rustc-hash/1.1.0/download"
-              ],
-              "strip_prefix": "rustc-hash-1.1.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.rustc-hash-1.1.0.bazel"
+              "strip_prefix": "tokio-udp-0.1.6",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-udp-0.1.6.bazel"
             }
           },
           "cui__unic-char-property-0.9.0": {
@@ -11464,7 +13263,7 @@
               "sha256": "a8c57a407d9b6fa02b4795eb81c5b6652060a15a7903ea981f3d723e6c0be221",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/unic-char-property/0.9.0/download"
+                "https://static.crates.io/crates/unic-char-property/0.9.0/download"
               ],
               "strip_prefix": "unic-char-property-0.9.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-char-property-0.9.0.bazel"
@@ -11477,38 +13276,12 @@
               "sha256": "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/sha1_smol/1.0.0/download"
+                "https://static.crates.io/crates/sha1_smol/1.0.0/download"
               ],
               "strip_prefix": "sha1_smol-1.0.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.sha1_smol-1.0.0.bazel"
             }
           },
-          "rules_rust_prost__http-0.2.9": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/http/0.2.9/download"
-              ],
-              "strip_prefix": "http-0.2.9",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.http-0.2.9.bazel"
-            }
-          },
-          "cui__crossbeam-epoch-0.9.15": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/crossbeam-epoch/0.9.15/download"
-              ],
-              "strip_prefix": "crossbeam-epoch-0.9.15",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crossbeam-epoch-0.9.15.bazel"
-            }
-          },
           "cui__siphasher-0.3.10": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11516,7 +13289,7 @@
               "sha256": "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/siphasher/0.3.10/download"
+                "https://static.crates.io/crates/siphasher/0.3.10/download"
               ],
               "strip_prefix": "siphasher-0.3.10",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.siphasher-0.3.10.bazel"
@@ -11529,7 +13302,7 @@
               "sha256": "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tracing/0.1.40/download"
+                "https://static.crates.io/crates/tracing/0.1.40/download"
               ],
               "strip_prefix": "tracing-0.1.40",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.tracing-0.1.40.bazel"
@@ -11542,7 +13315,7 @@
               "sha256": "15e3fc8c0c74267e2df136e5e5fb656a464158aa57624053375eb9c8c6e25ae2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/syn/2.0.25/download"
+                "https://static.crates.io/crates/syn/2.0.25/download"
               ],
               "strip_prefix": "syn-2.0.25",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.syn-2.0.25.bazel"
@@ -11555,25 +13328,12 @@
               "sha256": "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/version_check/0.9.4/download"
+                "https://static.crates.io/crates/version_check/0.9.4/download"
               ],
               "strip_prefix": "version_check-0.9.4",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.version_check-0.9.4.bazel"
             }
           },
-          "cui__gix-config-value-0.14.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ea7505b97f4d8e7933e29735a568ba2f86d8de466669d9f0e8321384f9972f47",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-config-value/0.14.0/download"
-              ],
-              "strip_prefix": "gix-config-value-0.14.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-config-value-0.14.0.bazel"
-            }
-          },
           "rrra__is-terminal-0.4.7": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11581,25 +13341,12 @@
               "sha256": "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/is-terminal/0.4.7/download"
+                "https://static.crates.io/crates/is-terminal/0.4.7/download"
               ],
               "strip_prefix": "is-terminal-0.4.7",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.is-terminal-0.4.7.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__chrono-0.4.26": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/chrono/0.4.26/download"
-              ],
-              "strip_prefix": "chrono-0.4.26",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.chrono-0.4.26.bazel"
-            }
-          },
           "rrra__errno-dragonfly-0.1.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11607,7 +13354,7 @@
               "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/errno-dragonfly/0.1.2/download"
+                "https://static.crates.io/crates/errno-dragonfly/0.1.2/download"
               ],
               "strip_prefix": "errno-dragonfly-0.1.2",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.errno-dragonfly-0.1.2.bazel"
@@ -11620,25 +13367,12 @@
               "sha256": "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/instant/0.1.12/download"
+                "https://static.crates.io/crates/instant/0.1.12/download"
               ],
               "strip_prefix": "instant-0.1.12",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.instant-0.1.12.bazel"
             }
           },
-          "cui__same-file-1.0.6": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/same-file/1.0.6/download"
-              ],
-              "strip_prefix": "same-file-1.0.6",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.same-file-1.0.6.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__regex-automata-0.1.10": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11646,38 +13380,12 @@
               "sha256": "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/regex-automata/0.1.10/download"
+                "https://static.crates.io/crates/regex-automata/0.1.10/download"
               ],
               "strip_prefix": "regex-automata-0.1.10",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.regex-automata-0.1.10.bazel"
             }
           },
-          "cui__linux-raw-sys-0.3.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/linux-raw-sys/0.3.8/download"
-              ],
-              "strip_prefix": "linux-raw-sys-0.3.8",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.linux-raw-sys-0.3.8.bazel"
-            }
-          },
-          "rules_rust_bindgen__termcolor-1.2.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/termcolor/1.2.0/download"
-              ],
-              "strip_prefix": "termcolor-1.2.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.termcolor-1.2.0.bazel"
-            }
-          },
           "rrra__hermit-abi-0.3.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11685,7 +13393,7 @@
               "sha256": "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hermit-abi/0.3.2/download"
+                "https://static.crates.io/crates/hermit-abi/0.3.2/download"
               ],
               "strip_prefix": "hermit-abi-0.3.2",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.hermit-abi-0.3.2.bazel"
@@ -11698,38 +13406,12 @@
               "sha256": "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/strsim/0.10.0/download"
+                "https://static.crates.io/crates/strsim/0.10.0/download"
               ],
               "strip_prefix": "strsim-0.10.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.strsim-0.10.0.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__rand_core-0.6.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rand_core/0.6.4/download"
-              ],
-              "strip_prefix": "rand_core-0.6.4",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rand_core-0.6.4.bazel"
-            }
-          },
-          "cui__crossbeam-channel-0.5.8": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/crossbeam-channel/0.5.8/download"
-              ],
-              "strip_prefix": "crossbeam-channel-0.5.8",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crossbeam-channel-0.5.8.bazel"
-            }
-          },
           "cui__arrayvec-0.7.4": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11737,64 +13419,12 @@
               "sha256": "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/arrayvec/0.7.4/download"
+                "https://static.crates.io/crates/arrayvec/0.7.4/download"
               ],
               "strip_prefix": "arrayvec-0.7.4",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.arrayvec-0.7.4.bazel"
             }
           },
-          "cui__cc-1.0.79": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/cc/1.0.79/download"
-              ],
-              "strip_prefix": "cc-1.0.79",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.cc-1.0.79.bazel"
-            }
-          },
-          "rules_rust_prost__rand-0.8.5": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/rand/0.8.5/download"
-              ],
-              "strip_prefix": "rand-0.8.5",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.rand-0.8.5.bazel"
-            }
-          },
-          "cui__gix-validate-0.8.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e05cab2b03a45b866156e052aa38619f4ece4adcb2f79978bfc249bc3b21b8c5",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-validate/0.8.0/download"
-              ],
-              "strip_prefix": "gix-validate-0.8.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-validate-0.8.0.bazel"
-            }
-          },
-          "rules_rust_prost__anyhow-1.0.71": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/anyhow/1.0.71/download"
-              ],
-              "strip_prefix": "anyhow-1.0.71",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.anyhow-1.0.71.bazel"
-            }
-          },
           "rules_rust_prost__errno-0.3.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11802,36 +13432,23 @@
               "sha256": "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/errno/0.3.1/download"
+                "https://static.crates.io/crates/errno/0.3.1/download"
               ],
               "strip_prefix": "errno-0.3.1",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.errno-0.3.1.bazel"
             }
           },
-          "cui__is-terminal-0.4.7": {
+          "rules_rust_proto__tokio-timer-0.1.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f",
+              "sha256": "6131e780037787ff1b3f8aad9da83bca02438b72277850dd6ad0d455e0e20efc",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/is-terminal/0.4.7/download"
+                "https://static.crates.io/crates/tokio-timer/0.1.2/download"
               ],
-              "strip_prefix": "is-terminal-0.4.7",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.is-terminal-0.4.7.bazel"
-            }
-          },
-          "cui__unicode-width-0.1.10": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unicode-width/0.1.10/download"
-              ],
-              "strip_prefix": "unicode-width-0.1.10",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unicode-width-0.1.10.bazel"
+              "strip_prefix": "tokio-timer-0.1.2",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-timer-0.1.2.bazel"
             }
           },
           "rules_rust_wasm_bindgen__js-sys-0.3.64": {
@@ -11841,51 +13458,12 @@
               "sha256": "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/js-sys/0.3.64/download"
+                "https://static.crates.io/crates/js-sys/0.3.64/download"
               ],
               "strip_prefix": "js-sys-0.3.64",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.js-sys-0.3.64.bazel"
             }
           },
-          "rrra__humantime-2.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/humantime/2.1.0/download"
-              ],
-              "strip_prefix": "humantime-2.1.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.humantime-2.1.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__libc-0.2.150": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/libc/0.2.150/download"
-              ],
-              "strip_prefix": "libc-0.2.150",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.libc-0.2.150.bazel"
-            }
-          },
-          "rules_rust_bindgen__env_logger-0.10.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/env_logger/0.10.0/download"
-              ],
-              "strip_prefix": "env_logger-0.10.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.env_logger-0.10.0.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__time-0.3.23": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11893,51 +13471,12 @@
               "sha256": "59e399c068f43a5d116fedaf73b203fa4f9c519f17e2b34f63221d3792f81446",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/time/0.3.23/download"
+                "https://static.crates.io/crates/time/0.3.23/download"
               ],
               "strip_prefix": "time-0.3.23",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.time-0.3.23.bazel"
             }
           },
-          "cui__toml-0.8.10": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/toml/0.8.10/download"
-              ],
-              "strip_prefix": "toml-0.8.10",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.toml-0.8.10.bazel"
-            }
-          },
-          "rules_rust_prost__tracing-attributes-0.1.26": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tracing-attributes/0.1.26/download"
-              ],
-              "strip_prefix": "tracing-attributes-0.1.26",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tracing-attributes-0.1.26.bazel"
-            }
-          },
-          "rules_rust_prost__instant-0.1.12": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/instant/0.1.12/download"
-              ],
-              "strip_prefix": "instant-0.1.12",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.instant-0.1.12.bazel"
-            }
-          },
           "cui__gix-transport-0.37.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -11945,88 +13484,23 @@
               "sha256": "b9ec726e6a245e68ace59a34126a1d679de60360676612985e70b0d3b102fb4e",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-transport/0.37.0/download"
+                "https://static.crates.io/crates/gix-transport/0.37.0/download"
               ],
               "strip_prefix": "gix-transport-0.37.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-transport-0.37.0.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__indexmap-2.0.0": {
+          "rules_rust_proto__net2-0.2.38": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d",
+              "sha256": "74d0df99cfcd2530b2e694f6e17e7f37b8e26bb23983ac530c0c97408837c631",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/indexmap/2.0.0/download"
+                "https://static.crates.io/crates/net2/0.2.38/download"
               ],
-              "strip_prefix": "indexmap-2.0.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.indexmap-2.0.0.bazel"
-            }
-          },
-          "cui__windows_i686_gnu-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_i686_gnu/0.48.0/download"
-              ],
-              "strip_prefix": "windows_i686_gnu-0.48.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows_i686_gnu-0.48.0.bazel"
-            }
-          },
-          "rrra__proc-macro2-1.0.64": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "78803b62cbf1f46fde80d7c0e803111524b9877184cfe7c3033659490ac7a7da",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/proc-macro2/1.0.64/download"
-              ],
-              "strip_prefix": "proc-macro2-1.0.64",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.proc-macro2-1.0.64.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__predicates-tree-1.0.9": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/predicates-tree/1.0.9/download"
-              ],
-              "strip_prefix": "predicates-tree-1.0.9",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.predicates-tree-1.0.9.bazel"
-            }
-          },
-          "rrra__errno-0.3.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/errno/0.3.1/download"
-              ],
-              "strip_prefix": "errno-0.3.1",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.errno-0.3.1.bazel"
-            }
-          },
-          "cui__num_threads-0.1.6": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/num_threads/0.1.6/download"
-              ],
-              "strip_prefix": "num_threads-0.1.6",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.num_threads-0.1.6.bazel"
+              "strip_prefix": "net2-0.2.38",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.net2-0.2.38.bazel"
             }
           },
           "rules_rust_prost__pin-project-internal-1.1.0": {
@@ -12036,7 +13510,7 @@
               "sha256": "39407670928234ebc5e6e580247dd567ad73a3578460c5990f9503df207e8f07",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/pin-project-internal/1.1.0/download"
+                "https://static.crates.io/crates/pin-project-internal/1.1.0/download"
               ],
               "strip_prefix": "pin-project-internal-1.1.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.pin-project-internal-1.1.0.bazel"
@@ -12049,7 +13523,7 @@
               "sha256": "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rustc-hash/1.1.0/download"
+                "https://static.crates.io/crates/rustc-hash/1.1.0/download"
               ],
               "strip_prefix": "rustc-hash-1.1.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.rustc-hash-1.1.0.bazel"
@@ -12062,7 +13536,7 @@
               "sha256": "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/sharded-slab/0.1.7/download"
+                "https://static.crates.io/crates/sharded-slab/0.1.7/download"
               ],
               "strip_prefix": "sharded-slab-0.1.7",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.sharded-slab-0.1.7.bazel"
@@ -12075,38 +13549,12 @@
               "sha256": "62b02a5381cc465bd3041d84623d0fa3b66738b52b8e2fc3bab8ad63ab032f4a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/itoa/1.0.8/download"
+                "https://static.crates.io/crates/itoa/1.0.8/download"
               ],
               "strip_prefix": "itoa-1.0.8",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.itoa-1.0.8.bazel"
             }
           },
-          "cui__arc-swap-1.6.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/arc-swap/1.6.0/download"
-              ],
-              "strip_prefix": "arc-swap-1.6.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.arc-swap-1.6.0.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__webpki-roots-0.25.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/webpki-roots/0.25.2/download"
-              ],
-              "strip_prefix": "webpki-roots-0.25.2",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.webpki-roots-0.25.2.bazel"
-            }
-          },
           "cui__form_urlencoded-1.2.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12114,25 +13562,12 @@
               "sha256": "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/form_urlencoded/1.2.0/download"
+                "https://static.crates.io/crates/form_urlencoded/1.2.0/download"
               ],
               "strip_prefix": "form_urlencoded-1.2.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.form_urlencoded-1.2.0.bazel"
             }
           },
-          "cui__gix-features-0.35.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "9b9ff423ae4983f762659040d13dd7a5defbd54b6a04ac3cc7347741cec828cd",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-features/0.35.0/download"
-              ],
-              "strip_prefix": "gix-features-0.35.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-features-0.35.0.bazel"
-            }
-          },
           "cui__gix-commitgraph-0.21.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12140,25 +13575,12 @@
               "sha256": "e75a975ee22cf0a002bfe9b5d5cb3d2a88e263a8a178cd7509133cff10f4df8a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-commitgraph/0.21.0/download"
+                "https://static.crates.io/crates/gix-commitgraph/0.21.0/download"
               ],
               "strip_prefix": "gix-commitgraph-0.21.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-commitgraph-0.21.0.bazel"
             }
           },
-          "cui__lock_api-0.4.11": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/lock_api/0.4.11/download"
-              ],
-              "strip_prefix": "lock_api-0.4.11",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.lock_api-0.4.11.bazel"
-            }
-          },
           "rrra__serde_json-1.0.102": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12166,7 +13588,7 @@
               "sha256": "b5062a995d481b2308b6064e9af76011f2921c35f97b0468811ed9f6cd91dfed",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/serde_json/1.0.102/download"
+                "https://static.crates.io/crates/serde_json/1.0.102/download"
               ],
               "strip_prefix": "serde_json-1.0.102",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.serde_json-1.0.102.bazel"
@@ -12179,7 +13601,7 @@
               "sha256": "5bf5e9b9c0f7e0a7c027dcfaba7b2c60816c7049171f679d99ee2ff65d0de8c4",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/tonic-build/0.8.4/download"
+                "https://static.crates.io/crates/tonic-build/0.8.4/download"
               ],
               "strip_prefix": "tonic-build-0.8.4",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tonic-build-0.8.4.bazel"
@@ -12192,38 +13614,12 @@
               "sha256": "3716fbf57fc1084d7a706adf4e445298d123e4a44294c4e8213caf1b85fcc921",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rouille/3.6.2/download"
+                "https://static.crates.io/crates/rouille/3.6.2/download"
               ],
               "strip_prefix": "rouille-3.6.2",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rouille-3.6.2.bazel"
             }
           },
-          "cui__android-tzdata-0.1.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/android-tzdata/0.1.1/download"
-              ],
-              "strip_prefix": "android-tzdata-0.1.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.android-tzdata-0.1.1.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__winapi-i686-pc-windows-gnu-0.4.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download"
-              ],
-              "strip_prefix": "winapi-i686-pc-windows-gnu-0.4.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel"
-            }
-          },
           "cui__anyhow-1.0.75": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12231,25 +13627,12 @@
               "sha256": "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/anyhow/1.0.75/download"
+                "https://static.crates.io/crates/anyhow/1.0.75/download"
               ],
               "strip_prefix": "anyhow-1.0.75",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.anyhow-1.0.75.bazel"
             }
           },
-          "rules_rust_prost__futures-task-0.3.28": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/futures-task/0.3.28/download"
-              ],
-              "strip_prefix": "futures-task-0.3.28",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.futures-task-0.3.28.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__url-2.4.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12257,7 +13640,7 @@
               "sha256": "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/url/2.4.0/download"
+                "https://static.crates.io/crates/url/2.4.0/download"
               ],
               "strip_prefix": "url-2.4.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.url-2.4.0.bazel"
@@ -12270,7 +13653,7 @@
               "sha256": "794a32261a1f5eb6a4462c81b59cec87b5c27d5deea7dd1ac8fc781c41d226db",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/uluru/3.0.0/download"
+                "https://static.crates.io/crates/uluru/3.0.0/download"
               ],
               "strip_prefix": "uluru-3.0.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.uluru-3.0.0.bazel"
@@ -12283,25 +13666,12 @@
               "sha256": "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/syn/1.0.109/download"
+                "https://static.crates.io/crates/syn/1.0.109/download"
               ],
               "strip_prefix": "syn-1.0.109",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.syn-1.0.109.bazel"
             }
           },
-          "cui__serde-1.0.190": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/serde/1.0.190/download"
-              ],
-              "strip_prefix": "serde-1.0.190",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.serde-1.0.190.bazel"
-            }
-          },
           "rules_rust_prost__socket2-0.4.9": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12309,51 +13679,12 @@
               "sha256": "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/socket2/0.4.9/download"
+                "https://static.crates.io/crates/socket2/0.4.9/download"
               ],
               "strip_prefix": "socket2-0.4.9",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.socket2-0.4.9.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__ascii-1.1.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/ascii/1.1.0/download"
-              ],
-              "strip_prefix": "ascii-1.1.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.ascii-1.1.0.bazel"
-            }
-          },
-          "rules_rust_prost__prost-types-0.11.9": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/prost-types/0.11.9/download"
-              ],
-              "strip_prefix": "prost-types-0.11.9",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.prost-types-0.11.9.bazel"
-            }
-          },
-          "rules_rust_wasm_bindgen__bstr-0.2.17": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bstr/0.2.17/download"
-              ],
-              "strip_prefix": "bstr-0.2.17",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.bstr-0.2.17.bazel"
-            }
-          },
           "rules_rust_prost__futures-sink-0.3.28": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12361,7 +13692,7 @@
               "sha256": "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/futures-sink/0.3.28/download"
+                "https://static.crates.io/crates/futures-sink/0.3.28/download"
               ],
               "strip_prefix": "futures-sink-0.3.28",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.futures-sink-0.3.28.bazel"
@@ -12374,25 +13705,12 @@
               "sha256": "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/unicode-ident/1.0.9/download"
+                "https://static.crates.io/crates/unicode-ident/1.0.9/download"
               ],
               "strip_prefix": "unicode-ident-1.0.9",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.unicode-ident-1.0.9.bazel"
             }
           },
-          "cui__aho-corasick-1.0.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/aho-corasick/1.0.2/download"
-              ],
-              "strip_prefix": "aho-corasick-1.0.2",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.aho-corasick-1.0.2.bazel"
-            }
-          },
           "cui__libc-0.2.149": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12400,25 +13718,12 @@
               "sha256": "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/libc/0.2.149/download"
+                "https://static.crates.io/crates/libc/0.2.149/download"
               ],
               "strip_prefix": "libc-0.2.149",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.libc-0.2.149.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__tinyvec-1.6.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tinyvec/1.6.0/download"
-              ],
-              "strip_prefix": "tinyvec-1.6.0",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.tinyvec-1.6.0.bazel"
-            }
-          },
           "cui__unicode-linebreak-0.1.5": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12426,23 +13731,23 @@
               "sha256": "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/unicode-linebreak/0.1.5/download"
+                "https://static.crates.io/crates/unicode-linebreak/0.1.5/download"
               ],
               "strip_prefix": "unicode-linebreak-0.1.5",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unicode-linebreak-0.1.5.bazel"
             }
           },
-          "rules_rust_bindgen__windows_x86_64_msvc-0.48.0": {
+          "rules_rust_proto__unix_socket-0.5.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a",
+              "sha256": "6aa2700417c405c38f5e6902d699345241c28c0b7ade4abaad71e35a87eb1564",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_msvc/0.48.0/download"
+                "https://static.crates.io/crates/unix_socket/0.5.0/download"
               ],
-              "strip_prefix": "windows_x86_64_msvc-0.48.0",
-              "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows_x86_64_msvc-0.48.0.bazel"
+              "strip_prefix": "unix_socket-0.5.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.unix_socket-0.5.0.bazel"
             }
           },
           "rrra__itertools-0.11.0": {
@@ -12452,7 +13757,7 @@
               "sha256": "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/itertools/0.11.0/download"
+                "https://static.crates.io/crates/itertools/0.11.0/download"
               ],
               "strip_prefix": "itertools-0.11.0",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.itertools-0.11.0.bazel"
@@ -12465,7 +13770,7 @@
               "sha256": "d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/regex/1.8.4/download"
+                "https://static.crates.io/crates/regex/1.8.4/download"
               ],
               "strip_prefix": "regex-1.8.4",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.regex-1.8.4.bazel"
@@ -12478,7 +13783,7 @@
               "sha256": "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/hashbrown/0.14.3/download"
+                "https://static.crates.io/crates/hashbrown/0.14.3/download"
               ],
               "strip_prefix": "hashbrown-0.14.3",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.hashbrown-0.14.3.bazel"
@@ -12491,7 +13796,7 @@
               "sha256": "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/crypto-common/0.1.6/download"
+                "https://static.crates.io/crates/crypto-common/0.1.6/download"
               ],
               "strip_prefix": "crypto-common-0.1.6",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.crypto-common-0.1.6.bazel"
@@ -12504,25 +13809,12 @@
               "sha256": "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnu/0.48.0/download"
+                "https://static.crates.io/crates/windows_x86_64_gnu/0.48.0/download"
               ],
               "strip_prefix": "windows_x86_64_gnu-0.48.0",
               "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_x86_64_gnu-0.48.0.bazel"
             }
           },
-          "cui__winnow-0.5.18": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "176b6138793677221d420fd2f0aeeced263f197688b36484660da767bca2fa32",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/winnow/0.5.18/download"
-              ],
-              "strip_prefix": "winnow-0.5.18",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.winnow-0.5.18.bazel"
-            }
-          },
           "cui__byteyarn-0.2.3": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12530,62 +13822,36 @@
               "sha256": "a7534301c0ea17abb4db06d75efc7b4b0fa360fce8e175a4330d721c71c942ff",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/byteyarn/0.2.3/download"
+                "https://static.crates.io/crates/byteyarn/0.2.3/download"
               ],
               "strip_prefix": "byteyarn-0.2.3",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.byteyarn-0.2.3.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__crossbeam-utils-0.8.16": {
+          "rules_rust_proto__tokio-executor-0.1.10": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294",
+              "sha256": "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/crossbeam-utils/0.8.16/download"
+                "https://static.crates.io/crates/tokio-executor/0.1.10/download"
               ],
-              "strip_prefix": "crossbeam-utils-0.8.16",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.crossbeam-utils-0.8.16.bazel"
+              "strip_prefix": "tokio-executor-0.1.10",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-executor-0.1.10.bazel"
             }
           },
-          "cui__memchr-2.6.4": {
+          "rules_rust_proto__tokio-uds-0.1.7": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
             "attributes": {
-              "sha256": "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167",
+              "sha256": "65ae5d255ce739e8537221ed2942e0445f4b3b813daebac1c0050ddaaa3587f9",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/memchr/2.6.4/download"
+                "https://static.crates.io/crates/tokio-uds/0.1.7/download"
               ],
-              "strip_prefix": "memchr-2.6.4",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.memchr-2.6.4.bazel"
-            }
-          },
-          "rrra__serde_derive-1.0.171": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "389894603bd18c46fa56231694f8d827779c0951a667087194cf9de94ed24682",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/serde_derive/1.0.171/download"
-              ],
-              "strip_prefix": "serde_derive-1.0.171",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.serde_derive-1.0.171.bazel"
-            }
-          },
-          "cui__bitflags-2.4.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bitflags/2.4.1/download"
-              ],
-              "strip_prefix": "bitflags-2.4.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.bitflags-2.4.1.bazel"
+              "strip_prefix": "tokio-uds-0.1.7",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-uds-0.1.7.bazel"
             }
           },
           "rules_rust_prost__io-lifetimes-1.0.11": {
@@ -12595,25 +13861,12 @@
               "sha256": "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/io-lifetimes/1.0.11/download"
+                "https://static.crates.io/crates/io-lifetimes/1.0.11/download"
               ],
               "strip_prefix": "io-lifetimes-1.0.11",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.io-lifetimes-1.0.11.bazel"
             }
           },
-          "rrra__windows_aarch64_gnullvm-0.48.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.48.0/download"
-              ],
-              "strip_prefix": "windows_aarch64_gnullvm-0.48.0",
-              "build_file": "@@rules_rust~//tools/rust_analyzer/3rdparty/crates:BUILD.windows_aarch64_gnullvm-0.48.0.bazel"
-            }
-          },
           "rules_rust_prost__itoa-1.0.6": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12621,7 +13874,7 @@
               "sha256": "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/itoa/1.0.6/download"
+                "https://static.crates.io/crates/itoa/1.0.6/download"
               ],
               "strip_prefix": "itoa-1.0.6",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.itoa-1.0.6.bazel"
@@ -12634,7 +13887,7 @@
               "sha256": "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/cfg-if/1.0.0/download"
+                "https://static.crates.io/crates/cfg-if/1.0.0/download"
               ],
               "strip_prefix": "cfg-if-1.0.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.cfg-if-1.0.0.bazel"
@@ -12647,25 +13900,12 @@
               "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.48.0/download"
+                "https://static.crates.io/crates/windows_x86_64_gnullvm/0.48.0/download"
               ],
               "strip_prefix": "windows_x86_64_gnullvm-0.48.0",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.windows_x86_64_gnullvm-0.48.0.bazel"
             }
           },
-          "rules_rust_prost__pin-project-lite-0.2.9": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/pin-project-lite/0.2.9/download"
-              ],
-              "strip_prefix": "pin-project-lite-0.2.9",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.pin-project-lite-0.2.9.bazel"
-            }
-          },
           "cui__gix-credentials-0.20.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12673,12 +13913,38 @@
               "sha256": "46900b884cc5af6a6c141ee741607c0c651a4e1d33614b8d888a1ba81cc0bc8a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-credentials/0.20.0/download"
+                "https://static.crates.io/crates/gix-credentials/0.20.0/download"
               ],
               "strip_prefix": "gix-credentials-0.20.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-credentials-0.20.0.bazel"
             }
           },
+          "rules_rust_proto__tokio-0.1.22": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tokio/0.1.22/download"
+              ],
+              "strip_prefix": "tokio-0.1.22",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tokio-0.1.22.bazel"
+            }
+          },
+          "rules_rust_proto__tls-api-stub-0.1.22": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "c9a0cc8c149724db9de7d73a0e1bc80b1a74f5394f08c6f301e11f9c35fa061e",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/tls-api-stub/0.1.22/download"
+              ],
+              "strip_prefix": "tls-api-stub-0.1.22",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.tls-api-stub-0.1.22.bazel"
+            }
+          },
           "rules_rust_prost__syn-2.0.18": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12686,7 +13952,7 @@
               "sha256": "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/syn/2.0.18/download"
+                "https://static.crates.io/crates/syn/2.0.18/download"
               ],
               "strip_prefix": "syn-2.0.18",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.syn-2.0.18.bazel"
@@ -12699,25 +13965,12 @@
               "sha256": "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/linux-raw-sys/0.3.8/download"
+                "https://static.crates.io/crates/linux-raw-sys/0.3.8/download"
               ],
               "strip_prefix": "linux-raw-sys-0.3.8",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.linux-raw-sys-0.3.8.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__wasm-bindgen-cli-support-0.2.91": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "806a045c4ec4ef7c3ad86dc27bcb641b84d9eeb3846200f56d7ab0885241d654",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-cli-support/0.2.91/download"
-              ],
-              "strip_prefix": "wasm-bindgen-cli-support-0.2.91",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-cli-support-0.2.91.bazel"
-            }
-          },
           "cui__serde_derive-1.0.190": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12725,25 +13978,12 @@
               "sha256": "67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/serde_derive/1.0.190/download"
+                "https://static.crates.io/crates/serde_derive/1.0.190/download"
               ],
               "strip_prefix": "serde_derive-1.0.190",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.serde_derive-1.0.190.bazel"
             }
           },
-          "rules_rust_prost__regex-syntax-0.7.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/regex-syntax/0.7.2/download"
-              ],
-              "strip_prefix": "regex-syntax-0.7.2",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.regex-syntax-0.7.2.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__serde-1.0.171": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12751,12 +13991,25 @@
               "sha256": "30e27d1e4fd7659406c492fd6cfaf2066ba8773de45ca75e855590f856dc34a9",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/serde/1.0.171/download"
+                "https://static.crates.io/crates/serde/1.0.171/download"
               ],
               "strip_prefix": "serde-1.0.171",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.serde-1.0.171.bazel"
             }
           },
+          "rules_rust_proto__httpbis-0.7.0": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "7689cfa896b2a71da4f16206af167542b75d242b6906313e53857972a92d5614",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/httpbis/0.7.0/download"
+              ],
+              "strip_prefix": "httpbis-0.7.0",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.httpbis-0.7.0.bazel"
+            }
+          },
           "rules_rust_wasm_bindgen__wasm-bindgen-macro-0.2.91": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12764,38 +14017,12 @@
               "sha256": "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/wasm-bindgen-macro/0.2.91/download"
+                "https://static.crates.io/crates/wasm-bindgen-macro/0.2.91/download"
               ],
               "strip_prefix": "wasm-bindgen-macro-0.2.91",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.wasm-bindgen-macro-0.2.91.bazel"
             }
           },
-          "cui__pest_generator-2.7.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b3e8cba4ec22bada7fc55ffe51e2deb6a0e0db2d0b7ab0b103acc80d2510c190",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/pest_generator/2.7.0/download"
-              ],
-              "strip_prefix": "pest_generator-2.7.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.pest_generator-2.7.0.bazel"
-            }
-          },
-          "cui__chrono-tz-0.8.4": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "e23185c0e21df6ed832a12e2bda87c7d1def6842881fb634a8511ced741b0d76",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/chrono-tz/0.8.4/download"
-              ],
-              "strip_prefix": "chrono-tz-0.8.4",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.chrono-tz-0.8.4.bazel"
-            }
-          },
           "cui__gix-revision-0.22.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12803,7 +14030,7 @@
               "sha256": "c8c4b15cf2ab7a35f5bcb3ef146187c8d36df0177e171ca061913cbaaa890e89",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-revision/0.22.0/download"
+                "https://static.crates.io/crates/gix-revision/0.22.0/download"
               ],
               "strip_prefix": "gix-revision-0.22.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-revision-0.22.0.bazel"
@@ -12816,23 +14043,12 @@
               "sha256": "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/camino/1.1.6/download"
+                "https://static.crates.io/crates/camino/1.1.6/download"
               ],
               "strip_prefix": "camino-1.1.6",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.camino-1.1.6.bazel"
             }
           },
-          "cross_x86_64-pc-windows-msvc": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "urls": [
-                "https://github.com/rust-embedded/cross/releases/download/v0.2.1/cross-v0.2.1-x86_64-pc-windows-msvc.tar.gz"
-              ],
-              "sha256": "3af59ff5a2229f92b54df937c50a9a88c96dffc8ac3dde520a38fdf046d656c4",
-              "build_file_content": "exports_files(glob([\"**\"]), visibility = [\"//visibility:public\"])"
-            }
-          },
           "rules_rust_prost__signal-hook-registry-1.4.1": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12840,12 +14056,25 @@
               "sha256": "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/signal-hook-registry/1.4.1/download"
+                "https://static.crates.io/crates/signal-hook-registry/1.4.1/download"
               ],
               "strip_prefix": "signal-hook-registry-1.4.1",
               "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.signal-hook-registry-1.4.1.bazel"
             }
           },
+          "rules_rust_proto__mio-0.6.23": {
+            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
+            "ruleClassName": "http_archive",
+            "attributes": {
+              "sha256": "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4",
+              "type": "tar.gz",
+              "urls": [
+                "https://static.crates.io/crates/mio/0.6.23/download"
+              ],
+              "strip_prefix": "mio-0.6.23",
+              "build_file": "@@rules_rust~//proto/protobuf/3rdparty/crates:BUILD.mio-0.6.23.bazel"
+            }
+          },
           "cui__gix-config-0.30.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12853,7 +14082,7 @@
               "sha256": "c171514b40487d3f677ae37efc0f45ac980e3169f23c27eb30a70b47fdf88ab5",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-config/0.30.0/download"
+                "https://static.crates.io/crates/gix-config/0.30.0/download"
               ],
               "strip_prefix": "gix-config-0.30.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-config-0.30.0.bazel"
@@ -12866,77 +14095,12 @@
               "sha256": "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/unicode-ident/1.0.10/download"
+                "https://static.crates.io/crates/unicode-ident/1.0.10/download"
               ],
               "strip_prefix": "unicode-ident-1.0.10",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unicode-ident-1.0.10.bazel"
             }
           },
-          "rules_rust_prost__heck": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/heck/0.4.1/download"
-              ],
-              "strip_prefix": "heck-0.4.1",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.heck-0.4.1.bazel"
-            }
-          },
-          "rules_rust_prost__prost-build-0.11.9": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/prost-build/0.11.9/download"
-              ],
-              "strip_prefix": "prost-build-0.11.9",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.prost-build-0.11.9.bazel"
-            }
-          },
-          "cui__gix-discover-0.25.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "69507643d75a0ea9a402fcf73ced517d2b95cc95385904ac09d03e0b952fde33",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/gix-discover/0.25.0/download"
-              ],
-              "strip_prefix": "gix-discover-0.25.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-discover-0.25.0.bazel"
-            }
-          },
-          "cui__unic-common-0.9.0": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/unic-common/0.9.0/download"
-              ],
-              "strip_prefix": "unic-common-0.9.0",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.unic-common-0.9.0.bazel"
-            }
-          },
-          "rules_rust_prost__tower-0.4.13": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/tower/0.4.13/download"
-              ],
-              "strip_prefix": "tower-0.4.13",
-              "build_file": "@@rules_rust~//proto/prost/private/3rdparty/crates:BUILD.tower-0.4.13.bazel"
-            }
-          },
           "rules_rust_wasm_bindgen__itoa-1.0.8": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -12944,7 +14108,7 @@
               "sha256": "62b02a5381cc465bd3041d84623d0fa3b66738b52b8e2fc3bab8ad63ab032f4a",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/itoa/1.0.8/download"
+                "https://static.crates.io/crates/itoa/1.0.8/download"
               ],
               "strip_prefix": "itoa-1.0.8",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.itoa-1.0.8.bazel"
@@ -12957,7 +14121,7 @@
               "sha256": "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/libloading/0.7.4/download"
+                "https://static.crates.io/crates/libloading/0.7.4/download"
               ],
               "strip_prefix": "libloading-0.7.4",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.libloading-0.7.4.bazel"
@@ -12970,7 +14134,7 @@
               "sha256": "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.48.0/download"
+                "https://static.crates.io/crates/windows_aarch64_gnullvm/0.48.0/download"
               ],
               "strip_prefix": "windows_aarch64_gnullvm-0.48.0",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.windows_aarch64_gnullvm-0.48.0.bazel"
@@ -12983,25 +14147,12 @@
               "sha256": "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/alloc-stdlib/0.2.2/download"
+                "https://static.crates.io/crates/alloc-stdlib/0.2.2/download"
               ],
               "strip_prefix": "alloc-stdlib-0.2.2",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.alloc-stdlib-0.2.2.bazel"
             }
           },
-          "rules_rust_wasm_bindgen__bitflags-1.3.2": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/bitflags/1.3.2/download"
-              ],
-              "strip_prefix": "bitflags-1.3.2",
-              "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.bitflags-1.3.2.bazel"
-            }
-          },
           "rules_rust_bindgen__peeking_take_while-0.1.2": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -13009,7 +14160,7 @@
               "sha256": "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/peeking_take_while/0.1.2/download"
+                "https://static.crates.io/crates/peeking_take_while/0.1.2/download"
               ],
               "strip_prefix": "peeking_take_while-0.1.2",
               "build_file": "@@rules_rust~//bindgen/3rdparty/crates:BUILD.peeking_take_while-0.1.2.bazel"
@@ -13022,7 +14173,7 @@
               "sha256": "b048f443a1f6b02da4205c34d2e287e3fd45d75e8e2f06cfb216630ea9bff5e3",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/gix-ignore/0.8.0/download"
+                "https://static.crates.io/crates/gix-ignore/0.8.0/download"
               ],
               "strip_prefix": "gix-ignore-0.8.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.gix-ignore-0.8.0.bazel"
@@ -13035,25 +14186,12 @@
               "sha256": "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/rayon-core/1.11.0/download"
+                "https://static.crates.io/crates/rayon-core/1.11.0/download"
               ],
               "strip_prefix": "rayon-core-1.11.0",
               "build_file": "@@rules_rust~//wasm_bindgen/3rdparty/crates:BUILD.rayon-core-1.11.0.bazel"
             }
           },
-          "cui__utf8parse-0.2.1": {
-            "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
-            "ruleClassName": "http_archive",
-            "attributes": {
-              "sha256": "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a",
-              "type": "tar.gz",
-              "urls": [
-                "https://crates.io/api/v1/crates/utf8parse/0.2.1/download"
-              ],
-              "strip_prefix": "utf8parse-0.2.1",
-              "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.utf8parse-0.2.1.bazel"
-            }
-          },
           "cui__windows-0.48.0": {
             "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
             "ruleClassName": "http_archive",
@@ -13061,7 +14199,7 @@
               "sha256": "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f",
               "type": "tar.gz",
               "urls": [
-                "https://crates.io/api/v1/crates/windows/0.48.0/download"
+                "https://static.crates.io/crates/windows/0.48.0/download"
               ],
               "strip_prefix": "windows-0.48.0",
               "build_file": "@@rules_rust~//crate_universe/3rdparty/crates:BUILD.windows-0.48.0.bazel"
@@ -13116,6 +14254,13 @@
             "rules_rust_prost__tokio-1.28.2",
             "rules_rust_prost__tokio-stream-0.1.14",
             "rules_rust_prost__tonic-0.9.2",
+            "rules_rust_proto__grpc-0.6.2",
+            "rules_rust_proto__grpc-compiler-0.6.2",
+            "rules_rust_proto__log-0.4.17",
+            "rules_rust_proto__protobuf-2.8.2",
+            "rules_rust_proto__protobuf-codegen-2.8.2",
+            "rules_rust_proto__tls-api-0.1.22",
+            "rules_rust_proto__tls-api-stub-0.1.22",
             "llvm-raw",
             "rules_rust_bindgen__bindgen-cli-0.69.1",
             "rules_rust_bindgen__bindgen-0.69.1",
@@ -13425,6 +14570,41 @@
           ],
           [
             "rules_rust~",
+            "rules_rust_proto__grpc-0.6.2",
+            "rules_rust~~i~rules_rust_proto__grpc-0.6.2"
+          ],
+          [
+            "rules_rust~",
+            "rules_rust_proto__grpc-compiler-0.6.2",
+            "rules_rust~~i~rules_rust_proto__grpc-compiler-0.6.2"
+          ],
+          [
+            "rules_rust~",
+            "rules_rust_proto__log-0.4.17",
+            "rules_rust~~i~rules_rust_proto__log-0.4.17"
+          ],
+          [
+            "rules_rust~",
+            "rules_rust_proto__protobuf-2.8.2",
+            "rules_rust~~i~rules_rust_proto__protobuf-2.8.2"
+          ],
+          [
+            "rules_rust~",
+            "rules_rust_proto__protobuf-codegen-2.8.2",
+            "rules_rust~~i~rules_rust_proto__protobuf-codegen-2.8.2"
+          ],
+          [
+            "rules_rust~",
+            "rules_rust_proto__tls-api-0.1.22",
+            "rules_rust~~i~rules_rust_proto__tls-api-0.1.22"
+          ],
+          [
+            "rules_rust~",
+            "rules_rust_proto__tls-api-stub-0.1.22",
+            "rules_rust~~i~rules_rust_proto__tls-api-stub-0.1.22"
+          ],
+          [
+            "rules_rust~",
             "rules_rust_wasm_bindgen__anyhow-1.0.71",
             "rules_rust~~i~rules_rust_wasm_bindgen__anyhow-1.0.71"
           ],
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/README.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/README.md
similarity index 99%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/README.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/README.md
index 694bf2f..7e03c3c 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/README.md
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/README.md
@@ -24,7 +24,7 @@
 cxx-build = "1.0"
 ```
 
-*Compiler support: requires rustc 1.60+ and c++11 or newer*<br>
+*Compiler support: requires rustc 1.63+ and c++11 or newer*<br>
 *[Release notes](https://github.com/dtolnay/cxx/releases)*
 
 <br>
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/.gitignore b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/.gitignore
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/.gitignore
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/.gitignore
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/README.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/README.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/README.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/README.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/book.toml b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/book.toml
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/book.toml
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/book.toml
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/build.js b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/build.js
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/build.js
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/build.js
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/build.sh b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/build.sh
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/build.sh
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/build.sh
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/css/cxx.css b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/css/cxx.css
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/css/cxx.css
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/css/cxx.css
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/diagram/.gitignore b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/diagram/.gitignore
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/diagram/.gitignore
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/diagram/.gitignore
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/diagram/Makefile b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/diagram/Makefile
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/diagram/Makefile
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/diagram/Makefile
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/diagram/overview.tex b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/diagram/overview.tex
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/diagram/overview.tex
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/diagram/overview.tex
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/package-lock.json b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/package-lock.json
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/package-lock.json
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/package-lock.json
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/package.json b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/package.json
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/package.json
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/package.json
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/404.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/404.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/404.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/404.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/SUMMARY.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/SUMMARY.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/SUMMARY.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/SUMMARY.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/async.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/async.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/async.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/async.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/attributes.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/attributes.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/attributes.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/attributes.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/box.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/box.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/box.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/box.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/cxxstring.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/cxxstring.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/cxxstring.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/cxxstring.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/cxxvector.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/cxxvector.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/cxxvector.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/cxxvector.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/fn.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/fn.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/fn.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/fn.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/rawptr.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/rawptr.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/rawptr.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/rawptr.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/result.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/result.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/result.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/result.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/sharedptr.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/sharedptr.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/sharedptr.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/sharedptr.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/slice.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/slice.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/slice.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/slice.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/str.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/str.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/str.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/str.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/string.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/string.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/string.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/string.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/uniqueptr.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/uniqueptr.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/uniqueptr.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/uniqueptr.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/vec.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/vec.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/binding/vec.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/binding/vec.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/bindings.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/bindings.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/bindings.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/bindings.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/build/bazel.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/build/bazel.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/build/bazel.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/build/bazel.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/build/cargo.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/build/cargo.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/build/cargo.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/build/cargo.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/build/cmake.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/build/cmake.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/build/cmake.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/build/cmake.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/build/other.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/build/other.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/build/other.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/build/other.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/building.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/building.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/building.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/building.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/concepts.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/concepts.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/concepts.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/concepts.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/context.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/context.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/context.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/context.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/cxx.png b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/cxx.png
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/cxx.png
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/cxx.png
Binary files differ
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/extern-c++.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/extern-c++.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/extern-c++.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/extern-c++.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/extern-rust.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/extern-rust.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/extern-rust.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/extern-rust.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/index.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/index.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/index.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/index.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/overview.svg b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/overview.svg
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/overview.svg
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/overview.svg
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/reference.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/reference.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/reference.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/reference.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/shared.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/shared.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/shared.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/shared.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/tutorial.md b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/tutorial.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/src/tutorial.md
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/src/tutorial.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/theme/head.hbs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/theme/head.hbs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/book/theme/head.hbs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/book/theme/head.hbs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/build.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/build.rs
similarity index 72%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/build.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/build.rs
index 8dad9c7..ba43c7a 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/build.rs
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/build.rs
@@ -1,3 +1,6 @@
+#![allow(unknown_lints)]
+#![allow(unexpected_cfgs)]
+
 use std::env;
 use std::path::{Path, PathBuf};
 use std::process::Command;
@@ -24,8 +27,18 @@
     }
 
     if let Some(rustc) = rustc_version() {
-        if rustc.minor < 60 {
-            println!("cargo:warning=The cxx crate requires a rustc version 1.60.0 or newer.");
+        if rustc.minor >= 80 {
+            println!("cargo:rustc-check-cfg=cfg(built_with_cargo)");
+            println!("cargo:rustc-check-cfg=cfg(compile_error_if_alloc)");
+            println!("cargo:rustc-check-cfg=cfg(compile_error_if_std)");
+            println!("cargo:rustc-check-cfg=cfg(cxx_experimental_no_alloc)");
+            println!("cargo:rustc-check-cfg=cfg(doc_cfg)");
+            println!("cargo:rustc-check-cfg=cfg(no_core_ffi_c_char)");
+            println!("cargo:rustc-check-cfg=cfg(skip_ui_tests)");
+        }
+
+        if rustc.minor < 63 {
+            println!("cargo:warning=The cxx crate requires a rustc version 1.63.0 or newer.");
             println!(
                 "cargo:warning=You appear to be building with: {}",
                 rustc.version,
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/compile_flags.txt b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/compile_flags.txt
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/compile_flags.txt
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/compile_flags.txt
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/include/cxx.h b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/include/cxx.h
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/include/cxx.h
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/include/cxx.h
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/reindeer.toml b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/reindeer.toml
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/reindeer.toml
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/reindeer.toml
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/rust-toolchain.toml b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/rust-toolchain.toml
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/rust-toolchain.toml
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/rust-toolchain.toml
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/c_char.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/c_char.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/c_char.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/c_char.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/cxx.cc b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/cxx.cc
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/cxx.cc
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/cxx.cc
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/cxx_string.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/cxx_string.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/cxx_string.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/cxx_string.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/cxx_vector.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/cxx_vector.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/cxx_vector.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/cxx_vector.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/exception.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/exception.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/exception.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/exception.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/extern_type.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/extern_type.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/extern_type.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/extern_type.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/fmt.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/fmt.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/fmt.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/fmt.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/function.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/function.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/function.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/function.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/hash.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/hash.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/hash.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/hash.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/lib.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/lib.rs
similarity index 99%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/lib.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/lib.rs
index 2469e952..d7ca8232 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/lib.rs
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/lib.rs
@@ -18,7 +18,7 @@
 //!
 //! <br>
 //!
-//! *Compiler support: requires rustc 1.60+ and c++11 or newer*<br>
+//! *Compiler support: requires rustc 1.63+ and c++11 or newer*<br>
 //! *[Release notes](https://github.com/dtolnay/cxx/releases)*
 //!
 //! <br>
@@ -364,7 +364,7 @@
 //! </table>
 
 #![no_std]
-#![doc(html_root_url = "https://docs.rs/cxx/1.0.121")]
+#![doc(html_root_url = "https://docs.rs/cxx/1.0.122")]
 #![cfg_attr(doc_cfg, feature(doc_cfg))]
 #![deny(
     improper_ctypes,
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/lossy.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/lossy.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/lossy.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/lossy.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/macros/assert.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/macros/assert.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/macros/assert.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/macros/assert.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/macros/mod.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/macros/mod.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/macros/mod.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/macros/mod.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/memory.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/memory.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/memory.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/memory.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/opaque.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/opaque.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/opaque.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/opaque.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/result.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/result.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/result.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/result.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_slice.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_slice.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_slice.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_slice.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_str.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_str.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_str.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_str.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_string.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_string.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_string.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_string.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_type.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_type.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_type.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_type.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_vec.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_vec.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_vec.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_vec.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/shared_ptr.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/shared_ptr.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/shared_ptr.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/shared_ptr.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/sip.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/sip.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/sip.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/sip.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/exception.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/exception.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/exception.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/exception.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/mod.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/mod.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/mod.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/mod.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_slice.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_slice.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_slice.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_slice.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_str.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_str.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_str.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_str.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_string.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_string.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_string.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_string.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_vec.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_vec.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_vec.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_vec.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/type_id.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/type_id.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/type_id.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/type_id.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/unique_ptr.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/unique_ptr.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/unique_ptr.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/unique_ptr.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/unwind.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/unwind.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/unwind.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/unwind.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/vector.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/vector.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/vector.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/vector.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/weak_ptr.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/weak_ptr.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/weak_ptr.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/weak_ptr.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/BUCK b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/BUCK
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/BUCK
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/BUCK
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/BUILD b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/BUILD
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/BUILD
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/BUILD
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/compiletest.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/compiletest.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/compiletest.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/compiletest.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/cxx_gen.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/cxx_gen.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/cxx_gen.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/cxx_gen.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/cxx_string.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/cxx_string.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/cxx_string.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/cxx_string.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/cxx_vector.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/cxx_vector.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/cxx_vector.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/cxx_vector.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/test.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/test.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/test.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/test.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/array_len_expr.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/array_len_expr.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/array_len_expr.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/array_len_expr.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/array_len_expr.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/array_len_expr.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/array_len_expr.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/array_len_expr.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/array_len_suffix.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/array_len_suffix.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/array_len_suffix.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/array_len_suffix.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/array_len_suffix.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/array_len_suffix.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/array_len_suffix.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/array_len_suffix.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/async_fn.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/async_fn.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/async_fn.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/async_fn.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/async_fn.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/async_fn.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/async_fn.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/async_fn.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/bad_explicit_impl.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/bad_explicit_impl.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/bad_explicit_impl.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/bad_explicit_impl.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/bad_explicit_impl.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/bad_explicit_impl.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/bad_explicit_impl.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/bad_explicit_impl.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/by_value_not_supported.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/by_value_not_supported.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/by_value_not_supported.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/by_value_not_supported.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/by_value_not_supported.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/by_value_not_supported.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/by_value_not_supported.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/by_value_not_supported.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/const_fn.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/const_fn.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/const_fn.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/const_fn.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/const_fn.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/const_fn.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/const_fn.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/const_fn.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/data_enums.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/data_enums.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/data_enums.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/data_enums.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/data_enums.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/data_enums.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/data_enums.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/data_enums.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/deny_elided_lifetimes.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/deny_elided_lifetimes.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/deny_elided_lifetimes.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/deny_elided_lifetimes.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/deny_elided_lifetimes.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/deny_elided_lifetimes.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/deny_elided_lifetimes.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/deny_elided_lifetimes.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/deny_missing_docs.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/deny_missing_docs.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/deny_missing_docs.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/deny_missing_docs.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/deny_missing_docs.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/deny_missing_docs.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/deny_missing_docs.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/deny_missing_docs.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/derive_duplicate.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/derive_duplicate.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/derive_duplicate.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/derive_duplicate.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/derive_duplicate.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/derive_duplicate.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/derive_duplicate.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/derive_duplicate.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/derive_noncopy.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/derive_noncopy.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/derive_noncopy.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/derive_noncopy.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/derive_noncopy.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/derive_noncopy.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/derive_noncopy.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/derive_noncopy.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/drop_shared.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/drop_shared.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/drop_shared.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/drop_shared.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/drop_shared.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/drop_shared.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/drop_shared.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/drop_shared.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/empty_enum.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/empty_enum.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/empty_enum.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/empty_enum.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/empty_enum.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/empty_enum.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/empty_enum.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/empty_enum.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/empty_struct.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/empty_struct.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/empty_struct.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/empty_struct.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/empty_struct.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/empty_struct.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/empty_struct.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/empty_struct.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_inconsistent.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_inconsistent.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_inconsistent.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_inconsistent.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_inconsistent.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_inconsistent.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_inconsistent.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_inconsistent.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_match_without_wildcard.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_match_without_wildcard.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_match_without_wildcard.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_match_without_wildcard.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_match_without_wildcard.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_match_without_wildcard.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_match_without_wildcard.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_match_without_wildcard.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_out_of_bounds.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_out_of_bounds.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_out_of_bounds.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_out_of_bounds.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_out_of_bounds.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_out_of_bounds.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_out_of_bounds.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_out_of_bounds.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_overflows.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_overflows.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_overflows.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_overflows.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_overflows.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_overflows.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_overflows.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_overflows.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_receiver.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_receiver.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_receiver.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_receiver.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_receiver.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_receiver.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_receiver.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_receiver.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_unsatisfiable.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_unsatisfiable.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_unsatisfiable.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_unsatisfiable.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_unsatisfiable.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_unsatisfiable.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/enum_unsatisfiable.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/enum_unsatisfiable.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/expected_named.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/expected_named.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/expected_named.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/expected_named.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/expected_named.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/expected_named.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/expected_named.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/expected_named.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_fn_abi.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_fn_abi.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_fn_abi.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_fn_abi.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_fn_abi.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_fn_abi.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_fn_abi.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_fn_abi.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_bound.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_bound.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_bound.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_bound.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_bound.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_bound.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_bound.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_bound.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_generic.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_generic.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_generic.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_generic.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_generic.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_generic.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_generic.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_generic.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_lifetime_bound.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_lifetime_bound.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_lifetime_bound.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_lifetime_bound.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_lifetime_bound.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_lifetime_bound.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/extern_type_lifetime_bound.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/extern_type_lifetime_bound.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/fallible_fnptr.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/fallible_fnptr.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/fallible_fnptr.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/fallible_fnptr.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/fallible_fnptr.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/fallible_fnptr.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/fallible_fnptr.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/fallible_fnptr.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/function_with_body.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/function_with_body.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/function_with_body.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/function_with_body.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/function_with_body.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/function_with_body.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/function_with_body.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/function_with_body.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/generic_enum.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/generic_enum.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/generic_enum.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/generic_enum.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/generic_enum.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/generic_enum.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/generic_enum.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/generic_enum.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/impl_trait_for_type.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/impl_trait_for_type.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/impl_trait_for_type.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/impl_trait_for_type.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/impl_trait_for_type.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/impl_trait_for_type.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/impl_trait_for_type.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/impl_trait_for_type.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/include.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/include.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/include.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/include.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/include.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/include.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/include.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/include.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/lifetime_extern_cxx.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/lifetime_extern_cxx.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/lifetime_extern_cxx.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/lifetime_extern_cxx.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/lifetime_extern_cxx.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/lifetime_extern_cxx.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/lifetime_extern_cxx.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/lifetime_extern_cxx.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/lifetime_extern_rust.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/lifetime_extern_rust.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/lifetime_extern_rust.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/lifetime_extern_rust.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/lifetime_extern_rust.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/lifetime_extern_rust.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/lifetime_extern_rust.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/lifetime_extern_rust.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/missing_unsafe.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/missing_unsafe.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/missing_unsafe.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/missing_unsafe.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/missing_unsafe.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/missing_unsafe.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/missing_unsafe.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/missing_unsafe.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/multiple_parse_error.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/multiple_parse_error.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/multiple_parse_error.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/multiple_parse_error.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/multiple_parse_error.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/multiple_parse_error.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/multiple_parse_error.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/multiple_parse_error.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/mut_return.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/mut_return.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/mut_return.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/mut_return.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/mut_return.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/mut_return.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/mut_return.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/mut_return.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/non_integer_discriminant_enum.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/non_integer_discriminant_enum.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/non_integer_discriminant_enum.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/non_integer_discriminant_enum.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/non_integer_discriminant_enum.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/non_integer_discriminant_enum.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/non_integer_discriminant_enum.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/non_integer_discriminant_enum.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/nonempty_impl_block.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/nonempty_impl_block.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/nonempty_impl_block.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/nonempty_impl_block.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/nonempty_impl_block.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/nonempty_impl_block.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/nonempty_impl_block.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/nonempty_impl_block.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/nonlocal_rust_type.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/nonlocal_rust_type.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/nonlocal_rust_type.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/nonlocal_rust_type.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/nonlocal_rust_type.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/nonlocal_rust_type.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/nonlocal_rust_type.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/nonlocal_rust_type.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/opaque_autotraits.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/opaque_autotraits.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/opaque_autotraits.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/opaque_autotraits.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/opaque_autotraits.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/opaque_autotraits.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/opaque_autotraits.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/opaque_autotraits.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/opaque_not_sized.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/opaque_not_sized.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/opaque_not_sized.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/opaque_not_sized.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/opaque_not_sized.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/opaque_not_sized.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/opaque_not_sized.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/opaque_not_sized.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/pin_mut_opaque.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/pin_mut_opaque.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/pin_mut_opaque.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/pin_mut_opaque.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/pin_mut_opaque.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/pin_mut_opaque.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/pin_mut_opaque.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/pin_mut_opaque.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_in_fnptr.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_in_fnptr.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_in_fnptr.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_in_fnptr.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_in_fnptr.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_in_fnptr.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_in_fnptr.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_in_fnptr.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_missing_unsafe.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_missing_unsafe.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_missing_unsafe.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_missing_unsafe.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_missing_unsafe.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_missing_unsafe.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_missing_unsafe.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_missing_unsafe.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_no_const_mut.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_no_const_mut.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_no_const_mut.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_no_const_mut.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_no_const_mut.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_no_const_mut.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_no_const_mut.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_no_const_mut.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_unsupported.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_unsupported.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_unsupported.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_unsupported.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_unsupported.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_unsupported.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/ptr_unsupported.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/ptr_unsupported.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/raw_ident_namespace.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/raw_ident_namespace.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/raw_ident_namespace.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/raw_ident_namespace.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/raw_ident_namespace.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/raw_ident_namespace.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/raw_ident_namespace.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/raw_ident_namespace.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reference_to_reference.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reference_to_reference.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reference_to_reference.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reference_to_reference.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reference_to_reference.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reference_to_reference.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reference_to_reference.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reference_to_reference.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reserved_lifetime.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reserved_lifetime.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reserved_lifetime.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reserved_lifetime.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reserved_lifetime.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reserved_lifetime.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reserved_lifetime.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reserved_lifetime.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reserved_name.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reserved_name.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reserved_name.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reserved_name.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reserved_name.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reserved_name.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/reserved_name.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/reserved_name.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/result_no_display.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/result_no_display.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/result_no_display.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/result_no_display.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/result_no_display.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/result_no_display.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/result_no_display.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/result_no_display.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/root_namespace.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/root_namespace.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/root_namespace.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/root_namespace.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/root_namespace.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/root_namespace.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/root_namespace.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/root_namespace.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/rust_pinned.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/rust_pinned.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/rust_pinned.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/rust_pinned.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/rust_pinned.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/rust_pinned.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/rust_pinned.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/rust_pinned.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/slice_of_type_alias.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/slice_of_type_alias.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/slice_of_type_alias.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/slice_of_type_alias.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/slice_of_type_alias.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/slice_of_type_alias.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/slice_of_type_alias.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/slice_of_type_alias.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/slice_unsupported.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/slice_unsupported.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/slice_unsupported.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/slice_unsupported.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/slice_unsupported.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/slice_unsupported.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/slice_unsupported.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/slice_unsupported.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/struct_cycle.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/struct_cycle.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/struct_cycle.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/struct_cycle.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/struct_cycle.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/struct_cycle.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/struct_cycle.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/struct_cycle.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/type_alias_rust.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/type_alias_rust.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/type_alias_rust.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/type_alias_rust.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/type_alias_rust.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/type_alias_rust.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/type_alias_rust.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/type_alias_rust.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_as_mut.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_as_mut.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_as_mut.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_as_mut.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_as_mut.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_as_mut.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_as_mut.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_as_mut.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_to_opaque.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_to_opaque.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_to_opaque.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_to_opaque.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_to_opaque.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_to_opaque.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_to_opaque.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_to_opaque.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_twice.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_twice.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_twice.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_twice.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_twice.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_twice.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unique_ptr_twice.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unique_ptr_twice.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unnamed_receiver.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unnamed_receiver.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unnamed_receiver.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unnamed_receiver.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unnamed_receiver.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unnamed_receiver.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unnamed_receiver.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unnamed_receiver.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unpin_impl.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unpin_impl.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unpin_impl.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unpin_impl.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unpin_impl.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unpin_impl.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unpin_impl.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unpin_impl.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unrecognized_receiver.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unrecognized_receiver.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unrecognized_receiver.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unrecognized_receiver.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unrecognized_receiver.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unrecognized_receiver.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unrecognized_receiver.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unrecognized_receiver.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unsupported_elided.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unsupported_elided.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unsupported_elided.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unsupported_elided.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unsupported_elided.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unsupported_elided.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/unsupported_elided.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/unsupported_elided.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/vec_opaque.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/vec_opaque.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/vec_opaque.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/vec_opaque.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/vec_opaque.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/vec_opaque.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/vec_opaque.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/vec_opaque.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/vector_autotraits.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/vector_autotraits.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/vector_autotraits.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/vector_autotraits.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/vector_autotraits.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/vector_autotraits.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/vector_autotraits.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/vector_autotraits.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/wrong_type_id.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/wrong_type_id.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/wrong_type_id.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/wrong_type_id.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/wrong_type_id.stderr b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/wrong_type_id.stderr
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/ui/wrong_type_id.stderr
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/ui/wrong_type_id.stderr
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/unique_ptr.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/unique_ptr.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tests/unique_ptr.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tests/unique_ptr.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/bazel/BUILD b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/bazel/BUILD
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/bazel/BUILD
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/bazel/BUILD
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/bazel/extension.bzl b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/bazel/extension.bzl
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/bazel/extension.bzl
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/bazel/extension.bzl
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/bazel/rust_cxx_bridge.bzl b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/bazel/rust_cxx_bridge.bzl
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/bazel/rust_cxx_bridge.bzl
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/bazel/rust_cxx_bridge.bzl
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/buck/.ignore b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/buck/.ignore
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/buck/.ignore
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/buck/.ignore
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/buck/rust_cxx_bridge.bzl b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/buck/rust_cxx_bridge.bzl
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/buck/rust_cxx_bridge.bzl
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/buck/rust_cxx_bridge.bzl
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/buck/toolchains/BUCK b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/buck/toolchains/BUCK
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/buck/toolchains/BUCK
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/buck/toolchains/BUCK
diff --git a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/cargo/build.rs b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/cargo/build.rs
similarity index 92%
rename from third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/cargo/build.rs
rename to third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/cargo/build.rs
index 401c741..4034ec8 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/tools/cargo/build.rs
+++ b/third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/tools/cargo/build.rs
@@ -48,6 +48,9 @@
 ";
 
 fn main() {
+    println!("cargo:rustc-check-cfg=cfg(feature, values(\"experimental-async-fn\"))");
+    println!("cargo:rustc-check-cfg=cfg(feature, values(\"experimental-enum-variants-from-header\"))");
+
     if Path::new("src/syntax/mod.rs").exists() {
         return;
     }
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/.cargo_vcs_info.json b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/.cargo_vcs_info.json
deleted file mode 100644
index a0193a03..0000000
--- a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/.cargo_vcs_info.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-  "git": {
-    "sha1": "084b47d7fa624a38cf429b9022cdd4ec2a05b88b"
-  },
-  "path_in_vcs": "flags"
-}
\ No newline at end of file
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/.cargo-checksum.json b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/.cargo-checksum.json
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/.cargo-checksum.json
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/.cargo-checksum.json
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/.cargo_vcs_info.json b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/.cargo_vcs_info.json
new file mode 100644
index 0000000..0df20d2
--- /dev/null
+++ b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/.cargo_vcs_info.json
@@ -0,0 +1,6 @@
+{
+  "git": {
+    "sha1": "462896c80629a51ddcdc72fa55af0bb4befbb675"
+  },
+  "path_in_vcs": "flags"
+}
\ No newline at end of file
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/Cargo.toml b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/Cargo.toml
similarity index 82%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/Cargo.toml
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/Cargo.toml
index ecbeed5..2431db7 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/Cargo.toml
+++ b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/Cargo.toml
@@ -11,11 +11,17 @@
 
 [package]
 edition = "2021"
-rust-version = "1.60"
+rust-version = "1.63"
 name = "cxxbridge-flags"
-version = "1.0.121"
+version = "1.0.122"
 authors = ["David Tolnay <dtolnay@gmail.com>"]
+build = false
+autobins = false
+autoexamples = false
+autotests = false
+autobenches = false
 description = "Compiler configuration of the `cxx` crate (implementation detail)"
+readme = false
 categories = [
     "development-tools::ffi",
     "compilers",
@@ -27,6 +33,10 @@
 rustdoc-args = ["--generate-link-to-definition"]
 targets = ["x86_64-unknown-linux-gnu"]
 
+[lib]
+name = "cxxbridge_flags"
+path = "src/lib.rs"
+
 [features]
 "c++14" = []
 "c++17" = []
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/Cargo.toml.orig b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/Cargo.toml.orig
similarity index 92%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/Cargo.toml.orig
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/Cargo.toml.orig
index 0b8d7850..bc49ee06 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/Cargo.toml.orig
+++ b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/Cargo.toml.orig
@@ -1,13 +1,13 @@
 [package]
 name = "cxxbridge-flags"
-version = "1.0.121"
+version = "1.0.122"
 authors = ["David Tolnay <dtolnay@gmail.com>"]
 categories = ["development-tools::ffi", "compilers"]
 description = "Compiler configuration of the `cxx` crate (implementation detail)"
 edition = "2021"
 license = "MIT OR Apache-2.0"
 repository = "https://github.com/dtolnay/cxx"
-rust-version = "1.60"
+rust-version = "1.63"
 
 [features]
 default = [] # c++11
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/LICENSE-APACHE b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/LICENSE-APACHE
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/LICENSE-APACHE
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/LICENSE-APACHE
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/LICENSE-MIT b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/LICENSE-MIT
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/LICENSE-MIT
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/LICENSE-MIT
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/src/impl.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/src/impl.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/src/impl.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/src/impl.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/src/lib.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/src/lib.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/src/lib.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/src/lib.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/.cargo_vcs_info.json b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/.cargo_vcs_info.json
deleted file mode 100644
index e37b6a72a..0000000
--- a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/.cargo_vcs_info.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-  "git": {
-    "sha1": "084b47d7fa624a38cf429b9022cdd4ec2a05b88b"
-  },
-  "path_in_vcs": "macro"
-}
\ No newline at end of file
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/.cargo-checksum.json b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/.cargo-checksum.json
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/.cargo-checksum.json
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/.cargo-checksum.json
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/.cargo_vcs_info.json b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/.cargo_vcs_info.json
new file mode 100644
index 0000000..f48e372
--- /dev/null
+++ b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/.cargo_vcs_info.json
@@ -0,0 +1,6 @@
+{
+  "git": {
+    "sha1": "462896c80629a51ddcdc72fa55af0bb4befbb675"
+  },
+  "path_in_vcs": "macro"
+}
\ No newline at end of file
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/Cargo.toml b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/Cargo.toml
similarity index 90%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/Cargo.toml
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/Cargo.toml
index 6bd1f66..2951aa9 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/Cargo.toml
+++ b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/Cargo.toml
@@ -11,14 +11,19 @@
 
 [package]
 edition = "2021"
-rust-version = "1.60"
+rust-version = "1.63"
 name = "cxxbridge-macro"
-version = "1.0.121"
+version = "1.0.122"
 authors = ["David Tolnay <dtolnay@gmail.com>"]
+build = false
 exclude = [
     "build.rs",
     "README.md",
 ]
+autobins = false
+autoexamples = false
+autotests = false
+autobenches = false
 description = "Implementation detail of the `cxx` crate."
 homepage = "https://cxx.rs"
 readme = "README.md"
@@ -32,6 +37,8 @@
 targets = ["x86_64-unknown-linux-gnu"]
 
 [lib]
+name = "cxxbridge_macro"
+path = "src/lib.rs"
 proc-macro = true
 
 [dependencies.clang-ast]
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/Cargo.toml.orig b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/Cargo.toml.orig
similarity index 96%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/Cargo.toml.orig
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/Cargo.toml.orig
index 7d16b12..75cfc981 100644
--- a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/Cargo.toml.orig
+++ b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/Cargo.toml.orig
@@ -1,6 +1,6 @@
 [package]
 name = "cxxbridge-macro"
-version = "1.0.121"
+version = "1.0.122"
 authors = ["David Tolnay <dtolnay@gmail.com>"]
 categories = ["development-tools::ffi"]
 description = "Implementation detail of the `cxx` crate."
@@ -10,7 +10,7 @@
 keywords = ["ffi"]
 license = "MIT OR Apache-2.0"
 repository = "https://github.com/dtolnay/cxx"
-rust-version = "1.60"
+rust-version = "1.63"
 
 [lib]
 proc-macro = true
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/LICENSE-APACHE b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/LICENSE-APACHE
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/LICENSE-APACHE
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/LICENSE-APACHE
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/LICENSE-MIT b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/LICENSE-MIT
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/LICENSE-MIT
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/LICENSE-MIT
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/README.md b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/README.md
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/README.md
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/README.md
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/clang.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/clang.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/clang.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/clang.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/derive.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/derive.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/derive.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/derive.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/expand.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/expand.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/expand.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/expand.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/generics.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/generics.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/generics.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/generics.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/lib.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/lib.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/lib.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/lib.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/load.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/load.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/load.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/load.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/atom.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/atom.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/atom.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/atom.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/attrs.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/attrs.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/attrs.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/attrs.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/cfg.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/cfg.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/cfg.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/cfg.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/check.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/check.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/check.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/check.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/derive.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/derive.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/derive.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/derive.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/discriminant.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/discriminant.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/discriminant.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/discriminant.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/doc.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/doc.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/doc.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/doc.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/error.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/error.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/error.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/error.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/file.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/file.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/file.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/file.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/ident.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/ident.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/ident.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/ident.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/impls.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/impls.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/impls.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/impls.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/improper.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/improper.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/improper.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/improper.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/instantiate.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/instantiate.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/instantiate.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/instantiate.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/mangle.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/mangle.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/mangle.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/mangle.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/map.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/map.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/map.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/map.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/mod.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/mod.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/mod.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/mod.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/names.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/names.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/names.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/names.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/namespace.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/namespace.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/namespace.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/namespace.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/parse.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/parse.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/parse.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/parse.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/pod.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/pod.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/pod.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/pod.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/qualified.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/qualified.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/qualified.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/qualified.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/report.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/report.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/report.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/report.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/resolve.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/resolve.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/resolve.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/resolve.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/set.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/set.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/set.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/set.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/symbol.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/symbol.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/symbol.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/symbol.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/tokens.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/tokens.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/tokens.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/tokens.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/toposort.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/toposort.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/toposort.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/toposort.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/trivial.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/trivial.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/trivial.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/trivial.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/types.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/types.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/types.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/types.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/visit.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/visit.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/visit.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/visit.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/tokens.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/tokens.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/tokens.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/tokens.rs
diff --git a/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/type_id.rs b/third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/type_id.rs
similarity index 100%
rename from third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/type_id.rs
rename to third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/type_id.rs
diff --git a/third_party/rust/cxx/v1/BUILD.gn b/third_party/rust/cxx/v1/BUILD.gn
index 69da821..5595988 100644
--- a/third_party/rust/cxx/v1/BUILD.gn
+++ b/third_party/rust/cxx/v1/BUILD.gn
@@ -13,47 +13,47 @@
   epoch = "1"
   crate_type = "rlib"
   crate_root =
-      "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/lib.rs"
+      "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/lib.rs"
   sources = [
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/c_char.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/cxx_string.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/cxx_vector.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/exception.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/extern_type.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/fmt.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/function.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/hash.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/lib.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/lossy.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/macros/assert.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/macros/mod.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/memory.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/opaque.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/result.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_slice.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_str.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_string.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_type.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/rust_vec.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/shared_ptr.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/sip.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/exception.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/mod.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_slice.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_str.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_string.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/symbols/rust_vec.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/type_id.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/unique_ptr.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/unwind.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/vector.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/src/weak_ptr.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/c_char.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/cxx_string.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/cxx_vector.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/exception.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/extern_type.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/fmt.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/function.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/hash.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/lib.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/lossy.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/macros/assert.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/macros/mod.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/memory.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/opaque.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/result.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_slice.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_str.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_string.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_type.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/rust_vec.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/shared_ptr.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/sip.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/exception.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/mod.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_slice.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_str.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_string.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/symbols/rust_vec.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/type_id.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/unique_ptr.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/unwind.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/vector.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/src/weak_ptr.rs",
   ]
   inputs = []
 
   build_native_rust_unit_tests = false
   edition = "2021"
-  cargo_pkg_version = "1.0.121"
+  cargo_pkg_version = "1.0.122"
   cargo_pkg_authors = "David Tolnay <dtolnay@gmail.com>"
   cargo_pkg_name = "cxx"
   cargo_pkg_description = "Safe interop between Rust and C++"
diff --git a/third_party/rust/cxx/v1/README.chromium b/third_party/rust/cxx/v1/README.chromium
index 3a7c5a11..5407753 100644
--- a/third_party/rust/cxx/v1/README.chromium
+++ b/third_party/rust/cxx/v1/README.chromium
@@ -1,9 +1,9 @@
 Name: cxx
 URL: https://crates.io/crates/cxx
 Description: Safe interop between Rust and C++
-Version: 1.0.121
+Version: 1.0.122
 Security Critical: yes
 Shipped: yes
 License: Apache 2.0
-License File: //third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/LICENSE-APACHE
-Revision: 084b47d7fa624a38cf429b9022cdd4ec2a05b88b
+License File: //third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/LICENSE-APACHE
+Revision: 462896c80629a51ddcdc72fa55af0bb4befbb675
diff --git a/third_party/rust/cxx/v1/cxx.h b/third_party/rust/cxx/v1/cxx.h
index 1e9886b1..922f453 100644
--- a/third_party/rust/cxx/v1/cxx.h
+++ b/third_party/rust/cxx/v1/cxx.h
@@ -3,4 +3,4 @@
 // found in the LICENSE file.
 
 // Forwarding header to the specific cxx version header.
-#include "third_party/rust/chromium_crates_io/vendor/cxx-1.0.121/include/cxx.h"
+#include "third_party/rust/chromium_crates_io/vendor/cxx-1.0.122/include/cxx.h"
diff --git a/third_party/rust/cxxbridge_flags/v1/BUILD.gn b/third_party/rust/cxxbridge_flags/v1/BUILD.gn
index 1e8cb62..f5614fc 100644
--- a/third_party/rust/cxxbridge_flags/v1/BUILD.gn
+++ b/third_party/rust/cxxbridge_flags/v1/BUILD.gn
@@ -12,16 +12,16 @@
   crate_name = "cxxbridge_flags"
   epoch = "1"
   crate_type = "rlib"
-  crate_root = "//third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/src/lib.rs"
+  crate_root = "//third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/src/lib.rs"
   sources = [
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/src/impl.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/src/lib.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/src/impl.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/src/lib.rs",
   ]
   inputs = []
 
   build_native_rust_unit_tests = false
   edition = "2021"
-  cargo_pkg_version = "1.0.121"
+  cargo_pkg_version = "1.0.122"
   cargo_pkg_authors = "David Tolnay <dtolnay@gmail.com>"
   cargo_pkg_name = "cxxbridge-flags"
   cargo_pkg_description =
diff --git a/third_party/rust/cxxbridge_flags/v1/README.chromium b/third_party/rust/cxxbridge_flags/v1/README.chromium
index 5225074..7822732 100644
--- a/third_party/rust/cxxbridge_flags/v1/README.chromium
+++ b/third_party/rust/cxxbridge_flags/v1/README.chromium
@@ -1,9 +1,9 @@
 Name: cxxbridge-flags
 URL: https://crates.io/crates/cxxbridge-flags
 Description: Compiler configuration of the `cxx` crate (implementation detail)
-Version: 1.0.121
+Version: 1.0.122
 Security Critical: yes
 Shipped: yes
 License: Apache 2.0
-License File: //third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.121/LICENSE-APACHE
-Revision: 084b47d7fa624a38cf429b9022cdd4ec2a05b88b
+License File: //third_party/rust/chromium_crates_io/vendor/cxxbridge-flags-1.0.122/LICENSE-APACHE
+Revision: 462896c80629a51ddcdc72fa55af0bb4befbb675
diff --git a/third_party/rust/cxxbridge_macro/v1/BUILD.gn b/third_party/rust/cxxbridge_macro/v1/BUILD.gn
index a505039..94c4a81 100644
--- a/third_party/rust/cxxbridge_macro/v1/BUILD.gn
+++ b/third_party/rust/cxxbridge_macro/v1/BUILD.gn
@@ -12,52 +12,52 @@
   crate_name = "cxxbridge_macro"
   epoch = "1"
   crate_type = "proc-macro"
-  crate_root = "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/lib.rs"
+  crate_root = "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/lib.rs"
   sources = [
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/clang.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/derive.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/expand.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/generics.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/lib.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/load.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/atom.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/attrs.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/cfg.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/check.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/derive.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/discriminant.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/doc.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/error.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/file.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/ident.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/impls.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/improper.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/instantiate.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/mangle.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/map.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/mod.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/names.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/namespace.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/parse.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/pod.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/qualified.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/report.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/resolve.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/set.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/symbol.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/tokens.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/toposort.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/trivial.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/types.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/syntax/visit.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/tokens.rs",
-    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/src/type_id.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/clang.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/derive.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/expand.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/generics.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/lib.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/load.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/atom.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/attrs.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/cfg.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/check.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/derive.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/discriminant.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/doc.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/error.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/file.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/ident.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/impls.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/improper.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/instantiate.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/mangle.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/map.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/mod.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/names.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/namespace.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/parse.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/pod.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/qualified.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/report.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/resolve.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/set.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/symbol.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/tokens.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/toposort.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/trivial.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/types.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/syntax/visit.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/tokens.rs",
+    "//third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/src/type_id.rs",
   ]
   inputs = []
 
   build_native_rust_unit_tests = false
   edition = "2021"
-  cargo_pkg_version = "1.0.121"
+  cargo_pkg_version = "1.0.122"
   cargo_pkg_authors = "David Tolnay <dtolnay@gmail.com>"
   cargo_pkg_name = "cxxbridge-macro"
   cargo_pkg_description = "Implementation detail of the `cxx` crate."
diff --git a/third_party/rust/cxxbridge_macro/v1/README.chromium b/third_party/rust/cxxbridge_macro/v1/README.chromium
index aa6823c7..6f5aaef 100644
--- a/third_party/rust/cxxbridge_macro/v1/README.chromium
+++ b/third_party/rust/cxxbridge_macro/v1/README.chromium
@@ -1,9 +1,9 @@
 Name: cxxbridge-macro
 URL: https://crates.io/crates/cxxbridge-macro
 Description: Implementation detail of the `cxx` crate.
-Version: 1.0.121
+Version: 1.0.122
 Security Critical: yes
 Shipped: yes
 License: Apache 2.0
-License File: //third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.121/LICENSE-APACHE
-Revision: 084b47d7fa624a38cf429b9022cdd4ec2a05b88b
+License File: //third_party/rust/chromium_crates_io/vendor/cxxbridge-macro-1.0.122/LICENSE-APACHE
+Revision: 462896c80629a51ddcdc72fa55af0bb4befbb675
diff --git a/third_party/webrtc b/third_party/webrtc
index 5ef183e..7518ae9 160000
--- a/third_party/webrtc
+++ b/third_party/webrtc
@@ -1 +1 @@
-Subproject commit 5ef183eee8cf92f06f0f1f220bd4c39f8e6e34b2
+Subproject commit 7518ae9ac92f7020daa38de3fb87de9a5e875872
diff --git a/tools/clang/blink_gc_plugin/RecordInfo.cpp b/tools/clang/blink_gc_plugin/RecordInfo.cpp
index 6d2b408..486f793 100644
--- a/tools/clang/blink_gc_plugin/RecordInfo.cpp
+++ b/tools/clang/blink_gc_plugin/RecordInfo.cpp
@@ -642,8 +642,10 @@
   std::string typeName = typedefType->getDecl()->getNameAsString();
   if (!Config::IsIterator(typeName))
     return nullptr;
-  RecordInfo* info =
-      cache_->Lookup(elaboratedType->getQualifier()->getAsType());
+  const NestedNameSpecifier* qualifier = elaboratedType->getQualifier();
+  if (!qualifier)
+    return nullptr;
+  RecordInfo* info = cache_->Lookup(qualifier->getAsType());
 
   bool on_heap = false;
   // Silently handle unknown types; the on-heap collection types will
diff --git a/tools/metrics/histograms/histograms_xml_files.gni b/tools/metrics/histograms/histograms_xml_files.gni
index 8324ccc..12bf172 100644
--- a/tools/metrics/histograms/histograms_xml_files.gni
+++ b/tools/metrics/histograms/histograms_xml_files.gni
@@ -73,7 +73,6 @@
   "//tools/metrics/histograms/metadata/custom_tabs/enums.xml",
   "//tools/metrics/histograms/metadata/custom_tabs/histograms.xml",
   "//tools/metrics/histograms/metadata/data/histograms.xml",
-  "//tools/metrics/histograms/metadata/desktop/histograms.xml",
   "//tools/metrics/histograms/metadata/dev/enums.xml",
   "//tools/metrics/histograms/metadata/dev/histograms.xml",
   "//tools/metrics/histograms/metadata/disk/histograms.xml",
@@ -126,6 +125,8 @@
   "//tools/metrics/histograms/metadata/kiosk/histograms.xml",
   "//tools/metrics/histograms/metadata/language/enums.xml",
   "//tools/metrics/histograms/metadata/language/histograms.xml",
+  "//tools/metrics/histograms/metadata/lens/enums.xml",
+  "//tools/metrics/histograms/metadata/lens/histograms.xml",
   "//tools/metrics/histograms/metadata/leveldb_proto/histograms.xml",
   "//tools/metrics/histograms/metadata/local/histograms.xml",
   "//tools/metrics/histograms/metadata/login/histograms.xml",
diff --git a/tools/metrics/histograms/metadata/autofill/histograms.xml b/tools/metrics/histograms/metadata/autofill/histograms.xml
index 4bac3a8..26e26204 100644
--- a/tools/metrics/histograms/metadata/autofill/histograms.xml
+++ b/tools/metrics/histograms/metadata/autofill/histograms.xml
@@ -3716,6 +3716,18 @@
   </summary>
 </histogram>
 
+<histogram name="Autofill.PlusAddresses.Modal.{Status}.Refreshes"
+    units="refreshes" expires_after="2024-12-31">
+  <owner>jkeitel@google.com</owner>
+  <owner>brunobraga@google.com</owner>
+  <summary>
+    Records number of times a user refreshes the proposed plus addresses during
+    the lifetime of a creation dialog (modal or bottomsheet). Emitted once per
+    creation dialog including error states.
+  </summary>
+  <token key="Status" variants="AutofillPlusAddressModalCompletionStatus"/>
+</histogram>
+
 <histogram name="Autofill.PlusAddresses.Modal.{Status}.ShownDuration"
     units="ms" expires_after="2024-09-24">
   <owner>mreichhoff@chromium.org</owner>
@@ -3725,9 +3737,9 @@
     Records the duration of time the user take to interact with the experimental
     plus addresses modal/bottomsheet on iOS, providing insight on the user
     experience with it. The duration is the span between when the
-    modal/bottomsheet on iOS is shown and when the user decide to confirm or
-    cancel the plus address(error status is recorded if user cancel after an
-    error occurs).
+    modal/bottomsheet is shown and when the user decides to confirm or cancel
+    the plus address. An error status is recorded if the user cancels after an
+    error occurs.
   </summary>
   <token key="Status" variants="AutofillPlusAddressModalCompletionStatus"/>
 </histogram>
diff --git a/tools/metrics/histograms/metadata/cookie/enums.xml b/tools/metrics/histograms/metadata/cookie/enums.xml
index e922ce2..d41e1c8 100644
--- a/tools/metrics/histograms/metadata/cookie/enums.xml
+++ b/tools/metrics/histograms/metadata/cookie/enums.xml
@@ -282,13 +282,6 @@
   <int value="90" label="Port 9095"/>
 </enum>
 
-<enum name="TruncatingCharacterInCookieStringType">
-  <int value="0" label="No truncating character"/>
-  <int value="1" label="NULL (\x0)"/>
-  <int value="2" label="New Line (\xD)"/>
-  <int value="3" label="Line Feed (\xA)"/>
-</enum>
-
 </enums>
 
 </histogram-configuration>
diff --git a/tools/metrics/histograms/metadata/cookie/histograms.xml b/tools/metrics/histograms/metadata/cookie/histograms.xml
index 5223954d..834768b 100644
--- a/tools/metrics/histograms/metadata/cookie/histograms.xml
+++ b/tools/metrics/histograms/metadata/cookie/histograms.xml
@@ -1179,16 +1179,6 @@
   </summary>
 </histogram>
 
-<histogram name="Cookie.TruncatingCharacterInCookieString"
-    enum="TruncatingCharacterInCookieStringType" expires_after="2024-06-16">
-  <owner>bingler@chromium.org</owner>
-  <owner>awillia@chromium.org</owner>
-  <summary>
-    Measures which character caused the cookie string to be truncated. Logged
-    whenever a cookie is created via CanonicalCookie::Create().
-  </summary>
-</histogram>
-
 <histogram name="Cookie.Type2" enum="CookieType" expires_after="2025-03-28">
   <owner>arichiv@chromium.org</owner>
   <owner>src/net/cookies/OWNERS</owner>
diff --git a/tools/metrics/histograms/metadata/desktop/histograms.xml b/tools/metrics/histograms/metadata/desktop/histograms.xml
deleted file mode 100644
index 3a5d377..0000000
--- a/tools/metrics/histograms/metadata/desktop/histograms.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<!--
-Copyright 2024 The Chromium Authors
-Use of this source code is governed by a BSD-style license that can be
-found in the LICENSE file.
--->
-
-<!--
-This file is used to generate a comprehensive list of histograms for desktop
-chrome along with a detailed description for each histogram.
-
-For best practices on writing histogram descriptions, see
-https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md
-
-Please follow the instructions in the OWNERS file in this directory to find a
-reviewer. If no OWNERS file exists, please consider signing up at
-go/reviewing-metrics (Googlers only), as all subdirectories are expected to
-have an OWNERS file. As a last resort you can send the CL to
-chromium-metrics-reviews@google.com.
--->
-
-<histogram-configuration>
-
-<histograms>
-
-<histogram name="Desktop.LensOverlay.Shown" enum="BooleanEnabled"
-    expires_after="M135">
-  <owner>erikchen@chromium.org</owner>
-  <owner>mercerd@google.com</owner>
-  <summary>
-    Recorded once when the lens overlay UI is shown. This UMA histogram is used
-    to track feature usage and retention, and thus should never expire.
-  </summary>
-</histogram>
-
-</histograms>
-
-</histogram-configuration>
diff --git a/tools/metrics/histograms/metadata/ios/enums.xml b/tools/metrics/histograms/metadata/ios/enums.xml
index 90e3889..168a69be 100644
--- a/tools/metrics/histograms/metadata/ios/enums.xml
+++ b/tools/metrics/histograms/metadata/ios/enums.xml
@@ -1024,6 +1024,7 @@
   <int value="1" label="Used password suggestion"/>
   <int value="2" label="Accessed Password Manager through the long press menu"/>
   <int value="3" label="Accessed Password Details through the long press menu"/>
+  <int value="4" label="The suggestion provider's type was incorrect"/>
 </enum>
 
 <enum name="PaymentsSuggestionBottomSheetExitReason">
diff --git a/tools/metrics/histograms/metadata/desktop/OWNERS b/tools/metrics/histograms/metadata/lens/OWNERS
similarity index 89%
rename from tools/metrics/histograms/metadata/desktop/OWNERS
rename to tools/metrics/histograms/metadata/lens/OWNERS
index 9e6c773..2e5ba585 100644
--- a/tools/metrics/histograms/metadata/desktop/OWNERS
+++ b/tools/metrics/histograms/metadata/lens/OWNERS
@@ -3,3 +3,4 @@
 # Prefer sending CLs to the owners listed below.
 # Use chromium-metrics-reviews@google.com as a backup.
 erikchen@chromium.org
+jdonnelly@chromium.org
diff --git a/tools/metrics/histograms/metadata/lens/enums.xml b/tools/metrics/histograms/metadata/lens/enums.xml
new file mode 100644
index 0000000..c3de5cd
--- /dev/null
+++ b/tools/metrics/histograms/metadata/lens/enums.xml
@@ -0,0 +1,84 @@
+<!--
+Copyright 2024 The Chromium Authors
+Use of this source code is governed by a BSD-style license that can be
+found in the LICENSE file.
+-->
+
+<!--
+
+This file describes the enumerations referenced by entries in histograms.xml for
+this directory. Some enums may instead be listed in the central enums.xml file
+at src/tools/metrics/histograms/enums.xml when multiple files use them.
+
+For best practices on writing enumerations descriptions, see
+https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md#Enum-Histograms
+
+Please follow the instructions in the OWNERS file in this directory to find a
+reviewer. If no OWNERS file exists, please consider signing up at
+go/reviewing-metrics (Googlers only), as all subdirectories are expected to
+have an OWNERS file. As a last resort you can send the CL to
+chromium-metrics-reviews@google.com.
+-->
+
+<histogram-configuration>
+
+<!-- Enum types -->
+
+<enums>
+
+<!-- LINT.IfChange(LensOverlayDismissalSource) -->
+
+<enum name="LensOverlayDismissalSource">
+  <summary>The UI source of a Lens Overlay dismissal.</summary>
+  <int value="0" label="Overlay close button"/>
+  <int value="1" label="Overlay background click"/>
+  <int value="2" label="Side panel close button"/>
+  <int value="3" label="Toolbar button"/>
+  <int value="4" label="Page changed (navigation)"/>
+  <int value="5" label="Background tab contents discarded"/>
+  <int value="6" label="Tab backgrounded while screenshotting"/>
+  <int value="7" label="Error: Screenshot creation failed"/>
+  <int value="8" label="Error: Screenshot encoding failed"/>
+  <int value="9" label="Escape key press"/>
+  <int value="10" label="Unexpected side panel open"/>
+  <int value="11" label="Browser went into fullscreen"/>
+</enum>
+
+<!-- LINT.ThenChange(//chrome/browser/ui/lens/lens_overlay_dismissal_source.h:LensOverlayDismissalSource) -->
+
+<!-- LINT.IfChange(LensOverlayInvocationSource) -->
+
+<enum name="LensOverlayInvocationSource">
+  <summary>The UI source of a Lens Overlay invocation.</summary>
+  <int value="0" label="App menu"/>
+  <int value="1" label="Content area page context menu"/>
+  <int value="2" label="Content area image context menu"/>
+  <int value="3" label="Toolbar button"/>
+  <int value="4" label="Find in page dialog button"/>
+  <int value="5" label="Omnibox button"/>
+</enum>
+
+<!-- LINT.ThenChange(//chrome/browser/ui/lens/lens_overlay_invocation_source.h:LensOverlayInvocationSource) -->
+
+<!-- LINT.IfChange(LensPermissionBubbleUserAction) -->
+
+<enum name="LensPermissionBubbleUserAction">
+  <summary>The user interaction with the Lens Permission Bubble</summary>
+  <int value="0" label="Help Center link opened"/>
+  <int value="1" label="Accept button pressed"/>
+  <int value="2" label="Cancel button pressed"/>
+  <int value="3" label="Esc key pressed"/>
+</enum>
+
+<!-- LINT.ThenChange(//chrome/browser/ui/lens/lens_permission_bubble_controller.h:UserAction) -->
+
+<!-- TODO(crbug.com/336793181): `git cl format` deletes the ThenChange above
+     unless this enum is here. Fix the issue and delete this fake enum.  -->
+
+<enum name="ZZZZZZZ">
+  <int value="0" label="Z"/>
+</enum>
+
+</enums>
+
+</histogram-configuration>
diff --git a/tools/metrics/histograms/metadata/lens/histograms.xml b/tools/metrics/histograms/metadata/lens/histograms.xml
new file mode 100644
index 0000000..94201c44
--- /dev/null
+++ b/tools/metrics/histograms/metadata/lens/histograms.xml
@@ -0,0 +1,157 @@
+<!--
+Copyright 2024 The Chromium Authors
+Use of this source code is governed by a BSD-style license that can be
+found in the LICENSE file.
+-->
+
+<!--
+This file is used to generate a comprehensive list of histograms for desktop
+chrome along with a detailed description for each histogram.
+
+For best practices on writing histogram descriptions, see
+https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md
+
+Please follow the instructions in the OWNERS file in this directory to find a
+reviewer. If no OWNERS file exists, please consider signing up at
+go/reviewing-metrics (Googlers only), as all subdirectories are expected to
+have an OWNERS file. As a last resort you can send the CL to
+chromium-metrics-reviews@google.com.
+-->
+
+<histogram-configuration>
+
+<histograms>
+
+<histogram name="Lens.ImageClassification.ClassificationTime.EarlyTerminatedMs"
+    units="ms" expires_after="2022-07-31">
+  <owner>yusuyoutube@google.com</owner>
+  <owner>benwgold@google.com</owner>
+  <summary>
+    Logged the time between the start of the Lens image classifcation call to
+    the early termination before the call completes. Only logged on Android.
+  </summary>
+</histogram>
+
+<histogram
+    name="Lens.ImageClassification.ClassificationTime.SuccessOnQueryResultMs"
+    units="ms" expires_after="2022-11-13">
+  <owner>yusuyoutube@google.com</owner>
+  <owner>benwgold@google.com</owner>
+  <summary>
+    Logged the end to end latency of the Lens image classifcation call when the
+    user completes a long press on an image. Only logged on Android.
+  </summary>
+</histogram>
+
+<histogram name="Lens.ImageClassification.ResultState"
+    enum="LensClassifyResultState" expires_after="2022-10-09">
+  <owner>yusuyoutube@google.com</owner>
+  <owner>benwgold@google.com</owner>
+  <summary>
+    Logged the result state of the Lens image classifcation call when the user
+    completes a long press on an image. Only logged on Android.
+  </summary>
+</histogram>
+
+<histogram name="Lens.ImageClassification.SdkError" enum="LensSdkError"
+    expires_after="2022-08-07">
+  <owner>yusuyoutube@google.com</owner>
+  <owner>benwgold@google.com</owner>
+  <summary>
+    Logged the error code when there is a Lens SDK error occurred within the
+    classification session. The error code is an integer constant defined by the
+    SDK. Only logged on Android. See http://b/170422682 for more details.
+  </summary>
+</histogram>
+
+<histogram name="Lens.Omnibox.LensSupportStatus" enum="LensSupportStatus"
+    expires_after="2024-09-01">
+  <owner>yusuyoutube@google.com</owner>
+  <owner>benwgold@google.com</owner>
+  <owner>fgorski@chromium.org</owner>
+  <owner>wylieb@chromium.org</owner>
+  <owner>lens-chrome@google.com</owner>
+  <summary>
+    Whether the user supports the camera assisted search with Google Lens and if
+    not, the reason why. Recorded only if the feature is enabled when the
+    omnibox or the new tab page is loaded.
+  </summary>
+</histogram>
+
+<histogram name="Lens.Overlay.Dismissed" enum="LensOverlayDismissalSource"
+    expires_after="2025-05-06">
+  <owner>jdonnelly@chromium.org</owner>
+  <owner>mercerd@google.com</owner>
+  <summary>
+    Recorded once when the Lens Overlay feature is dismissed, enumerated by the
+    UI entry point used or the event that triggered the dimissal. In general, it
+    should not be possible to attempt to dismiss the feature if the overlay is
+    not currently showing but if this happens, nothing will be recorded.
+  </summary>
+</histogram>
+
+<histogram name="Lens.Overlay.Invoked" enum="LensOverlayInvocationSource"
+    expires_after="2025-05-06">
+  <owner>jdonnelly@chromium.org</owner>
+  <owner>mercerd@google.com</owner>
+  <summary>
+    Recorded once when the Lens Overlay feature is invoked, enumerated by the UI
+    entry point used. In general, it should not be possible to attempt to invoke
+    the feature if the overlay is already showing but if this happens, nothing
+    will be recorded.
+
+    See also Lens.Overlay.Shown, which is recoded when the overlay is
+    successfully shown.
+
+    This UMA histogram is used to track feature usage and retention, and thus
+    should never expire.
+  </summary>
+</histogram>
+
+<histogram name="Lens.Overlay.PermissionBubble.Shown" enum="BooleanShown"
+    expires_after="2025-05-06">
+  <owner>jdonnelly@chromium.org</owner>
+  <owner>mercerd@google.com</owner>
+  <summary>
+    Recorded each time the Lens Permission Bubble is requested to be shown.
+    'Shown' is recorded when the Lens Permission Bubble is successfully shown.
+    'Not Shown' is recorded when the Lens Permission Bubble is already showing.
+  </summary>
+</histogram>
+
+<histogram name="Lens.Overlay.PermissionBubble.UserAction"
+    enum="LensPermissionBubbleUserAction" expires_after="2025-05-06">
+  <owner>jdonnelly@chromium.org</owner>
+  <owner>mercerd@google.com</owner>
+  <summary>
+    Recorded each time the user interacts with the Lens Permission Bubble,
+    enumerated by those actions.
+  </summary>
+</histogram>
+
+<histogram name="Lens.Overlay.Shown" enum="BooleanEnabled" expires_after="M135">
+  <owner>erikchen@chromium.org</owner>
+  <owner>mercerd@google.com</owner>
+  <summary>
+    Recorded once when the lens overlay UI is shown. This UMA histogram is used
+    to track feature usage and retention, and thus should never expire.
+  </summary>
+</histogram>
+
+<histogram name="Lens.QuickActionSearchWidget.LensSupportStatus"
+    enum="LensSupportStatus" expires_after="2024-06-21">
+  <owner>benwgold@chromium.org</owner>
+  <owner>yusuyoutube@google.com</owner>
+  <owner>lens-chrome@google.com</owner>
+  <summary>
+    Whether the user supports the camera assisted search with Google Lens and if
+    not, the reason why. Recorded only when the Lens button is tapped on the
+    Quick Action Search Widget.
+
+    Note: Gap between 04/22 - 08/23.
+  </summary>
+</histogram>
+
+</histograms>
+
+</histogram-configuration>
diff --git a/tools/metrics/histograms/metadata/oobe/histograms.xml b/tools/metrics/histograms/metadata/oobe/histograms.xml
index 26c2a54..72d75da 100644
--- a/tools/metrics/histograms/metadata/oobe/histograms.xml
+++ b/tools/metrics/histograms/metadata/oobe/histograms.xml
@@ -65,6 +65,7 @@
   <variant name="Osauth-error"/>
   <variant name="Parental-handoff"/>
   <variant name="Password-selection"/>
+  <variant name="Personalized-apps"/>
   <variant name="Pin-setup"/>
   <variant name="Quick-start"/>
   <variant name="Recommend-apps"/>
@@ -362,6 +363,9 @@
   <variant name="Password-selection.GaiaPasswordFallback"/>
   <variant name="Password-selection.LocalPasswordChoice"/>
   <variant name="Password-selection.LocalPasswordForced"/>
+  <variant name="Personalized-apps.Back"/>
+  <variant name="Personalized-apps.Next"/>
+  <variant name="Personalized-apps.Skip"/>
   <variant name="Pin-setup.Done"/>
   <variant name="Pin-setup.Skipped"/>
   <variant name="Pin-setup.TimedOut"/>
diff --git a/tools/metrics/histograms/metadata/others/enums.xml b/tools/metrics/histograms/metadata/others/enums.xml
index 9dd671f..e5c2904 100644
--- a/tools/metrics/histograms/metadata/others/enums.xml
+++ b/tools/metrics/histograms/metadata/others/enums.xml
@@ -40,52 +40,6 @@
   <int value="3" label="Wayland"/>
 </enum>
 
-<!-- LINT.IfChange(LensOverlayDismissalSource) -->
-
-<enum name="LensOverlayDismissalSource">
-  <summary>The UI source of a Lens Overlay dismissal.</summary>
-  <int value="0" label="Overlay close button"/>
-  <int value="1" label="Overlay background click"/>
-  <int value="2" label="Side panel close button"/>
-  <int value="3" label="Toolbar button"/>
-  <int value="4" label="Page changed (navigation)"/>
-  <int value="5" label="Background tab contents discarded"/>
-  <int value="6" label="Tab backgrounded while screenshotting"/>
-  <int value="7" label="Error: Screenshot creation failed"/>
-  <int value="8" label="Error: Screenshot encoding failed"/>
-  <int value="9" label="Escape key press"/>
-  <int value="10" label="Unexpected side panel open"/>
-  <int value="11" label="Browser went into fullscreen"/>
-</enum>
-
-<!-- LINT.ThenChange(//chrome/browser/ui/lens/lens_overlay_dismissal_source.h:LensOverlayDismissalSource) -->
-
-<!-- LINT.IfChange(LensOverlayInvocationSource) -->
-
-<enum name="LensOverlayInvocationSource">
-  <summary>The UI source of a Lens Overlay invocation.</summary>
-  <int value="0" label="App menu"/>
-  <int value="1" label="Content area page context menu"/>
-  <int value="2" label="Content area image context menu"/>
-  <int value="3" label="Toolbar button"/>
-  <int value="4" label="Find in page dialog button"/>
-  <int value="5" label="Omnibox button"/>
-</enum>
-
-<!-- LINT.ThenChange(//chrome/browser/ui/lens/lens_overlay_invocation_source.h:LensOverlayInvocationSource) -->
-
-<!-- LINT.IfChange(LensPermissionBubbleUserAction) -->
-
-<enum name="LensPermissionBubbleUserAction">
-  <summary>The user interaction with the Lens Permission Bubble</summary>
-  <int value="0" label="Help Center link opened"/>
-  <int value="1" label="Accept button pressed"/>
-  <int value="2" label="Cancel button pressed"/>
-  <int value="3" label="Esc key pressed"/>
-</enum>
-
-<!-- LINT.ThenChange(//chrome/browser/ui/lens/lens_permission_bubble_controller.h:UserAction) -->
-
 <enum name="RedactionToolCaller">
   <summary>The caller of the redaction tool.</summary>
   <int value="1" label="System Logs Uploader"/>
diff --git a/tools/metrics/histograms/metadata/others/histograms.xml b/tools/metrics/histograms/metadata/others/histograms.xml
index 02cce0c..12ff1bdc 100644
--- a/tools/metrics/histograms/metadata/others/histograms.xml
+++ b/tools/metrics/histograms/metadata/others/histograms.xml
@@ -7064,127 +7064,6 @@
   </summary>
 </histogram>
 
-<histogram name="Lens.ImageClassification.ClassificationTime.EarlyTerminatedMs"
-    units="ms" expires_after="2022-07-31">
-  <owner>yusuyoutube@google.com</owner>
-  <owner>benwgold@google.com</owner>
-  <summary>
-    Logged the time between the start of the Lens image classifcation call to
-    the early termination before the call completes. Only logged on Android.
-  </summary>
-</histogram>
-
-<histogram
-    name="Lens.ImageClassification.ClassificationTime.SuccessOnQueryResultMs"
-    units="ms" expires_after="2022-11-13">
-  <owner>yusuyoutube@google.com</owner>
-  <owner>benwgold@google.com</owner>
-  <summary>
-    Logged the end to end latency of the Lens image classifcation call when the
-    user completes a long press on an image. Only logged on Android.
-  </summary>
-</histogram>
-
-<histogram name="Lens.ImageClassification.ResultState"
-    enum="LensClassifyResultState" expires_after="2022-10-09">
-  <owner>yusuyoutube@google.com</owner>
-  <owner>benwgold@google.com</owner>
-  <summary>
-    Logged the result state of the Lens image classifcation call when the user
-    completes a long press on an image. Only logged on Android.
-  </summary>
-</histogram>
-
-<histogram name="Lens.ImageClassification.SdkError" enum="LensSdkError"
-    expires_after="2022-08-07">
-  <owner>yusuyoutube@google.com</owner>
-  <owner>benwgold@google.com</owner>
-  <summary>
-    Logged the error code when there is a Lens SDK error occurred within the
-    classification session. The error code is an integer constant defined by the
-    SDK. Only logged on Android. See http://b/170422682 for more details.
-  </summary>
-</histogram>
-
-<histogram name="Lens.Omnibox.LensSupportStatus" enum="LensSupportStatus"
-    expires_after="2024-09-01">
-  <owner>yusuyoutube@google.com</owner>
-  <owner>benwgold@google.com</owner>
-  <owner>fgorski@chromium.org</owner>
-  <owner>wylieb@chromium.org</owner>
-  <owner>lens-chrome@google.com</owner>
-  <summary>
-    Whether the user supports the camera assisted search with Google Lens and if
-    not, the reason why. Recorded only if the feature is enabled when the
-    omnibox or the new tab page is loaded.
-  </summary>
-</histogram>
-
-<histogram name="Lens.Overlay.Dismissed" enum="LensOverlayDismissalSource"
-    expires_after="2025-05-06">
-  <owner>jdonnelly@chromium.org</owner>
-  <owner>mercerd@google.com</owner>
-  <summary>
-    Recorded once when the Lens Overlay feature is dismissed, enumerated by the
-    UI entry point used or the event that triggered the dimissal. In general, it
-    should not be possible to attempt to dismiss the feature if the overlay is
-    not currently showing but if this happens, nothing will be recorded.
-  </summary>
-</histogram>
-
-<histogram name="Lens.Overlay.Invoked" enum="LensOverlayInvocationSource"
-    expires_after="2025-05-06">
-  <owner>jdonnelly@chromium.org</owner>
-  <owner>mercerd@google.com</owner>
-  <summary>
-    Recorded once when the Lens Overlay feature is invoked, enumerated by the UI
-    entry point used. In general, it should not be possible to attempt to invoke
-    the feature if the overlay is already showing but if this happens, nothing
-    will be recorded.
-
-    See also Desktop.LensOverlay.Shown, which is recoded when the overlay is
-    successfully shown.
-
-    This UMA histogram is used to track feature usage and retention, and thus
-    should never expire.
-  </summary>
-</histogram>
-
-<histogram name="Lens.Overlay.PermissionBubble.Shown" enum="BooleanShown"
-    expires_after="2025-05-06">
-  <owner>jdonnelly@chromium.org</owner>
-  <owner>mercerd@google.com</owner>
-  <summary>
-    Recorded each time the Lens Permission Bubble is requested to be shown.
-    'Shown' is recorded when the Lens Permission Bubble is successfully shown.
-    'Not Shown' is recorded when the Lens Permission Bubble is already showing.
-  </summary>
-</histogram>
-
-<histogram name="Lens.Overlay.PermissionBubble.UserAction"
-    enum="LensPermissionBubbleUserAction" expires_after="2025-05-06">
-  <owner>jdonnelly@chromium.org</owner>
-  <owner>mercerd@google.com</owner>
-  <summary>
-    Recorded each time the user interacts with the Lens Permission Bubble,
-    enumerated by those actions.
-  </summary>
-</histogram>
-
-<histogram name="Lens.QuickActionSearchWidget.LensSupportStatus"
-    enum="LensSupportStatus" expires_after="2024-06-21">
-  <owner>benwgold@chromium.org</owner>
-  <owner>yusuyoutube@google.com</owner>
-  <owner>lens-chrome@google.com</owner>
-  <summary>
-    Whether the user supports the camera assisted search with Google Lens and if
-    not, the reason why. Recorded only when the Lens button is tapped on the
-    Quick Action Search Widget.
-
-    Note: Gap between 04/22 - 08/23.
-  </summary>
-</histogram>
-
 <histogram name="Linux.DisplayServerSupport" enum="DisplayServerSupport"
     expires_after="never">
 <!-- expires-never: Needed to measure Linux ecosystem. -->
diff --git a/tools/perf/core/perfetto_binary_roller/binary_deps.json b/tools/perf/core/perfetto_binary_roller/binary_deps.json
index 8bcafa4..9e811bed 100644
--- a/tools/perf/core/perfetto_binary_roller/binary_deps.json
+++ b/tools/perf/core/perfetto_binary_roller/binary_deps.json
@@ -5,8 +5,8 @@
             "full_remote_path": "perfetto-luci-artifacts/v45.0/linux-arm64/trace_processor_shell"
         },
         "win": {
-            "hash": "4bb514760a289123a95ee6e3a9665a38e6d06575",
-            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/win/e03af0caee1bf0b7ece55e42e607d738f65f9c7b/trace_processor_shell.exe"
+            "hash": "fff592ed2e8733d4d45247522c8f87756f54493d",
+            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/win/e12318bd5a080502f7f18dbd12c0ac5b4cb5478d/trace_processor_shell.exe"
         },
         "linux_arm": {
             "hash": "f7cc2e856e9ee1260e9691c078f3771193eb4dea",
@@ -21,8 +21,8 @@
             "full_remote_path": "perfetto-luci-artifacts/v45.0/mac-arm64/trace_processor_shell"
         },
         "linux": {
-            "hash": "4481ef5b3d14b6baa6bf69daa8e0bd1759d2a783",
-            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/linux/e03af0caee1bf0b7ece55e42e607d738f65f9c7b/trace_processor_shell"
+            "hash": "5743efafe09539bb27397baeeba179e3b49911ae",
+            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/linux/88e57e40368dad29c52215a186748e502c0f2a85/trace_processor_shell"
         }
     },
     "power_profile.sql": {
diff --git a/ui/accelerated_widget_mac/ca_renderer_layer_tree.h b/ui/accelerated_widget_mac/ca_renderer_layer_tree.h
index c1b3d36..275d50b 100644
--- a/ui/accelerated_widget_mac/ca_renderer_layer_tree.h
+++ b/ui/accelerated_widget_mac/ca_renderer_layer_tree.h
@@ -12,9 +12,9 @@
 #include <list>
 #include <memory>
 #include <optional>
+#include <unordered_map>
 
 #include "base/apple/scoped_cftyperef.h"
-#include "base/containers/flat_map.h"
 #include "base/feature_list.h"
 #include "base/memory/raw_ptr.h"
 #include "base/memory/raw_ptr_exclusion.h"
@@ -98,7 +98,8 @@
   class ContentLayer;
   friend class ContentLayer;
 
-  using CALayerMap = base::flat_map<IOSurfaceRef, base::WeakPtr<ContentLayer>>;
+  using CALayerMap =
+      std::unordered_map<IOSurfaceRef, base::WeakPtr<ContentLayer>>;
 
   void MatchLayersToOldTreeDefault(CARendererLayerTree* old_tree);
   void MatchLayersToOldTree(CARendererLayerTree* old_tree);
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ca.xtb b/ui/chromeos/translations/ui_chromeos_strings_ca.xtb
index ab2efa3..937ace74 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_ca.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_ca.xtb
@@ -280,7 +280,7 @@
 <translation id="3264582393905923483">Context</translation>
 <translation id="3272909651715601089"><ph name="PATH" /> no s'ha pogut obrir</translation>
 <translation id="3280431534455935878">S'està preparant</translation>
-<translation id="3280719573299097127">Tens connexió a una xarxa d'ús mesurat. La sincronització de fitxers s'ha posat en pausa.</translation>
+<translation id="3280719573299097127">Tens connexió de xarxa d'ús mesurat. La sincronització de fitxers s'ha posat en pausa.</translation>
 <translation id="3280987981688031357">Disc de vinil</translation>
 <translation id="3290356915286466215">No segura</translation>
 <translation id="3291218047831493686">Connecta amb aquesta xarxa per canviar la configuració del bloqueig de la SIM</translation>
diff --git a/ui/views/controls/button/checkbox_unittest.cc b/ui/views/controls/button/checkbox_unittest.cc
index cb235a7..a4b4fd6 100644
--- a/ui/views/controls/button/checkbox_unittest.cc
+++ b/ui/views/controls/button/checkbox_unittest.cc
@@ -9,7 +9,6 @@
 
 #include "base/memory/raw_ptr.h"
 #include "base/strings/utf_string_conversions.h"
-#include "base/test/scoped_feature_list.h"
 #include "ui/accessibility/ax_enums.mojom.h"
 #include "ui/accessibility/ax_node_data.h"
 #include "ui/events/base_event_utils.h"
@@ -75,16 +74,6 @@
   std::unique_ptr<Widget> widget_;
 };
 
-class CheckboxTestRefreshOnly : public CheckboxTest {
- public:
-  CheckboxTestRefreshOnly() {
-    scoped_feature_list_.InitWithFeatures({features::kChromeRefresh2023}, {});
-  }
-
- private:
-  base::test::ScopedFeatureList scoped_feature_list_;
-};
-
 TEST_F(CheckboxTest, AccessibilityTest) {
   const std::u16string label_text = u"Some label";
   StyledLabel label;
@@ -126,7 +115,7 @@
   EXPECT_EQ(actual, expected);
 }
 
-TEST_F(CheckboxTestRefreshOnly, TestCorrectContainerColor) {
+TEST_F(CheckboxTest, TestCorrectContainerColor) {
   // Enabled
   checkbox()->SetChecked(true);
   int icon_state = checkbox()->GetIconState(Button::ButtonState::STATE_NORMAL);
diff --git a/ui/views/controls/combobox/combobox_unittest.cc b/ui/views/controls/combobox/combobox_unittest.cc
index 4bf5ee4..805034f 100644
--- a/ui/views/controls/combobox/combobox_unittest.cc
+++ b/ui/views/controls/combobox/combobox_unittest.cc
@@ -14,7 +14,6 @@
 #include "base/memory/raw_ptr.h"
 #include "base/strings/string_number_conversions.h"
 #include "base/strings/utf_string_conversions.h"
-#include "base/test/scoped_feature_list.h"
 #include "build/build_config.h"
 #include "ui/accessibility/ax_action_data.h"
 #include "ui/accessibility/ax_enums.mojom.h"
@@ -359,8 +358,6 @@
 // Ensure the border on the combobox is set correctly when Enabled state
 // changes.
 TEST_F(ComboboxTest, DisabledBorderTest) {
-  base::test::ScopedFeatureList scoped_feature_list;
-  scoped_feature_list.InitAndEnableFeature(features::kChromeRefresh2023);
   InitCombobox(nullptr);
   ASSERT_TRUE(combobox()->GetEnabled());
   ASSERT_NE(combobox()->GetBorder(), nullptr);
diff --git a/ui/webui/resources/cr_components/certificate_manager/certificate_manager_v2.html b/ui/webui/resources/cr_components/certificate_manager/certificate_manager_v2.html
index f08c152..621157b 100644
--- a/ui/webui/resources/cr_components/certificate_manager/certificate_manager_v2.html
+++ b/ui/webui/resources/cr_components/certificate_manager/certificate_manager_v2.html
@@ -14,7 +14,7 @@
     display: flex;
   }
 
-  .certs-export-button {
+  .push-left {
     margin-left: auto;
   }
 </style>
@@ -51,14 +51,56 @@
     </div>
   </div>
 
-  <div>Local Certificates</div>
+  <div class="cr-centered-card-container">
+    Local certificates that have been added by your operating system or your
+    administrator.
+
+    <!-- TODO(crbug.com/40928765): wire up all of the dynamic content
+      in the local certificates section (
+      * # of imported OS certs
+      * toggle for enabling/disabling import of OS certs
+      * viewing/managing imported certs from OS
+      * # of admin policy certs
+      * viewing admin policy certs
+      * Dynamically figuring out OS name
+      -->
+    <h3> Windows </h3>
+    <div class="cr-row">
+      <div class="cr-padded-text">
+        <div>
+          Use imported local certificates from your operating system
+        </div>
+        <div class="cr-secondary-text">
+          56 leaf certs
+        </div>
+      </div>
+      <cr-toggle class="push-left"
+          aria-label="Toggle operating system certificate imports"
+          checked=true>
+      </cr-toggle>
+    </div>
+
+    <cr-link-row label="View imported certificates from Windows">
+    </cr-link-row>
+    <cr-link-row external label="Manage imported certificates from Windows">
+    </cr-link-row>
+
+    <h3> Custom </h3>
+
+    <cr-link-row label="Installed by your administrator"
+        sub-label="23 certs">
+      <cr-button class="action-button" id="exportAdminCerts">
+        Export
+      </cr-button>
+    </cr-link-row>
+  </div>
 
   <div>
     <cr-expand-button class="cr-row first"
         expanded="{{crsTrustedCertsOpened_}}">
       <div class="cert-row">
         Trusted Certificates
-        <cr-button class="action-button certs-export-button"
+        <cr-button class="action-button push-left"
             id="exportCRS" on-click="onExportCrs_">
           Export
         </cr-button>
diff --git a/ui/webui/resources/cr_components/certificate_manager/certificate_manager_v2.ts b/ui/webui/resources/cr_components/certificate_manager/certificate_manager_v2.ts
index 1eac13e..d0948ea3 100644
--- a/ui/webui/resources/cr_components/certificate_manager/certificate_manager_v2.ts
+++ b/ui/webui/resources/cr_components/certificate_manager/certificate_manager_v2.ts
@@ -14,8 +14,10 @@
 import '//resources/cr_elements/cr_expand_button/cr_expand_button.js';
 import '//resources/cr_elements/cr_button/cr_button.js';
 import '//resources/cr_elements/cr_collapse/cr_collapse.js';
+import '//resources/cr_elements/cr_link_row/cr_link_row.js';
 import '//resources/cr_elements/cr_shared_style.css.js';
 import '//resources/cr_elements/cr_shared_vars.css.js';
+import '//resources/cr_elements/cr_toggle/cr_toggle.js';
 import '//resources/polymer/v3_0/iron-pages/iron-pages.js';
 
 import type {CrCollapseElement} from '//resources/cr_elements/cr_collapse/cr_collapse.js';
diff --git a/ui/webui/resources/cr_elements/cr_selectable_mixin.ts b/ui/webui/resources/cr_elements/cr_selectable_mixin.ts
index aa4f5ea..1e6cafe 100644
--- a/ui/webui/resources/cr_elements/cr_selectable_mixin.ts
+++ b/ui/webui/resources/cr_elements/cr_selectable_mixin.ts
@@ -5,14 +5,6 @@
 import {assert} from '//resources/js/assert.js';
 import type {CrLitElement, PropertyValues} from '//resources/lit/v3_0/lit.rollup.js';
 
-function toCamelCase(name: string): string {
-  const pieces = name.split('-');
-  let camel = pieces[0]!;
-  pieces.slice(1).forEach(
-      piece => camel = camel + piece[0]!.toUpperCase() + piece.substr(1));
-  return camel;
-}
-
 /**
  * CrSelectableMixin maintains a collection of selectable elements. The
  * elements are queried from a <slot>'s assignedElements, and are identified
@@ -45,14 +37,9 @@
     static get properties() {
       return {
         /**
-         * To use an attribute value or property of an element for
-         * `selected` instead of the index, set this to the name of the
-         * attribute or property. Hyphenated values are converted to camel case
-         * when used to look up the property of a selectable element. Camel
-         * cased values are *not* converted to hyphenated values for attribute
-         * lookup. It's recommended that you provide the hyphenated form of the
-         * name so that selection works in both cases. (Use
-         * `attr-or-property-name` instead of `attrOrPropertyName`.)
+         * To use an attribute value of an element for determining `selected`
+         * instead of using the index, set this property to the name of the HTML
+         * attribute.
          */
         attrForSelected: {type: String},
 
@@ -248,11 +235,8 @@
         const index = this.items_.indexOf(item);
         return index === -1 ? null : index;
       }
-      const itemAsDict = item as (Element & {[key: string]: any});
-      const propValue = itemAsDict[toCamelCase(this.attrForSelected)];
-      return (propValue !== undefined && propValue !== null) ?
-          propValue :
-          item.getAttribute(this.attrForSelected);
+
+      return item.getAttribute(this.attrForSelected);
     }
 
     itemsChanged() {
diff --git a/v8 b/v8
index 251745f..563bff0 160000
--- a/v8
+++ b/v8
@@ -1 +1 @@
-Subproject commit 251745faf6397345dac2eed13afe0c495718d3a3
+Subproject commit 563bff0b6e7bc8dd9cac09321dbf9aa2c7fc6ed9