diff --git a/BUILD.gn b/BUILD.gn
index d77f41b..861191e82 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -366,7 +366,7 @@
       "//net/android:net_junit_tests",
       "//services:services_junit_tests",
       "//testing/android/junit:junit_unit_tests",
-      "//third_party/android_lint:custom_lint_java",
+      "//third_party/android_build_tools/lint:custom_lint_java",
       "//third_party/catapult/devil",
       "//third_party/r8:custom_d8_java",
       "//tools/android:android_tools",
diff --git a/DEPS b/DEPS
index a0701ab..5109fac 100644
--- a/DEPS
+++ b/DEPS
@@ -280,11 +280,11 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling Skia
   # and whatever else without interference from each other.
-  'skia_revision': '86a9562a59d654cd36a4feafee5a08b7407d7333',
+  'skia_revision': '9d82f9e4b8c33b429b1c8a5b2a1d5e9636faad93',
   # 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': 'cbd169bf3e664a2a34be5bc6a22e9b6bc878ae72',
+  'v8_revision': 'e9a100d0e5eae77791468c1da1c0805dc5442401',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling ANGLE
   # and whatever else without interference from each other.
@@ -307,7 +307,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling Fuchsia sdk
   # and whatever else without interference from each other.
-  'fuchsia_version': 'version:8.20220701.0.1',
+  'fuchsia_version': 'version:8.20220701.2.1',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling google-toolbox-for-mac
   # and whatever else without interference from each other.
@@ -331,7 +331,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling freetype
   # and whatever else without interference from each other.
-  'freetype_revision': '2db58e061ecc0d738a41d13ed8908e967bd0014c',
+  'freetype_revision': 'bec4ef415ef07ad1fa9542978136d9863dd7a6d0',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling freetype
   # and whatever else without interference from each other.
@@ -359,7 +359,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': 'b278ac410b64cec39279740d42f42070fb674e83',
+  'devtools_frontend_revision': '727a1ed2058b3d1ccaff7f1ebe47d627504009d8',
   # 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.
@@ -395,7 +395,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.
-  'dawn_revision': '24239fcc4786bc231eacc065eaa49fd484546984',
+  'dawn_revision': '776f6d176269432bdf681fc710967f9fe3f29089',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling feed
   # and whatever else without interference from each other.
@@ -447,7 +447,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.
-  'clang_format_revision':    'e435ad79c17b1888b34df88d6a30a094936e3836',
+  'clang_format_revision':    '8b525d2747f2584fc35d8c7e612e66f377858df7',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling feed
   # and whatever else without interference from each other.
@@ -466,7 +466,7 @@
   'libcxx_revision':       'b1269813eaf5b8ac78e35e45a0f7cc320bd3e7d6',
 
   # GN CIPD package version.
-  'gn_version': 'git_revision:29accf5ac2eadfc53e687081583b7bc1592a8839',
+  'gn_version': 'git_revision:ecaaf4b9e58a312a1610a37999eeccf58f73e264',
 }
 
 # Only these hosts are allowed for dependencies in this DEPS file.
@@ -760,7 +760,7 @@
   },
 
   'src/ios/third_party/earl_grey2/src': {
-      'url': Var('chromium_git') + '/external/github.com/google/EarlGrey.git' + '@' + '3696e9de472ded13d6558b9b94d5851160424bf5',
+      'url': Var('chromium_git') + '/external/github.com/google/EarlGrey.git' + '@' + '95732f425807f940da53af3cc3e91d4bfc56d9e2',
       'condition': 'checkout_ios',
   },
 
@@ -850,7 +850,7 @@
       'packages': [
         {
           'package': 'chromium/rts/model/linux-amd64',
-          'version': 'BtC5JWOaQNfqXmYRHk5hWHHWkENjM9wiEnr7EY-7o_IC',
+          'version': '5Sk3xRVdld1JqvlCvye4Fz-a5ugTVQhxhb-4HTpBn8QC',
         },
       ],
       'dep_type': 'cipd',
@@ -861,7 +861,7 @@
       'packages': [
         {
           'package': 'chromium/rts/model/mac-amd64',
-          'version': 'O4WOKtZrpjIbJ2s482zJECJcwHRRzipEFKoiuVuK_dUC',
+          'version': 'jnDMpMTFDjrWY0gMRl3nhVnZuiQisAJNShtvQ_-tzRsC',
         },
       ],
       'dep_type': 'cipd',
@@ -872,7 +872,7 @@
       'packages': [
         {
           'package': 'chromium/rts/model/windows-amd64',
-          'version': 'nrIaCZngb6GO9JLQAhZcRsjjRdlW8MaFkIWE1VqKAJYC',
+          'version': '6h-TY5zuDmkK0tgBCRGTcbEB-E9TDdSKOWeogvxEiaoC',
         },
       ],
       'dep_type': 'cipd',
@@ -929,7 +929,7 @@
     'packages': [
       {
           'package': 'chromium/third_party/androidx',
-          'version': 'lYZhX1u-VWgsLITQXwIxYzbrN3URNzSwPTP2iuDhPBQC',
+          'version': 'qYbZhGFI6Byx-h1-gMAwav_sOAyRgupup2LcOewkUwYC',
       },
     ],
     'condition': 'checkout_android',
@@ -980,9 +980,10 @@
       'dep_type': 'cipd',
   },
 
-  'src/third_party/android_lint': {
+  'src/third_party/android_build_tools/lint': {
       'packages': [
           {
+               # TODO(wnwen): Switch to chromium/third_party/android_build_tools/lint.
                'package': 'chromium/third_party/android_lint',
                'version': 'f5g1G8eyExIUPHk4lH3xx_xV4pza9WSBaITgmLPgF2cC',
           },
@@ -1553,7 +1554,7 @@
   },
 
   'src/third_party/perfetto':
-    Var('android_git') + '/platform/external/perfetto.git' + '@' + 'f413bdf83590b039eb4815d1b8b334ebbf2bd649',
+    Var('android_git') + '/platform/external/perfetto.git' + '@' + '63cdebc57fc66b8782b36f38b46637879210b1b6',
 
   'src/third_party/perl': {
       'url': Var('chromium_git') + '/chromium/deps/perl.git' + '@' + '6f3e5028eb65d0b4c5fdd792106ac4c84eee1eb3',
@@ -1723,7 +1724,7 @@
     Var('chromium_git') + '/external/github.com/gpuweb/cts.git' + '@' + '85f975b4f0f556927b678a5f2d45af989edf8e40',
 
   'src/third_party/webrtc':
-    Var('webrtc_git') + '/src.git' + '@' + '0b655cbef7c4b8b5233b6091d403b5e28d5430de',
+    Var('webrtc_git') + '/src.git' + '@' + '8967672f6da421ced7f23d3a54b9bfdd457f683b',
 
   'src/third_party/libgifcodec':
      Var('skia_git') + '/libgifcodec' + '@'+  Var('libgifcodec_revision'),
@@ -1796,7 +1797,7 @@
     Var('chromium_git') + '/v8/v8.git' + '@' +  Var('v8_revision'),
 
   'src-internal': {
-    'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@025efee6576501cfa097514fee8205052c3366a6',
+    'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@a88639320c5c182d969ee008702d7d2773a1c66d',
     'condition': 'checkout_src_internal',
   },
 
@@ -1826,7 +1827,7 @@
     'packages': [
       {
         'package': 'chromeos_internal/apps/help_app/app',
-        'version': '0l3Lx4ujmpcyFEdPd85FLORLd17Z3AdMOws6oWtfyYsC',
+        'version': 'CXv2r3th-S1Hnef7dTvs6mZwhyUwkJ1So8FHHhfSiYgC',
       },
     ],
     'condition': 'checkout_chromeos and checkout_src_internal',
@@ -1848,7 +1849,7 @@
     'packages': [
       {
         'package': 'chromeos_internal/apps/projector_app/app',
-        'version': 'n_9ShiTPpdmxScyoQfD6NP0IYr-93vYHuY2ZSOmwx7wC',
+        'version': 'tqKyp3HAHKCQPpDM4sdRrWxEQKqhmJC461sbhHtli5wC',
       },
     ],
     'condition': 'checkout_chromeos and checkout_src_internal',
diff --git a/WATCHLISTS b/WATCHLISTS
index 803c141b..3c953c6 100644
--- a/WATCHLISTS
+++ b/WATCHLISTS
@@ -72,8 +72,9 @@
                   'chrome/android/javatests/src/org/chromium/chrome/browser/.*ChooserDialogTest.java'
     },
     'android_lint': {
-      'filepath': '/lint-baseline.xml|'\
-                  '/lint-suppressions.xml'
+      'filepath': '/lint-baseline.xml' \
+                  '|/lint-suppressions.xml' \
+                  '|third_party/android_build_tools/lint'
     },
     'android_omnibox': {
       'filepath': 'chrome/browser/ui/android/omnibox/',
diff --git a/ash/BUILD.gn b/ash/BUILD.gn
index 5f70c9f..c9e8e5f 100644
--- a/ash/BUILD.gn
+++ b/ash/BUILD.gn
@@ -2851,6 +2851,7 @@
     "system/tracing_notification_controller_unittest.cc",
     "system/tray/size_range_layout_unittest.cc",
     "system/tray/status_area_overflow_button_tray_unittest.cc",
+    "system/tray/system_nudge_unittest.cc",
     "system/tray/tray_background_view_unittest.cc",
     "system/tray/tray_event_filter_unittest.cc",
     "system/tray/tri_view_unittest.cc",
diff --git a/ash/components/hid_detection/fake_hid_detection_manager.cc b/ash/components/hid_detection/fake_hid_detection_manager.cc
index a6ad3b2..bbb2d8c8 100644
--- a/ash/components/hid_detection/fake_hid_detection_manager.cc
+++ b/ash/components/hid_detection/fake_hid_detection_manager.cc
@@ -5,29 +5,43 @@
 #include "ash/components/hid_detection/fake_hid_detection_manager.h"
 
 namespace ash::hid_detection {
+namespace {
+
+bool IsInputMissing(HidDetectionManager::InputMetadata metadata) {
+  return metadata.state == HidDetectionManager::InputState::kSearching ||
+         metadata.state ==
+             HidDetectionManager::InputState::kPairingViaBluetooth;
+}
+
+}  // namespace
 
 FakeHidDetectionManager::FakeHidDetectionManager() = default;
 
 FakeHidDetectionManager::~FakeHidDetectionManager() = default;
 
-bool FakeHidDetectionManager::HasPendingIsHidDetectionRequiredCallback() const {
-  return !is_hid_detection_required_callback_.is_null();
+void FakeHidDetectionManager::SetHidStatusPointerMetadata(
+    InputMetadata metadata) {
+  hid_detection_status_.pointer_metadata = metadata;
+  if (!is_hid_detection_active_)
+    return;
+
+  NotifyHidDetectionStatusChanged();
 }
 
-void FakeHidDetectionManager::InvokePendingIsHidDetectionRequiredCallback(
-    bool required) {
-  std::move(is_hid_detection_required_callback_).Run(required);
-}
+void FakeHidDetectionManager::SetHidStatusKeyboardMetadata(
+    InputMetadata metadata) {
+  hid_detection_status_.keyboard_metadata = metadata;
+  if (!is_hid_detection_active_)
+    return;
 
-void FakeHidDetectionManager::SetHidDetectionStatus(
-    HidDetectionManager::HidDetectionStatus status) {
-  hid_detection_status_ = status;
   NotifyHidDetectionStatusChanged();
 }
 
 void FakeHidDetectionManager::GetIsHidDetectionRequired(
     base::OnceCallback<void(bool)> callback) {
-  is_hid_detection_required_callback_ = std::move(callback);
+  std::move(callback).Run(
+      IsInputMissing(hid_detection_status_.pointer_metadata) ||
+      IsInputMissing(hid_detection_status_.keyboard_metadata));
 }
 
 void FakeHidDetectionManager::PerformStartHidDetection() {
diff --git a/ash/components/hid_detection/fake_hid_detection_manager.h b/ash/components/hid_detection/fake_hid_detection_manager.h
index 7d257bf..3ba05e39 100644
--- a/ash/components/hid_detection/fake_hid_detection_manager.h
+++ b/ash/components/hid_detection/fake_hid_detection_manager.h
@@ -16,11 +16,9 @@
   FakeHidDetectionManager();
   ~FakeHidDetectionManager() override;
 
-  bool HasPendingIsHidDetectionRequiredCallback() const;
-  void InvokePendingIsHidDetectionRequiredCallback(bool required);
-
   // Mocks the HID detection status being updated.
-  void SetHidDetectionStatus(HidDetectionManager::HidDetectionStatus status);
+  void SetHidStatusPointerMetadata(InputMetadata metadata);
+  void SetHidStatusKeyboardMetadata(InputMetadata metadata);
 
   bool is_hid_detection_active() const { return is_hid_detection_active_; }
 
@@ -33,7 +31,6 @@
   HidDetectionManager::HidDetectionStatus ComputeHidDetectionStatus()
       const override;
 
-  base::OnceCallback<void(bool)> is_hid_detection_required_callback_;
   bool is_hid_detection_active_ = false;
   HidDetectionManager::HidDetectionStatus hid_detection_status_;
 };
diff --git a/ash/public/cpp/style/color_provider.h b/ash/public/cpp/style/color_provider.h
index 07cd18d..9114ba0 100644
--- a/ash/public/cpp/style/color_provider.h
+++ b/ash/public/cpp/style/color_provider.h
@@ -58,8 +58,10 @@
     kFocusRingColor,
     kHighlightColor1,
     kHighlightColor2,
+    kHighlightColor3,
     kBorderColor1,
     kBorderColor2,
+    kBorderColor3,
   };
 
   enum class ContentLayerType {
diff --git a/ash/strings/ash_strings_as.xtb b/ash/strings/ash_strings_as.xtb
index 080804cd..434575ac 100644
--- a/ash/strings/ash_strings_as.xtb
+++ b/ash/strings/ash_strings_as.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">মতামত</translation>
 <translation id="4518404433291145981">আপোনাৰ Chromebook আনলক কৰিবলৈ, প্ৰথমে আপোনাৰ ফ’নটো আনলক কৰক</translation>
 <translation id="4527045527269911712">ব্লুটুথ ডিভাইচ "<ph name="DEVICE_NAME" />"এ পেয়াৰ কৰিবলৈ অনুমতি বিচাৰে।</translation>
+<translation id="4533343294786968049">আপোনাৰ বেটাৰীৰ জীৱনকাল বৃদ্ধি কৰি থকা হৈছে। <ph name="FULLY_CHARGE_TIME" />ৰ ভিতৰত বেটাৰীটো সম্পূৰ্ণকৈ চাৰ্জ হ’ব।</translation>
 <translation id="453661520163887813">সম্পূর্ণ হ'বলৈ <ph name="TIME" /> বাকী</translation>
 <translation id="4538824937723742295">পূৰ্ণ স্ক্রীনৰ স্ক্ৰীনশ্বট লওক</translation>
 <translation id="4544483149666270818">ৰেকৰ্ড কৰিবলৈ এখন ৱিণ্ড’ বাছনি কৰক</translation>
diff --git a/ash/strings/ash_strings_be.xtb b/ash/strings/ash_strings_be.xtb
index c0883de..349a4d1 100644
--- a/ash/strings/ash_strings_be.xtb
+++ b/ash/strings/ash_strings_be.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Водгук</translation>
 <translation id="4518404433291145981">Каб разблакіраваць Chromebook, спачатку разблакіруйце тэлефон</translation>
 <translation id="4527045527269911712">Прылада Bluetooth "<ph name="DEVICE_NAME" />" запытвае дазвол на спалучэнне.</translation>
+<translation id="4533343294786968049">Уключаны рэжым, які падаўжае тэрмін службы акумулятара. Акумулятар зарадзіцца поўнасцю к <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> да поўнай зарадкі</translation>
 <translation id="4538824937723742295">Зрабіць здымак усяго экрана</translation>
 <translation id="4544483149666270818">Выберыце акно для запісу</translation>
diff --git a/ash/strings/ash_strings_bg.xtb b/ash/strings/ash_strings_bg.xtb
index 64a1d60f..723e3c39 100644
--- a/ash/strings/ash_strings_bg.xtb
+++ b/ash/strings/ash_strings_bg.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Отзиви</translation>
 <translation id="4518404433291145981">За да отключите своя Chromebook, първо отключете телефона си</translation>
 <translation id="4527045527269911712">Устройството с Bluetooth „<ph name="DEVICE_NAME" />“ иска разрешение за сдвояване.</translation>
+<translation id="4533343294786968049">Удължаване на живота на батерията ви. Батерията ще се зареди напълно до <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> до пълно зареждане</translation>
 <translation id="4538824937723742295">Правене на екранна снимка на целия екран</translation>
 <translation id="4544483149666270818">Изберете прозореца, който да бъде записан</translation>
diff --git a/ash/strings/ash_strings_ca.xtb b/ash/strings/ash_strings_ca.xtb
index 5ec79d4..6d8bed60 100644
--- a/ash/strings/ash_strings_ca.xtb
+++ b/ash/strings/ash_strings_ca.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Comentaris</translation>
 <translation id="4518404433291145981">Per desbloquejar el Chromebook, primer desbloqueja el telèfon</translation>
 <translation id="4527045527269911712">El dispositiu Bluetooth "<ph name="DEVICE_NAME" />" sol·licita permís per emparellar-se.</translation>
+<translation id="4533343294786968049">S'està allargant la durada de la bateria. La bateria es carregarà completament abans de les <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> per completar la càrrega</translation>
 <translation id="4538824937723742295">Fes una captura de pantalla completa</translation>
 <translation id="4544483149666270818">Selecciona la finestra que vols gravar</translation>
diff --git a/ash/strings/ash_strings_es-419.xtb b/ash/strings/ash_strings_es-419.xtb
index 1fe4d3e..90cc850c 100644
--- a/ash/strings/ash_strings_es-419.xtb
+++ b/ash/strings/ash_strings_es-419.xtb
@@ -613,6 +613,7 @@
 <translation id="4513946894732546136">Comentario</translation>
 <translation id="4518404433291145981">Para desbloquear la Chromebook, primero desbloquea el teléfono</translation>
 <translation id="4527045527269911712">El dispositivo Bluetooth "<ph name="DEVICE_NAME" />" solicita permiso para sincronizarse.</translation>
+<translation id="4533343294786968049">Se está extendiendo la duración de la batería. Terminará de cargarse por completo a las <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> para completar carga</translation>
 <translation id="4538824937723742295">Realizar una captura de pantalla completa</translation>
 <translation id="4544483149666270818">Selecciona una ventana que quieras grabar</translation>
diff --git a/ash/strings/ash_strings_fi.xtb b/ash/strings/ash_strings_fi.xtb
index e78b81f..17ff7985 100644
--- a/ash/strings/ash_strings_fi.xtb
+++ b/ash/strings/ash_strings_fi.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Palaute</translation>
 <translation id="4518404433291145981">Voit avata Chromebookin lukituksen avaamalla ensin puhelimesi</translation>
 <translation id="4527045527269911712">Bluetooth-laite <ph name="DEVICE_NAME" /> pyytää lupaa laiteparin muodostamiseen.</translation>
+<translation id="4533343294786968049">Pidennä akunkestoa. Akku latautuu täyteen <ph name="FULLY_CHARGE_TIME" /> mennessä.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> täyteen lataukseen</translation>
 <translation id="4538824937723742295">Ota kuvakaappaus koko näytöstä</translation>
 <translation id="4544483149666270818">Valitse ikkuna tallennusta varten</translation>
diff --git a/ash/strings/ash_strings_fr-CA.xtb b/ash/strings/ash_strings_fr-CA.xtb
index ed6424a..e28985b 100644
--- a/ash/strings/ash_strings_fr-CA.xtb
+++ b/ash/strings/ash_strings_fr-CA.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Commentaires</translation>
 <translation id="4518404433291145981">Pour déverrouiller votre Chromebook, déverrouillez d'abord votre téléphone</translation>
 <translation id="4527045527269911712">L'appareil Bluetooth « <ph name="DEVICE_NAME" /> » demande l'autorisation de s'associer.</translation>
+<translation id="4533343294786968049">Prolongation de l'autonomie de votre pile en cours… La pile sera complètement rechargée d'ici <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> avant la recharge complète</translation>
 <translation id="4538824937723742295">Prendre une capture de l'écran au complet</translation>
 <translation id="4544483149666270818">Sélectionnez une fenêtre à enregistrer</translation>
diff --git a/ash/strings/ash_strings_fr.xtb b/ash/strings/ash_strings_fr.xtb
index c2e0883..dd392722 100644
--- a/ash/strings/ash_strings_fr.xtb
+++ b/ash/strings/ash_strings_fr.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Commentaires</translation>
 <translation id="4518404433291145981">Pour déverrouiller votre Chromebook, déverrouillez d'abord votre téléphone</translation>
 <translation id="4527045527269911712">L'appareil Bluetooth "<ph name="DEVICE_NAME" />" demande l'autorisation de s'associer.</translation>
+<translation id="4533343294786968049">Prolongation de l'autonomie de la batterie. La batterie sera complètement chargée à <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> avant charge complète</translation>
 <translation id="4538824937723742295">Prendre une capture en plein écran</translation>
 <translation id="4544483149666270818">Sélectionner une fenêtre à enregistrer</translation>
diff --git a/ash/strings/ash_strings_hi.xtb b/ash/strings/ash_strings_hi.xtb
index 50908b7e..c06ebd2 100644
--- a/ash/strings/ash_strings_hi.xtb
+++ b/ash/strings/ash_strings_hi.xtb
@@ -613,6 +613,7 @@
 <translation id="4513946894732546136">सुझाव/राय दें</translation>
 <translation id="4518404433291145981">Chromebook अनलॉक करने के लिए, पहले अपना फ़ोन अनलॉक करें</translation>
 <translation id="4527045527269911712">ब्लूटूथ डिवाइस "<ph name="DEVICE_NAME" />" युग्मित करने की अनुमति चाहता है.</translation>
+<translation id="4533343294786968049">आपकी बैटरी लाइफ़ बढ़ाई जा रही है. बैटरी <ph name="FULLY_CHARGE_TIME" /> तक पूरी तरह चार्ज हो जाएगी.</translation>
 <translation id="453661520163887813">पूरी तरह चार्ज होने में <ph name="TIME" /></translation>
 <translation id="4538824937723742295">फ़ुल स्क्रीन का स्क्रीनशॉट लें</translation>
 <translation id="4544483149666270818">रिकॉर्ड करने के लिए विंडो चुनें</translation>
diff --git a/ash/strings/ash_strings_hy.xtb b/ash/strings/ash_strings_hy.xtb
index afaba7cd..3924b78c 100644
--- a/ash/strings/ash_strings_hy.xtb
+++ b/ash/strings/ash_strings_hy.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Հետադարձ կապ</translation>
 <translation id="4518404433291145981">Ձեր Chromebook-ն ապակողպելու համար նախ ապակողպեք ձեր հեռախոսը</translation>
 <translation id="4527045527269911712">«<ph name="DEVICE_NAME" />» Bluetooth սարքը զուգավորվելու թույլտվություն է խնդրում:</translation>
+<translation id="4533343294786968049">Մարտկոցի աշխատաժամանակը երկարացվում է։ Այն լրիվ կլիցքավորվի մինչև <ph name="FULLY_CHARGE_TIME" />։</translation>
 <translation id="453661520163887813">Լրիվ կլիցքավորվի <ph name="TIME" />-ից</translation>
 <translation id="4538824937723742295">Լիաէկրան սքրինշոթ անել</translation>
 <translation id="4544483149666270818">Ընտրեք պատուհանը՝ տեսագրելու համար</translation>
diff --git a/ash/strings/ash_strings_iw.xtb b/ash/strings/ash_strings_iw.xtb
index 2f52da2..26ece85 100644
--- a/ash/strings/ash_strings_iw.xtb
+++ b/ash/strings/ash_strings_iw.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">משוב</translation>
 <translation id="4518404433291145981">‏כדי לבטל את נעילת ה-Chromebook, קודם צריך לבטל את הנעילה של הטלפון</translation>
 <translation id="4527045527269911712">‏מכשיר ה-Bluetooth ‏"<ph name="DEVICE_NAME" />" מבקש הרשאה לבצע התאמה.</translation>
+<translation id="4533343294786968049">אנחנו מאריכים את חיי הסוללה. הסוללה תיטען באופן מלא עד <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> עד למילוי</translation>
 <translation id="4538824937723742295">לצילום מסך מלא</translation>
 <translation id="4544483149666270818">יש לבחור חלון להקלטה</translation>
diff --git a/ash/strings/ash_strings_kk.xtb b/ash/strings/ash_strings_kk.xtb
index f2a42908..f8e316b 100644
--- a/ash/strings/ash_strings_kk.xtb
+++ b/ash/strings/ash_strings_kk.xtb
@@ -536,6 +536,7 @@
 <translation id="4115378294792113321">Күлгін</translation>
 <translation id="412298498316631026">терезе</translation>
 <translation id="4123259114412175274">Chromebook-тың құлпын ашу үшін телефонда Bluetooth қосылып тұрғанына көз жеткізіңіз.</translation>
+<translation id="4125970834901680537">Планшет режимінде қолданбалардағы мазмұнды трансляциялау мүмкін емес. Ноутбук режимінде қайталап көріңіз.</translation>
 <translation id="4129129681837227511">Құлып экранында хабарландыруларды көру және параметрді өзгерту үшін құлыпты ашыңыз.</translation>
 <translation id="4136724716305260864">Күн шыққанға дейін қосулы</translation>
 <translation id="4146833061457621061">Музыка ойнату</translation>
@@ -553,6 +554,7 @@
 <translation id="4215497585250573029">VPN параметрлері</translation>
 <translation id="4217571870635786043">Мәтінді дауыспен енгізу</translation>
 <translation id="4221957499226645091"><ph name="APP_NAME" />, қолданба орнатылған, кідіртілген</translation>
+<translation id="423685346499232137">Мазмұнды қазір көшіру немесе қою мүмкін емес.</translation>
 <translation id="4239069858505860023">GPRS</translation>
 <translation id="4242533952199664413">Параметрлерді ашу</translation>
 <translation id="4250229828105606438">Скриншот</translation>
@@ -610,6 +612,7 @@
 <translation id="4513946894732546136">Пікір жіберу</translation>
 <translation id="4518404433291145981">Chromebook құлпын ашу үшін алдымен телефонның құлпын ашыңыз.</translation>
 <translation id="4527045527269911712">"<ph name="DEVICE_NAME" />" Bluetooth құрылғысы жұптасуға рұқсат сұрайды.</translation>
+<translation id="4533343294786968049">Батарея зарядталуда. Толық зарядталу уақыты: <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813">Зарядтау аяқталғанға дейін <ph name="TIME" /> қалды</translation>
 <translation id="4538824937723742295">Толық экранның скриншотын жасау</translation>
 <translation id="4544483149666270818">Жазу үшін терезені таңдаңыз.</translation>
diff --git a/ash/strings/ash_strings_ky.xtb b/ash/strings/ash_strings_ky.xtb
index ee80e64..8098749 100644
--- a/ash/strings/ash_strings_ky.xtb
+++ b/ash/strings/ash_strings_ky.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Пикир билдирүү</translation>
 <translation id="4518404433291145981">Chromebook'тун кулпусун ачуу үчүн адегенде телефонуңуздун кулпусун ачыңыз</translation>
 <translation id="4527045527269911712">Bluetooth түзмөгү "<ph name="DEVICE_NAME" />" жупташууга уруксат сурайт.</translation>
+<translation id="4533343294786968049">Батарея кубатталып жатат. Батарея <ph name="FULLY_CHARGE_TIME" /> чейин толук кубатталат.</translation>
 <translation id="453661520163887813">Толгончо <ph name="TIME" /> бар</translation>
 <translation id="4538824937723742295">Толук экрандын скриншотун тартып алуу</translation>
 <translation id="4544483149666270818">Жаздыруу үчүн терезе тандаңыз</translation>
diff --git a/ash/strings/ash_strings_lv.xtb b/ash/strings/ash_strings_lv.xtb
index e48933d0..c93bbc5 100644
--- a/ash/strings/ash_strings_lv.xtb
+++ b/ash/strings/ash_strings_lv.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Atsauksmes</translation>
 <translation id="4518404433291145981">Lai atbloķētu Chromebook datoru, vispirms atbloķējiet tālruni.</translation>
 <translation id="4527045527269911712">Bluetooth ierīce “<ph name="DEVICE_NAME" />” vēlas saņemt atļauju, lai izveidotu savienojumu pārī.</translation>
+<translation id="4533343294786968049">Ir ieslēgts režīms, kas paildzina akumulatora darbību. Akumulators tiks pilnībā uzlādēts līdz plkst. <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813">Līdz pilnai uzlādei: <ph name="TIME" /></translation>
 <translation id="4538824937723742295">Izveidot visa ekrāna uzņēmumu</translation>
 <translation id="4544483149666270818">Atlasiet logu, kura saturs jāieraksta</translation>
diff --git a/ash/strings/ash_strings_mr.xtb b/ash/strings/ash_strings_mr.xtb
index 6363263b..56612de 100644
--- a/ash/strings/ash_strings_mr.xtb
+++ b/ash/strings/ash_strings_mr.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">फीडबॅक</translation>
 <translation id="4518404433291145981">तुमचे Chromebook अनलॉक करण्यासाठी, आधी तुमचा फोन अनलॉक करा</translation>
 <translation id="4527045527269911712">"<ph name="DEVICE_NAME" />" Bluetooth डिव्हाइस जोडण्यासाठी परवानगी घेऊ इच्छिते.</translation>
+<translation id="4533343294786968049">तुमची बॅटरी लाइफ वाढवत आहे. <ph name="FULLY_CHARGE_TIME" /> पर्यंत बॅटरी पूर्णपणे चार्ज होईल.</translation>
 <translation id="453661520163887813">पूर्ण होण्यात <ph name="TIME" /></translation>
 <translation id="4538824937723742295">फुल स्क्रीन स्क्रीनशॉट घ्या</translation>
 <translation id="4544483149666270818">रेकॉर्ड करण्यासाठी विंडो निवडा</translation>
diff --git a/ash/strings/ash_strings_ru.xtb b/ash/strings/ash_strings_ru.xtb
index 265bdfb..1c7e1e2 100644
--- a/ash/strings/ash_strings_ru.xtb
+++ b/ash/strings/ash_strings_ru.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Отзыв</translation>
 <translation id="4518404433291145981">Чтобы разблокировать Chromebook, сначала разблокируйте телефон.</translation>
 <translation id="4527045527269911712">Устройству <ph name="DEVICE_NAME" /> требуется разрешение на подключение через Bluetooth.</translation>
+<translation id="4533343294786968049">Включен режим, продлевающий срок службы батареи. Она полностью зарядится к <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813">До полной зарядки <ph name="TIME" /></translation>
 <translation id="4538824937723742295">Сделать снимок всего экрана</translation>
 <translation id="4544483149666270818">Выберите окно для записи</translation>
diff --git a/ash/strings/ash_strings_si.xtb b/ash/strings/ash_strings_si.xtb
index 02bb7f7..e9f22b6 100644
--- a/ash/strings/ash_strings_si.xtb
+++ b/ash/strings/ash_strings_si.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">ප්‍රතිපෝෂණ</translation>
 <translation id="4518404433291145981">ඔබගේ Chromebook අගුලු හැරීමට, පළමුව ඔබගේ දුරකථනය අගුලු හරින්න</translation>
 <translation id="4527045527269911712">"<ph name="DEVICE_NAME" />" Bluetooth උපාංගය යුගල වඊමට අවසර ඉල්ලයි.</translation>
+<translation id="4533343294786968049">ඔබේ බැටරි ආයු කාලය දීර්ඝ කිරීම. බැටරිය <ph name="FULLY_CHARGE_TIME" /> වන විට සම්පූර්ණයෙන්ම ආරෝපණය වනු ඇත.</translation>
 <translation id="453661520163887813">පිරෙන තෙක් <ph name="TIME" /></translation>
 <translation id="4538824937723742295">පූර්ණ තිරයේ තිර රුවක් ගන්න</translation>
 <translation id="4544483149666270818">පටිගත කිරීමට කවුළුවක් තෝරන්න</translation>
diff --git a/ash/strings/ash_strings_sq.xtb b/ash/strings/ash_strings_sq.xtb
index 0f2468d..823fcea 100644
--- a/ash/strings/ash_strings_sq.xtb
+++ b/ash/strings/ash_strings_sq.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Komente</translation>
 <translation id="4518404433291145981">Për të shkyçur Chromebook-un tënd, shkyç fillimisht telefonin</translation>
 <translation id="4527045527269911712">Pajisja me Bluetooth "<ph name="DEVICE_NAME" />" kërkon leje për çiftim.</translation>
+<translation id="4533343294786968049">Kohëzgjatja e baterisë po rritet. Bateria do të karikohet plotësisht në <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> derisa të mbushet</translation>
 <translation id="4538824937723742295">Shkrep një pamje ekrani të plotë</translation>
 <translation id="4544483149666270818">Zgjidh një dritare për të regjistruar</translation>
diff --git a/ash/strings/ash_strings_sv.xtb b/ash/strings/ash_strings_sv.xtb
index 2343b5e..87706e6 100644
--- a/ash/strings/ash_strings_sv.xtb
+++ b/ash/strings/ash_strings_sv.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Feedback</translation>
 <translation id="4518404433291145981">Du måste först låsa upp telefonen om du vill låsa upp Chromebook</translation>
 <translation id="4527045527269911712">Bluetooth-enheten <ph name="DEVICE_NAME" /> har begärt tillstånd för koppling.</translation>
+<translation id="4533343294786968049">Förlänger batteritiden. Batteriet laddas färdigt till <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> tills batteriet är fullt</translation>
 <translation id="4538824937723742295">Ta en skärmbild av hela skärmen</translation>
 <translation id="4544483149666270818">Välj ett fönster att spela in</translation>
diff --git a/ash/strings/ash_strings_sw.xtb b/ash/strings/ash_strings_sw.xtb
index 3537296..e001bf8d 100644
--- a/ash/strings/ash_strings_sw.xtb
+++ b/ash/strings/ash_strings_sw.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Mwitiko</translation>
 <translation id="4518404433291145981">Ili ufungue Chromebook yako, fungua simu yako kwanza</translation>
 <translation id="4527045527269911712">Kifaa cha Bluetooth cha "<ph name="DEVICE_NAME" />" kinaomba idhini ya kuoanisha.</translation>
+<translation id="4533343294786968049">Inaongeza muda wa matumizi ya betri yako. Betri itajaa kikamilifu ifikapo <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813">Zimesalia <ph name="TIME" /> ili ijae</translation>
 <translation id="4538824937723742295">Piga picha ya skrini nzima</translation>
 <translation id="4544483149666270818">Chagua dirisha ili urekodi</translation>
diff --git a/ash/strings/ash_strings_ta.xtb b/ash/strings/ash_strings_ta.xtb
index 1943f6f..f18c8e9 100644
--- a/ash/strings/ash_strings_ta.xtb
+++ b/ash/strings/ash_strings_ta.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">கருத்து</translation>
 <translation id="4518404433291145981">Chromebookகை திறக்க உங்கள் ஃபோனை அன்லாக் செய்க</translation>
 <translation id="4527045527269911712">புளூடூத் சாதனம் "<ph name="DEVICE_NAME" />", இணைப்பதற்கான அனுமதியை விரும்புகிறது.</translation>
+<translation id="4533343294786968049">உங்கள் பேட்டரி சார்ஜ் ஆகிக்கொண்டிருக்கிறது. <ph name="FULLY_CHARGE_TIME" /> மணிக்கு முழுமையாகச் சார்ஜாகும்.</translation>
 <translation id="453661520163887813"><ph name="TIME" /> ஆகும் 100% சார்ஜாக</translation>
 <translation id="4538824937723742295">முழுத்திரையையும் ஸ்கிரீன்ஷாட் எடுக்கும்</translation>
 <translation id="4544483149666270818">ரெக்கார்டு செய்வதற்கான சாளரத்தைத் தேர்ந்தெடுக்கவும்</translation>
diff --git a/ash/strings/ash_strings_tr.xtb b/ash/strings/ash_strings_tr.xtb
index 9283b433..f92c480 100644
--- a/ash/strings/ash_strings_tr.xtb
+++ b/ash/strings/ash_strings_tr.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">Geri Bildirim</translation>
 <translation id="4518404433291145981">Chromebook'unuzun kilidini açmak için önce telefonunuzun kilidini açın</translation>
 <translation id="4527045527269911712">"<ph name="DEVICE_NAME" />" adlı Bluetooth cihaz eşleme izni istiyor.</translation>
+<translation id="4533343294786968049">Pil ömrünüz uzatılıyor. Pilinizin tamamen şarj olacağı saat: <ph name="FULLY_CHARGE_TIME" />.</translation>
 <translation id="453661520163887813">Dolmasına <ph name="TIME" /> var</translation>
 <translation id="4538824937723742295">Tam ekran görüntüsü al</translation>
 <translation id="4544483149666270818">Kaydedilecek pencereyi seçin</translation>
diff --git a/ash/strings/ash_strings_zh-CN.xtb b/ash/strings/ash_strings_zh-CN.xtb
index ea6c0c4e..6f4d6b70 100644
--- a/ash/strings/ash_strings_zh-CN.xtb
+++ b/ash/strings/ash_strings_zh-CN.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">反馈</translation>
 <translation id="4518404433291145981">若要解锁 Chromebook,请先解锁您的手机</translation>
 <translation id="4527045527269911712">蓝牙设备“<ph name="DEVICE_NAME" />”需要配对许可。</translation>
+<translation id="4533343294786968049">正在减缓电池老化,延长电池寿命。电池电量将在<ph name="FULLY_CHARGE_TIME" /> 之前充满。</translation>
 <translation id="453661520163887813"><ph name="TIME" /> 后充满</translation>
 <translation id="4538824937723742295">截取整个屏幕</translation>
 <translation id="4544483149666270818">选择一个窗口即可录制</translation>
diff --git a/ash/strings/ash_strings_zh-HK.xtb b/ash/strings/ash_strings_zh-HK.xtb
index 85e59f7..437125e 100644
--- a/ash/strings/ash_strings_zh-HK.xtb
+++ b/ash/strings/ash_strings_zh-HK.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">意見反映</translation>
 <translation id="4518404433291145981">如要解鎖 Chromebook,請先解鎖手機</translation>
 <translation id="4527045527269911712">藍牙裝置「<ph name="DEVICE_NAME" />」要求配對權限。</translation>
+<translation id="4533343294786968049">延長電池續航力。電池電量將在<ph name="FULLY_CHARGE_TIME" /> 充飽。</translation>
 <translation id="453661520163887813">還有 <ph name="TIME" />便完成充電</translation>
 <translation id="4538824937723742295">擷取全螢幕截圖</translation>
 <translation id="4544483149666270818">選取要錄影的視窗</translation>
diff --git a/ash/strings/ash_strings_zh-TW.xtb b/ash/strings/ash_strings_zh-TW.xtb
index 490c0f3..a72ec1a9 100644
--- a/ash/strings/ash_strings_zh-TW.xtb
+++ b/ash/strings/ash_strings_zh-TW.xtb
@@ -612,6 +612,7 @@
 <translation id="4513946894732546136">意見回饋</translation>
 <translation id="4518404433291145981">如要解鎖 Chromebook,請先解鎖手機</translation>
 <translation id="4527045527269911712">藍牙裝置「<ph name="DEVICE_NAME" />」要求配對權限。</translation>
+<translation id="4533343294786968049">延長電池續航力。電池電量將在<ph name="FULLY_CHARGE_TIME" /> 充飽。</translation>
 <translation id="453661520163887813"><ph name="TIME" /> 後充飽</translation>
 <translation id="4538824937723742295">擷取全螢幕畫面</translation>
 <translation id="4544483149666270818">選取要錄影的視窗</translation>
diff --git a/ash/style/ash_color_mixer.cc b/ash/style/ash_color_mixer.cc
index 605d5dc..ed24fc17 100644
--- a/ash/style/ash_color_mixer.cc
+++ b/ash/style/ash_color_mixer.cc
@@ -62,12 +62,18 @@
   mixer[ui::kColorAshSystemUIBorderColor2] = {
       ash_color_provider->GetControlsLayerColor(
           ash::AshColorProvider::ControlsLayerType::kBorderColor2)};
+  mixer[ui::kColorAshSystemUIBorderColor3] = {
+      ash_color_provider->GetControlsLayerColor(
+          ash::AshColorProvider::ControlsLayerType::kBorderColor3)};
   mixer[ui::kColorAshSystemUIHighlightColor1] = {
       ash_color_provider->GetControlsLayerColor(
           ash::AshColorProvider::ControlsLayerType::kHighlightColor1)};
   mixer[ui::kColorAshSystemUIHighlightColor2] = {
       ash_color_provider->GetControlsLayerColor(
           ash::AshColorProvider::ControlsLayerType::kHighlightColor2)};
+  mixer[ui::kColorAshSystemUIHighlightColor3] = {
+      ash_color_provider->GetControlsLayerColor(
+          ash::AshColorProvider::ControlsLayerType::kHighlightColor3)};
 
   if (!features::IsDarkLightModeEnabled()) {
     ash::ScopedLightModeAsDefault scoped_light_mode_as_default;
diff --git a/ash/style/ash_color_provider.cc b/ash/style/ash_color_provider.cc
index df6b5a9..6d1c6a2 100644
--- a/ash/style/ash_color_provider.cc
+++ b/ash/style/ash_color_provider.cc
@@ -245,6 +245,7 @@
     case ControlsLayerType::kFocusRingColor:
       return use_dark_color ? gfx::kGoogleBlue300 : gfx::kGoogleBlue600;
     case ControlsLayerType::kHighlightColor1:
+    case ControlsLayerType::kHighlightColor3:
       return use_dark_color ? SkColorSetA(SK_ColorWHITE, 0x14)
                             : SkColorSetA(SK_ColorWHITE, 0x4C);
     case ControlsLayerType::kBorderColor1:
@@ -256,6 +257,8 @@
     case ControlsLayerType::kBorderColor2:
       return use_dark_color ? GetBaseLayerColor(BaseLayerType::kTransparent60)
                             : SkColorSetA(SK_ColorBLACK, 0x0F);
+    case ControlsLayerType::kBorderColor3:
+      return SkColorSetA(SK_ColorBLACK, 0x0F);
   }
 }
 
diff --git a/ash/system/tray/system_nudge.cc b/ash/system/tray/system_nudge.cc
index 01b2c991..f362a0f 100644
--- a/ash/system/tray/system_nudge.cc
+++ b/ash/system/tray/system_nudge.cc
@@ -92,12 +92,14 @@
 SystemNudge::SystemNudge(const std::string& name,
                          int icon_size,
                          int icon_label_spacing,
-                         int nudge_padding)
+                         int nudge_padding,
+                         bool anchor_status_area)
     : root_window_(Shell::GetRootWindowForNewWindows()) {
   params_.name = name;
   params_.icon_size = icon_size;
   params_.icon_label_spacing = icon_label_spacing;
   params_.nudge_padding = nudge_padding;
+  params_.anchor_status_area = anchor_status_area;
 }
 
 SystemNudge::~SystemNudge() = default;
@@ -144,6 +146,50 @@
   widget_.reset();
 }
 
+gfx::Rect SystemNudge::CalculateWidgetBounds(const gfx::Rect& display_bounds,
+                                             Shelf* shelf,
+                                             int nudge_width,
+                                             int nudge_height,
+                                             bool anchor_status_area) {
+  bool shelf_hidden = shelf->GetVisibilityState() != SHELF_VISIBLE &&
+                      shelf->GetAutoHideState() == SHELF_AUTO_HIDE_HIDDEN;
+
+  bool on_right_side;
+  if (!anchor_status_area) {
+    on_right_side = base::i18n::IsRTL();
+  } else if (base::i18n::IsRTL()) {
+    // status area is on the left side in RTL when shelf is at bottom.
+    on_right_side = shelf->alignment() == ShelfAlignment::kRight;
+  } else {
+    on_right_side = shelf->alignment() == ShelfAlignment::kRight ||
+                    shelf->alignment() == ShelfAlignment::kBottom;
+  }
+
+  int x;
+  if (on_right_side) {
+    x = display_bounds.right() - nudge_width - kNudgeMargin;
+    if (shelf->alignment() == ShelfAlignment::kRight && !shelf_hidden)
+      x -= ShelfConfig::Get()->shelf_size();
+  } else {
+    x = display_bounds.x() + kNudgeMargin;
+    if (shelf->alignment() == ShelfAlignment::kLeft && !shelf_hidden)
+      x += ShelfConfig::Get()->shelf_size();
+  }
+
+  int y;
+  HotseatWidget* hotseat_widget = shelf->hotseat_widget();
+  // Set the nudge's bounds above the hotseat when it is extended.
+  if (hotseat_widget->state() == HotseatState::kExtended) {
+    y = hotseat_widget->GetTargetBounds().y() - nudge_height - kNudgeMargin;
+  } else {
+    y = display_bounds.bottom() - nudge_height - kNudgeMargin;
+    if (shelf->alignment() == ShelfAlignment::kBottom && !shelf_hidden)
+      y -= ShelfConfig::Get()->shelf_size();
+  }
+
+  return gfx::Rect(x, y, nudge_width, nudge_height);
+}
+
 void SystemNudge::CalculateAndSetWidgetBounds() {
   if (!widget_ || !root_window_ || !nudge_view_)
     return;
@@ -152,7 +198,6 @@
 
   gfx::Rect display_bounds = root_window_->bounds();
   ::wm::ConvertRectToScreen(root_window_, &display_bounds);
-  gfx::Rect widget_bounds;
 
   // Calculate the nudge's size to ensure the label text and the icon accurately
   // fit.
@@ -163,42 +208,10 @@
                           params_.icon_label_spacing +
                           nudge_view_->label_->bounds().width();
 
-  widget_bounds =
-      gfx::Rect(display_bounds.x() + kNudgeMargin,
-                display_bounds.bottom() - ShelfConfig::Get()->shelf_size() -
-                    nudge_height - kNudgeMargin,
-                nudge_width, nudge_height);
-
   Shelf* shelf = RootWindowController::ForWindow(root_window_)->shelf();
-  bool shelf_hidden = shelf->GetVisibilityState() != SHELF_VISIBLE &&
-                      shelf->GetAutoHideState() == SHELF_AUTO_HIDE_HIDDEN;
-
-  if (base::i18n::IsRTL()) {
-    if (shelf->alignment() == ShelfAlignment::kRight && !shelf_hidden) {
-      widget_bounds.set_x(display_bounds.right() - nudge_width - kNudgeMargin -
-                          ShelfConfig::Get()->shelf_size());
-    } else {
-      widget_bounds.set_x(display_bounds.right() - nudge_width - kNudgeMargin);
-    }
-  } else {
-    if (shelf->alignment() == ShelfAlignment::kLeft && !shelf_hidden) {
-      widget_bounds.set_x(display_bounds.x() +
-                          ShelfConfig::Get()->shelf_size() + kNudgeMargin);
-    }
-  }
-
-  if ((shelf->alignment() == ShelfAlignment::kBottom && shelf_hidden) ||
-      shelf->alignment() == ShelfAlignment::kLeft ||
-      shelf->alignment() == ShelfAlignment::kRight) {
-    widget_bounds.set_y(display_bounds.bottom() - nudge_height - kNudgeMargin);
-  }
-
-  // Set the nudge's bounds above the hotseat when it is extended.
-  HotseatWidget* hotseat_widget = shelf->hotseat_widget();
-  if (hotseat_widget->state() == HotseatState::kExtended) {
-    widget_bounds.set_y(hotseat_widget->GetTargetBounds().y() - nudge_height -
-                        kNudgeMargin);
-  }
+  gfx::Rect widget_bounds =
+      CalculateWidgetBounds(display_bounds, shelf, nudge_width, nudge_height,
+                            params_.anchor_status_area);
 
   // Only run the widget bounds animation if the widget's bounds have already
   // been initialized.
diff --git a/ash/system/tray/system_nudge.h b/ash/system/tray/system_nudge.h
index f461b4b..e328493 100644
--- a/ash/system/tray/system_nudge.h
+++ b/ash/system/tray/system_nudge.h
@@ -35,7 +35,8 @@
   SystemNudge(const std::string& name,
               int icon_size,
               int icon_label_spacing,
-              int nudge_padding);
+              int nudge_padding,
+              bool anchor_status_area = false);
   SystemNudge(const SystemNudge&) = delete;
   SystemNudge& operator=(const SystemNudge&) = delete;
   ~SystemNudge() override;
@@ -68,9 +69,18 @@
   // screen reader is enabled when the view is shown.
   virtual std::u16string GetAccessibilityText() const = 0;
 
+  // Calculates the expected bounds of nudge widget.
+  static gfx::Rect CalculateWidgetBounds(const gfx::Rect& display_bounds,
+                                         Shelf* shelf,
+                                         int nudge_width,
+                                         int nudge_height,
+                                         bool anchor_status_area);
+
  private:
   class SystemNudgeView;
 
+  friend class SystemNudgeTest;
+
   struct SystemNudgeParams {
     // The name for the widget.
     std::string name;
@@ -80,6 +90,10 @@
     int icon_label_spacing;
     // The padding which separates the nudge's border with its inner contents.
     int nudge_padding;
+    // If true, the nudge will be on the same side of the status area.
+    // Otherwise the nudge will be on the left/right side of the window for
+    // non-RTL/RTL locale.
+    bool anchor_status_area = false;
   };
 
   // Calculate and set widget bounds based on a fixed width and a variable
diff --git a/ash/system/tray/system_nudge_unittest.cc b/ash/system/tray/system_nudge_unittest.cc
new file mode 100644
index 0000000..685e38cc1
--- /dev/null
+++ b/ash/system/tray/system_nudge_unittest.cc
@@ -0,0 +1,122 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "ash/system/tray/system_nudge.h"
+
+#include "ash/public/cpp/shelf_config.h"
+#include "ash/public/cpp/shelf_prefs.h"
+#include "ash/resources/vector_icons/vector_icons.h"
+#include "ash/root_window_controller.h"
+#include "ash/session/session_controller_impl.h"
+#include "ash/shell.h"
+#include "ash/system/status_area_widget.h"
+#include "ash/system/status_area_widget_test_helper.h"
+#include "ash/test/ash_test_base.h"
+#include "ash/test/ash_test_helper.h"
+#include "base/run_loop.h"
+#include "ui/events/event.h"
+#include "ui/events/types/event_type.h"
+
+namespace ash {
+
+namespace {
+constexpr int kNudgeMargin = 8;
+constexpr int kNudgeWidth = 128;
+constexpr int kNudgeHeight = 32;
+}  // namespace
+
+class SystemNudgeTest : public AshTestBase {
+ public:
+  SystemNudgeTest() = default;
+
+  SystemNudgeTest(const SystemNudgeTest&) = delete;
+  SystemNudgeTest& operator=(const SystemNudgeTest&) = delete;
+
+  ~SystemNudgeTest() override = default;
+
+  void SetUp() override { AshTestBase::SetUp(); }
+
+  gfx::Rect CalculateWidgetBounds(const gfx::Rect& display_bounds,
+                                  Shelf* shelf,
+                                  int nudge_width,
+                                  int nudge_height,
+                                  bool anchor_status_area) {
+    return SystemNudge::CalculateWidgetBounds(
+        display_bounds, shelf, nudge_width, nudge_height, anchor_status_area);
+  }
+};
+
+TEST_F(SystemNudgeTest, NudgeDefaultOnLeftSide) {
+  Shelf* shelf = GetPrimaryShelf();
+  display::Display primary_display = GetPrimaryDisplay();
+  gfx::Rect display_bounds = primary_display.bounds();
+  int shelf_size = ShelfConfig::Get()->shelf_size();
+  PrefService* prefs =
+      Shell::Get()->session_controller()->GetLastActiveUserPrefService();
+  gfx::Rect nudge_bounds;
+
+  nudge_bounds =
+      CalculateWidgetBounds(display_bounds, shelf, kNudgeWidth, kNudgeHeight,
+                            /*anchor_status_area=*/false);
+  EXPECT_EQ(nudge_bounds.size(), gfx::Size(kNudgeWidth, kNudgeHeight));
+  nudge_bounds.Outset(kNudgeMargin);
+  EXPECT_EQ(nudge_bounds.x(), display_bounds.x());
+  EXPECT_EQ(nudge_bounds.bottom(), display_bounds.bottom() - shelf_size);
+
+  SetShelfAlignmentPref(prefs, primary_display.id(), ShelfAlignment::kRight);
+  nudge_bounds =
+      CalculateWidgetBounds(display_bounds, shelf, kNudgeWidth, kNudgeHeight,
+                            /*anchor_status_area=*/false);
+  EXPECT_EQ(nudge_bounds.size(), gfx::Size(kNudgeWidth, kNudgeHeight));
+  nudge_bounds.Outset(kNudgeMargin);
+  EXPECT_EQ(nudge_bounds.x(), display_bounds.x());
+  EXPECT_EQ(nudge_bounds.bottom(), display_bounds.bottom());
+
+  SetShelfAlignmentPref(prefs, primary_display.id(), ShelfAlignment::kLeft);
+  nudge_bounds =
+      CalculateWidgetBounds(display_bounds, shelf, kNudgeWidth, kNudgeHeight,
+                            /*anchor_status_area=*/false);
+  EXPECT_EQ(nudge_bounds.size(), gfx::Size(kNudgeWidth, kNudgeHeight));
+  nudge_bounds.Outset(kNudgeMargin);
+  EXPECT_EQ(nudge_bounds.x(), display_bounds.x() + shelf_size);
+  EXPECT_EQ(nudge_bounds.bottom(), display_bounds.bottom());
+}
+
+TEST_F(SystemNudgeTest, NudgeAnchorStatusArea) {
+  Shelf* shelf = GetPrimaryShelf();
+  display::Display primary_display = GetPrimaryDisplay();
+  gfx::Rect display_bounds = primary_display.bounds();
+  int shelf_size = ShelfConfig::Get()->shelf_size();
+  PrefService* prefs =
+      Shell::Get()->session_controller()->GetLastActiveUserPrefService();
+  gfx::Rect nudge_bounds;
+
+  nudge_bounds =
+      CalculateWidgetBounds(display_bounds, shelf, kNudgeWidth, kNudgeHeight,
+                            /*anchor_status_area=*/true);
+  EXPECT_EQ(nudge_bounds.size(), gfx::Size(kNudgeWidth, kNudgeHeight));
+  nudge_bounds.Outset(kNudgeMargin);
+  EXPECT_EQ(nudge_bounds.right(), display_bounds.right());
+  EXPECT_EQ(nudge_bounds.bottom(), display_bounds.bottom() - shelf_size);
+
+  SetShelfAlignmentPref(prefs, primary_display.id(), ShelfAlignment::kRight);
+  nudge_bounds =
+      CalculateWidgetBounds(display_bounds, shelf, kNudgeWidth, kNudgeHeight,
+                            /*anchor_status_area=*/true);
+  EXPECT_EQ(nudge_bounds.size(), gfx::Size(kNudgeWidth, kNudgeHeight));
+  nudge_bounds.Outset(kNudgeMargin);
+  EXPECT_EQ(nudge_bounds.right(), display_bounds.right() - shelf_size);
+  EXPECT_EQ(nudge_bounds.bottom(), display_bounds.bottom());
+
+  SetShelfAlignmentPref(prefs, primary_display.id(), ShelfAlignment::kLeft);
+  nudge_bounds =
+      CalculateWidgetBounds(display_bounds, shelf, kNudgeWidth, kNudgeHeight,
+                            /*anchor_status_area=*/true);
+  EXPECT_EQ(nudge_bounds.size(), gfx::Size(kNudgeWidth, kNudgeHeight));
+  nudge_bounds.Outset(kNudgeMargin);
+  EXPECT_EQ(nudge_bounds.x(), display_bounds.x() + shelf_size);
+  EXPECT_EQ(nudge_bounds.bottom(), display_bounds.bottom());
+}
+
+}  // namespace ash
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_as.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_as.xtb
index 9ee9762b..823e29fd 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_as.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_as.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">বাৰক’ড স্কেন কৰক</translation>
 <translation id="3892148308691398805">পাঠৰ প্ৰতিলিপি কৰক</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> মেগাপিক্সেল</translation>
+<translation id="4096701159033358951">নথি স্কেন কৰাৰ সুবিধাটো ডাউনল’ড কৰি থকা হৈছে</translation>
 <translation id="4118525110028899586">ৰেকৰ্ডিং পজ কৰক</translation>
 <translation id="4121305183798804752">নথিখন চিনাক্ত কৰা হৈছে</translation>
 <translation id="414641094616694804">এই কেমেৰাটোৱে ৰিজ’লিউশ্বন সলনি কৰিব নোৱাৰে</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_be.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_be.xtb
index 6c1191b4..6cbaf39 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_be.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_be.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Сканіраваць штрыхкод</translation>
 <translation id="3892148308691398805">Скапіраваць тэкст</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> Мпікс</translation>
+<translation id="4096701159033358951">Ідзе спампоўванне функцыі для сканіравання дакументаў</translation>
 <translation id="4118525110028899586">Прыпыніць запіс</translation>
 <translation id="4121305183798804752">Выяўлены дакумент</translation>
 <translation id="414641094616694804">Гэта камера не можа змяняць раздзяляльнасць</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_bg.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_bg.xtb
index 7fc44c0d..b857413 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_bg.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_bg.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Сканиране на баркод</translation>
 <translation id="3892148308691398805">Копиране на текста</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> мегапиксела</translation>
+<translation id="4096701159033358951">Функцията за сканиране на документи се изтегля</translation>
 <translation id="4118525110028899586">Пауза на записа</translation>
 <translation id="4121305183798804752">Открит е документ</translation>
 <translation id="414641094616694804">Разделителната способност на тази камера не може да се променя</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_ca.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_ca.xtb
index 4cb417ad..5c96b6821 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_ca.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_ca.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Escaneja el codi de barres</translation>
 <translation id="3892148308691398805">Copia el text</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> Mpx</translation>
+<translation id="4096701159033358951">S'està baixant la funció d'escaneig de documents</translation>
 <translation id="4118525110028899586">Posa en pausa la gravació</translation>
 <translation id="4121305183798804752">S'ha detectat un document</translation>
 <translation id="414641094616694804">Aquesta càmera no pot canviar la resolució</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_es-419.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_es-419.xtb
index 310723e..1edeb5a 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_es-419.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_es-419.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Escanear el código de barras</translation>
 <translation id="3892148308691398805">Copiar texto</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> MP</translation>
+<translation id="4096701159033358951">Descargando la función para escanear documentos</translation>
 <translation id="4118525110028899586">Pausar la grabación</translation>
 <translation id="4121305183798804752">Se detectó un documento</translation>
 <translation id="414641094616694804">No se puede modificar la resolución de la cámara</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_fi.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_fi.xtb
index 877904b5..e07d8a8b 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_fi.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_fi.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Skannaa viivakoodi</translation>
 <translation id="3892148308691398805">Kopioi teksti</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> Mpx</translation>
+<translation id="4096701159033358951">Ladataan dokumenttien skannausominaisuutta</translation>
 <translation id="4118525110028899586">Keskeytä tallennus</translation>
 <translation id="4121305183798804752">Dokumentti havaittiin</translation>
 <translation id="414641094616694804">Kamera ei voi muuttaa resoluutiota</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_fr-CA.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_fr-CA.xtb
index 096e5f05..0c94eff 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_fr-CA.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_fr-CA.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Numériser le code-barres</translation>
 <translation id="3892148308691398805">Copier le texte</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> Mpx</translation>
+<translation id="4096701159033358951">Téléchargement de la fonctionnalité de numérisation de documents en cours…</translation>
 <translation id="4118525110028899586">Interrompre l'enregistrement</translation>
 <translation id="4121305183798804752">Document détecté</translation>
 <translation id="414641094616694804">La résolution de cette caméra n'est pas modifiable</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_fr.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_fr.xtb
index 05b29011..0c2278e 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_fr.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_fr.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Lire le code-barres</translation>
 <translation id="3892148308691398805">Copier le texte</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> Mpx</translation>
+<translation id="4096701159033358951">Téléchargement de la fonctionnalité de numérisation de documents</translation>
 <translation id="4118525110028899586">Suspendre l'enregistrement</translation>
 <translation id="4121305183798804752">Document détecté</translation>
 <translation id="414641094616694804">Impossible de modifier la résolution de cet appareil photo</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_hi.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_hi.xtb
index ec55c93..7658708a 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_hi.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_hi.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">बारकोड स्कैन करें</translation>
 <translation id="3892148308691398805">टेक्स्ट कॉपी करें</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> एमपी</translation>
+<translation id="4096701159033358951">दस्तावेज़ स्कैन करने की सुविधा डाउनलोड हो रही है</translation>
 <translation id="4118525110028899586">रिकॉर्डिंग रोकें</translation>
 <translation id="4121305183798804752">दस्तावेज़ मिल गया है</translation>
 <translation id="414641094616694804">कैमरे का रिज़ॉल्यूशन नहीं बदला जा सकता</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_hy.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_hy.xtb
index 2bd6a18..ae4b5c6 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_hy.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_hy.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Սկանավորել գծակոդը</translation>
 <translation id="3892148308691398805">Պատճենել տեքստը</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> ՄՊ</translation>
+<translation id="4096701159033358951">Փաստաթղթերի սկանավորման գործառույթի ներբեռնում</translation>
 <translation id="4118525110028899586">Դադարեցնել տեսագրումը</translation>
 <translation id="4121305183798804752">Փաստաթուղթը ջնջված է</translation>
 <translation id="414641094616694804">Այս տեսախցիկի լուծաչափը հնարավոր չէ փոխել</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_iw.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_iw.xtb
index b0bdbf5..851e425 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_iw.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_iw.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">סריקת ברקוד</translation>
 <translation id="3892148308691398805">העתקת הטקסט</translation>
 <translation id="4061162772429051350">‎<ph name="MAGAPIXELS_AMOUNT" /> MP</translation>
+<translation id="4096701159033358951">מתבצעת הורדה של תכונה לסריקת מסמכים</translation>
 <translation id="4118525110028899586">השהיית ההקלטה</translation>
 <translation id="4121305183798804752">זוהה מסמך</translation>
 <translation id="414641094616694804">המצלמה הזו לא יכולה לשנות את הרזולוציה</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_kk.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_kk.xtb
index ead551e6..9b50520 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_kk.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_kk.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Сканерлеу штрих коды</translation>
 <translation id="3892148308691398805">Мәтінді көшіру</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> мегапиксель</translation>
+<translation id="4096701159033358951">Құжат сканерлеу функциясы жүктеп алынуда</translation>
 <translation id="4118525110028899586">Жазуды кідірту</translation>
 <translation id="4121305183798804752">Құжат анықталды</translation>
 <translation id="414641094616694804">Бұл камера ажыратымдылықты өзгерте алмайды.</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_ky.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_ky.xtb
index 328f69d..e74f8f6 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_ky.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_ky.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Штрихкодду скандоо</translation>
 <translation id="3892148308691398805">Текстти көчүрүү</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> Мпикс.</translation>
+<translation id="4096701159033358951">Документти скандоо функциясы жүктөлүп алынууда</translation>
 <translation id="4118525110028899586">Видео жаздырууну тындыруу</translation>
 <translation id="4121305183798804752">Документ аныкталды</translation>
 <translation id="414641094616694804">Камеранын резолюциясын өзгөртүүгө болбойт</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_lv.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_lv.xtb
index f779a26..71fe1c91 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_lv.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_lv.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Skenēt svītrkodu</translation>
 <translation id="3892148308691398805">Kopēt tekstu</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> MP</translation>
+<translation id="4096701159033358951">Notiek dokumentu skenēšanas funkcijas lejupielāde…</translation>
 <translation id="4118525110028899586">Pārtraukt ierakstīšanu</translation>
 <translation id="4121305183798804752">Konstatēts dokuments</translation>
 <translation id="414641094616694804">Šai kamerai nevar mainīt izšķirtspēju</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_mr.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_mr.xtb
index 700ef54..a8fe1c6 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_mr.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_mr.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">बारकोड स्कॅन करा</translation>
 <translation id="3892148308691398805">मजकूर कॉपी करा</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> MP</translation>
+<translation id="4096701159033358951">दस्तऐवज स्कॅन करण्यासंबंधित वैशिष्‍ट्य डाउनलोड करत आहे</translation>
 <translation id="4118525110028899586">रेकॉर्डिंग थांबवा</translation>
 <translation id="4121305183798804752">दस्तऐवज डिटेक्ट केले</translation>
 <translation id="414641094616694804">हा कॅमेरा रेझोल्यूशन बदलू शकत नाही</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_ru.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_ru.xtb
index d50625af..c2a4117 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_ru.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_ru.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Сканировать штрихкод</translation>
 <translation id="3892148308691398805">Копировать текст</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> Mпкс</translation>
+<translation id="4096701159033358951">Скачивание функции для сканирования документов.</translation>
 <translation id="4118525110028899586">Приостановить запись</translation>
 <translation id="4121305183798804752">Обнаружен документ</translation>
 <translation id="414641094616694804">Разрешение этой камеры нельзя изменить</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_si.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_si.xtb
index ead462c1..7cda938 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_si.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_si.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">තීරු කේතය ස්කෑන් කරන්න</translation>
 <translation id="3892148308691398805">පෙළ පිටපත් කරන්න</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> MP</translation>
+<translation id="4096701159033358951">ලේඛන ස්කෑන් කිරීමේ විශේෂාංගය බාගැනීම</translation>
 <translation id="4118525110028899586">පටිගත කිරීම විරාම කරන්න</translation>
 <translation id="4121305183798804752">ලේඛනය අනාවරණය කර ගන්නා ලදි</translation>
 <translation id="414641094616694804">මෙම කැමරාවට විභේදනය වෙනස් කළ නොහැකිය</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_sq.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_sq.xtb
index efdd3ca..4fa6933 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_sq.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_sq.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Skano bardkodin</translation>
 <translation id="3892148308691398805">Kopjo tekstin</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> MP</translation>
+<translation id="4096701159033358951">Veçoria e skanimit të dokumenteve po shkarkohet</translation>
 <translation id="4118525110028899586">Vendose në pauzë regjistrimin</translation>
 <translation id="4121305183798804752">U zbulua një dokument</translation>
 <translation id="414641094616694804">Kjo kamerë nuk mund ta ndryshojë rezolucionin</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_sv.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_sv.xtb
index db6d28f..473c1c49 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_sv.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_sv.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Läs av streckkod</translation>
 <translation id="3892148308691398805">Kopiera text</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> MP</translation>
+<translation id="4096701159033358951">Laddar ned funktionen för dokumentskanning</translation>
 <translation id="4118525110028899586">Pausa inspelning</translation>
 <translation id="4121305183798804752">Ett dokument identifierades</translation>
 <translation id="414641094616694804">Det går inte att ändra upplösning för den här kameran</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_sw.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_sw.xtb
index 334c7b8..1137b23 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_sw.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_sw.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Changanua msimbo wa mistari</translation>
 <translation id="3892148308691398805">Nakili maandishi</translation>
 <translation id="4061162772429051350">MP <ph name="MAGAPIXELS_AMOUNT" /></translation>
+<translation id="4096701159033358951">Inapakua kipengele cha kuchanganua hati</translation>
 <translation id="4118525110028899586">Sitisha kurekodi</translation>
 <translation id="4121305183798804752">Hati imetambuliwa</translation>
 <translation id="414641094616694804">Kamera hii haiwezi kubadilisha ubora</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_ta.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_ta.xtb
index cb1d2c8..7fa5664 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_ta.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_ta.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">பார்கோடை ஸ்கேன் செய்</translation>
 <translation id="3892148308691398805">உரையை நகலெடு</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> மெ.பி.</translation>
+<translation id="4096701159033358951">ஆவணத்தை ஸ்கேன் செய்யும் அம்சம் பதிவிறக்கப்படுகிறது</translation>
 <translation id="4118525110028899586">ரெக்கார்டிங்கை இடைநிறுத்து</translation>
 <translation id="4121305183798804752">ஆவணம் கண்டறியப்பட்டது</translation>
 <translation id="414641094616694804">இந்தக் கேமராவில் தெளிவுத்திறனை மாற்ற முடியாது</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_tr.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_tr.xtb
index 1ab7206..deff29c 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_tr.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_tr.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">Barkodu tara</translation>
 <translation id="3892148308691398805">Metni kopyala</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> MP</translation>
+<translation id="4096701159033358951">Doküman tarama özelliği indiriliyor</translation>
 <translation id="4118525110028899586">Kaydı duraklat</translation>
 <translation id="4121305183798804752">Doküman algılandı</translation>
 <translation id="414641094616694804">Bu kamera, çözünürlüğü değiştiremez</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-CN.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-CN.xtb
index 6c232e20..728d1f44 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-CN.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-CN.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">扫描条形码</translation>
 <translation id="3892148308691398805">复制文字</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> MP</translation>
+<translation id="4096701159033358951">正在下载文件扫描功能</translation>
 <translation id="4118525110028899586">暂停录制</translation>
 <translation id="4121305183798804752">检测到文件</translation>
 <translation id="414641094616694804">此相机无法更改分辨率</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-HK.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-HK.xtb
index 0823efb..32f1a827 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-HK.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-HK.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">掃描條碼</translation>
 <translation id="3892148308691398805">複製文字</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> 百萬像素</translation>
+<translation id="4096701159033358951">正在下載文件掃描功能</translation>
 <translation id="4118525110028899586">暫停錄影</translation>
 <translation id="4121305183798804752">偵測到文件</translation>
 <translation id="414641094616694804">此相機無法變更解像度</translation>
diff --git a/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-TW.xtb b/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-TW.xtb
index 105e42b1..be6c0b70 100644
--- a/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-TW.xtb
+++ b/ash/webui/camera_app_ui/resources/strings/camera_strings_zh-TW.xtb
@@ -72,6 +72,7 @@
 <translation id="3838931309141338733">掃描條碼</translation>
 <translation id="3892148308691398805">複製文字</translation>
 <translation id="4061162772429051350"><ph name="MAGAPIXELS_AMOUNT" /> 百萬像素</translation>
+<translation id="4096701159033358951">正在下載文件掃描功能</translation>
 <translation id="4118525110028899586">暫停錄影</translation>
 <translation id="4121305183798804752">偵測到文件</translation>
 <translation id="414641094616694804">這部攝影機無法變更解析度</translation>
diff --git a/base/check.cc b/base/check.cc
index a4c2f9d..5478104 100644
--- a/base/check.cc
+++ b/base/check.cc
@@ -15,7 +15,9 @@
 
 #include "base/check_op.h"
 #include "base/debug/alias.h"
+#if !BUILDFLAG(IS_NACL)
 #include "base/debug/crash_logging.h"
+#endif  // !BUILDFLAG(IS_NACL)
 #include "base/debug/dump_without_crashing.h"
 #include "base/logging.h"
 #include "base/thread_annotations.h"
@@ -41,8 +43,10 @@
     // redundant, then remove it.
     DEBUG_ALIAS_FOR_CSTR(log_message_str, str.c_str(), 1024);
 
+#if !BUILDFLAG(IS_NACL)
     // Report the log message as DCHECK_MESSAGE in the dump we're about to do.
     SCOPED_CRASH_KEY_STRING256("Logging", "DCHECK_MESSAGE", str);
+#endif  // !BUILDFLAG(IS_NACL)
 
     // Note that dumping may fail if the crash handler hasn't been set yet. In
     // that case we want to try again on the next failing DCHECK.
diff --git a/build/config/android/internal_rules.gni b/build/config/android/internal_rules.gni
index b34a81e..7d1c897 100644
--- a/build/config/android/internal_rules.gni
+++ b/build/config/android/internal_rules.gni
@@ -91,8 +91,8 @@
 _desugar_jdk_libs_configuration_jar = "//third_party/android_deps/libs/com_android_tools_desugar_jdk_libs_configuration/desugar_jdk_libs_configuration-1.1.5.jar"
 _robolectric_jar_path =
     "//third_party/robolectric/lib/android-all-12-robolectric-7732740.jar"
-_lint_jar_path = "//third_party/android_lint/lint.jar"
-_custom_lint_jar_path = "//third_party/android_lint/custom_lint.jar"
+_lint_jar_path = "//third_party/android_build_tools/lint/lint.jar"
+_custom_lint_jar_path = "//third_party/android_build_tools/lint/custom_lint.jar"
 
 # Put the bug number in the target name so that false-positives have a hint in
 # the error message about why non-existent dependencies are there.
diff --git a/build/fuchsia/linux_internal.sdk.sha1 b/build/fuchsia/linux_internal.sdk.sha1
index d48d7cb..fd1953a 100644
--- a/build/fuchsia/linux_internal.sdk.sha1
+++ b/build/fuchsia/linux_internal.sdk.sha1
@@ -1 +1 @@
-8.20220701.0.1
+8.20220701.1.1
diff --git a/chrome/VERSION b/chrome/VERSION
index 4af8e55..38a8e2f5 100644
--- a/chrome/VERSION
+++ b/chrome/VERSION
@@ -1,4 +1,4 @@
 MAJOR=105
 MINOR=0
-BUILD=5154
+BUILD=5155
 PATCH=0
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabUsageTracker.java b/chrome/android/java/src/org/chromium/chrome/browser/TabUsageTracker.java
index 1774d70..e689ea3 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/TabUsageTracker.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/TabUsageTracker.java
@@ -13,6 +13,7 @@
 import org.chromium.chrome.browser.lifecycle.StartStopWithNativeObserver;
 import org.chromium.chrome.browser.tab.Tab;
 import org.chromium.chrome.browser.tabmodel.TabModelSelector;
+import org.chromium.chrome.browser.tabmodel.TabModelSelectorObserver;
 import org.chromium.chrome.browser.tabmodel.TabModelSelectorTabModelObserver;
 
 import java.util.HashSet;
@@ -36,6 +37,7 @@
     private int mNewlyAddedTabCount;
     private final ActivityLifecycleDispatcher mLifecycleDispatcher;
     private final TabModelSelector mModelSelector;
+    private TabModelSelectorObserver mTabModelSelectorObserver;
     private TabModelSelectorTabModelObserver mTabModelSelectorTabModelObserver;
     private boolean mApplicationResumed;
 
@@ -64,6 +66,7 @@
     @Override
     public void onDestroy() {
         mLifecycleDispatcher.unregister(this);
+        mModelSelector.removeObserver(mTabModelSelectorObserver);
     }
 
     @Override
@@ -88,6 +91,7 @@
 
         mTabsUsed.clear();
         mNewlyAddedTabCount = 0;
+        mInitialTabCount = 0;
         mTabModelSelectorTabModelObserver.destroy();
         mApplicationResumed = false;
     }
@@ -98,7 +102,18 @@
      */
     @Override
     public void onResumeWithNative() {
-        mInitialTabCount = mModelSelector.getTotalTabCount();
+        if (mModelSelector.isTabStateInitialized()) {
+            mInitialTabCount = mModelSelector.getTotalTabCount();
+        } else {
+            mTabModelSelectorObserver = new TabModelSelectorObserver() {
+                @Override
+                public void onTabStateInitialized() {
+                    mInitialTabCount = mModelSelector.getTotalTabCount();
+                }
+            };
+            mModelSelector.addObserver(mTabModelSelectorObserver);
+        }
+
         Tab currentlySelectedTab =
                 mModelSelector.getCurrentModel().getTabAt(mModelSelector.getCurrentModelIndex());
         if (currentlySelectedTab != null) mTabsUsed.add(currentlySelectedTab.getId());
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/feedback/ChromeFeedbackCollector.java b/chrome/android/java/src/org/chromium/chrome/browser/feedback/ChromeFeedbackCollector.java
index 20c3f41..8086abb8 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/feedback/ChromeFeedbackCollector.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/feedback/ChromeFeedbackCollector.java
@@ -10,6 +10,7 @@
 import androidx.annotation.VisibleForTesting;
 
 import org.chromium.base.Callback;
+import org.chromium.chrome.browser.flags.ChromeFeatureList;
 import org.chromium.chrome.browser.night_mode.AutoDarkFeedbackSource;
 import org.chromium.chrome.browser.profiles.Profile;
 import org.chromium.url.GURL;
@@ -78,7 +79,8 @@
 
         // FamilyInfoFeedbackSource relies on IdentityManager which is not available for the
         // incognito profile.
-        if (!initParams.profile.isOffTheRecord()) {
+        if (ChromeFeatureList.isEnabled(ChromeFeatureList.ENABLE_FAMILY_INFO_FEEDBACK)
+                && !initParams.profile.isOffTheRecord()) {
             sources.add(new FamilyInfoFeedbackSource(initParams.profile));
         }
 
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunSignInProcessor.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunSignInProcessor.java
index 2128f11..7b8e0ad 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunSignInProcessor.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunSignInProcessor.java
@@ -11,6 +11,7 @@
 import androidx.annotation.NonNull;
 
 import org.chromium.chrome.browser.SyncFirstSetupCompleteSource;
+import org.chromium.chrome.browser.flags.ChromeFeatureList;
 import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
 import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
 import org.chromium.chrome.browser.profiles.Profile;
@@ -68,6 +69,7 @@
 
         final String accountName = getFirstRunFlowSignInAccountName();
         if (TextUtils.isEmpty(accountName) && getFirstRunFlowSignInSetup()) {
+            assert ChromeFeatureList.isEnabled(ChromeFeatureList.ENABLE_SYNC_IMMEDIATELY_IN_FRE);
             openAdvancedSyncSettings(activity);
             setFirstRunFlowSignInComplete(true);
             return;
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/SyncConsentFirstRunFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/SyncConsentFirstRunFragment.java
index 26ffd4d..2b087fe 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/SyncConsentFirstRunFragment.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/SyncConsentFirstRunFragment.java
@@ -69,16 +69,25 @@
                     MobileFreProgress.SYNC_CONSENT_SETTINGS_LINK_CLICK);
         }
 
-        // Enable sync now. Leave the account pref empty in FirstRunSignInProcessor, so start()
-        // doesn't try to do it a second time. Only set the advanced setup pref later in
-        // closeAndMaybeOpenSyncSettings(), because settings shouldn't open if
-        // signinAndEnableSync() fails.
-        FirstRunSignInProcessor.setFirstRunFlowSignInAccountName(null);
-        signinAndEnableSync(accountName, settingsClicked, callback);
+        if (ChromeFeatureList.isEnabled(ChromeFeatureList.ENABLE_SYNC_IMMEDIATELY_IN_FRE)) {
+            // Enable sync now. Leave the account pref empty in FirstRunSignInProcessor, so start()
+            // doesn't try to do it a second time. Only set the advanced setup pref later in
+            // closeAndMaybeOpenSyncSettings(), because settings shouldn't open if
+            // signinAndEnableSync() fails.
+            FirstRunSignInProcessor.setFirstRunFlowSignInAccountName(null);
+            signinAndEnableSync(accountName, settingsClicked, callback);
+        } else {
+            // Enabling sync is deferred to FirstRunSignInProcessor.start().
+            FirstRunSignInProcessor.setFirstRunFlowSignInAccountName(accountName);
+            FirstRunSignInProcessor.setFirstRunFlowSignInSetup(settingsClicked);
+            getPageDelegate().advanceToNextPage();
+            callback.run();
+        }
     }
 
     @Override
     protected void closeAndMaybeOpenSyncSettings(boolean settingsClicked) {
+        assert ChromeFeatureList.isEnabled(ChromeFeatureList.ENABLE_SYNC_IMMEDIATELY_IN_FRE);
         // Now that signinAndEnableSync() succeeded, signal whether FirstRunSignInProcessor.start()
         // should open settings.
         FirstRunSignInProcessor.setFirstRunFlowSignInSetup(settingsClicked);
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkServiceClient.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkServiceClient.java
index a2d78d53..1bbcbebd 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkServiceClient.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkServiceClient.java
@@ -165,6 +165,15 @@
 
             @ContentSettingValues
             int settingValue = toContentSettingValue(api.checkNotificationPermission());
+
+            // See http://crbug.com/1340854. Temporary fallback in case the shell has not yet been
+            // updated to support checkNotificationPermission(). Delete this after shell v154 has
+            // been fully launched.
+            if (settingValue != ContentSettingValues.ALLOW && api.notificationPermissionEnabled()) {
+                Log.d(TAG, "Fallback to notificationPermissionEnabled().");
+                settingValue = ContentSettingValues.ALLOW;
+            }
+
             WebApkUmaRecorder.recordNotificationPermissionStatus(settingValue);
 
             if (settingValue != ContentSettingValues.ALLOW) {
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/firstrun/FirstRunActivitySigninAndSyncTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/firstrun/FirstRunActivitySigninAndSyncTest.java
index 46036210..46a98f4 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/firstrun/FirstRunActivitySigninAndSyncTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/firstrun/FirstRunActivitySigninAndSyncTest.java
@@ -47,12 +47,15 @@
 import org.chromium.base.test.util.DisabledTest;
 import org.chromium.base.test.util.Matchers;
 import org.chromium.chrome.R;
+import org.chromium.chrome.browser.flags.ChromeFeatureList;
 import org.chromium.chrome.browser.flags.ChromeSwitches;
 import org.chromium.chrome.browser.locale.LocaleManager;
 import org.chromium.chrome.browser.locale.LocaleManagerDelegate;
 import org.chromium.chrome.browser.search_engines.SearchEnginePromoType;
 import org.chromium.chrome.browser.signin.SigninFirstRunFragment;
 import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
+import org.chromium.chrome.test.util.browser.Features.DisableFeatures;
+import org.chromium.chrome.test.util.browser.Features.EnableFeatures;
 import org.chromium.chrome.test.util.browser.signin.AccountManagerTestRule;
 import org.chromium.chrome.test.util.browser.sync.SyncTestUtil;
 import org.chromium.components.externalauth.ExternalAuthUtils;
@@ -203,6 +206,7 @@
 
     @Test
     @MediumTest
+    @EnableFeatures({ChromeFeatureList.ENABLE_SYNC_IMMEDIATELY_IN_FRE})
     public void acceptingSyncEndsFreAndEnablesSyncIfEnableSyncImmediatelyFeatureEnabled() {
         when(mExternalAuthUtilsMock.canUseGooglePlayServices(any())).thenReturn(true);
         mAccountManagerTestRule.addAccount(TEST_EMAIL);
@@ -219,6 +223,24 @@
 
     @Test
     @MediumTest
+    @DisableFeatures({ChromeFeatureList.ENABLE_SYNC_IMMEDIATELY_IN_FRE})
+    public void acceptingSyncEndsFreAndEnablesSyncIfEnableSyncImmediatelyFeatureDisabled() {
+        when(mExternalAuthUtilsMock.canUseGooglePlayServices(any())).thenReturn(true);
+        mAccountManagerTestRule.addAccount(TEST_EMAIL);
+        launchFirstRunActivity();
+        ensureCurrentPageIs(SigninFirstRunFragment.class);
+        clickButton(R.id.signin_fre_continue_button);
+        ensureCurrentPageIs(SyncConsentFirstRunFragment.class);
+
+        clickButton(R.id.positive_button);
+
+        ApplicationTestUtils.waitForActivityState(mFirstRunActivity, Stage.DESTROYED);
+        SyncTestUtil.waitForSyncFeatureEnabled();
+    }
+
+    @Test
+    @MediumTest
+    @EnableFeatures({ChromeFeatureList.ENABLE_SYNC_IMMEDIATELY_IN_FRE})
     public void refusingSyncEndsFreAndDoesNotEnableSyncIfEnableSyncImmediatelyFeatureEnabled() {
         mAccountManagerTestRule.addAccount(TEST_EMAIL);
         launchFirstRunActivity();
@@ -235,6 +257,24 @@
 
     @Test
     @MediumTest
+    @DisableFeatures({ChromeFeatureList.ENABLE_SYNC_IMMEDIATELY_IN_FRE})
+    public void refusingSyncEndsFreAndDoesNotEnableSyncIfEnableSyncImmediatelyFeatureDisabled() {
+        mAccountManagerTestRule.addAccount(TEST_EMAIL);
+        launchFirstRunActivity();
+        ensureCurrentPageIs(SigninFirstRunFragment.class);
+        clickButton(R.id.signin_fre_continue_button);
+        ensureCurrentPageIs(SyncConsentFirstRunFragment.class);
+
+        clickButton(R.id.negative_button);
+
+        ApplicationTestUtils.waitForActivityState(mFirstRunActivity, Stage.DESTROYED);
+
+        Assert.assertFalse(SyncTestUtil.canSyncFeatureStart());
+    }
+
+    @Test
+    @MediumTest
+    @EnableFeatures({ChromeFeatureList.ENABLE_SYNC_IMMEDIATELY_IN_FRE})
     @DisabledTest(message = "https://crbug.com/1335094")
     public void
     clickingSettingsEndsFreAndStartsEnablingSyncIfEnableSyncImmediatelyFeatureEnabled() {
@@ -254,6 +294,27 @@
         SyncTestUtil.waitForCanSyncFeatureStart();
     }
 
+    @Test
+    @MediumTest
+    @DisableFeatures({ChromeFeatureList.ENABLE_SYNC_IMMEDIATELY_IN_FRE})
+    public void
+    clickingSettingsEndsFreAndStartsEnablingSyncIfEnableSyncImmediatelyFeatureDisabled() {
+        when(mExternalAuthUtilsMock.canUseGooglePlayServices(any())).thenReturn(true);
+        mAccountManagerTestRule.addAccount(TEST_EMAIL);
+        launchFirstRunActivity();
+        ensureCurrentPageIs(SigninFirstRunFragment.class);
+        clickButton(R.id.signin_fre_continue_button);
+        ensureCurrentPageIs(SyncConsentFirstRunFragment.class);
+
+        onView(withId(R.id.signin_details_description)).perform(new LinkClick());
+
+        ApplicationTestUtils.waitForActivityState(mFirstRunActivity, Stage.DESTROYED);
+
+        // Sync-the-feature can start but won't become enabled until the user clicks the "Confirm"
+        // button in settings.
+        SyncTestUtil.waitForCanSyncFeatureStart();
+    }
+
     private void clickButton(@IdRes int buttonId) {
         // This helps to reduce flakiness on some marshmallow bots in comparison with
         // espresso click.
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/locale/LocaleManagerTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/locale/LocaleManagerTest.java
index d552558..2916fcc 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/locale/LocaleManagerTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/locale/LocaleManagerTest.java
@@ -51,8 +51,8 @@
     @Policies.Add({ @Policies.Item(key = "DefaultSearchProviderEnabled", string = "false") })
     @SmallTest
     @Test
-    @DisableIf.Build(sdk_is_less_than = Build.VERSION_CODES.N,
-            message = "Flaky on Android M: https://crbug.com/1170670")
+    @DisableIf.Build(sdk_is_less_than = Build.VERSION_CODES.O,
+            message = "Flaky on Android M and N: https://crbug.com/1170670")
     public void
     testShowSearchEnginePromoDseDisabled() throws TimeoutException {
         final CallbackHelper getShowTypeCallback = new CallbackHelper();
diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/compositor/overlays/strip/TabUsageTrackerTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/compositor/overlays/strip/TabUsageTrackerTest.java
index cab7657..c0843b1 100644
--- a/chrome/android/junit/src/org/chromium/chrome/browser/compositor/overlays/strip/TabUsageTrackerTest.java
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/compositor/overlays/strip/TabUsageTrackerTest.java
@@ -27,6 +27,8 @@
 import org.chromium.chrome.browser.tabmodel.TabModelSelector;
 import org.chromium.chrome.browser.tabmodel.TabModelSelectorTabModelObserver;
 
+import java.util.ArrayList;
+import java.util.List;
 import java.util.concurrent.TimeoutException;
 
 /**
@@ -53,8 +55,13 @@
     @Before
     public void setUp() throws TimeoutException {
         MockitoAnnotations.initMocks(this);
+        List<TabModel> tabModels = new ArrayList<>();
+        tabModels.add(mTabModel);
+
         Mockito.when(mTabModel.getCount()).thenReturn(INITIAL_TAB_COUNT);
         Mockito.when(mTabModelSelector.getCurrentModel()).thenReturn(mTabModel);
+        Mockito.when(mTabModelSelector.getModels()).thenReturn(tabModels);
+        Mockito.when(mTabModelSelector.isTabStateInitialized()).thenReturn(true);
 
         mTabUsageTracker = new TabUsageTracker(mDispatcher, mTabModelSelector);
     }
diff --git a/chrome/app/resources/generated_resources_as.xtb b/chrome/app/resources/generated_resources_as.xtb
index 9790068a..a25a905 100644
--- a/chrome/app/resources/generated_resources_as.xtb
+++ b/chrome/app/resources/generated_resources_as.xtb
@@ -219,6 +219,7 @@
 <translation id="1197199342062592414">আৰম্ভ কৰোঁ আহক</translation>
 <translation id="11978075283960463">এপত ষ্ট’ৰ কৰা ডেটা: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">নিষ্ক্ৰিয় কৰক</translation>
+<translation id="1198066799963193307">কম দৃষ্টিশক্তিসম্পন্ন লোকৰ বাবে কথনৰ সঁজুলি</translation>
 <translation id="119944043368869598">সকলো মচক</translation>
 <translation id="1199814941632954229">এই প্ৰমাণপত্ৰ প্ৰ’ফাইলসমূহৰ বাবে প্ৰমাণপত্ৰৰ ব্যৱস্থা কৰি থকা হৈছে</translation>
 <translation id="120069043972472860">চাব নোৱাৰা</translation>
@@ -1509,6 +1510,7 @@
 <translation id="2371076942591664043">&amp;সম্পূর্ণ হ’লে খোলক</translation>
 <translation id="2373666622366160481">কাগজৰ আকাৰ অনুসৰি খাপ খুৱাওক</translation>
 <translation id="2375406435414127095">আপোনাৰ ফ’ন সংযোগ কৰক</translation>
+<translation id="2376056713414548745">ডাঙৰকৈ পঢ়ক</translation>
 <translation id="2377588536920405462">আপুনি আপোনাৰ ডিভাইচটোত মূল অৱস্থানৰ ছেটিংটো অফ ৰাখি অৱস্থান অফ কৰিব পাৰে। আপুনি অৱস্থানৰ ছেটিংসমূহত অৱস্থানৰ বাবে ৱাই-ফাই, ম’বাইল নেটৱৰ্ক আৰু ছেন্সৰসমূহ ব্যৱহাৰ কৰাটো অফ কৰিবও পাৰে।</translation>
 <translation id="2377667304966270281">হার্ড ফল্ট</translation>
 <translation id="237828693408258535">এই পৃষ্ঠাটো অনুবাদ কৰিবনে?</translation>
@@ -2336,6 +2338,7 @@
 <translation id="3163511056918491211">যিকোনো সময়তে সহজে আপোনাৰ ডেটা পুনঃস্থাপন কৰক অথবা ডিভাইচ সলনি কৰক। আপোনাৰ বেকআপসমূহ Googleত আপল’ড কৰা হয় আৰু আপোনাৰ Google একাউণ্টৰ পাছৱৰ্ড ব্যৱহাৰ কৰি সেইসমূহ এনক্ৰিপ্ট কৰা হয়।</translation>
 <translation id="3164329792803560526"><ph name="APP_NAME" />লৈ এই টেবটো শ্বেয়াৰ কৰি থকা হৈছে</translation>
 <translation id="3165390001037658081">কিছুমান বাহকে এই সুবিধাটো অৱৰোধ কৰিব পাৰে।</translation>
+<translation id="3169930038976362151">আপোনাৰ প্ৰয়োজনীয়তাৰ সৈতে মিলা থীমটো বাছনি কৰক। আপোনাৰ থীম, ৱালপেপাৰ, স্ক্ৰীন ছেভাৰ আৰু অধিক সলনি কৰিবলৈ, মাত্ৰ ডেস্কটপত স্পৰ্শ কৰি ৰাখক।</translation>
 <translation id="3170072451822350649">আপুনি ছাইন ইন নকৰাকৈ <ph name="LINK_START" />অতিথি হিচাপে ব্ৰাউজিং<ph name="LINK_END" /> কৰিবও পাৰে।</translation>
 <translation id="31774765611822736">বাওঁফালৰ নতুন টেব</translation>
 <translation id="3177909033752230686">পৃষ্ঠাৰ ভাষা:</translation>
@@ -3208,6 +3211,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">বিল্ডৰ সবিশেষ প্ৰতিলিপি কৰক</translation>
 <translation id="4021941025609472374">বাওঁফালে থকা টেববোৰ বন্ধ কৰক</translation>
+<translation id="402211067068791756">এই কাৰ্যই প্ৰদৰ্শিত ছাইটসমূহে ষ্ট’ৰ কৰা <ph name="TOTAL_USAGE" /> ডেটা মচিব</translation>
 <translation id="4022426551683927403">&amp;অভিধানত যোগ কৰক</translation>
 <translation id="4025039777635956441">বাছনি কৰা ছাইটটো মিউট কৰক</translation>
 <translation id="4028467762035011525">ইনপুট পদ্ধতি যোগ দিয়ক</translation>
@@ -3458,6 +3462,7 @@
 <translation id="4281844954008187215">সেৱাৰ চৰ্তাৱলী</translation>
 <translation id="4282196459431406533">স্মার্ট লক অন কৰা হৈছে</translation>
 <translation id="4284755288573763878">বৰ্ধিত সুৰক্ষা অফ কৰিবনে?</translation>
+<translation id="4284903252249997120">ChromeVox স্ক্ৰীন ৰীডাৰ আৰু কথা ক’বলৈ বাছনি কৰক</translation>
 <translation id="4285418559658561636">পাছৱৰ্ড আপডে’ট কৰক</translation>
 <translation id="4285498937028063278">আনপিন কৰক</translation>
 <translation id="428565720843367874">ছফ্টৱেৰটোৱে অপ্ৰত্যাশিতভাৱে এই ফাইলটো স্কেন কৰিব নোৱাৰিলে।</translation>
@@ -4999,6 +5004,7 @@
 <translation id="5827733057563115968">পৰৱৰ্তী শব্দ পূৰ্বানুমান</translation>
 <translation id="5828545842856466741">প্ৰ’ফাইল যোগ কৰক...</translation>
 <translation id="5828633471261496623">প্ৰিণ্ট কৰি থকা হৈছে...</translation>
+<translation id="5828797982387013521">প্লে’বুক বাছনি কৰক</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> খুলিব নোৱাৰি</translation>
 <translation id="5830720307094128296">&amp;ইয়াৰ এটা ধৰণত পৃষ্ঠাটো ছেভ কৰক...</translation>
 <translation id="5832813618714645810">প্ৰ’ফাইল</translation>
@@ -5089,6 +5095,7 @@
 
   ৰাজহুৱা সূচক (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> বিট):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">স্বয়ংক্ৰিয়ভাৱে পঢ়া</translation>
 <translation id="5916664084637901428">অন আছে</translation>
 <translation id="59174027418879706">সক্ষম কৰা আছে</translation>
 <translation id="5920543303088087579">আপোনাৰ প্ৰশাসকে এই নেটৱৰ্কটোৰ সৈতে যোগাযোগ কৰাটো অক্ষম কৰি থৈছে</translation>
@@ -5374,6 +5381,7 @@
 <translation id="6200151268994853226">এক্সটেনশ্বন পৰিচালনা কৰক</translation>
 <translation id="6201608810045805374">এই একাউণ্টটো আঁতৰাবনে?</translation>
 <translation id="6202304368170870640">আপুনি নিজৰ ডিভাইচত ছাইন ইন কৰিবলৈ বা ডিভাইচ আনলক কৰিবলৈ নিজৰ পিন ব্যৱহাৰ কৰিব পাৰে।</translation>
+<translation id="6206199626856438589">খোলা থকা টেবসমূহকে ধৰি প্ৰদৰ্শিত ছাইটসমূহৰ পৰা আপোনাক ছাইন আউট কৰোৱা হ’ব</translation>
 <translation id="6206311232642889873">ছ&amp;বিৰ প্ৰতিলিপি বনাওক</translation>
 <translation id="6207200176136643843">ডিফ’ল্ট জুমৰ স্তৰলৈ ৰিছেট কৰক</translation>
 <translation id="6207937957461833379">দেশ / অঞ্চল</translation>
@@ -5922,6 +5930,7 @@
 <translation id="6733620523445262364">‘<ph name="BOOKMARK_TITLE" />’ সৃষ্টি কৰা হ’ল।</translation>
 <translation id="6735304988756581115">কুকি আৰু অন্য ছাইট ডেটা দেখুৱাওক...</translation>
 <translation id="6736243959894955139">ঠিকনা</translation>
+<translation id="6737393581255281855">প্ৰদৰ্শিত ডেটা মচিবনে?</translation>
 <translation id="6737663862851963468">Kerberosৰ টিকেটটো আঁতৰাওক</translation>
 <translation id="6738430949033571771">একাউণ্ট সত্যাপন কৰি থকা হৈছে...</translation>
 <translation id="6739923123728562974">ডেস্কটপ শ্বৰ্টকাট দেখুৱাওক</translation>
@@ -7213,6 +7222,7 @@
 <translation id="7988355189918024273">সাধ্য সুবিধাবোৰ সক্ষম কৰক</translation>
 <translation id="7988805580376093356">আপোনাৰ OSটো ৰাখক আৰু ইউএছবিৰ পৰা <ph name="DEVICE_OS" /> চলাওক।</translation>
 <translation id="7991296728590311172">ছুইচ্চ এক্সেছৰ ছেটিংসমূহ</translation>
+<translation id="7992203134935383159">কথন সংযোজন</translation>
 <translation id="7997826902155442747">প্ৰচেছৰ অগ্ৰাধিকাৰ</translation>
 <translation id="7999229196265990314">এই ফাইলকেইটা সৃষ্টি কৰিছে:
 
@@ -7598,6 +7608,7 @@
 <translation id="8366396658833131068">আপোনাৰ নেটৱৰ্ক সংযোগক্ষমতা পুনঃস্থাপন কৰা হৈছে৷ আপোনাৰ কিঅ’স্ক এপ্ লঞ্চ কৰিবলৈ অনুগ্ৰহ কৰি পৃথক নেটৱৰ্ক বাছনি কৰক বা তলৰ 'অব্যাহত ৰাখক' বুটামটো হেঁচক৷</translation>
 <translation id="8366694425498033255">বাছনি কৰাৰ কী</translation>
 <translation id="8368859634510605990">&amp;সকলো বুকমাৰ্ক খোলক</translation>
+<translation id="8369028061188107403">এই কাৰ্যই প্ৰদৰ্শিত ছাইট আৰু ইনষ্টল হৈ থকা এপ্‌সমূহে ষ্ট’ৰ কৰা <ph name="TOTAL_USAGE" /> ডেটা মচিব</translation>
 <translation id="8370294614544004647">লেপটপটো বন্ধ কৰিলে সুপ্ত অৱস্থালৈ নিয়ক</translation>
 <translation id="8371695176452482769">এতিয়া কওক</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{ছাইট মিউট কৰক}one{ছাইটসমূহ মিউট কৰক}other{ছাইটসমূহ মিউট কৰক}}</translation>
diff --git a/chrome/app/resources/generated_resources_be.xtb b/chrome/app/resources/generated_resources_be.xtb
index 9d044dc9..a291ea10 100644
--- a/chrome/app/resources/generated_resources_be.xtb
+++ b/chrome/app/resources/generated_resources_be.xtb
@@ -219,6 +219,7 @@
 <translation id="1197199342062592414">Пачнём</translation>
 <translation id="11978075283960463">Захаваныя ў праграме даныя: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Выключыць</translation>
+<translation id="1198066799963193307">Інструменты сінтэзу маўлення для людзей з парушэннямі зроку</translation>
 <translation id="119944043368869598">Выдаліць усё</translation>
 <translation id="1199814941632954229">Сертыфікаты ўводзяцца ў дзеянне для наступных профіляў сертыфікатаў:</translation>
 <translation id="120069043972472860">Немагчыма глядзець</translation>
@@ -1499,6 +1500,7 @@
 <translation id="2371076942591664043">Адкрыць, калі будзе &amp;гатова</translation>
 <translation id="2373666622366160481">Дапасаваць да памеру паперы</translation>
 <translation id="2375406435414127095">Падключэнне да тэлефона</translation>
+<translation id="2376056713414548745">Чытаць услых</translation>
 <translation id="2377588536920405462">Каб выключыць функцыю вызначэння месцазнаходжання, выключыце галоўную наладу месцазнаходжання на прыладзе. Таксама можна выключыць выкарыстанне Wi-Fi, мабільных сетак і датчыкаў для вызначэння месцазнаходжання ў адпаведных наладах.</translation>
 <translation id="2377667304966270281">Апаратныя збоі</translation>
 <translation id="237828693408258535">Перакласці гэту старонку?</translation>
@@ -2326,6 +2328,7 @@
 <translation id="3163511056918491211">Аднавіць даныя або перайсці на іншую прыладу можна з лёгкасцю і ў любы час. Рэзервовыя копіі даных запампоўваюцца ў Google і шыфруюцца пад паролем вашага Уліковага запісу Google.</translation>
 <translation id="3164329792803560526">Укладка абагульваецца з <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">Некаторыя аператары могуць блакіраваць гэту функцыю.</translation>
+<translation id="3169930038976362151">Выберыце тэму, якая адпавядае вашым патрэбам. Каб змяніць тэму, шпалеры, застаўку і іншыя параметры, проста дакраніцеся да працоўнага стала і ўтрымлівайце палец.</translation>
 <translation id="3170072451822350649">Таксама можна не ўваходзіць і <ph name="LINK_START" />праглядаць вэб-старонкі як госць<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Новая ўкладка злева</translation>
 <translation id="3177909033752230686">Мова старонкі:</translation>
@@ -3199,6 +3202,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Скапіраваць звесткі пра зборку</translation>
 <translation id="4021941025609472374">Закрыць укладкі злева</translation>
+<translation id="402211067068791756">Будуць выдалены даныя (<ph name="TOTAL_USAGE" />), захаваныя паказанымі сайтамі</translation>
 <translation id="4022426551683927403">&amp;Дадаць у слоўнік</translation>
 <translation id="4025039777635956441">Выключыць гук на выбраным сайце</translation>
 <translation id="4028467762035011525">Дадаць метады ўводу</translation>
@@ -3449,6 +3453,7 @@
 <translation id="4281844954008187215">Умовы выкарыстання</translation>
 <translation id="4282196459431406533">Уключаны Smart Lock</translation>
 <translation id="4284755288573763878">Выключыць палепшаную бяспеку?</translation>
+<translation id="4284903252249997120">Праграма чытання з экрана ChromeVox і функцыя чытання ўголас</translation>
 <translation id="4285418559658561636">Абнавіць пароль</translation>
 <translation id="4285498937028063278">Адмацаваць</translation>
 <translation id="428565720843367874">Падчас праверкі гэтага файла ў праграме-антывірусе адбылася нечаканая памылка.</translation>
@@ -4989,6 +4994,7 @@
 <translation id="5827733057563115968">Прагназаванне наступнага слова</translation>
 <translation id="5828545842856466741">Дадаць профіль...</translation>
 <translation id="5828633471261496623">Ідзе друк...</translation>
+<translation id="5828797982387013521">Выбраць дапаможнік</translation>
 <translation id="5830205393314753525">Не ўдалося адкрыць праграму "<ph name="APP_NAME" />"</translation>
 <translation id="5830720307094128296">Захаваць старонку &amp;як...</translation>
 <translation id="5832813618714645810">Профілі</translation>
@@ -5079,6 +5085,7 @@
 
   Ступень адкрытага ключа (бітаў – <ph name="PUBLIC_EXPONENT_NUM_BITS" />):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Аўтаматычнае чытанне</translation>
 <translation id="5916664084637901428">Уключана</translation>
 <translation id="59174027418879706">Уключана</translation>
 <translation id="5920543303088087579">Падключэнне да гэтай сеткі выключана адміністратарам</translation>
@@ -5364,6 +5371,7 @@
 <translation id="6200151268994853226">Кіраваць пашырэннем</translation>
 <translation id="6201608810045805374">Выдаліць гэты ўліковы запіс?</translation>
 <translation id="6202304368170870640">Для разблакіроўкі прылады і для ўваходу ва ўліковы запіс на ёй выкарыстоўвайце PIN-код.</translation>
+<translation id="6206199626856438589">Будзе выкананы выхад з паказаных сайтаў, у тым ліку на адкрытых укладках</translation>
 <translation id="6206311232642889873">&amp;Капіраваць відарыс</translation>
 <translation id="6207200176136643843">Скінуць маштаб да стандартнага</translation>
 <translation id="6207937957461833379">Краіна або рэгіён</translation>
@@ -5916,6 +5924,7 @@
 <translation id="6733620523445262364">Закладка "<ph name="BOOKMARK_TITLE" />" створана.</translation>
 <translation id="6735304988756581115">Паказаць файлы cookie і іншыя даныя сайта...</translation>
 <translation id="6736243959894955139">Адрас</translation>
+<translation id="6737393581255281855">Выдаліць паказаныя даныя?</translation>
 <translation id="6737663862851963468">Выдаліць білет Kerberos</translation>
 <translation id="6738430949033571771">Ідзе спраўджанне ўліковага запісу...</translation>
 <translation id="6739923123728562974">Паказваць ярлык на працоўным стале</translation>
@@ -7207,6 +7216,7 @@
 <translation id="7988355189918024273">Уключыць спецыяльныя магчымасці</translation>
 <translation id="7988805580376093356">Не выкарыстоўваць бягучую АС і запусціць <ph name="DEVICE_OS" /> з USB.</translation>
 <translation id="7991296728590311172">Налады доступу праз пераключальнікі</translation>
+<translation id="7992203134935383159">Сінтэз маўлення</translation>
 <translation id="7997826902155442747">Прыярытэт працэсу</translation>
 <translation id="7999229196265990314">Створаны наступныя файлы:
 
@@ -7592,6 +7602,7 @@
 <translation id="8366396658833131068">Падключэнне да сеткі адноўлена. Выберыце іншую сетку або націсніце ніжэй кнопку "Працягнуць", каб запусціць праграму-кіёск.</translation>
 <translation id="8366694425498033255">Клавішы для выбару</translation>
 <translation id="8368859634510605990">&amp;Адкрыць усе закладкі</translation>
+<translation id="8369028061188107403">Будуць выдалены даныя (<ph name="TOTAL_USAGE" />), захаваныя паказанымі сайтамі і ўсталяванымі імі праграмамі.</translation>
 <translation id="8370294614544004647">Пры закрыцці ноўтбука пераводзіць яго ў рэжым сну</translation>
 <translation id="8371695176452482769">Гаварыце</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Выключыць гук сайта}one{Выключыць гук сайтаў}few{Выключыць гук сайтаў}many{Выключыць гук сайтаў}other{Выключыць гук сайтаў}}</translation>
diff --git a/chrome/app/resources/generated_resources_bg.xtb b/chrome/app/resources/generated_resources_bg.xtb
index 6f8248a..d7eeca9 100644
--- a/chrome/app/resources/generated_resources_bg.xtb
+++ b/chrome/app/resources/generated_resources_bg.xtb
@@ -218,6 +218,7 @@
 <translation id="1197199342062592414">Да започваме</translation>
 <translation id="11978075283960463">Данни, съхранявани в приложението: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Деактивиране</translation>
+<translation id="1198066799963193307">Инструменти за говор за лица със слабо зрение</translation>
 <translation id="119944043368869598">Изчистване на всички</translation>
 <translation id="1199814941632954229">Сертификатите за следните профили се обезпечават</translation>
 <translation id="120069043972472860">Изключително лошо</translation>
@@ -1507,6 +1508,7 @@
 <translation id="2371076942591664043">Отваряне &amp;след изтегляне</translation>
 <translation id="2373666622366160481">Уеднаквяване с размера на хартията</translation>
 <translation id="2375406435414127095">Свързване с телефона ви</translation>
+<translation id="2376056713414548745">Четене на глас</translation>
 <translation id="2377588536920405462">Можете да изключите местоположението, като деактивирате главната настройка за него на устройството си. Също така от настройките за местоположението сте в състояние да изключите определянето му чрез Wi-Fi, мобилни мрежи и сензори.</translation>
 <translation id="2377667304966270281">Съществени грешки</translation>
 <translation id="237828693408258535">Да се преведе ли тази страница?</translation>
@@ -2335,6 +2337,7 @@
 <translation id="3163511056918491211">По всяко време можете лесно да възстановите данните на устройството си или да го замените с друго. Резервните ви копия се качват в Google и се шифроват посредством паролата за профила ви в Google.</translation>
 <translation id="3164329792803560526">Този раздел се споделя с(ъс) <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">Някои оператори може да блокират тази функция.</translation>
+<translation id="3169930038976362151">Изберете темата, която отговаря на нуждите ви. За да промените темата, тапета, скрийнсейвъра и др., трябва само да докоснете и да задържите работния плот.</translation>
 <translation id="3170072451822350649">Може също да пропуснете влизането и <ph name="LINK_START" />да сърфирате като гост<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Нов раздел отляво</translation>
 <translation id="3177909033752230686">Език на страницата:</translation>
@@ -3209,6 +3212,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Копиране на подробностите за компилацията</translation>
 <translation id="4021941025609472374">Затваряне на разделите отляво</translation>
+<translation id="402211067068791756">Съхраняваните от показаните сайтове данни в размер на <ph name="TOTAL_USAGE" /> ще бъдат изчистени</translation>
 <translation id="4022426551683927403">&amp;Добавяне в речника</translation>
 <translation id="4025039777635956441">Спиране на звука на избрания сайт</translation>
 <translation id="4028467762035011525">Добавяне на методи на въвеждане</translation>
@@ -3459,6 +3463,7 @@
 <translation id="4281844954008187215">Условия за ползване</translation>
 <translation id="4282196459431406533">Функцията Smart Lock е включена</translation>
 <translation id="4284755288573763878">Искате ли да изключите подобрената защита?</translation>
+<translation id="4284903252249997120">Екранният четец ChromeVox и функцията „Прочитане на глас“</translation>
 <translation id="4285418559658561636">Актуализиране на паролата</translation>
 <translation id="4285498937028063278">Освобождаване</translation>
 <translation id="428565720843367874">Неочаквано сканирането на този файл от антивирусния софтуер не бе успешно.</translation>
@@ -5001,6 +5006,7 @@
 <translation id="5827733057563115968">Предвиждане на следващата дума</translation>
 <translation id="5828545842856466741">Добавяне на потребителски профил...</translation>
 <translation id="5828633471261496623">Отпечатва се...</translation>
+<translation id="5828797982387013521">Избиране на наръчник</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> не може да се отвори</translation>
 <translation id="5830720307094128296">Запазване на страницата &amp;като...</translation>
 <translation id="5832813618714645810">Потребителски профили</translation>
@@ -5091,6 +5097,7 @@
 
   Експонента на публичния ключ (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> бита):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Автоматично четене</translation>
 <translation id="5916664084637901428">Включено</translation>
 <translation id="59174027418879706">Активирано</translation>
 <translation id="5920543303088087579">Свързването с тази мрежа е деактивирано от администратора ви</translation>
@@ -5376,6 +5383,7 @@
 <translation id="6200151268994853226">Управление на разширението</translation>
 <translation id="6201608810045805374">Да се премахне ли този профил?</translation>
 <translation id="6202304368170870640">Можете да използвате ПИН кода си, за да влизате в устройството си и да го отключвате.</translation>
+<translation id="6206199626856438589">Ще излезете от профила си в показаните сайтове, включително в отворените раздели</translation>
 <translation id="6206311232642889873">Копи&amp;ране на изображението</translation>
 <translation id="6207200176136643843">Възстановяване на стандартното ниво на мащаба</translation>
 <translation id="6207937957461833379">Държава/Регион</translation>
@@ -5922,6 +5930,7 @@
 <translation id="6733620523445262364">Създадохте „<ph name="BOOKMARK_TITLE" />“.</translation>
 <translation id="6735304988756581115">Показване на „бисквитките“ и другите данни за сайтове...</translation>
 <translation id="6736243959894955139">Адрес</translation>
+<translation id="6737393581255281855">Да се изчистят ли показаните данни?</translation>
 <translation id="6737663862851963468">Премахване на пропуск за Kerberos</translation>
 <translation id="6738430949033571771">Профилът се потвърждава...</translation>
 <translation id="6739923123728562974">Показване на прекия път на работния плот</translation>
@@ -7214,6 +7223,7 @@
 <translation id="7988355189918024273">Активиране на функциите за достъпност</translation>
 <translation id="7988805580376093356">Запазване на операционната ви система и изпълняване на <ph name="DEVICE_OS" /> от USB.</translation>
 <translation id="7991296728590311172">Настройки на „Достъп с превключване“</translation>
+<translation id="7992203134935383159">Синтезиран говор</translation>
 <translation id="7997826902155442747">Приоритет на процесите</translation>
 <translation id="7999229196265990314">Създадени бяха следните файлове:
 
@@ -7600,6 +7610,7 @@
 <translation id="8366396658833131068">Връзката ви с мрежата е възстановена. Моля, изберете друга мрежа или натиснете бутона „Напред“ по-долу, за да стартирате павилионното си приложение.</translation>
 <translation id="8366694425498033255">Ключове за избор</translation>
 <translation id="8368859634510605990">&amp;Отваряне на всички отметки</translation>
+<translation id="8369028061188107403">Съхраняваните от показаните сайтове и инсталираните приложения данни в размер на <ph name="TOTAL_USAGE" /> ще бъдат изчистени</translation>
 <translation id="8370294614544004647">Преминаване в спящ режим при затваряне на лаптопа</translation>
 <translation id="8371695176452482769">Говорете сега</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Спиране на звука на сайта}other{Спиране на звука на сайтовете}}</translation>
diff --git a/chrome/app/resources/generated_resources_ca.xtb b/chrome/app/resources/generated_resources_ca.xtb
index de5ca02..e52590e9 100644
--- a/chrome/app/resources/generated_resources_ca.xtb
+++ b/chrome/app/resources/generated_resources_ca.xtb
@@ -216,6 +216,7 @@
 <translation id="1197199342062592414">Comencem</translation>
 <translation id="11978075283960463">Dades emmagatzemades a l'aplicació: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Desactiva</translation>
+<translation id="1198066799963193307">Eines de text a parla per a persones amb poca visió</translation>
 <translation id="119944043368869598">Esborra-ho tot</translation>
 <translation id="1199814941632954229">S'estan proporcionant certificats per a aquests perfils de certificat</translation>
 <translation id="120069043972472860">No es pot mirar</translation>
@@ -1496,6 +1497,7 @@
 <translation id="2371076942591664043">Obre quan &amp;acabi</translation>
 <translation id="2373666622366160481">Ajusta al paper</translation>
 <translation id="2375406435414127095">Connecta't al telèfon</translation>
+<translation id="2376056713414548745">Llegeix en veu alta</translation>
 <translation id="2377588536920405462">Pots desactivar la ubicació desactivant la configuració d'ubicació principal del dispositiu. A la configuració d'ubicació també pots desactivar l'ús de sensors, xarxes mòbils i Wi-Fi per calcular la ubicació.</translation>
 <translation id="2377667304966270281">Errors greus</translation>
 <translation id="237828693408258535">Vols traduir aquesta pàgina?</translation>
@@ -2324,6 +2326,7 @@
 <translation id="3163511056918491211">Canvia de dispositiu o restaura'n les dades fàcilment en qualsevol moment. Les còpies de seguretat es pengen a Google i s'encripten amb la contrasenya del teu Compte de Google.</translation>
 <translation id="3164329792803560526">S'està compartint aquesta pestanya amb <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">Alguns operadors de telefonia mòbil poden bloquejar aquesta funció.</translation>
+<translation id="3169930038976362151">Tria el tema que s'adapti a les teves necessitats. Per canviar el tema, el fons de pantalla, l'estalvi de pantalla i més, mantén premut l'escriptori.</translation>
 <translation id="3170072451822350649">També podeu <ph name="LINK_START" />navegar com a convidat<ph name="LINK_END" /> sense iniciar sessió.</translation>
 <translation id="31774765611822736">Pestanya nova a l'esquerra</translation>
 <translation id="3177909033752230686">Idioma de la pàgina:</translation>
@@ -3196,6 +3199,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Copia els detalls de la compilació</translation>
 <translation id="4021941025609472374">Tanca les pestanyes de l'esquerra</translation>
+<translation id="402211067068791756">Amb aquesta acció s'esborraran dades emmagatzemades pels llocs web mostrats (<ph name="TOTAL_USAGE" />)</translation>
 <translation id="4022426551683927403">&amp;Afegeix al diccionari</translation>
 <translation id="4025039777635956441">Silencia el lloc web seleccionat</translation>
 <translation id="4028467762035011525">Afegeix mètodes d'introducció de text</translation>
@@ -3446,6 +3450,7 @@
 <translation id="4281844954008187215">Condicions del servei</translation>
 <translation id="4282196459431406533">Smart Lock està activat</translation>
 <translation id="4284755288573763878">Vols desactivar la Navegació segura millorada?</translation>
+<translation id="4284903252249997120">Lector de pantalla ChromeVox i Escolta la selecció</translation>
 <translation id="4285418559658561636">Actualitza la contrasenya</translation>
 <translation id="4285498937028063278">No fixis</translation>
 <translation id="428565720843367874">S'ha produït un error inesperat en el programari antivirus mentre s'escanejava aquest fitxer.</translation>
@@ -4986,6 +4991,7 @@
 <translation id="5827733057563115968">Predicció de paraula següent</translation>
 <translation id="5828545842856466741">Afegeix un perfil...</translation>
 <translation id="5828633471261496623">S'està imprimint...</translation>
+<translation id="5828797982387013521">Selecciona el manual d'estratègia</translation>
 <translation id="5830205393314753525">No es pot obrir <ph name="APP_NAME" /></translation>
 <translation id="5830720307094128296">Anomena i desa la pà&amp;gina...</translation>
 <translation id="5832813618714645810">Perfils</translation>
@@ -5076,6 +5082,7 @@
 
   Exponent públic (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> bits):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Lectura automàtica</translation>
 <translation id="5916664084637901428">Activat</translation>
 <translation id="59174027418879706">Activat</translation>
 <translation id="5920543303088087579">L'administrador ha desactivat la possibilitat de connectar-se a aquesta xarxa</translation>
@@ -5360,6 +5367,7 @@
 <translation id="6200151268994853226">Gestiona l'extensió</translation>
 <translation id="6201608810045805374">Vols suprimir aquest compte?</translation>
 <translation id="6202304368170870640">Pots utilitzar el PIN per iniciar la sessió al dispositiu o per desbloquejar-lo.</translation>
+<translation id="6206199626856438589">Se't tancarà la sessió dels llocs web que es mostren, també de les pestanyes obertes</translation>
 <translation id="6206311232642889873">Cop&amp;ia la imatge</translation>
 <translation id="6207200176136643843">Restableix el nivell de zoom predeterminat</translation>
 <translation id="6207937957461833379">País o regió</translation>
@@ -5906,6 +5914,7 @@
 <translation id="6733620523445262364">S'ha creat <ph name="BOOKMARK_TITLE" />.</translation>
 <translation id="6735304988756581115">Mostra galetes i altres dades dels llocs web...</translation>
 <translation id="6736243959894955139">Adreça</translation>
+<translation id="6737393581255281855">Vols esborrar les dades mostrades?</translation>
 <translation id="6737663862851963468">Suprimeix el tiquet de Kerberos</translation>
 <translation id="6738430949033571771">S'està verificant el compte...</translation>
 <translation id="6739923123728562974">Mostra la drecera de l'escriptori</translation>
@@ -7198,6 +7207,7 @@
 <translation id="7988355189918024273">Activa les funcions d'accessibilitat</translation>
 <translation id="7988805580376093356">Conserva el teu sistema operatiu i executa <ph name="DEVICE_OS" /> des d'un USB.</translation>
 <translation id="7991296728590311172">Configuració d'accés amb interruptors</translation>
+<translation id="7992203134935383159">Síntesi de veu</translation>
 <translation id="7997826902155442747">Prioritat del procés</translation>
 <translation id="7999229196265990314">S'han creat els fitxers següents:
         
@@ -7585,6 +7595,7 @@
 <translation id="8366396658833131068">S'ha restablert la vostra connectivitat de xarxa. Seleccioneu una altra xarxa o bé premeu el botó Continua per iniciar l'aplicació de quiosc.</translation>
 <translation id="8366694425498033255">Tecles de selecció</translation>
 <translation id="8368859634510605990">&amp;Obre totes les adreces d'interès</translation>
+<translation id="8369028061188107403">Amb aquesta acció s'esborraran dades emmagatzemades pels llocs web mostrats i per les aplicacions instal·lades (<ph name="TOTAL_USAGE" />)</translation>
 <translation id="8370294614544004647">Posa en repòs quan es tanqui el portàtil</translation>
 <translation id="8371695176452482769">Parla ara</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Silencia el lloc web}other{Silencia els llocs web}}</translation>
diff --git a/chrome/app/resources/generated_resources_es-419.xtb b/chrome/app/resources/generated_resources_es-419.xtb
index d2f5b8e..5759f73 100644
--- a/chrome/app/resources/generated_resources_es-419.xtb
+++ b/chrome/app/resources/generated_resources_es-419.xtb
@@ -216,6 +216,7 @@
 <translation id="1197199342062592414">Comencemos</translation>
 <translation id="11978075283960463">Datos almacenados en la app: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Desactivar</translation>
+<translation id="1198066799963193307">Herramientas de texto a voz para personas con visión reducida</translation>
 <translation id="119944043368869598">Borrar todo</translation>
 <translation id="1199814941632954229">Se instalan los certificados para estos perfiles de certificados</translation>
 <translation id="120069043972472860">Pésima</translation>
@@ -1493,6 +1494,7 @@
 <translation id="2371076942591664043">Abrir al &amp;finalizar</translation>
 <translation id="2373666622366160481">Ajustar a la hoja</translation>
 <translation id="2375406435414127095">Conéctate a tu teléfono</translation>
+<translation id="2376056713414548745">Leer en voz alta</translation>
 <translation id="2377588536920405462">Para inhabilitar la Ubicación, desactiva la configuración de la ubicación principal en el dispositivo. También puedes desactivar el uso de Wi-Fi, redes móviles y sensores para obtener la ubicación en la configuración de la ubicación.</translation>
 <translation id="2377667304966270281">Fallos graves</translation>
 <translation id="237828693408258535">¿Deseas traducir esta página?</translation>
@@ -2321,6 +2323,7 @@
 <translation id="3163511056918491211">Cambia de dispositivo o restablece tus datos fácilmente en cualquier momento. Las copias de seguridad se suben a Google y se encriptan con la contraseña de tu Cuenta de Google.</translation>
 <translation id="3164329792803560526">Compartiendo esta pestaña en <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">Es posible que algunos proveedores bloqueen esta función.</translation>
+<translation id="3169930038976362151">Elige el tema que se adapte a tus necesidades. Para cambiar el tema, el fondo de pantalla, el protector de pantalla y más, mantén presionado en el escritorio.</translation>
 <translation id="3170072451822350649">También puedes omitir el acceso y <ph name="LINK_START" />navegar como invitado<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Nueva pestaña a la izquierda</translation>
 <translation id="3177909033752230686">Idioma de la página:</translation>
@@ -3194,6 +3197,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Copiar detalles de la compilación</translation>
 <translation id="4021941025609472374">Cerrar pestañas a la izquierda</translation>
+<translation id="402211067068791756">Esta acción borrará <ph name="TOTAL_USAGE" /> de datos almacenados por los sitios que se muestran.</translation>
 <translation id="4022426551683927403">&amp;Agregar a diccionario</translation>
 <translation id="4025039777635956441">Silenciar el sitio seleccionado</translation>
 <translation id="4028467762035011525">Agregar métodos de entrada</translation>
@@ -3444,6 +3448,7 @@
 <translation id="4281844954008187215">Condiciones del Servicio</translation>
 <translation id="4282196459431406533">Smart Lock está activado</translation>
 <translation id="4284755288573763878">¿Quieres desactivar la seguridad mejorada?</translation>
+<translation id="4284903252249997120">Seleccionar para pronunciar y lector de pantalla de ChromeVox</translation>
 <translation id="4285418559658561636">Actualizar contraseña</translation>
 <translation id="4285498937028063278">No fijar</translation>
 <translation id="428565720843367874">Se produjo un error inesperado con el software antivirus al examinar este archivo.</translation>
@@ -4984,6 +4989,7 @@
 <translation id="5827733057563115968">Predicción de la palabra siguiente</translation>
 <translation id="5828545842856466741">Agregar perfil…</translation>
 <translation id="5828633471261496623">Impresión...</translation>
+<translation id="5828797982387013521">Seleccionar playbook</translation>
 <translation id="5830205393314753525">No se puede abrir <ph name="APP_NAME" /></translation>
 <translation id="5830720307094128296">Guardar p&amp;ágina como...</translation>
 <translation id="5832813618714645810">Perfiles</translation>
@@ -5074,6 +5080,7 @@
 
   Exponente público (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> bits):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Lectura automática</translation>
 <translation id="5916664084637901428">Activado</translation>
 <translation id="59174027418879706">Habilitado</translation>
 <translation id="5920543303088087579">El administrador inhabilitó la conexión a esta red</translation>
@@ -5359,6 +5366,7 @@
 <translation id="6200151268994853226">Administrar extensión</translation>
 <translation id="6201608810045805374">¿Quieres quitar esta cuenta?</translation>
 <translation id="6202304368170870640">Puedes usar el PIN para acceder a tu dispositivo o desbloquearlo.</translation>
+<translation id="6206199626856438589">Saldrás de los sitios que se muestran, incluso si están en pestañas abiertas.</translation>
 <translation id="6206311232642889873">Cop&amp;iar imagen</translation>
 <translation id="6207200176136643843">Restablece el nivel de zoom predeterminado</translation>
 <translation id="6207937957461833379">País/Región</translation>
@@ -5905,6 +5913,7 @@
 <translation id="6733620523445262364">Se creó "<ph name="BOOKMARK_TITLE" />".</translation>
 <translation id="6735304988756581115">Mostrar cookies y otros datos de sitio...</translation>
 <translation id="6736243959894955139">Dirección</translation>
+<translation id="6737393581255281855">¿Quieres borrar los datos que se muestran?</translation>
 <translation id="6737663862851963468">Quitar el ticket de Kerberos</translation>
 <translation id="6738430949033571771">Verificando la cuenta…</translation>
 <translation id="6739923123728562974">Mostrar acceso directo de escritorio</translation>
@@ -7197,6 +7206,7 @@
 <translation id="7988355189918024273">Habilitar funciones de accesibilidad</translation>
 <translation id="7988805580376093356">Conserva tu SO y ejecuta <ph name="DEVICE_OS" /> desde una unidad USB.</translation>
 <translation id="7991296728590311172">Configuración de Accesibilidad con interruptores</translation>
+<translation id="7992203134935383159">Síntesis de voz</translation>
 <translation id="7997826902155442747">Prioridad de proceso</translation>
 <translation id="7999229196265990314">Los siguientes archivos fueron creados:
 
@@ -7583,6 +7593,7 @@
 <translation id="8366396658833131068">Se restauró la conexión de red. Selecciona una red distinta o presiona el botón "Continuar" para iniciar la aplicación de kiosco.</translation>
 <translation id="8366694425498033255">Teclas de selección</translation>
 <translation id="8368859634510605990">&amp;Abrir todos los favoritos</translation>
+<translation id="8369028061188107403">Esta acción borrará <ph name="TOTAL_USAGE" /> de datos almacenados por los sitios que se muestran y las apps instaladas.</translation>
 <translation id="8370294614544004647">Suspender cuando se cierra la laptop</translation>
 <translation id="8371695176452482769">Hablar ahora</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Silenciar el sitio}other{Silenciar los sitios}}</translation>
@@ -8413,7 +8424,7 @@
 <translation id="9199503643457729322">Haz clic para salir de la Guía de privacidad.</translation>
 <translation id="9200339982498053969"><ph name="ORIGIN" /> podrá editar los archivos de la carpeta <ph name="FOLDERNAME" /></translation>
 <translation id="920045321358709304">Buscar en <ph name="SEARCH_ENGINE" /></translation>
-<translation id="9201023452444595544">Se borrarán los datos sin conexión</translation>
+<translation id="9201023452444595544">Se borrarán los datos sin conexión.</translation>
 <translation id="9201117361710210082">Visto anteriormente</translation>
 <translation id="9201220332032049474">Opciones de bloqueo de pantalla</translation>
 <translation id="9201842707396338580">Se produjo un error. Comunícate con el administrador o el propietario de tu dispositivo. Código de error: <ph name="ERROR_CODE" />.</translation>
diff --git a/chrome/app/resources/generated_resources_fa.xtb b/chrome/app/resources/generated_resources_fa.xtb
index 587ccd5..d791e5b1 100644
--- a/chrome/app/resources/generated_resources_fa.xtb
+++ b/chrome/app/resources/generated_resources_fa.xtb
@@ -9,7 +9,7 @@
 <translation id="1005333234656240382">‏اشکال‌زدایی ADB (پل اشکال‌زدایی Android) فعال شود؟</translation>
 <translation id="1006873397406093306">این افزونه می‌تواند داده‌هایتان را در سایت‌ها بخواند و تغییر دهد. می‌توانید سایت‌هایی را که این افزونه به آن‌ها دسترسی دارد کنترل کنید.</translation>
 <translation id="1008186147501209563">صادرکردن نشانک‌ها</translation>
-<translation id="1008557486741366299">اکنون نه</translation>
+<translation id="1008557486741366299">حالا نه</translation>
 <translation id="1009476156254802388">مکان <ph name="WEB_DRIVE" /></translation>
 <translation id="1009663062402466586">کنترل‌های بازی اکنون دردسترس است</translation>
 <translation id="1010498023906173788">این برگه به درگاه سریال متصل است.</translation>
@@ -2637,7 +2637,7 @@
 <translation id="3476303763173086583">‏داده‌های استفاده و عیب‌یابی را ارسال کنید. با ارسال خودکار داده‌های عیب‌یابی و داده‌های استفاده از دستگاه و برنامه به Google به بهبود تجربه Android خود کمک کنید. این داده‌ها برای شناسایی فرزندتان استفاده نخواهند شد و به بهبود پایداری سیستم و برنامه و موارد دیگر کمک خواهد کرد. بعضی داده‌های انبوهشی نیز به برنامه‌ها و شرکای Google (مانند برنامه‌نویس‌های Android) کمک می‌کند. این <ph name="BEGIN_LINK1" />تنظیم<ph name="END_LINK1" /> توسط مالک اعمال می‌شود. ممکن است مالک انتخاب کند داده‌های استفاده و عیب‌یابی این دستگاه به Google ارسال شود. اگر تنظیم «فعالیت وب و برنامه» تکمیلی برای فرزندتان روشن باشد، ممکن است این داده‌ها در حساب Google او ذخیره شود. <ph name="BEGIN_LINK2" />بیشتر بدانید<ph name="END_LINK2" /></translation>
 <translation id="347670947055184738">وای! سیستم نتوانست خط‌مشی را برای دستگاهتان واکشی کند.</translation>
 <translation id="347785443197175480">همچنان دسترسی به دوربین و میکروفون شما، توسط <ph name="HOST" /> مجاز باشد</translation>
-<translation id="3479552764303398839">اکنون نه</translation>
+<translation id="3479552764303398839">حالا نه</translation>
 <translation id="3479685872808224578">سرور چاپ شناسایی نشد. لطفاً نشانی را بررسی و دوباره امتحان کنید.</translation>
 <translation id="3480612136143976912">اندازه و سبک زیرنویس ناشنوایان را برای «زیرنویس ناشنوایان زنده» سفارشی می‌کند. برخی از برنامه‌ها و سایت‌ها نیز از این تنظیم استفاده خواهند کرد.</translation>
 <translation id="3480827850068960424"><ph name="NUM" /> برگه پیدا شد</translation>
diff --git a/chrome/app/resources/generated_resources_fi.xtb b/chrome/app/resources/generated_resources_fi.xtb
index 9ca4af06..a6309ca 100644
--- a/chrome/app/resources/generated_resources_fi.xtb
+++ b/chrome/app/resources/generated_resources_fi.xtb
@@ -218,6 +218,7 @@
 <translation id="1197199342062592414">Aloitetaan</translation>
 <translation id="11978075283960463">Sovellukseen tallennettu data: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Poista käytöstä</translation>
+<translation id="1198066799963193307">Heikkonäköisten puhetyökalut</translation>
 <translation id="119944043368869598">Tyhjennä kaikki</translation>
 <translation id="1199814941632954229">Näille varmenneprofiileille tarjotaan varmenteita</translation>
 <translation id="120069043972472860">Mahdoton katsoa</translation>
@@ -1510,6 +1511,7 @@
 <translation id="2371076942591664043">Avaa, kun val&amp;mis</translation>
 <translation id="2373666622366160481">Sovita paperille</translation>
 <translation id="2375406435414127095">Muodosta yhteys puhelimeen</translation>
+<translation id="2376056713414548745">Lue ääneen</translation>
 <translation id="2377588536920405462">Voit laittaa sijainnin pois päältä laittamalla laitteesi sijaintiasetuksen pois päältä. Voit myös avata sijaintiasetukset ja laittaa pois päältä Wi-Fi- ja mobiiliverkkojen käytön sijainnin määrityksessä sekä Wi-Fi- ja Bluetooth-hakemisen.</translation>
 <translation id="2377667304966270281">Levyn sivuvirheet</translation>
 <translation id="237828693408258535">Käännetäänkö tämä sivu?</translation>
@@ -2338,6 +2340,7 @@
 <translation id="3163511056918491211">Palauta dataa tai vaihda laitetta helposti milloin tahansa. Varmuuskopiot ladataan Googleen ja salataan Google-tilisi salasanalla.</translation>
 <translation id="3164329792803560526">Välilehti jaetaan, <ph name="APP_NAME" /> saa sen</translation>
 <translation id="3165390001037658081">Jotkin operaattorit saattavat estää tämän ominaisuuden.</translation>
+<translation id="3169930038976362151">Valitse tarpeisiisi sopiva teema. Vaihda teemaa, taustakuvaa, näytönsäästäjää ja muuta koskettamalla työpöytää pitkään.</translation>
 <translation id="3170072451822350649">Voit myös ohittaa sisäänkirjautumisen ja <ph name="LINK_START" />selata vierailijana<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Uusi välilehti vasemmalle</translation>
 <translation id="3177909033752230686">Sivun kieli:</translation>
@@ -3208,6 +3211,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Kopioi koontiversion tiedot</translation>
 <translation id="4021941025609472374">Sulje vasemmalla olevat välilehdet</translation>
+<translation id="402211067068791756">Tämä poistaa <ph name="TOTAL_USAGE" /> dataa, jonka näkyvät sivustot ovat tallentaneet.</translation>
 <translation id="4022426551683927403">Lisää s&amp;anakirjaan</translation>
 <translation id="4025039777635956441">Mykistä valittu sivusto</translation>
 <translation id="4028467762035011525">Lisää syöttötapoja</translation>
@@ -3458,6 +3462,7 @@
 <translation id="4281844954008187215">Käyttöehdot</translation>
 <translation id="4282196459431406533">Smart Lock on käytössä.</translation>
 <translation id="4284755288573763878">Laitetaanko parannettu suojaus pois päältä?</translation>
+<translation id="4284903252249997120">ChromeVox-näytönlukuohjelma ja Teksti puhuttuna ‐ominaisuus</translation>
 <translation id="4285418559658561636">Päivitä salasana</translation>
 <translation id="4285498937028063278">Irrota</translation>
 <translation id="428565720843367874">Viruksentorjuntaohjelma ei pystynyt tarkistamaan tätä tiedostoa.</translation>
@@ -4999,6 +5004,7 @@
 <translation id="5827733057563115968">Seuraavan sanan ennakointi</translation>
 <translation id="5828545842856466741">Lisää profiili…</translation>
 <translation id="5828633471261496623">Tulostetaan...</translation>
+<translation id="5828797982387013521">Valitse ohjekirja</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> ei avaudu</translation>
 <translation id="5830720307094128296">Tallenn&amp;a sivu nimellä...</translation>
 <translation id="5832813618714645810">Profiilit</translation>
@@ -5089,6 +5095,7 @@
 
 Julkinen eksponentti (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> bittiä):
 <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Automaattinen lukeminen</translation>
 <translation id="5916664084637901428">Päällä</translation>
 <translation id="59174027418879706">Käytössä</translation>
 <translation id="5920543303088087579">Järjestelmänvalvoja on estänyt yhteyden muodostamisen tähän verkkoon.</translation>
@@ -5374,6 +5381,7 @@
 <translation id="6200151268994853226">Muokkaa laajennusta</translation>
 <translation id="6201608810045805374">Poistetaanko tämä tili?</translation>
 <translation id="6202304368170870640">PIN-koodin avulla voit kirjautua laitteeseen tai avata sen lukituksen.</translation>
+<translation id="6206199626856438589">Sinut kirjataan ulos näkyviltä sivustoilta, myös avoimilla välilehdillä</translation>
 <translation id="6206311232642889873">K&amp;opioi kuva</translation>
 <translation id="6207200176136643843">Palauta zoomauksen oletustaso</translation>
 <translation id="6207937957461833379">Maa/alue</translation>
@@ -5920,6 +5928,7 @@
 <translation id="6733620523445262364"><ph name="BOOKMARK_TITLE" /> luotu.</translation>
 <translation id="6735304988756581115">Näytä evästeet ja muut sivuston tiedot...</translation>
 <translation id="6736243959894955139">Osoite</translation>
+<translation id="6737393581255281855">Tyhjennetäänkö näkyvä data?</translation>
 <translation id="6737663862851963468">Poista Kerberos-tukipyyntö</translation>
 <translation id="6738430949033571771">Todennetaan tiliä…</translation>
 <translation id="6739923123728562974">Näytä työpöydän pikakuvake</translation>
@@ -7211,6 +7220,7 @@
 <translation id="7988355189918024273">Ota käyttöön esteettömyystoimintoja</translation>
 <translation id="7988805580376093356">Säilytä käyttöjärjestelmäsi ja käytä laitetta (<ph name="DEVICE_OS" />) USB:n kautta.</translation>
 <translation id="7991296728590311172">Kytkimen käytön asetukset</translation>
+<translation id="7992203134935383159">Puhesynteesi</translation>
 <translation id="7997826902155442747">Prosessien tärkeysjärjestys</translation>
 <translation id="7999229196265990314">Luotiin seuraavat tiedostot:
         
@@ -7597,6 +7607,7 @@
 <translation id="8366396658833131068">Verkkoyhteytesi on palautettu. Valitse eri verkko tai paina alla olevaa Jatka-painiketta, jos haluat käynnistää kioskisovelluksen.</translation>
 <translation id="8366694425498033255">Valintanäppäimet</translation>
 <translation id="8368859634510605990">Avaa kaikki kirjanmerkit</translation>
+<translation id="8369028061188107403">Tämä poistaa <ph name="TOTAL_USAGE" /> dataa, jonka näkyvät sivustot ja niiden asentamat sovellukset ovat tallentaneet.</translation>
 <translation id="8370294614544004647">Lepotila kun kannettava on suljettu</translation>
 <translation id="8371695176452482769">Puhu nyt</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Mykistä sivusto}other{Mykistä sivustot}}</translation>
diff --git a/chrome/app/resources/generated_resources_fr-CA.xtb b/chrome/app/resources/generated_resources_fr-CA.xtb
index 51456cf1..8d189f3 100644
--- a/chrome/app/resources/generated_resources_fr-CA.xtb
+++ b/chrome/app/resources/generated_resources_fr-CA.xtb
@@ -217,6 +217,7 @@
 <translation id="1197199342062592414">C'est parti</translation>
 <translation id="11978075283960463">Données stockées dans l'application : <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Désactiver</translation>
+<translation id="1198066799963193307">Outils vocaux basse vision</translation>
 <translation id="119944043368869598">Tout effacer</translation>
 <translation id="1199814941632954229">Les certificats sont en cours d'approvisionnement pour ces profils de certificat</translation>
 <translation id="120069043972472860">Impossible à regarder</translation>
@@ -1497,6 +1498,7 @@
 <translation id="2371076942591664043">Ouvrir une fois le téléchargement &amp;terminé</translation>
 <translation id="2373666622366160481">Ajuster à la taille du papier</translation>
 <translation id="2375406435414127095">Connectez-vous à votre téléphone</translation>
+<translation id="2376056713414548745">Lire à haute voix</translation>
 <translation id="2377588536920405462">Vous pouvez désactiver la localisation en désactivant le paramètre de localisation principal de votre appareil. Vous pouvez également désactiver l'utilisation des réseaux Wi‑Fi, des réseaux cellulaires et des capteurs pour la localisation dans les paramètres de localisation.</translation>
 <translation id="2377667304966270281">Défaillances matérielles</translation>
 <translation id="237828693408258535">Traduire cette page?</translation>
@@ -2326,6 +2328,7 @@
 <translation id="3163511056918491211">Restaurez vos données ou changez d'appareil aisément en tout temps. Vos sauvegardes sont téléversées vers les serveurs de Google et sont chiffrées en utilisant le mot de passe de votre compte Google.</translation>
 <translation id="3164329792803560526">Onglet partagé avec <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">Certains opérateurs peuvent bloquer cette fonctionnalité.</translation>
+<translation id="3169930038976362151">Choisissez le thème qui correspond à vos besoins. Pour changer votre thème, votre fond d'écran, votre écran de veille et plus, il suffit de maintenir le doigt sur le bureau.</translation>
 <translation id="3170072451822350649">Vous pouvez également sauter l'étape de connexion et <ph name="LINK_START" />naviguer en tant qu'invité<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Nouvel onglet à gauche</translation>
 <translation id="3177909033752230686">Langue de la page :</translation>
@@ -3199,6 +3202,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Copier les renseignements de la version</translation>
 <translation id="4021941025609472374">Fermer les onglets à la gauche</translation>
+<translation id="402211067068791756">Cette action effacera <ph name="TOTAL_USAGE" /> de données stockées par les sites affichés</translation>
 <translation id="4022426551683927403">&amp;Ajouter au dictionnaire</translation>
 <translation id="4025039777635956441">Désactiver le son pour le site sélectionné</translation>
 <translation id="4028467762035011525">Ajouter des méthodes d'entrée</translation>
@@ -3449,6 +3453,7 @@
 <translation id="4281844954008187215">Conditions d'utilisation</translation>
 <translation id="4282196459431406533">Smart Lock est activé</translation>
 <translation id="4284755288573763878">Désactiver la sécurité améliorée?</translation>
+<translation id="4284903252249997120">Lecteur d'écran ChromeVox et Sélectionner pour énoncer</translation>
 <translation id="4285418559658561636">Mettre à jour le mot de passe</translation>
 <translation id="4285498937028063278">Annuler l'épinglage</translation>
 <translation id="428565720843367874">Erreur inattendue de vérification de sécurité pendant l'analyse de ce fichier par l'antivirus.</translation>
@@ -4989,6 +4994,7 @@
 <translation id="5827733057563115968">Prédiction du mot suivant</translation>
 <translation id="5828545842856466741">Ajouter un profil…</translation>
 <translation id="5828633471261496623">Impression...</translation>
+<translation id="5828797982387013521">Sélectionner un guide</translation>
 <translation id="5830205393314753525">Impossible d'ouvrir <ph name="APP_NAME" /></translation>
 <translation id="5830720307094128296">Enregistrer la p&amp;age sous…</translation>
 <translation id="5832813618714645810">Profils</translation>
@@ -5079,6 +5085,7 @@
 
   Exposant public (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> bits) :
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Lecture automatique</translation>
 <translation id="5916664084637901428">Activé</translation>
 <translation id="59174027418879706">Activé</translation>
 <translation id="5920543303088087579">La connexion à ce réseau est désactivée par votre administrateur</translation>
@@ -5364,6 +5371,7 @@
 <translation id="6200151268994853226">Gérer l'extension</translation>
 <translation id="6201608810045805374">Retirer ce compte?</translation>
 <translation id="6202304368170870640">Vous pouvez utiliser votre NIP pour vous connecter à votre appareil ou pour le déverrouiller.</translation>
+<translation id="6206199626856438589">Vous serez déconnecté des sites affichés, y compris dans les onglets ouverts</translation>
 <translation id="6206311232642889873">Cop&amp;ier l'image</translation>
 <translation id="6207200176136643843">Rétablir le niveau de zoom par défaut</translation>
 <translation id="6207937957461833379">Pays/région</translation>
@@ -5912,6 +5920,7 @@
 <translation id="6733620523445262364">« <ph name="BOOKMARK_TITLE" /> » créé.</translation>
 <translation id="6735304988756581115">Afficher les témoins et les autres données de sites...</translation>
 <translation id="6736243959894955139">Adresse</translation>
+<translation id="6737393581255281855">Effacer les données affichées?</translation>
 <translation id="6737663862851963468">Supprimer le ticket Kerberos</translation>
 <translation id="6738430949033571771">Vérification du compte en cours…</translation>
 <translation id="6739923123728562974">Afficher le raccourci du bureau</translation>
@@ -7204,6 +7213,7 @@
 <translation id="7988355189918024273">Activer les fonctionnalités d'accessibilité</translation>
 <translation id="7988805580376093356">Conservez votre SE et exécutez <ph name="DEVICE_OS" /> à partir d'une clé USB.</translation>
 <translation id="7991296728590311172">Paramètres de Switch Access</translation>
+<translation id="7992203134935383159">Synthèse vocale</translation>
 <translation id="7997826902155442747">Priorité de processus</translation>
 <translation id="7999229196265990314">Les fichiers suivants ont été créés :
 
@@ -7589,6 +7599,7 @@
 <translation id="8366396658833131068">Votre connexion réseau est rétablie. Veuillez sélectionner un autre réseau ou appuyer sur « Continuer » ci-dessous pour lancer votre application de kiosque.</translation>
 <translation id="8366694425498033255">Touches de sélection</translation>
 <translation id="8368859634510605990">&amp;Ouvrir tous les favoris</translation>
+<translation id="8369028061188107403">Cette action effacera <ph name="TOTAL_USAGE" /> de données stockées par les sites affichés et les applications installées</translation>
 <translation id="8370294614544004647">Mettre en veille à la fermeture du couvercle</translation>
 <translation id="8371695176452482769">Parlez maintenant</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Désactiver le son sur le site}one{Désactiver le son sur le site}other{Désactiver le son sur les sites}}</translation>
diff --git a/chrome/app/resources/generated_resources_fr.xtb b/chrome/app/resources/generated_resources_fr.xtb
index 224015d0..75c2814 100644
--- a/chrome/app/resources/generated_resources_fr.xtb
+++ b/chrome/app/resources/generated_resources_fr.xtb
@@ -217,6 +217,7 @@
 <translation id="1197199342062592414">Commençons !</translation>
 <translation id="11978075283960463">Données stockées dans l'appli : <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Désactiver</translation>
+<translation id="1198066799963193307">Outils de synthèse vocale pour déficients visuels</translation>
 <translation id="119944043368869598">Tout effacer</translation>
 <translation id="1199814941632954229">Les certificats sont en cours de préparation pour ces profils</translation>
 <translation id="120069043972472860">Impossible à regarder</translation>
@@ -1497,6 +1498,7 @@
 <translation id="2371076942591664043">Ouvrir une fois le téléchargement &amp;terminé</translation>
 <translation id="2373666622366160481">Ajuster à la taille du papier</translation>
 <translation id="2375406435414127095">Connexion à votre téléphone</translation>
+<translation id="2376056713414548745">Lire à voix haute</translation>
 <translation id="2377588536920405462">Pour arrêter ce service, désactivez le paramètre de localisation principal sur votre appareil. Vous pouvez également désactiver l'utilisation du Wi-Fi, des réseaux mobiles et des capteurs dans les paramètres de localisation.</translation>
 <translation id="2377667304966270281">Défauts matériels</translation>
 <translation id="237828693408258535">Traduire cette page ?</translation>
@@ -2325,6 +2327,7 @@
 <translation id="3163511056918491211">Restaurez vos données ou changez d'appareil, facilement et à tout moment. Vos sauvegardes sont importées dans Google et chiffrées à l'aide du mot de passe de votre compte Google.</translation>
 <translation id="3164329792803560526">Partage de l'onglet avec <ph name="APP_NAME" />…</translation>
 <translation id="3165390001037658081">Certains opérateurs peuvent bloquer cette fonctionnalité.</translation>
+<translation id="3169930038976362151">Choisissez le thème adapté à vos besoins. Pour changer de thème, de fond d'écran, d'économiseur d'écran, etc., appuyez de manière prolongée sur le bureau.</translation>
 <translation id="3170072451822350649">Vous pouvez également ignorer l'étape de connexion et <ph name="LINK_START" />naviguer en tant qu'invité<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Nouvel onglet à gauche</translation>
 <translation id="3177909033752230686">Langue de la page :</translation>
@@ -3198,6 +3201,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Copier les détails de la version</translation>
 <translation id="4021941025609472374">Fermer les onglets à gauche</translation>
+<translation id="402211067068791756">Cette action effacera <ph name="TOTAL_USAGE" /> des données stockées par les sites affichés</translation>
 <translation id="4022426551683927403">&amp;Ajouter au dictionnaire</translation>
 <translation id="4025039777635956441">Bloquer le site sélectionné</translation>
 <translation id="4028467762035011525">Ajouter des modes de saisie</translation>
@@ -3448,6 +3452,7 @@
 <translation id="4281844954008187215">Conditions d'utilisation</translation>
 <translation id="4282196459431406533">Smart Lock est activé</translation>
 <translation id="4284755288573763878">Désactiver la sécurité renforcée ?</translation>
+<translation id="4284903252249997120">Lecteur d'écran ChromeVox et Sélectionner pour prononcer</translation>
 <translation id="4285418559658561636">Mettre à jour le mot de passe</translation>
 <translation id="4285498937028063278">Retirer</translation>
 <translation id="428565720843367874">Le logiciel antivirus a rencontré une erreur inattendue pendant l'analyse de ce fichier.</translation>
@@ -4989,6 +4994,7 @@
 <translation id="5827733057563115968">Prédiction du mot suivant</translation>
 <translation id="5828545842856466741">Ajouter un profil…</translation>
 <translation id="5828633471261496623">Impression...</translation>
+<translation id="5828797982387013521">Sélectionner un playbook</translation>
 <translation id="5830205393314753525">Impossible d'ouvrir <ph name="APP_NAME" /></translation>
 <translation id="5830720307094128296">Enregistrer la p&amp;age sous...</translation>
 <translation id="5832813618714645810">Profils</translation>
@@ -5079,6 +5085,7 @@
 
   Exposant public (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> bits) :
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Lecture automatique</translation>
 <translation id="5916664084637901428">Activé</translation>
 <translation id="59174027418879706">Activé</translation>
 <translation id="5920543303088087579">Votre administrateur a désactivé la connexion à ce réseau</translation>
@@ -5364,6 +5371,7 @@
 <translation id="6200151268994853226">Gérer l'extension</translation>
 <translation id="6201608810045805374">Supprimer ce compte ?</translation>
 <translation id="6202304368170870640">Vous pouvez utiliser votre code pour vous connecter à votre appareil ou le déverrouiller.</translation>
+<translation id="6206199626856438589">Vous allez être déconnecté des sites affichés, y compris dans les onglets ouverts</translation>
 <translation id="6206311232642889873">Cop&amp;ier l'image</translation>
 <translation id="6207200176136643843">Réinitialiser le niveau de zoom par défaut</translation>
 <translation id="6207937957461833379">Pays/Région</translation>
@@ -5912,6 +5920,7 @@
 <translation id="6733620523445262364"><ph name="BOOKMARK_TITLE" /> a été créé.</translation>
 <translation id="6735304988756581115">Afficher les cookies et autres données des sites...</translation>
 <translation id="6736243959894955139">Adresse</translation>
+<translation id="6737393581255281855">Effacer les données affichées ?</translation>
 <translation id="6737663862851963468">Supprimer un ticket Kerberos</translation>
 <translation id="6738430949033571771">Validation du compte…</translation>
 <translation id="6739923123728562974">Afficher le raccourci sur le Bureau</translation>
@@ -7204,6 +7213,7 @@
 <translation id="7988355189918024273">Activer les fonctionnalités d'accessibilité</translation>
 <translation id="7988805580376093356">Exécutez <ph name="DEVICE_OS" /> depuis une clé USB pour conserver votre OS.</translation>
 <translation id="7991296728590311172">Paramètres Switch Access</translation>
+<translation id="7992203134935383159">Synthèse vocale</translation>
 <translation id="7997826902155442747">Priorité de traitement</translation>
 <translation id="7999229196265990314">Les fichiers suivants ont été créés :
 
@@ -7590,6 +7600,7 @@
 <translation id="8366396658833131068">Votre connexion réseau est rétablie. Veuillez sélectionner un autre réseau ou appuyer sur "Continuer" ci-dessous pour lancer votre application kiosque.</translation>
 <translation id="8366694425498033255">Touches de sélection</translation>
 <translation id="8368859634510605990">&amp;Ouvrir tous les favoris</translation>
+<translation id="8369028061188107403">Cette action effacera <ph name="TOTAL_USAGE" /> des données stockées par les sites affichés et les applis installées</translation>
 <translation id="8370294614544004647">Mettre en veille lorsque l'ordinateur portable est fermé</translation>
 <translation id="8371695176452482769">Parlez maintenant.</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Couper le son du site}one{Couper le son du site}other{Couper le son des sites}}</translation>
diff --git a/chrome/app/resources/generated_resources_hi.xtb b/chrome/app/resources/generated_resources_hi.xtb
index 6425434..88cd2e0 100644
--- a/chrome/app/resources/generated_resources_hi.xtb
+++ b/chrome/app/resources/generated_resources_hi.xtb
@@ -219,6 +219,7 @@
 <translation id="1197199342062592414">आइए प्रारंभ करें</translation>
 <translation id="11978075283960463">ऐप्लिकेशन में सेव डेटा का साइज़: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">बंद करें</translation>
+<translation id="1198066799963193307">कम दृष्टि वाले लोगों के लिए, टेक्स्ट को बोली में बदलने वाले टूल से जुड़ी सेटिंग पर जाएं</translation>
 <translation id="119944043368869598">सारा डेटा मिटाएं</translation>
 <translation id="1199814941632954229">प्रमाणपत्र की इन प्रोफ़ाइलों के लिए, प्रमाणपत्रों का इस्तेमाल किया जा रहा है</translation>
 <translation id="120069043972472860">न देखे जाने लायक</translation>
@@ -1512,6 +1513,7 @@
 <translation id="2371076942591664043">&amp;पू्र्ण होने पर खोलें</translation>
 <translation id="2373666622366160481">जिस कागज़ पर प्रिंट किया जाना है उसके आकार के हिसाब से फ़िट करें</translation>
 <translation id="2375406435414127095">अपने फ़ोन से जोड़ें</translation>
+<translation id="2376056713414548745">टेक्स्ट को ज़ोर से पढ़े जाने से जुड़ी सेटिंग पर जाएं</translation>
 <translation id="2377588536920405462">जगह की जानकारी देना बंद करने के लिए, आप डिवाइस की सेटिंग में जाकर 'जगह की सेटिंग' बंद कर सकते हैं. आप जगह की सेटिंग में जाकर वाई-फ़ाई, मोबाइल नेटवर्क, और जगह की जानकारी का पता लगाने वाले सेंसर का इस्तेमाल करना बंद भी कर सकते हैं.</translation>
 <translation id="2377667304966270281">हार्ड फ़ॉल्ट</translation>
 <translation id="237828693408258535">क्या इस पेज का अनुवाद करना चाहते हैं?</translation>
@@ -2339,6 +2341,7 @@
 <translation id="3163511056918491211">जब चाहें, आसानी से अपना डेटा वापस लाएं या डिवाइस बदलें. आपके डिवाइस के डेटा का बैक अप, Google पर अपलोड किया जाता है और आपके Google खाते के पासवर्ड से सुरक्षित किया जाता है.</translation>
 <translation id="3164329792803560526">इस टैब को <ph name="APP_NAME" /> के साथ शेयर किया जा रहा है</translation>
 <translation id="3165390001037658081">कुछ वाहक इस सुविधा को बंद कर सकते हैं.</translation>
+<translation id="3169930038976362151">अपनी ज़रूरतों के मुताबिक थीम चुनें. अपनी थीम, वॉलपेपर, स्क्रीन सेवर वगैरह बदलने के लिए, बस डेस्कटॉप पर बटन को दबाकर रखें.</translation>
 <translation id="3170072451822350649">आप प्रवेश करना छोड़ भी सकते हैं और <ph name="LINK_START" />अतिथि के रूप में ब्राउज़<ph name="LINK_END" /> कर सकते हैं.</translation>
 <translation id="31774765611822736">बाईं ओर का नया टैब</translation>
 <translation id="3177909033752230686">पेज की भाषा:</translation>
@@ -3211,6 +3214,7 @@
 <translation id="402184264550408568">(टीसीपी)</translation>
 <translation id="4021909830315618592">बिल्ड की जानकारी कॉपी करें</translation>
 <translation id="4021941025609472374">बाईं ओर के टैब बंद करें</translation>
+<translation id="402211067068791756">इससे, देखी गई साइटों के सेव किए गए कुल डेटा में से <ph name="TOTAL_USAGE" /> डेटा मिट जाएगा</translation>
 <translation id="4022426551683927403">शब्दकोश में &amp;जोड़ें</translation>
 <translation id="4025039777635956441">चुनी गई साइट म्यूट करें</translation>
 <translation id="4028467762035011525">इनपुट का तरीका जोड़ें</translation>
@@ -3461,6 +3465,7 @@
 <translation id="4281844954008187215">सेवा की शर्तें</translation>
 <translation id="4282196459431406533">Smart Lock चालू है</translation>
 <translation id="4284755288573763878">बेहतर सुरक्षा वाली ब्राउज़िंग बंद करनी है?</translation>
+<translation id="4284903252249997120">ChromeVox स्क्रीन रीडर और 'चुनें और सुनें' सुविधा</translation>
 <translation id="4285418559658561636">पासवर्ड अपडेट करें</translation>
 <translation id="4285498937028063278">टैब बड़ी करें</translation>
 <translation id="428565720843367874">इस फ़ाइल को स्कैन करते समय एंटी-वायरस साफ़्टवेयर अनपेक्षित रूप से विफल रहा.</translation>
@@ -5002,6 +5007,7 @@
 <translation id="5827733057563115968">अगले शब्द का अनुमान</translation>
 <translation id="5828545842856466741">प्रोफ़ाइल जोड़ें...</translation>
 <translation id="5828633471261496623">प्रिंट हो रहा है...</translation>
+<translation id="5828797982387013521">प्लेबुक चुनें</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> को खोला नहीं जा सकता</translation>
 <translation id="5830720307094128296">पेज को इस रूप में सेव करें...</translation>
 <translation id="5832813618714645810">प्रोफ़ाइलें</translation>
@@ -5092,6 +5098,7 @@
 
   सार्वजनिक घातांक (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> बिट):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">टेक्स्ट को अपने-आप पढ़े जाने से जुड़ी सेटिंग पर जाएं</translation>
 <translation id="5916664084637901428">चालू है</translation>
 <translation id="59174027418879706">चालू किया गया</translation>
 <translation id="5920543303088087579">इस नेटवर्क से कनेक्ट करने की सुविधा आपके व्यवस्थापक ने अक्षम कर दी है</translation>
@@ -5377,6 +5384,7 @@
 <translation id="6200151268994853226">एक्सटेंशन मैनेज करें</translation>
 <translation id="6201608810045805374">क्या आपको यह खाता हटाना है?</translation>
 <translation id="6202304368170870640">आप अपने डिवाइस में साइन इन करने या उसे अनलॉक करने के लिए अपने पिन का इस्तेमाल कर सकते हैं.</translation>
+<translation id="6206199626856438589">आपको उन साइटों से साइन आउट कर दिया जाएगा जिन्हें आपने देखा है. इसमें, वे साइटें भी शामिल हैं जो टैब में अभी खुली हुई हैं</translation>
 <translation id="6206311232642889873">इमेज को कॉपी करें</translation>
 <translation id="6207200176136643843">डिफ़ॉल्ट ज़ूम स्तर पर रीसेट करें</translation>
 <translation id="6207937957461833379">देश/क्षेत्र</translation>
@@ -5925,6 +5933,7 @@
 <translation id="6733620523445262364">'<ph name="BOOKMARK_TITLE" />' बनाया गया.</translation>
 <translation id="6735304988756581115">कुकी और साइट के अन्य डेटा दिखाएं...</translation>
 <translation id="6736243959894955139">पता</translation>
+<translation id="6737393581255281855">क्या आपको दिखाया गया डेटा मिटाना है?</translation>
 <translation id="6737663862851963468">Kerberos टिकट हटाएं</translation>
 <translation id="6738430949033571771">खाते की पुष्टि की जा रही है...</translation>
 <translation id="6739923123728562974">डेस्कटॉप शॉर्टकट दिखाएं</translation>
@@ -7216,6 +7225,7 @@
 <translation id="7988355189918024273">सुलभता सुविधाएं चालू करें</translation>
 <translation id="7988805580376093356">अपना ओएस न हटाएं और <ph name="DEVICE_OS" /> को यूएसबी से चलाएं.</translation>
 <translation id="7991296728590311172">ऐक्सेस का तरीका बदलने की सेटिंग</translation>
+<translation id="7992203134935383159">लिखाई को बोली में बदलने से जुड़ी सेटिंग पर जाएं</translation>
 <translation id="7997826902155442747">प्राथमिकता संसाधित करें</translation>
 <translation id="7999229196265990314">निम्न फ़ाइलें बनाई गईं:
 
@@ -7602,6 +7612,7 @@
 <translation id="8366396658833131068">आपका नेटवर्क कनेक्शन रिस्टोर हो गया है. कृपया अपना किओस्क ऐप्लिकेशन लॉन्च करने के लिए कोई दूसरा नेटवर्क चुनें या नीचे दिया गया 'जारी रखें' बटन दबाएं.</translation>
 <translation id="8366694425498033255">चयन कुंजियां</translation>
 <translation id="8368859634510605990">सभी बुकमार्क &amp;खोलें</translation>
+<translation id="8369028061188107403">इससे, आपकी देखी गई साइटों और इंस्टॉल किए गए ऐप्लिकेशन के सेव किए गए कुल डेटा में से <ph name="TOTAL_USAGE" /> डेटा मिट जाएगा</translation>
 <translation id="8370294614544004647">लैपटॉप बंद होने पर इसे स्लीप मोड में ले जाएं</translation>
 <translation id="8371695176452482769">अब बोलें</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{साइट म्यूट करें}one{साइटें म्यूट करें}other{साइटें म्यूट करें}}</translation>
diff --git a/chrome/app/resources/generated_resources_hy.xtb b/chrome/app/resources/generated_resources_hy.xtb
index a5e3abe..7ccc0f4d 100644
--- a/chrome/app/resources/generated_resources_hy.xtb
+++ b/chrome/app/resources/generated_resources_hy.xtb
@@ -217,6 +217,7 @@
 <translation id="1197199342062592414">Մեկնարկ</translation>
 <translation id="11978075283960463">Հավելվածի տվյալների չափը՝ <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Ապակտիվացնել</translation>
+<translation id="1198066799963193307">Խոսքի գործիքներ թույլ տեսողությամբ մարդկանց համար</translation>
 <translation id="119944043368869598">Մաքրել բոլորը</translation>
 <translation id="1199814941632954229">Տրամադրվում են հավաստագրեր հավաստագրման այս պրոֆիլների համար</translation>
 <translation id="120069043972472860">Անդիտելի</translation>
@@ -1498,6 +1499,7 @@
 <translation id="2371076942591664043">Բացել ավարտվելուն &amp;պես</translation>
 <translation id="2373666622366160481">Հարմարեցնել թղթին</translation>
 <translation id="2375406435414127095">Միացրեք ձեր հեռախոսը</translation>
+<translation id="2376056713414548745">Կարդալ բարձրաձայն</translation>
 <translation id="2377588536920405462">Դուք կարող եք անջատել տեղորոշումը սարքի կարգավորումներում։ Բացի այդ, տեղորոշման կարգավորումներում հնարավոր է անջատել Wi-Fi-ի, բջջային ցանցերի ու տվիչների օգտագործումը տեղորոշման համար։</translation>
 <translation id="2377667304966270281">Սարքակազմի սխալ</translation>
 <translation id="237828693408258535">Թարգմանե՞լ այս էջը</translation>
@@ -2325,6 +2327,7 @@
 <translation id="3163511056918491211">Հեշտությամբ վերականգնեք և տեղափոխեք տվյալները նոր սարք։ Պահուստավորված տվյալները վերբեռնվում են Google և գաղտնագրվում ձեր Google հաշվի գաղտնաբառի միջոցով։</translation>
 <translation id="3164329792803560526"><ph name="APP_NAME" />-ին հասանելի է այս ներդիրը</translation>
 <translation id="3165390001037658081">Որոշ մատակարարներ կարող են արգելափակել այս գործառույթը։</translation>
+<translation id="3169930038976362151">Ընտրեք ձեզ հարմար թեմա։ Թեման, պաստառը, էկրանապահը և այլ տարրեր փոխելու համար պարզապես հպեք աշխատասեղանին և պահեք։</translation>
 <translation id="3170072451822350649">Դուք կարող եք նաև մուտք չգործել և <ph name="LINK_START" />սկսել հյուրի աշխատաշրջան<ph name="LINK_END" />:</translation>
 <translation id="31774765611822736">Նոր ներդիր ձախ կողմում</translation>
 <translation id="3177909033752230686">Էջի լեզուն՝</translation>
@@ -3197,6 +3200,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Պատճենել կառուցման տվյալները</translation>
 <translation id="4021941025609472374">Փակել ձախ կողմի ներդիրները</translation>
+<translation id="402211067068791756"><ph name="TOTAL_USAGE" /> ծավալով տվյալները, որոնք պահվել են ցուցադրված կայքերի կողմից, կջնջվեն։</translation>
 <translation id="4022426551683927403">&amp;Ավելացնել բառացանկին</translation>
 <translation id="4025039777635956441">Անջատել նշված կայքի ձայնը</translation>
 <translation id="4028467762035011525">Ավելացնել ներածման մեթոդներ</translation>
@@ -3447,6 +3451,7 @@
 <translation id="4281844954008187215">Օգտագործման պայմաններ</translation>
 <translation id="4282196459431406533">Smart Lock-ը միացված է</translation>
 <translation id="4284755288573763878">Անջատե՞լ բարելավված անվտանգությունը</translation>
+<translation id="4284903252249997120">ChromeVox էկրանի ընթերցիչ և «Ընտրեք և լսեք» գործառույթ</translation>
 <translation id="4285418559658561636">Թարմացնել գաղտնաբառը</translation>
 <translation id="4285498937028063278">Ապամրացնել</translation>
 <translation id="428565720843367874">Այս ֆայլը ստուգելիս՝ հակավիրուսի ծրագիրն անսպասելիորեն խափանվեց:</translation>
@@ -4987,6 +4992,7 @@
 <translation id="5827733057563115968">Հաջորդ բառի կանխատեսում</translation>
 <translation id="5828545842856466741">Ավելացնել պրոֆիլ...</translation>
 <translation id="5828633471261496623">Տպում…</translation>
+<translation id="5828797982387013521">Ընտրել ձեռնարկ</translation>
 <translation id="5830205393314753525">Չհաջողվեց բացել <ph name="APP_NAME" /> հավելվածը</translation>
 <translation id="5830720307094128296">Պահել էջը &amp;որպես…</translation>
 <translation id="5832813618714645810">Պրոֆիլներ</translation>
@@ -5077,6 +5083,7 @@
 
   Հանրային աստիճանացույցը (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> բիթ)՝
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Ավտոմատ ընթերցում</translation>
 <translation id="5916664084637901428">Միացնել</translation>
 <translation id="59174027418879706">Միացված</translation>
 <translation id="5920543303088087579">Ձեր ադմինիստրատորն արգելափակել է այս ցանցին միանալու հնարավորությունը</translation>
@@ -5361,6 +5368,7 @@
 <translation id="6200151268994853226">Կառավարել ընդլայնումը</translation>
 <translation id="6201608810045805374">Հեռացնե՞լ հաշիվը</translation>
 <translation id="6202304368170870640">Դուք կարող եք օգտագործել ձեր PIN կոդը՝ ձեր սարք մտնելու կամ այն ապակողպելու համար:</translation>
+<translation id="6206199626856438589">Դուք դուրս կգաք հաշվից ցուցադրված կայքերում, այդ թվում՝ բաց ներդիրներում</translation>
 <translation id="6206311232642889873">Պատ&amp;ճենել պատկերը</translation>
 <translation id="6207200176136643843">Վերակայել կանխադրված մասշտաբը</translation>
 <translation id="6207937957461833379">Երկիր/տարածաշրջան</translation>
@@ -5909,6 +5917,7 @@
 <translation id="6733620523445262364">«<ph name="BOOKMARK_TITLE" />» էջանիշը ստեղծվեց։</translation>
 <translation id="6735304988756581115">Ցույց տալ քուքիները և կայքի այլ տվյալները…</translation>
 <translation id="6736243959894955139">Հասցե</translation>
+<translation id="6737393581255281855">Մաքրե՞լ ցուցադրված տվյալները</translation>
 <translation id="6737663862851963468">Հեռացնել Kerberos տոմսը</translation>
 <translation id="6738430949033571771">Հաշվի հաստատում…</translation>
 <translation id="6739923123728562974">Ցուցադրել աշխատասեղանի դյուրանցումը</translation>
@@ -7199,6 +7208,7 @@
 <translation id="7988355189918024273">Միացնել հատուկ գործառույթները</translation>
 <translation id="7988805580376093356">Պահպանել ընթացիկ օպերացիոն համակարգը և գործարկել <ph name="DEVICE_OS" />-ը USB կրիչից։</translation>
 <translation id="7991296728590311172">Switch Access-ի կարգավորումներ</translation>
+<translation id="7992203134935383159">Խոսքի սինթեզ</translation>
 <translation id="7997826902155442747">Գործընթացների առաջնահերթություն</translation>
 <translation id="7999229196265990314">Ստեղծվել են հետևյալ ֆայլերը՝
 
@@ -7584,6 +7594,7 @@
 <translation id="8366396658833131068">Ցանցի կապակցումը վերականգնվել է: Kiosk հավելվածը գործարկելու համար ընտրեք այլ ցանց կամ սեղմեք «Շարունակել» կոճակը:</translation>
 <translation id="8366694425498033255">Ընտրության ստեղներ</translation>
 <translation id="8368859634510605990">&amp;Բացել բոլոր էջանիշները</translation>
+<translation id="8369028061188107403"><ph name="TOTAL_USAGE" /> ծավալով տվյալները, որոնք պահվել են ցուցադրված կայքերի և տեղադրված հավելվածների կողմից, կջնջվեն։</translation>
 <translation id="8370294614544004647">Անցնել քնի ռեժիմ, երբ նոթբուքը փակ է</translation>
 <translation id="8371695176452482769">Խոսեք հիմա</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Անջատել կայքի ձայնը}one{Անջատել կայքի ձայնը}other{Անջատել կայքերի ձայնը}}</translation>
diff --git a/chrome/app/resources/generated_resources_iw.xtb b/chrome/app/resources/generated_resources_iw.xtb
index dd9a5ff..892730a 100644
--- a/chrome/app/resources/generated_resources_iw.xtb
+++ b/chrome/app/resources/generated_resources_iw.xtb
@@ -220,6 +220,7 @@
 <translation id="1197199342062592414">בוא נתחיל</translation>
 <translation id="11978075283960463">נפח הנתונים ששמורים באפליקציה: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">השבתה</translation>
+<translation id="1198066799963193307">כלי דיבור ללקויי ראייה</translation>
 <translation id="119944043368869598">ניקוי הכול</translation>
 <translation id="1199814941632954229">המערכת מקצה אישורים לפרופילי האישורים האלה</translation>
 <translation id="120069043972472860">לא ניתן לצפייה</translation>
@@ -1510,6 +1511,7 @@
 <translation id="2371076942591664043">פתיחה &amp;בסיום</translation>
 <translation id="2373666622366160481">התאמה לגודל הנייר</translation>
 <translation id="2375406435414127095">התחברות לטלפון</translation>
+<translation id="2376056713414548745">קריאה בקול רם</translation>
 <translation id="2377588536920405462">‏כדי לכבות את המיקום, עליך להשבית את ההגדרה הראשית של המיקום במכשיר שלך. בהגדרות המיקום אפשר גם להשבית את האפשרות להסתמך על Wi-Fi, רשתות סלולריות וחיישנים כדי לקבוע את המיקום.</translation>
 <translation id="2377667304966270281">שגיאות חמורות</translation>
 <translation id="237828693408258535">לתרגם את הדף הזה?</translation>
@@ -2339,6 +2341,7 @@
 <translation id="3163511056918491211">‏קל לשחזר נתונים או להחליף מכשירים בכל שלב. הגיבויים נשמרים ב-Google ומוצפנים באמצעות הסיסמה לחשבון Google שלך.</translation>
 <translation id="3164329792803560526">המערכת משתפת את הכרטיסייה הזו עם <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">ייתכן שספקים מסוימים חוסמים את התכונה הזו.</translation>
+<translation id="3169930038976362151">כאן אפשר לבחור את העיצוב שמתאים לך. כדי לשנות את העיצוב, הטפט, שומר המסך ופריטים נוספים, פשוט לוחצים לחיצה ארוכה על שולחן העבודה.</translation>
 <translation id="3170072451822350649">ניתן גם לדלג על הכניסה ו<ph name="LINK_START" />לגלוש כאורח<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">כרטיסייה חדשה מצד שמאל</translation>
 <translation id="3177909033752230686">שפת הדף:</translation>
@@ -3212,6 +3215,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">‏העתקת פרטי build</translation>
 <translation id="4021941025609472374">סגירת הכרטיסיות משמאל</translation>
+<translation id="402211067068791756">הפעולה הזו תגרום למחיקת <ph name="TOTAL_USAGE" /> של נתונים שאוחסנו על ידי האתרים המוצגים</translation>
 <translation id="4022426551683927403">&amp;הוספה למילון</translation>
 <translation id="4025039777635956441">השתקת האתרים שנבחרו</translation>
 <translation id="4028467762035011525">הוספה של שיטות קלט</translation>
@@ -3462,6 +3466,7 @@
 <translation id="4281844954008187215">תנאי שירות</translation>
 <translation id="4282196459431406533">‏Smart Lock מופעל</translation>
 <translation id="4284755288573763878">להשבית את האבטחה המשופרת?</translation>
+<translation id="4284903252249997120">‏הקראה וקורא המסך ChromeVox</translation>
 <translation id="4285418559658561636">עדכון סיסמה</translation>
 <translation id="4285498937028063278">ביטול הצמדה</translation>
 <translation id="428565720843367874">תוכנת האנטי-וירוס נכשלה באופן בלתי צפוי בעת סריקת קובץ זה.</translation>
@@ -5003,6 +5008,7 @@
 <translation id="5827733057563115968">חיזוי המילה הבאה</translation>
 <translation id="5828545842856466741">הוספת פרופיל...</translation>
 <translation id="5828633471261496623">ההדפסה מתבצעת...</translation>
+<translation id="5828797982387013521">בחירת מדריך</translation>
 <translation id="5830205393314753525">לא ניתן לפתוח את <ph name="APP_NAME" /></translation>
 <translation id="5830720307094128296">שמירת הדף &amp;כ...</translation>
 <translation id="5832813618714645810">פרופילים</translation>
@@ -5093,6 +5099,7 @@
 
   מעריך ציבורי (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> ביטים):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">קריאה אוטומטית</translation>
 <translation id="5916664084637901428">פועל</translation>
 <translation id="59174027418879706">מופעל</translation>
 <translation id="5920543303088087579">החיבור לרשת הזו הושבת על ידי מנהל המערכת</translation>
@@ -5378,6 +5385,7 @@
 <translation id="6200151268994853226">ניהול התוספים</translation>
 <translation id="6201608810045805374">להסיר את החשבון הזה?</translation>
 <translation id="6202304368170870640">קוד האימות מאפשר להיכנס למכשיר או לבטל את נעילתו.</translation>
+<translation id="6206199626856438589">תבוצע יציאה מהאתרים המוצגים, כולל מהכרטיסיות הפתוחות</translation>
 <translation id="6206311232642889873">העת&amp;קת תמונה</translation>
 <translation id="6207200176136643843">איפוס למרחק התצוגה המוגדר כברירת המחדל</translation>
 <translation id="6207937957461833379">מדינה/אזור</translation>
@@ -5928,6 +5936,7 @@
 <translation id="6733620523445262364">הסימנייה '<ph name="BOOKMARK_TITLE" />' נוצרה.</translation>
 <translation id="6735304988756581115">‏הצגת קובצי Cookie ונתוני אתר אחרים...</translation>
 <translation id="6736243959894955139">כתובת</translation>
+<translation id="6737393581255281855">לנקות את הנתונים המוצגים?</translation>
 <translation id="6737663862851963468">‏הסרה של כרטיס Kerberos</translation>
 <translation id="6738430949033571771">החשבון בתהליך אימות…</translation>
 <translation id="6739923123728562974">הצגת קיצור דרך בשולחן העבודה</translation>
@@ -7219,6 +7228,7 @@
 <translation id="7988355189918024273">יש להפעיל תכונות נגישות</translation>
 <translation id="7988805580376093356">‏מערכת ההפעלה שלך תמשיך לרוץ, ומערכת <ph name="DEVICE_OS" /> תרוץ מה-USB.</translation>
 <translation id="7991296728590311172">הגדרות גישה באמצעות מתג</translation>
+<translation id="7992203134935383159">סינתזת דיבור</translation>
 <translation id="7997826902155442747">עדיפות תהליך</translation>
 <translation id="7999229196265990314">יצר את הקבצים הבאים:
 
@@ -7607,6 +7617,7 @@
 <translation id="8366396658833131068">קישוריות הרשת שלך התחדשה. יש לבחור רשת אחרת או ללחוץ על הלחצן 'המשך' שלמטה כדי להפעיל את יישום הקיוסק.</translation>
 <translation id="8366694425498033255">מקשי בחירה</translation>
 <translation id="8368859634510605990">&amp;פתיחת כל הסימניות</translation>
+<translation id="8369028061188107403">הפעולה הזו תגרום למחיקת <ph name="TOTAL_USAGE" /> של נתונים שאוחסנו על ידי האתרים המוצגים והאפליקציות המותקנות</translation>
 <translation id="8370294614544004647">מעבר למצב שינה כשהמחשב הנייד נסגר</translation>
 <translation id="8371695176452482769">דיבור עכשיו</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{השתקת האתר}two{השתקת האתרים}many{השתקת האתרים}other{השתקת האתרים}}</translation>
diff --git a/chrome/app/resources/generated_resources_kk.xtb b/chrome/app/resources/generated_resources_kk.xtb
index 80f95b2..2b3e4b778 100644
--- a/chrome/app/resources/generated_resources_kk.xtb
+++ b/chrome/app/resources/generated_resources_kk.xtb
@@ -157,6 +157,7 @@
 <translation id="1148063863818152153">Құрылғының EID нөмірі</translation>
 <translation id="1148624853678088576">Барлығын орнаттыңыз!</translation>
 <translation id="1149401351239820326">Жарамдылық мерзімі бітетін ай</translation>
+<translation id="1149483087970735785">Көмекші технология</translation>
 <translation id="1149725087019908252"><ph name="FILE_NAME" /> файлын сканерлеу</translation>
 <translation id="1150490752229770117">Бұл – <ph name="DEVICE_TYPE" /> құрылғысына арналған бағдарламалық құрал мен қауіпсіздік жүйесінің жаңартуы. Бұдан кейін де жаңартулар алғыңыз келсе, жаңа үлгіге өтіңіз. <ph name="LINK_BEGIN" />Толығырақ<ph name="LINK_END" /></translation>
 <translation id="1150565364351027703">Күнқағар көзілдірік</translation>
@@ -215,6 +216,7 @@
 <translation id="1197199342062592414">Жұмысты бастайық</translation>
 <translation id="11978075283960463">Қолданбадағы дерек көлемі: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Өшіріп қою</translation>
+<translation id="1198066799963193307">Нашар көретіндерге арналған дыбыстау құралдары</translation>
 <translation id="119944043368869598">Барлығын өшіру</translation>
 <translation id="1199814941632954229">Осы сертификат профильдеріне сертификаттар берілуде</translation>
 <translation id="120069043972472860">Көрінбейді</translation>
@@ -726,6 +728,7 @@
 <translation id="1680849702532889074">Linux қолданбасын орнату кезінде қате кетті.</translation>
 <translation id="16815041330799488">Сайттардың буферге көшірілген мәтін мен кескіндерді көруіне рұқсат бермеу</translation>
 <translation id="1682548588986054654">Жаңа жасырын терезе</translation>
+<translation id="1682696837763999627">Үлкен тінтуір курсоры</translation>
 <translation id="1682867089915960590">Пернелер арқылы навигациялау қосылсын ба?</translation>
 <translation id="1686550358074589746">Қимыл арқылы теруді қосу</translation>
 <translation id="168715261339224929">Бетбелгілерге барлық құрылғылардан кіру үшін синхрондауды қосыңыз.</translation>
@@ -829,6 +832,7 @@
 <translation id="178092663238929451">Маңайдағы пайдаланушылармен файл алмасу үшін Nearby Share функциясын реттеңіз.</translation>
 <translation id="1781291988450150470">Қолданыстағы PIN коды</translation>
 <translation id="1781502536226964113">Жаңа қойынды бетін ашу</translation>
+<translation id="1781553166608855614">Сөйлеу тілі</translation>
 <translation id="1781771911845953849">Аккаунттар және синхрондау</translation>
 <translation id="1781979858217752599">Терезе аудиосын бөлісу</translation>
 <translation id="1782101999402987960">Әкімші жаңартуларды бөгеген.</translation>
@@ -1490,6 +1494,7 @@
 <translation id="2371076942591664043">&amp;Дайын болғанда ашу</translation>
 <translation id="2373666622366160481">Қағаз өлшеміне сәйкестендіру</translation>
 <translation id="2375406435414127095">Телефоныңызға жалғаңыз</translation>
+<translation id="2376056713414548745">Дауыстап оқу</translation>
 <translation id="2377588536920405462">Құрылғыдағы негізгі орналасу параметрін өшіру арқылы орналасқан жердің анықталуын өшіруге болады. Сонымен қатар Wi‑Fi мен мобильдік желілердің және сенсорлардың орынды анықтау үшін қолданылуын геодерек параметрлерінен өшіре аласыз.</translation>
 <translation id="2377667304966270281">Үлкен қателер</translation>
 <translation id="237828693408258535">Осы бетті аудару керек пе?</translation>
@@ -1553,6 +1558,7 @@
 <translation id="244475495405467108">Сол жақтағы қойындыларды жабу</translation>
 <translation id="2445081178310039857">Кеңейтімнің түпкі каталогі қажет.</translation>
 <translation id="2445484935443597917">Жаңа профиль жасау</translation>
+<translation id="2445726032315793326">Экранды жартылай ұлғайтқыш</translation>
 <translation id="244641233057214044">Сіздің іздегеніңізге қатысты</translation>
 <translation id="2448312741937722512">Түрі</translation>
 <translation id="2448810255793562605">Switch Access арқылы автоматты түрде іздеу</translation>
@@ -1844,6 +1850,7 @@
 <translation id="2724841811573117416">WebRTC журналдары</translation>
 <translation id="272488616838512378">Өлшем бірліктерін ауыстыру</translation>
 <translation id="2725200716980197196">Желілік байланыс қалпына келтірілді</translation>
+<translation id="272741954544380994">Суретті <ph name="VISUAL_SEARCH_PROVIDER" /> көмегімен іздеу</translation>
 <translation id="2727633948226935816">Енді еске салынбасын</translation>
 <translation id="2727712005121231835">Нақты өлшемі</translation>
 <translation id="2729314457178420145">Браузерді пайдалану деректерін де (<ph name="URL" />) өшіріңіз (Google.com сайтында аккаунтыңыздан шығарылуыңыз мүмкін). <ph name="LEARN_MORE" /></translation>
@@ -2185,6 +2192,7 @@
 <translation id="3030967311408872958">Күн батқаннан күн шыққанға дейін</translation>
 <translation id="3031417829280473749">Agent X</translation>
 <translation id="3031557471081358569">Импорттау үшін элементтерді таңдаңыз:</translation>
+<translation id="3032204772252313646">Автоматты субтитрлер</translation>
 <translation id="3033348223765101500">Деректі бақылау</translation>
 <translation id="3034627908241330765">Steam бойынша басқа реттеу процесі орындалуда. Ол аяқталмайынша, реттеуді қайта іске қоспаңыз.</translation>
 <translation id="3036327949511794916">Осы <ph name="DEVICE_TYPE" /> құрылғысын қайтару мерзімі өтіп кетті.</translation>
@@ -2314,6 +2322,7 @@
 <translation id="3163511056918491211">Кез келген уақытта деректерді оңай қалпына келтіруге немесе басқа құрылғыға ауысуға болады. Сақтық көшірмелер Google-ға жүктеп салынады және Google аккаунтыңыздың құпия сөзі арқылы шифрланады.</translation>
 <translation id="3164329792803560526">Бұл қойынды <ph name="APP_NAME" /> қолданбасына жіберілуде.</translation>
 <translation id="3165390001037658081">Кейбір операторлар бұл функцияны блоктауы мүмкін.</translation>
+<translation id="3169930038976362151">Қажеттіліктеріңізге сай режимді таңдаңыз. Режимді, тұсқағазды, скринсейверді өзгерту және т. б. әрекеттерді орындау үшін жұмыс үстелінде белгілі бір жерді басып тұрыңыз.</translation>
 <translation id="3170072451822350649">Сонымен қатар жүйеге кіруді өткізіп жіберіп, <ph name="LINK_START" />Қонақ ретінде шолуыңызға<ph name="LINK_END" /> болады.</translation>
 <translation id="31774765611822736">Сол жақтан жаңа қойынды ашу</translation>
 <translation id="3177909033752230686">Бет тілі:</translation>
@@ -2617,6 +2626,7 @@
 <translation id="3480612136143976912">Live Caption функциясы үшін жазу өлшемі мен стилін реттеңіз. Кейбір қолданбалар мен сайттар да осы параметрді пайдаланатын болады.</translation>
 <translation id="3480827850068960424"><ph name="NUM" /> қойынды табылды.</translation>
 <translation id="3481268647794498892"><ph name="ALTERNATIVE_BROWSER_NAME" /> браузері <ph name="COUNTDOWN_SECONDS" /> секундта ашылады.</translation>
+<translation id="348268549820508141">Сөз тану</translation>
 <translation id="3482719661246593752"><ph name="ORIGIN" /> келесі файлдарды көре алады.</translation>
 <translation id="3484273680291419129">Зиян бағдарламалық құрал өшірілуде…</translation>
 <translation id="3484869148456018791">Жаңа сертификат алу</translation>
@@ -2775,6 +2785,7 @@
 <translation id="3640214691812501263"><ph name="USER_NAME" /> үшін "<ph name="EXTENSION_NAME" />" қосу қажет пе?</translation>
 <translation id="3640613767643722554">Assistant қолданбасын дауысыңызды тануға үйретіңіз</translation>
 <translation id="3641456520301071208">Сайттар локацияңызды сұрай алады.</translation>
+<translation id="3642070413432681490">Курсорды айналдыру</translation>
 <translation id="3642699533549879077">Егер әлдебіреу экраныңызға қараса, ескерту аласыз және хабарландыру жасырылады.</translation>
 <translation id="3645372836428131288">Саусақ ізінің басқа бөлігін түсіру үшін саусағыңызды сәл жылжытыңыз.</translation>
 <translation id="3647998456578545569">{COUNT,plural, =1{<ph name="DEVICE_NAME" /> құрылғысынан <ph name="ATTACHMENTS" /> алынды.}other{<ph name="DEVICE_NAME" /> құрылғысынан <ph name="ATTACHMENTS" /> алынды.}}</translation>
@@ -2809,6 +2820,7 @@
 <translation id="368019053277764111">Бүйірлік панельде іздеу бетін ашу</translation>
 <translation id="3680683624079082902">Мәтінді дыбыстау дауысы</translation>
 <translation id="3681311097828166361">Пікіріңіз үшін рақмет. Қазір желіге қосылмағансыз, есебіңіз кейінірек жіберіледі.</translation>
+<translation id="3681548574519135185">Ерекшелеу шеңбері</translation>
 <translation id="3682824389861648626">Қозғалыс шегі</translation>
 <translation id="3683524264665795342"><ph name="APP_NAME" /> экран бөлісу сұрауы</translation>
 <translation id="3685598397738512288">Linux жүйесіндегі USB параметрлері</translation>
@@ -3108,6 +3120,7 @@
 <translation id="3948507072814225786"><ph name="ORIGIN" /> мына қалталардағы файлдарды өңдей алады.</translation>
 <translation id="394984172568887996">IE браузерінен импортталған</translation>
 <translation id="3950820424414687140">Кіру</translation>
+<translation id="3950841222883198950">Дауыспен теру</translation>
 <translation id="3953834000574892725">Аккаунттарым</translation>
 <translation id="3954354850384043518">Орындалуда</translation>
 <translation id="3954469006674843813"><ph name="WIDTH" /> x <ph name="HEIGHT" /> (<ph name="REFRESH_RATE" /> Герц)</translation>
@@ -3168,6 +3181,7 @@
 <translation id="3994878504415702912">&amp;Масштабтау</translation>
 <translation id="3995138139523574647">USB-C құрылғысы (оң жақ артқы порты)</translation>
 <translation id="3995963973192100066">Анимацияны ойнату</translation>
+<translation id="4001540981461989979">Жылжытқанда тінтуір курсорын бөлектеу</translation>
 <translation id="4002329649066944389">Сайттың арнайы ерекшеліктерін басқару</translation>
 <translation id="4002440992267487163">PIN кодын орнату</translation>
 <translation id="4005817994523282006">Уақыт белдеуін анықтау әдісі</translation>
@@ -3182,6 +3196,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Құрама туралы мәліметтерді көшіру</translation>
 <translation id="4021941025609472374">Сол жақтағы қойындыларды жабу</translation>
+<translation id="402211067068791756">Көрсетілген сайттарда сақталған <ph name="TOTAL_USAGE" /> дерек өшіріледі.</translation>
 <translation id="4022426551683927403">&amp;Сөздікке қосу</translation>
 <translation id="4025039777635956441">Таңдалған сайттағы дыбысты өшіру</translation>
 <translation id="4028467762035011525">Енгізу әдісін қосу</translation>
@@ -3400,6 +3415,7 @@
 <translation id="4252996741873942488"><ph name="WINDOW_TITLE" /> – қойынды мазмұны бөлісілген</translation>
 <translation id="4253168017788158739">Ескертпе</translation>
 <translation id="4253183225471855471">Желі табылмады. Әрекетті қайталамас бұрын, SIM картаңызды салып, құрылғыңызды өшіріп қосыңыз.</translation>
+<translation id="4254414375763576535">Үлкен меңзер</translation>
 <translation id="4254813446494774748">Аударма тілі:</translation>
 <translation id="425573743389990240">Батарея зарядының азаю жылдамдығы (теріс мән батарея зарядталып жатқандығын білдіреді)</translation>
 <translation id="4256316378292851214">Бейнені басқаша сақ&amp;тау…</translation>
@@ -3431,6 +3447,7 @@
 <translation id="4281844954008187215">Қызмет көрсету шарттары</translation>
 <translation id="4282196459431406533">Smart Lock қосулы</translation>
 <translation id="4284755288573763878">Жақсартылған қауіпсіздік өшірілсін бе?</translation>
+<translation id="4284903252249997120">ChromeVox экран оқу құралы және Select to Speak функциясы</translation>
 <translation id="4285418559658561636">Құпия сөзді жаңарту</translation>
 <translation id="4285498937028063278">Босату</translation>
 <translation id="428565720843367874">Бұл файлды тексеру кезінде антивирустық бағдарламалық жасақтама күптегенде сәтсіз аяқталды.</translation>
@@ -3550,6 +3567,7 @@
 <translation id="4400963414856942668">Қойындыға бетбелгі қою үшін жұлдызды басуыңызға болады.</translation>
 <translation id="4401912261345737180">Трансляциялау үшін код арқылы қосылыңыз</translation>
 <translation id="4402755511846832236">Сайттарды бөгеу арқылы олардың құрылғыны қашан белсенді пайдаланғаныңыз туралы ақпаратты алуына жол берілмейді.</translation>
+<translation id="4403012369005671154">Дауысты мәтінге айналдыру</translation>
 <translation id="4403266582403435904">Кез келген уақытта деректерді оңай қалпына келтіріңіз немесе басқа құрылғыға ауысыңыз. Сақтық көшірмелер Google-ға жүктеп салынады және балаңыздың Google аккаунты құпия сөзімен шифрланады.</translation>
 <translation id="4403775189117163360">Басқа қалта таңдаңыз</translation>
 <translation id="4404136731284211429">Қайта іздеу</translation>
@@ -3892,6 +3910,7 @@
 <translation id="4733161265940833579"><ph name="BATTERY_PERCENTAGE" />% (сол)</translation>
 <translation id="4733793249294335256">Орын</translation>
 <translation id="473546211690256853">Бұл аккаунтты <ph name="DOMAIN" /> басқарады</translation>
+<translation id="4735506354605317060">Меңзерді айналдыру</translation>
 <translation id="4735803855089279419">Жүйе бұл құрылғыға арналған идентификаторларды анықтай алмады.</translation>
 <translation id="4736292055110123391">Барлық құрылғыларда бетбелгілерді, құпия сөздерді, тарихты, т.б. синхрондау</translation>
 <translation id="473775607612524610">Жаңарту</translation>
@@ -3912,6 +3931,7 @@
 <translation id="4759202969060787081">Ашылмасын</translation>
 <translation id="4759238208242260848">Жүктеп алынғандар</translation>
 <translation id="4761104368405085019">Микрофоныңызды пайдалану</translation>
+<translation id="4762489666082647806">Меңзер түсі</translation>
 <translation id="4762718786438001384">Құрылғы дискінде бос орын тым аз қалды</translation>
 <translation id="4763408175235639573">Осы бетті ашқанда, мына cookie файлдары орнатылды</translation>
 <translation id="4765524037138975789">{MONTHS,plural, =1{Бұл құрылғы 1 ай сақталады және келесіде кодсыз қосыла аласыз. Оны әкімші орнатады.}other{Бұл құрылғы {MONTHS} ай сақталады және келесіде кодсыз қосыла аласыз. Оны әкімші орнатады.}}</translation>
@@ -4007,6 +4027,7 @@
 <translation id="485053257961878904">Хабарландыруларды синхрондау реттелмеді</translation>
 <translation id="4850886885716139402">Көрініс</translation>
 <translation id="485088796993065002">Музыкаға, бейнеге және басқа мультимедиаға арналған дыбысты сайттар қамтамасыз етуі мүмкін.</translation>
+<translation id="4852916668365817106">Курсор түсі</translation>
 <translation id="4853020600495124913">&amp;Жаңа терезеде ашу</translation>
 <translation id="4854317507773910281">Мақұлдау үшін ата-атаның аккаунтын таңдаңыз</translation>
 <translation id="485480310608090163">Басқа параметрлер мен рұқсаттар</translation>
@@ -4060,6 +4081,7 @@
 <translation id="4893522937062257019">Құлып экранында</translation>
 <translation id="4897496410259333978">Толығырақ ақпарат алу үшін әкімшіге хабарласыңыз.</translation>
 <translation id="4898011734382862273">"<ph name="CERTIFICATE_NAME" />" сертификаты сертификат беру органын көрсетеді</translation>
+<translation id="4899052647152077033">Түсін кетіру</translation>
 <translation id="4899696330053002588">Жарнама бар</translation>
 <translation id="489985760463306091">Зиян бағдарламалық құралды өшіруді аяқтау үшін компьютеріңізді қайта іске қосыңыз</translation>
 <translation id="4900392736118574277">Іске қосу беті <ph name="URL" /> мекенжайына өзгерді.</translation>
@@ -4551,6 +4573,7 @@
 <translation id="5414566801737831689">Сіз кірген веб-сайттардың белгішелерін оқу</translation>
 <translation id="5414836363063783498">Расталуда…</translation>
 <translation id="5417312524372586921">Браузер тақырыптары</translation>
+<translation id="541737483547792035">Экранды ұлғайту</translation>
 <translation id="5419405654816502573">Voice Match</translation>
 <translation id="5420274697768050645">Қосымша қауіпсіздік үшін құрылғының құлпын ашатын құпия сөзді сұрау</translation>
 <translation id="5420438158931847627">Мәтін мен суреттердің анықтығын белгілейді</translation>
@@ -4596,6 +4619,7 @@
 <translation id="5459864179070366255">Орнату үшін жалғастыру</translation>
 <translation id="5461050611724244538">Телефоныңызбен байланыс үзілді</translation>
 <translation id="5463275305984126951"><ph name="LOCATION" /> индексі</translation>
+<translation id="5463450804024056231"><ph name="DEVICE_TYPE" /> туралы электрондық хаттар алуға тіркелу</translation>
 <translation id="5463625433003343978">Құрылғылар ізделуде...</translation>
 <translation id="5463845647891602726">Орын босату үшін құрылғыдан файлдарды жойыңыз.</translation>
 <translation id="5463856536939868464">Жасырын бетбелгілерді қамтитын мәзір</translation>
@@ -4744,6 +4768,7 @@
 <translation id="5588033542900357244">(<ph name="RATING_COUNT" />)</translation>
 <translation id="558918721941304263">Қолданбаларды жүктеу…</translation>
 <translation id="5592595402373377407">Қол жетімді деректер әлі жеткілікті емес.</translation>
+<translation id="5595307023264033512">Сайттар пайдаланатын жалпы жад көлемі: <ph name="TOTAL_USAGE" /></translation>
 <translation id="5595485650161345191">Мекенжайды өзгерту</translation>
 <translation id="5596627076506792578">Қосымша опциялар</translation>
 <translation id="5600348067066185292">Орнату бірнеше қарапайым қадамнан тұрады. Компьютерге өзгерістер енгізбестен бұрын, оларды растаудың тағы бір мүмкіндігі болады.</translation>
@@ -4944,6 +4969,7 @@
 <translation id="5801568494490449797">Параметрлер</translation>
 <translation id="5804241973901381774">Рұқсаттар</translation>
 <translation id="5805697420284793859">Терезе менеджері</translation>
+<translation id="5806447147478173900">Көрсетілген сайттар пайдаланатын жалпы жад көлемі: <ph name="TOTAL_USAGE" /></translation>
 <translation id="5806773519584576205">0° (Әдепкі)</translation>
 <translation id="5810809306422959727">Бұл аккаунт ата-ана бақылауына жарамайды</translation>
 <translation id="5811614940486072060">Әдетте жүктеп алынбайтындықтан, бұл файл қауіпті болуы мүмкін.</translation>
@@ -4960,6 +4986,7 @@
 <translation id="5827733057563115968">Келесі сөзді болжау</translation>
 <translation id="5828545842856466741">Профиль қосу…</translation>
 <translation id="5828633471261496623">Басып шығару…</translation>
+<translation id="5828797982387013521">Нұсқаулықты таңдау</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> қолданбасын ашу мүмкін емес</translation>
 <translation id="5830720307094128296">Бетті &amp;басқаша сақтау…</translation>
 <translation id="5832813618714645810">Профильдер</translation>
@@ -5050,6 +5077,7 @@
 
   Ортақ көрсеткіш (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> бит):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Автоматты оқу</translation>
 <translation id="5916664084637901428">Қосулы</translation>
 <translation id="59174027418879706">Қосылған</translation>
 <translation id="5920543303088087579">Әкімшіңіз бұл желіге қосылу мүмкіндігін өшіріп қойған</translation>
@@ -5334,6 +5362,7 @@
 <translation id="6200151268994853226">Кеңейтімді басқару</translation>
 <translation id="6201608810045805374">Бұл аккаунт өшірілсін бе?</translation>
 <translation id="6202304368170870640">Құрылғыларға кіру немесе құлпын ашу үшін PIN кодыңызды пайдалануыңызға болады.</translation>
+<translation id="6206199626856438589">Көрсетілген сайттардан, оның ішінде ашық қойындылардан шығарыласыз.</translation>
 <translation id="6206311232642889873">Кескінді көші&amp;ру</translation>
 <translation id="6207200176136643843">Әдепкі масштабтау деңгейін қайтару</translation>
 <translation id="6207937957461833379">Ел/аймақ</translation>
@@ -5619,6 +5648,7 @@
 <translation id="6474884162850599008">Google Drive аккаунтын ажырату</translation>
 <translation id="6475294023568239942">Дискіден орын босатыңыз немесе "Параметрлер" бөлімінен Linux дискісінің өлшемін өзгертіңіз.</translation>
 <translation id="6476138569087741884">Толық экран масштабы</translation>
+<translation id="6476482583633999078">Сөйлеу жылдамдығы</translation>
 <translation id="6477822444490674459">Жұмыс профиліндегі телефондар үшін хабарландыруларды синхрондауға қолдау көрсетілмейді. <ph name="LINK_BEGIN" />Толығырақ<ph name="LINK_END" /></translation>
 <translation id="6478248366783946499">Қауіпті файл сақталсын ба?</translation>
 <translation id="6480327114083866287"><ph name="MANAGER" /> басқарады</translation>
@@ -5879,6 +5909,7 @@
 <translation id="6733620523445262364">"<ph name="BOOKMARK_TITLE" />" бетбелгісі жасалды.</translation>
 <translation id="6735304988756581115">Cookie файлдары мен басқа сайт деректерін көрсету…</translation>
 <translation id="6736243959894955139">Мекенжай</translation>
+<translation id="6737393581255281855">Көрсетілген деректі өшіру керек пе?</translation>
 <translation id="6737663862851963468">Kerberos билетін өшіру</translation>
 <translation id="6738430949033571771">Аккаунт расталуда...</translation>
 <translation id="6739923123728562974">Жұмыс үстелі таңбашасын көрсету</translation>
@@ -5895,6 +5926,7 @@
 <translation id="6750757184909117990">Ұялы байланыс желісін өшіру</translation>
 <translation id="6751344591405861699"><ph name="WINDOW_TITLE" /> (Инкогнито)</translation>
 <translation id="6756157672127672536">Files қолданбасы Google Drive қызметінде, сыртқы жадта немесе ChromeOS құрылғысында сақталған файлдарыңызға жылдам кіруге мүмкіндік береді.</translation>
+<translation id="6756643207511618722">Дауыстап оқу модульдері</translation>
 <translation id="6758056191028427665">Қал-жағдайыңызды айтып беріңіз.</translation>
 <translation id="6759193508432371551">Зауыттық параметрлерге қайта орнату</translation>
 <translation id="6761431452438552910">Bluetooth құрылғыңыз жұптау режимінде және маңайда болсын. Сенімді құрылғылармен ғана жұптаңыз.</translation>
@@ -6043,6 +6075,7 @@
 <translation id="6889957081990109136">Ауыстырғыш әлі тағайындалған жоқ.</translation>
 <translation id="689007770043972343">Топқа басқа ашық қойындыларды сүйреп көріңіз.</translation>
 <translation id="6892812721183419409">Сілтемені <ph name="USER" /> ретінде ашу</translation>
+<translation id="6893164346922798247">eSpeak</translation>
 <translation id="6895032998810961280">Google жүйесіне тазалау кезінде компьютерден табылған зиянды бағдарламалық құрал, жүйе параметрлері және процестер туралы ақпарат беріңіз.</translation>
 <translation id="6896758677409633944">Көшіру</translation>
 <translation id="6897363604023044284">Өшірілетін сайт деректерін таңдау</translation>
@@ -6110,6 +6143,7 @@
 <translation id="6960507406838246615">Linux жүйесін жаңарту қажет.</translation>
 <translation id="6960648667961844909">Тіл файлдары (<ph name="LANGUAGE" />) жүктеп алынбады. Жүктеп алу кейінірек қайталанады. Жүктеп алу аяқталғанша, айтылған сөз оны өңдеу үшін Google-ға жіберілді.</translation>
 <translation id="696103774840402661"><ph name="DEVICE_TYPE" /> құрылғысындағы барлық пайдаланушының файлдары мен жергілікті деректері біржола жойылды.</translation>
+<translation id="6963872466817251924">Мәтін курсорын бөлектеу құралы</translation>
 <translation id="6964390816189577014">Қаһарман</translation>
 <translation id="6964760285928603117">Топтан өшіру</translation>
 <translation id="6965382102122355670">Жарайды</translation>
@@ -6309,6 +6343,7 @@
 <translation id="7160182524506337403">Енді телефондағы хабарландыруларды көре аласыз</translation>
 <translation id="7163202347044721291">Белсендіру коды расталуда...</translation>
 <translation id="716640248772308851">"<ph name="EXTENSION" />" кеңейтімі таңдалған орындардағы кескіндерді, бейнені және дыбыстық файлдарды оқи алады.</translation>
+<translation id="7167327771183668296">Автоматты түрде басу әрекеттері</translation>
 <translation id="7167486101654761064">&amp;Түрі осындай файлдарды әрқашан ашу</translation>
 <translation id="716775164025088943">Бетбелгілер, тарих, құпия сөздер және т. б. бұдан былай синхрондалмайды.</translation>
 <translation id="716810439572026343"><ph name="FILE_NAME" /> жүктеу</translation>
@@ -7166,6 +7201,7 @@
 <translation id="7988355189918024273">Арнайы мүмкіндіктерді қосу</translation>
 <translation id="7988805580376093356">Ағымдағы операциялық жүйені қалдырып, USB арқылы <ph name="DEVICE_OS" /> қосу.</translation>
 <translation id="7991296728590311172">Switch Access параметрлері</translation>
+<translation id="7992203134935383159">Сөз синтезі</translation>
 <translation id="7997826902155442747">Өңдеу басымдығы</translation>
 <translation id="7999229196265990314">Келесі файлдар жасалды:
 
@@ -7399,6 +7435,7 @@
 <translation id="8213449224684199188">Фото режимі қосылды</translation>
 <translation id="8214489666383623925">Файлды ашу…</translation>
 <translation id="8215129063232901118">Телефоныңыздың мүмкіндіктерін <ph name="DEVICE_TYPE" /> құрылғысынан пайдалану</translation>
+<translation id="8217212468862726597">Меңзерді бөлектеу</translation>
 <translation id="8217399928341212914">Бірнеше файлды автоматты жүктеуге салынған тыйымды сақтау</translation>
 <translation id="822050276545350872">Осы сәттен бастап күтудің қажеті жоқ</translation>
 <translation id="8221491193165283816">Әдетте хабарландыруларға тыйым саласыз. Осы сайттың сізге хабарландыру жіберуіне рұқсат ету үшін осы жерді басыңыз.</translation>
@@ -7550,6 +7587,7 @@
 <translation id="8366396658833131068">Желіге қосылу мүмкіндігіңіз қалпына келтірілді. Киоск қолданбасын іске қосу үшін басқа желіні пайдаланыңыз не төмендегі "Жалғастыру" түймесін басыңыз.</translation>
 <translation id="8366694425498033255">Таңдау пернелері</translation>
 <translation id="8368859634510605990">&amp;Барлық бетбелгілерді ашу</translation>
+<translation id="8369028061188107403">Көрсетілген сайттарда және орнатылған қолданбаларда сақталған <ph name="TOTAL_USAGE" /> дерек өшіріледі.</translation>
 <translation id="8370294614544004647">Ноутбук жабылғанда, ұйқы режиміне өту</translation>
 <translation id="8371695176452482769">Айта беріңіз</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Сайттың дыбысын өшіру}other{Сайттардың дыбысын өшіру}}</translation>
@@ -7955,6 +7993,7 @@
 <ph name="DOMAIN" /> домені смарт картаңызды салып жүруіңізді талап етеді.}}</translation>
 <translation id="8776294611668764629">Бұл файл қауіпсіздік тексерісі үшін тым үлкен болғандықтан, ұйымыңыз оны бөгеді. 50 MБ-қа дейінгі файлдарды аша аласыз.</translation>
 <translation id="8777628254805677039">түбірлік құпия сөз</translation>
+<translation id="8778393144535275552">Көрсетілген деректерді өшіру</translation>
 <translation id="8779944680596936487">Сайттар cookie файлдарды тек өз сайттарындағы браузерді қолдану мәліметіңізді көру үшін қолдана алады.</translation>
 <translation id="8780123805589053431">Google-дан кескін сипаттамаларын алу</translation>
 <translation id="8780443667474968681">Дауыспен іздеу өшірілген.</translation>
@@ -8433,6 +8472,7 @@
 <translation id="957960681186851048">Бұл сайт бірнеше файлды автоматты түрде жүктеп алғысы келді</translation>
 <translation id="960987915827980018">Шамамен 1 сағат қалды</translation>
 <translation id="962802172452141067">Бетбелгі қалтасының құрылымы</translation>
+<translation id="963000966785016697">Суретті <ph name="VISUAL_SEARCH_PROVIDER" /> көмегімен іздеу</translation>
 <translation id="964286338916298286">Әкімшіңіз құрылғыңызда Chrome Goodies мүмкіндігін өшірді.</translation>
 <translation id="964439421054175458">{NUM_APLLICATIONS,plural, =1{Қолданба}other{Қолданбалар}}</translation>
 <translation id="964790508619473209">Экранды реттеу</translation>
@@ -8449,6 +8489,7 @@
 <translation id="971774202801778802">Бетбелгі URL мекенжайы</translation>
 <translation id="972996901592717370">Қуат түймесін саусағыңызбен түртіңіз. Деректер қауіпсіз сақталады және <ph name="DEVICE_TYPE" /> құрылғысынан басқа ешқайда жіберілмейді.</translation>
 <translation id="973473557718930265">Шығу</translation>
+<translation id="973558314812359997">Курсор көлемі</translation>
 <translation id="975893173032473675">Аударма тілі</translation>
 <translation id="976499800099896273"><ph name="TYPED_WORD" /> деп теріліп, <ph name="CORRECTED_WORD" /> деп түзетілген сөз үшін автоматты түзетуден бас тарту диалогтік терезесі көрсетілді.  Оны қолдану үшін жоғары бағыттауыш пернені, ал елемеу үшін Escape пернесін басыңыз.</translation>
 <translation id="978146274692397928">Бастапқы пунктуация ені – толық</translation>
diff --git a/chrome/app/resources/generated_resources_ky.xtb b/chrome/app/resources/generated_resources_ky.xtb
index 0d60970b..b5763caa 100644
--- a/chrome/app/resources/generated_resources_ky.xtb
+++ b/chrome/app/resources/generated_resources_ky.xtb
@@ -218,6 +218,7 @@
 <translation id="1197199342062592414">Баштадык</translation>
 <translation id="11978075283960463">Колдонмодо сакталган дайын-даректер: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Өчүрүп коюу</translation>
+<translation id="1198066799963193307">Көзү начар көргөн адамдар үчүн кеп синтезаторунун куралдары</translation>
 <translation id="119944043368869598">Баарын тазалоо</translation>
 <translation id="1199814941632954229">Бул профилдер үчүн тастыктамалар берилүүдө</translation>
 <translation id="120069043972472860">Көрүүгө мүмкүн эмес</translation>
@@ -1511,6 +1512,7 @@
 <translation id="2371076942591664043">Бүткөндө &amp;ачуу</translation>
 <translation id="2373666622366160481">Баракка чактоо</translation>
 <translation id="2375406435414127095">Телефонуңузга туташтырыңыз</translation>
+<translation id="2376056713414548745">Үндү чыгарып окуу</translation>
 <translation id="2377588536920405462">Түзмөктөгү негизги Жайгашкан жерди аныктоо кызматы өчүрүлгөндө, бул түзмөктүн жайгашкан жери аныкталбай калат. Ошондой эле Wi Fi, мобилдик тармактарды, жайгашкан жер сенсорлорун жайгаштыруу жөндөөлөрүнөн өчүрсөңүз болот.</translation>
 <translation id="2377667304966270281">Татаал бузулуулар</translation>
 <translation id="237828693408258535">Бул баракча которулсунбу?</translation>
@@ -2339,6 +2341,7 @@
 <translation id="3163511056918491211">Түзмөгүңүздөгү дайын-даректерди оңой калыбына келтирип, аларды каалаган убакта жаңы телефонуңузга өткөрүп аласыз. Камдык көчүрмөлөрүңүз Google'га жүктөлүп берилип, Google аккаунтуңуздун сырсөзү менен шифрленет.</translation>
 <translation id="3164329792803560526">Бул өтмөк <ph name="APP_NAME" /> менен бөлүшүлүүдө</translation>
 <translation id="3165390001037658081">Айрым операторлор бул функцияны бөгөттөп коюшу мүмкүн.</translation>
+<translation id="3169930038976362151">Өзүңүзгө ыңгайлуу теманы тандаңыз. Теманы, тушкагазды, көшөгөнү жана башкаларды өзгөртүү үчүн жөн гана иш тактада коё бербей басып туруңуз.</translation>
 <translation id="3170072451822350649">Кирбей туруп, <ph name="LINK_START" />Конок катары серептесеңиз болот<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Сол жакка жаңы өтмөк кошуу</translation>
 <translation id="3177909033752230686">Баракчанын тили:</translation>
@@ -3212,6 +3215,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Версиянын чоо-жайын көчүрүү</translation>
 <translation id="4021941025609472374">Өтмөктөрдү сол жакка карай жабуу</translation>
+<translation id="402211067068791756">Ушуну менен көрсөтүлгөн сайттар ээлеп турган <ph name="TOTAL_USAGE" /> орун бошотулат</translation>
 <translation id="4022426551683927403">Сөздүккө &amp;кошуу</translation>
 <translation id="4025039777635956441">Тандалган сайттын үнүн басуу</translation>
 <translation id="4028467762035011525">Киргизүү ыкмаларын кошуу</translation>
@@ -3462,6 +3466,7 @@
 <translation id="4281844954008187215">Тейлөө шарттары</translation>
 <translation id="4282196459431406533">Smart Lock күйгүзүлгөн</translation>
 <translation id="4284755288573763878">Өркүндөтүлгөн коопсуздук өчүрүлсүнбү?</translation>
+<translation id="4284903252249997120">ChromeVox экрандагыны окугучу жана "басып туруп угуңуз" функциясы</translation>
 <translation id="4285418559658561636">Сырсөздү жаңыртуу</translation>
 <translation id="4285498937028063278">Бошотуу</translation>
 <translation id="428565720843367874">Бул файл сканерленип жатканда, антивирус программасы күтүүсүздөн үзгүлтүккө учурады.</translation>
@@ -5003,6 +5008,7 @@
 <translation id="5827733057563115968">Кийинки сөздү божомолдоо</translation>
 <translation id="5828545842856466741">Профиль кошуу...</translation>
 <translation id="5828633471261496623">Басып чыгарууда…</translation>
+<translation id="5828797982387013521">Оку куралын тандоо</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> колдонмосу ачылбай жатат</translation>
 <translation id="5830720307094128296">Бетти &amp;төмөнкүдөй сактоо…</translation>
 <translation id="5832813618714645810">Профилдер</translation>
@@ -5093,6 +5099,7 @@
 
   Ачык экспонент (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> бит):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Автоматтык түрдө окуу</translation>
 <translation id="5916664084637901428">Күйүк</translation>
 <translation id="59174027418879706">Иштетилген</translation>
 <translation id="5920543303088087579">Бул тармакка туташуу администраторуңуз тарабынан өчүрүлгөн</translation>
@@ -5378,6 +5385,7 @@
 <translation id="6200151268994853226">Кеңейтүүнү башкаруу</translation>
 <translation id="6201608810045805374">Бул аккаунтту өчүрөсүзбү?</translation>
 <translation id="6202304368170870640">Түзмөгүңүзгө кирүү же кулпусун ачуу үчүн PIN кодуңузду колдонсоңуз болот.</translation>
+<translation id="6206199626856438589">Көрсөтүлгөн сайттардан, анын ичинде ачылып турган өтмөктөрдөн чыгарыласыз</translation>
 <translation id="6206311232642889873">Сүрөттү көчү&amp;рүү</translation>
 <translation id="6207200176136643843">Чоңойтуп/кичирейтүү деңгээлин баштапкы абалга келтирүү</translation>
 <translation id="6207937957461833379">Өлкө / Дубан</translation>
@@ -5924,6 +5932,7 @@
 <translation id="6733620523445262364">"<ph name="BOOKMARK_TITLE" />" түзүлдү.</translation>
 <translation id="6735304988756581115">Кукилерди жана башка сайт дайындарын көрсөтүү…</translation>
 <translation id="6736243959894955139">Дареги</translation>
+<translation id="6737393581255281855">Көрсөтүлгөн маалыматты тазалайсызбы?</translation>
 <translation id="6737663862851963468">Kerberos билетин алып салуу</translation>
 <translation id="6738430949033571771">Аккаунт текшерилүүдө...</translation>
 <translation id="6739923123728562974">Иш тактадагы кыска жолду көрсөтүү</translation>
@@ -7216,6 +7225,7 @@
 <translation id="7988355189918024273">Атайын мүмкүнчүлүктөр иштетилсин</translation>
 <translation id="7988805580376093356">OS тутумуңузду өчүрбөй туруп, <ph name="DEVICE_OS" /> тутумун USB түзмөгүнөн иштетиңиз.</translation>
 <translation id="7991296728590311172">Switch Access жөндөөлөрү</translation>
+<translation id="7992203134935383159">Кепти синтездөө</translation>
 <translation id="7997826902155442747">Процесстин артыкчылыгы</translation>
 <translation id="7999229196265990314">Төмөнкү файлдарды түздү:
 
@@ -7601,6 +7611,7 @@
 <translation id="8366396658833131068">Тармагыңыздын туташуу жөндөмү калыбына келтирилди. Киоск колдонмоңузду ишке киргизүү үчүн, башка тармак тандаңыз же төмөнкү 'Улантуу' баскычын басыңыз.</translation>
 <translation id="8366694425498033255">Тандоо ачкычтары</translation>
 <translation id="8368859634510605990">Бардык кыстармаларды &amp;ачуу</translation>
+<translation id="8369028061188107403">Ушуну менен көрсөтүлгөн сайттар менен орнотулган колдонмолор ээлеп турган <ph name="TOTAL_USAGE" /> орун бошотулат</translation>
 <translation id="8370294614544004647">Ноутбук жабылып турганда уйку режимине өтүү</translation>
 <translation id="8371695176452482769">Сүйлөңүз</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Сайттын үнүн басуу}other{Сайттардын үнүн басуу}}</translation>
diff --git a/chrome/app/resources/generated_resources_lv.xtb b/chrome/app/resources/generated_resources_lv.xtb
index e51ccfc..7d5d5bc 100644
--- a/chrome/app/resources/generated_resources_lv.xtb
+++ b/chrome/app/resources/generated_resources_lv.xtb
@@ -218,6 +218,7 @@
 <translation id="1197199342062592414">Sāksim darbu!</translation>
 <translation id="11978075283960463">Lietotnē glabātie dati: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Deaktivizēt</translation>
+<translation id="1198066799963193307">Runas rīki personām ar vājredzību</translation>
 <translation id="119944043368869598">Notīrīt visu</translation>
 <translation id="1199814941632954229">Tiek nodrošināti sertifikāti šiem sertifikātu profiliem:</translation>
 <translation id="120069043972472860">Video nav skatāms</translation>
@@ -1498,6 +1499,7 @@
 <translation id="2371076942591664043">Atvērt, kad esat beidzis</translation>
 <translation id="2373666622366160481">Ietilpināt lapā</translation>
 <translation id="2375406435414127095">Savienošana ar tālruni</translation>
+<translation id="2376056713414548745">Lasīšana skaļi</translation>
 <translation id="2377588536920405462">Varat izslēgt atrašanās vietas noteikšanu, savā ierīcē izslēdzot galveno atrašanās vietas noteikšanas iestatījumu. Atrašanās vietas iestatījumos varat arī izslēgt Wi‑Fi, mobilo tīklu un sensoru izmantošanu atrašanās vietas noteikšanai.</translation>
 <translation id="2377667304966270281">Nopietnas kļūdas</translation>
 <translation id="237828693408258535">Vai tulkot šo lapu?</translation>
@@ -2326,6 +2328,7 @@
 <translation id="3163511056918491211">Varat jebkurā laikā ērti atjaunot datus vai nomainīt ierīci. Jūsu dublējumi tiek augšupielādēti Google serveros un šifrēti, izmantojot jūsu Google konta paroli.</translation>
 <translation id="3164329792803560526">Šī cilne tiek kopīgota lietotnē <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">Daļa mobilo sakaru operatoru var bloķēt šo funkciju.</translation>
+<translation id="3169930038976362151">Izvēlieties savām vajadzībām atbilstošu motīvu. Lai mainītu motīvu, fona tapeti, ekrānsaudzētāju un citus iestatījumus, vienkārši pieskarieties un turiet darbvirsmā.</translation>
 <translation id="3170072451822350649">Varat arī izlaist pierakstīšanos un <ph name="LINK_START" />veikt pārlūkošanu kā viesis<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Jauna cilne pa kreisi</translation>
 <translation id="3177909033752230686">Lapas valoda:</translation>
@@ -3199,6 +3202,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Kopēt versijas informāciju</translation>
 <translation id="4021941025609472374">Aizvērt cilnes pa kreisi</translation>
+<translation id="402211067068791756">Tādējādi tiks notīrīti <ph name="TOTAL_USAGE" /> datu, kas tiek glabāti parādītajās vietnēs.</translation>
 <translation id="4022426551683927403">Pievienot vārdnīc&amp;ai</translation>
 <translation id="4025039777635956441">Izslēgt skaņu atlasītajai vietnei</translation>
 <translation id="4028467762035011525">Pievienot ievades metodes</translation>
@@ -3449,6 +3453,7 @@
 <translation id="4281844954008187215">Google pakalpojumu noteikumi</translation>
 <translation id="4282196459431406533">Smart Lock ir ieslēgta</translation>
 <translation id="4284755288573763878">Vai izslēgt uzlaboto aizsardzību?</translation>
+<translation id="4284903252249997120">ChromeVox ekrāna lasītājs un funkcija “Atlasīt, lai izrunātu”</translation>
 <translation id="4285418559658561636">Atjaunināt paroli</translation>
 <translation id="4285498937028063278">Atspraust</translation>
 <translation id="428565720843367874">Šī faila pārbaudes laikā radās neparedzēta pretvīrusu programmatūras kļūda.</translation>
@@ -4987,6 +4992,7 @@
 <translation id="5827733057563115968">Nākamā vārda paredzēšana</translation>
 <translation id="5828545842856466741">Pievienot profilu...</translation>
 <translation id="5828633471261496623">Notiek drukāšana...</translation>
+<translation id="5828797982387013521">Atlasīt rokasgrāmatu</translation>
 <translation id="5830205393314753525">Nevar atvērt lietotni <ph name="APP_NAME" /></translation>
 <translation id="5830720307094128296">S&amp;aglabāt lapu kā...</translation>
 <translation id="5832813618714645810">Profili</translation>
@@ -5077,6 +5083,7 @@
 
   Publiskais eksponents (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> biti):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Automātiska lasīšana</translation>
 <translation id="5916664084637901428">Iesl.</translation>
 <translation id="59174027418879706">Iespējots</translation>
 <translation id="5920543303088087579">Jūsu administrators atspējoja savienojuma izveidi ar šo tīklu.</translation>
@@ -5361,6 +5368,7 @@
 <translation id="6200151268994853226">Pārvaldīt paplašinājumu</translation>
 <translation id="6201608810045805374">Vai noņemt šo kontu?</translation>
 <translation id="6202304368170870640">Varat izmantot PIN kodu, lai pierakstītos vai atbloķētu savu ierīci.</translation>
+<translation id="6206199626856438589">Jūs tiksiet izrakstīts no parādītajām vietnēm, tostarp atvērtajās cilnēs.</translation>
 <translation id="6206311232642889873">Kopēt &amp;attēlu</translation>
 <translation id="6207200176136643843">Atiestatīt noklusējuma tālummaiņas līmeni</translation>
 <translation id="6207937957461833379">Valsts/reģions</translation>
@@ -5911,6 +5919,7 @@
 <translation id="6733620523445262364">Izveidota grāmatzīme <ph name="BOOKMARK_TITLE" />.</translation>
 <translation id="6735304988756581115">Rādīt sīkfailus un citus vietņu datus...</translation>
 <translation id="6736243959894955139">Adrese</translation>
+<translation id="6737393581255281855">Vai notīrīt parādīto vietņu datus?</translation>
 <translation id="6737663862851963468">Kerberos biļetes noņemšana</translation>
 <translation id="6738430949033571771">Notiek konta verifikācija…</translation>
 <translation id="6739923123728562974">Rādīt darbvirsmas saīsni</translation>
@@ -7202,6 +7211,7 @@
 <translation id="7988355189918024273">Iespējot pieejamības funkcijas</translation>
 <translation id="7988805580376093356">Saglabājiet esošo operētājsistēmu un palaidiet operētājsistēmu <ph name="DEVICE_OS" /> no USB diska.</translation>
 <translation id="7991296728590311172">Slēdžu piekļuves iestatījumi</translation>
+<translation id="7992203134935383159">Runas sintēze</translation>
 <translation id="7997826902155442747">Procesa prioritāte</translation>
 <translation id="7999229196265990314">Tika izveidoti šādi faili:
 
@@ -7588,6 +7598,7 @@
 <translation id="8366396658833131068">Tīkla savienojums ir atjaunots. Lūdzu, atlasiet citu tīklu vai nospiediet tālāk esošo pogu “Turpināt”, lai palaistu savu kioska lietotni.</translation>
 <translation id="8366694425498033255">Izvēles taustiņi</translation>
 <translation id="8368859634510605990">&amp;Atvērt visas grāmatzīmes</translation>
+<translation id="8369028061188107403">Tādējādi tiks notīrīti <ph name="TOTAL_USAGE" /> datu, kas tiek glabāti parādītajās vietnēs un instalētajās lietotnēs.</translation>
 <translation id="8370294614544004647">Miega režīma ieslēgšana, aizverot klēpjdatoru</translation>
 <translation id="8371695176452482769">Runājiet tūlīt</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Nerādīt vietni}zero{Nerādīt vietnes}one{Nerādīt vietnes}other{Nerādīt vietnes}}</translation>
diff --git a/chrome/app/resources/generated_resources_mr.xtb b/chrome/app/resources/generated_resources_mr.xtb
index c209c625..404106a 100644
--- a/chrome/app/resources/generated_resources_mr.xtb
+++ b/chrome/app/resources/generated_resources_mr.xtb
@@ -218,6 +218,7 @@
 <translation id="1197199342062592414">आता सुरू करूया</translation>
 <translation id="11978075283960463">अ‍ॅपमध्ये स्टोअर केलेला डेटा: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">डीॲक्टिव्हेट करा</translation>
+<translation id="1198066799963193307">दृष्टिदोष असणाऱ्यांसाठी स्पीच टूल</translation>
 <translation id="119944043368869598">सर्व साफ करा</translation>
 <translation id="1199814941632954229">या सर्टिफिकेट प्रोफाइलसाठी सर्टिफिकेटची तरतूद केली जात आहे</translation>
 <translation id="120069043972472860">पाहण्यायोग्य नाही</translation>
@@ -1510,6 +1511,7 @@
 <translation id="2371076942591664043">&amp;पूर्ण झाल्यानंतर उघडा</translation>
 <translation id="2373666622366160481">कागदाच्या आकारात बसवा</translation>
 <translation id="2375406435414127095">तुमच्या फोनशी कनेक्ट करा</translation>
+<translation id="2376056713414548745">मोठ्‍याने वाचा</translation>
 <translation id="2377588536920405462">तुमच्या डिव्हाइसवर मुख्य स्थान सेटिंग बंद करून तुम्ही स्थान बंद करू शकता. तुम्ही स्थान सेटिंग्जमध्ये स्थानासाठी वाय-फाय, मोबाइल नेटवर्क आणि सेन्सरचा वापरदेखील बंद करू शकता.</translation>
 <translation id="2377667304966270281">हार्ड फॉल्ट</translation>
 <translation id="237828693408258535">या पेजचे भाषांतर करायचे?</translation>
@@ -2338,6 +2340,7 @@
 <translation id="3163511056918491211">तुमचा डेटा सहजरीत्‍या रिस्टोअर करा किंवा डिव्हाइस कधीही स्विच करा. तुमचे बॅकअप Google वर अपलोड केले जातात आणि तुमचा Google खाते पासवर्ड वापरून एंक्रिप्ट केले जातात.</translation>
 <translation id="3164329792803560526"><ph name="APP_NAME" /> यावर हा टॅब शेअर करत आहे</translation>
 <translation id="3165390001037658081">काही वाहक हे वैशिष्ट्य ब्लॉक करू शकतात.</translation>
+<translation id="3169930038976362151">तुमच्या आवश्यकतांची पूर्तता करणारी थीम निवडा. तुमची थीम, वॉलपेपर, स्क्रीन सेव्हर आणि आणखी बरेच काही बदलण्यासाठी, डेस्कटॉपवर फक्त स्पर्श करून धरून ठेवा.</translation>
 <translation id="3170072451822350649">तुम्ही साइन इन वगळुन <ph name="LINK_START" />अतिथी म्हणून ब्राउझ<ph name="LINK_END" /> देखील करू शकता.</translation>
 <translation id="31774765611822736">डावीकडील नवीन टॅब</translation>
 <translation id="3177909033752230686">पृष्ठ भाषा:</translation>
@@ -3211,6 +3214,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">बिल्डसंबंधित तपशील कॉपी करा</translation>
 <translation id="4021941025609472374">डावीकडील टॅब बंद करा</translation>
+<translation id="402211067068791756">यामुळे प्रदर्शित केलेल्या साइटनी स्टोअर केलेला <ph name="TOTAL_USAGE" /> डेटा साफ होईल</translation>
 <translation id="4022426551683927403">शब्दकोशात &amp;जोडा</translation>
 <translation id="4025039777635956441">निवडलेली साइट म्यूट करा</translation>
 <translation id="4028467762035011525">इनपुट पद्धती जोडा</translation>
@@ -3459,6 +3463,7 @@
 <translation id="4281844954008187215">सेवा अटी</translation>
 <translation id="4282196459431406533">Smart Lock सुरू आहे</translation>
 <translation id="4284755288573763878">वर्धित सुरक्षा बंद करायची का?</translation>
+<translation id="4284903252249997120">ChromeVox स्क्रीन रीडर आणि बोलण्यासाठी निवडा</translation>
 <translation id="4285418559658561636">पासवर्ड अपडेट करा</translation>
 <translation id="4285498937028063278">अनपिन</translation>
 <translation id="428565720843367874">या फाईलचे स्कॅनिंग करताना अँटी-व्हायरस सॉफ्टवेअर अनपेक्षितपणे अयशस्वी झाले.</translation>
@@ -5000,6 +5005,7 @@
 <translation id="5827733057563115968">पुढील शब्दांचा अंदाज</translation>
 <translation id="5828545842856466741">प्रोफाइल जोडा…</translation>
 <translation id="5828633471261496623">प्रिंट करत आहे...</translation>
+<translation id="5828797982387013521">प्लेबुक निवडा</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> उघडू शकत नाही</translation>
 <translation id="5830720307094128296">पेज या फॉरमॅटमध्ये सेव्ह करा...</translation>
 <translation id="5832813618714645810">प्रोफाइल</translation>
@@ -5090,6 +5096,7 @@
 
   सार्वजनिक एक्सपोनेंट (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> बिट):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">ऑटोमॅटिक वाचन</translation>
 <translation id="5916664084637901428">सुरू</translation>
 <translation id="59174027418879706">सक्षम</translation>
 <translation id="5920543303088087579">तुमच्या ॲडमिनिस्ट्रेटरने या नेटवर्कशी कनेक्‍ट करणे अक्षम केले आहे</translation>
@@ -5376,6 +5383,7 @@
 <translation id="6200151268994853226">एक्स्टेंशन व्यवस्थापित करा</translation>
 <translation id="6201608810045805374">हे खाते काढून टाकायचे आहे का?</translation>
 <translation id="6202304368170870640">तुमच्या डिव्हाइसमध्ये साइन इन करण्यासाठी किंवा ते अनलॉक करण्यासाठी तुम्ही तुमचा पिन वापरू शकता.</translation>
+<translation id="6206199626856438589">प्रदर्शित केलेल्या साइटमधून तुम्हाला साइन आउट केले जाईल, ज्यामध्ये उघड्या टॅबचा समावेश आहे</translation>
 <translation id="6206311232642889873">इमेज कॉ&amp;पी करा</translation>
 <translation id="6207200176136643843">झूम स्तर डीफॉल्टवर रीसेट करा</translation>
 <translation id="6207937957461833379">देश/प्रदेश</translation>
@@ -5922,6 +5930,7 @@
 <translation id="6733620523445262364">'<ph name="BOOKMARK_TITLE" />' तयार केले.</translation>
 <translation id="6735304988756581115">कुकीज आणि इतर साइट डेटा दर्शवा...</translation>
 <translation id="6736243959894955139">पत्ता</translation>
+<translation id="6737393581255281855">प्रदर्शित केलेला डेटा साफ करायचा आहे का?</translation>
 <translation id="6737663862851963468">Kerberos तिकीट काढा</translation>
 <translation id="6738430949033571771">खात्याची पडताळणी करत आहे...</translation>
 <translation id="6739923123728562974">डेस्कटॉप शॉर्टकट दर्शवा</translation>
@@ -7212,6 +7221,7 @@
 <translation id="7988355189918024273">ॲक्सेस वैशिष्ट्ये सक्षम करा</translation>
 <translation id="7988805580376093356">तुमचे OS ठेवा आणि <ph name="DEVICE_OS" /> हे USB वरून रन करा.</translation>
 <translation id="7991296728590311172">स्विच ॲक्सेस सेटिंग्ज</translation>
+<translation id="7992203134935383159">स्पीच सिंथेसिस</translation>
 <translation id="7997826902155442747">प्रक्रिया प्राधान्य</translation>
 <translation id="7999229196265990314">खालील फाइल तयार केल्या:
 
@@ -7598,6 +7608,7 @@
 <translation id="8366396658833131068">तुमची नेटवर्क कनेक्टिव्हिटी पुनर्संचयित झाली आहे. कृपया एक भिन्न नेटवर्क निवडा किंवा तुमचा कियोस्क ॲप लाँच करण्यासाठी खालील 'सुरू ठेवा' बटण दाबा.</translation>
 <translation id="8366694425498033255">निवड की</translation>
 <translation id="8368859634510605990">सर्व बुकमार्क &amp;उघडा</translation>
+<translation id="8369028061188107403">यामुळे प्रदर्शित केलेल्या साइटनी आणि इंस्टॉल केलेल्या अ‍ॅप्सनी स्टोअर केलेला <ph name="TOTAL_USAGE" /> डेटा साफ होईल</translation>
 <translation id="8370294614544004647">लॅपटॉप बंद केल्यावर स्लीप मोड ऑन करा</translation>
 <translation id="8371695176452482769">आता बोला</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{साइट म्यूट करा}other{साइट म्यूट करा}}</translation>
diff --git a/chrome/app/resources/generated_resources_ru.xtb b/chrome/app/resources/generated_resources_ru.xtb
index debe919..65f35f6 100644
--- a/chrome/app/resources/generated_resources_ru.xtb
+++ b/chrome/app/resources/generated_resources_ru.xtb
@@ -219,6 +219,7 @@
 <translation id="1197199342062592414">Приступим</translation>
 <translation id="11978075283960463">Размер данных приложения: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Отключить</translation>
+<translation id="1198066799963193307">Инструменты чтения с экрана для слабовидящих пользователей</translation>
 <translation id="119944043368869598">Удалить все</translation>
 <translation id="1199814941632954229">Предоставляются сертификаты для следующих профилей:</translation>
 <translation id="120069043972472860">Неудовлетворительное</translation>
@@ -1498,6 +1499,7 @@
 <translation id="2371076942591664043">Открыть по &amp;завершении</translation>
 <translation id="2373666622366160481">По размеру бумаги</translation>
 <translation id="2375406435414127095">Настройте подключение к телефону</translation>
+<translation id="2376056713414548745">Читать вслух</translation>
 <translation id="2377588536920405462">Определение местоположения можно отключить в настройках устройства. Там же можно запретить использование датчиков, Wi‑Fi и мобильных сетей для уточнения местоположения.</translation>
 <translation id="2377667304966270281">Ошибки отсутствия страницы в памяти</translation>
 <translation id="237828693408258535">Перевести эту страницу?</translation>
@@ -2325,6 +2327,7 @@
 <translation id="3163511056918491211">Вы можете легко восстановить свои данные или в любой момент перенести их на новое устройство. Резервные копии загружаются в Google и шифруются с помощью пароля вашего аккаунта Google.</translation>
 <translation id="3164329792803560526">Отправка вкладки в приложение "<ph name="APP_NAME" />"…</translation>
 <translation id="3165390001037658081">Некоторые операторы могут блокировать эту функцию.</translation>
+<translation id="3169930038976362151">Выберите понравившуюся вам тему. Нажмите на рабочий стол и удерживайте, чтобы изменить тему, обои, заставку и многое другое.</translation>
 <translation id="3170072451822350649">Можно пропустить это действие и начать <ph name="LINK_START" />гостевой сеанс<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Новая вкладка слева</translation>
 <translation id="3177909033752230686">Язык страницы:</translation>
@@ -3198,6 +3201,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Копировать сведения о сборке</translation>
 <translation id="4021941025609472374">Закрыть вкладки слева</translation>
+<translation id="402211067068791756">Будут удалены сохраненные данные указанных сайтов (<ph name="TOTAL_USAGE" />).</translation>
 <translation id="4022426551683927403">Добавить в словарь</translation>
 <translation id="4025039777635956441">Отключить звук на выбранном сайте</translation>
 <translation id="4028467762035011525">Добавить способы ввода</translation>
@@ -3448,6 +3452,7 @@
 <translation id="4281844954008187215">Условия использования</translation>
 <translation id="4282196459431406533">Функция Smart Lock включена</translation>
 <translation id="4284755288573763878">Отключить улучшенную безопасность?</translation>
+<translation id="4284903252249997120">Программа ChromeVox для чтения с экрана и озвучивания при нажатии</translation>
 <translation id="4285418559658561636">Обновить пароль</translation>
 <translation id="4285498937028063278">Открепить</translation>
 <translation id="428565720843367874">При сканировании этого файла произошел сбой антивирусного ПО.</translation>
@@ -4988,6 +4993,7 @@
 <translation id="5827733057563115968">Подсказка следующего слова</translation>
 <translation id="5828545842856466741">Добавить профиль…</translation>
 <translation id="5828633471261496623">Печать...</translation>
+<translation id="5828797982387013521">Выбрать сценарий</translation>
 <translation id="5830205393314753525">Не удалось открыть приложение "<ph name="APP_NAME" />"</translation>
 <translation id="5830720307094128296">Сохранить страницу как...</translation>
 <translation id="5832813618714645810">Профили</translation>
@@ -5078,6 +5084,7 @@
 
   Открытая экспонента (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> бит):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Автоматическое чтение</translation>
 <translation id="5916664084637901428">ВКЛ</translation>
 <translation id="59174027418879706">Включено</translation>
 <translation id="5920543303088087579">Администратор запретил подключаться к этой сети</translation>
@@ -5363,6 +5370,7 @@
 <translation id="6200151268994853226">Настройки расширения</translation>
 <translation id="6201608810045805374">Удалить этот аккаунт?</translation>
 <translation id="6202304368170870640">Вы можете использовать PIN-код для входа в аккаунт или разблокировки устройства.</translation>
+<translation id="6206199626856438589">Вы автоматически выйдете из аккаунта на указанных сайтах (в том числе на открытых вкладках).</translation>
 <translation id="6206311232642889873">Копировать изображение</translation>
 <translation id="6207200176136643843">Восстановить масштаб по умолчанию</translation>
 <translation id="6207937957461833379">Страна/регион</translation>
@@ -5915,6 +5923,7 @@
 <translation id="6733620523445262364">Закладка "<ph name="BOOKMARK_TITLE" />" создана.</translation>
 <translation id="6735304988756581115">Показать cookie и другие данные...</translation>
 <translation id="6736243959894955139">Адрес</translation>
+<translation id="6737393581255281855">Удалить указанные данные?</translation>
 <translation id="6737663862851963468">Удалить билет Kerberos</translation>
 <translation id="6738430949033571771">Проверка аккаунта…</translation>
 <translation id="6739923123728562974">Показывать ярлык на рабочем столе</translation>
@@ -7206,6 +7215,7 @@
 <translation id="7988355189918024273">Включить функции для людей с ограниченными возможностями</translation>
 <translation id="7988805580376093356">Оставить текущую ОС и запустить <ph name="DEVICE_OS" /> с USB-накопителя</translation>
 <translation id="7991296728590311172">Настройки функции Switch Access</translation>
+<translation id="7992203134935383159">Синтез речи</translation>
 <translation id="7997826902155442747">Приоритет процессов</translation>
 <translation id="7999229196265990314">Созданы следующие файлы:
 
@@ -7592,6 +7602,7 @@
 <translation id="8366396658833131068">Подключение к сети восстановлено. Выберите другую сеть или нажмите кнопку "Продолжить", чтобы запустить киоск-приложение.</translation>
 <translation id="8366694425498033255">Клавиши выбора</translation>
 <translation id="8368859634510605990">&amp;Открыть все закладки</translation>
+<translation id="8369028061188107403">Будут удалены сохраненные данные указанных сайтов и установленных с них приложений (<ph name="TOTAL_USAGE" />).</translation>
 <translation id="8370294614544004647">Переход в спящий режим, когда крышка ноутбука закрыта</translation>
 <translation id="8371695176452482769">Говорите</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Отключить звук на сайте}one{Отключить звук на сайтах}few{Отключить звук на сайтах}many{Отключить звук на сайтах}other{Отключить звук на сайтах}}</translation>
diff --git a/chrome/app/resources/generated_resources_si.xtb b/chrome/app/resources/generated_resources_si.xtb
index c7b8c90..2b220d8 100644
--- a/chrome/app/resources/generated_resources_si.xtb
+++ b/chrome/app/resources/generated_resources_si.xtb
@@ -219,6 +219,7 @@
 <translation id="1197199342062592414">දැන් අරඹමු</translation>
 <translation id="11978075283960463">යෙදුම තුළ ගබඩා කර ඇති දත්ත: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">ක්‍රියාවිරහිත කරන්න</translation>
+<translation id="1198066799963193307">අඩු දැක්මේ කථන මෙවලම්</translation>
 <translation id="119944043368869598">සියල්ල පිරිසිදු කරන්න</translation>
 <translation id="1199814941632954229">මෙම සහතික පැතිකඩ සඳහා සහතික ප්‍රතිපාදන කෙරෙමින් ඇත</translation>
 <translation id="120069043972472860">නැරඹිය නොහැකි</translation>
@@ -1500,6 +1501,7 @@
 <translation id="2371076942591664043">නිම කළ විට විවෘත කරන්න (&amp;d)</translation>
 <translation id="2373666622366160481">කඩදාසියට ගළපන්න</translation>
 <translation id="2375406435414127095">ඔබේ දුරකථනයට සම්බන්ධ කරන්න</translation>
+<translation id="2376056713414548745">ශබ්ද නඟා කියවන්න</translation>
 <translation id="2377588536920405462">ඔබට ඔබේ උපාංගයෙහි ප්‍රධාන සැකසීම අක්‍රිය කිරීමෙන් ස්ථානය අක්‍රිය කළ හැක. ඔබට Wi‑Fi, ජංගම ජාල සහ ස්ථාන සැකසීම් තුළ ස්ථානය සඳහා වන සංවේදක භාවිතය ද අක්‍රිය කළ හැක.</translation>
 <translation id="2377667304966270281">දෘඪ දෝෂ</translation>
 <translation id="237828693408258535">මෙම පිටුව පරිවර්තනය කරන්න ද?</translation>
@@ -2327,6 +2329,7 @@
 <translation id="3163511056918491211">ඕනෑම අවස්ථාවක පහසුවෙන් ඔබගේ දත්ත ප්‍රතිසාධනය කිරීමට හෝ උපාංග මාරු කිරීමට හැකිය. ඔබගේ උපස්ථ Google වෙත උඩුගත කරන අතර ඔබගේ Google ගිණුම් මුරපදය භාවිත කර සංකේතනය කෙරේ.</translation>
 <translation id="3164329792803560526">මෙම පටිත්ත <ph name="APP_NAME" /> වෙත බෙදා ගැනීම</translation>
 <translation id="3165390001037658081">සමහර වාහකයන් මෙම විශේෂාංගය අවහිර කළ හැකිය.</translation>
+<translation id="3169930038976362151">ඔබේ අවශ්‍යතාවලට ගැළපෙන තේමාව තෝරා ගන්න. ඔබේ තේමාව, වෝල්පේපරය, තිර සුරැකුම, සහ තවත් දේ වෙනස් කිරීම සඳහා, ඩෙස්ක්ටොප් එක මත ස්පර්ශ කර අල්ලා ගන්න.</translation>
 <translation id="3170072451822350649">ඔබට ප්‍රවිෂ්ට වීම මඟහැර <ph name="LINK_START" />ආගන්තුකයෙකු ලෙස ගවේෂණය<ph name="LINK_END" /> කිරීමට ද හැකියාව ඇත.</translation>
 <translation id="31774765611822736">වමට නව ටැබය</translation>
 <translation id="3177909033752230686">පිටුවේ භාෂාව:</translation>
@@ -3201,6 +3204,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">තැනුම් විස්තර පිටපත් කරන්න</translation>
 <translation id="4021941025609472374">වමට ඇති ටැබ වසන්න</translation>
+<translation id="402211067068791756">මෙය සංදර්ශනය වූ අඩවිවලින් ගබඩා කරනු ලැබූ <ph name="TOTAL_USAGE" />ක දත්ත හිස් කරනු ඇත</translation>
 <translation id="4022426551683927403">ශබ්දකෝෂය වෙත &amp;එක් කරන්න</translation>
 <translation id="4025039777635956441">තේරූ වෙබ් අඩවිය නිහඬ කරන්න</translation>
 <translation id="4028467762035011525">ආදාන ක්‍රම එක් කරන්න</translation>
@@ -3451,6 +3455,7 @@
 <translation id="4281844954008187215">සේවා කොන්දේසි</translation>
 <translation id="4282196459431406533">Smart Lock ක්‍රියාත්මකයි</translation>
 <translation id="4284755288573763878">වැඩිදියුණු කළ ආරක්ෂාව ක්‍රියාවිරහිත කරන්නද?</translation>
+<translation id="4284903252249997120">ChromeVox තිර කියවනය සහ කථා කිරීමට තේරීම</translation>
 <translation id="4285418559658561636">මුරපදය යාවත්කාලීන කරන්න</translation>
 <translation id="4285498937028063278">ගලවන්න</translation>
 <translation id="428565720843367874">මෙම ගොනුව ස්කෑන් කරන අතරතුර ප්‍රති-වෛරස මෘදුකාංගය අනපේක්ෂිතව අසාර්ථක විය.</translation>
@@ -4992,6 +4997,7 @@
 <translation id="5827733057563115968">ඊළඟ වචනය පුරෝකථනය කිරීම</translation>
 <translation id="5828545842856466741">පැතිකඩ එක් කරන්න...</translation>
 <translation id="5828633471261496623">මුද්‍රණය වේ...</translation>
+<translation id="5828797982387013521">අත්පොත තෝරන්න</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> විවෘත කළ නොහැකිය</translation>
 <translation id="5830720307094128296">&amp;ලෙස පිටුව සුරකින්න...</translation>
 <translation id="5832813618714645810">පැතිකඩවල්</translation>
@@ -5082,6 +5088,7 @@
 
   පොදු දර්ශකය (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> බිටු):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">ස්වයංක්‍රීය කියවීම</translation>
 <translation id="5916664084637901428">ක්‍රියාත්මකයි</translation>
 <translation id="59174027418879706">සබලයි</translation>
 <translation id="5920543303088087579">මෙම ජාලයට සබැඳීම ඔබේ පරිපාලක විසින් අබල කර ඇත</translation>
@@ -5367,6 +5374,7 @@
 <translation id="6200151268994853226">දිගුව කළමනාකරණය කරන්න</translation>
 <translation id="6201608810045805374">මෙම ගිණුම ඉවත් කරන්නද?</translation>
 <translation id="6202304368170870640">ඔබට ඔබේ උපාංගයට පුරනය වීමට හෝ අනවහිර කිරීමට ඔබේ PIN භාවිතා කළ හැකිය.</translation>
+<translation id="6206199626856438589">ඔබව විවෘත පටිති තුළ ඇතුළුව, සංදර්ශනය වූ අඩවිවලින් වරනු ඇත</translation>
 <translation id="6206311232642889873">පින්තූරය පිටපත් කරන්න (&amp;y)</translation>
 <translation id="6207200176136643843">පෙරනිමි විශාලන මට්ටමට යළි පිහිටුවන්න</translation>
 <translation id="6207937957461833379">රට/කලාපය:</translation>
@@ -5913,6 +5921,7 @@
 <translation id="6733620523445262364">'<ph name="BOOKMARK_TITLE" />' තනන ලදි.</translation>
 <translation id="6735304988756581115">කුකීස් සහ වෙනත් සයිට් දත්ත පෙන්වන්න..</translation>
 <translation id="6736243959894955139">ලිපිනය</translation>
+<translation id="6737393581255281855">සංදර්ශනය වූ දත්ත හිස් කරන්න ද?</translation>
 <translation id="6737663862851963468">Kerberos ප්‍රවේශපත්‍රය ඉවත් කරන්න</translation>
 <translation id="6738430949033571771">ගිණුම සත්‍යාපනය කරමින්...</translation>
 <translation id="6739923123728562974">ඩෙස්ක්ටොප් කෙටි මග පෙන්වන්න</translation>
@@ -7203,6 +7212,7 @@
 <translation id="7988355189918024273">ප්‍රවේශ්‍යතා විශේෂාංග සබල කරන්න</translation>
 <translation id="7988805580376093356">ඔබගේ OS තබා ගන්න සහ USB වෙතින් <ph name="DEVICE_OS" /> ධාවනය කරන්න.</translation>
 <translation id="7991296728590311172">ප්‍රවේශය මාරු කිරීමේ සැකසීම්</translation>
+<translation id="7992203134935383159">කථන සංස්ලේෂණය</translation>
 <translation id="7997826902155442747">ක්‍රියාවලි ප්‍රමුඛතාව</translation>
 <translation id="7999229196265990314">පහත ගොනු තැනිණි:
 
@@ -7588,6 +7598,7 @@
 <translation id="8366396658833131068">ඔබේ ජාල සබඳතාව යළි පිහිටුවිනි. ඔබේ කියෝස්ක් යෙදුම දියත් කිරීම සඳහා කරුණාකර වෙනස් ජාලයක් තෝරා පහත "ඉදිරියට" බොත්තම තෝරන්න.</translation>
 <translation id="8366694425498033255">තෝරාගැනීම් යතුරු</translation>
 <translation id="8368859634510605990">&amp;සියලු පිටුසලකුණු විවෘත කරන්න</translation>
+<translation id="8369028061188107403">මෙය සංදර්ශනය වූ අඩවිවලින් සහ ස්ථාපිත යෙදුම්වලින් ගබඩා කරනු ලැබූ <ph name="TOTAL_USAGE" />ක දත්ත හිස් කරනු ඇත</translation>
 <translation id="8370294614544004647">ලැප්ටොප් එක වසා ඇති විට නිදා ගන්න</translation>
 <translation id="8371695176452482769">දැන් පවසන්න</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{වෙබ් අඩවිය නිහඬ කරන්න}one{වෙබ් අඩවි නිහඬ කරන්න}other{වෙබ් අඩවි නිහඬ කරන්න}}</translation>
diff --git a/chrome/app/resources/generated_resources_sq.xtb b/chrome/app/resources/generated_resources_sq.xtb
index 41bbbef..a6605cd 100644
--- a/chrome/app/resources/generated_resources_sq.xtb
+++ b/chrome/app/resources/generated_resources_sq.xtb
@@ -216,6 +216,7 @@
 <translation id="1197199342062592414">Le të fillojmë</translation>
 <translation id="11978075283960463">Të dhënat e ruajtura në aplikacion: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Çaktivizo</translation>
+<translation id="1198066799963193307">Veglat e ligjërimit për personat me vështirësi shikimi</translation>
 <translation id="119944043368869598">Pastroji të gjitha</translation>
 <translation id="1199814941632954229">Certifikatat po përgatiten për këto profile të certifikatave</translation>
 <translation id="120069043972472860">Nuk shikohet</translation>
@@ -1494,6 +1495,7 @@
 <translation id="2371076942591664043">Hape kur të &amp;përfundosh</translation>
 <translation id="2373666622366160481">Përshtate me letrën</translation>
 <translation id="2375406435414127095">Lidhu me telefonin</translation>
+<translation id="2376056713414548745">Lexo me zë të lartë</translation>
 <translation id="2377588536920405462">Mund ta çaktivizosh "Vendndodhjen" duke çaktivizuar cilësimin kryesor të vendndodhjes në pajisjen tënde. Mund të çaktivizosh po ashtu përdorimin e Wi‑Fi, rrjeteve celulare dhe sensorëve për vendndodhjen te cilësimet e vendndodhjes.</translation>
 <translation id="2377667304966270281">Defekte të harduerit</translation>
 <translation id="237828693408258535">Të përkthehet kjo faqe?</translation>
@@ -2321,6 +2323,7 @@
 <translation id="3163511056918491211">Restauro të dhënat e tua ose ndërro pajisjet në çdo kohë me lehtësi. Rezervimet e tua ngarkohen te Google dhe enkriptohen duke përdorur fjalëkalimin e "Llogarisë sate të Google".</translation>
 <translation id="3164329792803560526">Po ndan këtë skedë në <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">Disa operatorë celularë mund ta bllokojnë këtë funksion.</translation>
+<translation id="3169930038976362151">Zgjidh një temë që u përshtatet nevojave të tua. Për të ndryshuar temën, imazhin e sfondit, mbrojtësin e ekranit etj., thjesht prek dhe mbaj shtypur në desktop.</translation>
 <translation id="3170072451822350649">Mund ta shmangësh po ashtu identifikimin dhe <ph name="LINK_START" />të shfletosh si "Vizitor"<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Skedë e re në të majtë</translation>
 <translation id="3177909033752230686">Gjuha e faqes:</translation>
@@ -3194,6 +3197,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Kopjo të dhënat e ndërtimit</translation>
 <translation id="4021941025609472374">Mbyll skedat në të majtë</translation>
+<translation id="402211067068791756">Kjo do të pastrojë <ph name="TOTAL_USAGE" /> të dhëna të ruajtura nga sajtet e shfaqura</translation>
 <translation id="4022426551683927403">&amp;Shto në fjalor</translation>
 <translation id="4025039777635956441">Çaktivizo zërin e sajtit të zgjedhur</translation>
 <translation id="4028467762035011525">Shto mënyrat e hyrjes</translation>
@@ -3444,6 +3448,7 @@
 <translation id="4281844954008187215">Kushtet e shërbimit</translation>
 <translation id="4282196459431406533">Smart Lock është i aktivizuar</translation>
 <translation id="4284755288573763878">Të çaktivizohet siguria e përmirësuar?</translation>
+<translation id="4284903252249997120">Lexuesi i ekranit ChromeVox dhe veçoria "Zgjidh që të thuhet"</translation>
 <translation id="4285418559658561636">Përditëso fjalëkalimin</translation>
 <translation id="4285498937028063278">Zhgozhdo</translation>
 <translation id="428565720843367874">Softueri i antivirusit dështoi papritur gjatë skanimit të këtij skedari.</translation>
@@ -4984,6 +4989,7 @@
 <translation id="5827733057563115968">Parashikimi i fjalës tjetër</translation>
 <translation id="5828545842856466741">Shto profil...</translation>
 <translation id="5828633471261496623">Po printon...</translation>
+<translation id="5828797982387013521">Zgjidh udhëzuesin</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> nuk mund të hapet</translation>
 <translation id="5830720307094128296">Ruaje faqen &amp;si...</translation>
 <translation id="5832813618714645810">Profilet</translation>
@@ -5074,6 +5080,7 @@
 
   Eksponenti publik (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> bit):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Leximi automatik</translation>
 <translation id="5916664084637901428">Aktiv</translation>
 <translation id="59174027418879706">Aktivizuar</translation>
 <translation id="5920543303088087579">Lidhja me këtë rrjet është çaktivizuar nga administratori yt</translation>
@@ -5359,6 +5366,7 @@
 <translation id="6200151268994853226">Menaxho shtesën</translation>
 <translation id="6201608810045805374">Të hiqet kjo llogari?</translation>
 <translation id="6202304368170870640">Mund të përdorësh kodin PIN për t'u identifikuar në një pajisje ose për ta shkyçur atë.</translation>
+<translation id="6206199626856438589">Do të dalësh nga të gjitha sajtet e shfaqura, duke përfshirë edhe në skedat e hapura</translation>
 <translation id="6206311232642889873">Kopj&amp;o imazhin</translation>
 <translation id="6207200176136643843">Rivendos te niveli i parazgjedhur i zmadhimit</translation>
 <translation id="6207937957461833379">Shteti / Rajoni</translation>
@@ -5905,6 +5913,7 @@
 <translation id="6733620523445262364">"<ph name="BOOKMARK_TITLE" />" u krijua.</translation>
 <translation id="6735304988756581115">Shfaq kukit dhe të dhëna të tjera të faqes...</translation>
 <translation id="6736243959894955139">Adresa</translation>
+<translation id="6737393581255281855">Të pastrohen të dhënat e shfaqura?</translation>
 <translation id="6737663862851963468">Hiq biletën e Kerberos</translation>
 <translation id="6738430949033571771">Llogaria po verifikohet...</translation>
 <translation id="6739923123728562974">Shfaq shkurtoren e desktopit</translation>
@@ -7195,6 +7204,7 @@
 <translation id="7988355189918024273">Aktivizo veçoritë e qasshmërisë</translation>
 <translation id="7988805580376093356">Mbaj sistemin tënd operativ dhe ekzekuto <ph name="DEVICE_OS" /> nga USB-ja.</translation>
 <translation id="7991296728590311172">Cilësimet e "Qasjes me çelës"</translation>
+<translation id="7992203134935383159">Sinteza e ligjërimit</translation>
 <translation id="7997826902155442747">Përparësia e procesit</translation>
 <translation id="7999229196265990314">Krijoi skedarët e mëposhtëm:
 
@@ -7580,6 +7590,7 @@
 <translation id="8366396658833131068">Lidhja jote e rrjetit është restauruar. Zgjidh një rrjet tjetër ose shtyp butonin "Vazhdo" poshtë për të nisur aplikacionin "kioskë".</translation>
 <translation id="8366694425498033255">Çelësat e zgjedhjes</translation>
 <translation id="8368859634510605990">&amp;Hapi të gjithë faqeshënuesit</translation>
+<translation id="8369028061188107403">Kjo do të pastrojë <ph name="TOTAL_USAGE" /> të dhëna të ruajtura nga sajtet e shfaqura dhe aplikacionet e instaluara</translation>
 <translation id="8370294614544004647">Në gjumë kur mbyllet laptopi</translation>
 <translation id="8371695176452482769">Fol tani</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Çaktivizo zërin e sajtit}other{Çaktivizo zërin e sajteve}}</translation>
diff --git a/chrome/app/resources/generated_resources_sv.xtb b/chrome/app/resources/generated_resources_sv.xtb
index d1326a0..0a99f7d0 100644
--- a/chrome/app/resources/generated_resources_sv.xtb
+++ b/chrome/app/resources/generated_resources_sv.xtb
@@ -218,6 +218,7 @@
 <translation id="1197199342062592414">Nu sätter vi igång</translation>
 <translation id="11978075283960463">Data som lagras i appen: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Inaktivera</translation>
+<translation id="1198066799963193307">Talverktyg för personer med nedsatt syn</translation>
 <translation id="119944043368869598">Ta bort alla</translation>
 <translation id="1199814941632954229">Certifikat tillhandahålls för dessa certifikatprofiler</translation>
 <translation id="120069043972472860">Går inte att titta på</translation>
@@ -1511,6 +1512,7 @@
 <translation id="2371076942591664043">Öppna när nedladdning är &amp;klar</translation>
 <translation id="2373666622366160481">Anpassa till papperets storlek</translation>
 <translation id="2375406435414127095">Anslut till mobilen</translation>
+<translation id="2376056713414548745">Läs högt</translation>
 <translation id="2377588536920405462">Du kan inaktivera plats genom att inaktivera huvudinställningen på enheten. Du kan även inaktivera användningen av wifi, mobilnätverk och sensorer för plats i platsinställningarna.</translation>
 <translation id="2377667304966270281">Sidfel</translation>
 <translation id="237828693408258535">Vill du översätta den här sidan?</translation>
@@ -2339,6 +2341,7 @@
 <translation id="3163511056918491211">Återställ data eller byt enhet enkelt när du vill. Säkerhetskopiorna krypteras med hjälp av Google-kontots lösenord och laddas upp på Google.</translation>
 <translation id="3164329792803560526">Fliken delas med <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">Vissa operatörer kanske blockerar den här funktionen.</translation>
+<translation id="3169930038976362151">Välj det tema som passar dina behov. Du kan ändra tema, bakgrund, skärmsläckare med mera genom att trycka länge på skrivbordet.</translation>
 <translation id="3170072451822350649">Du kan även hoppa över inloggningen och <ph name="LINK_START" />surfa som gäst<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Ny flik till vänster</translation>
 <translation id="3177909033752230686">Sidans språk:</translation>
@@ -3212,6 +3215,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Kopiera versionsinformation</translation>
 <translation id="4021941025609472374">Stäng flikar till vänster</translation>
+<translation id="402211067068791756">Då rensas <ph name="TOTAL_USAGE" /> data som har lagrats av webbplatserna som visas</translation>
 <translation id="4022426551683927403">&amp;Lägg till i ordlistan</translation>
 <translation id="4025039777635956441">Stäng av ljudet för den valda webbplatsen</translation>
 <translation id="4028467762035011525">Lägg till inmatningsmetoder</translation>
@@ -3462,6 +3466,7 @@
 <translation id="4281844954008187215">Användarvillkor</translation>
 <translation id="4282196459431406533">Smart Lock är aktiverat</translation>
 <translation id="4284755288573763878">Vill du inaktivera förbättrad säkerhet?</translation>
+<translation id="4284903252249997120">ChromeVox-skärmläsare och textuppläsning</translation>
 <translation id="4285418559658561636">Uppdatera lösenordet</translation>
 <translation id="4285498937028063278">Lossa</translation>
 <translation id="428565720843367874">Ett oväntat fel uppstod i antivirusprogrammet när filen skulle genomsökas.</translation>
@@ -5003,6 +5008,7 @@
 <translation id="5827733057563115968">Förslag på nästa ord</translation>
 <translation id="5828545842856466741">Lägg till profil …</translation>
 <translation id="5828633471261496623">Skriver ut...</translation>
+<translation id="5828797982387013521">Välj handbok</translation>
 <translation id="5830205393314753525">Det går inte att öppna <ph name="APP_NAME" /></translation>
 <translation id="5830720307094128296">Spara &amp;sida som...</translation>
 <translation id="5832813618714645810">Profiler</translation>
@@ -5093,6 +5099,7 @@
 
   Publik exponent (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> bitar):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Automatisk uppläsning</translation>
 <translation id="5916664084637901428">På</translation>
 <translation id="59174027418879706">Aktiverad</translation>
 <translation id="5920543303088087579">Administratören har inaktiverat möjligheten att ansluta till det här nätverket</translation>
@@ -5378,6 +5385,7 @@
 <translation id="6200151268994853226">Hantera tillägg</translation>
 <translation id="6201608810045805374">Vill du ta bort det här kontot?</translation>
 <translation id="6202304368170870640">Du kan logga in på eller låsa upp enheten med pinkoden.</translation>
+<translation id="6206199626856438589">Du loggas ut från webbplatserna som visas, även på öppna flikar</translation>
 <translation id="6206311232642889873">Kopiera &amp;bild</translation>
 <translation id="6207200176136643843">Återställ standardzoomnivån</translation>
 <translation id="6207937957461833379">Land/region</translation>
@@ -5924,6 +5932,7 @@
 <translation id="6733620523445262364"><ph name="BOOKMARK_TITLE" /> har skapats.</translation>
 <translation id="6735304988756581115">Visa cookies och andra webbplatsdata...</translation>
 <translation id="6736243959894955139">Adress</translation>
+<translation id="6737393581255281855">Vill du rensa datan som visas?</translation>
 <translation id="6737663862851963468">Ta bort Kerberos-biljett</translation>
 <translation id="6738430949033571771">Verifierar konto …</translation>
 <translation id="6739923123728562974">Visa skrivbordsgenväg</translation>
@@ -7216,6 +7225,7 @@
 <translation id="7988355189918024273">Aktivera tillgänglighetsfunktioner</translation>
 <translation id="7988805580376093356">Behåll ditt operativsystem och kör <ph name="DEVICE_OS" /> från USB.</translation>
 <translation id="7991296728590311172">Inställningar för brytarstyrning</translation>
+<translation id="7992203134935383159">Talsyntes</translation>
 <translation id="7997826902155442747">Prioriteringsprocess</translation>
 <translation id="7999229196265990314">Följande filer har skapats:
 
@@ -7602,6 +7612,7 @@
 <translation id="8366396658833131068">Nätverksanslutningen har återställts. Välj ett annat nätverk eller tryck på knappen Fortsätt om du vill starta kioskappen.</translation>
 <translation id="8366694425498033255">Valtangenter</translation>
 <translation id="8368859634510605990">&amp;Öppna alla bokmärken</translation>
+<translation id="8369028061188107403">Då rensas <ph name="TOTAL_USAGE" /> data som har lagrats av webbplatserna som visas och installerade appar</translation>
 <translation id="8370294614544004647">Aktivera viloläge när laptopen stängs</translation>
 <translation id="8371695176452482769">Prata nu</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Stäng av webbplatsens ljud}other{Stäng av webbplatsernas ljud}}</translation>
diff --git a/chrome/app/resources/generated_resources_sw.xtb b/chrome/app/resources/generated_resources_sw.xtb
index 9b02228c..509f289c 100644
--- a/chrome/app/resources/generated_resources_sw.xtb
+++ b/chrome/app/resources/generated_resources_sw.xtb
@@ -218,6 +218,7 @@
 <translation id="1197199342062592414">Hebu tuanze kutumia</translation>
 <translation id="11978075283960463">Data iliyohifadhiwa kwenye programu: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Zima</translation>
+<translation id="1198066799963193307">Zana za matamshi kwa ajili ya wenye uwezo mdogo wa kuona</translation>
 <translation id="119944043368869598">Ondoa vyote</translation>
 <translation id="1199814941632954229">Vyeti vinatayarishwa kwa ajili ya wasifu hizi za vyeti</translation>
 <translation id="120069043972472860">Haitazamiki</translation>
@@ -1508,6 +1509,7 @@
 <translation id="2371076942591664043">Fungua baada ya &amp;kumaliza</translation>
 <translation id="2373666622366160481">Fanya itoshe kwenye karatasi</translation>
 <translation id="2375406435414127095">Unganisha kwenye simu yako</translation>
+<translation id="2376056713414548745">Soma kwa sauti</translation>
 <translation id="2377588536920405462">Unaweza kuzima huduma ya Mahali kwa kuzima mipangilio ya msingi ya Mahali kwenye kifaa chako. Unaweza pia kuzima utumiaji wa Wi-Fi, mitandao ya simu na vitambuzi vya mahali katika mipangilio ya mahali.</translation>
 <translation id="2377667304966270281">Mabadilko ya Hifadhi</translation>
 <translation id="237828693408258535">Ungependa kutafsiri ukurasa huu?</translation>
@@ -2336,6 +2338,7 @@
 <translation id="3163511056918491211">Rejesha data yako au ubadilishe vifaa kwa urahisi wakati wowote. Nakala unazohifadhi hupakiwa kwenye Google na kusimbwa kwa njia fiche kwa kutumia nenosiri la Akaunti yako ya Google.</translation>
 <translation id="3164329792803560526">Inashiriki kichupo hiki kwenye <ph name="APP_NAME" /></translation>
 <translation id="3165390001037658081">Huenda watoa huduma wengine wakazuia kipengele hiki.</translation>
+<translation id="3169930038976362151">Chagua mandhari yanayofaa kwa mahitaji yako. Ili ubadilishe mandhari, taswira ya skrini yako na zaidi, gusa na ushikilie kwenye eneo kazi.</translation>
 <translation id="3170072451822350649">Pia unaweza kuruka kuingia na <ph name="LINK_START" />uvinjari kama Mgeni<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Kichupo kipya kushoto</translation>
 <translation id="3177909033752230686">Lugha ya Ukurasa:</translation>
@@ -3209,6 +3212,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Nakili maelezo ya muundo</translation>
 <translation id="4021941025609472374">Funga vichupo vilivyo upande wa kushoto</translation>
+<translation id="402211067068791756">Hatua hii itafuta <ph name="TOTAL_USAGE" /> za data iliyohifadhiwa na tovuti zinazoonyeshwa</translation>
 <translation id="4022426551683927403">Ongez&amp;a kwenye Kamusi</translation>
 <translation id="4025039777635956441">Zima Sauti ya Tovuti Iliyochaguliwa</translation>
 <translation id="4028467762035011525">Ongeza mbinu ya kuingiza data</translation>
@@ -3457,6 +3461,7 @@
 <translation id="4281844954008187215">Sheria na Masharti</translation>
 <translation id="4282196459431406533">Smart Lock imewashwa</translation>
 <translation id="4284755288573763878">Ungependa kuzima kipengele cha usalama kilichoboreshwa?</translation>
+<translation id="4284903252249997120">Kipengele cha kisoma skrini cha ChromeVox na Chagua ili Izungumze</translation>
 <translation id="4285418559658561636">Sasisha Nenosiri</translation>
 <translation id="4285498937028063278">Banua</translation>
 <translation id="428565720843367874">Programu ya kingavirusi imeacha kufanya kazi ghafla wakati ilipokuwa inakagua faili hii.</translation>
@@ -4998,6 +5003,7 @@
 <translation id="5827733057563115968">Utabiri wa neno linalofuata</translation>
 <translation id="5828545842856466741">Ongeza wasifu...</translation>
 <translation id="5828633471261496623">Inachapisha...</translation>
+<translation id="5828797982387013521">Chagua mwongozo</translation>
 <translation id="5830205393314753525">Huwezi kufungua <ph name="APP_NAME" /></translation>
 <translation id="5830720307094128296">Hifadhi Ukurasa K&amp;ama...</translation>
 <translation id="5832813618714645810">Wasifu</translation>
@@ -5088,6 +5094,7 @@
 
   Kipengee cha Umma (biti <ph name="PUBLIC_EXPONENT_NUM_BITS" />):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Kusoma kiotomatiki</translation>
 <translation id="5916664084637901428">Imewashwa</translation>
 <translation id="59174027418879706">Imewezeshwa</translation>
 <translation id="5920543303088087579">Kuunganishwa kwenye mtandao huu kumezimwa na msimamizi wako</translation>
@@ -5373,6 +5380,7 @@
 <translation id="6200151268994853226">Dhibiti Kiendelezi</translation>
 <translation id="6201608810045805374">Ungependa kuondoa akaunti hii?</translation>
 <translation id="6202304368170870640">Unaweza kutumia PIN yako kuingia katika akaunti au kufungua kifaa chako.</translation>
+<translation id="6206199626856438589">Utaondolewa katika akaunti kwenye tovuti zinazoonyeshwa, ikiwa ni pamoja na vichupo ulivyofungua</translation>
 <translation id="6206311232642889873">&amp;Nakili Picha</translation>
 <translation id="6207200176136643843">Rejesha kiwango cha kukuza kuwa chaguomsingi</translation>
 <translation id="6207937957461833379">Nchi/Eneo</translation>
@@ -5919,6 +5927,7 @@
 <translation id="6733620523445262364">'<ph name="BOOKMARK_TITLE" />' imewekwa.</translation>
 <translation id="6735304988756581115">Onyesha vidakuzi na data ya tovuti zingine...</translation>
 <translation id="6736243959894955139">Anwani</translation>
+<translation id="6737393581255281855">Ungependa kufuta data ya tovuti inayoonyeshwa?</translation>
 <translation id="6737663862851963468">Ondoa tiketi ya Kerberos</translation>
 <translation id="6738430949033571771">Inathibitisha akaunti...</translation>
 <translation id="6739923123728562974">Onyesha mkato wa eneo-kazi</translation>
@@ -7212,6 +7221,7 @@
 <translation id="7988355189918024273">Washa vipengele vya zana za walio na matatizo ya kuona au kusikia</translation>
 <translation id="7988805580376093356">Endelea kutumia mfumo wako wa uendeshaji na utekeleze <ph name="DEVICE_OS" /> kutoka kwenye USB.</translation>
 <translation id="7991296728590311172">Mipangilio ya Kufikia Kupitia Swichi</translation>
+<translation id="7992203134935383159">Uchakataji wa maandishi kuwa matamshi</translation>
 <translation id="7997826902155442747">Kipaumbele cha Mchakato</translation>
 <translation id="7999229196265990314">Imeunda faili zifuatazo:
 
@@ -7598,6 +7608,7 @@
 <translation id="8366396658833131068">Muunganisho wa mtandao wako umerejeshwa. Tafadhali chagua mtandao tofauti au bonyeza kitufe cha 'Endelea' hapo chini ili uzindue programu ya kioski.</translation>
 <translation id="8366694425498033255">Vitufe vya uteuzi</translation>
 <translation id="8368859634510605990">&amp;Fungua alamisho zote</translation>
+<translation id="8369028061188107403">Hatua hii itafuta <ph name="TOTAL_USAGE" /> za data iliyohifadhiwa na tovuti zinazoonyeshwa pamoja na programu zilizosakinishwa</translation>
 <translation id="8370294614544004647">Weka hali tuli wakati kompyuta ya kupakata imefungwa</translation>
 <translation id="8371695176452482769">Ongea sasa</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Zima Sauti ya Tovuti}other{Zima Sauti za Tovuti}}</translation>
diff --git a/chrome/app/resources/generated_resources_ta.xtb b/chrome/app/resources/generated_resources_ta.xtb
index 687a48b..65f08e4 100644
--- a/chrome/app/resources/generated_resources_ta.xtb
+++ b/chrome/app/resources/generated_resources_ta.xtb
@@ -218,6 +218,7 @@
 <translation id="1197199342062592414">தொடங்குங்கள்</translation>
 <translation id="11978075283960463">ஆப்ஸில் சேமிக்கப்பட்ட தரவின் அளவு: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">முடக்கு</translation>
+<translation id="1198066799963193307">குறைவான பார்வைத்திறன் உள்ளவர்களுக்கான பேச்சுக் கருவிகள்</translation>
 <translation id="119944043368869598">அனைத்தையும் அழி</translation>
 <translation id="1199814941632954229">சான்றிதழ் பெற வேண்டிய இந்தச் சுயவிவரங்களுக்குச் சான்றிதழ்கள் வழங்கப்படுகின்றன</translation>
 <translation id="120069043972472860">பார்க்கவே முடியவில்லை</translation>
@@ -1511,6 +1512,7 @@
 <translation id="2371076942591664043">&amp;முடிந்ததும் திற</translation>
 <translation id="2373666622366160481">பேப்பரின் அளவிற்குப் பொருத்து</translation>
 <translation id="2375406435414127095">உங்கள் ஃபோனுடன் இணைத்தல்</translation>
+<translation id="2376056713414548745">உரக்கப் படித்தல்</translation>
 <translation id="2377588536920405462">உங்கள் சாதனத்தில் உள்ள முதன்மை இருப்பிட அமைப்பை முடக்கி இருப்பிடத்தை முடக்கலாம். வைஃபை, மொபைல் நெட்வொர்க்குகள் மற்றும் இருப்பிடத்திற்காக இருப்பிட அமைப்புகளில் உள்ள சென்சார்களைப் பயன்படுத்துவதையும் நீங்கள் முடக்கலாம்.</translation>
 <translation id="2377667304966270281">ஹார்டு ஃபால்ட்கள்</translation>
 <translation id="237828693408258535">இந்தப் பக்கத்தை மொழிபெயர்க்கவா?</translation>
@@ -2339,6 +2341,7 @@
 <translation id="3163511056918491211">எப்போது வேண்டுமானாலும் தரவை எளிதாக மீட்டெடுக்கலாம், சாதனங்களை மாற்றலாம். உங்களின் காப்புப் பிரதிகள் Googleளுக்குப் பதிவேற்றப்பட்டு, உங்கள் Google கணக்கின் கடவுச்சொல்லைப் பயன்படுத்தி என்க்ரிப்ஷன் செய்யப்படுகின்றன.</translation>
 <translation id="3164329792803560526"><ph name="APP_NAME" /> ஆப்ஸுடன் இந்தத் தாவலைப் பகிர்கிறது</translation>
 <translation id="3165390001037658081">சில தொலைத்தொடர்பு நிறுவனங்கள் இந்த அம்சத்தைத் தடுக்கலாம்.</translation>
+<translation id="3169930038976362151">உங்கள் தேவைகளுக்கு ஏற்ப தீமினைத் தேர்வுசெய்யலாம். உங்கள் தீம், வால்பேப்பர், ஸ்கிரீன் சேவர் மற்றும் பலவற்றை மாற்ற டெஸ்க்டாப்பில் தொட்டுப் பிடிக்கவும்.</translation>
 <translation id="3170072451822350649">உள்நுழைவதைத் தவிர்த்துவிட்டு <ph name="LINK_START" />கெஸ்டாக உலாவலாம்<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">இடதுபுறத்தில் புதிய பக்கம்</translation>
 <translation id="3177909033752230686">பக்கத்தின் மொழி:</translation>
@@ -3212,6 +3215,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">பதிப்பு விவரங்களை நகலெடு</translation>
 <translation id="4021941025609472374">இடதுபுறத்தில் உள்ள பக்கங்களை மூடுக</translation>
+<translation id="402211067068791756">காட்டப்படும் தளங்கள் சேமித்த <ph name="TOTAL_USAGE" /> தரவை இது அழிக்கும்</translation>
 <translation id="4022426551683927403">அகராதியில் &amp;சேர்</translation>
 <translation id="4025039777635956441">தேர்வுசெய்துள்ள இணையதளத்தை முடக்கு</translation>
 <translation id="4028467762035011525">உள்ளீட்டு முறைகளைச் சேர்</translation>
@@ -3462,6 +3466,7 @@
 <translation id="4281844954008187215">சேவை விதிமுறைகள்</translation>
 <translation id="4282196459431406533">Smart Lock இயக்கப்பட்டது</translation>
 <translation id="4284755288573763878">மேம்பட்ட பாதுகாப்பை முடக்கவா?</translation>
+<translation id="4284903252249997120">ChromeVox ஸ்கிரீன் ரீடர் மற்றும் பேசும் திரை</translation>
 <translation id="4285418559658561636">கடவுச்சொல்லைப் புதுப்பி</translation>
 <translation id="4285498937028063278">பிரித்தெடு</translation>
 <translation id="428565720843367874">இந்த ஃபைலை ஸ்கேன் செய்யும்போது எதிர்பாராதவிதமாக வைரஸ் தடுப்பு மென்பொருள் தோல்வியடைந்தது.</translation>
@@ -5004,6 +5009,7 @@
 <translation id="5827733057563115968">அடுத்த சொல் கணிப்பு</translation>
 <translation id="5828545842856466741">சுயவிவரத்தைச் சேர்...</translation>
 <translation id="5828633471261496623">அச்சிடுகிறது...</translation>
+<translation id="5828797982387013521">பிளேபுக்கைத் தேர்ந்தெடு</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> ஆப்ஸைத் திறக்க முடியவில்லை</translation>
 <translation id="5830720307094128296">பக்கத்தை &amp;இவ்வாறு சேமி...</translation>
 <translation id="5832813618714645810">சுயவிவரங்கள்</translation>
@@ -5094,6 +5100,7 @@
 
   பொது அடுக்குக்குறி (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> பிட்கள்):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">தானாக வாசித்தல்</translation>
 <translation id="5916664084637901428">இயக்கு</translation>
 <translation id="59174027418879706">இயக்கப்பட்டது</translation>
 <translation id="5920543303088087579">உங்கள் நிர்வாகி இந்த நெட்வொர்க்குடன் இணைப்பதை முடக்கியுள்ளார்</translation>
@@ -5379,6 +5386,7 @@
 <translation id="6200151268994853226">நீட்டிப்பை நிர்வகி</translation>
 <translation id="6201608810045805374">இந்தக் கணக்கை அகற்ற வேண்டுமா?</translation>
 <translation id="6202304368170870640">உங்கள் சாதனத்தில் உள்நுழைய அல்லது அதை அன்லாக் செய்ய, உங்கள் பின்னைப் பயன்படுத்தலாம்.</translation>
+<translation id="6206199626856438589">திறந்துள்ள பக்கங்கள் உட்பட காட்டப்படும் அனைத்துத் தளங்களில் இருந்தும் வெளியேற்றப்படுவீர்கள்</translation>
 <translation id="6206311232642889873">படத்தை நகலெ&amp;டு</translation>
 <translation id="6207200176136643843">இயல்பான அளவிற்கு மீட்டமைக்கும்</translation>
 <translation id="6207937957461833379">நாடு/பிராந்தியம்</translation>
@@ -5925,6 +5933,7 @@
 <translation id="6733620523445262364"><ph name="BOOKMARK_TITLE" /> புக்மார்க் உருவாக்கப்பட்டது.</translation>
 <translation id="6735304988756581115">குக்கீகள் மற்றும் பிற தள தரவைக் காண்பி...</translation>
 <translation id="6736243959894955139">முகவரி</translation>
+<translation id="6737393581255281855">காட்டப்படும் தரவை அழிக்கவா?</translation>
 <translation id="6737663862851963468">Kerberos டிக்கெட்டை அகற்றுதல்</translation>
 <translation id="6738430949033571771">கணக்கைச் சரிபார்க்கிறது...</translation>
 <translation id="6739923123728562974">டெஸ்க்டாப் ஷார்ட்கட்டைக் காட்டு</translation>
@@ -7217,6 +7226,7 @@
 <translation id="7988355189918024273">அணுகல்தன்மை அம்சங்களை இயக்கு</translation>
 <translation id="7988805580376093356">தற்போதுள்ள OSஸுக்குப் பதிலாக <ph name="DEVICE_OS" /> ஐ USBயில் இருந்தே பயன்படுத்திப் பார்க்கலாம்.</translation>
 <translation id="7991296728590311172">ஸ்விட்ச் அணுகலுக்கான அமைப்புகள்</translation>
+<translation id="7992203134935383159">பேச்சு உருவாக்கம்</translation>
 <translation id="7997826902155442747">செயல்படுத்தல் முன்னுரிமை</translation>
 <translation id="7999229196265990314">பின்வரும் ஃபைல்கள்  உருவாக்கப்பட்டன:
 
@@ -7603,6 +7613,7 @@
 <translation id="8366396658833131068">உங்கள் நெட்வொர்க் இணைப்பு மீட்டெடுக்கப்பட்டது. உங்கள் கியோஸ்க் பயன்பாட்டைத் தொடங்க, வேறு நெட்வொர்க்கைத் தேர்ந்தெடுக்கவும் அல்லது கீழேயுள்ள 'தொடரவும்' பட்டனை அழுத்தவும்.</translation>
 <translation id="8366694425498033255">தேர்வு விசைகள்</translation>
 <translation id="8368859634510605990">புக்மார்க்ஸ் அனைத்தையும் &amp;திற</translation>
+<translation id="8369028061188107403">காட்டப்படும் தளங்களும் நிறுவப்பட்ட ஆப்ஸும் சேமித்த <ph name="TOTAL_USAGE" /> தரவை இது அழிக்கும்</translation>
 <translation id="8370294614544004647">லேப்டாப் மூடப்பட்டிருக்கும்போது உறக்கநிலைக்குச் செல்லுதல்</translation>
 <translation id="8371695176452482769">இப்போது பேசுக</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{தளத்தின் ஒலியை முடக்கு}other{தளங்களின் ஒலியை முடக்கு}}</translation>
diff --git a/chrome/app/resources/generated_resources_tr.xtb b/chrome/app/resources/generated_resources_tr.xtb
index e767af3..9f1d3d1 100644
--- a/chrome/app/resources/generated_resources_tr.xtb
+++ b/chrome/app/resources/generated_resources_tr.xtb
@@ -216,6 +216,7 @@
 <translation id="1197199342062592414">Başlayalım</translation>
 <translation id="11978075283960463">Uygulamada depolanan veriler: <ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">Devre dışı bırak</translation>
+<translation id="1198066799963193307">Az görenler için konuşma araçları</translation>
 <translation id="119944043368869598">Tümünü temizle</translation>
 <translation id="1199814941632954229">Sertifikalar, bu sertifika profilleri için sağlanıyor</translation>
 <translation id="120069043972472860">İzlenemiyor</translation>
@@ -1494,6 +1495,7 @@
 <translation id="2371076942591664043">İşlem tamamlandığın&amp;da aç</translation>
 <translation id="2373666622366160481">Kağıda sığdır</translation>
 <translation id="2375406435414127095">Telefonunuza bağlama</translation>
+<translation id="2376056713414548745">Sesli oku</translation>
 <translation id="2377588536920405462">Cihazınızdaki ana Konum ayarını kapatarak Konum hizmetini devre dışı bırakabilirsiniz. Ayrıca konum ayarlarından kablosuz, mobil ağlar ve konum sensörlerinin kullanılmasını da devre dışı bırakabilirsiniz.</translation>
 <translation id="2377667304966270281">Donanım Hataları</translation>
 <translation id="237828693408258535">Bu sayfa çevrilsin mi?</translation>
@@ -2321,6 +2323,7 @@
 <translation id="3163511056918491211">Verilerinizi istediğiniz zaman kolayca geri yükleyebilir veya cihazlar arasında geçiş yapabilirsiniz. Yedek verileriniz Google'a yüklenir ve Google Hesabınızın şifresi kullanılarak şifrelenir.</translation>
 <translation id="3164329792803560526">Bu sekme <ph name="APP_NAME" /> ile paylaşılıyor</translation>
 <translation id="3165390001037658081">Bazı operatörler bu özelliği engelleyebilir.</translation>
+<translation id="3169930038976362151">İhtiyaçlarınıza uygun temayı seçin. Temanızı, duvar kağıdınızı, ekran koruyucunuzu ve diğer özellikleri değiştirmek için masaüstüne dokunup basılı tutun.</translation>
 <translation id="3170072451822350649">Ayrıca, oturum açmayı atlayabilir ve <ph name="LINK_START" />misafir olarak göz atabilirsiniz<ph name="LINK_END" />.</translation>
 <translation id="31774765611822736">Sola yeni sekme</translation>
 <translation id="3177909033752230686">Sayfanın Dili:</translation>
@@ -3194,6 +3197,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">Yapı ayrıntılarını kopyala</translation>
 <translation id="4021941025609472374">Soldaki sekmeleri kapat</translation>
+<translation id="402211067068791756">Bu işlem, siteler tarafından görüntülenen <ph name="TOTAL_USAGE" /> veriyi temizleyecek</translation>
 <translation id="4022426551683927403">Sözlüğe &amp;Ekle</translation>
 <translation id="4025039777635956441">Seçili Sitenin Sesini Kapat</translation>
 <translation id="4028467762035011525">Giriş yöntemleri ekle</translation>
@@ -3444,6 +3448,7 @@
 <translation id="4281844954008187215">Hizmet Şartları</translation>
 <translation id="4282196459431406533">Smart Lock açık</translation>
 <translation id="4284755288573763878">Gelişmiş güvenlik kapatılsın mı?</translation>
+<translation id="4284903252249997120">ChromeVox ekran okuyucu ile Seç ve Dinle özelliği</translation>
 <translation id="4285418559658561636">Şifreyi Güncelle</translation>
 <translation id="4285498937028063278">Sabitlemeyi kaldır</translation>
 <translation id="428565720843367874">Virüsten koruma yazılımı, bu dosyayı tararken beklenmedik bir şekilde başarısız oldu.</translation>
@@ -4985,6 +4990,7 @@
 <translation id="5827733057563115968">Sonraki kelime tahmini</translation>
 <translation id="5828545842856466741">Profil ekle...</translation>
 <translation id="5828633471261496623">Yazdırılıyor...</translation>
+<translation id="5828797982387013521">Başucu kitabı seç</translation>
 <translation id="5830205393314753525"><ph name="APP_NAME" /> açılamıyor</translation>
 <translation id="5830720307094128296">Sayfayı &amp;Farklı Kaydet...</translation>
 <translation id="5832813618714645810">Profiller</translation>
@@ -5075,6 +5081,7 @@
 
   Genel Üs (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> bit):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">Otomatik okuma</translation>
 <translation id="5916664084637901428">Açık</translation>
 <translation id="59174027418879706">Etkin</translation>
 <translation id="5920543303088087579">Bu ağa bağlanma, yöneticiniz tarafından devre dışı bırakıldı</translation>
@@ -5360,6 +5367,7 @@
 <translation id="6200151268994853226">Uzantıyı Yönet</translation>
 <translation id="6201608810045805374">Bu hesap kaldırılsın mı?</translation>
 <translation id="6202304368170870640">Cihazınızda oturum açmak veya cihazınızın kilidini açmak için PIN'inizi kullanabilirsiniz.</translation>
+<translation id="6206199626856438589">Açık sekmeler de dahil olmak üzere görüntülenen sitelerde oturumunuz kapatılır</translation>
 <translation id="6206311232642889873">Resmi Kop&amp;yala</translation>
 <translation id="6207200176136643843">Varsayılan yakınlaştırma seviyesine sıfırla</translation>
 <translation id="6207937957461833379">Ülke/Bölge</translation>
@@ -5906,6 +5914,7 @@
 <translation id="6733620523445262364">'<ph name="BOOKMARK_TITLE" />' oluşturuldu.</translation>
 <translation id="6735304988756581115">Çerezleri ve diğer site verilerini göster...</translation>
 <translation id="6736243959894955139">Adres</translation>
+<translation id="6737393581255281855">Görüntülenen site verileri temizlensin mi?</translation>
 <translation id="6737663862851963468">Kerberos biletini kaldır</translation>
 <translation id="6738430949033571771">Hesap doğrulanıyor...</translation>
 <translation id="6739923123728562974">Masaüstü kısayolunu göster</translation>
@@ -7197,6 +7206,7 @@
 <translation id="7988355189918024273">Erişilebilirlik özelliklerini etkinleştir</translation>
 <translation id="7988805580376093356"><ph name="DEVICE_OS" /> işletim sistemini, mevcut işletim sisteminizi kaldırmadan USB'den çalıştırın.</translation>
 <translation id="7991296728590311172">Anahtar Erişimi ayarları</translation>
+<translation id="7992203134935383159">Konuşma sentezi</translation>
 <translation id="7997826902155442747">Süreç Önceliği</translation>
 <translation id="7999229196265990314">Aşağıdaki dosyalar oluşturuldu:
 
@@ -7583,6 +7593,7 @@
 <translation id="8366396658833131068">Ağ bağlantınız geri yüklendi. Lütfen farklı bir ağ seçin veya kiosk uygulamanızı başlatmak için "Devam Et" düğmesine basın.</translation>
 <translation id="8366694425498033255">Seçim tuşları</translation>
 <translation id="8368859634510605990">&amp;Tüm yer işaretlerini aç</translation>
+<translation id="8369028061188107403">Bu işlem, siteler ve yükledikleri uygulamalar tarafından depolanan <ph name="TOTAL_USAGE" /> veriyi temizleyecek.</translation>
 <translation id="8370294614544004647">Dizüstü bilgisayar kapalıyken uyu</translation>
 <translation id="8371695176452482769">Şimdi konuşun</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{Sitenin Sesini Kapat}other{Sitelerin Sesini Kapat}}</translation>
diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/resources/generated_resources_zh-CN.xtb
index d9ba593..01079f4 100644
--- a/chrome/app/resources/generated_resources_zh-CN.xtb
+++ b/chrome/app/resources/generated_resources_zh-CN.xtb
@@ -216,6 +216,7 @@
 <translation id="1197199342062592414">现在开始吧</translation>
 <translation id="11978075283960463">存储在应用中的数据量:<ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">停用</translation>
+<translation id="1198066799963193307">弱视语音工具</translation>
 <translation id="119944043368869598">全部清除</translation>
 <translation id="1199814941632954229">正在为这些证书资料配置证书</translation>
 <translation id="120069043972472860">无法观看</translation>
@@ -1489,6 +1490,7 @@
 <translation id="2371076942591664043">完成时打开(&amp;D)</translation>
 <translation id="2373666622366160481">适合纸张大小</translation>
 <translation id="2375406435414127095">连接到您的手机</translation>
+<translation id="2376056713414548745">大声朗读</translation>
 <translation id="2377588536920405462">只需关闭您设备上的主要“位置信息”设置,即可关闭位置信息服务。您还可在“位置信息”设置中关闭那些使用 WLAN、移动网络和传感器来获取位置信息的功能。</translation>
 <translation id="2377667304966270281">硬故障数</translation>
 <translation id="237828693408258535">翻译此页?</translation>
@@ -2315,6 +2317,7 @@
 <translation id="3163511056918491211">随时轻松恢复数据或更换设备。您的备份内容将上传到 Google 并使用您的 Google 帐号密码进行加密。</translation>
 <translation id="3164329792803560526">与 <ph name="APP_NAME" /> 分享此标签页</translation>
 <translation id="3165390001037658081">有些运营商可能会屏蔽此功能。</translation>
+<translation id="3169930038976362151">选择与您的需求相符的主题。若要更改主题、壁纸、屏保等,轻触并按住桌面即可执行所需操作。</translation>
 <translation id="3170072451822350649">您也可以跳过登录步骤,<ph name="LINK_START" />以访客身份浏览<ph name="LINK_END" />。</translation>
 <translation id="31774765611822736">在左侧新增标签页</translation>
 <translation id="3177909033752230686">网页语言:</translation>
@@ -3187,6 +3190,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">复制版本详情</translation>
 <translation id="4021941025609472374">关闭左侧标签页</translation>
+<translation id="402211067068791756">此操作会清除显示的网站所存储的 <ph name="TOTAL_USAGE" /> 数据</translation>
 <translation id="4022426551683927403">添加到字典中(&amp;A)</translation>
 <translation id="4025039777635956441">将所选网站静音</translation>
 <translation id="4028467762035011525">添加输入法</translation>
@@ -3437,6 +3441,7 @@
 <translation id="4281844954008187215">服务条款</translation>
 <translation id="4282196459431406533">Smart Lock 已开启</translation>
 <translation id="4284755288573763878">关闭“增强型安全浏览”功能?</translation>
+<translation id="4284903252249997120">ChromeVox 屏幕阅读器和随选朗读功能</translation>
 <translation id="4285418559658561636">更新密码</translation>
 <translation id="4285498937028063278">取消固定</translation>
 <translation id="428565720843367874">防病毒软件在扫描此文件时意外失败。</translation>
@@ -4973,6 +4978,7 @@
 <translation id="5827733057563115968">下一字词预测</translation>
 <translation id="5828545842856466741">添加个人资料…</translation>
 <translation id="5828633471261496623">正在打印...</translation>
+<translation id="5828797982387013521">选择 playbook</translation>
 <translation id="5830205393314753525">无法打开<ph name="APP_NAME" /></translation>
 <translation id="5830720307094128296">将页面存储为(&amp;A)...</translation>
 <translation id="5832813618714645810">个人资料</translation>
@@ -5063,6 +5069,7 @@
 
   公开指数(<ph name="PUBLIC_EXPONENT_NUM_BITS" />位):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">自动朗读</translation>
 <translation id="5916664084637901428">启用</translation>
 <translation id="59174027418879706">已启用</translation>
 <translation id="5920543303088087579">您的管理员已禁止连接到此网络</translation>
@@ -5347,6 +5354,7 @@
 <translation id="6200151268994853226">管理扩展程序</translation>
 <translation id="6201608810045805374">移除此帐号?</translation>
 <translation id="6202304368170870640">您可以使用 PIN 码登录或解锁您的设备。</translation>
+<translation id="6206199626856438589">您将从显示的网站(包括已打开的标签页中的网站)退出帐号</translation>
 <translation id="6206311232642889873">复制图片(&amp;Y)</translation>
 <translation id="6207200176136643843">重置为默认缩放级别</translation>
 <translation id="6207937957461833379">国家/地区</translation>
@@ -5893,6 +5901,7 @@
 <translation id="6733620523445262364">已创建书签“<ph name="BOOKMARK_TITLE" />”。</translation>
 <translation id="6735304988756581115">显示 Cookie 和其他网站数据…</translation>
 <translation id="6736243959894955139">地址</translation>
+<translation id="6737393581255281855">清除所显示网站的数据?</translation>
 <translation id="6737663862851963468">移除 Kerberos 票据</translation>
 <translation id="6738430949033571771">正在验证帐号…</translation>
 <translation id="6739923123728562974">显示桌面快捷方式</translation>
@@ -7184,6 +7193,7 @@
 <translation id="7988355189918024273">启用辅助功能</translation>
 <translation id="7988805580376093356">请从 USB(而非您的操作系统)中运行 <ph name="DEVICE_OS" />。</translation>
 <translation id="7991296728590311172">开关控制设置</translation>
+<translation id="7992203134935383159">语音合成</translation>
 <translation id="7997826902155442747">进程优先级</translation>
 <translation id="7999229196265990314">已创建以下文件:
 
@@ -7570,6 +7580,7 @@
 <translation id="8366396658833131068">您的网络连接已恢复。要启动自助服务终端应用,请选择其他网络或按下方的“继续”按钮。</translation>
 <translation id="8366694425498033255">选择键</translation>
 <translation id="8368859634510605990">打开所有书签(&amp;O)</translation>
+<translation id="8369028061188107403">此操作会清除显示的网站和安装的应用所存储的 <ph name="TOTAL_USAGE" /> 数据</translation>
 <translation id="8370294614544004647">合上笔记本电脑后休眠</translation>
 <translation id="8371695176452482769">请开始说话</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{将这个网站静音}other{将这些网站静音}}</translation>
diff --git a/chrome/app/resources/generated_resources_zh-HK.xtb b/chrome/app/resources/generated_resources_zh-HK.xtb
index 7a72393..7c4e2a2 100644
--- a/chrome/app/resources/generated_resources_zh-HK.xtb
+++ b/chrome/app/resources/generated_resources_zh-HK.xtb
@@ -218,6 +218,7 @@
 <translation id="1197199342062592414">開始使用</translation>
 <translation id="11978075283960463">儲存在應用程式中的資料大小:<ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">停用</translation>
+<translation id="1198066799963193307">低視能語音工具</translation>
 <translation id="119944043368869598">全部清除</translation>
 <translation id="1199814941632954229">正在為這些憑證設定檔佈建憑證</translation>
 <translation id="120069043972472860">無法觀看</translation>
@@ -1511,6 +1512,7 @@
 <translation id="2371076942591664043">完成後開啟(&amp;D)</translation>
 <translation id="2373666622366160481">依紙張大小自動調整</translation>
 <translation id="2375406435414127095">連線至您的手機</translation>
+<translation id="2376056713414548745">朗讀內容</translation>
 <translation id="2377588536920405462">關閉裝置的主要位置資訊設定,即可關閉定位服務。您也可以在位置資訊設定中關閉使用 Wi‑Fi、流動網絡和感應器確定位置的功能。</translation>
 <translation id="2377667304966270281">嚴重錯誤</translation>
 <translation id="237828693408258535">要翻譯此網頁嗎?</translation>
@@ -2339,6 +2341,7 @@
 <translation id="3163511056918491211">隨時輕鬆還原您的資料或轉用裝置。您的備份會上載至 Google,並透過您的 Google 帳戶密碼加密。</translation>
 <translation id="3164329792803560526">正在將此分頁與 <ph name="APP_NAME" /> 共用</translation>
 <translation id="3165390001037658081">部分流動網絡供應商可能會封鎖此功能。</translation>
+<translation id="3169930038976362151">選擇符合自身需求的主題。如要變更主題、桌布、螢幕保護程式和其他設定,只要按住桌面即可。</translation>
 <translation id="3170072451822350649">您也可以略過登入程序,<ph name="LINK_START" />以訪客身分瀏覽<ph name="LINK_END" />。</translation>
 <translation id="31774765611822736">新分頁位於左側</translation>
 <translation id="3177909033752230686">網頁語言:</translation>
@@ -3212,6 +3215,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">複製版本詳情</translation>
 <translation id="4021941025609472374">關閉左側分頁</translation>
+<translation id="402211067068791756">這會清除目前顯示的網站所儲存的資料,共 <ph name="TOTAL_USAGE" /></translation>
 <translation id="4022426551683927403">新增到字典(&amp;A)</translation>
 <translation id="4025039777635956441">將已選取的網站設定為靜音</translation>
 <translation id="4028467762035011525">新增輸入方法</translation>
@@ -3462,6 +3466,7 @@
 <translation id="4281844954008187215">服務條款</translation>
 <translation id="4282196459431406533">Smart Lock 已啟用</translation>
 <translation id="4284755288573763878">要關閉「強化安全瀏覽」功能嗎?</translation>
+<translation id="4284903252249997120">ChromeVox 螢幕閱讀器和隨選朗讀</translation>
 <translation id="4285418559658561636">更新密碼</translation>
 <translation id="4285498937028063278">取消固定</translation>
 <translation id="428565720843367874">掃描這個檔案時,防毒軟件發生意外錯誤。</translation>
@@ -5001,6 +5006,7 @@
 <translation id="5827733057563115968">下一字預測</translation>
 <translation id="5828545842856466741">新增設定檔…</translation>
 <translation id="5828633471261496623">列印中…</translation>
+<translation id="5828797982387013521">選取 Playbook</translation>
 <translation id="5830205393314753525">無法開啟「<ph name="APP_NAME" />」</translation>
 <translation id="5830720307094128296">另存網頁(&amp;A)…</translation>
 <translation id="5832813618714645810">設定檔</translation>
@@ -5091,6 +5097,7 @@
 
   公開指數  (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> 位元):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">自動朗讀</translation>
 <translation id="5916664084637901428">開啟</translation>
 <translation id="59174027418879706">已啟用</translation>
 <translation id="5920543303088087579">您的管理員已停用連線至此網絡的權限</translation>
@@ -5376,6 +5383,7 @@
 <translation id="6200151268994853226">管理擴充程式</translation>
 <translation id="6201608810045805374">要移除此帳戶嗎?</translation>
 <translation id="6202304368170870640">您可使用 PIN 登入或解鎖裝置。</translation>
+<translation id="6206199626856438589">系統會將你登出這些目前顯示的網站,包含已開啟的分頁</translation>
 <translation id="6206311232642889873">複製圖片(&amp;Y)</translation>
 <translation id="6207200176136643843">重設為預設縮放等級</translation>
 <translation id="6207937957461833379">國家/地區</translation>
@@ -5922,6 +5930,7 @@
 <translation id="6733620523445262364">建立咗 <ph name="BOOKMARK_TITLE" />。</translation>
 <translation id="6735304988756581115">顯示 Cookie 和其他網站數據…</translation>
 <translation id="6736243959894955139">位址</translation>
+<translation id="6737393581255281855">要清除顯示的資料嗎?</translation>
 <translation id="6737663862851963468">移除 Kerberos 票證</translation>
 <translation id="6738430949033571771">正在驗證帳戶…</translation>
 <translation id="6739923123728562974">顯示桌面捷徑</translation>
@@ -7214,6 +7223,7 @@
 <translation id="7988355189918024273">啟用無障礙功能</translation>
 <translation id="7988805580376093356">保留現有作業系統,並透過 USB 執行 <ph name="DEVICE_OS" />。</translation>
 <translation id="7991296728590311172">「按鈕控制」設定</translation>
+<translation id="7992203134935383159">語音合成</translation>
 <translation id="7997826902155442747">處理優先次序</translation>
 <translation id="7999229196265990314">已建立下列檔案:
 
@@ -7600,6 +7610,7 @@
 <translation id="8366396658833131068">您的網絡連線已恢復。請選取其他網絡,或按下方的 [繼續] 按鈕啟動 Kiosk 應用程式。</translation>
 <translation id="8366694425498033255">選字鍵</translation>
 <translation id="8368859634510605990">開啟所有書籤(&amp;O)</translation>
+<translation id="8369028061188107403">這會清除目前顯示的網站所儲存的資料 (共 <ph name="TOTAL_USAGE" />),以及所安裝的應用程式</translation>
 <translation id="8370294614544004647">蓋上手提電腦時進入休眠狀態</translation>
 <translation id="8371695176452482769">請說話</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{將單一網站靜音}other{將多個網站靜音}}</translation>
diff --git a/chrome/app/resources/generated_resources_zh-TW.xtb b/chrome/app/resources/generated_resources_zh-TW.xtb
index d73c1d2f..979675e1 100644
--- a/chrome/app/resources/generated_resources_zh-TW.xtb
+++ b/chrome/app/resources/generated_resources_zh-TW.xtb
@@ -216,6 +216,7 @@
 <translation id="1197199342062592414">開始使用</translation>
 <translation id="11978075283960463">儲存在應用程式中的資料大小:<ph name="APP_SIZE" /></translation>
 <translation id="1197935538609051549">停用</translation>
+<translation id="1198066799963193307">低視能語音工具</translation>
 <translation id="119944043368869598">全部清除</translation>
 <translation id="1199814941632954229">正在為這些憑證設定檔佈建憑證</translation>
 <translation id="120069043972472860">無法觀看</translation>
@@ -1496,6 +1497,7 @@
 <translation id="2371076942591664043">完成後開啟(&amp;D)</translation>
 <translation id="2373666622366160481">依紙張大小自動調整</translation>
 <translation id="2375406435414127095">連線至你的手機</translation>
+<translation id="2376056713414548745">朗讀內容</translation>
 <translation id="2377588536920405462">關閉裝置的主要位置資訊設定即可停用定位服務。你也可以前往位置資訊設定,將使用 Wi‑Fi、行動網路和感應器的定位功能關閉。</translation>
 <translation id="2377667304966270281">硬性錯誤數</translation>
 <translation id="237828693408258535">要翻譯這個網頁嗎?</translation>
@@ -2324,6 +2326,7 @@
 <translation id="3163511056918491211">隨時可以輕鬆還原資料或改用其他裝置。備份內容會上傳到 Google,並使用你的 Google 帳戶密碼加密。</translation>
 <translation id="3164329792803560526">這個分頁正與 <ph name="APP_NAME" /> 共用</translation>
 <translation id="3165390001037658081">部分電信業者可能會封鎖這項功能。</translation>
+<translation id="3169930038976362151">選擇符合自身需求的主題。如要變更主題、桌布、螢幕保護程式和其他設定,只要按住桌面即可。</translation>
 <translation id="3170072451822350649">你也可以略過登入程序,<ph name="LINK_START" />以訪客身分瀏覽<ph name="LINK_END" />。</translation>
 <translation id="31774765611822736">新分頁位於左側</translation>
 <translation id="3177909033752230686">網頁語言:</translation>
@@ -3196,6 +3199,7 @@
 <translation id="402184264550408568">(TCP)</translation>
 <translation id="4021909830315618592">複製版本詳細資料</translation>
 <translation id="4021941025609472374">關閉左側的分頁</translation>
+<translation id="402211067068791756">這會清除目前顯示的網站所儲存的資料,共 <ph name="TOTAL_USAGE" /></translation>
 <translation id="4022426551683927403">新增到字典(&amp;A)</translation>
 <translation id="4025039777635956441">將所選網站設為靜音</translation>
 <translation id="4028467762035011525">新增輸入法</translation>
@@ -3446,6 +3450,7 @@
 <translation id="4281844954008187215">服務條款</translation>
 <translation id="4282196459431406533">Smart Lock 已啟用</translation>
 <translation id="4284755288573763878">要關閉安全瀏覽強化防護功能嗎?</translation>
+<translation id="4284903252249997120">ChromeVox 螢幕閱讀器和隨選朗讀</translation>
 <translation id="4285418559658561636">更新密碼</translation>
 <translation id="4285498937028063278">取消固定</translation>
 <translation id="428565720843367874">掃描這個檔案時,防毒軟體發生意外錯誤。</translation>
@@ -4984,6 +4989,7 @@
 <translation id="5827733057563115968">下一個字詞預測</translation>
 <translation id="5828545842856466741">新增設定檔...</translation>
 <translation id="5828633471261496623">列印中...</translation>
+<translation id="5828797982387013521">選取 Playbook</translation>
 <translation id="5830205393314753525">無法開啟「<ph name="APP_NAME" />」</translation>
 <translation id="5830720307094128296">另存網頁(&amp;A)...</translation>
 <translation id="5832813618714645810">設定檔</translation>
@@ -5074,6 +5080,7 @@
 
   公開指數 (<ph name="PUBLIC_EXPONENT_NUM_BITS" /> 位元):
   <ph name="EXPONENT_HEX_DUMP" /></translation>
+<translation id="5916655001090539219">自動朗讀</translation>
 <translation id="5916664084637901428">開啟</translation>
 <translation id="59174027418879706">已啟用</translation>
 <translation id="5920543303088087579">你的管理員禁止使用者連線到這個網路</translation>
@@ -5358,6 +5365,7 @@
 <translation id="6200151268994853226">管理擴充功能</translation>
 <translation id="6201608810045805374">要移除這個帳戶嗎?</translation>
 <translation id="6202304368170870640">你可以使用 PIN 碼登入裝置,或將裝置解鎖。</translation>
+<translation id="6206199626856438589">系統會將你登出這些目前顯示的網站,包含已開啟的分頁</translation>
 <translation id="6206311232642889873">複製圖片(&amp;Y)</translation>
 <translation id="6207200176136643843">重設為預設縮放等級</translation>
 <translation id="6207937957461833379">國家/地區</translation>
@@ -5904,6 +5912,7 @@
 <translation id="6733620523445262364">已建立「<ph name="BOOKMARK_TITLE" />」。</translation>
 <translation id="6735304988756581115">顯示 Cookie 和其他網站資料...</translation>
 <translation id="6736243959894955139">位址</translation>
+<translation id="6737393581255281855">要清除顯示的資料嗎?</translation>
 <translation id="6737663862851963468">移除 Kerberos 票證</translation>
 <translation id="6738430949033571771">正在驗證帳戶...</translation>
 <translation id="6739923123728562974">顯示桌面捷徑</translation>
@@ -7196,6 +7205,7 @@
 <translation id="7988355189918024273">啟用無障礙功能</translation>
 <translation id="7988805580376093356">保留現有作業系統,並透過 USB 執行 <ph name="DEVICE_OS" />。</translation>
 <translation id="7991296728590311172">切換控制功能設定</translation>
+<translation id="7992203134935383159">語音合成</translation>
 <translation id="7997826902155442747">處理優先順序</translation>
 <translation id="7999229196265990314">已建立下列檔案:
 
@@ -7582,6 +7592,7 @@
 <translation id="8366396658833131068">你的網路連線已恢復。請選取其他網路,或按底下的 [繼續] 按鈕啟動 Kiosk 應用程式。</translation>
 <translation id="8366694425498033255">選字鍵</translation>
 <translation id="8368859634510605990">開啟所有書籤(&amp;O)</translation>
+<translation id="8369028061188107403">這會清除目前顯示的網站所儲存的資料 (共 <ph name="TOTAL_USAGE" />),以及所安裝的應用程式</translation>
 <translation id="8370294614544004647">闔上筆電時進入休眠狀態</translation>
 <translation id="8371695176452482769">請說話</translation>
 <translation id="8371925839118813971">{NUM_TABS,plural, =1{關閉網站音訊}other{關閉多個網站的音訊}}</translation>
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index 3811f35..61b400e 100644
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -4379,7 +4379,6 @@
     ]
     deps += [
       ":browser_themes",
-      ":coupon_db_content_proto",
       ":theme_properties",
       "//chrome/app:command_ids",
       "//chrome/app/theme:chrome_unscaled_resources_grit",
@@ -4431,6 +4430,7 @@
       "//components/app_constants",
       "//components/autofill_assistant/browser/public:proto",
       "//components/commerce/core:cart_db_content_proto",
+      "//components/commerce/core:coupon_db_content_proto",
       "//components/commerce/core:public",
       "//components/constrained_window",
       "//components/device_signals/core/browser",
@@ -8303,12 +8303,6 @@
   }
 }
 
-if (!is_android) {
-  proto_library("coupon_db_content_proto") {
-    sources = [ "commerce/coupons/coupon_db_content.proto" ]
-  }
-}
-
 if (is_chromeos_lacros) {
   proto_library("dlp_policy_event_proto") {
     sources = [ "chromeos/policy/dlp/dlp_policy_event.proto" ]
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index eaf69de..2158012ab 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -3342,6 +3342,9 @@
     {"top-chrome-touch-ui", flag_descriptions::kTopChromeTouchUiName,
      flag_descriptions::kTopChromeTouchUiDescription, kOsDesktop,
      MULTI_VALUE_TYPE(kTopChromeTouchUiChoices)},
+    {"variable-colrv1", flag_descriptions::kVariableCOLRV1Name,
+     flag_descriptions::kVariableCOLRV1Description, kOsAll,
+     FEATURE_VALUE_TYPE(blink::features::kVariableCOLRV1)},
 #if BUILDFLAG(ENABLE_WEBUI_TAB_STRIP)
     {flag_descriptions::kWebUITabStripFlagId,
      flag_descriptions::kWebUITabStripName,
@@ -8694,6 +8697,14 @@
      FEATURE_VALUE_TYPE(features::kRequestDesktopSiteAdditions)},
 #endif  // BUILDFLAG(IS_ANDROID)
 
+#if !BUILDFLAG(IS_ANDROID)
+    {"enable-web-hid-on-extension-service-worker",
+     flag_descriptions::kEnableWebHidOnExtensionServiceWorkerName,
+     flag_descriptions::kEnableWebHidOnExtensionServiceWorkerDescription,
+     kOsDesktop,
+     FEATURE_VALUE_TYPE(features::kEnableWebHidOnExtensionServiceWorker)},
+#endif
+
     // NOTE: Adding a new flag requires adding a corresponding entry to enum
     // "LoginCustomFlags" in tools/metrics/histograms/enums.xml. See "Flag
     // Histograms" in tools/metrics/histograms/README.md (run the
diff --git a/chrome/browser/android/customtabs/tab_interaction_recorder_android.cc b/chrome/browser/android/customtabs/tab_interaction_recorder_android.cc
index 8748565..d7c268cb 100644
--- a/chrome/browser/android/customtabs/tab_interaction_recorder_android.cc
+++ b/chrome/browser/android/customtabs/tab_interaction_recorder_android.cc
@@ -46,7 +46,9 @@
   autofill_manager->AddObserver(this);
 }
 
-AutofillObserverImpl::~AutofillObserverImpl() = default;
+AutofillObserverImpl::~AutofillObserverImpl() {
+  Invalidate();
+}
 
 void AutofillObserverImpl::OnFormSubmitted() {
   OnFormInteraction();
@@ -64,10 +66,16 @@
   OnFormInteraction();
 }
 
+void AutofillObserverImpl::Invalidate() {
+  if (IsInObserverList()) {
+    DCHECK(autofill_manager_);
+    autofill_manager_->RemoveObserver(this);
+    autofill_manager_ = nullptr;
+  }
+}
+
 void AutofillObserverImpl::OnFormInteraction() {
-  DCHECK(autofill_manager_);
-  autofill_manager_->RemoveObserver(this);
-  autofill_manager_ = nullptr;
+  Invalidate();
   std::move(form_interaction_callback_).Run();
 }
 
@@ -120,6 +128,10 @@
 
 void TabInteractionRecorderAndroid::StartObservingFrame(
     RenderFrameHost* render_frame_host) {
+  // Do not observe the same frame more than once.
+  if (rfh_observer_map_[render_frame_host->GetGlobalId()])
+    return;
+
   AutofillManager* autofill_manager =
       test_autofill_manager_ ? test_autofill_manager_.get()
                              : GetAutofillManager(render_frame_host);
diff --git a/chrome/browser/android/customtabs/tab_interaction_recorder_android.h b/chrome/browser/android/customtabs/tab_interaction_recorder_android.h
index 0951db6..8c9c7f8 100644
--- a/chrome/browser/android/customtabs/tab_interaction_recorder_android.h
+++ b/chrome/browser/android/customtabs/tab_interaction_recorder_android.h
@@ -38,6 +38,7 @@
 
  private:
   void OnFormInteraction();
+  void Invalidate();
 
   raw_ptr<autofill::AutofillManager> autofill_manager_;
   OnFormInteractionCallback form_interaction_callback_;
@@ -64,10 +65,17 @@
   bool has_form_interactions() const { return has_form_interactions_; }
 
   // content::WebContentsObserver:
+
+  // Dispatch an AutofillManagerObserver when a frame becomes active, or remove
+  // the old AutofillManagerObserver when a frame becomes inactive.
   void RenderFrameHostStateChanged(
       content::RenderFrameHost* render_frame_host,
       content::RenderFrameHost::LifecycleState old_state,
       content::RenderFrameHost::LifecycleState new_state) override;
+  // When a new frame is created, |RenderFrameHostStateChanged| happen earlier
+  // than a AutofillManager initialized in such frame, which happened at
+  // |DidFinishNavigation|. Observing |DidFinishNavigation| ensure this class
+  // to dispatch the AutofillManagerObserver for newly created AutofillManager.
   void DidFinishNavigation(
       content::NavigationHandle* navigation_handle) override;
   void DidGetUserInteraction(const blink::WebInputEvent& event) override;
diff --git a/chrome/browser/android/customtabs/tab_interaction_recorder_android_unittest.cc b/chrome/browser/android/customtabs/tab_interaction_recorder_android_unittest.cc
index c62365d1..15864bc 100644
--- a/chrome/browser/android/customtabs/tab_interaction_recorder_android_unittest.cc
+++ b/chrome/browser/android/customtabs/tab_interaction_recorder_android_unittest.cc
@@ -80,13 +80,12 @@
     manager_ = std::make_unique<MockAutofillManager>(driver_.get(), &client_);
   }
 
-  void TearDown() override {
-    manager_.reset();
-    driver_.reset();
-  }
+  void TearDown() override { driver_.reset(); }
 
   MockAutofillManager* autofill_manager() { return manager_.get(); }
 
+  void DestroyManager() { manager_.release(); }
+
  protected:
   base::test::TaskEnvironment task_environment_;
   NiceMock<MockAutofillClient> client_;
@@ -114,6 +113,16 @@
   delete observer;
 }
 
+TEST_F(AutofillObserverImplTest, TestAutofillManagerDestroy) {
+  base::MockOnceCallback<void()> callback;
+  auto* observer = new AutofillObserverImpl(autofill_manager(), callback.Get());
+
+  DestroyManager();
+
+  EXPECT_CALL(callback, Run()).Times(0);
+  delete observer;
+}
+
 // === TabInteractionRecorderAndroidTest ===
 
 class TabInteractionRecorderAndroidTest
@@ -168,6 +177,30 @@
   EXPECT_TRUE(helper->has_form_interactions());
 }
 
+TEST_F(TabInteractionRecorderAndroidTest, HadFormInteractionOn2ndPage) {
+  std::unique_ptr<content::WebContents> contents = CreateTestWebContents();
+  auto* helper = TabInteractionRecorderAndroid::FromWebContents(contents.get());
+
+  EXPECT_FALSE(helper->has_form_interactions());
+
+  // Set a new autofill manager, assuming it is the autofill manager in the new
+  // frame. Since web content has navigated away from prev frame, autofill
+  // manager observer should be removed from previous autofill manager.
+  std::unique_ptr<MockAutofillManager> new_autofill_manager =
+      std::make_unique<MockAutofillManager>(driver_.get(), &client_);
+  helper->SetAutofillManagerForTest(new_autofill_manager.get());
+
+  content::WebContentsTester::For(contents.get())
+      ->NavigateAndCommit(GURL("https://bar.com"));
+  task_environment()->RunUntilIdle();
+
+  OnTextFieldDidChangeForAutofillManager(autofill_manager());
+  EXPECT_FALSE(helper->has_form_interactions());
+
+  OnTextFieldDidChangeForAutofillManager(new_autofill_manager.get());
+  EXPECT_TRUE(helper->has_form_interactions());
+}
+
 TEST_F(TabInteractionRecorderAndroidTest, HasNavigatedFromFirstPage) {
   std::unique_ptr<content::WebContents> contents = CreateTestWebContents();
   auto* helper = TabInteractionRecorderAndroid::FromWebContents(contents.get());
diff --git a/chrome/browser/app_controller_mac.mm b/chrome/browser/app_controller_mac.mm
index 6e8c3c5..4e06ce9 100644
--- a/chrome/browser/app_controller_mac.mm
+++ b/chrome/browser/app_controller_mac.mm
@@ -580,8 +580,8 @@
 
 @synthesize startupComplete = _startupComplete;
 
-+ (void)initialize {
-  if (self == [AppController self]) {
+- (instancetype)init {
+  if (self = [super init]) {
     // -[NSMenu cr_menuItemForKeyEquivalentEvent:] lives in /content, but
     // we need to execute special update code before the search begins.
     // Setting this block gives us the hook we need.
@@ -594,6 +594,7 @@
           updateMenuItemKeyEquivalents];
     }];
   }
+  return self;
 }
 
 - (void)dealloc {
diff --git a/chrome/browser/ash/login/screens/hid_detection_screen_browsertest.cc b/chrome/browser/ash/login/screens/hid_detection_screen_browsertest.cc
index bc06728..1eef23b 100644
--- a/chrome/browser/ash/login/screens/hid_detection_screen_browsertest.cc
+++ b/chrome/browser/ash/login/screens/hid_detection_screen_browsertest.cc
@@ -3,6 +3,7 @@
 // found in the LICENSE file.
 
 #include "ash/components/hid_detection/fake_hid_detection_manager.h"
+#include "ash/components/hid_detection/hid_detection_manager.h"
 #include "ash/components/hid_detection/hid_detection_utils.h"
 #include "ash/constants/ash_features.h"
 #include "ash/constants/ash_switches.h"
@@ -38,12 +39,16 @@
 
 using ::testing::_;
 using HidType = hid_detection::HidType;
+using InputState = hid_detection::HidDetectionManager::InputState;
 using NiceMockDevice =
     std::unique_ptr<testing::NiceMock<device::MockBluetoothDevice>>;
 
 const uint32_t kTestBluetoothClass = 1337u;
 const char kTestBluetoothName[] = "testName";
 
+const char kTestPointerName[] = "pointer";
+const char kTestKeyboardName[] = "keyboard";
+
 const test::UIPath kHidContinueButton = {"hid-detection",
                                          "hid-continue-button"};
 const test::UIPath kHidTouchscreenEntry = {"hid-detection",
@@ -51,6 +56,20 @@
 const test::UIPath kHidMouseTick = {"hid-detection", "mouse-tick"};
 const test::UIPath kHidKeyboardTick = {"hid-detection", "keyboard-tick"};
 
+InputState GetHidInputState(
+    device::mojom::InputDeviceType connected_hid_device_type) {
+  switch (connected_hid_device_type) {
+    case device::mojom::InputDeviceType::TYPE_BLUETOOTH:
+      return InputState::kPairedViaBluetooth;
+    case device::mojom::InputDeviceType::TYPE_USB:
+      return InputState::kConnectedViaUsb;
+    case device::mojom::InputDeviceType::TYPE_SERIO:
+      [[fallthrough]];
+    case device::mojom::InputDeviceType::TYPE_UNKNOWN:
+      return InputState::kConnected;
+  }
+}
+
 }  // namespace
 
 // TODO(crbug/1173782): use INSTANTIATE_TEST_SUITE_P to test this for
@@ -63,6 +82,12 @@
     if (GetParam()) {
       scoped_feature_list_.InitAndEnableFeature(
           ash::features::kOobeHidDetectionRevamp);
+
+      auto fake_hid_detection_manager =
+          std::make_unique<hid_detection::FakeHidDetectionManager>();
+      fake_hid_detection_manager_ = fake_hid_detection_manager.get();
+      HIDDetectionScreen::OverrideHidDetectionManagerForTesting(
+          std::move(fake_hid_detection_manager));
     } else {
       scoped_feature_list_.InitAndDisableFeature(
           ash::features::kOobeHidDetectionRevamp);
@@ -139,7 +164,37 @@
     }
   }
 
-  void AddDevice(const device::BluetoothDeviceType device_type) {
+  void SimulatePointerHidConnected(device::mojom::InputDeviceType device_type) {
+    if (GetParam()) {
+      fake_hid_detection_manager_->SetHidStatusPointerMetadata(
+          {GetHidInputState(device_type), kTestPointerName});
+      return;
+    }
+    hid_controller_.AddMouse(device_type);
+  }
+
+  void SimulateKeyboardHidConnected(
+      device::mojom::InputDeviceType device_type) {
+    if (GetParam()) {
+      fake_hid_detection_manager_->SetHidStatusKeyboardMetadata(
+          {GetHidInputState(device_type), kTestKeyboardName});
+      return;
+    }
+    hid_controller_.AddKeyboard(device_type);
+  }
+
+  void SimulatePointerHidRemoved() {
+    // TODO(b/229013815): Add removal code for revamped screen.
+    hid_controller_.RemoveMouse();
+  }
+
+  void SimulateKeyboardHidRemoved() {
+    // TODO(b/229013815): Add removal code for revamped screen.
+    hid_controller_.RemoveKeyboard();
+  }
+
+  void SimulateBluetoothDeviceDiscovered(
+      const device::BluetoothDeviceType device_type) {
     // We use the number of devices created in this test as the address.
     std::string address = base::NumberToString(num_devices_created_);
     ++num_devices_created_;
@@ -160,7 +215,15 @@
     hid_detection_screen_->DeviceAdded(/*adapter=*/nullptr, mock_device.get());
   }
 
-  test::HIDControllerMixin hid_controller_{&mixin_host_};
+  scoped_refptr<testing::NiceMock<device::MockBluetoothAdapter>>
+  GetMockBluetoothAdapter() {
+    return hid_controller_.mock_bluetooth_adapter();
+  }
+
+  void SetWaitUntilIdleAfterDeviceUpdate(bool wait) {
+    if (!GetParam())
+      hid_controller_.set_wait_until_idle_after_device_update(wait);
+  }
 
   size_t num_devices_created_ = 0u;
 
@@ -169,6 +232,9 @@
  private:
   HIDDetectionScreen* hid_detection_screen_;
 
+  test::HIDControllerMixin hid_controller_{&mixin_host_};
+  hid_detection::FakeHidDetectionManager* fake_hid_detection_manager_;
+
   // HID detection screen only appears for Chromebases, Chromebits, and
   // Chromeboxes.
   base::test::ScopedChromeOSVersionInfo version_{"DEVICETYPE=CHROMEBOX",
@@ -193,18 +259,18 @@
   OobeScreenWaiter(HIDDetectionView::kScreenId).Wait();
 
   // Two simultaneous pairing attempts of the same type.
-  AddDevice(device::BluetoothDeviceType::MOUSE);
+  SimulateBluetoothDeviceDiscovered(device::BluetoothDeviceType::MOUSE);
   ASSERT_TRUE(HasPendingConnectCallback());
-  AddDevice(device::BluetoothDeviceType::MOUSE);
+  SimulateBluetoothDeviceDiscovered(device::BluetoothDeviceType::MOUSE);
   ASSERT_TRUE(HasPendingConnectCallback());
   // Invoke the first device's connect callback since the second device will
   // never be attempted to be connected with.
   InvokePendingConnectCallback(/*success=*/false);
 
   // Two simultaneous pairing attempts of different types.
-  AddDevice(device::BluetoothDeviceType::KEYBOARD);
+  SimulateBluetoothDeviceDiscovered(device::BluetoothDeviceType::KEYBOARD);
   ASSERT_TRUE(HasPendingConnectCallback());
-  AddDevice(device::BluetoothDeviceType::MOUSE);
+  SimulateBluetoothDeviceDiscovered(device::BluetoothDeviceType::MOUSE);
   ASSERT_TRUE(HasPendingConnectCallback());
   InvokePendingConnectCallback(/*success=*/false);
 
@@ -219,14 +285,14 @@
                        BluetoothPairingAttemptsSequential) {
   OobeScreenWaiter(HIDDetectionView::kScreenId).Wait();
 
-  AddDevice(device::BluetoothDeviceType::MOUSE);
+  SimulateBluetoothDeviceDiscovered(device::BluetoothDeviceType::MOUSE);
   ASSERT_TRUE(HasPendingConnectCallback());
   InvokePendingConnectCallback(/*success=*/true);
-  hid_controller_.AddMouse(device::mojom::InputDeviceType::TYPE_BLUETOOTH);
-  AddDevice(device::BluetoothDeviceType::MOUSE);
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_BLUETOOTH);
+  SimulateBluetoothDeviceDiscovered(device::BluetoothDeviceType::MOUSE);
   ASSERT_FALSE(HasPendingConnectCallback());
 
-  AddDevice(device::BluetoothDeviceType::KEYBOARD);
+  SimulateBluetoothDeviceDiscovered(device::BluetoothDeviceType::KEYBOARD);
   ASSERT_TRUE(HasPendingConnectCallback());
   InvokePendingConnectCallback(/*success=*/false);
 
@@ -243,21 +309,23 @@
 
   // Generic connection types. Unlike the pointing device, which may be a tablet
   // or touchscreen, the keyboard only reports usb and bluetooth states.
-  hid_controller_.AddMouse(device::mojom::InputDeviceType::TYPE_SERIO);
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_SERIO);
   test::OobeJS().ExpectEnabledPath(kHidContinueButton);
   AssertHidConnectedCount(HidType::kSerialPointer, /*count=*/1);
 
-  hid_controller_.AddKeyboard(device::mojom::InputDeviceType::TYPE_SERIO);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_SERIO);
   EXPECT_EQ("connected", handler()->mouse_state_for_test());
   EXPECT_EQ("usb", handler()->keyboard_state_for_test());
   test::OobeJS().ExpectEnabledPath(kHidContinueButton);
   AssertHidConnectedCount(HidType::kSerialKeyboard, /*count=*/1);
 
   // Remove generic devices, add usb devices.
-  hid_controller_.RemoveDevices();
+  SimulatePointerHidRemoved();
+  SimulateKeyboardHidRemoved();
   test::OobeJS().ExpectDisabledPath(kHidContinueButton);
 
-  hid_controller_.ConnectUSBDevices();
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_USB);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
   // TODO(crbug/1173782): use screen or JS state instead of handler()
   EXPECT_EQ("usb", handler()->mouse_state_for_test());
   EXPECT_EQ("usb", handler()->keyboard_state_for_test());
@@ -266,10 +334,12 @@
   AssertHidConnectedCount(HidType::kUsbPointer, /*count=*/1);
 
   // Remove usb devices, add bluetooth devices.
-  hid_controller_.RemoveDevices();
+  SimulatePointerHidRemoved();
+  SimulateKeyboardHidRemoved();
   test::OobeJS().ExpectDisabledPath(kHidContinueButton);
 
-  hid_controller_.ConnectBTDevices();
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_BLUETOOTH);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_BLUETOOTH);
   EXPECT_EQ("paired", handler()->mouse_state_for_test());
   EXPECT_EQ("paired", handler()->keyboard_state_for_test());
   test::OobeJS().ExpectEnabledPath(kHidContinueButton);
@@ -286,16 +356,16 @@
   // Add a pair of USB mouse/keyboard so that `pointing_device_type_`
   // and `keyboard_type_` are
   // device::mojom::InputDeviceType::TYPE_USB.
-  hid_controller_.ConnectUSBDevices();
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_USB);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
 
   // Add another pair of Bluetooth mouse/keyboard.
-  hid_controller_.ConnectBTDevices();
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_BLUETOOTH);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_BLUETOOTH);
 
-  EXPECT_CALL(*hid_controller_.mock_bluetooth_adapter(),
-              SetPowered(false, _, _))
-      .Times(0);
+  EXPECT_CALL(*GetMockBluetoothAdapter(), SetPowered(false, _, _)).Times(0);
   ContinueToWelcomeScreen();
-  testing::Mock::VerifyAndClear(&*hid_controller_.mock_bluetooth_adapter());
+  testing::Mock::VerifyAndClear(&*GetMockBluetoothAdapter());
 }
 
 // Test that if there is no Bluetooth device connected on HID screen, the
@@ -304,14 +374,13 @@
                        NoBluetoothDeviceConnected) {
   OobeScreenWaiter(HIDDetectionView::kScreenId).Wait();
 
-  hid_controller_.ConnectUSBDevices();
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_USB);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
 
   // The adapter should be powered off at this moment.
-  EXPECT_CALL(*hid_controller_.mock_bluetooth_adapter(),
-              SetPowered(false, _, _))
-      .Times(1);
+  EXPECT_CALL(*GetMockBluetoothAdapter(), SetPowered(false, _, _)).Times(1);
   ContinueToWelcomeScreen();
-  testing::Mock::VerifyAndClear(&*hid_controller_.mock_bluetooth_adapter());
+  testing::Mock::VerifyAndClear(&*GetMockBluetoothAdapter());
 }
 
 // Start without devices, connect them and proceed to the network screen.
@@ -320,7 +389,8 @@
   OobeScreenWaiter(HIDDetectionView::kScreenId).Wait();
   test::OobeJS().ExpectDisabledPath(kHidContinueButton);
 
-  hid_controller_.ConnectUSBDevices();
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_USB);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
   test::OobeJS().ExpectEnabledPath(kHidContinueButton);
   test::OobeJS().TapOnPath(kHidContinueButton);
   EXPECT_EQ(GetExitResult(), HIDDetectionScreen::Result::NEXT);
@@ -334,7 +404,8 @@
 // (network screen).
 IN_PROC_BROWSER_TEST_P(HIDDetectionScreenChromeboxTest, ResumableScreen) {
   OobeScreenWaiter(HIDDetectionView::kScreenId).Wait();
-  hid_controller_.ConnectUSBDevices();
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_USB);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
   test::OobeJS().ExpectEnabledPath(kHidContinueButton);
   test::OobeJS().TapOnPath(kHidContinueButton);
   OobeScreenWaiter(NetworkScreenView::kScreenId).Wait();
@@ -348,64 +419,30 @@
   test::OobeJS().CreateVisibilityWaiter(false, kHidMouseTick)->Wait();
   test::OobeJS().CreateVisibilityWaiter(false, kHidKeyboardTick)->Wait();
 
-  hid_controller_.ConnectUSBDevices();
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_USB);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
   test::OobeJS().CreateVisibilityWaiter(true, kHidMouseTick)->Wait();
   test::OobeJS().CreateVisibilityWaiter(true, kHidKeyboardTick)->Wait();
 
   ContinueToWelcomeScreen();
 }
 
-// TODO(crbug.com/1299099): Remove when kOobeHidDetectionRevamp is launched.
-class HIDDetectionSkipTestLegacy : public HIDDetectionScreenChromeboxTest {
- public:
-  HIDDetectionSkipTestLegacy() {
-    hid_controller_.set_wait_until_idle_after_device_update(false);
-    hid_controller_.ConnectUSBDevices();
-  }
-  ~HIDDetectionSkipTestLegacy() override = default;
-
- protected:
-  base::HistogramTester histogram_tester;
-};
-
-INSTANTIATE_TEST_SUITE_P(All,
-                         HIDDetectionSkipTestLegacy,
-                         testing::Values(false));
-
-IN_PROC_BROWSER_TEST_P(HIDDetectionSkipTestLegacy, BothDevicesPreConnected) {
-  OobeScreenWaiter(WelcomeView::kScreenId).Wait();
-  EXPECT_FALSE(GetExitResult().has_value());
-  histogram_tester.ExpectTotalCount("OOBE.HidDetectionScreen.HidConnected", 0);
-}
-
 class HIDDetectionSkipTest : public HIDDetectionScreenChromeboxTest {
  public:
   HIDDetectionSkipTest() {
-    auto fake_hid_detection_manager =
-        std::make_unique<hid_detection::FakeHidDetectionManager>();
-    fake_hid_detection_manager_ = fake_hid_detection_manager.get();
-    HIDDetectionScreen::OverrideHidDetectionManagerForTesting(
-        std::move(fake_hid_detection_manager));
+    SetWaitUntilIdleAfterDeviceUpdate(false);
+    SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_USB);
+    SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
   }
   ~HIDDetectionSkipTest() override = default;
 
-  void SetUpOnMainThread() override {
-    ASSERT_TRUE(fake_hid_detection_manager_
-                    ->HasPendingIsHidDetectionRequiredCallback());
-    fake_hid_detection_manager_->InvokePendingIsHidDetectionRequiredCallback(
-        /*required=*/false);
-    HIDDetectionScreenChromeboxTest::SetUpOnMainThread();
-  }
-
  protected:
   base::HistogramTester histogram_tester;
-
-  hid_detection::FakeHidDetectionManager* fake_hid_detection_manager_;
 };
 
-INSTANTIATE_TEST_SUITE_P(All, HIDDetectionSkipTest, testing::Values(true));
+INSTANTIATE_TEST_SUITE_P(All, HIDDetectionSkipTest, testing::Bool());
 
-IN_PROC_BROWSER_TEST_P(HIDDetectionSkipTest, HIDDetectionNotRequired) {
+IN_PROC_BROWSER_TEST_P(HIDDetectionSkipTest, BothDevicesPreConnected) {
   OobeScreenWaiter(WelcomeView::kScreenId).Wait();
   EXPECT_FALSE(GetExitResult().has_value());
   histogram_tester.ExpectTotalCount("OOBE.HidDetectionScreen.HidConnected", 0);
@@ -515,9 +552,30 @@
   }
 
  protected:
-  test::HIDControllerMixin hid_controller_{&mixin_host_};
+  void SimulatePointerHidConnected(device::mojom::InputDeviceType device_type) {
+    // TODO(b/229013815): Add connected code for revamped screen.
+    hid_controller_.AddMouse(device_type);
+  }
+
+  void SimulateKeyboardHidConnected(
+      device::mojom::InputDeviceType device_type) {
+    // TODO(b/229013815): Add connected code for revamped screen.
+    hid_controller_.AddKeyboard(device_type);
+  }
+
+  void SimulatePointerHidRemoved() {
+    // TODO(b/229013815): Add removal code for revamped screen.
+    hid_controller_.RemoveMouse();
+  }
+
+  void SimulateKeyboardHidRemoved() {
+    // TODO(b/229013815): Add removal code for revamped screen.
+    hid_controller_.RemoveKeyboard();
+  }
 
  private:
+  test::HIDControllerMixin hid_controller_{&mixin_host_};
+
   // Set device type to a Chromebase with a touch screen.
   // This should show the HIDDetectionScreen with the continue button
   // always enabled, since the user can complete all of OOBE steps
@@ -534,11 +592,13 @@
   test::OobeJS().CreateVisibilityWaiter(true, kHidTouchscreenEntry)->Wait();
   test::OobeJS().ExpectEnabledPath(kHidContinueButton);
 
-  hid_controller_.ConnectUSBDevices();
+  SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_USB);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
   test::OobeJS().CreateVisibilityWaiter(true, kHidMouseTick)->Wait();
   test::OobeJS().CreateVisibilityWaiter(true, kHidKeyboardTick)->Wait();
 
-  hid_controller_.RemoveDevices();
+  SimulatePointerHidRemoved();
+  SimulateKeyboardHidRemoved();
   test::OobeJS().CreateVisibilityWaiter(false, kHidMouseTick)->Wait();
   test::OobeJS().CreateVisibilityWaiter(false, kHidKeyboardTick)->Wait();
 
@@ -549,8 +609,8 @@
     : public HIDDetectionScreenChromeboxTest {
  public:
   HIDDetectionScreenPreConnectedDeviceTest() {
-    hid_controller_.set_wait_until_idle_after_device_update(false);
-    hid_controller_.AddMouse(device::mojom::InputDeviceType::TYPE_USB);
+    SetWaitUntilIdleAfterDeviceUpdate(false);
+    SimulatePointerHidConnected(device::mojom::InputDeviceType::TYPE_USB);
   }
 };
 
@@ -568,13 +628,13 @@
   AssertHidConnectedCount(HidType::kUsbPointer, /*count=*/0);
   AssertHidConnectedCount(HidType::kUsbKeyboard, /*count=*/0);
 
-  hid_controller_.AddKeyboard(device::mojom::InputDeviceType::TYPE_USB);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
   test::OobeJS().CreateVisibilityWaiter(true, kHidKeyboardTick)->Wait();
   test::OobeJS().ExpectEnabledPath(kHidContinueButton);
   AssertHidConnectedCount(HidType::kUsbPointer, /*count=*/0);
   AssertHidConnectedCount(HidType::kUsbKeyboard, /*count=*/1);
 
-  hid_controller_.AddKeyboard(device::mojom::InputDeviceType::TYPE_USB);
+  SimulateKeyboardHidConnected(device::mojom::InputDeviceType::TYPE_USB);
   test::OobeJS().CreateVisibilityWaiter(true, kHidKeyboardTick)->Wait();
   test::OobeJS().ExpectEnabledPath(kHidContinueButton);
   AssertHidConnectedCount(HidType::kUsbPointer, /*count=*/0);
diff --git a/chrome/browser/ash/login/screens/user_creation_screen_browsertest.cc b/chrome/browser/ash/login/screens/user_creation_screen_browsertest.cc
index ad84828..bddd07d 100644
--- a/chrome/browser/ash/login/screens/user_creation_screen_browsertest.cc
+++ b/chrome/browser/ash/login/screens/user_creation_screen_browsertest.cc
@@ -58,6 +58,7 @@
   }
 
   void SelectUserTypeOnUserCreationScreen(test::UIPath element_id) {
+    OobeScreenWaiter(UserCreationView::kScreenId).Wait();
     ASSERT_TRUE(LoginScreenTestApi::IsEnterpriseEnrollmentButtonShown());
     test::OobeJS().ExpectVisiblePath(kUserCreationDialog);
     test::OobeJS().ExpectHasAttribute("checked", kSelfButton);
@@ -66,6 +67,7 @@
   }
 
   void SelectSetUpMethodOnChildScreen(test::UIPath element_id) {
+    OobeScreenWaiter(UserCreationView::kScreenId).Wait();
     ASSERT_FALSE(LoginScreenTestApi::IsEnterpriseEnrollmentButtonShown());
     test::OobeJS().ExpectHiddenPath(kUserCreationDialog);
     test::OobeJS().ExpectVisiblePath(kChildSignInDialog);
diff --git a/chrome/browser/ash/policy/enrollment/auto_enrollment_client_impl_unittest.cc b/chrome/browser/ash/policy/enrollment/auto_enrollment_client_impl_unittest.cc
index a9c3f71..6cd2a90 100644
--- a/chrome/browser/ash/policy/enrollment/auto_enrollment_client_impl_unittest.cc
+++ b/chrome/browser/ash/policy/enrollment/auto_enrollment_client_impl_unittest.cc
@@ -250,6 +250,15 @@
         .RetiresOnSaturation();
   }
 
+  void ServerWillReplyEmptyStateRetrievalResponse() {
+    EXPECT_CALL(job_creation_handler_, OnJobCreation)
+        .WillOnce(
+            DoAll(service_->CaptureJobType(&state_retrieval_job_type_),
+                  service_->CaptureRequest(&last_request_),
+                  service_->SendJobOKAsync(em::DeviceManagementResponse())))
+        .RetiresOnSaturation();
+  }
+
   DeviceManagementService::JobConfiguration::JobType
   GetExpectedStateRetrievalJobType() {
     return protocol_ == AutoEnrollmentProtocol::kFRE
@@ -438,6 +447,15 @@
         .RetiresOnSaturation();
   }
 
+  void ServerWillReplyEmptyAutoEnrollmentResponse() {
+    EXPECT_CALL(job_creation_handler_, OnJobCreation)
+        .WillOnce(
+            DoAll(service_->CaptureJobType(&auto_enrollment_job_type_),
+                  service_->CaptureRequest(&last_request_),
+                  service_->SendJobOKAsync(em::DeviceManagementResponse())))
+        .RetiresOnSaturation();
+  }
+
   void ServerReplyAsyncJobWithAutoEnrollmentResponse(
       int64_t modulus,
       bool with_hashes,
@@ -565,6 +583,25 @@
   EXPECT_FALSE(HasServerBackedState());
 }
 
+TEST_F(AutoEnrollmentClientImplTest, EmptyAutoEnrollmentRespose) {
+  ServerWillReplyEmptyAutoEnrollmentResponse();
+  client()->Start();
+  base::RunLoop().RunUntilIdle();
+  ExpectHashDanceRequestStatusHistogram(DM_STATUS_SUCCESS,
+                                        /*dm_status_count=*/1);
+
+  // Verify Hash dance protocol overall execution time histogram has been
+  // recorded correctly. And its success time histogram has not been recorded.
+  ExpectHashDanceSyncExecutionTimeHistogram(
+      /*success_time_recorded=*/false);
+
+  EXPECT_EQ(auto_enrollment_job_type_,
+            DeviceManagementService::JobConfiguration::TYPE_AUTO_ENROLLMENT);
+  EXPECT_EQ(state_, AUTO_ENROLLMENT_STATE_SERVER_ERROR);
+  EXPECT_FALSE(HasCachedDecision());
+  EXPECT_FALSE(HasServerBackedState());
+}
+
 TEST_F(AutoEnrollmentClientImplTest, ClientUploadsRightBits) {
   ServerWillReply(/*modulus=*/-1, /*with_hashes=*/false,
                   /*with_id_hash=*/false);
@@ -735,6 +772,30 @@
   EXPECT_FALSE(HasServerBackedState());
 }
 
+TEST_F(AutoEnrollmentClientImplTest, ServerRepliesWithTooLargeModulus) {
+  constexpr int64_t max_modulus =
+      (UINT64_C(1) << (AutoEnrollmentClient::kMaximumPower + 1)) - 1;
+  ServerWillReply(
+      /*modulus=*/max_modulus,
+      /*with_hashes=*/false,
+      /*with_id_hash=*/false);
+  client()->Start();
+  base::RunLoop().RunUntilIdle();
+  ExpectHashDanceRequestStatusHistogram(DM_STATUS_SUCCESS,
+                                        /*dm_status_count=*/1);
+
+  // Verify Hash dance protocol overall execution time histogram has been
+  // recorded correctly. And its success time histogram has not been recorded.
+  ExpectHashDanceSyncExecutionTimeHistogram(
+      /*success_time_recorded=*/false);
+
+  EXPECT_EQ(auto_enrollment_job_type_,
+            DeviceManagementService::JobConfiguration::TYPE_AUTO_ENROLLMENT);
+  EXPECT_EQ(state_, AUTO_ENROLLMENT_STATE_SERVER_ERROR);
+  EXPECT_FALSE(HasCachedDecision());
+  EXPECT_FALSE(HasServerBackedState());
+}
+
 TEST_F(AutoEnrollmentClientImplTest, AskNonPowerOf2) {
   InSequence sequence;
   ServerWillReply(/*modulus=*/100, /*with_hashes=*/false,
@@ -1362,6 +1423,27 @@
   EXPECT_EQ(state_retrieval_job_type_, GetExpectedStateRetrievalJobType());
 }
 
+TEST_F(AutoEnrollmentClientImplTest,
+       NetworkFailureDuringStateRetrievalRequest) {
+  // Set up cached server state availability response. The client will use it
+  // to initiate state retrieval request instead of requesting the server for
+  // state availability.
+  local_state_->SetUserPref(prefs::kShouldAutoEnroll,
+                            std::make_unique<base::Value>(true));
+  local_state_->SetUserPref(prefs::kAutoEnrollmentPowerLimit,
+                            std::make_unique<base::Value>(8));
+
+  ServerWillFail(net::ERR_FAILED, DeviceManagementService::kSuccess);
+
+  client()->Start();
+  base::RunLoop().RunUntilIdle();
+
+  ExpectHashDanceNetworkErrorHistogram(-net::ERR_FAILED);
+  EXPECT_EQ(failed_job_type_, GetExpectedStateRetrievalJobType());
+  EXPECT_EQ(state_, AUTO_ENROLLMENT_STATE_CONNECTION_ERROR);
+  EXPECT_FALSE(HasServerBackedState());
+}
+
 using AutoEnrollmentClientImplFREToInitialEnrollmentTest =
     AutoEnrollmentClientImplTest;
 
@@ -1723,5 +1805,66 @@
   }
 }
 
+TEST_F(PsmHelperInitialEnrollmentTest, PsmSucceedAndStateRetrievalIsEmpty) {
+  const base::TimeDelta kOneSecondTimeDelta = base::Seconds(1);
+  const base::Time kExpectedPsmDeterminationTimestamp =
+      base::Time::NowFromSystemTime() + kOneSecondTimeDelta;
+
+  // Advance the time forward one second.
+  task_environment_.FastForwardBy(kOneSecondTimeDelta);
+
+  PsmWillReplyWith(PsmResult::kSuccessfulDetermination,
+                   /*membership_result=*/true,
+                   kExpectedPsmDeterminationTimestamp);
+
+  ServerWillReplyEmptyStateRetrievalResponse();
+
+  client()->Start();
+  base::RunLoop().RunUntilIdle();
+
+  // Verify PSM result.
+  EXPECT_EQ(GetStateDiscoveryResult(),
+            StateDiscoveryResult::kSuccessHasServerSideState);
+  EXPECT_EQ(GetPsmExecutionResult(),
+            em::DeviceRegisterRequest::PSM_RESULT_SUCCESSFUL_WITH_STATE);
+  EXPECT_EQ(kExpectedPsmDeterminationTimestamp, GetPsmDeterminationTimestamp());
+
+  EXPECT_EQ(state_retrieval_job_type_, GetExpectedStateRetrievalJobType());
+  EXPECT_EQ(state_, AUTO_ENROLLMENT_STATE_SERVER_ERROR);
+  EXPECT_FALSE(HasServerBackedState());
+}
+
+TEST_F(PsmHelperInitialEnrollmentTest, PsmSucceedAndDeviceDisabled) {
+  const base::TimeDelta kOneSecondTimeDelta = base::Seconds(1);
+  const base::Time kExpectedPsmDeterminationTimestamp =
+      base::Time::NowFromSystemTime() + kOneSecondTimeDelta;
+
+  // Advance the time forward one second.
+  task_environment_.FastForwardBy(kOneSecondTimeDelta);
+
+  PsmWillReplyWith(PsmResult::kSuccessfulDetermination,
+                   /*membership_result=*/true,
+                   kExpectedPsmDeterminationTimestamp);
+
+  ServerWillSendState("example.com",
+                      em::DeviceStateRetrievalResponse::RESTORE_MODE_DISABLED,
+                      kDisabledMessage, kNotWithLicense,
+                      em::DeviceInitialEnrollmentStateResponse::NOT_EXIST);
+  client()->Start();
+  base::RunLoop().RunUntilIdle();
+
+  // Verify PSM result.
+  EXPECT_EQ(GetStateDiscoveryResult(),
+            StateDiscoveryResult::kSuccessHasServerSideState);
+  EXPECT_EQ(GetPsmExecutionResult(),
+            em::DeviceRegisterRequest::PSM_RESULT_SUCCESSFUL_WITH_STATE);
+  EXPECT_EQ(kExpectedPsmDeterminationTimestamp, GetPsmDeterminationTimestamp());
+
+  EXPECT_EQ(state_retrieval_job_type_, GetExpectedStateRetrievalJobType());
+  EXPECT_EQ(state_, AUTO_ENROLLMENT_STATE_DISABLED);
+  VerifyServerBackedState("example.com", kDeviceStateModeDisabled,
+                          kDisabledMessage, kNotWithLicense, kNoLicenseType);
+}
+
 }  // namespace
 }  // namespace policy
diff --git a/chrome/browser/ash/system_web_apps/system_web_app_manager_unittest.cc b/chrome/browser/ash/system_web_apps/system_web_app_manager_unittest.cc
index 65c87133..b79e7d8a 100644
--- a/chrome/browser/ash/system_web_apps/system_web_app_manager_unittest.cc
+++ b/chrome/browser/ash/system_web_apps/system_web_app_manager_unittest.cc
@@ -9,6 +9,7 @@
 
 #include "base/bind.h"
 #include "base/callback.h"
+#include "base/feature_list.h"
 #include "base/memory/scoped_refptr.h"
 #include "base/run_loop.h"
 #include "base/strings/utf_string_conversions.h"
@@ -346,28 +347,33 @@
   std::unique_ptr<web_app::WebAppCommandManager> command_manager_;
 };
 
-// Test that System Apps do install with the feature enabled.
-TEST_F(SystemWebAppManagerTest, Enabled) {
-  InitEmptyRegistrar();
+class SystemWebAppManagerTest_PrefMigrationEnabled
+    : public SystemWebAppManagerTest,
+      public testing::WithParamInterface<bool> {
+ public:
+  SystemWebAppManagerTest_PrefMigrationEnabled() {
+    bool enable_migration = GetParam();
+    if (enable_migration) {
+      scoped_feature_list_.InitWithFeatures(
+          {features::kUseWebAppDBInsteadOfExternalPrefs}, {});
+    } else {
+      scoped_feature_list_.InitWithFeatures(
+          {}, {features::kUseWebAppDBInsteadOfExternalPrefs});
+    }
+  }
 
-  SystemWebAppDelegateMap system_apps;
-  system_apps.emplace(SystemWebAppType::SETTINGS,
-                      std::make_unique<UnittestingSystemAppDelegate>(
-                          SystemWebAppType::SETTINGS, kSettingsAppInternalName,
-                          AppUrl1(), GetApp1WebAppInfoFactory()));
-  system_apps.emplace(SystemWebAppType::CAMERA,
-                      std::make_unique<UnittestingSystemAppDelegate>(
-                          SystemWebAppType::CAMERA, kCameraAppInternalName,
-                          AppUrl2(), GetApp2WebAppInfoFactory()));
+  bool IsExternalDataReadFromDBEnabled() {
+    return base::FeatureList::IsEnabled(
+        features::kUseWebAppDBInsteadOfExternalPrefs);
+  }
 
-  system_web_app_manager().SetSystemAppsForTesting(std::move(system_apps));
-  StartAndWaitForAppsToSynchronize();
-
-  EXPECT_EQ(2u, externally_managed_app_manager().install_requests().size());
-}
+ private:
+  base::test::ScopedFeatureList scoped_feature_list_;
+};
 
 // Test that changing the set of System Apps uninstalls apps.
-TEST_F(SystemWebAppManagerTest, UninstallAppInstalledInPreviousSession) {
+TEST_P(SystemWebAppManagerTest_PrefMigrationEnabled,
+       UninstallAppInstalledInPreviousSession) {
   // Simulate System Apps and a regular app that were installed in the
   // previous session.
   InitRegistrarWithSystemApps(
@@ -409,10 +415,40 @@
   EXPECT_EQ(externally_managed_app_manager().install_requests(),
             expected_install_options_list);
 
-  // We should try to uninstall the app that is no longer in the System App
-  // list.
-  EXPECT_EQ(std::vector<GURL>({AppUrl2()}),
-            externally_managed_app_manager().uninstall_requests());
+  // If read from DB is enabled, then the 2nd app is already uninstalled after
+  // synchronize, hence the uninstall_request list is empty. but if the data
+  // is read from prefs, the url still persists, so it can be read.
+  if (IsExternalDataReadFromDBEnabled()) {
+    EXPECT_EQ(std::vector<GURL>({}),
+              externally_managed_app_manager().uninstall_requests());
+  } else {
+    EXPECT_EQ(std::vector<GURL>({AppUrl2()}),
+              externally_managed_app_manager().uninstall_requests());
+  }
+}
+
+INSTANTIATE_TEST_SUITE_P(All,
+                         SystemWebAppManagerTest_PrefMigrationEnabled,
+                         ::testing::Bool());
+
+// Test that System Apps do install with the pref migration enabled.
+TEST_F(SystemWebAppManagerTest, Enabled) {
+  InitEmptyRegistrar();
+
+  SystemWebAppDelegateMap system_apps;
+  system_apps.emplace(SystemWebAppType::SETTINGS,
+                      std::make_unique<UnittestingSystemAppDelegate>(
+                          SystemWebAppType::SETTINGS, kSettingsAppInternalName,
+                          AppUrl1(), GetApp1WebAppInfoFactory()));
+  system_apps.emplace(SystemWebAppType::CAMERA,
+                      std::make_unique<UnittestingSystemAppDelegate>(
+                          SystemWebAppType::CAMERA, kCameraAppInternalName,
+                          AppUrl2(), GetApp2WebAppInfoFactory()));
+
+  system_web_app_manager().SetSystemAppsForTesting(std::move(system_apps));
+  StartAndWaitForAppsToSynchronize();
+
+  EXPECT_EQ(2u, externally_managed_app_manager().install_requests().size());
 }
 
 TEST_F(SystemWebAppManagerTest, AlwaysUpdate) {
diff --git a/chrome/browser/ash/system_web_apps/test_support/test_system_web_app_installation.cc b/chrome/browser/ash/system_web_apps/test_support/test_system_web_app_installation.cc
index ae974ca..92d2514 100644
--- a/chrome/browser/ash/system_web_apps/test_support/test_system_web_app_installation.cc
+++ b/chrome/browser/ash/system_web_apps/test_support/test_system_web_app_installation.cc
@@ -338,6 +338,7 @@
   info->theme_color = 0xFF00FF00;
   info->display_mode = blink::mojom::DisplayMode::kStandalone;
   info->user_display_mode = web_app::UserDisplayMode::kStandalone;
+  info->install_url = GURL("chrome://test-system-app/pwa.html");
   return info;
 }
 
@@ -510,6 +511,7 @@
             info->theme_color = 0xFF00FF00;
             info->display_mode = blink::mojom::DisplayMode::kStandalone;
             info->user_display_mode = web_app::UserDisplayMode::kStandalone;
+            info->install_url = GURL("chrome://initiating-app/pwa.html");
             return info;
           })));
   auto factory = std::make_unique<TestSystemWebAppWebUIControllerFactory>(
diff --git a/chrome/browser/cart/cart_discount_fetcher.cc b/chrome/browser/cart/cart_discount_fetcher.cc
index 7c424e2..94bb646 100644
--- a/chrome/browser/cart/cart_discount_fetcher.cc
+++ b/chrome/browser/cart/cart_discount_fetcher.cc
@@ -12,11 +12,11 @@
 #include "base/strings/utf_string_conversions.h"
 #include "chrome/browser/cart/cart_db.h"
 #include "chrome/browser/cart/cart_discount_metric_collector.h"
-#include "chrome/browser/commerce/coupons/coupon_db_content.pb.h"
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/grit/generated_resources.h"
 #include "components/commerce/core/commerce_feature_list.h"
 #include "components/commerce/core/proto/cart_db_content.pb.h"
+#include "components/commerce/core/proto/coupon_db_content.pb.h"
 #include "components/endpoint_fetcher/endpoint_fetcher.h"
 #include "components/search/ntp_features.h"
 #include "net/traffic_annotation/network_traffic_annotation.h"
diff --git a/chrome/browser/cart/cart_discount_fetcher.h b/chrome/browser/cart/cart_discount_fetcher.h
index 7340148..41d7a69 100644
--- a/chrome/browser/cart/cart_discount_fetcher.h
+++ b/chrome/browser/cart/cart_discount_fetcher.h
@@ -10,8 +10,8 @@
 #include "base/containers/flat_map.h"
 #include "base/memory/scoped_refptr.h"
 #include "chrome/browser/cart/cart_db.h"
-#include "chrome/browser/commerce/coupons/coupon_db_content.pb.h"
 #include "components/commerce/core/proto/cart_db_content.pb.h"
+#include "components/commerce/core/proto/coupon_db_content.pb.h"
 #include "components/endpoint_fetcher/endpoint_fetcher.h"
 
 namespace network {
diff --git a/chrome/browser/cart/fetch_discount_worker.cc b/chrome/browser/cart/fetch_discount_worker.cc
index 432ee58..6e91f667 100644
--- a/chrome/browser/cart/fetch_discount_worker.cc
+++ b/chrome/browser/cart/fetch_discount_worker.cc
@@ -9,8 +9,8 @@
 #include "base/task/thread_pool.h"
 #include "chrome/browser/browser_process.h"
 #include "chrome/browser/cart/cart_discount_fetcher.h"
-#include "chrome/browser/commerce/coupons/coupon_db_content.pb.h"
 #include "components/commerce/core/commerce_feature_list.h"
+#include "components/commerce/core/proto/coupon_db_content.pb.h"
 #include "components/search/ntp_features.h"
 #include "components/signin/public/identity_manager/access_token_info.h"
 #include "components/variations/variations.mojom.h"
diff --git a/chrome/browser/commerce/coupons/coupon_db.cc b/chrome/browser/commerce/coupons/coupon_db.cc
index 7a0991a..b65ac84 100644
--- a/chrome/browser/commerce/coupons/coupon_db.cc
+++ b/chrome/browser/commerce/coupons/coupon_db.cc
@@ -4,8 +4,8 @@
 
 #include "chrome/browser/commerce/coupons/coupon_db.h"
 
-#include "chrome/browser/commerce/coupons/coupon_db_content.pb.h"
 #include "chrome/browser/persisted_state_db/profile_proto_db_factory.h"
+#include "components/commerce/core/proto/coupon_db_content.pb.h"
 
 CouponDB::CouponDB(content::BrowserContext* browser_context)
     : proto_db_(
diff --git a/chrome/browser/commerce/coupons/coupon_service.cc b/chrome/browser/commerce/coupons/coupon_service.cc
index a96a4354..9da83b47d 100644
--- a/chrome/browser/commerce/coupons/coupon_service.cc
+++ b/chrome/browser/commerce/coupons/coupon_service.cc
@@ -4,8 +4,8 @@
 
 #include "chrome/browser/commerce/coupons/coupon_service.h"
 #include "base/observer_list.h"
-#include "chrome/browser/commerce/coupons/coupon_db_content.pb.h"
 #include "components/commerce/core/commerce_feature_list.h"
+#include "components/commerce/core/proto/coupon_db_content.pb.h"
 
 namespace {
 
diff --git a/chrome/browser/commerce/coupons/coupon_service_unittest.cc b/chrome/browser/commerce/coupons/coupon_service_unittest.cc
index ab9060e..7d548d3 100644
--- a/chrome/browser/commerce/coupons/coupon_service_unittest.cc
+++ b/chrome/browser/commerce/coupons/coupon_service_unittest.cc
@@ -5,12 +5,12 @@
 #include "chrome/browser/commerce/coupons/coupon_service.h"
 
 #include "base/memory/raw_ptr.h"
-#include "chrome/browser/commerce/coupons/coupon_db_content.pb.h"
 #include "chrome/browser/commerce/coupons/coupon_service_factory.h"
 #include "chrome/browser/persisted_state_db/profile_proto_db.h"
 #include "chrome/browser/persisted_state_db/profile_proto_db_factory.h"
 #include "chrome/test/base/testing_profile.h"
 #include "components/commerce/core/commerce_feature_list.h"
+#include "components/commerce/core/proto/coupon_db_content.pb.h"
 #include "content/public/browser/browser_thread.h"
 #include "content/public/test/browser_task_environment.h"
 #include "testing/gmock/include/gmock/gmock.h"
diff --git a/chrome/browser/extensions/api/passwords_private/password_check_delegate.cc b/chrome/browser/extensions/api/passwords_private/password_check_delegate.cc
index afa0839..8d7d4c84 100644
--- a/chrome/browser/extensions/api/passwords_private/password_check_delegate.cc
+++ b/chrome/browser/extensions/api/passwords_private/password_check_delegate.cc
@@ -18,6 +18,7 @@
 #include "base/feature_list.h"
 #include "base/memory/ref_counted.h"
 #include "base/numerics/safe_conversions.h"
+#include "base/ranges/algorithm.h"
 #include "base/strings/escape.h"
 #include "base/strings/utf_string_conversions.h"
 #include "base/threading/sequenced_task_runner_handle.h"
@@ -400,12 +401,50 @@
   }
 
   // Also return early if the check is already running.
-  if (bulk_leak_check_service_adapter_.GetBulkLeakCheckState() ==
-      State::kRunning) {
+  if (is_check_running_ ||
+      bulk_leak_check_service_adapter_.GetBulkLeakCheckState() ==
+          State::kRunning) {
     std::move(callback).Run(State::kRunning);
     return;
   }
 
+  // If automated password change from password check in settings is enabled,
+  // we make sure that the cache is warm prior to analyzing passwords.
+  is_check_running_ = true;
+  // TODO(crbug.com/1340073): Expose method in PasswordScriptsFetcher that
+  // allows checking cache state. Only run this branch if the cache is stale.
+  if (base::FeatureList::IsEnabled(
+          password_manager::features::kPasswordChange)) {
+    GetPasswordScriptsFetcher()->RefreshScriptsIfNecessary(
+        base::BindOnce(&PasswordCheckDelegate::OnPasswordScriptsFetched,
+                       weak_ptr_factory_.GetWeakPtr(), std::move(callback)));
+  } else {
+    // Otherwise, call directly.
+    StartPasswordAnalyses(std::move(callback));
+  }
+}
+
+void PasswordCheckDelegate::OnPasswordScriptsFetched(
+    StartPasswordCheckCallback callback) {
+  if (PasswordsPrivateEventRouter* event_router =
+          PasswordsPrivateEventRouterFactory::GetForProfile(profile_)) {
+    // Only update if at least one credential now has a startable script.
+    std::vector<api::passwords_private::InsecureCredential> credentials =
+        GetCompromisedCredentials();
+    if (base::ranges::any_of(credentials,
+                             &api::passwords_private::InsecureCredential::
+                                 has_startable_script)) {
+      event_router->OnCompromisedCredentialsChanged(std::move(credentials));
+    }
+  }
+  StartPasswordAnalyses(std::move(callback));
+}
+
+void PasswordCheckDelegate::StartPasswordAnalyses(
+    StartPasswordCheckCallback callback) {
+  // This is set as soon as the script availability fetching is started.
+  DCHECK(is_check_running_);
+
   // Start the weakness check, and notify observers once done.
   insecure_credentials_manager_.StartWeakCheck(base::BindOnce(
       &PasswordCheckDelegate::RecordAndNotifyAboutCompletedWeakPasswordCheck,
diff --git a/chrome/browser/extensions/api/passwords_private/password_check_delegate.h b/chrome/browser/extensions/api/passwords_private/password_check_delegate.h
index f720c99e..b0c44f517 100644
--- a/chrome/browser/extensions/api/passwords_private/password_check_delegate.h
+++ b/chrome/browser/extensions/api/passwords_private/password_check_delegate.h
@@ -62,42 +62,44 @@
   // Obtains information about weak credentials.
   std::vector<api::passwords_private::InsecureCredential> GetWeakCredentials();
 
-  // Requests the plaintext password for |credential|. If successful, this
-  // returns |credential| with its |password| member set. This can fail if no
+  // Requests the plaintext password for `credential`. If successful, this
+  // returns `credential` with its `password` member set. This can fail if no
   // matching insecure credential can be found in the password store.
   absl::optional<api::passwords_private::InsecureCredential>
   GetPlaintextInsecurePassword(
       api::passwords_private::InsecureCredential credential) const;
 
-  // Attempts to change the stored password of |credential| to |new_password|.
+  // Attempts to change the stored password of `credential` to `new_password`.
   // Returns whether the change succeeded.
   bool ChangeInsecureCredential(
       const api::passwords_private::InsecureCredential& credential,
       base::StringPiece new_password);
 
-  // Attempts to remove |credential| from the password store. Returns whether
+  // Attempts to remove `credential` from the password store. Returns whether
   // the remove succeeded.
   bool RemoveInsecureCredential(
       const api::passwords_private::InsecureCredential& credential);
 
-  // Attempts to mute |credential| from the password store. Returns whether
+  // Attempts to mute `credential` from the password store. Returns whether
   // the mute succeeded.
   bool MuteInsecureCredential(
       const api::passwords_private::InsecureCredential& credential);
 
-  // Attempts to unmute |credential| from the password store. Returns whether
+  // Attempts to unmute `credential` from the password store. Returns whether
   // the unmute succeeded.
   bool UnmuteInsecureCredential(
       const api::passwords_private::InsecureCredential& credential);
 
-  // Records that a change password flow was started for |credential| and
-  // whether |is_manual_flow| applies to the flow.
+  // Records that a change password flow was started for `credential` and
+  // whether `is_manual_flow` applies to the flow.
   void RecordChangePasswordFlowStarted(
       const api::passwords_private::InsecureCredential& credential,
       bool is_manual_flow);
 
-  // Requests to start a check for insecure passwords. Invokes |callback| once a
-  // check is running or the request was stopped via StopPasswordCheck().
+  // Checks that all preconditions for running a password check are fulfilled
+  // and, once that is the case, launches the password check. Invokes `callback`
+  // once a check is running or the request was stopped via
+  // `StopPasswordCheck()`.
   void StartPasswordCheck(
       StartPasswordCheckCallback callback = base::DoNothing());
   // Stops checking for insecure passwords.
@@ -144,6 +146,15 @@
   const password_manager::CredentialUIEntry* FindMatchingEntry(
       const api::passwords_private::InsecureCredential& credential) const;
 
+  // Reacts to a refreshed password scripts cache. Checks whether any of the
+  // compromised credentials have a password script and only then calls the
+  // event router to update the frontend.
+  void OnPasswordScriptsFetched(StartPasswordCheckCallback callback);
+
+  // Starts the analyses of whether credentials are compromised and/or weak.
+  // Assumes that `StartPasswordCheck()` was called prior.
+  void StartPasswordAnalyses(StartPasswordCheckCallback callback);
+
   // Invoked when a compromised password check completes. Records the current
   // timestamp in `kLastTimePasswordCheckCompleted` pref.
   void RecordAndNotifyAboutCompletedCompromisedPasswordCheck();
@@ -152,12 +163,12 @@
   // in `last_completed_weak_check_`.
   void RecordAndNotifyAboutCompletedWeakPasswordCheck();
 
-  // Tries to notify the PasswordsPrivateEventRouter that the password check
-  // status has changed. Invoked after OnSavedPasswordsChanged and
-  // OnStateChanged.
+  // Tries to notify the `PasswordsPrivateEventRouter` that the password check
+  // status has changed. Invoked after `OnSavedPasswordsChanged` and
+  // `OnStateChanged`.
   void NotifyPasswordCheckStatusChanged();
 
-  // Constructs |InsecureCredential| from |CredentialUIEntry|.
+  // Constructs `InsecureCredential` from `CredentialUIEntry`.
   api::passwords_private::InsecureCredential ConstructInsecureCredential(
       const password_manager::CredentialUIEntry& entry);
 
@@ -176,7 +187,7 @@
   // Raw pointer to the underlying profile. Needs to outlive this instance.
   raw_ptr<Profile> profile_ = nullptr;
 
-  // Used by |insecure_credentials_manager_| to obtain the list of saved
+  // Used by `insecure_credentials_manager_` to obtain the list of saved
   // passwords.
   raw_ptr<password_manager::SavedPasswordsPresenter>
       saved_passwords_presenter_ = nullptr;
@@ -192,9 +203,9 @@
   // when the delegate obtains the list of saved passwords for the first time.
   bool is_initialized_ = false;
 
-  // List of callbacks that were passed to StartPasswordCheck() prior to the
+  // List of callbacks that were passed to `StartPasswordCheck()` prior to the
   // delegate being initialized. These will be run when either initialization
-  // finishes, or StopPasswordCheck() gets invoked before hand.
+  // finishes, or `StopPasswordCheck()` gets invoked before hand.
   std::vector<StartPasswordCheckCallback> start_check_callbacks_;
 
   // Remembers the progress of the ongoing check. Null if no check is currently
@@ -207,26 +218,26 @@
   // Store when the last weak check was completed.
   base::Time last_completed_weak_check_;
 
-  // A scoped observer for |saved_passwords_presenter_|.
+  // A scoped observer for `saved_passwords_presenter_`.
   base::ScopedObservation<password_manager::SavedPasswordsPresenter,
                           password_manager::SavedPasswordsPresenter::Observer>
       observed_saved_passwords_presenter_{this};
 
-  // A scoped observer for |insecure_credentials_manager_|.
+  // A scoped observer for `insecure_credentials_manager_`.
   base::ScopedObservation<
       password_manager::InsecureCredentialsManager,
       password_manager::InsecureCredentialsManager::Observer>
       observed_insecure_credentials_manager_{this};
 
-  // A scoped observer for the BulkLeakCheckService.
+  // A scoped observer for the `BulkLeakCheckService`.
   base::ScopedObservation<
       password_manager::BulkLeakCheckServiceInterface,
       password_manager::BulkLeakCheckServiceInterface::Observer>
       observed_bulk_leak_check_service_{this};
 
   // An id generator for insecure credentials. Required to match
-  // api::passwords_private::InsecureCredential instances passed to the UI
-  // with the underlying CredentialUIEntry they are based on.
+  // `api::passwords_private::InsecureCredential` instances passed to the UI
+  // with the underlying `CredentialUIEntry` they are based on.
   IdGenerator<password_manager::CredentialUIEntry,
               int,
               password_manager::CredentialUIEntry::Less>
diff --git a/chrome/browser/extensions/api/passwords_private/password_check_delegate_unittest.cc b/chrome/browser/extensions/api/passwords_private/password_check_delegate_unittest.cc
index 2f136c56..75e8251 100644
--- a/chrome/browser/extensions/api/passwords_private/password_check_delegate_unittest.cc
+++ b/chrome/browser/extensions/api/passwords_private/password_check_delegate_unittest.cc
@@ -19,12 +19,16 @@
 #include "base/strings/string_util.h"
 #include "base/strings/utf_string_conversions.h"
 #include "base/test/bind.h"
+#include "base/test/gmock_move_support.h"
 #include "base/test/mock_callback.h"
+#include "base/test/scoped_feature_list.h"
 #include "base/time/time.h"
 #include "chrome/browser/extensions/api/passwords_private/passwords_private_event_router.h"
 #include "chrome/browser/extensions/api/passwords_private/passwords_private_event_router_factory.h"
 #include "chrome/browser/password_manager/bulk_leak_check_service_factory.h"
 #include "chrome/browser/password_manager/password_manager_test_util.h"
+#include "chrome/browser/password_manager/password_scripts_fetcher_factory.h"
+#include "chrome/browser/sync/sync_service_factory.h"
 #include "chrome/common/extensions/api/passwords_private.h"
 #include "chrome/test/base/testing_profile.h"
 #include "components/keyed_service/core/keyed_service.h"
@@ -33,17 +37,21 @@
 #include "components/password_manager/core/browser/leak_detection/bulk_leak_check.h"
 #include "components/password_manager/core/browser/leak_detection/leak_detection_delegate_interface.h"
 #include "components/password_manager/core/browser/mock_password_change_success_tracker.h"
+#include "components/password_manager/core/browser/mock_password_scripts_fetcher.h"
 #include "components/password_manager/core/browser/password_change_success_tracker.h"
 #include "components/password_manager/core/browser/password_form.h"
 #include "components/password_manager/core/browser/password_manager_test_utils.h"
 #include "components/password_manager/core/browser/test_password_store.h"
 #include "components/password_manager/core/browser/ui/saved_passwords_presenter.h"
 #include "components/password_manager/core/browser/well_known_change_password_util.h"
+#include "components/password_manager/core/common/password_manager_features.h"
 #include "components/password_manager/core/common/password_manager_pref_names.h"
 #include "components/prefs/pref_registry_simple.h"
 #include "components/prefs/testing_pref_service.h"
 #include "components/signin/public/identity_manager/identity_manager.h"
 #include "components/signin/public/identity_manager/identity_test_environment.h"
+#include "components/sync/driver/test_sync_service.h"
+#include "components/sync_preferences/testing_pref_service_syncable.h"
 #include "content/public/browser/browser_context.h"
 #include "content/public/test/browser_task_environment.h"
 #include "extensions/browser/event_router.h"
@@ -54,6 +62,7 @@
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 #include "third_party/abseil-cpp/absl/types/optional.h"
+#include "url/origin.h"
 
 namespace extensions {
 
@@ -85,6 +94,7 @@
 using password_manager::IsMuted;
 using password_manager::LeakCheckCredential;
 using password_manager::MockPasswordChangeSuccessTracker;
+using password_manager::MockPasswordScriptsFetcher;
 using password_manager::PasswordChangeSuccessTracker;
 using password_manager::PasswordChangeSuccessTrackerFactory;
 using password_manager::PasswordForm;
@@ -101,6 +111,7 @@
 using ::testing::Mock;
 using ::testing::Pair;
 using ::testing::Pointee;
+using ::testing::Return;
 using ::testing::UnorderedElementsAre;
 
 using MockStartPasswordCheckCallback =
@@ -140,6 +151,17 @@
               })));
 }
 
+MockPasswordScriptsFetcher* CreateAndUsePasswordScriptsFetcher(
+    Profile* profile) {
+  return static_cast<MockPasswordScriptsFetcher*>(
+      PasswordScriptsFetcherFactory::GetInstance()
+          ->SetTestingSubclassFactoryAndUse(
+              profile, base::BindRepeating([](content::BrowserContext*) {
+                return std::make_unique<
+                    testing::NiceMock<MockPasswordScriptsFetcher>>();
+              })));
+}
+
 BulkLeakCheckService* CreateAndUseBulkLeakCheckService(
     signin::IdentityManager* identity_manager,
     Profile* profile) {
@@ -154,6 +176,13 @@
           })));
 }
 
+syncer::TestSyncService* CreateAndUseSyncService(Profile* profile) {
+  return SyncServiceFactory::GetInstance()->SetTestingSubclassFactoryAndUse(
+      profile, base::BindLambdaForTesting([](content::BrowserContext*) {
+        return std::make_unique<syncer::TestSyncService>();
+      }));
+}
+
 PasswordForm MakeSavedPassword(base::StringPiece signon_realm,
                                base::StringPiece16 username,
                                base::StringPiece16 password = kPassword1,
@@ -244,6 +273,15 @@
                          elapsed_time_since_compromise_str, compromise_type))));
 }
 
+// Creates a simplified matcher that only checks the username name and
+// whether a startable script exists.
+auto ExpectCredentialWithScriptInfo(const std::u16string& username,
+                                    bool has_startable_script) {
+  return AllOf(
+      Field(&InsecureCredential::username, base::UTF16ToASCII(username)),
+      Field(&InsecureCredential::has_startable_script, has_startable_script));
+}
+
 class PasswordCheckDelegateTest : public ::testing::Test {
  public:
   PasswordCheckDelegateTest() {
@@ -263,6 +301,10 @@
   MockPasswordChangeSuccessTracker& password_change_success_tracker() {
     return *password_change_success_tracker_;
   }
+  MockPasswordScriptsFetcher& password_scripts_fetcher() {
+    return *password_scripts_fetcher_;
+  }
+  syncer::TestSyncService& sync_service() { return *sync_service_; }
   SavedPasswordsPresenter& presenter() { return presenter_; }
   PasswordCheckDelegate& delegate() { return delegate_; }
 
@@ -282,6 +324,10 @@
       CreateAndUseTestPasswordStore(&profile_);
   raw_ptr<MockPasswordChangeSuccessTracker> password_change_success_tracker_ =
       CreateAndUsePasswordChangeSuccessTracker(&profile_);
+  raw_ptr<MockPasswordScriptsFetcher> password_scripts_fetcher_ =
+      CreateAndUsePasswordScriptsFetcher(&profile_);
+  raw_ptr<syncer::TestSyncService> sync_service_ =
+      CreateAndUseSyncService(&profile_);
   SavedPasswordsPresenter presenter_{store_};
   PasswordCheckDelegate delegate_{&profile_, &presenter_};
 };
@@ -1366,4 +1412,155 @@
       password_manager::kWellKnownChangePasswordPath);
 }
 
+TEST_F(PasswordCheckDelegateTest, HasStartableScript) {
+  base::test::ScopedFeatureList feature_list(
+      password_manager::features::kPasswordChange);
+
+  identity_test_env().MakeAccountAvailable(kTestEmail);
+  // Enable password sync.
+  sync_service().SetActiveDataTypes(syncer::ModelTypeSet(syncer::PASSWORDS));
+
+  // Add two forms, but only one already has a known issue.
+  PasswordForm form1 = MakeSavedPassword(kExampleCom, kUsername1, kPassword1);
+  AddIssueToForm(&form1, InsecureType::kLeaked);
+  store().AddLogin(form1);
+  const url::Origin origin1 = url::Origin::Create(GURL(kExampleCom));
+
+  PasswordForm form2 = MakeSavedPassword(kExampleOrg, kUsername2, kPassword2);
+  store().AddLogin(form2);
+  const url::Origin origin2 = url::Origin::Create(GURL(kExampleOrg));
+
+  RunUntilIdle();
+
+  EXPECT_CALL(password_scripts_fetcher(), IsScriptAvailable(origin1))
+      .WillOnce(Return(false));
+
+  // Only the form with the known issue shows up and does not have a startable
+  // script.
+  EXPECT_THAT(delegate().GetCompromisedCredentials(),
+              UnorderedElementsAre(ExpectCredentialWithScriptInfo(
+                  kUsername1, /*has_startable_script=*/false)));
+
+  base::OnceClosure refresh_callback;
+  EXPECT_CALL(password_scripts_fetcher(), RefreshScriptsIfNecessary)
+      .WillOnce(MoveArg<0>(&refresh_callback));
+
+  MockStartPasswordCheckCallback start_callback1;
+  delegate().StartPasswordCheck(start_callback1.Get());
+
+  // Starting another check will indicate that the first one is still running.
+  MockStartPasswordCheckCallback start_callback2;
+  EXPECT_CALL(start_callback2, Run(BulkLeakCheckService::State::kRunning));
+  delegate().StartPasswordCheck(start_callback2.Get());
+
+  EXPECT_CALL(start_callback1, Run(BulkLeakCheckService::State::kRunning));
+
+  // From now on, always return that scripts are available.
+  EXPECT_CALL(password_scripts_fetcher(), IsScriptAvailable)
+      .WillRepeatedly(Return(true));
+
+  // Signal that scripts are fetched.
+  std::move(refresh_callback).Run();
+
+  static_cast<BulkLeakCheckDelegateInterface*>(service())->OnFinishedCredential(
+      LeakCheckCredential(kUsername1, kPassword1), IsLeaked(true));
+  static_cast<BulkLeakCheckDelegateInterface*>(service())->OnFinishedCredential(
+      LeakCheckCredential(kUsername2, kPassword2), IsLeaked(true));
+  RunUntilIdle();
+
+  EXPECT_THAT(
+      delegate().GetCompromisedCredentials(),
+      UnorderedElementsAre(ExpectCredentialWithScriptInfo(
+                               kUsername1, /*has_startable_script=*/true),
+                           ExpectCredentialWithScriptInfo(
+                               kUsername2, /*has_startable_script=*/true)));
+}
+
+TEST_F(PasswordCheckDelegateTest, HasStartableScript_SyncDisabled) {
+  base::test::ScopedFeatureList feature_list(
+      password_manager::features::kPasswordChange);
+
+  identity_test_env().MakeAccountAvailable(kTestEmail);
+  // Disable password sync.
+  sync_service().SetActiveDataTypes(syncer::ModelTypeSet());
+
+  PasswordForm form1 = MakeSavedPassword(kExampleCom, kUsername1, kPassword1);
+  AddIssueToForm(&form1, InsecureType::kLeaked);
+  store().AddLogin(form1);
+  const url::Origin origin1 = url::Origin::Create(GURL(kExampleCom));
+
+  RunUntilIdle();
+
+  EXPECT_CALL(password_scripts_fetcher(), IsScriptAvailable)
+      .WillRepeatedly(Return(true));
+
+  EXPECT_THAT(delegate().GetCompromisedCredentials(),
+              UnorderedElementsAre(ExpectCredentialWithScriptInfo(
+                  kUsername1, /*has_startable_script=*/false)));
+}
+
+TEST_F(PasswordCheckDelegateTest, HasStartableScript_FeatureDisabled) {
+  base::test::ScopedFeatureList feature_list;
+  feature_list.InitAndDisableFeature(
+      password_manager::features::kPasswordChange);
+
+  identity_test_env().MakeAccountAvailable(kTestEmail);
+  // Enable password sync.
+  sync_service().SetActiveDataTypes(syncer::ModelTypeSet(syncer::PASSWORDS));
+
+  PasswordForm form1 = MakeSavedPassword(kExampleCom, kUsername1, kPassword1);
+  AddIssueToForm(&form1, InsecureType::kLeaked);
+  store().AddLogin(form1);
+  const url::Origin origin1 = url::Origin::Create(GURL(kExampleCom));
+
+  RunUntilIdle();
+
+  EXPECT_CALL(password_scripts_fetcher(), IsScriptAvailable)
+      .WillRepeatedly(Return(true));
+
+  EXPECT_THAT(delegate().GetCompromisedCredentials(),
+              UnorderedElementsAre(ExpectCredentialWithScriptInfo(
+                  kUsername1, /*has_startable_script=*/false)));
+}
+
+TEST_F(PasswordCheckDelegateTest,
+       HasStartableScript_CredentialListUpdateAfterScriptsFetched) {
+  base::test::ScopedFeatureList feature_list(
+      password_manager::features::kPasswordChange);
+
+  identity_test_env().MakeAccountAvailable(kTestEmail);
+  // Enable password sync.
+  sync_service().SetActiveDataTypes(syncer::ModelTypeSet(syncer::PASSWORDS));
+
+  PasswordForm form1 = MakeSavedPassword(kExampleCom, kUsername1, kPassword1);
+  AddIssueToForm(&form1, InsecureType::kLeaked);
+  store().AddLogin(form1);
+  const url::Origin origin1 = url::Origin::Create(GURL(kExampleCom));
+
+  RunUntilIdle();
+
+  base::OnceClosure refresh_callback;
+  EXPECT_CALL(password_scripts_fetcher(), RefreshScriptsIfNecessary)
+      .WillOnce(MoveArg<0>(&refresh_callback));
+
+  delegate().StartPasswordCheck();
+
+  EXPECT_CALL(password_scripts_fetcher(), IsScriptAvailable)
+      .WillRepeatedly(Return(true));
+
+  event_router_observer().ClearEvents();
+
+  // Signal that scripts are fetched.
+  std::move(refresh_callback).Run();
+  RunUntilIdle();
+
+  // Check that an update event was fired after the scripts were fetched.
+  EXPECT_EQ(events::PASSWORDS_PRIVATE_ON_COMPROMISED_CREDENTIALS_INFO_CHANGED,
+            event_router_observer()
+                .events()
+                .at(api::passwords_private::OnCompromisedCredentialsChanged::
+                        kEventName)
+                ->histogram_value);
+}
+
 }  // namespace extensions
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
index 4eb3e84..56bb3a81 100644
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -3006,6 +3006,11 @@
     "expiry_milestone": 108
   },
   {
+    "name": "enable-web-hid-on-extension-service-worker",
+    "owners": [ "deviceapi-team@google.com" ],
+    "expiry_milestone": 110
+  },
+  {
     "name": "enable-web-payments-experimental-features",
     "owners": [ "rouslan", "web-payments-team@google.com" ],
     // This flag is used by early adoption partners to test new Web Payments
@@ -6277,6 +6282,11 @@
     "expiry_milestone": 110
   },
   {
+    "name": "variable-colrv1",
+    "owners": [ "drott", "layout-dev@chromium.org" ],
+    "expiry_milestone": 110
+  },
+  {
     "name": "verbose-logging-in-nacl",
     "owners": [ "fabiansommer", "native-client-dev@googlegroups.com" ],
     // This flag is useful for debugging NaCl-related issues.
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
index 7d227b85..79ce981c 100644
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -2813,6 +2813,11 @@
     "This enables upcoming and experimental V8 VM features. "
     "This flag does not enable experimental JavaScript features.";
 
+const char kVariableCOLRV1Name[] = "Variable COLRv1 Fonts";
+const char kVariableCOLRV1Description[] =
+    "Enable rendering of COLRv1 glyphs with font variations applied. When this "
+    "flag is off, variations to COLRv1 tables are ignored.";
+
 const char kVerticalSnapName[] = "Vertical Snap features";
 const char kVerticalSnapDescription[] =
     "This enables Vertical Snap feature in portrait display."
@@ -3866,6 +3871,11 @@
     "Enable the ManagedAccountsSigninRestrictions policy to be set at a cloud "
     "user level";
 
+const char kEnableWebHidOnExtensionServiceWorkerName[] =
+    "Enable WebHID on extension service workers";
+const char kEnableWebHidOnExtensionServiceWorkerDescription[] =
+    "When enabled, WebHID API is available on extension service workers.";
+
 const char kCopyLinkToTextName[] = "Copy Link To Text";
 const char kCopyLinkToTextDescription[] =
     "Adds an item to the context menu to allow a user to copy a link to the "
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
index 7ee030a1..a4d7e8c 100644
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -1570,6 +1570,9 @@
 extern const char kV8VmFutureName[];
 extern const char kV8VmFutureDescription[];
 
+extern const char kVariableCOLRV1Name[];
+extern const char kVariableCOLRV1Description[];
+
 extern const char kVerticalSnapName[];
 extern const char kVerticalSnapDescription[];
 
@@ -2199,6 +2202,9 @@
 extern const char kEnableUserCloudSigninRestrictionPolicyName[];
 extern const char kEnableUserCloudSigninRestrictionPolicyDescription[];
 
+extern const char kEnableWebHidOnExtensionServiceWorkerName[];
+extern const char kEnableWebHidOnExtensionServiceWorkerDescription[];
+
 extern const char kCopyLinkToTextName[];
 extern const char kCopyLinkToTextDescription[];
 
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
index f8f8dc24..b5cfcf9 100644
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -339,11 +339,11 @@
     &offline_pages::kOfflinePagesLivePageSharingFeature,
     &offline_pages::kPrefetchingOfflinePagesFeature,
     &omnibox::kAdaptiveSuggestionsCount,
-    &omnibox::kFinanceTickerColorReverse,
+    &omnibox::kAndroidAuxiliarySearch,
     &omnibox::kMostVisitedTiles,
     &omnibox::kOmniboxAssistantVoiceSearch,
     &omnibox::kOmniboxSpareRenderer,
-    &omnibox::kAndroidAuxiliarySearch,
+    &omnibox::kSuggestionAnswersColorReverse,
     &omnibox::kUpdatedConnectionSecurityIndicators,
     &optimization_guide::features::kPushNotifications,
     &page_info::kPageInfoAboutThisSiteEn,
@@ -380,6 +380,7 @@
     &switches::kForceStartupSigninPromo,
     &switches::kForceDisableExtendedSyncPromos,
     &switches::kTangibleSync,
+    &syncer::kEnableSyncImmediatelyInFRE,
     &syncer::kSyncTrustedVaultPassphraseRecovery,
     &syncer::kSyncAndroidPromosWithAlternativeTitle,
     &syncer::kSyncAndroidPromosWithIllustration,
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
index 994e994..b91e3df 100644
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -353,7 +353,6 @@
     public static final String FEED_LOADING_PLACEHOLDER = "FeedLoadingPlaceholder";
     public static final String FEED_RELIABILITY_LOGGING = "FeedReliabilityLogging";
     public static final String FILLING_PASSWORDS_FROM_ANY_ORIGIN = "FillingPasswordsFromAnyOrigin";
-    public static final String FINANCE_TICKER_COLOR_REVERSE = "FinanceTickerColorReverse";
     public static final String FIXED_UMA_SESSION_RESUME_ORDER = "FixedUmaSessionResumeOrder";
     public static final String FOCUS_OMNIBOX_IN_INCOGNITO_TAB_INTENTS =
             "FocusOmniboxInIncognitoTabIntents";
@@ -515,9 +514,11 @@
     public static final String FEED_POSITION_ANDROID = "FeedPositionAndroid";
     public static final String SEARCH_RESUMPTION_MODULE_ANDROID = "SearchResumptionModuleAndroid";
     public static final String STORE_HOURS = "StoreHoursAndroid";
+    public static final String SUGGESTION_ANSWERS_COLOR_REVERSE = "SuggestionAnswersColorReverse";
     public static final String SUPPRESS_TOOLBAR_CAPTURES = "SuppressToolbarCaptures";
     public static final String SWAP_PIXEL_FORMAT_TO_FIX_CONVERT_FROM_TRANSLUCENT =
             "SwapPixelFormatToFixConvertFromTranslucent";
+    public static final String ENABLE_SYNC_IMMEDIATELY_IN_FRE = "EnableSyncImmediatelyInFRE";
     public static final String SYNC_TRUSTED_VAULT_PASSPHRASE_RECOVERY =
             "SyncTrustedVaultPassphraseRecovery";
     public static final String TAB_ENGAGEMENT_REPORTING_ANDROID = "TabEngagementReportingAndroid";
diff --git a/chrome/browser/guest_view/mime_handler_view/chrome_mime_handler_view_guest_delegate.cc b/chrome/browser/guest_view/mime_handler_view/chrome_mime_handler_view_guest_delegate.cc
index 3cc9751..d8e45db3 100644
--- a/chrome/browser/guest_view/mime_handler_view/chrome_mime_handler_view_guest_delegate.cc
+++ b/chrome/browser/guest_view/mime_handler_view/chrome_mime_handler_view_guest_delegate.cc
@@ -37,12 +37,12 @@
 }
 
 void ChromeMimeHandlerViewGuestDelegate::RecordLoadMetric(
-    bool in_main_frame,
+    bool is_full_page,
     const std::string& mime_type) {
   if (mime_type != kPDFMimeType)
     return;
 
-  ReportPDFLoadStatus(in_main_frame
+  ReportPDFLoadStatus(is_full_page
                           ? PDFLoadStatus::kLoadedFullPagePdfWithPdfium
                           : PDFLoadStatus::kLoadedEmbeddedPdfWithPdfium);
 }
diff --git a/chrome/browser/guest_view/mime_handler_view/chrome_mime_handler_view_guest_delegate.h b/chrome/browser/guest_view/mime_handler_view/chrome_mime_handler_view_guest_delegate.h
index de05a86..868155c9 100644
--- a/chrome/browser/guest_view/mime_handler_view/chrome_mime_handler_view_guest_delegate.h
+++ b/chrome/browser/guest_view/mime_handler_view/chrome_mime_handler_view_guest_delegate.h
@@ -23,7 +23,7 @@
   // MimeHandlerViewGuestDelegate.
   bool HandleContextMenu(content::RenderFrameHost& render_frame_host,
                          const content::ContextMenuParams& params) override;
-  void RecordLoadMetric(bool in_main_frame,
+  void RecordLoadMetric(bool is_full_page,
                         const std::string& mime_type) override;
 };
 
diff --git a/chrome/browser/hid/chrome_hid_delegate.cc b/chrome/browser/hid/chrome_hid_delegate.cc
index 46ed71e..f1dc29a 100644
--- a/chrome/browser/hid/chrome_hid_delegate.cc
+++ b/chrome/browser/hid/chrome_hid_delegate.cc
@@ -14,8 +14,13 @@
 #include "chrome/browser/ui/browser_finder.h"
 #include "chrome/browser/ui/hid/hid_chooser.h"
 #include "chrome/browser/ui/hid/hid_chooser_controller.h"
+#include "chrome/common/chrome_features.h"
 #include "content/public/browser/render_frame_host.h"
 
+#if BUILDFLAG(ENABLE_EXTENSIONS)
+#include "extensions/common/constants.h"
+#endif  // BUILDFLAG(ENABLE_EXTENSIONS)
+
 namespace {
 
 HidChooserContext* GetChooserContext(content::BrowserContext* browser_context) {
@@ -105,6 +110,19 @@
   return chooser_context->IsFidoAllowedForOrigin(origin);
 }
 
+bool ChromeHidDelegate::IsServiceWorkerAllowedForOrigin(
+    const url::Origin& origin) {
+#if BUILDFLAG(ENABLE_EXTENSIONS)
+  // WebHID is only available on extension service workers with feature flag
+  // enabled for now.
+  if (base::FeatureList::IsEnabled(
+          features::kEnableWebHidOnExtensionServiceWorker) &&
+      origin.scheme() == extensions::kExtensionScheme)
+    return true;
+#endif  // BUILDFLAG(ENABLE_EXTENSIONS)
+  return false;
+}
+
 void ChromeHidDelegate::OnPermissionRevoked(const url::Origin& origin) {
   for (auto& observer : observer_list_)
     observer.OnPermissionRevoked(origin);
diff --git a/chrome/browser/hid/chrome_hid_delegate.h b/chrome/browser/hid/chrome_hid_delegate.h
index 6635633..a06d18c 100644
--- a/chrome/browser/hid/chrome_hid_delegate.h
+++ b/chrome/browser/hid/chrome_hid_delegate.h
@@ -48,6 +48,7 @@
       const std::string& guid) override;
   bool IsFidoAllowedForOrigin(content::BrowserContext* browser_context,
                               const url::Origin& origin) override;
+  bool IsServiceWorkerAllowedForOrigin(const url::Origin& origin) override;
 
   // permissions::ObjectPermissionContextBase::PermissionObserver:
   void OnPermissionRevoked(const url::Origin& origin) override;
diff --git a/chrome/browser/hid/hid_browsertest.cc b/chrome/browser/hid/hid_browsertest.cc
new file mode 100644
index 0000000..c8c865e8
--- /dev/null
+++ b/chrome/browser/hid/hid_browsertest.cc
@@ -0,0 +1,275 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include <memory>
+#include <string>
+#include <utility>
+
+#include "base/memory/raw_ptr.h"
+#include "base/test/bind.h"
+#include "base/test/values_test_util.h"
+#include "chrome/browser/browser_process.h"
+#include "chrome/browser/chrome_content_browser_client.h"
+#include "chrome/browser/hid/chrome_hid_delegate.h"
+#include "chrome/browser/hid/hid_chooser_context_factory.h"
+#include "chrome/common/chrome_features.h"
+#include "chrome/common/pref_names.h"
+#include "chrome/test/base/in_process_browser_test.h"
+#include "content/public/common/content_client.h"
+#include "content/public/test/browser_test.h"
+#include "services/device/public/cpp/hid/fake_hid_manager.h"
+#include "services/device/public/mojom/hid.mojom.h"
+#include "testing/gmock/include/gmock/gmock.h"
+#include "testing/gtest/include/gtest/gtest.h"
+#include "third_party/blink/public/mojom/hid/hid.mojom.h"
+
+#if BUILDFLAG(ENABLE_EXTENSIONS)
+#include "chrome/browser/extensions/extension_browsertest.h"
+#include "extensions/common/extension.h"
+#include "extensions/test/extension_test_message_listener.h"
+#include "extensions/test/result_catcher.h"
+#include "extensions/test/test_extension_dir.h"
+#endif  // BUILDFLAG(ENABLE_EXTENSIONS)
+
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+#include "chrome/browser/ash/login/users/fake_chrome_user_manager.h"
+#include "components/user_manager/scoped_user_manager.h"
+#endif  // BUILDFLAG(IS_CHROMEOS_ASH)
+
+namespace {
+
+using ::extensions::Extension;
+using ::testing::Return;
+
+#if BUILDFLAG(ENABLE_EXTENSIONS)
+constexpr char kManifestTemplate[] =
+    R"({
+          "name": "Test Extension",
+          "version": "0.1",
+          "manifest_version": 3,
+          "background": {
+            "service_worker": "%s"
+          }
+        })";
+
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+const AccountId kManagedUserAccountId =
+    AccountId::FromUserEmail("example@example.com");
+#endif  // BUILDFLAG(IS_CHROMEOS_ASH)
+#endif  // BUILDFLAG(ENABLE_EXTENSIONS)
+
+// Need to fill it with an url.
+constexpr char kPolicySetting[] = R"(
+    [
+      {
+        "devices": [{ "vendor_id": 1234, "product_id": 5678 }],
+        "urls": ["%s"]
+      }
+    ])";
+
+// Create a device with a single collection containing an input report and an
+// output report. Both reports have report ID 0.
+device::mojom::HidDeviceInfoPtr CreateTestDeviceWithInputAndOutputReports() {
+  auto collection = device::mojom::HidCollectionInfo::New();
+  collection->usage = device::mojom::HidUsageAndPage::New(0x0001, 0xff00);
+  collection->input_reports.push_back(
+      device::mojom::HidReportDescription::New());
+  collection->output_reports.push_back(
+      device::mojom::HidReportDescription::New());
+
+  auto device = device::mojom::HidDeviceInfo::New();
+  device->guid = "test-guid";
+  device->collections.push_back(std::move(collection));
+  // vendor_id and product_id needs to match setting in kPolicySetting
+  device->vendor_id = 1234;
+  device->product_id = 5678;
+
+  return device;
+}
+
+#if BUILDFLAG(ENABLE_EXTENSIONS)
+// Base Test fixture with kEnableWebHidOnExtensionServiceWorker default
+// disabled.
+class WebHidExtensionBrowserTest : public extensions::ExtensionBrowserTest {
+ public:
+  WebHidExtensionBrowserTest() = default;
+
+  void SetUpOnMainThread() override {
+    ExtensionBrowserTest::SetUpOnMainThread();
+
+    mojo::PendingRemote<device::mojom::HidManager> hid_manager;
+    hid_manager_.Bind(hid_manager.InitWithNewPipeAndPassReceiver());
+
+    // Connect the HidManager and ensure we've received the initial enumeration
+    // before continuing.
+    base::RunLoop run_loop;
+    auto* chooser_context = HidChooserContextFactory::GetForProfile(profile());
+    chooser_context->SetHidManagerForTesting(
+        std::move(hid_manager),
+        base::BindLambdaForTesting(
+            [&run_loop](std::vector<device::mojom::HidDeviceInfoPtr> devices) {
+              run_loop.Quit();
+            }));
+    run_loop.Run();
+
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+    // This is to set up affliated user for chromeos ash environment.
+    auto fake_user_manager = std::make_unique<ash::FakeChromeUserManager>();
+    fake_user_manager->AddUserWithAffiliation(kManagedUserAccountId, true);
+    fake_user_manager->LoginUser(kManagedUserAccountId);
+    scoped_user_manager_ = std::make_unique<user_manager::ScopedUserManager>(
+        std::move(fake_user_manager));
+#endif  // BUILDFLAG(IS_CHROMEOS_ASH)
+  }
+
+  void TearDownOnMainThread() override {
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+    scoped_user_manager_.reset();
+#endif  // BUILDFLAG(IS_CHROMEOS_ASH)
+  }
+
+  void SetUpPolicy(const Extension* extension) {
+    g_browser_process->local_state()->Set(
+        prefs::kManagedWebHidAllowDevicesForUrls,
+        base::test::ParseJson(base::StringPrintf(
+            kPolicySetting, extension->url().spec().c_str())));
+  }
+
+  void LoadExtensionAndRunTest(const std::string& kBackgroundJs) {
+    extensions::TestExtensionDir test_dir;
+
+    test_dir.WriteManifest(
+        base::StringPrintf(kManifestTemplate, "background.js"));
+    test_dir.WriteFile(FILE_PATH_LITERAL("background.js"), kBackgroundJs);
+
+    // Launch the test app.
+    ExtensionTestMessageListener ready_listener("ready",
+                                                ReplyBehavior::kWillReply);
+    extensions::ResultCatcher result_catcher;
+    const Extension* extension = LoadExtension(test_dir.UnpackedPath());
+
+    // TODO(crbug.com/1336400): Grant permission using requestDevice().
+    // Run the test.
+    SetUpPolicy(extension);
+    EXPECT_TRUE(ready_listener.WaitUntilSatisfied());
+    ready_listener.Reply("ok");
+    EXPECT_TRUE(result_catcher.GetNextResult()) << result_catcher.message();
+  }
+
+  device::FakeHidManager* hid_manager() { return &hid_manager_; }
+
+ protected:
+  base::test::ScopedFeatureList scoped_feature_list_;
+
+ private:
+  device::FakeHidManager hid_manager_;
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+  std::unique_ptr<user_manager::ScopedUserManager> scoped_user_manager_;
+#endif  // BUILDFLAG(IS_CHROMEOS_ASH)
+};
+
+// Test fixture with kEnableWebHidOnExtensionServiceWorker enabled.
+class WebHidExtensionFeatureEnabledBrowserTest
+    : public WebHidExtensionBrowserTest {
+ public:
+  WebHidExtensionFeatureEnabledBrowserTest() {
+    scoped_feature_list_.InitWithFeatures(
+        {features::kEnableWebHidOnExtensionServiceWorker}, {});
+  }
+};
+
+// Test fixture with kEnableWebHidOnExtensionServiceWorker disabled.
+class WebHidExtensionFeatureDisabledBrowserTest
+    : public WebHidExtensionBrowserTest {
+ public:
+  WebHidExtensionFeatureDisabledBrowserTest() {
+    scoped_feature_list_.InitWithFeatures(
+        {}, {features::kEnableWebHidOnExtensionServiceWorker});
+  }
+};
+
+IN_PROC_BROWSER_TEST_F(WebHidExtensionBrowserTest, FeatureDefaultDisabled) {
+  extensions::TestExtensionDir test_dir;
+
+  constexpr char kBackgroundJs[] = R"(
+    chrome.test.sendMessage("ready", async () => {
+      try {
+        chrome.test.assertEq(navigator.hid, undefined);
+        chrome.test.notifyPass();
+
+      } catch (e) {
+        chrome.test.fail(e.name + ':' + e.message);
+      }
+    });
+  )";
+
+  LoadExtensionAndRunTest(kBackgroundJs);
+}
+
+IN_PROC_BROWSER_TEST_F(WebHidExtensionFeatureDisabledBrowserTest,
+                       FeatureDisabled) {
+  extensions::TestExtensionDir test_dir;
+
+  constexpr char kBackgroundJs[] = R"(
+    chrome.test.sendMessage("ready", async () => {
+      try {
+        chrome.test.assertEq(navigator.hid, undefined);
+        chrome.test.notifyPass();
+
+      } catch (e) {
+        chrome.test.fail(e.name + ':' + e.message);
+      }
+    });
+  )";
+
+  LoadExtensionAndRunTest(kBackgroundJs);
+}
+
+IN_PROC_BROWSER_TEST_F(WebHidExtensionFeatureEnabledBrowserTest, GetDevices) {
+  extensions::TestExtensionDir test_dir;
+
+  auto device = CreateTestDeviceWithInputAndOutputReports();
+  hid_manager()->AddDevice(std::move(device));
+
+  constexpr char kBackgroundJs[] = R"(
+    chrome.test.sendMessage("ready", async () => {
+      try {
+        const devices = await navigator.hid.getDevices();
+        chrome.test.assertEq(1, devices.length);
+        chrome.test.notifyPass();
+      } catch (e) {
+        chrome.test.fail(e.name + ':' + e.message);
+      }
+    });
+  )";
+
+  LoadExtensionAndRunTest(kBackgroundJs);
+}
+
+IN_PROC_BROWSER_TEST_F(WebHidExtensionFeatureEnabledBrowserTest,
+                       RequestDevice) {
+  extensions::TestExtensionDir test_dir;
+
+  constexpr char kBackgroundJs[] = R"(
+    chrome.test.sendMessage("ready", async () => {
+      try {
+        const devices = await navigator.hid.requestDevice({filters:[]});
+        chrome.test.fail('fail to throw exception');
+      } catch (e) {
+        const expected_error_name = 'NotSupportedError';
+        const expected_error_message =
+          'Failed to execute \'requestDevice\' on \'HID\': ' +
+          'Script context has shut down.';
+        chrome.test.assertEq(expected_error_name, e.name);
+        chrome.test.assertEq(expected_error_message, e.message);
+        chrome.test.notifyPass();
+      }
+    });
+  )";
+
+  LoadExtensionAndRunTest(kBackgroundJs);
+}
+#endif  // BUILDFLAG(ENABLE_EXTENSIONS)
+
+}  // namespace
diff --git a/chrome/browser/password_check/android/password_check_manager_unittest.cc b/chrome/browser/password_check/android/password_check_manager_unittest.cc
index e0ce22c..f71c776 100644
--- a/chrome/browser/password_check/android/password_check_manager_unittest.cc
+++ b/chrome/browser/password_check/android/password_check_manager_unittest.cc
@@ -23,6 +23,7 @@
 #include "chrome/browser/sync/sync_service_factory.h"
 #include "chrome/test/base/testing_profile.h"
 #include "components/password_manager/core/browser/bulk_leak_check_service.h"
+#include "components/password_manager/core/browser/mock_password_scripts_fetcher.h"
 #include "components/password_manager/core/browser/password_form.h"
 #include "components/password_manager/core/browser/password_manager_test_utils.h"
 #include "components/password_manager/core/browser/test_password_store.h"
@@ -45,6 +46,7 @@
 using password_manager::InsecureCredential;
 using password_manager::InsecureCredentialTypeFlags;
 using password_manager::InsecureType;
+using password_manager::MockPasswordScriptsFetcher;
 using password_manager::PasswordCheckUIStatus;
 using password_manager::PasswordForm;
 using password_manager::TestPasswordStore;
@@ -114,28 +116,6 @@
   MOCK_METHOD(void, OnPasswordCheckProgressChanged, (int, int), (override));
 };
 
-class MockPasswordScriptsFetcher
-    : public password_manager::PasswordScriptsFetcher {
- public:
-  MOCK_METHOD(void, PrewarmCache, (), (override));
-
-  MOCK_METHOD(void, RefreshScriptsIfNecessary, (base::OnceClosure), (override));
-
-  MOCK_METHOD(void,
-              FetchScriptAvailability,
-              (const url::Origin&, base::OnceCallback<void(bool)>),
-              (override));
-
-  MOCK_METHOD(bool, IsScriptAvailable, (const url::Origin&), (const override));
-
-  MOCK_METHOD(base::Value::Dict,
-              GetDebugInformationForInternals,
-              (),
-              (const override));
-
-  MOCK_METHOD(base::Value::List, GetCacheEntries, (), (const override));
-};
-
 BulkLeakCheckService* CreateAndUseBulkLeakCheckService(
     signin::IdentityManager* identity_manager,
     Profile* profile) {
diff --git a/chrome/browser/password_manager/android/password_store_android_backend.cc b/chrome/browser/password_manager/android/password_store_android_backend.cc
index 84476b5..387ef91d 100644
--- a/chrome/browser/password_manager/android/password_store_android_backend.cc
+++ b/chrome/browser/password_manager/android/password_store_android_backend.cc
@@ -57,6 +57,7 @@
 using password_manager::GetExpressionForFederatedMatching;
 using password_manager::GetRegexForPSLFederatedMatching;
 using password_manager::GetRegexForPSLMatching;
+using sync_util::GetSyncingAccount;
 
 using JobId = PasswordStoreAndroidBackendBridge::JobId;
 using SuccessStatus = PasswordStoreBackendMetricsRecorder::SuccessStatus;
@@ -327,12 +328,9 @@
   return metrics_recorder_.GetElapsedTimeSinceCreation();
 }
 
-PasswordStoreAndroidBackend::PasswordStoreAndroidBackend(
-    std::unique_ptr<SyncDelegate> sync_delegate,
-    PrefService* prefs)
+PasswordStoreAndroidBackend::PasswordStoreAndroidBackend(PrefService* prefs)
     : lifecycle_helper_(std::make_unique<PasswordManagerLifecycleHelperImpl>()),
-      bridge_(PasswordStoreAndroidBackendBridge::Create()),
-      sync_delegate_(std::move(sync_delegate)) {
+      bridge_(PasswordStoreAndroidBackendBridge::Create()) {
   DCHECK(base::FeatureList::IsEnabled(
       password_manager::features::kUnifiedPasswordManagerAndroid));
   DCHECK(bridge_);
@@ -348,13 +346,11 @@
     base::PassKey<class PasswordStoreAndroidBackendTest>,
     std::unique_ptr<PasswordStoreAndroidBackendBridge> bridge,
     std::unique_ptr<PasswordManagerLifecycleHelper> lifecycle_helper,
-    std::unique_ptr<SyncDelegate> sync_delegate,
     std::unique_ptr<PasswordSyncControllerDelegateAndroid>
         sync_controller_delegate,
     PrefService* prefs)
     : lifecycle_helper_(std::move(lifecycle_helper)),
       bridge_(std::move(bridge)),
-      sync_delegate_(std::move(sync_delegate)),
       sync_controller_delegate_(std::move(sync_controller_delegate)) {
   DCHECK(bridge_);
   prefs_ = prefs;
@@ -386,14 +382,14 @@
 
 void PasswordStoreAndroidBackend::GetAllLoginsAsync(
     LoginsOrErrorReply callback) {
-  GetAllLoginsForAccount(GetAccount(sync_delegate_->GetSyncingAccount()),
+  GetAllLoginsForAccount(GetAccount(GetSyncingAccount(sync_service_)),
                          std::move(callback));
 }
 
 void PasswordStoreAndroidBackend::GetAutofillableLoginsAsync(
     LoginsOrErrorReply callback) {
   JobId job_id = bridge_->GetAutofillableLogins(
-      GetAccount(sync_delegate_->GetSyncingAccount()));
+      GetAccount(GetSyncingAccount(sync_service_)));
   QueueNewJob(job_id, std::move(callback),
               MetricInfix("GetAutofillableLoginsAsync"));
 }
@@ -444,7 +440,7 @@
   CHECK(!form.blocked_by_user ||
         (form.username_value.empty() && form.password_value.empty()));
   JobId job_id =
-      bridge_->AddLogin(form, GetAccount(sync_delegate_->GetSyncingAccount()));
+      bridge_->AddLogin(form, GetAccount(GetSyncingAccount(sync_service_)));
   QueueNewJob(job_id, std::move(callback), MetricInfix("AddLoginAsync"));
 }
 
@@ -454,15 +450,15 @@
   // TODO(crbug.com/1324588): remove this check
   CHECK(!form.blocked_by_user ||
         (form.username_value.empty() && form.password_value.empty()));
-  JobId job_id = bridge_->UpdateLogin(
-      form, GetAccount(sync_delegate_->GetSyncingAccount()));
+  JobId job_id =
+      bridge_->UpdateLogin(form, GetAccount(GetSyncingAccount(sync_service_)));
   QueueNewJob(job_id, std::move(callback), MetricInfix("UpdateLoginAsync"));
 }
 
 void PasswordStoreAndroidBackend::RemoveLoginAsync(
     const PasswordForm& form,
     PasswordChangesOrErrorReply callback) {
-  RemoveLoginForAccount(form, GetAccount(sync_delegate_->GetSyncingAccount()),
+  RemoveLoginForAccount(form, GetAccount(GetSyncingAccount(sync_service_)),
                         std::move(callback));
 }
 
@@ -750,7 +746,7 @@
                                                  LoginsOrErrorReply callback) {
   JobId job_id = bridge_->GetLoginsForSignonRealm(
       FormToSignonRealmQuery(form, include_psl),
-      GetAccount(sync_delegate_->GetSyncingAccount()));
+      GetAccount(GetSyncingAccount(sync_service_)));
   QueueNewJob(job_id,
               base::BindOnce(&ValidateSignonRealm, std::move(form), include_psl,
                              std::move(callback)),
diff --git a/chrome/browser/password_manager/android/password_store_android_backend.h b/chrome/browser/password_manager/android/password_store_android_backend.h
index 16983f7..a2f351d 100644
--- a/chrome/browser/password_manager/android/password_store_android_backend.h
+++ b/chrome/browser/password_manager/android/password_store_android_backend.h
@@ -53,13 +53,11 @@
     : public PasswordStoreBackend,
       public PasswordStoreAndroidBackendBridge::Consumer {
  public:
-  PasswordStoreAndroidBackend(std::unique_ptr<SyncDelegate> sync_delegate,
-                              PrefService* prefs);
+  explicit PasswordStoreAndroidBackend(PrefService* prefs);
   PasswordStoreAndroidBackend(
       base::PassKey<class PasswordStoreAndroidBackendTest>,
       std::unique_ptr<PasswordStoreAndroidBackendBridge> bridge,
       std::unique_ptr<PasswordManagerLifecycleHelper> lifecycle_helper,
-      std::unique_ptr<SyncDelegate> sync_delegate,
       std::unique_ptr<PasswordSyncControllerDelegateAndroid>
           sync_controller_delegate,
       PrefService* prefs);
@@ -240,9 +238,6 @@
 
   raw_ptr<const syncer::SyncService> sync_service_ = nullptr;
 
-  // Delegate to obtain sync status, and syncing account.
-  std::unique_ptr<SyncDelegate> sync_delegate_;
-
   // Delegate to handle sync events.
   std::unique_ptr<PasswordSyncControllerDelegateAndroid>
       sync_controller_delegate_;
diff --git a/chrome/browser/password_manager/android/password_store_android_backend_unittest.cc b/chrome/browser/password_manager/android/password_store_android_backend_unittest.cc
index 468e86d..fb187b3e 100644
--- a/chrome/browser/password_manager/android/password_store_android_backend_unittest.cc
+++ b/chrome/browser/password_manager/android/password_store_android_backend_unittest.cc
@@ -130,12 +130,6 @@
   MOCK_METHOD(JobId, RemoveLogin, (const PasswordForm&, Account), (override));
 };
 
-class MockSyncDelegate : public PasswordStoreBackend::SyncDelegate {
- public:
-  MOCK_METHOD(bool, IsSyncingPasswordsEnabled, (), (override));
-  MOCK_METHOD(absl::optional<std::string>, GetSyncingAccount, (), (override));
-};
-
 }  // namespace
 
 class PasswordStoreAndroidBackendTest : public testing::Test {
@@ -152,8 +146,7 @@
     backend_ = std::make_unique<PasswordStoreAndroidBackend>(
         base::PassKey<class PasswordStoreAndroidBackendTest>(),
         CreateMockBridge(), CreateFakeLifecycleHelper(),
-        CreateMockSyncDelegate(), CreatePasswordSyncControllerDelegate(),
-        &prefs_);
+        CreatePasswordSyncControllerDelegate(), &prefs_);
   }
 
   ~PasswordStoreAndroidBackendTest() override {
@@ -168,8 +161,7 @@
   FakePasswordManagerLifecycleHelper* lifecycle_helper() {
     return lifecycle_helper_;
   }
-  MockSyncDelegate* sync_delegate() { return sync_delegate_; }
-  syncer::TestSyncService* sync_service() { return &sync_service_; }
+  syncer::SyncService* sync_service() { return &sync_service_; }
   PasswordSyncControllerDelegateAndroid* sync_controller_delegate() {
     return sync_controller_delegate_;
   }
@@ -181,17 +173,20 @@
       base::test::TaskEnvironment::TimeSource::MOCK_TIME};
 
   void EnableSyncForTestAccount() {
-    EXPECT_CALL(*sync_delegate(), IsSyncingPasswordsEnabled)
-        .WillRepeatedly(Return(true));
-    EXPECT_CALL(*sync_delegate(), GetSyncingAccount)
-        .WillRepeatedly(Return(kTestAccount));
+    sync_service_.GetUserSettings()->SetSelectedTypes(
+        /*sync_everything=*/false, {syncer::UserSelectableType::kPasswords});
+    AccountInfo account_info;
+    account_info.email = kTestAccount;
+    sync_service_.SetAccountInfo(account_info);
   }
 
   void DisableSyncFeature() {
-    EXPECT_CALL(*sync_delegate(), IsSyncingPasswordsEnabled)
-        .WillRepeatedly(Return(false));
-    EXPECT_CALL(*sync_delegate(), GetSyncingAccount)
-        .WillRepeatedly(Return(absl::nullopt));
+    sync_service_.GetUserSettings()->SetSelectedTypes(
+        /*sync_everything=*/false, /*types=*/{});
+  }
+
+  void SetSyncAuthError(GoogleServiceAuthError error) {
+    sync_service_.SetAuthError(error);
   }
 
  private:
@@ -209,12 +204,6 @@
     return new_helper;
   }
 
-  std::unique_ptr<PasswordStoreBackend::SyncDelegate> CreateMockSyncDelegate() {
-    auto unique_delegate = std::make_unique<NiceMock<MockSyncDelegate>>();
-    sync_delegate_ = unique_delegate.get();
-    return unique_delegate;
-  }
-
   std::unique_ptr<PasswordSyncControllerDelegateAndroid>
   CreatePasswordSyncControllerDelegate() {
     auto unique_delegate = std::make_unique<
@@ -229,7 +218,6 @@
   raw_ptr<FakePasswordManagerLifecycleHelper> lifecycle_helper_;
   raw_ptr<PasswordSyncControllerDelegateAndroid> sync_controller_delegate_;
   syncer::TestSyncService sync_service_;
-  raw_ptr<MockSyncDelegate> sync_delegate_;
   TestingPrefServiceSimple prefs_;
   base::test::ScopedFeatureList scoped_feature_list_{
       password_manager::features::kUnifiedPasswordManagerAndroid};
@@ -243,9 +231,11 @@
 }
 
 TEST_F(PasswordStoreAndroidBackendTest, CallsBridgeForLogins) {
-  EnableSyncForTestAccount();
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
+  EnableSyncForTestAccount();
+  backend().OnSyncServiceInitialized(sync_service());
+
   const JobId kJobId{1337};
   base::MockCallback<LoginsOrErrorReply> mock_reply;
   EXPECT_CALL(*bridge(), GetAllLogins(ExpectSyncingAccount(kTestAccount)))
@@ -534,9 +524,11 @@
 }
 
 TEST_F(PasswordStoreAndroidBackendTest, CallsBridgeForAddLogin) {
-  EnableSyncForTestAccount();
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
+  EnableSyncForTestAccount();
+  backend().OnSyncServiceInitialized(sync_service());
+
   const JobId kJobId{13388};
   base::MockCallback<PasswordChangesOrErrorReply> mock_reply;
 
@@ -579,12 +571,13 @@
 
 TEST_F(PasswordStoreAndroidBackendTest,
        OnExternalErrorCausingExperimentUnenrollment) {
+  base::HistogramTester histogram_tester;
+
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
   backend().OnSyncServiceInitialized(sync_service());
 
   const JobId kJobId{1337};
-  base::HistogramTester histogram_tester;
   base::MockCallback<LoginsOrErrorReply> mock_reply;
   EXPECT_CALL(*bridge(), GetAllLogins).WillOnce(Return(kJobId));
   backend().GetAllLoginsAsync(mock_reply.Get());
@@ -618,12 +611,13 @@
 
 TEST_F(PasswordStoreAndroidBackendTest,
        OnExternalDeveloperErrorNotCausingExperimentUnenrollment) {
+  base::HistogramTester histogram_tester;
+
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
   backend().OnSyncServiceInitialized(sync_service());
 
   const JobId kJobId{1337};
-  base::HistogramTester histogram_tester;
   base::MockCallback<LoginsOrErrorReply> mock_reply;
   EXPECT_CALL(*bridge(), GetAllLogins).WillOnce(Return(kJobId));
   backend().GetAllLoginsAsync(mock_reply.Get());
@@ -656,12 +650,13 @@
 
 TEST_F(PasswordStoreAndroidBackendTest,
        OnExternalPassphraseRequiredCausingExperimentUnenrollment) {
+  base::HistogramTester histogram_tester;
+
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
   backend().OnSyncServiceInitialized(sync_service());
 
   const JobId kJobId{1337};
-  base::HistogramTester histogram_tester;
   base::MockCallback<LoginsOrErrorReply> mock_reply;
   EXPECT_CALL(*bridge(), GetAllLogins).WillOnce(Return(kJobId));
   backend().GetAllLoginsAsync(mock_reply.Get());
@@ -696,16 +691,16 @@
 
 TEST_F(PasswordStoreAndroidBackendTest,
        OnExternalErrorInCombinationWithNoSyncError) {
+  base::HistogramTester histogram_tester;
+
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
-
   backend().OnSyncServiceInitialized(sync_service());
 
   ASSERT_FALSE(sync_service()->GetAuthError().IsTransientError());
   ASSERT_FALSE(sync_service()->GetAuthError().IsPersistentError());
 
   const JobId kJobId{1337};
-  base::HistogramTester histogram_tester;
   base::MockCallback<LoginsOrErrorReply> mock_reply;
   EXPECT_CALL(*bridge(), GetAllLogins).WillOnce(Return(kJobId));
   backend().GetAllLoginsAsync(mock_reply.Get());
@@ -727,18 +722,18 @@
 
 TEST_F(PasswordStoreAndroidBackendTest,
        OnExternalErrorInCombinationWithTransientSyncError) {
+  base::HistogramTester histogram_tester;
+
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
-
   backend().OnSyncServiceInitialized(sync_service());
 
   GoogleServiceAuthError transient_error(
       GoogleServiceAuthError::CONNECTION_FAILED);
   ASSERT_TRUE(transient_error.IsTransientError());
-  sync_service()->SetAuthError(transient_error);
+  SetSyncAuthError(transient_error);
 
   const JobId kJobId{1337};
-  base::HistogramTester histogram_tester;
   base::MockCallback<LoginsOrErrorReply> mock_reply;
   EXPECT_CALL(*bridge(), GetAllLogins).WillOnce(Return(kJobId));
   backend().GetAllLoginsAsync(mock_reply.Get());
@@ -760,18 +755,18 @@
 
 TEST_F(PasswordStoreAndroidBackendTest,
        OnExternalErrorInCombinationWithPersistentSyncError) {
+  base::HistogramTester histogram_tester;
+
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
-
   backend().OnSyncServiceInitialized(sync_service());
 
   GoogleServiceAuthError persistent_error(
       GoogleServiceAuthError::INVALID_GAIA_CREDENTIALS);
   ASSERT_TRUE(persistent_error.IsPersistentError());
-  sync_service()->SetAuthError(persistent_error);
+  SetSyncAuthError(persistent_error);
 
   const JobId kJobId{1337};
-  base::HistogramTester histogram_tester;
   base::MockCallback<LoginsOrErrorReply> mock_reply;
   EXPECT_CALL(*bridge(), GetAllLogins).WillOnce(Return(kJobId));
   backend().GetAllLoginsAsync(mock_reply.Get());
@@ -793,12 +788,13 @@
 }
 
 TEST_F(PasswordStoreAndroidBackendTest, DisableAutoSignInForOrigins) {
-  EnableSyncForTestAccount();
   base::HistogramTester histogram_tester;
   constexpr auto kLatencyDelta = base::Milliseconds(123u);
 
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
+  EnableSyncForTestAccount();
+  backend().OnSyncServiceInitialized(sync_service());
 
   // Check that calling DisableAutoSignInForOrigins triggers logins retrieval
   // first.
@@ -878,6 +874,8 @@
 TEST_F(PasswordStoreAndroidBackendTest, RemoveAllLocalLogins) {
   base::HistogramTester histogram_tester;
   constexpr auto kLatencyDelta = base::Milliseconds(123u);
+
+  backend().OnSyncServiceInitialized(sync_service());
   EnableSyncForTestAccount();
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
@@ -916,10 +914,12 @@
 }
 
 TEST_F(PasswordStoreAndroidBackendTest, RemoveAllLocalLoginsSuccessMetrics) {
-  EnableSyncForTestAccount();
   base::HistogramTester histogram_tester;
+
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
+  EnableSyncForTestAccount();
+  backend().OnSyncServiceInitialized(sync_service());
 
   const JobId kGetLoginsJobId{13387};
   EXPECT_CALL(*bridge(), GetAllLogins(ExpectLocalAccount()))
@@ -982,7 +982,6 @@
        AttachesObserverOnSyncServiceInitialized) {
   backend().InitBackend(PasswordStoreAndroidBackend::RemoteChangesReceived(),
                         base::RepeatingClosure(), base::DoNothing());
-
   backend().OnSyncServiceInitialized(sync_service());
 
   EXPECT_TRUE(sync_service()->HasObserver(sync_controller_delegate()));
diff --git a/chrome/browser/password_manager/credential_manager_browsertest.cc b/chrome/browser/password_manager/credential_manager_browsertest.cc
index 3700743..a073924 100644
--- a/chrome/browser/password_manager/credential_manager_browsertest.cc
+++ b/chrome/browser/password_manager/credential_manager_browsertest.cc
@@ -29,6 +29,7 @@
 #include "content/public/common/content_switches.h"
 #include "content/public/test/browser_test.h"
 #include "content/public/test/browser_test_utils.h"
+#include "content/public/test/prerender_test_util.h"
 #include "net/dns/mock_host_resolver.h"
 
 namespace {
@@ -1005,6 +1006,71 @@
   WaitForElementValue("password_field", "12345");
 }
 
+class CredentialManagerPrerenderBrowserTest
+    : public CredentialManagerBrowserTest {
+ public:
+  CredentialManagerPrerenderBrowserTest()
+      : prerender_helper_(base::BindRepeating(
+            &CredentialManagerPrerenderBrowserTest::WebContents,
+            base::Unretained(this))) {}
+  ~CredentialManagerPrerenderBrowserTest() override = default;
+
+  void SetUp() override {
+    prerender_helper_.SetUp(embedded_test_server());
+    CredentialManagerBrowserTest::SetUp();
+  }
+
+  content::test::PrerenderTestHelper* prerender_helper() {
+    return &prerender_helper_;
+  }
+
+ private:
+  content::test::PrerenderTestHelper prerender_helper_;
+};
+
+// Tests that binding mojom::CredentialManager doesn't work in the prerendering.
+IN_PROC_BROWSER_TEST_F(CredentialManagerPrerenderBrowserTest,
+                       BindCredentialManagerInPrerender) {
+  // Save credentials with 'skip_zero_click' false.
+  scoped_refptr<password_manager::TestPasswordStore> password_store =
+      static_cast<password_manager::TestPasswordStore*>(
+          PasswordStoreFactory::GetForProfile(
+              browser()->profile(), ServiceAccessType::IMPLICIT_ACCESS)
+              .get());
+  password_manager::PasswordForm signin_form;
+  signin_form.signon_realm = embedded_test_server()->base_url().spec();
+  signin_form.password_value = u"password123";
+  signin_form.username_value = u"user";
+  signin_form.url = embedded_test_server()->base_url();
+  signin_form.skip_zero_click = true;
+  password_store->AddLogin(signin_form);
+
+  GURL url = embedded_test_server()->GetURL("/empty.html");
+  ASSERT_TRUE(ui_test_utils::NavigateToURL(browser(), url));
+
+  auto prerender_url =
+      embedded_test_server()->GetURL("/password/credentials.html");
+  // Loads a page in the prerender.
+  int host_id = prerender_helper()->AddPrerender(prerender_url);
+  content::test::PrerenderHostObserver host_observer(*WebContents(), host_id);
+
+  // It should not have binding mojom::CredentialManager.
+  EXPECT_FALSE(ChromePasswordManagerClient::FromWebContents(WebContents())
+                   ->has_binding_for_credential_manager());
+
+  // Navigates the primary page to the URL.
+  prerender_helper()->NavigatePrimaryPage(prerender_url);
+
+  // The API should work.
+  BubbleObserver(WebContents()).WaitForAccountChooser();
+
+  // Make sure that the prerender was activated.
+  EXPECT_TRUE(host_observer.was_activated());
+  // After the page is activated, it gets binding mojom::CredentialManager.
+  EXPECT_TRUE(ChromePasswordManagerClient::FromWebContents(WebContents())
+                  ->has_binding_for_credential_manager());
+}
+
 class CredentialManagerAvatarTest : public PasswordManagerBrowserTestBase {
  public:
   static const char kAvatarOrigin[];
diff --git a/chrome/browser/password_manager/password_manager_browsertest.cc b/chrome/browser/password_manager/password_manager_browsertest.cc
index 3fc5ee3..d60128174 100644
--- a/chrome/browser/password_manager/password_manager_browsertest.cc
+++ b/chrome/browser/password_manager/password_manager_browsertest.cc
@@ -4624,35 +4624,6 @@
   CheckThatCredentialsStored("temp", "random");
 }
 
-// Tests that it defers to bind mojom::CredentialManager in the prerendering.
-IN_PROC_BROWSER_TEST_F(PasswordManagerPrerenderBrowserTest,
-                       BindCredentialManagerInPrerender) {
-  MockPrerenderPasswordManagerDriverInjector injector(WebContents());
-  GURL url = embedded_test_server()->GetURL("/empty.html");
-  ASSERT_TRUE(ui_test_utils::NavigateToURL(browser(), url));
-
-  auto prerender_url =
-      embedded_test_server()->GetURL("/password/credentials.html");
-  // Loads a page in the prerender.
-  int host_id = prerender_helper()->AddPrerender(prerender_url);
-  content::test::PrerenderHostObserver host_observer(*WebContents(), host_id);
-
-  // It should not have binding mojom::CredentialManager.
-  EXPECT_FALSE(ChromePasswordManagerClient::FromWebContents(WebContents())
-                   ->has_binding_for_credential_manager());
-
-  // Navigates the primary page to the URL.
-  prerender_helper()->NavigatePrimaryPage(prerender_url);
-  // Waits until credentials.get() is handled.
-  base::RunLoop().RunUntilIdle();
-
-  // Make sure that the prerender was activated.
-  EXPECT_TRUE(host_observer.was_activated());
-  // After the page is activated, it gets binding mojom::CredentialManager.
-  EXPECT_TRUE(ChromePasswordManagerClient::FromWebContents(WebContents())
-                  ->has_binding_for_credential_manager());
-}
-
 // Tests that RenderWidgetHost::InputEventObserver is updated with the
 // RenderFrameHost that NavigationHandle has when the RenderFrameHost is
 // activated from the prerendering.
diff --git a/chrome/browser/password_manager/password_store_backend_factory.cc b/chrome/browser/password_manager/password_store_backend_factory.cc
index e61c3f56..54d19b7 100644
--- a/chrome/browser/password_manager/password_store_backend_factory.cc
+++ b/chrome/browser/password_manager/password_store_backend_factory.cc
@@ -39,13 +39,11 @@
         "PasswordManager.PasswordStore.WasEnrolledInUPMWhenBackendWasCreated",
         !prefs->GetBoolean(password_manager::prefs::
                                kUnenrolledFromGoogleMobileServicesDueToErrors));
-    raw_ptr<SyncDelegate> raw_sync_delegate = sync_delegate.get();
     return std::make_unique<PasswordStoreBackendMigrationDecorator>(
         std::make_unique<PasswordStoreBuiltInBackend>(
             CreateLoginDatabaseForProfileStorage(login_db_path)),
-        std::make_unique<PasswordStoreAndroidBackend>(std::move(sync_delegate),
-                                                      prefs),
-        prefs, raw_sync_delegate.get());
+        std::make_unique<PasswordStoreAndroidBackend>(prefs), prefs,
+        std::move(sync_delegate));
   }
   return std::make_unique<PasswordStoreBuiltInBackend>(
       CreateLoginDatabaseForProfileStorage(login_db_path));
diff --git a/chrome/browser/password_manager/password_store_backend_sync_delegate_impl.cc b/chrome/browser/password_manager/password_store_backend_sync_delegate_impl.cc
index d52c7e77..9a1c3908 100644
--- a/chrome/browser/password_manager/password_store_backend_sync_delegate_impl.cc
+++ b/chrome/browser/password_manager/password_store_backend_sync_delegate_impl.cc
@@ -25,13 +25,3 @@
   DCHECK(SyncServiceFactory::HasSyncService(profile_));
   return IsPasswordSyncEnabled(SyncServiceFactory::GetForProfile(profile_));
 }
-
-absl::optional<std::string>
-PasswordStoreBackendSyncDelegateImpl::GetSyncingAccount() {
-  DCHECK(SyncServiceFactory::HasSyncService(profile_));
-  syncer::SyncService* sync_service =
-      SyncServiceFactory::GetForProfile(profile_);
-  if (!sync_service || !IsPasswordSyncEnabled(sync_service))
-    return absl::nullopt;
-  return sync_service->GetAccountInfo().email;
-}
diff --git a/chrome/browser/password_manager/password_store_backend_sync_delegate_impl.h b/chrome/browser/password_manager/password_store_backend_sync_delegate_impl.h
index 0fb6e50..d9dff3f 100644
--- a/chrome/browser/password_manager/password_store_backend_sync_delegate_impl.h
+++ b/chrome/browser/password_manager/password_store_backend_sync_delegate_impl.h
@@ -19,7 +19,6 @@
  private:
   // SyncDelegate implementation.
   bool IsSyncingPasswordsEnabled() override;
-  absl::optional<std::string> GetSyncingAccount() override;
 
   base::raw_ptr<Profile> profile_;
 };
diff --git a/chrome/browser/password_manager/password_store_backend_sync_delegate_impl_unittest.cc b/chrome/browser/password_manager/password_store_backend_sync_delegate_impl_unittest.cc
index 38cc0be..3be8195 100644
--- a/chrome/browser/password_manager/password_store_backend_sync_delegate_impl_unittest.cc
+++ b/chrome/browser/password_manager/password_store_backend_sync_delegate_impl_unittest.cc
@@ -55,7 +55,6 @@
       syncer::SyncService::TransportState::DISABLED);
   sync_service()->SetHasSyncConsent(false);
   EXPECT_FALSE(sync_delegate()->IsSyncingPasswordsEnabled());
-  EXPECT_EQ(absl::nullopt, sync_delegate()->GetSyncingAccount());
 }
 
 TEST_F(PasswordStoreBackendSyncDelegateImplTest,
@@ -67,7 +66,6 @@
       ->SetSelectedTypes(/*sync_everything=*/false,
                          {syncer::UserSelectableType::kHistory});
   EXPECT_FALSE(sync_delegate()->IsSyncingPasswordsEnabled());
-  EXPECT_EQ(absl::nullopt, sync_delegate()->GetSyncingAccount());
 }
 
 TEST_F(PasswordStoreBackendSyncDelegateImplTest, SyncEnabled) {
@@ -78,6 +76,4 @@
   active_info.email = "test@email.com";
   sync_service()->SetAccountInfo(active_info);
   EXPECT_TRUE(sync_delegate()->IsSyncingPasswordsEnabled());
-  EXPECT_TRUE(sync_delegate()->GetSyncingAccount().has_value());
-  EXPECT_EQ(active_info.email, sync_delegate()->GetSyncingAccount().value());
 }
diff --git a/chrome/browser/persisted_state_db/BUILD.gn b/chrome/browser/persisted_state_db/BUILD.gn
index 40a006a..7732c5c 100644
--- a/chrome/browser/persisted_state_db/BUILD.gn
+++ b/chrome/browser/persisted_state_db/BUILD.gn
@@ -35,8 +35,8 @@
     ]
   } else {
     deps += [
-      "//chrome/browser:coupon_db_content_proto",
       "//components/commerce/core:cart_db_content_proto",
+      "//components/commerce/core:coupon_db_content_proto",
     ]
   }
 }
diff --git a/chrome/browser/persisted_state_db/profile_proto_db_factory.h b/chrome/browser/persisted_state_db/profile_proto_db_factory.h
index 8ebd5e2..6eb38c9 100644
--- a/chrome/browser/persisted_state_db/profile_proto_db_factory.h
+++ b/chrome/browser/persisted_state_db/profile_proto_db_factory.h
@@ -14,8 +14,8 @@
 #include "content/public/browser/storage_partition.h"
 
 #if !BUILDFLAG(IS_ANDROID)
-#include "chrome/browser/commerce/coupons/coupon_db_content.pb.h"
 #include "components/commerce/core/proto/cart_db_content.pb.h"
+#include "components/commerce/core/proto/coupon_db_content.pb.h"
 #else
 #include "components/commerce/core/proto/commerce_subscription_db_content.pb.h"
 #include "components/commerce/core/proto/merchant_signal_db_content.pb.h"
diff --git a/chrome/browser/policy/policy_prefs_browsertest.cc b/chrome/browser/policy/policy_prefs_browsertest.cc
index cf28eb53..b6dd759 100644
--- a/chrome/browser/policy/policy_prefs_browsertest.cc
+++ b/chrome/browser/policy/policy_prefs_browsertest.cc
@@ -44,6 +44,8 @@
 
 namespace policy {
 
+const size_t kNumChunks = 8;
+
 namespace {
 
 base::FilePath GetTestCasePath() {
@@ -112,6 +114,21 @@
 #endif  // !BUILDFLAG(IS_ANDROID)
 };
 
+// Splits the test cases into `kNumChunks` and the testing parameter determines
+// the index of the current chunk. This prevents the test from timing out when
+// testing all test cases in a single browser test.
+class ChunkedPolicyPrefsTest : public PolicyPrefsTest,
+                               public ::testing::WithParamInterface<size_t> {
+ public:
+  ChunkedPolicyPrefsTest() = default;
+  ChunkedPolicyPrefsTest(const ChunkedPolicyPrefsTest&) = delete;
+  ChunkedPolicyPrefsTest& operator=(const ChunkedPolicyPrefsTest&) = delete;
+  ~ChunkedPolicyPrefsTest() override = default;
+
+ protected:
+  PrefMappingChunkInfo chunk_info_{GetParam(), kNumChunks};
+};
+
 // Verifies that policies make their corresponding preferences become managed,
 // and that the user can't override that setting.
 // README SHERIFFs: This test encapsulates a whole suite of individual browser
@@ -119,8 +136,7 @@
 // failure/flakiness.
 // IMPORTANT: Please add hendrich@chromium.org on any related bugs when
 // disabling this test.
-// Flaky on all platforms: crbug.com/1294825
-IN_PROC_BROWSER_TEST_F(PolicyPrefsTest, DISABLED_PolicyToPrefsMapping) {
+IN_PROC_BROWSER_TEST_P(ChunkedPolicyPrefsTest, PolicyToPrefsMapping) {
 #if !BUILDFLAG(IS_CHROMEOS_ASH)
   policy::FakeBrowserDMTokenStorage storage;
   policy::BrowserDMTokenStorage::SetForTesting(&storage);
@@ -133,8 +149,13 @@
 
   VerifyPolicyToPrefMappings(GetTestCasePath(), local_state, user_prefs,
                              /* signin_profile_prefs= */ nullptr,
-                             GetMockPolicyProvider());
-}
+                             GetMockPolicyProvider(), &chunk_info_);
+};
+
+INSTANTIATE_TEST_SUITE_P(Chunked,
+                         ChunkedPolicyPrefsTest,
+                         ::testing::Range(/* start= */ static_cast<size_t>(0),
+                                          /* end= */ kNumChunks));
 
 #if BUILDFLAG(IS_CHROMEOS_ASH)
 
diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
index 1c93be5..f15777a 100644
--- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
+++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
@@ -146,7 +146,6 @@
 #include "chrome/browser/apps/app_service/app_service_proxy_factory.h"
 #include "chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager_factory.h"
 #include "chrome/browser/cart/cart_service_factory.h"
-#include "chrome/browser/commerce/coupons/coupon_db_content.pb.h"
 #include "chrome/browser/commerce/coupons/coupon_service_factory.h"
 #include "chrome/browser/feedback/feedback_uploader_factory_chrome.h"
 #include "chrome/browser/media/router/discovery/access_code/access_code_cast_sink_service_factory.h"
@@ -160,6 +159,7 @@
 #include "chrome/browser/ui/user_education/user_education_service_factory.h"
 #include "chrome/browser/usb/usb_chooser_context_factory.h"
 #include "components/commerce/core/proto/cart_db_content.pb.h"
+#include "components/commerce/core/proto/coupon_db_content.pb.h"
 #endif
 
 #if BUILDFLAG(IS_CHROMEOS_ASH)
diff --git a/chrome/browser/resources/chromeos/login/screens/oobe/enterprise_enrollment.js b/chrome/browser/resources/chromeos/login/screens/oobe/enterprise_enrollment.js
index 12d87a1..475ed2c9 100644
--- a/chrome/browser/resources/chromeos/login/screens/oobe/enterprise_enrollment.js
+++ b/chrome/browser/resources/chromeos/login/screens/oobe/enterprise_enrollment.js
@@ -285,6 +285,10 @@
     if (data.gaia_buttons_type) {
       this.gaiaDialogButtonsType_ = data.gaia_buttons_type;
     }
+    if (this.gaiaDialogButtonsType_ ==
+        OobeTypes.GaiaDialogButtonsType.KIOSK_PREFERRED) {
+      this.licenseType_ = OobeTypes.LicenseType.KIOSK;
+    }
     this.isManualEnrollment_ = 'enrollment_mode' in data ?
         data.enrollment_mode === 'manual' :
         undefined;
diff --git a/chrome/browser/resources/new_tab_page/modules/drive_v2/module.html b/chrome/browser/resources/new_tab_page/modules/drive_v2/module.html
index 101850c..1ce98e2 100644
--- a/chrome/browser/resources/new_tab_page/modules/drive_v2/module.html
+++ b/chrome/browser/resources/new_tab_page/modules/drive_v2/module.html
@@ -72,6 +72,9 @@
     disable-text="[[i18nRecursive('',
                                   'modulesDisableButtonText',
                                   'modulesDriveSentence2')]]"
+    dismiss-text="[[i18nRecursive('',
+                                  'modulesDismissButtonText',
+                                  'modulesDriveFilesLower')]]"
     icon-src="icons/drive_logo.svg"
     show-info-button on-info-button-click="onInfoButtonClick_"
     show-dismiss-button on-dismiss-button-click="onDismissButtonClick_"
diff --git a/chrome/browser/resources/settings/autofill_page/password_manager_proxy.ts b/chrome/browser/resources/settings/autofill_page/password_manager_proxy.ts
index bc600c2..75d2fcc 100644
--- a/chrome/browser/resources/settings/autofill_page/password_manager_proxy.ts
+++ b/chrome/browser/resources/settings/autofill_page/password_manager_proxy.ts
@@ -341,8 +341,9 @@
   SHOW_PASSWORD = 6,
   MUTE_PASSWORD = 7,
   UNMUTE_PASSWORD = 8,
+  CHANGE_PASSWORD_AUTOMATICALLY = 9,
   // Must be last.
-  COUNT = 9,
+  COUNT = 10,
 }
 
 /**
diff --git a/chrome/browser/resources/settings/privacy_sandbox/app.html b/chrome/browser/resources/settings/privacy_sandbox/app.html
index 2cfca050b..5dd3fb4 100644
--- a/chrome/browser/resources/settings/privacy_sandbox/app.html
+++ b/chrome/browser/resources/settings/privacy_sandbox/app.html
@@ -519,14 +519,16 @@
         <div class="label-wrapper">
           <div class="info-header">$i18n{privacySandboxPageFlocStatus}</div>
           <div id="flocStatus" class="cr-secondary-text">
-            [[flocId_.trialStatus]]
+            $i18n{privacySandboxPageFlocStatusNotActive}
           </div>
         </div>
       </div>
       <div class="cr-row continuation">
         <div class="label-wrapper">
           <div class="info-header">$i18n{privacySandboxPageFlocCohort}</div>
-          <div id="flocId" class="cr-secondary-text">[[flocId_.cohort]]</div>
+          <div id="flocId" class="cr-secondary-text">
+            $i18n{privacySandboxFlocInvalid}
+          </div>
         </div>
       </div>
       <div class="cr-row continuation">
@@ -535,7 +537,7 @@
             $i18n{privacySandboxPageFlocCohortNextUpdate}
           </div>
           <div id="flocUpdatedOn" class="cr-secondary-text">
-            [[flocId_.nextUpdate]]
+            $i18n{privacySandboxPageFlocTimeToNextComputeInvalid}
           </div>
         </div>
       </div>
@@ -546,7 +548,7 @@
       </div>
       <div class="cr-row continuation box-last">
         <cr-button id="resetFlocIdButton" class="cr-button" role="button"
-            disabled$="[[!flocId_.canReset]]" on-click="onResetFlocClick_">
+            disabled>
           $i18n{privacySandboxPageFlocResetCohort}
         </cr-button>
       </div>
diff --git a/chrome/browser/resources/settings/privacy_sandbox/app.ts b/chrome/browser/resources/settings/privacy_sandbox/app.ts
index d7eba5f7..e28b0d7 100644
--- a/chrome/browser/resources/settings/privacy_sandbox/app.ts
+++ b/chrome/browser/resources/settings/privacy_sandbox/app.ts
@@ -9,7 +9,6 @@
 import '../settings.js';
 
 import {assert} from 'chrome://resources/js/assert_ts.js';
-import {addWebUIListener} from 'chrome://resources/js/cr.m.js';
 import {PaperTooltipElement} from 'chrome://resources/polymer/v3_0/paper-tooltip/paper-tooltip.js';
 import {afterNextRender, PolymerElement} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
 
@@ -19,7 +18,7 @@
 import {CrSettingsPrefs, HatsBrowserProxyImpl, loadTimeData, MetricsBrowserProxy, MetricsBrowserProxyImpl, PrefsMixin, SettingsToggleButtonElement, TrustSafetyInteraction} from '../settings.js';
 
 import {getTemplate} from './app.html.js';
-import {FledgeState, FlocIdentifier, PrivacySandboxBrowserProxy, PrivacySandboxBrowserProxyImpl, PrivacySandboxInterest, TopicsState} from './privacy_sandbox_browser_proxy.js';
+import {FledgeState, PrivacySandboxBrowserProxy, PrivacySandboxBrowserProxyImpl, PrivacySandboxInterest, TopicsState} from './privacy_sandbox_browser_proxy.js';
 
 /** Views of the PrivacySandboxSettings page. */
 export enum PrivacySandboxSettingsView {
@@ -44,8 +43,6 @@
 
   static get properties() {
     return {
-      flocId_: Object,
-
       /**
        * Mock preference for FLoC toggle to always display as off and disabled
        * as the feature has been removed from the codebase.
@@ -114,7 +111,6 @@
     };
   }
 
-  private flocId_: FlocIdentifier;
   private metricsBrowserProxy_: MetricsBrowserProxy =
       MetricsBrowserProxyImpl.getInstance();
   private prefFlocToggle_: chrome.settingsPrivate.PrefObject;
@@ -134,10 +130,6 @@
     chrome.metricsPrivate.recordSparseHashable(
         'WebUI.Settings.PathVisited', '/privacySandbox');
 
-    this.privacySandboxBrowserProxy_.getFlocId().then(id => this.flocId_ = id);
-    addWebUIListener(
-        'floc-id-changed', (id: FlocIdentifier) => this.flocId_ = id);
-
     this.privacySandboxBrowserProxy_.getTopicsState().then(
         state => this.onTopicsStateChanged_(state));
     this.privacySandboxBrowserProxy_.getFledgeState().then(
@@ -177,10 +169,6 @@
         TrustSafetyInteraction.OPENED_PRIVACY_SANDBOX);
   }
 
-  private onResetFlocClick_() {
-    this.privacySandboxBrowserProxy_.resetFlocId();
-  }
-
   private onApiToggleButtonChange_(event: Event) {
     const privacySandboxApisEnabled =
         (event.target as SettingsToggleButtonElement).checked;
diff --git a/chrome/browser/resources/settings/privacy_sandbox/privacy_sandbox_browser_proxy.ts b/chrome/browser/resources/settings/privacy_sandbox/privacy_sandbox_browser_proxy.ts
index 97e1537..afc632b 100644
--- a/chrome/browser/resources/settings/privacy_sandbox/privacy_sandbox_browser_proxy.ts
+++ b/chrome/browser/resources/settings/privacy_sandbox/privacy_sandbox_browser_proxy.ts
@@ -7,16 +7,6 @@
 // clang-format on
 
 /**
- * Information about the user's current FLoC cohort identifier.
- */
-export type FlocIdentifier = {
-  trialStatus: string,
-  cohort: string,
-  nextUpdate: string,
-  canReset: boolean,
-};
-
-/**
  * A user interest to display. There must only be one of |topic| or |site| set.
  */
 export type PrivacySandboxInterest = {
@@ -46,14 +36,6 @@
 };
 
 export interface PrivacySandboxBrowserProxy {
-  /**
-   * Gets the user's current FLoC cohort identifier information.
-   */
-  getFlocId(): Promise<FlocIdentifier>;
-
-  /** Resets the user's FLoC cohort identifier. */
-  resetFlocId(): void;
-
   /** Retrieves the user's current FLEDGE state. */
   getFledgeState(): Promise<FledgeState>;
 
@@ -69,14 +51,6 @@
 
 export class PrivacySandboxBrowserProxyImpl implements
     PrivacySandboxBrowserProxy {
-  getFlocId() {
-    return sendWithPromise('getFlocId');
-  }
-
-  resetFlocId() {
-    chrome.send('resetFlocId');
-  }
-
   getFledgeState() {
     return sendWithPromise('getFledgeState');
   }
diff --git a/chrome/browser/resources/signin/profile_picker/profile_creation_flow/profile_type_choice.html b/chrome/browser/resources/signin/profile_picker/profile_creation_flow/profile_type_choice.html
index 52e1944..82d9bb4 100644
--- a/chrome/browser/resources/signin/profile_picker/profile_creation_flow/profile_type_choice.html
+++ b/chrome/browser/resources/signin/profile_picker/profile_creation_flow/profile_type_choice.html
@@ -8,7 +8,7 @@
   #infoContainer {
     bottom: 0;
     box-sizing: border-box;
-    margin-bottom: 58px;
+    margin-bottom: min(58px, calc(5px + 0.5 * (100vh - var(--view-min-size))));
     position: absolute;
     text-align: center;
     width: 100%;
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
index c1bd46f3..1e4915f 100644
--- a/chrome/browser/ui/BUILD.gn
+++ b/chrome/browser/ui/BUILD.gn
@@ -698,6 +698,11 @@
     ]
   }
   if (is_chromeos) {
+    sources += [
+      "views/frame/highlight_border_overlay_chromeos.cc",
+      "views/frame/highlight_border_overlay_chromeos.h",
+    ]
+
     deps += [
       "//chromeos/constants",
       "//chromeos/crosapi/cpp",
diff --git a/chrome/browser/ui/android/omnibox/java/res/values/dimens.xml b/chrome/browser/ui/android/omnibox/java/res/values/dimens.xml
index 380b93c..086a6fe 100644
--- a/chrome/browser/ui/android/omnibox/java/res/values/dimens.xml
+++ b/chrome/browser/ui/android/omnibox/java/res/values/dimens.xml
@@ -70,6 +70,7 @@
 
     <dimen name="omnibox_suggestion_action_icon_width">48dp</dimen>
     <dimen name="omnibox_suggestion_refine_view_modern_end_padding">4dp</dimen>
+    <dimen name="omnibox_suggestion_carousel_spacing_maximum">8dp</dimen>
 
     <!-- Adding search engine logo to the omnibox. -->
     <!-- Max size which will fit completely in the composed/rounded bg. -->
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/answer/AnswerSuggestionProcessor.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/answer/AnswerSuggestionProcessor.java
index 0964e71..43643007 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/answer/AnswerSuggestionProcessor.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/answer/AnswerSuggestionProcessor.java
@@ -66,16 +66,16 @@
     @Override
     public void onNativeInitialized() {
         mOmniBoxAnswerColorReversal =
-                ChromeFeatureList.isEnabled(ChromeFeatureList.FINANCE_TICKER_COLOR_REVERSE);
+                ChromeFeatureList.isEnabled(ChromeFeatureList.SUGGESTION_ANSWERS_COLOR_REVERSE);
 
         mOmniBoxAnswerColorReversalFinanceOnly =
                 ChromeFeatureList.getFieldTrialParamByFeatureAsBoolean(
-                        ChromeFeatureList.FINANCE_TICKER_COLOR_REVERSE,
+                        ChromeFeatureList.SUGGESTION_ANSWERS_COLOR_REVERSE,
                         "omnibox_answer_color_reversal_finance_only",
                         /* default= */ true);
 
         String stockColorReversalCountryList = ChromeFeatureList.getFieldTrialParamByFeature(
-                ChromeFeatureList.FINANCE_TICKER_COLOR_REVERSE,
+                ChromeFeatureList.SUGGESTION_ANSWERS_COLOR_REVERSE,
                 "omnibox_answer_color_reversal_countries");
         if (!TextUtils.isEmpty(stockColorReversalCountryList)) {
             List<String> financeTickerColorReversalCountryList =
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/carousel/BaseCarouselSuggestionViewBinder.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/carousel/BaseCarouselSuggestionViewBinder.java
index afec0b7..2a6782dd 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/carousel/BaseCarouselSuggestionViewBinder.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/carousel/BaseCarouselSuggestionViewBinder.java
@@ -62,13 +62,15 @@
      * @return The requested item spacing, expressed in Pixels.
      */
     static int getItemSpacingPx(@FormFactor int formFactor, @NonNull Resources resources) {
+        int maxTileSpacing = resources.getDimensionPixelOffset(
+                R.dimen.omnibox_suggestion_carousel_spacing_maximum);
         int tileViewPortraitEdgePadding =
                 resources.getDimensionPixelSize(R.dimen.tile_view_padding_edge_portrait);
         switch (formFactor) {
             case FormFactor.PHONE:
                 int screenWidth = resources.getDisplayMetrics().widthPixels;
                 int tileViewWidth = resources.getDimensionPixelOffset(R.dimen.tile_view_width);
-                return Integer.max(-resources.getDimensionPixelOffset(R.dimen.tile_view_padding),
+                return Integer.min(maxTileSpacing,
                         (int) ((screenWidth - tileViewPortraitEdgePadding - tileViewWidth * 4.7)
                                 / 4));
             case FormFactor.TABLET:
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/carousel/BaseCarouselSuggestionViewBinderUnitTest.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/carousel/BaseCarouselSuggestionViewBinderUnitTest.java
index 24508ed3..081f32d 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/carousel/BaseCarouselSuggestionViewBinderUnitTest.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/carousel/BaseCarouselSuggestionViewBinderUnitTest.java
@@ -154,16 +154,18 @@
      */
     @Test
     public void formFactor_itemSpacingPhone_computed() {
-        int displayWidth = 1000;
-        int tileViewPaddingEdgePortrait = 300;
-        int tileViewwidth = 100;
-        int tileViewPadding = 15;
+        int tileSpacingMaximum = 28;
+        int displayWidth = 1440;
+        int tileViewPaddingEdgePortrait = 12;
+        int tileViewwidth = 280;
+
+        when(mResources.getDimensionPixelOffset(
+                     eq(R.dimen.omnibox_suggestion_carousel_spacing_maximum)))
+                .thenReturn(tileSpacingMaximum);
         when(mResources.getDimensionPixelSize(eq(R.dimen.tile_view_padding_edge_portrait)))
                 .thenReturn(tileViewPaddingEdgePortrait);
         when(mResources.getDimensionPixelOffset(eq(R.dimen.tile_view_width)))
                 .thenReturn(tileViewwidth);
-        when(mResources.getDimensionPixelOffset(eq(R.dimen.tile_view_padding)))
-                .thenReturn(tileViewPadding);
 
         DisplayMetrics displayMetrics = new DisplayMetrics();
         displayMetrics.widthPixels = displayWidth;
@@ -181,23 +183,24 @@
      */
     @Test
     public void formFactor_itemSpacingPhone_fixed() {
-        int displayWidth = 0;
-        int tileViewPaddingEdgePortrait = 0;
-        int tileViewwidth = 0;
-        int tileViewPadding = -15;
+        int tileSpacingMaximum = 28;
+        int displayWidth = 2990;
+        int tileViewPaddingEdgePortrait = 12;
+        int tileViewwidth = 280;
+
+        when(mResources.getDimensionPixelOffset(
+                     eq(R.dimen.omnibox_suggestion_carousel_spacing_maximum)))
+                .thenReturn(tileSpacingMaximum);
         when(mResources.getDimensionPixelSize(eq(R.dimen.tile_view_padding_edge_portrait)))
                 .thenReturn(tileViewPaddingEdgePortrait);
         when(mResources.getDimensionPixelOffset(eq(R.dimen.tile_view_width)))
                 .thenReturn(tileViewwidth);
-        when(mResources.getDimensionPixelOffset(eq(R.dimen.tile_view_padding)))
-                .thenReturn(tileViewPadding);
 
         DisplayMetrics displayMetrics = new DisplayMetrics();
         displayMetrics.widthPixels = displayWidth;
         when(mResources.getDisplayMetrics()).thenReturn(displayMetrics);
 
-        final int expectedSpacingPx = -tileViewPadding;
-        Assert.assertEquals(expectedSpacingPx,
+        Assert.assertEquals(tileSpacingMaximum,
                 BaseCarouselSuggestionViewBinder.getItemSpacingPx(FormFactor.PHONE, mResources));
     }
 
diff --git a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/SigninPromoUtil.java b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/SigninPromoUtil.java
index 192e9ac..c971c71 100644
--- a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/SigninPromoUtil.java
+++ b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/SigninPromoUtil.java
@@ -8,7 +8,8 @@
 import android.content.Context;
 import android.text.TextUtils;
 
-import org.chromium.base.Promise;
+import androidx.annotation.Nullable;
+
 import org.chromium.chrome.browser.flags.ChromeFeatureList;
 import org.chromium.chrome.browser.preferences.Pref;
 import org.chromium.chrome.browser.profiles.Profile;
@@ -19,8 +20,8 @@
 import org.chromium.components.signin.AccountUtils;
 import org.chromium.components.signin.Tribool;
 import org.chromium.components.signin.base.AccountInfo;
-import org.chromium.components.signin.identitymanager.AccountInfoServiceProvider;
 import org.chromium.components.signin.identitymanager.ConsentLevel;
+import org.chromium.components.signin.identitymanager.IdentityManager;
 import org.chromium.components.signin.metrics.SigninAccessPoint;
 import org.chromium.components.user_prefs.UserPrefs;
 
@@ -75,9 +76,9 @@
         }
 
         final Profile profile = Profile.getLastUsedRegularProfile();
-        if (IdentityServicesProvider.get().getIdentityManager(profile).getPrimaryAccountInfo(
-                    ConsentLevel.SYNC)
-                != null) {
+        final IdentityManager identityManager =
+                IdentityServicesProvider.get().getIdentityManager(profile);
+        if (identityManager.getPrimaryAccountInfo(ConsentLevel.SYNC) != null) {
             // Don't show if user is signed in and syncing.
             return false;
         }
@@ -97,12 +98,10 @@
             return false;
         }
 
-        final Promise<AccountInfo> firstAccountPromise =
-                AccountInfoServiceProvider.get().getAccountInfoByEmail(accounts.get(0).name);
-        if (!(firstAccountPromise.isFulfilled()
-                    && firstAccountPromise.getResult()
-                                    .getAccountCapabilities()
-                                    .canOfferExtendedSyncPromos()
+        final @Nullable AccountInfo firstAccount =
+                identityManager.findExtendedAccountInfoByEmailAddress(accounts.get(0).name);
+        if (!(firstAccount != null
+                    && firstAccount.getAccountCapabilities().canOfferExtendedSyncPromos()
                             == Tribool.TRUE)) {
             // Show promo only when CanOfferExtendedSyncPromos capability for the first account
             // is fetched and true.
diff --git a/chrome/browser/ui/android/signin/junit/src/org/chromium/chrome/browser/ui/signin/SigninPromoUtilLaunchSigninPromoTest.java b/chrome/browser/ui/android/signin/junit/src/org/chromium/chrome/browser/ui/signin/SigninPromoUtilLaunchSigninPromoTest.java
index add8442..ef52fa9 100644
--- a/chrome/browser/ui/android/signin/junit/src/org/chromium/chrome/browser/ui/signin/SigninPromoUtilLaunchSigninPromoTest.java
+++ b/chrome/browser/ui/android/signin/junit/src/org/chromium/chrome/browser/ui/signin/SigninPromoUtilLaunchSigninPromoTest.java
@@ -6,6 +6,7 @@
 
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.never;
 import static org.mockito.Mockito.spy;
@@ -36,6 +37,7 @@
 import org.chromium.chrome.test.util.browser.Features;
 import org.chromium.chrome.test.util.browser.signin.AccountManagerTestRule;
 import org.chromium.components.prefs.PrefService;
+import org.chromium.components.signin.base.AccountInfo;
 import org.chromium.components.signin.base.CoreAccountInfo;
 import org.chromium.components.signin.identitymanager.ConsentLevel;
 import org.chromium.components.signin.identitymanager.IdentityManager;
@@ -180,8 +182,10 @@
 
     @Test
     public void whenNoAccountListStoredShouldReturnTrue() {
-        final CoreAccountInfo accountInfo = mAccountManagerTestRule.addAccount("test@gmail.com",
+        final AccountInfo accountInfo = mAccountManagerTestRule.addAccount("test@gmail.com",
                 mAccountCapabilitiesBuilder.setCanOfferExtendedSyncPromos(true).build());
+        when(mIdentityManagerMock.findExtendedAccountInfoByEmailAddress(accountInfo.getEmail()))
+                .thenReturn(accountInfo);
         mPrefManager.setSigninPromoLastShownVersion(40);
         // Old implementation hasn't been storing account list
         Assert.assertTrue(SigninPromoUtil.launchSigninPromoIfNeeded(
@@ -204,8 +208,10 @@
 
     @Test
     public void whenHasNewAccountShouldReturnTrue() {
-        mAccountManagerTestRule.addAccount("test1@gmail.com",
+        final AccountInfo account1 = mAccountManagerTestRule.addAccount("test1@gmail.com",
                 mAccountCapabilitiesBuilder.setCanOfferExtendedSyncPromos(true).build());
+        when(mIdentityManagerMock.findExtendedAccountInfoByEmailAddress(account1.getEmail()))
+                .thenReturn(account1);
         mAccountManagerTestRule.addAccount("test2@gmail.com");
         mPrefManager.setSigninPromoLastShownVersion(40);
         mPrefManager.setSigninPromoLastAccountNames(
@@ -261,10 +267,14 @@
 
     @Test
     public void promoVisibleWhenTheSecondaryAccountCanNotOfferExtendedSyncPromos() {
-        mAccountManagerTestRule.addAccount("test1@gmail.com",
+        final AccountInfo account1 = mAccountManagerTestRule.addAccount("test1@gmail.com",
                 mAccountCapabilitiesBuilder.setCanOfferExtendedSyncPromos(true).build());
-        mAccountManagerTestRule.addAccount("test2@gmail.com",
+        final AccountInfo account2 = mAccountManagerTestRule.addAccount("test2@gmail.com",
                 mAccountCapabilitiesBuilder.setCanOfferExtendedSyncPromos(false).build());
+        when(mIdentityManagerMock.findExtendedAccountInfoByEmailAddress(eq(account1.getEmail())))
+                .thenReturn(account1);
+        when(mIdentityManagerMock.findExtendedAccountInfoByEmailAddress(eq(account2.getEmail())))
+                .thenReturn(account2);
         mPrefManager.setSigninPromoLastShownVersion(38);
         Assert.assertTrue(SigninPromoUtil.launchSigninPromoIfNeeded(
                 mContext, mLauncherMock, CURRENT_MAJOR_VERSION));
diff --git a/chrome/browser/ui/ash/shelf/chrome_shelf_controller_browsertest.cc b/chrome/browser/ui/ash/shelf/chrome_shelf_controller_browsertest.cc
index 94148ee1..fc3fcfa 100644
--- a/chrome/browser/ui/ash/shelf/chrome_shelf_controller_browsertest.cc
+++ b/chrome/browser/ui/ash/shelf/chrome_shelf_controller_browsertest.cc
@@ -85,7 +85,6 @@
 #include "chrome/browser/ui/web_applications/app_browser_controller.h"
 #include "chrome/browser/ui/web_applications/test/web_app_browsertest_util.h"
 #include "chrome/browser/web_applications/external_install_options.h"
-#include "chrome/browser/web_applications/externally_installed_web_app_prefs.h"
 #include "chrome/browser/web_applications/externally_managed_app_manager.h"
 #include "chrome/browser/web_applications/os_integration/os_integration_manager.h"
 #include "chrome/browser/web_applications/policy/web_app_policy_constants.h"
@@ -93,6 +92,7 @@
 #include "chrome/browser/web_applications/test/service_worker_registration_waiter.h"
 #include "chrome/browser/web_applications/test/web_app_install_test_utils.h"
 #include "chrome/browser/web_applications/test/web_app_test_observers.h"
+#include "chrome/browser/web_applications/test/web_app_test_utils.h"
 #include "chrome/browser/web_applications/user_display_mode.h"
 #include "chrome/browser/web_applications/web_app_constants.h"
 #include "chrome/browser/web_applications/web_app_helpers.h"
@@ -2602,8 +2602,8 @@
   web_app_info->start_url = app_url;
   web_app_info->scope = app_url;
   web_app_info->title = u"Example";
-  web_app::AppId app_id = web_app::test::InstallWebApp(browser()->profile(),
-                                                       std::move(web_app_info));
+  web_app::AppId app_id =
+      web_app::test::InstallWebApp(profile(), std::move(web_app_info));
 
   // Set policy to pin the web app.
   base::DictionaryValue entry;
@@ -2621,13 +2621,12 @@
   EXPECT_EQ(AppListControllerDelegate::PIN_EDITABLE,
             GetPinnableForAppID(app_id, profile()));
 
-  web_app::ExternallyInstalledWebAppPrefs web_app_prefs(
-      browser()->profile()->GetPrefs());
-  web_app_prefs.Insert(app_url, app_id,
-                       web_app::ExternalInstallSource::kExternalPolicy);
-  web_app::WebAppProvider::GetForTest(browser()->profile())
-      ->install_manager()
-      .NotifyWebAppInstalledWithOsHooks(app_id);
+  web_app::WebAppProvider* provider =
+      web_app::WebAppProvider::GetForTest(profile());
+  web_app::test::AddInstallUrlData(
+      profile()->GetPrefs(), &provider->sync_bridge(), app_id, app_url,
+      web_app::ExternalInstallSource::kExternalPolicy);
+  provider->install_manager().NotifyWebAppInstalledWithOsHooks(app_id);
   apps::AppServiceProxyFactory::GetForProfile(profile())
       ->FlushMojoCallsForTesting();
 
diff --git a/chrome/browser/ui/ash/shelf/chrome_shelf_controller_unittest.cc b/chrome/browser/ui/ash/shelf/chrome_shelf_controller_unittest.cc
index 0f7b8fb..a304242 100644
--- a/chrome/browser/ui/ash/shelf/chrome_shelf_controller_unittest.cc
+++ b/chrome/browser/ui/ash/shelf/chrome_shelf_controller_unittest.cc
@@ -4948,6 +4948,7 @@
   web_app::AppId InstallExternalWebApp(std::string start_url) {
     auto web_app_info = std::make_unique<WebAppInstallInfo>();
     web_app_info->start_url = GURL(start_url);
+    web_app_info->install_url = GURL(start_url);
     const web_app::AppId expected_web_app_id = web_app::GenerateAppId(
         /*manifest_id=*/absl::nullopt, web_app_info->start_url);
     PrefService* prefs = browser()->profile()->GetPrefs();
@@ -4958,8 +4959,10 @@
     base::RunLoop run_loop;
     prefs->CommitPendingWrite(run_loop.QuitClosure());
     run_loop.Run();
-    web_app::AppId web_app_id =
-        web_app::test::InstallWebApp(profile(), std::move(web_app_info));
+    web_app::AppId web_app_id = web_app::test::InstallWebApp(
+        profile(), std::move(web_app_info),
+        /*overwrite_existing_manifest_fields =*/false,
+        webapps::WebappInstallSource::EXTERNAL_POLICY);
     DCHECK_EQ(expected_web_app_id, web_app_id);
     return web_app_id;
   }
diff --git a/chrome/browser/ui/browser_tabstrip.cc b/chrome/browser/ui/browser_tabstrip.cc
index 9d0cf64..fc41ea1 100644
--- a/chrome/browser/ui/browser_tabstrip.cc
+++ b/chrome/browser/ui/browser_tabstrip.cc
@@ -39,6 +39,10 @@
   params.tabstrip_index = idx;
   params.group = group;
   Navigate(&params);
+
+  if (!params.navigated_or_inserted_contents)
+    return;
+
   CoreTabHelper* core_tab_helper =
       CoreTabHelper::FromWebContents(params.navigated_or_inserted_contents);
   core_tab_helper->set_new_tab_start_time(new_tab_start_time);
diff --git a/chrome/browser/ui/browser_tabstrip_browsertest_chromeos.cc b/chrome/browser/ui/browser_tabstrip_browsertest_chromeos.cc
new file mode 100644
index 0000000..1db5b19
--- /dev/null
+++ b/chrome/browser/ui/browser_tabstrip_browsertest_chromeos.cc
@@ -0,0 +1,33 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/ui/browser_tabstrip.h"
+
+#include "chrome/browser/ui/ash/window_pin_util.h"
+#include "chrome/browser/ui/browser.h"
+#include "chrome/browser/ui/browser_window.h"
+#include "chrome/browser/ui/tabs/tab_strip_model.h"
+#include "chrome/test/base/in_process_browser_test.h"
+#include "content/public/test/browser_test.h"
+#include "url/gurl.h"
+
+namespace chrome {
+
+using BrowserTabstripBrowserTest = InProcessBrowserTest;
+
+IN_PROC_BROWSER_TEST_F(BrowserTabstripBrowserTest,
+                       AddTabAtNavigationBlockedInLockedFullscreen) {
+  ASSERT_EQ(browser()->tab_strip_model()->count(), 1);
+
+  // Set locked fullscreen state.
+  PinWindow(browser()->window()->GetNativeWindow(), /*trusted=*/true);
+  AddTabAt(browser(), GURL("https://google.com"),
+           /*index=*/0,
+           /*foreground=*/true);
+
+  // No tab added.
+  EXPECT_EQ(browser()->tab_strip_model()->count(), 1);
+}
+
+}  // namespace chrome
diff --git a/chrome/browser/ui/views/frame/browser_non_client_frame_view_chromeos.cc b/chrome/browser/ui/views/frame/browser_non_client_frame_view_chromeos.cc
index 4073f5b..87b95506 100644
--- a/chrome/browser/ui/views/frame/browser_non_client_frame_view_chromeos.cc
+++ b/chrome/browser/ui/views/frame/browser_non_client_frame_view_chromeos.cc
@@ -21,6 +21,7 @@
 #include "chrome/browser/ui/ui_features.h"
 #include "chrome/browser/ui/views/frame/browser_frame.h"
 #include "chrome/browser/ui/views/frame/browser_view.h"
+#include "chrome/browser/ui/views/frame/highlight_border_overlay_chromeos.h"
 #include "chrome/browser/ui/views/frame/immersive_mode_controller.h"
 #include "chrome/browser/ui/views/frame/tab_search_frame_caption_button.h"
 #include "chrome/browser/ui/views/frame/tab_strip_region_view.h"
@@ -60,9 +61,7 @@
 #include "ui/gfx/image/image_skia.h"
 #include "ui/gfx/scoped_canvas.h"
 #include "ui/views/animation/animation_builder.h"
-#include "ui/views/background.h"
 #include "ui/views/controls/label.h"
-#include "ui/views/highlight_border.h"
 #include "ui/views/layout/box_layout.h"
 #include "ui/views/rect_based_targeting_utils.h"
 #include "ui/views/widget/widget.h"
@@ -131,19 +130,6 @@
 #if BUILDFLAG(IS_CHROMEOS_ASH)
   ash::window_util::InstallResizeHandleWindowTargeterForWindow(
       frame->GetNativeWindow());
-
-  if (chromeos::features::IsDarkLightModeEnabled()) {
-    // To differentiate browser windows in dark/light mode, set a highlight
-    // border to the non client frame view. To avoid the border being covered by
-    // the client view, we should use a half insets border.
-    SetBorder(std::make_unique<views::HighlightBorder>(
-        0, views::HighlightBorder::Type::kHighlightBorder1,
-        /*use_light_colors=*/false,
-        views::HighlightBorder::InsetsType::kHalfInsets));
-    // Since highlight border has an inner border with opacity, we need to set a
-    // background underneath with frame color.
-    SetBackground(views::CreateSolidBackground(chromeos::kDefaultFrameColor));
-  }
 #endif
 
 #if BUILDFLAG(IS_CHROMEOS_LACROS)
@@ -340,17 +326,7 @@
   // and the top-of-window views are revealed, the TopContainerView paints the
   // window header by redirecting paints from its background to
   // BrowserNonClientFrameViewChromeOS.
-  gfx::Rect client_bounds(bounds());
-  if (chromeos::TabletState::Get()->InTabletMode() ||
-      browser_view()->IsFullscreen() || browser_view()->IsMaximized()) {
-    return client_bounds;
-  }
-
-  // If there is a border, inset the client bounds to show the border when the
-  // browser window is not fullscreened, maximized or in tablet mode.
-  if (auto* border = GetBorder())
-    client_bounds.Inset(border->GetInsets());
-  return client_bounds;
+  return bounds();
 }
 
 gfx::Rect BrowserNonClientFrameViewChromeOS::GetWindowBoundsForClientBounds(
@@ -432,9 +408,6 @@
 
   if (frame_header_)
     frame_header_->PaintHeader(canvas);
-
-  OnPaintBackground(canvas);
-  OnPaintBorder(canvas);
 }
 
 void BrowserNonClientFrameViewChromeOS::LayoutWindowControlsOverlay() {
@@ -787,8 +760,6 @@
 
   if (frame_header_)
     frame_header_->SetPaintAsActive(ShouldPaintAsActive());
-
-  UpdateBackgroundColor();
 }
 
 void BrowserNonClientFrameViewChromeOS::OnProfileAvatarChanged(
@@ -797,6 +768,16 @@
   UpdateProfileIcons();
 }
 
+void BrowserNonClientFrameViewChromeOS::AddedToWidget() {
+  if (!chromeos::features::IsDarkLightModeEnabled())
+    return;
+
+  highlight_border_overlay_ = std::make_unique<HighlightBorderOverlay>(
+      GetWidget(),
+      gfx::RoundedCornersF(chromeos::kTopCornerRadiusWhenRestored,
+                           chromeos::kTopCornerRadiusWhenRestored, 0, 0));
+}
+
 bool BrowserNonClientFrameViewChromeOS::GetShowCaptionButtons() const {
   return GetShowCaptionButtonsWhenNotInOverview() && !GetOverviewMode() &&
          !GetHideCaptionButtonsForFullscreen();
@@ -991,16 +972,6 @@
 
   if (frame_header_)
     frame_header_->UpdateFrameColors();
-
-  UpdateBackgroundColor();
-}
-
-void BrowserNonClientFrameViewChromeOS::UpdateBackgroundColor() {
-  // Update background color to current frame color.
-  if (auto* background = GetBackground()) {
-    background->SetNativeControlColor(
-        GetFrameColor(BrowserFrameActiveState::kUseCurrent));
-  }
 }
 
 void BrowserNonClientFrameViewChromeOS::MaybeAnimateThemeChanged() {
diff --git a/chrome/browser/ui/views/frame/browser_non_client_frame_view_chromeos.h b/chrome/browser/ui/views/frame/browser_non_client_frame_view_chromeos.h
index 1e888a7..4ab9cf8 100644
--- a/chrome/browser/ui/views/frame/browser_non_client_frame_view_chromeos.h
+++ b/chrome/browser/ui/views/frame/browser_non_client_frame_view_chromeos.h
@@ -26,6 +26,7 @@
 class WebAppNonClientFrameViewAshTest;
 }
 
+class HighlightBorderOverlay;
 class ProfileIndicatorIcon;
 class TabIconView;
 
@@ -127,6 +128,7 @@
   // BrowserNonClientFrameView:
   void PaintAsActiveChanged() override;
   void OnProfileAvatarChanged(const base::FilePath& profile_path) override;
+  void AddedToWidget() override;
 
  private:
   // TODO(pkasting): Test the public API or create a test helper class, don't
@@ -229,9 +231,6 @@
   // Called any time the frame color may have changed.
   void OnUpdateFrameColor();
 
-  // Update background color when the frame color changes.
-  void UpdateBackgroundColor();
-
   // Called any time the theme has changed and may need to be animated.
   void MaybeAnimateThemeChanged();
 
@@ -245,6 +244,9 @@
   const aura::Window* GetFrameWindow() const;
   aura::Window* GetFrameWindow();
 
+  // Generates a nine patch layer painted with a highlight border.
+  std::unique_ptr<HighlightBorderOverlay> highlight_border_overlay_;
+
   // View which contains the window controls.
   raw_ptr<chromeos::FrameCaptionButtonContainerView> caption_button_container_ =
       nullptr;
diff --git a/chrome/browser/ui/views/frame/highlight_border_overlay_chromeos.cc b/chrome/browser/ui/views/frame/highlight_border_overlay_chromeos.cc
new file mode 100644
index 0000000..a79de7f
--- /dev/null
+++ b/chrome/browser/ui/views/frame/highlight_border_overlay_chromeos.cc
@@ -0,0 +1,143 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// 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/frame/highlight_border_overlay_chromeos.h"
+
+#include "base/memory/raw_ptr.h"
+#include "chromeos/ui/base/tablet_state.h"
+#include "ui/aura/window.h"
+#include "ui/aura/window_tree_host.h"
+#include "ui/display/display.h"
+#include "ui/gfx/image/canvas_image_source.h"
+#include "ui/views/highlight_border.h"
+#include "ui/views/widget/widget.h"
+
+namespace {
+
+// `ImageSource` generate an image with a `view::HighlightBorder`
+// painted on it.
+class ImageSource : public gfx::CanvasImageSource {
+ public:
+  explicit ImageSource(HighlightBorderOverlay* highlight_border_layer)
+      : gfx::CanvasImageSource(
+            highlight_border_layer->CalculateImageSourceSize()),
+        highlight_border_layer_(highlight_border_layer) {}
+  ImageSource(const ImageSource&) = delete;
+  ImageSource& operator=(const ImageSource&) = delete;
+  ~ImageSource() override = default;
+
+  // gfx::CanvasImageSource:
+  void Draw(gfx::Canvas* canvas) override {
+    highlight_border_layer_->PaintBorder(canvas);
+  }
+
+ private:
+  base::raw_ptr<HighlightBorderOverlay> highlight_border_layer_;
+};
+
+}  // namespace
+
+HighlightBorderOverlay::HighlightBorderOverlay(
+    views::Widget* widget,
+    const gfx::RoundedCornersF& rounded_corner)
+    : layer_(ui::LAYER_NINE_PATCH),
+      widget_(widget),
+      rounded_corner_(rounded_corner) {
+  layer_.SetFillsBoundsOpaquely(false);
+
+  UpdateNinePatchLayer();
+  UpdateLayerBounds();
+
+  widget_->AddObserver(this);
+  auto* widget_layer = widget_->GetLayer();
+  widget_layer->Add(&layer_);
+  widget_layer->StackAtTop(&layer_);
+}
+
+HighlightBorderOverlay::~HighlightBorderOverlay() {
+  widget_->RemoveObserver(this);
+}
+
+void HighlightBorderOverlay::PaintBorder(gfx::Canvas* canvas) {
+  views::HighlightBorder::PaintBorderToCanvas(
+      canvas, *(widget_->GetContentsView()),
+      gfx::Rect(CalculateImageSourceSize()), rounded_corner_,
+      views::HighlightBorder::Type::kHighlightBorder3,
+      /*use_light_colors=*/false);
+}
+
+gfx::Size HighlightBorderOverlay::CalculateImageSourceSize() const {
+  // Initialize the image source bounds with 1 px of center patch size.
+  gfx::Rect image_source_bounds(1, 1);
+
+  // Outset the bounds with border region.
+  image_source_bounds.Inset(-CalculateBorderRegion());
+  return image_source_bounds.size();
+}
+
+void HighlightBorderOverlay::OnWidgetBoundsChanged(
+    views::Widget* widget,
+    const gfx::Rect& new_bounds) {
+  UpdateLayerVisibility();
+  UpdateLayerBounds();
+}
+
+void HighlightBorderOverlay::OnWidgetThemeChanged(views::Widget* widget) {
+  UpdateNinePatchLayer();
+}
+
+void HighlightBorderOverlay::OnDisplayMetricsChanged(
+    const display::Display& display,
+    uint32_t metrics) {
+  if (auto* host = widget_->GetNativeWindow()->GetHost()) {
+    if (host->GetDisplayId() != display.id())
+      return;
+  } else {
+    return;
+  }
+
+  if (!(metrics & display::DisplayObserver::DISPLAY_METRIC_WORK_AREA))
+    return;
+
+  UpdateLayerVisibility();
+}
+
+gfx::Insets HighlightBorderOverlay::CalculateBorderRegion() const {
+  // The border region should include border thickness and corner radius.
+  return gfx::Insets(
+      2 * views::kHighlightBorderThickness +
+      std::max({rounded_corner_.upper_left(), rounded_corner_.upper_right(),
+                rounded_corner_.lower_left(), rounded_corner_.lower_right()}));
+}
+
+void HighlightBorderOverlay::UpdateLayerVisibility() {
+  // Hide the border when widget fills the work area.
+  layer_.SetVisible(!widget_->GetWindowBoundsInScreen().Contains(
+      widget_->GetWorkAreaBoundsInScreen()));
+}
+
+void HighlightBorderOverlay::UpdateLayerBounds() {
+  gfx::Rect layer_bounds(widget_->GetWindowBoundsInScreen().size());
+  // Outset the bounds by one border thickness for outer border.
+  layer_bounds.Inset(-gfx::Insets(views::kHighlightBorderThickness));
+
+  if (layer_bounds != layer_.bounds())
+    layer_.SetBounds(layer_bounds);
+}
+
+void HighlightBorderOverlay::UpdateNinePatchLayer() {
+  // Configure the nine patch layer.
+  auto* border_image_source = new ImageSource(this);
+  gfx::Size image_source_size = border_image_source->size();
+  layer_.UpdateNinePatchLayerImage(
+      gfx::ImageSkia(base::WrapUnique(border_image_source), image_source_size));
+
+  gfx::Rect apeture(image_source_size);
+  gfx::Insets border_region = CalculateBorderRegion();
+  apeture.Inset(border_region);
+  layer_.UpdateNinePatchLayerAperture(apeture);
+  layer_.UpdateNinePatchLayerBorder(
+      gfx::Rect(border_region.left(), border_region.top(),
+                border_region.width(), border_region.height()));
+}
diff --git a/chrome/browser/ui/views/frame/highlight_border_overlay_chromeos.h b/chrome/browser/ui/views/frame/highlight_border_overlay_chromeos.h
new file mode 100644
index 0000000..1cd3de6d
--- /dev/null
+++ b/chrome/browser/ui/views/frame/highlight_border_overlay_chromeos.h
@@ -0,0 +1,70 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_UI_VIEWS_FRAME_HIGHLIGHT_BORDER_OVERLAY_CHROMEOS_H_
+#define CHROME_BROWSER_UI_VIEWS_FRAME_HIGHLIGHT_BORDER_OVERLAY_CHROMEOS_H_
+
+#include "ui/compositor/layer.h"
+#include "ui/display/display_observer.h"
+#include "ui/gfx/geometry/rounded_corners_f.h"
+#include "ui/views/widget/widget_observer.h"
+
+namespace gfx {
+class Canvas;
+}  // namespace gfx
+
+namespace views {
+class Widget;
+}  // namespace views
+
+// `HighlightBorderOverlay` is mainly used to add highlight border on the
+// windows whose client area spans the entire width of the widget. To prevent
+// the border from being covered by the client view, the class creates a nine
+// patch layer painted with a highlight border and overlay on the widget. The
+// inner border covers on the window contents and outer border is outside the
+// window. It uses `kHighlightBorder3` as its border type which has low opacity
+// of outer border.
+class HighlightBorderOverlay : public views::WidgetObserver,
+                               public display::DisplayObserver {
+ public:
+  HighlightBorderOverlay(views::Widget* widget,
+                         const gfx::RoundedCornersF& rounded_corner);
+  HighlightBorderOverlay(const HighlightBorderOverlay&) = delete;
+  HighlightBorderOverlay& operator=(const HighlightBorderOverlay&) = delete;
+  ~HighlightBorderOverlay() override;
+
+  // Paint a highlight border on the canvas.
+  void PaintBorder(gfx::Canvas* canvas);
+  // Calculate image source size according to rounded corner radius and border
+  // thickness.
+  gfx::Size CalculateImageSourceSize() const;
+
+  // WidgetObserver:
+  void OnWidgetBoundsChanged(views::Widget* widget,
+                             const gfx::Rect& new_bounds) override;
+  void OnWidgetThemeChanged(views::Widget* widget) override;
+
+  // display::DisplayObserver
+  void OnDisplayMetricsChanged(const display::Display& display,
+                               uint32_t metrics) override;
+
+ private:
+  // Calculate the painting region of border.
+  gfx::Insets CalculateBorderRegion() const;
+
+  // Update layer visibility according to current window bounds and work area.
+  void UpdateLayerVisibility();
+  // Update layer bounds according to current widget bounds.
+  void UpdateLayerBounds();
+  // Update the nine patch layer with current highlight border settings.
+  void UpdateNinePatchLayer();
+
+  ui::Layer layer_;
+  base::raw_ptr<views::Widget> widget_;
+  gfx::RoundedCornersF rounded_corner_;
+
+  display::ScopedDisplayObserver display_observer_{this};
+};
+
+#endif  // CHROME_BROWSER_UI_VIEWS_FRAME_HIGHLIGHT_BORDER_OVERLAY_CHROMEOS_H_
diff --git a/chrome/browser/ui/views/side_search/side_search_browser_controller_interactive_uitest.cc b/chrome/browser/ui/views/side_search/side_search_browser_controller_interactive_uitest.cc
index 2e08290..d467d62 100644
--- a/chrome/browser/ui/views/side_search/side_search_browser_controller_interactive_uitest.cc
+++ b/chrome/browser/ui/views/side_search/side_search_browser_controller_interactive_uitest.cc
@@ -672,8 +672,16 @@
       "SideSearch.SidePanel.TimeShownOpenedViaTabSwitch", 2);
 }
 
+#if BUILDFLAG(IS_MAC)
+// TODO(crbug.com/1341272): Test is flaky on Mac.
+#define MAYBE_SwitchingTabsHandlesFocusCorrectly \
+  DISABLED_SwitchingTabsHandlesFocusCorrectly
+#else
+#define MAYBE_SwitchingTabsHandlesFocusCorrectly \
+  SwitchingTabsHandlesFocusCorrectly
+#endif
 IN_PROC_BROWSER_TEST_P(SideSearchBrowserControllerTest,
-                       SwitchingTabsHandlesFocusCorrectly) {
+                       MAYBE_SwitchingTabsHandlesFocusCorrectly) {
   auto* browser_view = BrowserViewFor(browser());
   auto* side_panel = GetSidePanelFor(browser());
   auto* contents_view = browser_view->contents_web_view();
@@ -894,7 +902,14 @@
             coordinator->GetCurrentSidePanelEntryForTesting()->id());
 }
 
-IN_PROC_BROWSER_TEST_P(SideSearchV2Test, SwitchTabsWithGlobalSidePanel) {
+#if BUILDFLAG(IS_MAC)
+// TODO(crbug.com/1341272): Test is flaky on Mac.
+#define MAYBE_SwitchTabsWithGlobalSidePanel \
+  DISABLED_SwitchTabsWithGlobalSidePanel
+#else
+#define MAYBE_SwitchTabsWithGlobalSidePanel SwitchTabsWithGlobalSidePanel
+#endif
+IN_PROC_BROWSER_TEST_P(SideSearchV2Test, MAYBE_SwitchTabsWithGlobalSidePanel) {
   auto* browser_view = BrowserViewFor(browser());
   auto* coordinator = browser_view->side_panel_coordinator();
   coordinator->SetNoDelaysForTesting();
diff --git a/chrome/browser/ui/web_applications/test/system_web_app_interactive_uitest.cc b/chrome/browser/ui/web_applications/test/system_web_app_interactive_uitest.cc
index d092e97..e02b1e5 100644
--- a/chrome/browser/ui/web_applications/test/system_web_app_interactive_uitest.cc
+++ b/chrome/browser/ui/web_applications/test/system_web_app_interactive_uitest.cc
@@ -666,14 +666,15 @@
   Profile* profile2 = ash::ProfileHelper::Get()->GetProfileByUser(
       user_manager->FindUser(account_id2_));
   WaitForSystemWebAppInstall(profile2);
+  const AppId& app_id1 = GetAppId(profile1);
+  const AppId& app_id2 = GetAppId(profile2);
 
   g_browser_process->profile_manager()->ScheduleProfileForDeletion(
       profile2->GetPath(), base::DoNothing());
 
   {
     auto launch_params = apps::AppLaunchParams(
-        GetAppId(profile2),
-        apps::mojom::LaunchContainer::kLaunchContainerWindow,
+        app_id2, apps::mojom::LaunchContainer::kLaunchContainerWindow,
         WindowOpenDisposition::CURRENT_TAB,
         apps::mojom::LaunchSource::kFromAppListGrid);
     content::WebContents* web_contents =
@@ -685,8 +686,7 @@
 
   {
     auto launch_params = apps::AppLaunchParams(
-        GetAppId(profile1),
-        apps::mojom::LaunchContainer::kLaunchContainerWindow,
+        app_id1, apps::mojom::LaunchContainer::kLaunchContainerWindow,
         WindowOpenDisposition::CURRENT_TAB,
         apps::mojom::LaunchSource::kFromAppListGrid);
     content::WebContents* web_contents =
diff --git a/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.cc b/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.cc
index a4ade88..47240dc15 100644
--- a/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.cc
+++ b/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.cc
@@ -91,10 +91,10 @@
 }
 
 void InternalsUIHandler::RegisterMessages() {
-  web_ui()->RegisterDeprecatedMessageCallback(
+  web_ui()->RegisterMessageCallback(
       "loaded", base::BindRepeating(&InternalsUIHandler::OnLoaded,
                                     base::Unretained(this)));
-  web_ui()->RegisterDeprecatedMessageCallback(
+  web_ui()->RegisterMessageCallback(
       "resetCache", base::BindRepeating(&InternalsUIHandler::OnResetCache,
                                         base::Unretained(this)));
 }
@@ -107,7 +107,7 @@
   EndSubscription();
 }
 
-void InternalsUIHandler::OnLoaded(const base::ListValue* args) {
+void InternalsUIHandler::OnLoaded(const base::Value::List& args) {
   AllowJavascript();
   FireWebUIListener(call_on_load_, base::Value());
   // This is only available in contents, because the iOS BrowsingDataRemover
@@ -120,7 +120,7 @@
   FireWebUIListener("notify-about-variations", version_ui::GetVariationsList());
 }
 
-void InternalsUIHandler::OnResetCache(const base::ListValue* args) {
+void InternalsUIHandler::OnResetCache(const base::Value::List& args) {
   if (!autofill_cache_resetter_) {
     content::BrowserContext* browser_context = Profile::FromWebUI(web_ui());
     autofill_cache_resetter_.emplace(browser_context);
diff --git a/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.h b/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.h
index a94e0d1..f67f153 100644
--- a/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.h
+++ b/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.h
@@ -84,8 +84,8 @@
   void EndSubscription();
 
   // JavaScript call handler.
-  void OnLoaded(const base::ListValue* args);
-  void OnResetCache(const base::ListValue* args);
+  void OnLoaded(const base::Value::List& args);
+  void OnResetCache(const base::Value::List& args);
 
   void OnResetCacheDone(const std::string& message);
 
diff --git a/chrome/browser/ui/webui/policy/policy_ui_browsertest.cc b/chrome/browser/ui/webui/policy/policy_ui_browsertest.cc
index 6ee6dbd9..05f0b7cc 100644
--- a/chrome/browser/ui/webui/policy/policy_ui_browsertest.cc
+++ b/chrome/browser/ui/webui/policy/policy_ui_browsertest.cc
@@ -415,7 +415,13 @@
   EXPECT_EQ(expected, *value_ptr);
 }
 
-IN_PROC_BROWSER_TEST_F(PolicyUITest, WritePoliciesToJSONFile) {
+#if !defined(NDEBUG)
+// Slow and hangs often in debug builds. https://crbug.com/1338642
+#define MAYBE_WritePoliciesToJSONFile DISABLED_WritePoliciesToJSONFile
+#else
+#define MAYBE_WritePoliciesToJSONFile WritePoliciesToJSONFile
+#endif
+IN_PROC_BROWSER_TEST_F(PolicyUITest, MAYBE_WritePoliciesToJSONFile) {
   // Set policy values and generate expected dictionary.
   policy::PolicyMap values;
   base::DictionaryValue expected_values;
diff --git a/chrome/browser/ui/webui/settings/privacy_sandbox_handler.cc b/chrome/browser/ui/webui/settings/privacy_sandbox_handler.cc
index 27ec1d11..4fc6253 100644
--- a/chrome/browser/ui/webui/settings/privacy_sandbox_handler.cc
+++ b/chrome/browser/ui/webui/settings/privacy_sandbox_handler.cc
@@ -12,12 +12,6 @@
 
 namespace {
 
-// Keys of the dictionary returned by GetFlocIdInformation.
-constexpr char kTrialStatus[] = "trialStatus";
-constexpr char kCohort[] = "cohort";
-constexpr char kNextUpdate[] = "nextUpdate";
-constexpr char kCanReset[] = "canReset";
-
 // Keys of the dictionary returned by getFledgeState.
 constexpr char kJoiningSites[] = "joiningSites";
 constexpr char kBlockedSites[] = "blockedSites";
@@ -31,27 +25,6 @@
 constexpr char kTopTopics[] = "topTopics";
 constexpr char kBlockedTopics[] = "blockedTopics";
 
-base::Value GetFlocIdInformation(Profile* profile) {
-  auto* privacy_sandbox_service =
-      PrivacySandboxServiceFactory::GetForProfile(profile);
-  DCHECK(privacy_sandbox_service);
-
-  base::DictionaryValue floc_id_information;
-  floc_id_information.SetKey(
-      kTrialStatus,
-      base::Value(privacy_sandbox_service->GetFlocStatusForDisplay()));
-  floc_id_information.SetKey(
-      kCohort, base::Value(privacy_sandbox_service->GetFlocIdForDisplay()));
-  floc_id_information.SetKey(
-      kNextUpdate,
-      base::Value(privacy_sandbox_service->GetFlocIdNextUpdateForDisplay(
-          base::Time::Now())));
-  floc_id_information.SetKey(
-      kCanReset, base::Value(privacy_sandbox_service->IsFlocIdResettable()));
-
-  return std::move(floc_id_information);
-}
-
 base::Value ConvertTopicToValue(const privacy_sandbox::CanonicalTopic& topic) {
   base::Value topic_value(base::Value::Type::DICTIONARY);
   topic_value.SetKey(kTopicId, base::Value(topic.topic_id().value()));
@@ -68,13 +41,6 @@
 
 void PrivacySandboxHandler::RegisterMessages() {
   web_ui()->RegisterMessageCallback(
-      "getFlocId", base::BindRepeating(&PrivacySandboxHandler::HandleGetFlocId,
-                                       base::Unretained(this)));
-  web_ui()->RegisterMessageCallback(
-      "resetFlocId",
-      base::BindRepeating(&PrivacySandboxHandler::HandleResetFlocId,
-                          base::Unretained(this)));
-  web_ui()->RegisterMessageCallback(
       "setFledgeJoiningAllowed",
       base::BindRepeating(&PrivacySandboxHandler::HandleSetFledgeJoiningAllowed,
                           base::Unretained(this)));
@@ -92,35 +58,6 @@
                           base::Unretained(this)));
 }
 
-void PrivacySandboxHandler::HandleGetFlocId(const base::Value::List& args) {
-  AllowJavascript();
-
-  CHECK_EQ(1U, args.size());
-  const base::Value& callback_id = args[0];
-
-  ResolveJavascriptCallback(callback_id,
-                            GetFlocIdInformation(Profile::FromWebUI(web_ui())));
-}
-
-void PrivacySandboxHandler::HandleResetFlocId(const base::Value::List& args) {
-  CHECK_EQ(0U, args.size());
-  AllowJavascript();
-
-  auto* privacy_sandbox_service =
-      PrivacySandboxServiceFactory::GetForProfile(Profile::FromWebUI(web_ui()));
-  DCHECK(privacy_sandbox_service);
-
-  privacy_sandbox_service->ResetFlocId(/*user_initiated=*/true);
-
-  // The identifier will have been immediately invalidated in response to
-  // the clearing action, so synchronously retrieving the FLoC ID will retrieve
-  // the appropriate invalid ID string.
-  // TODO(crbug.com/1207891): Have this handler listen to an event directly
-  // from the FLoC provider, rather than inferring behavior.
-  FireWebUIListener("floc-id-changed",
-                    GetFlocIdInformation(Profile::FromWebUI(web_ui())));
-}
-
 void PrivacySandboxHandler::HandleSetFledgeJoiningAllowed(
     const base::Value::List& args) {
   const std::string& site = args[0].GetString();
@@ -130,6 +67,7 @@
 
 void PrivacySandboxHandler::HandleGetFledgeState(
     const base::Value::List& args) {
+  AllowJavascript();
   const std::string& callback_id = args[0].GetString();
   GetPrivacySandboxService()->GetFledgeJoiningEtldPlusOneForDisplay(
       base::BindOnce(&PrivacySandboxHandler::OnFledgeJoiningSitesRecieved,
@@ -149,6 +87,7 @@
 
 void PrivacySandboxHandler::HandleGetTopicsState(
     const base::Value::List& args) {
+  AllowJavascript();
   base::Value top_topics_list(base::Value::Type::LIST);
   for (const auto& topic : GetPrivacySandboxService()->GetCurrentTopTopics())
     top_topics_list.Append(ConvertTopicToValue(topic));
diff --git a/chrome/browser/ui/webui/settings/privacy_sandbox_handler.h b/chrome/browser/ui/webui/settings/privacy_sandbox_handler.h
index 3c38b92e..6c7a1b9e 100644
--- a/chrome/browser/ui/webui/settings/privacy_sandbox_handler.h
+++ b/chrome/browser/ui/webui/settings/privacy_sandbox_handler.h
@@ -23,8 +23,6 @@
 
  private:
   friend class PrivacySandboxHandlerTest;
-  FRIEND_TEST_ALL_PREFIXES(PrivacySandboxHandlerTest, GetFlocId);
-  FRIEND_TEST_ALL_PREFIXES(PrivacySandboxHandlerTest, ResetFlocId);
   FRIEND_TEST_ALL_PREFIXES(PrivacySandboxHandlerTestMockService,
                            SetFledgeJoiningAllowed);
   FRIEND_TEST_ALL_PREFIXES(PrivacySandboxHandlerTestMockService,
@@ -34,8 +32,6 @@
   FRIEND_TEST_ALL_PREFIXES(PrivacySandboxHandlerTestMockService,
                            GetTopicsState);
 
-  void HandleGetFlocId(const base::Value::List& args);
-  void HandleResetFlocId(const base::Value::List& args);
   void HandleSetFledgeJoiningAllowed(const base::Value::List& args);
   void HandleGetFledgeState(const base::Value::List& args);
   void HandleSetTopicAllowed(const base::Value::List& args);
diff --git a/chrome/browser/ui/webui/settings/privacy_sandbox_handler_unittest.cc b/chrome/browser/ui/webui/settings/privacy_sandbox_handler_unittest.cc
index 0522fb8..5349145 100644
--- a/chrome/browser/ui/webui/settings/privacy_sandbox_handler_unittest.cc
+++ b/chrome/browser/ui/webui/settings/privacy_sandbox_handler_unittest.cc
@@ -59,26 +59,6 @@
   return std::make_unique<::testing::StrictMock<MockPrivacySandboxService>>();
 }
 
-// Confirms that the |floc_id| dictionary provided matches the current FLoC
-// information for |profile|.
-void ValidateFlocId(const base::Value* floc_id, Profile* profile) {
-  auto* privacy_sandbox_service =
-      PrivacySandboxServiceFactory::GetForProfile(profile);
-
-  ASSERT_TRUE(floc_id->is_dict());
-  EXPECT_EQ(
-      base::UTF16ToUTF8(privacy_sandbox_service->GetFlocStatusForDisplay()),
-      *floc_id->FindStringPath("trialStatus"));
-  EXPECT_EQ(base::UTF16ToUTF8(privacy_sandbox_service->GetFlocIdForDisplay()),
-            *floc_id->FindStringPath("cohort"));
-  EXPECT_EQ(
-      base::UTF16ToUTF8(privacy_sandbox_service->GetFlocIdNextUpdateForDisplay(
-          base::Time::Now())),
-      *floc_id->FindStringPath("nextUpdate"));
-  EXPECT_EQ(privacy_sandbox_service->IsFlocIdResettable(),
-            floc_id->FindBoolPath("canReset"));
-}
-
 void ValidateFledgeInfo(content::TestWebUI* web_ui,
                         std::string expected_callback_id,
                         std::vector<std::string> expected_joining_sites,
@@ -167,29 +147,6 @@
   std::unique_ptr<PrivacySandboxHandler> handler_;
 };
 
-TEST_F(PrivacySandboxHandlerTest, GetFlocId) {
-  base::Value args(base::Value::Type::LIST);
-  args.Append(kCallbackId1);
-  handler()->HandleGetFlocId(args.GetList());
-
-  const content::TestWebUI::CallData& data = *web_ui()->call_data().back();
-  EXPECT_EQ(kCallbackId1, data.arg1()->GetString());
-  EXPECT_EQ("cr.webUIResponse", data.function_name());
-  ASSERT_TRUE(data.arg2()->GetBool());
-  ValidateFlocId(data.arg3(), profile());
-}
-
-TEST_F(PrivacySandboxHandlerTest, ResetFlocId) {
-  base::Value args(base::Value::Type::LIST);
-  handler()->HandleResetFlocId(args.GetList());
-
-  // Resetting the FLoC ID should fire the appropriate WebUI listener.
-  const content::TestWebUI::CallData& data = *web_ui()->call_data().back();
-  EXPECT_EQ("cr.webUIListenerCallback", data.function_name());
-  EXPECT_EQ("floc-id-changed", data.arg1()->GetString());
-  ValidateFlocId(data.arg2(), profile());
-}
-
 class PrivacySandboxHandlerTestMockService : public PrivacySandboxHandlerTest {
  public:
   void SetUp() override {
diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
index f091642d..fe5bf11 100644
--- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
+++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
@@ -1629,10 +1629,15 @@
        IDS_SETTINGS_PRIVACY_SANDBOX_PAGE_FLOC_HEADING},
       {"privacySandboxPageFlocStatus",
        IDS_SETTINGS_PRIVACY_SANDBOX_PAGE_FLOC_STATUS},
+      {"privacySandboxPageFlocStatusNotActive",
+       IDS_PRIVACY_SANDBOX_FLOC_STATUS_NOT_ACTIVE},
       {"privacySandboxPageFlocCohort",
        IDS_SETTINGS_PRIVACY_SANDBOX_PAGE_FLOC_COHORT},
+      {"privacySandboxFlocInvalid", IDS_PRIVACY_SANDBOX_FLOC_INVALID},
       {"privacySandboxPageFlocCohortNextUpdate",
        IDS_SETTINGS_PRIVACY_SANDBOX_PAGE_FLOC_COHORT_NEXT_UPDATE},
+      {"privacySandboxPageFlocTimeToNextComputeInvalid",
+       IDS_PRIVACY_SANDBOX_FLOC_TIME_TO_NEXT_COMPUTE_INVALID},
       {"privacySandboxPageFlocResetCohort",
        IDS_SETTINGS_PRIVACY_SANDBOX_PAGE_FLOC_RESET_COHORT},
       // The following strings are used for PrivacySandboxSettings3.
diff --git a/chrome/browser/web_applications/app_service/lacros_web_apps_controller_browsertest.cc b/chrome/browser/web_applications/app_service/lacros_web_apps_controller_browsertest.cc
index 98bc3a7..fe815f8e 100644
--- a/chrome/browser/web_applications/app_service/lacros_web_apps_controller_browsertest.cc
+++ b/chrome/browser/web_applications/app_service/lacros_web_apps_controller_browsertest.cc
@@ -38,7 +38,7 @@
 #include "chrome/browser/ui/tabs/tab_strip_model.h"
 #include "chrome/browser/ui/web_applications/test/web_app_browsertest_util.h"
 #include "chrome/browser/ui/web_applications/web_app_controller_browsertest.h"
-#include "chrome/browser/web_applications/externally_installed_web_app_prefs.h"
+#include "chrome/browser/web_applications/test/web_app_test_utils.h"
 #include "chrome/browser/web_applications/web_app_id.h"
 #include "chrome/browser/web_applications/web_app_install_finalizer.h"
 #include "chrome/browser/web_applications/web_app_install_info.h"
@@ -370,11 +370,10 @@
             app_url.spec());
   EXPECT_TRUE(mock_app_publisher.get_deltas().back()->policy_id->empty());
 
-  // Set policy to pin the web app.
-  web_app::ExternallyInstalledWebAppPrefs web_app_prefs(
-      browser()->profile()->GetPrefs());
-  web_app_prefs.Insert(install_url, app_id,
-                       web_app::ExternalInstallSource::kExternalPolicy);
+  // Writing to the external prefs to set policy to pin the app.
+  web_app::test::AddInstallUrlData(
+      browser()->profile()->GetPrefs(), &provider().sync_bridge(), app_id,
+      install_url, web_app::ExternalInstallSource::kExternalPolicy);
 
   provider().install_manager().NotifyWebAppInstalledWithOsHooks(app_id);
 
diff --git a/chrome/browser/web_applications/extensions/web_app_policy_manager_unittest.cc b/chrome/browser/web_applications/extensions/web_app_policy_manager_unittest.cc
index 58e1811c..2fc3d9e 100644
--- a/chrome/browser/web_applications/extensions/web_app_policy_manager_unittest.cc
+++ b/chrome/browser/web_applications/extensions/web_app_policy_manager_unittest.cc
@@ -325,8 +325,6 @@
 
     fake_registry_controller_ =
         std::make_unique<FakeWebAppRegistryController>();
-    externally_installed_app_prefs_ =
-        std::make_unique<ExternallyInstalledWebAppPrefs>(profile()->GetPrefs());
     fake_externally_managed_app_manager_ =
         std::make_unique<FakeExternallyManagedAppManager>(profile());
     test_system_app_manager_ =
@@ -354,13 +352,10 @@
                     ConvertExternalInstallSourceToSource(install_source));
                 if (install_options.override_name)
                   web_app->SetName(install_options.override_name.value());
-                web_app->AddInstallURLToManagementExternalConfigMap(
-                    ConvertExternalInstallSourceToSource(install_source),
-                    install_url);
                 RegisterApp(std::move(web_app));
-
-                externally_installed_app_prefs().Insert(install_url, app_id,
-                                                        install_source);
+                test::AddInstallUrlData(profile()->GetPrefs(),
+                                        &controller().sync_bridge(), app_id,
+                                        install_url, install_source);
               }
               return ExternallyManagedAppManager::InstallResult(
                   install_result_code_);
@@ -390,7 +385,6 @@
     web_app_policy_manager_.reset();
     test_system_app_manager_.reset();
     fake_externally_managed_app_manager_.reset();
-    externally_installed_app_prefs_.reset();
     fake_registry_controller_.reset();
 
     ChromeRenderViewHostTestHarness::TearDown();
@@ -400,12 +394,10 @@
                                       ExternalInstallSource install_source) {
     auto web_app = test::CreateWebApp(
         url, ConvertExternalInstallSourceToSource(install_source));
-    web_app->AddInstallURLToManagementExternalConfigMap(
-        ConvertExternalInstallSourceToSource(install_source), url);
     RegisterApp(std::move(web_app));
-
-    externally_installed_app_prefs().Insert(
-        url, GenerateAppId(/*manifest_id=*/absl::nullopt, url), install_source);
+    test::AddInstallUrlData(profile()->GetPrefs(), &controller().sync_bridge(),
+                            GenerateAppId(/*manifest_id=*/absl::nullopt, url),
+                            url, install_source);
   }
 
   void AwaitPolicyManagerAppsSynchronized() {
@@ -464,10 +456,6 @@
   WebAppPolicyManager& policy_manager() { return *web_app_policy_manager_; }
   ScopedTestingLocalState testing_local_state_;
 
-  ExternallyInstalledWebAppPrefs& externally_installed_app_prefs() {
-    return *externally_installed_app_prefs_;
-  }
-
   FakeWebAppRegistryController& controller() {
     return *fake_registry_controller_;
   }
@@ -512,8 +500,6 @@
       webapps::InstallResultCode::kSuccessNewInstall;
 
   std::unique_ptr<FakeWebAppRegistryController> fake_registry_controller_;
-  std::unique_ptr<ExternallyInstalledWebAppPrefs>
-      externally_installed_app_prefs_;
   std::unique_ptr<FakeExternallyManagedAppManager>
       fake_externally_managed_app_manager_;
   std::unique_ptr<ash::TestSystemWebAppManager> test_system_app_manager_;
diff --git a/chrome/browser/web_applications/externally_managed_app_manager_impl_unittest.cc b/chrome/browser/web_applications/externally_managed_app_manager_impl_unittest.cc
index ace57098..eaa4eee 100644
--- a/chrome/browser/web_applications/externally_managed_app_manager_impl_unittest.cc
+++ b/chrome/browser/web_applications/externally_managed_app_manager_impl_unittest.cc
@@ -287,8 +287,8 @@
               std::move(install_options)),
           externally_managed_app_manager_impl_(
               externally_managed_app_manager_impl),
-          externally_installed_app_prefs_(profile->GetPrefs()),
-          test_install_task_manager_(test_install_task_manager) {}
+          test_install_task_manager_(test_install_task_manager),
+          profile_(profile) {}
 
     TestExternallyManagedAppInstallTask(
         const TestExternallyManagedAppInstallTask&) = delete;
@@ -310,14 +310,10 @@
         if (!registrar().IsInstalled(*app_id)) {
           auto web_app =
               test::CreateWebApp(install_url, WebAppManagement::kPolicy);
-          web_app->AddExternalSourceInformation(WebAppManagement::kPolicy,
-                                                install_url,
-                                                result.did_install_placeholder);
           controller().RegisterApp(std::move(web_app));
-          externally_installed_app_prefs_.Insert(install_url, *app_id,
-                                                 install_source);
-          externally_installed_app_prefs_.SetIsPlaceholder(
-              install_url, result.did_install_placeholder);
+          test::AddInstallUrlAndPlaceholderData(
+              profile_->GetPrefs(), &controller().sync_bridge(), *app_id,
+              install_url, install_source, result.did_install_placeholder);
         }
       }
       std::move(callback).Run(
@@ -348,8 +344,8 @@
    private:
     raw_ptr<TestExternallyManagedAppManager>
         externally_managed_app_manager_impl_;
-    ExternallyInstalledWebAppPrefs externally_installed_app_prefs_;
     TestExternallyManagedAppInstallTaskManager& test_install_task_manager_;
+    raw_ptr<Profile> profile_;
   };
 
   class TestExternallyManagedAppRegistrationTask
diff --git a/chrome/browser/web_applications/test/web_app_install_test_utils.cc b/chrome/browser/web_applications/test/web_app_install_test_utils.cc
index 8dc9cf3..0bf28b7 100644
--- a/chrome/browser/web_applications/test/web_app_install_test_utils.cc
+++ b/chrome/browser/web_applications/test/web_app_install_test_utils.cc
@@ -48,7 +48,8 @@
 
 AppId InstallDummyWebApp(Profile* profile,
                          const std::string& app_name,
-                         const GURL& start_url) {
+                         const GURL& start_url,
+                         const webapps::WebappInstallSource install_source) {
   AppId app_id = GenerateAppId(/*manifest_id=*/absl::nullopt, start_url);
   WebAppInstallInfo web_app_info;
 
@@ -59,8 +60,7 @@
   web_app_info.user_display_mode = UserDisplayMode::kStandalone;
   web_app_info.install_url = start_url;
 
-  WebAppInstallFinalizer::FinalizeOptions options(
-      webapps::WebappInstallSource::EXTERNAL_DEFAULT);
+  WebAppInstallFinalizer::FinalizeOptions options(install_source);
   options.bypass_os_hooks = true;
 
   // In unit tests, we do not have Browser or WebContents instances.
diff --git a/chrome/browser/web_applications/test/web_app_install_test_utils.h b/chrome/browser/web_applications/test/web_app_install_test_utils.h
index 1e26d9d..3000b9399 100644
--- a/chrome/browser/web_applications/test/web_app_install_test_utils.h
+++ b/chrome/browser/web_applications/test/web_app_install_test_utils.h
@@ -40,7 +40,9 @@
 
 AppId InstallDummyWebApp(Profile* profile,
                          const std::string& app_name,
-                         const GURL& app_url);
+                         const GURL& app_url,
+                         const webapps::WebappInstallSource install_source =
+                             webapps::WebappInstallSource::EXTERNAL_DEFAULT);
 
 // Synchronous version of WebAppInstallManager::InstallWebAppFromInfo. May be
 // used in unit tests and browser tests.
diff --git a/chrome/browser/web_applications/test/web_app_test_utils.cc b/chrome/browser/web_applications/test/web_app_test_utils.cc
index 0c4764cd..14c8c60 100644
--- a/chrome/browser/web_applications/test/web_app_test_utils.cc
+++ b/chrome/browser/web_applications/test/web_app_test_utils.cc
@@ -37,6 +37,7 @@
 #include "chrome/browser/ui/browser.h"
 #include "chrome/browser/ui/browser_commands.h"
 #include "chrome/browser/ui/browser_dialogs.h"
+#include "chrome/browser/web_applications/externally_installed_web_app_prefs.h"
 #include "chrome/browser/web_applications/test/web_app_test_observers.h"
 #include "chrome/browser/web_applications/user_display_mode.h"
 #include "chrome/browser/web_applications/web_app.h"
@@ -44,6 +45,9 @@
 #include "chrome/browser/web_applications/web_app_constants.h"
 #include "chrome/browser/web_applications/web_app_helpers.h"
 #include "chrome/browser/web_applications/web_app_install_info.h"
+#include "chrome/browser/web_applications/web_app_provider.h"
+#include "chrome/browser/web_applications/web_app_registry_update.h"
+#include "chrome/browser/web_applications/web_app_sync_bridge.h"
 #include "chrome/browser/web_applications/web_app_utils.h"
 #include "chrome/common/pref_names.h"
 #include "components/prefs/pref_service.h"
@@ -628,5 +632,46 @@
   profile->GetPrefs()->Set(prefs::kWebAppSettings, std::move(*result));
 }
 
+void AddInstallUrlData(PrefService* pref_service,
+                       WebAppSyncBridge* sync_bridge,
+                       const AppId& app_id,
+                       const GURL& url,
+                       const ExternalInstallSource& source) {
+  ScopedRegistryUpdate update(sync_bridge);
+  web_app::WebApp* app_to_update = update->UpdateApp(app_id);
+  DCHECK(app_to_update);
+
+  // Adding external app data (source and URL) to web_app DB.
+  app_to_update->AddInstallURLToManagementExternalConfigMap(
+      ConvertExternalInstallSourceToSource(source), url);
+
+  // Add to legacy external pref storage.
+  // TODO(crbug.com/1339965): Clean up after external pref migration is
+  // complete.
+  ExternallyInstalledWebAppPrefs(pref_service).Insert(url, app_id, source);
+}
+
+void AddInstallUrlAndPlaceholderData(PrefService* pref_service,
+                                     WebAppSyncBridge* sync_bridge,
+                                     const AppId& app_id,
+                                     const GURL& url,
+                                     const ExternalInstallSource& source,
+                                     bool is_placeholder) {
+  ScopedRegistryUpdate update(sync_bridge);
+  ExternallyInstalledWebAppPrefs prefs(pref_service);
+  web_app::WebApp* app_to_update = update->UpdateApp(app_id);
+  DCHECK(app_to_update);
+
+  // Adding install_url, source and placeholder information to the web_app DB.
+  app_to_update->AddExternalSourceInformation(
+      ConvertExternalInstallSourceToSource(source), url, is_placeholder);
+
+  // Add to legacy external pref storage.
+  // TODO(crbug.com/1339965): Clean up after external pref migration is
+  // complete.
+  prefs.Insert(url, app_id, source);
+  prefs.SetIsPlaceholder(url, is_placeholder);
+}
+
 }  // namespace test
 }  // namespace web_app
diff --git a/chrome/browser/web_applications/test/web_app_test_utils.h b/chrome/browser/web_applications/test/web_app_test_utils.h
index 1b7585e4..1adc294 100644
--- a/chrome/browser/web_applications/test/web_app_test_utils.h
+++ b/chrome/browser/web_applications/test/web_app_test_utils.h
@@ -12,6 +12,8 @@
 #include "chrome/browser/web_applications/web_app_constants.h"
 #include "chrome/browser/web_applications/web_app_id.h"
 #include "chrome/browser/web_applications/web_app_install_params.h"
+#include "chrome/browser/web_applications/web_app_sync_bridge.h"
+#include "components/prefs/pref_service.h"
 #include "content/public/browser/service_worker_context.h"
 #include "url/gurl.h"
 
@@ -54,6 +56,19 @@
 
 void SetWebAppSettingsListPref(Profile* profile, base::StringPiece pref);
 
+void AddInstallUrlData(PrefService* pref_service,
+                       WebAppSyncBridge* sync_bridge,
+                       const AppId& app_id,
+                       const GURL& url,
+                       const ExternalInstallSource& source);
+
+void AddInstallUrlAndPlaceholderData(PrefService* pref_service,
+                                     WebAppSyncBridge* sync_bridge,
+                                     const AppId& app_id,
+                                     const GURL& url,
+                                     const ExternalInstallSource& source,
+                                     bool is_placeholder);
+
 }  // namespace test
 }  // namespace web_app
 
diff --git a/chrome/browser/web_applications/web_app_install_manager_unittest.cc b/chrome/browser/web_applications/web_app_install_manager_unittest.cc
index 59f0787..d9b90d3 100644
--- a/chrome/browser/web_applications/web_app_install_manager_unittest.cc
+++ b/chrome/browser/web_applications/web_app_install_manager_unittest.cc
@@ -19,7 +19,6 @@
 #include "base/test/scoped_feature_list.h"
 #include "build/chromeos_buildflags.h"
 #include "chrome/browser/web_applications/commands/install_from_info_command.h"
-#include "chrome/browser/web_applications/externally_installed_web_app_prefs.h"
 #include "chrome/browser/web_applications/policy/web_app_policy_manager.h"
 #include "chrome/browser/web_applications/test/fake_data_retriever.h"
 #include "chrome/browser/web_applications/test/fake_web_app_database_factory.h"
@@ -103,9 +102,6 @@
   void SetUp() override {
     WebAppTest::SetUp();
 
-    externally_installed_app_prefs_ =
-        std::make_unique<ExternallyInstalledWebAppPrefs>(profile()->GetPrefs());
-
     fake_registry_controller_ =
         std::make_unique<FakeWebAppRegistryController>();
     fake_registry_controller_->SetUp(profile());
@@ -160,9 +156,6 @@
   FakeWebAppRegistryController& controller() {
     return *fake_registry_controller_;
   }
-  ExternallyInstalledWebAppPrefs& externally_installed_app_prefs() {
-    return *externally_installed_app_prefs_;
-  }
 
   std::unique_ptr<WebApp> CreateWebAppFromSyncAndPendingInstallation(
       const GURL& start_url,
@@ -360,10 +353,8 @@
     policy_manager_.reset();
     icon_manager_.reset();
     fake_registry_controller_.reset();
-    externally_installed_app_prefs_.reset();
     install_finalizer_.reset();
     install_manager_.reset();
-
     test_url_loader_ = nullptr;
     file_utils_ = nullptr;
   }
@@ -387,8 +378,6 @@
   std::unique_ptr<WebAppInstallManager> install_manager_;
   std::unique_ptr<WebAppInstallFinalizer> install_finalizer_;
   std::unique_ptr<FakeWebAppUiManager> ui_manager_;
-  std::unique_ptr<ExternallyInstalledWebAppPrefs>
-      externally_installed_app_prefs_;
 
   // A weak ptr. The original is owned by install_manager_.
   raw_ptr<TestWebAppUrlLoader> test_url_loader_ = nullptr;
@@ -529,9 +518,10 @@
   const AppId app_id = policy_and_user_app->app_id();
   const GURL external_app_url("https://example.com/path/policy");
 
-  externally_installed_app_prefs().Insert(
-      external_app_url, app_id, ExternalInstallSource::kExternalPolicy);
   InitRegistrarWithApp(std::move(policy_and_user_app));
+  test::AddInstallUrlData(profile()->GetPrefs(), &controller().sync_bridge(),
+                          app_id, external_app_url,
+                          ExternalInstallSource::kExternalPolicy);
 
   EXPECT_FALSE(WasPreinstalledWebAppUninstalled(app_id));
 
@@ -566,9 +556,10 @@
   const AppId app_id = policy_and_user_app->app_id();
   const GURL external_app_url("https://example.com/path/policy");
 
-  externally_installed_app_prefs().Insert(
-      external_app_url, app_id, ExternalInstallSource::kExternalPolicy);
   InitRegistrarWithApp(std::move(policy_and_user_app));
+  test::AddInstallUrlData(profile()->GetPrefs(), &controller().sync_bridge(),
+                          app_id, external_app_url,
+                          ExternalInstallSource::kExternalPolicy);
 
   EXPECT_FALSE(WasPreinstalledWebAppUninstalled(app_id));
 
@@ -604,9 +595,10 @@
   const AppId app_id = default_and_user_app->app_id();
   const GURL external_app_url("https://example.com/path/default");
 
-  externally_installed_app_prefs().Insert(
-      external_app_url, app_id, ExternalInstallSource::kExternalDefault);
   InitRegistrarWithApp(std::move(default_and_user_app));
+  test::AddInstallUrlData(profile()->GetPrefs(), &controller().sync_bridge(),
+                          app_id, external_app_url,
+                          ExternalInstallSource::kExternalDefault);
 
   EXPECT_TRUE(finalizer().CanUserUninstallWebApp(app_id));
   EXPECT_FALSE(WasPreinstalledWebAppUninstalled(app_id));
@@ -645,9 +637,10 @@
   const AppId app_id = default_and_user_app->app_id();
   const GURL external_app_url("https://example.com/path/default");
 
-  externally_installed_app_prefs().Insert(
-      external_app_url, app_id, ExternalInstallSource::kExternalDefault);
   InitRegistrarWithApp(std::move(default_and_user_app));
+  test::AddInstallUrlData(profile()->GetPrefs(), &controller().sync_bridge(),
+                          app_id, external_app_url,
+                          ExternalInstallSource::kExternalDefault);
 
   EXPECT_TRUE(finalizer().CanUserUninstallWebApp(app_id));
   EXPECT_FALSE(WasPreinstalledWebAppUninstalled(app_id));
@@ -725,8 +718,6 @@
   const AppId app_id = default_app->app_id();
   const GURL external_app_url("https://example.com/path/default");
 
-  externally_installed_app_prefs().Insert(
-      external_app_url, app_id, ExternalInstallSource::kExternalDefault);
   InitRegistrarWithApp(std::move(default_app));
 
   EXPECT_FALSE(registrar().IsActivelyInstalled(app_id));
diff --git a/chrome/browser/web_applications/web_app_pref_migration_browsertest.cc b/chrome/browser/web_applications/web_app_pref_migration_browsertest.cc
index cf896ac..610bae53 100644
--- a/chrome/browser/web_applications/web_app_pref_migration_browsertest.cc
+++ b/chrome/browser/web_applications/web_app_pref_migration_browsertest.cc
@@ -44,7 +44,8 @@
 
 IN_PROC_BROWSER_TEST_F(WebAppPrefMigrationBrowserTest, PRE_Migration) {
   AppId app_id = test::InstallDummyWebApp(browser()->profile(), "Test app 1",
-                                          GURL("https://example.com/app_1"));
+                                          GURL("https://example.com/app_1"),
+                                          webapps::WebappInstallSource::ARC);
   // New installs should no longer write into prefs.
   EXPECT_FALSE(GetWebAppInstallSourceDeprecated(
       browser()->profile()->GetPrefs(), app_id));
diff --git a/chrome/browser/web_applications/web_app_registrar.cc b/chrome/browser/web_applications/web_app_registrar.cc
index 1572939..82db23f 100644
--- a/chrome/browser/web_applications/web_app_registrar.cc
+++ b/chrome/browser/web_applications/web_app_registrar.cc
@@ -220,7 +220,7 @@
     const WebApp::ExternalConfigMap& config_map =
         web_app.management_to_external_config_map();
     auto it = config_map.find(management_source);
-    if (it != config_map.end())
+    if (it != config_map.end() && !it->second.install_urls.empty())
       installed_apps[web_app.app_id()] = it->second.install_urls;
   }
   return installed_apps;
diff --git a/chrome/build/linux.pgo.txt b/chrome/build/linux.pgo.txt
index 1c70bbdc..e12faf6 100644
--- a/chrome/build/linux.pgo.txt
+++ b/chrome/build/linux.pgo.txt
@@ -1 +1 @@
-chrome-linux-main-1656655133-9ca3e0c13a6d7673375f3bfe06136515934edcbf.profdata
+chrome-linux-main-1656676699-d95bb0fc102352638ce15efc505d9b58b99195fc.profdata
diff --git a/chrome/build/mac-arm.pgo.txt b/chrome/build/mac-arm.pgo.txt
index ada3896b..7467be6 100644
--- a/chrome/build/mac-arm.pgo.txt
+++ b/chrome/build/mac-arm.pgo.txt
@@ -1 +1 @@
-chrome-mac-arm-main-1656568531-5164d074254200bd3bb29d38a47ba531e1adf13e.profdata
+chrome-mac-arm-main-1656676699-8be33b750f7f7d60c93f27aa585cc233d4b16d68.profdata
diff --git a/chrome/build/mac.pgo.txt b/chrome/build/mac.pgo.txt
index 0e384bee..c6cefb02 100644
--- a/chrome/build/mac.pgo.txt
+++ b/chrome/build/mac.pgo.txt
@@ -1 +1 @@
-chrome-mac-main-1656655133-1d61366e0514513aa08ecbe8be600cefb9f9e66f.profdata
+chrome-mac-main-1656676699-bba5103d292294be8db6d7f00331b6d7881c6353.profdata
diff --git a/chrome/build/win32.pgo.txt b/chrome/build/win32.pgo.txt
index b65e060..5a91fc63 100644
--- a/chrome/build/win32.pgo.txt
+++ b/chrome/build/win32.pgo.txt
@@ -1 +1 @@
-chrome-win32-main-1656644169-9ed682b74d9d001dcb7f7fdf1c3775321d143c17.profdata
+chrome-win32-main-1656676699-4618a10486995f0ce2953c3d208f928f7b20fbe9.profdata
diff --git a/chrome/build/win64.pgo.txt b/chrome/build/win64.pgo.txt
index f51b162..960559b 100644
--- a/chrome/build/win64.pgo.txt
+++ b/chrome/build/win64.pgo.txt
@@ -1 +1 @@
-chrome-win64-main-1656655133-7b041b4cb3c66c62b77d03e645d6909a943585d3.profdata
+chrome-win64-main-1656687579-2ba6f8291cff57c6f07de00e340583d4dc2270e2.profdata
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
index 00c8e6ff..c00fcdb0 100644
--- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc
@@ -379,6 +379,12 @@
     "EnableWebAppUninstallFromOsSettings", base::FEATURE_ENABLED_BY_DEFAULT};
 
 #if !BUILDFLAG(IS_ANDROID)
+// Enable WebHID on extension service workers.
+const base::Feature kEnableWebHidOnExtensionServiceWorker{
+    "EnableWebHidOnExtensionServiceWorker", base::FEATURE_DISABLED_BY_DEFAULT};
+#endif
+
+#if !BUILDFLAG(IS_ANDROID)
 // Lazy initialize IndividualSettings for extensions from enterprise policy
 // that are not installed.
 const base::Feature kExtensionDeferredIndividualSettings{
diff --git a/chrome/common/chrome_features.h b/chrome/common/chrome_features.h
index d58c14d5..9c4c74c 100644
--- a/chrome/common/chrome_features.h
+++ b/chrome/common/chrome_features.h
@@ -262,6 +262,11 @@
 
 #if !BUILDFLAG(IS_ANDROID)
 COMPONENT_EXPORT(CHROME_FEATURES)
+extern const base::Feature kEnableWebHidOnExtensionServiceWorker;
+#endif
+
+#if !BUILDFLAG(IS_ANDROID)
+COMPONENT_EXPORT(CHROME_FEATURES)
 extern const base::Feature kExtensionDeferredIndividualSettings;
 #endif
 
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc
index 885ecfa..8449f4b 100644
--- a/chrome/renderer/chrome_content_renderer_client.cc
+++ b/chrome/renderer/chrome_content_renderer_client.cc
@@ -1596,6 +1596,16 @@
            features::kSupportSearchSuggestionForPrerender2))) {
     blink::WebRuntimeFeatures::EnablePrerender2RelatedFeatures(true);
   }
+
+#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(ENABLE_EXTENSIONS)
+  // WebHID on service workers is only available in extension for now with
+  // feature enabled.
+  if (IsStandaloneContentExtensionProcess() &&
+      base::FeatureList::IsEnabled(
+          features::kEnableWebHidOnExtensionServiceWorker)) {
+    blink::WebRuntimeFeatures::EnableWebHIDOnServiceWorkers(true);
+  }
+#endif
 }
 
 bool ChromeContentRendererClient::AllowScriptExtensionForServiceWorker(
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index 7518e19..26658b5 100644
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -1207,7 +1207,6 @@
       "//chrome/browser",
       "//chrome/browser:browser_themes",
       "//chrome/browser:buildflags",
-      "//chrome/browser:coupon_db_content_proto",
       "//chrome/browser:theme_properties",
       "//chrome/browser/accessibility:test_support",
       "//chrome/browser/apps/app_service:test_support",
@@ -1286,6 +1285,7 @@
       "//components/certificate_transparency:proto",
       "//components/commerce/core:cart_db_content_proto",
       "//components/commerce/core:commerce_heuristics_data",
+      "//components/commerce/core:coupon_db_content_proto",
       "//components/commerce/core:feature_list",
       "//components/component_updater/installer_policies:installer_policies_no_content_deps",
       "//components/constrained_window",
@@ -1482,6 +1482,7 @@
       "//rlz/buildflags",
       "//services/audio/public/cpp:test_support",
       "//services/device/public/cpp:test_support",
+      "//services/device/public/cpp/hid:test_support",
       "//services/device/public/mojom",
       "//services/image_annotation/public/cpp",
       "//services/network/public/cpp",
@@ -1769,6 +1770,7 @@
       "../browser/headless/headless_mode_browsertest.cc",
       "../browser/headless/headless_mode_browsertest.h",
       "../browser/heavy_ad_intervention/heavy_ad_helper_browsertest.cc",
+      "../browser/hid/hid_browsertest.cc",
       "../browser/history/history_browsertest.cc",
       "../browser/history/redirect_browsertest.cc",
       "../browser/history_clusters/history_clusters_internals_browsertest.cc",
@@ -3896,6 +3898,7 @@
         "../browser/ui/ash/volume_controller_browsertest.cc",
         "../browser/ui/browser_finder_chromeos_browsertest.cc",
         "../browser/ui/browser_navigator_browsertest_chromeos.cc",
+        "../browser/ui/browser_tabstrip_browsertest_chromeos.cc",
         "../browser/ui/extensions/application_launch_browsertest.cc",
         "../browser/ui/settings_window_manager_browsertest_chromeos.cc",
         "../browser/ui/views/apps/app_dialog/app_dialog_view_browsertest.cc",
@@ -6846,7 +6849,6 @@
 
     deps += [
       "//chrome:packed_resources_integrity_hash",
-      "//chrome/browser:coupon_db_content_proto",
       "//chrome/browser/ash/system_web_apps/test_support",
       "//chrome/browser/autofill_assistant/password_change/proto:proto",
       "//chrome/browser/enterprise/connectors/analysis:features",
@@ -6873,6 +6875,7 @@
       "//components/autofill_assistant/browser/public:unit_test_support",
       "//components/chrome_cleaner/test:test_name_helper",
       "//components/commerce/core:cart_db_content_proto",
+      "//components/commerce/core:coupon_db_content_proto",
       "//components/endpoint_fetcher:endpoint_fetcher",
       "//components/enterprise",
       "//components/enterprise:test_support",
diff --git a/chrome/test/android/javatests/src/org/chromium/chrome/test/util/browser/signin/AccountManagerTestRule.java b/chrome/test/android/javatests/src/org/chromium/chrome/test/util/browser/signin/AccountManagerTestRule.java
index 635f6b8..fafbb6b 100644
--- a/chrome/test/android/javatests/src/org/chromium/chrome/test/util/browser/signin/AccountManagerTestRule.java
+++ b/chrome/test/android/javatests/src/org/chromium/chrome/test/util/browser/signin/AccountManagerTestRule.java
@@ -4,7 +4,6 @@
 
 package org.chromium.chrome.test.util.browser.signin;
 
-import android.accounts.Account;
 import android.graphics.Bitmap;
 import android.graphics.Canvas;
 import android.graphics.drawable.Drawable;
@@ -104,7 +103,7 @@
      * Adds an account of the given accountName to the fake AccountManagerFacade.
      * @return The CoreAccountInfo for the account added.
      */
-    public CoreAccountInfo addAccount(String accountName) {
+    public AccountInfo addAccount(String accountName) {
         return addAccount(accountName, new AccountCapabilities(new HashMap<>()));
     }
 
@@ -112,8 +111,7 @@
      * Adds an account of the given accountName and capabilities to the fake AccountManagerFacade.
      * @return The CoreAccountInfo for the account added.
      */
-    public CoreAccountInfo addAccount(
-            String accountName, @NonNull AccountCapabilities capabilities) {
+    public AccountInfo addAccount(String accountName, @NonNull AccountCapabilities capabilities) {
         assert mFakeAccountInfoService != null;
         final String baseName = accountName.split("@", 2)[0];
         return addAccount(
@@ -124,7 +122,7 @@
      * Adds an account to the fake AccountManagerFacade and {@link AccountInfo} to
      * {@link FakeAccountInfoService}.
      */
-    public CoreAccountInfo addAccount(
+    public AccountInfo addAccount(
             String email, String fullName, String givenName, @Nullable Bitmap avatar) {
         return addAccount(
                 email, fullName, givenName, avatar, new AccountCapabilities(new HashMap<>()));
@@ -134,13 +132,12 @@
      * Adds an account to the fake AccountManagerFacade and {@link AccountInfo} to
      * {@link FakeAccountInfoService}.
      */
-    public CoreAccountInfo addAccount(String email, String fullName, String givenName,
+    public AccountInfo addAccount(String email, String fullName, String givenName,
             @Nullable Bitmap avatar, @NonNull AccountCapabilities capabilities) {
         assert mFakeAccountInfoService != null;
-        mFakeAccountInfoService.addAccountInfo(email, fullName, givenName, avatar, capabilities);
-        final Account account = AccountUtils.createAccountFromName(email);
-        mFakeAccountManagerFacade.addAccount(account);
-        return toCoreAccountInfo(email);
+        mFakeAccountManagerFacade.addAccount(AccountUtils.createAccountFromName(email));
+        return mFakeAccountInfoService.addAccountInfo(
+                email, fullName, givenName, avatar, capabilities);
     }
 
     /**
diff --git a/chrome/test/data/policy/policy_test_cases.json b/chrome/test/data/policy/policy_test_cases.json
index 0fab951..981b7e3 100644
--- a/chrome/test/data/policy/policy_test_cases.json
+++ b/chrome/test/data/policy/policy_test_cases.json
@@ -15562,7 +15562,7 @@
                         "file_system_type": "*"
                       }],
                       "destinations": [{
-                        "file_system_type": "MyFiles"
+                        "file_system_type": "MY_FILES"
                       }]
                     }
                   ],
@@ -15573,10 +15573,10 @@
                     {
                       "sources": [
                         {
-                          "file_system_type": "MyFiles"
+                          "file_system_type": "MY_FILES"
                         },
                         {
-                          "file_system_type": "SmbFs"
+                          "file_system_type": "SAMBA"
                         }
                       ],
                       "destinations": [{
@@ -15596,13 +15596,13 @@
                       }],
                       "destinations": [
                         {
-                          "file_system_type": "ArcDocumentsProvider"
+                          "file_system_type": "ARC"
                         },
                         {
-                          "file_system_type": "SmbFs"
+                          "file_system_type": "SAMBA"
                         },
                         {
-                          "file_system_type": "MyFiles"
+                          "file_system_type": "MY_FILES"
                         }
                       ]
                     }
diff --git a/chrome/test/data/webui/settings/OWNERS b/chrome/test/data/webui/settings/OWNERS
index 9906527..7d475a6 100644
--- a/chrome/test/data/webui/settings/OWNERS
+++ b/chrome/test/data/webui/settings/OWNERS
@@ -1,27 +1,27 @@
 file://chrome/browser/resources/settings/OWNERS
 
-per-file collapse_radio_button_tests.js=sauski@google.com
-per-file cookies_page_test.js=sauski@google.com
-per-file clear_browsing_data_test.js=sauski@google.com
-per-file do_not_track_toggle_test.js=sauski@google.com
-per-file do_not_track_toggle_test.js=sauski@google.com
-per-file metrics_reporting_tests.js=sauski@google.com
-per-file personalization_options_test.js=sauski@google.com
-per-file privacy_page_test.js=sauski@google.com
-per-file privacy_guide_page_test.js=rainhard@chromium.org,sauski@google.com
-per-file recent_site_permissions_test.js=sauski@google.com
-per-file safety_check_page_test.js=sauski@google.com
-per-file secure_dns_interactive_test.js=sauski@google.com
-per-file secure_dns_test.js=sauski@google.com
-per-file security_keys_subpage_test.js=sauski@google.com
-per-file security_page_test.js=sauski@google.com
-per-file site_data_details_subpage_tests.js=sauski@google.com
-per-file site_data_test.js=sauski@google.com
-per-file site_details_permission_tests.js=sauski@google.com
-per-file site_details_tests.js=sauski@google.com
-per-file site_entry_tests.js=sauski@google.com
-per-file site_list_entry_tests.js=sauski@google.com
-per-file site_list_tests.js=sauski@google.com
-per-file site_settings_page_test.js=sauski@google.com
-per-file test_privacy_page_browser_proxy.js=sauski@google.com
-per-file test_site_settings_prefs_browser_proxy.js=sauski@google.com
+per-file collapse_radio_button_tests.ts=sauski@google.com
+per-file cookies_page_test.ts=sauski@google.com
+per-file clear_browsing_data_test.ts=sauski@google.com
+per-file do_not_track_toggle_test.ts=sauski@google.com
+per-file do_not_track_toggle_test.ts=sauski@google.com
+per-file metrics_reporting_tests.ts=sauski@google.com
+per-file personalization_options_test.ts=sauski@google.com
+per-file privacy_page_test.ts=sauski@google.com
+per-file privacy_guide_page_test.ts=rainhard@chromium.org,sauski@google.com
+per-file recent_site_permissions_test.ts=sauski@google.com
+per-file safety_check_page_test.ts=sauski@google.com
+per-file secure_dns_interactive_test.ts=sauski@google.com
+per-file secure_dns_test.ts=sauski@google.com
+per-file security_keys_subpage_test.ts=sauski@google.com
+per-file security_page_test.ts=sauski@google.com
+per-file site_data_details_subpage_tests.ts=sauski@google.com
+per-file site_data_test.ts=sauski@google.com
+per-file site_details_permission_tests.ts=sauski@google.com
+per-file site_details_tests.ts=sauski@google.com
+per-file site_entry_tests.ts=sauski@google.com
+per-file site_list_entry_tests.ts=sauski@google.com
+per-file site_list_tests.ts=sauski@google.com
+per-file site_settings_page_test.ts=sauski@google.com
+per-file test_privacy_page_browser_proxy.ts=sauski@google.com
+per-file test_site_settings_prefs_browser_proxy.ts=sauski@google.com
diff --git a/chrome/test/data/webui/settings/privacy_sandbox_test.ts b/chrome/test/data/webui/settings/privacy_sandbox_test.ts
index 7b84531..836a8ce9 100644
--- a/chrome/test/data/webui/settings/privacy_sandbox_test.ts
+++ b/chrome/test/data/webui/settings/privacy_sandbox_test.ts
@@ -4,13 +4,11 @@
 
 import 'chrome://settings/privacy_sandbox/app.js';
 
-import {webUIListenerCallback} from 'chrome://resources/js/cr.m.js';
 import {DomIf} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
 import {CrDialogElement} from 'chrome://settings/lazy_load.js';
 import {PrivacySandboxAppElement, PrivacySandboxSettingsView} from 'chrome://settings/privacy_sandbox/app.js';
 import {CanonicalTopic, PrivacySandboxBrowserProxy, PrivacySandboxBrowserProxyImpl} from 'chrome://settings/privacy_sandbox/privacy_sandbox_browser_proxy.js';
-import {CrButtonElement, CrSettingsPrefs, HatsBrowserProxyImpl, loadTimeData, MetricsBrowserProxyImpl, TrustSafetyInteraction} from 'chrome://settings/settings.js';
-
+import {CrSettingsPrefs, HatsBrowserProxyImpl, loadTimeData, MetricsBrowserProxyImpl, TrustSafetyInteraction} from 'chrome://settings/settings.js';
 import {assertEquals, assertFalse, assertTrue} from 'chrome://webui-test/chai_assert.js';
 import {TestBrowserProxy} from 'chrome://webui-test/test_browser_proxy.js';
 import {eventToPromise, flushTasks, isChildVisible, isVisible} from 'chrome://webui-test/test_util.js';
@@ -22,8 +20,6 @@
     PrivacySandboxBrowserProxy {
   constructor() {
     super([
-      'getFlocId',
-      'resetFlocId',
       'getFledgeState',
       'setFledgeJoiningAllowed',
       'getTopicsState',
@@ -31,20 +27,6 @@
     ]);
   }
 
-  getFlocId() {
-    this.methodCalled('getFlocId');
-    return Promise.resolve({
-      trialStatus: 'test-trial-status',
-      cohort: 'test-id',
-      nextUpdate: 'test-time',
-      canReset: true,
-    });
-  }
-
-  resetFlocId() {
-    this.methodCalled('resetFlocId');
-  }
-
   getFledgeState() {
     this.methodCalled('getFledgeState');
     return Promise.resolve({
@@ -151,57 +133,6 @@
         await testHatsBrowserProxy.whenCalled('trustSafetyInteractionOccurred');
     assertEquals(TrustSafetyInteraction.OPENED_PRIVACY_SANDBOX, interaction);
   });
-
-  test('flocId', async function() {
-    // The page should automatically retrieve the FLoC state when it is attached
-    // to the document.
-    await testPrivacySandboxBrowserProxy.whenCalled('getFlocId');
-    assertEquals(
-        'test-trial-status',
-        page.shadowRoot!.querySelector<HTMLElement>(
-                            '#flocStatus')!.textContent!.trim());
-    assertEquals(
-        'test-id',
-        page.shadowRoot!.querySelector<HTMLElement>(
-                            '#flocId')!.textContent!.trim());
-    assertEquals(
-        'test-time',
-        page.shadowRoot!.querySelector<HTMLElement>(
-                            '#flocUpdatedOn')!.textContent!.trim());
-    assertFalse(
-        page.shadowRoot!.querySelector<CrButtonElement>(
-                            '#resetFlocIdButton')!.disabled);
-
-    // The page should listen for changes via a WebUI listener.
-    webUIListenerCallback('floc-id-changed', {
-      trialStatus: 'new-test-trial-status',
-      cohort: 'new-test-id',
-      nextUpdate: 'new-test-time',
-      canReset: false,
-    });
-
-    await flushTasks();
-    assertEquals(
-        'new-test-trial-status',
-        page.shadowRoot!.querySelector<HTMLElement>(
-                            '#flocStatus')!.textContent!.trim());
-    assertEquals(
-        'new-test-id',
-        page.shadowRoot!.querySelector<HTMLElement>(
-                            '#flocId')!.textContent!.trim());
-    assertEquals(
-        'new-test-time',
-        page.shadowRoot!.querySelector<HTMLElement>(
-                            '#flocUpdatedOn')!.textContent!.trim());
-    assertTrue(
-        page.shadowRoot!.querySelector<CrButtonElement>(
-                            '#resetFlocIdButton')!.disabled);
-  });
-
-  test('resetFlocId', function() {
-    page.shadowRoot!.querySelector<HTMLElement>('#resetFlocIdButton')!.click();
-    return testPrivacySandboxBrowserProxy.whenCalled('resetFlocId');
-  });
 });
 
 suite('PrivacySandboxSettings3', function() {
diff --git a/chromeos/profiles/orderfile.newest.txt b/chromeos/profiles/orderfile.newest.txt
index 090bb3a..257a1e30 100644
--- a/chromeos/profiles/orderfile.newest.txt
+++ b/chromeos/profiles/orderfile.newest.txt
@@ -1 +1 @@
-chromeos-chrome-orderfile-field-104-5112.9-1656324473-benchmark-104.0.5112.29-r1.orderfile.xz
+chromeos-chrome-orderfile-field-104-5112.9-1656324473-benchmark-104.0.5112.30-r1.orderfile.xz
diff --git a/chromeos/strings/chromeos_strings_as.xtb b/chromeos/strings/chromeos_strings_as.xtb
index c709713e..e7e853c 100644
--- a/chromeos/strings/chromeos_strings_as.xtb
+++ b/chromeos/strings/chromeos_strings_as.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">বেটাৰীৰ চাৰ্জিঙৰ হাৰ পৰীক্ষা কৰিবলৈ আপোনাৰ বেটাৰীটো এক চুটি সময়ৰ বাবে খৰচ হ’বলৈ দিয়ক</translation>
 <translation id="6517239166834772319">অন্বেষণ</translation>
 <translation id="6527081081771465939">ৱাই-ফাইৰ অজ্ঞাত সুৰক্ষাৰ প্ৰ'টকল</translation>
+<translation id="6535178685492749208">আপুনি অফলাইন হৈ আছে। মতামত পাছত পঠিওৱা হ’ব।</translation>
 <translation id="65587193855025101">ফ্লে'টবেড</translation>
 <translation id="6564646048574748301">বিফল হৈছে - প্ৰিণ্টাৰৰ সৈতে সংযোগ কৰিব পৰা নাই</translation>
 <translation id="6566314079205407217">একাধিক পৃষ্ঠাৰ স্কেন</translation>
diff --git a/chromeos/strings/chromeos_strings_be.xtb b/chromeos/strings/chromeos_strings_be.xtb
index 820b59f..5af7f43 100644
--- a/chromeos/strings/chromeos_strings_be.xtb
+++ b/chromeos/strings/chromeos_strings_be.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Каб праверыць хуткасць зарадкі, пачакайце крыху, пакуль акумулятар дастаткова не разрадзіцца</translation>
 <translation id="6517239166834772319">Агляд</translation>
 <translation id="6527081081771465939">Невядомы пратакол сістэмы бяспекі Wi-Fi</translation>
+<translation id="6535178685492749208">Вы па-за сеткай. Водгук будзе адпраўлены пазней.</translation>
 <translation id="65587193855025101">Планшэтны сканер</translation>
 <translation id="6564646048574748301">Збой: прынтар недаступны</translation>
 <translation id="6566314079205407217">Шматстаронкавае сканіраванне</translation>
diff --git a/chromeos/strings/chromeos_strings_bg.xtb b/chromeos/strings/chromeos_strings_bg.xtb
index 4fdc594..c3f7d52a 100644
--- a/chromeos/strings/chromeos_strings_bg.xtb
+++ b/chromeos/strings/chromeos_strings_bg.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">За да тествате скоростта на зареждане, трябва да изчакате малко, така че батерията да се изтощи</translation>
 <translation id="6517239166834772319">Explore</translation>
 <translation id="6527081081771465939">Неизвестен протокол за сигурност на Wi-Fi</translation>
+<translation id="6535178685492749208">Офлайн сте. Отзивите ще се изпратят по-късно.</translation>
 <translation id="65587193855025101">Плосък скенер</translation>
 <translation id="6564646048574748301">Неуспешно – няма връзка с принтера</translation>
 <translation id="6566314079205407217">Сканиране на няколко страници</translation>
diff --git a/chromeos/strings/chromeos_strings_ca.xtb b/chromeos/strings/chromeos_strings_ca.xtb
index 2fe6f03..711ae48d0 100644
--- a/chromeos/strings/chromeos_strings_ca.xtb
+++ b/chromeos/strings/chromeos_strings_ca.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Per provar la velocitat de càrrega de la bateria, deixa que s'exhaureixi una estona</translation>
 <translation id="6517239166834772319">Explora</translation>
 <translation id="6527081081771465939">Protocol de seguretat Wi-Fi desconegut</translation>
+<translation id="6535178685492749208">No tens connexió. Els suggeriments s'enviaran més tard.</translation>
 <translation id="65587193855025101">Finestra plana</translation>
 <translation id="6564646048574748301">Error: no es pot accedir a la impressora</translation>
 <translation id="6566314079205407217">Cerca en diverses pàgines</translation>
diff --git a/chromeos/strings/chromeos_strings_es-419.xtb b/chromeos/strings/chromeos_strings_es-419.xtb
index 59de56e..d95a285 100644
--- a/chromeos/strings/chromeos_strings_es-419.xtb
+++ b/chromeos/strings/chromeos_strings_es-419.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Para probar la velocidad de carga de la batería, deja que esta se descargue un poco.</translation>
 <translation id="6517239166834772319">Explorar</translation>
 <translation id="6527081081771465939">el protocolo de seguridad Wi-Fi es desconocido</translation>
+<translation id="6535178685492749208">No tienes conexión. Los comentarios se enviarán más tarde.</translation>
 <translation id="65587193855025101">Cristal del escáner</translation>
 <translation id="6564646048574748301">Error: No se puede acceder a la impresora</translation>
 <translation id="6566314079205407217">Escaneo de múltiples páginas</translation>
diff --git a/chromeos/strings/chromeos_strings_fi.xtb b/chromeos/strings/chromeos_strings_fi.xtb
index f8d4b3ff..238df3f3 100644
--- a/chromeos/strings/chromeos_strings_fi.xtb
+++ b/chromeos/strings/chromeos_strings_fi.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Anna akun tyhjentyä hetken aikaa, jotta voit testata sen latautumisnopeutta</translation>
 <translation id="6517239166834772319">Explore</translation>
 <translation id="6527081081771465939">Tuntematon Wi-Fi-suojausprotokolla</translation>
+<translation id="6535178685492749208">Et ole yhteydessä verkkoon. Palaute lähetetään myöhemmin.</translation>
 <translation id="65587193855025101">Tasoskanneri</translation>
 <translation id="6564646048574748301">Epäonnistui – Ei yhteyttä tulostimeen</translation>
 <translation id="6566314079205407217">Usean sivun skannaus</translation>
diff --git a/chromeos/strings/chromeos_strings_fr-CA.xtb b/chromeos/strings/chromeos_strings_fr-CA.xtb
index 471a8e4..dc31ab7 100644
--- a/chromeos/strings/chromeos_strings_fr-CA.xtb
+++ b/chromeos/strings/chromeos_strings_fr-CA.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Pour évaluer la vitesse de recharge de la pile, laissez votre pile se décharger pendant une courte période</translation>
 <translation id="6517239166834772319">Explorer</translation>
 <translation id="6527081081771465939">Protocole de sécurité Wi-Fi inconnu</translation>
+<translation id="6535178685492749208">Vous êtes hors ligne. Les commentaires seront envoyés plus tard.</translation>
 <translation id="65587193855025101">À plat</translation>
 <translation id="6564646048574748301">Échec : imprimante inaccessible</translation>
 <translation id="6566314079205407217">Numérisation de plusieurs pages</translation>
diff --git a/chromeos/strings/chromeos_strings_fr.xtb b/chromeos/strings/chromeos_strings_fr.xtb
index 53bed28..fd629a7 100644
--- a/chromeos/strings/chromeos_strings_fr.xtb
+++ b/chromeos/strings/chromeos_strings_fr.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Pour évaluer le niveau de charge de la batterie, laissez votre batterie se décharger sur une courte période</translation>
 <translation id="6517239166834772319">Explorer</translation>
 <translation id="6527081081771465939">Protocole de sécurité du réseau Wi-Fi inconnu</translation>
+<translation id="6535178685492749208">Vous êtes hors connexion. Les commentaires seront envoyés plus tard.</translation>
 <translation id="65587193855025101">Vitre du plateau</translation>
 <translation id="6564646048574748301">Échec – Imprimante inaccessible</translation>
 <translation id="6566314079205407217">Analyse de plusieurs pages</translation>
diff --git a/chromeos/strings/chromeos_strings_hi.xtb b/chromeos/strings/chromeos_strings_hi.xtb
index fe12e01..d11d4fa 100644
--- a/chromeos/strings/chromeos_strings_hi.xtb
+++ b/chromeos/strings/chromeos_strings_hi.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">बैटरी चार्ज होने की दर की जांच करने के लिए, बैटरी को पहले काफ़ी हद तक (पूरी नहीं) खर्च होने दें</translation>
 <translation id="6517239166834772319">एक्सप्लोर करें</translation>
 <translation id="6527081081771465939">इस वाई-फ़ाई सुरक्षा प्रोटोकॉल की जानकारी नहीं है</translation>
+<translation id="6535178685492749208">आप ऑफ़लाइन हैं. आपका सुझाव, शिकायत या राय बाद में भेजी जाएगी.</translation>
 <translation id="65587193855025101">फ़्लैटबेड</translation>
 <translation id="6564646048574748301">प्रिंट नहीं हो पाया - प्रिंटर से कनेक्ट नहीं हो पा रहा है</translation>
 <translation id="6566314079205407217">मल्टी-पेज स्कैन</translation>
diff --git a/chromeos/strings/chromeos_strings_hy.xtb b/chromeos/strings/chromeos_strings_hy.xtb
index a6ee7550..559e48a 100644
--- a/chromeos/strings/chromeos_strings_hy.xtb
+++ b/chromeos/strings/chromeos_strings_hy.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Մարտկոցի լիցքավորման արագությունը ստուգելու համար թողեք, որ մարտկոցը մի փոքր լիցքաթափվի</translation>
 <translation id="6517239166834772319">Հնարավորություններ</translation>
 <translation id="6527081081771465939">Wi-Fi-ի անվտանգության անհայտ հաղորդակարգ</translation>
+<translation id="6535178685492749208">Դուք անցանց ռեժիմում եք։ Կարծիքը կուղարկվի ավելի ուշ։</translation>
 <translation id="65587193855025101">Պլանշետային</translation>
 <translation id="6564646048574748301">Չհաջողվեց տպել – Տպիչն անհասանելի է</translation>
 <translation id="6566314079205407217">Սկանավորել մի քանի էջ</translation>
diff --git a/chromeos/strings/chromeos_strings_iw.xtb b/chromeos/strings/chromeos_strings_iw.xtb
index f5b073a..e287c1c 100644
--- a/chromeos/strings/chromeos_strings_iw.xtb
+++ b/chromeos/strings/chromeos_strings_iw.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">כדי לבדוק את מהירות הטעינה של הסוללה, יש להמתין זמן מה שתתרוקן</translation>
 <translation id="6517239166834772319">‏מה חדש ב-Chromebook</translation>
 <translation id="6527081081771465939">‏פרוטוקול אבטחת Wi-Fi לא מזוהה</translation>
+<translation id="6535178685492749208">אין לך חיבור לאינטרנט. המשוב יישלח מאוחר יותר.</translation>
 <translation id="65587193855025101">שטוח</translation>
 <translation id="6564646048574748301">נכשלה – לא ניתן להתחבר אל המדפסת</translation>
 <translation id="6566314079205407217">סריקה של מספר דפים</translation>
diff --git a/chromeos/strings/chromeos_strings_kk.xtb b/chromeos/strings/chromeos_strings_kk.xtb
index 5580909..4975b96 100644
--- a/chromeos/strings/chromeos_strings_kk.xtb
+++ b/chromeos/strings/chromeos_strings_kk.xtb
@@ -153,6 +153,7 @@
 <translation id="2163937499206714165">Қараңғы режимді қосу</translation>
 <translation id="2177831236093724629"><ph name="LINK_BEGIN" />Үйлеспейтін құрамдастар<ph name="LINK_END" /> табылды. Барлық сәйкес құрамдастың анықталғанын тексеру үшін Chrome OS жүйесін соңғы нұсқаға жаңартыңыз.</translation>
 <translation id="2180197493692062006">Бірдеңе дұрыс болмады. Қолданбаны қайта ашып көріңіз.</translation>
+<translation id="2182088270354640012">Пікір қалдырғаныңызға рақмет! Пікіріңіз Chrome OS операциялық жүйесін жақсартуға көмектеседі және оны Chrome OS ұжымы қарап шығады. Келіп түскен шағымдардың көптігіне байланысты сізге тікелей жауап берілмейді.</translation>
 <translation id="2209788852729124853">Трафик есептегіштерін нөлдеу</translation>
 <translation id="2212733584906323460">Атаулар ажыратымдылығы</translation>
 <translation id="2217935453350629363">Қазіргі жылдамдық</translation>
@@ -201,6 +202,7 @@
 <translation id="253029298928638905">Қайта қосылуда…</translation>
 <translation id="2533048460510040082">Ұсынылған анықтамалық мазмұн</translation>
 <translation id="2536159006530886390">Интернетке қосыла алмай жатыр.</translation>
+<translation id="256360469103926202">Пікіріңіз ChromeOS операциялық жүйесін жақсартуға көмектеседі және оны біздің ұжым қарап шығады. Келіп түскен шағымдардың көптігіне байланысты жауап жібере алмаймыз.</translation>
 <translation id="2570743873672969996"><ph name="TEST_NAME" /> сынағы жүруде…</translation>
 <translation id="2584559707064218956">Реттеу үшін "Параметрлер" бөліміне өтіңіз.</translation>
 <translation id="2619761439309613843">Күн сайын жаңарту</translation>
@@ -256,6 +258,7 @@
 <translation id="3226405216343213872">Сканерлер ізделуде</translation>
 <translation id="3246869037381808805">1 күннен асқан баспа жұмыстары өшіріледі.</translation>
 <translation id="3268178239013324452">Сәтсіз: есігі ашық</translation>
+<translation id="3275729367986477355">Аватар суреті</translation>
 <translation id="3283504360622356314">{0,plural, =1{Файлды өзгерту}other{Файлдарды өзгерту}}</translation>
 <translation id="3286515922899063534"><ph name="CURRENT" /> ГГц</translation>
 <translation id="3291996639387199448">Кілт бағыты</translation>
@@ -429,6 +432,7 @@
 <translation id="4793710386569335688">Толық ақпарат алу үшін <ph name="BEGIN_LINK" />Анықтамалық орталыққа<ph name="END_LINK" /> өтіңіз.</translation>
 <translation id="4793756956024303490">Сығу алгоритмі</translation>
 <translation id="4794140124556169553">Орталық процессор сынағын қоссаңыз, жүйенің өнімділігіне кері әсер болуы мүмкін.</translation>
+<translation id="4800589996161293643">Chromebook қауымдастығы</translation>
 <translation id="4804818685124855865">Ажырату</translation>
 <translation id="4808449224298348341"><ph name="DOCUMENT_TITLE" /> құжатын басып шығарудан бас тартылды.</translation>
 <translation id="4809927044794281115">Жарық режим</translation>
@@ -487,6 +491,7 @@
 <translation id="5212543919916444558">Экранда мен көмектесе алатын ештеңе жоқ. Микрофон белгішесін түртіп, маған сұрақ қойыңыз.</translation>
 <translation id="5212593641110061691">Шағын формат</translation>
 <translation id="5222676887888702881">Шығу</translation>
+<translation id="522307662484862935">Электрондық мекенжайды енгізбеу</translation>
 <translation id="5227902338748591677">Қараңғы режим кестесі</translation>
 <translation id="5234764350956374838">Жабу</translation>
 <translation id="5252456968953390977">Роуминг</translation>
@@ -613,6 +618,7 @@
 <translation id="6284632978374966585">Қараңғы режимді қосу</translation>
 <translation id="6295178529664209245">Жөндеуді жалғастырасыз ба?</translation>
 <translation id="6302401976930124515"><ph name="TEST_NAME" /> тексерісінен бас тартылды.</translation>
+<translation id="631063167932043783">Зерттеу қолданбасы</translation>
 <translation id="6319207335391420837"><ph name="DEVICE_NAME" /> құрылғысының микробағдарламасын жаңарту</translation>
 <translation id="6321407676395378991">Скринсейверді қосу</translation>
 <translation id="6325525973963619867">Қате шықты</translation>
@@ -641,6 +647,7 @@
 <translation id="6516990319416533844">Батареяны зарядтау жылдамдығын тексеру үшін оны қысқа уақыт пайдаланып, зарядын азайтыңыз.</translation>
 <translation id="6517239166834772319">Шолу</translation>
 <translation id="6527081081771465939">WiFi қауіпсіздік протоколы белгісіз.</translation>
+<translation id="6535178685492749208">Офлайн режимдесіз. Пікір кейінірек жіберіледі.</translation>
 <translation id="65587193855025101">Планшет</translation>
 <translation id="6564646048574748301">Сәтсіз: принтер қолжетімді емес</translation>
 <translation id="6566314079205407217">Бірнеше бетті сканерлеу</translation>
@@ -719,6 +726,7 @@
 <translation id="7297226631177386107">Брандмауэр арқылы HTTPS веб-сайттарына қосылу мүмкін емес.</translation>
 <translation id="7302860742311162920">ICCID</translation>
 <translation id="7305884605064981971">EDGE</translation>
+<translation id="7308203371573257315">Chromebook анықтама форумындағы мамандардан сұраңыз.</translation>
 <translation id="7319430975418800333">A3</translation>
 <translation id="7343581795491695942"><ph name="QUERY_TEXT" />; <ph name="RESULT_TEXT" />; Нәтижені Google Search-тен көру үшін іздеу және бос орын пернелерін бірге басыңыз.</translation>
 <translation id="7343649194310845056">Желілік құрылғылар</translation>
@@ -761,6 +769,7 @@
 <translation id="773153675489693198">Цикл саны</translation>
 <translation id="7747039790905080783">Алдын ала бөлісілген код</translation>
 <translation id="7762130827864645708">Құпия сөзіңіз өзгерді. Бұдан былай жаңа құпия сөзді пайдаланыңыз.</translation>
+<translation id="7762839321248874531"><ph name="BEGIN_LINK1" />Жүйе мен қолданба туралы ақпаратты<ph name="END_LINK1" /> және <ph name="BEGIN_LINK2" />көрсеткіштерді<ph name="END_LINK2" /> жіберу</translation>
 <translation id="7763470514545477072">Домен суффиксі сәйкестігі</translation>
 <translation id="7769672763586021400">Үлгі идентификаторы</translation>
 <translation id="7784116172884276937">DNS серверлері реттелмеген.</translation>
@@ -830,6 +839,7 @@
 <translation id="8382302752385457774">Ақ белгі</translation>
 <translation id="8395584934117017006"><ph name="DEVICE_TYPE" /> құрылғысын кәсіпорын басқарады.</translation>
 <translation id="8398927464629426868">Құрылғының зарядталу немесе зарядын жоғалту көрсеткіші.</translation>
+<translation id="8420955526972171689">Сынақтар жүргізіп, жабдық ақауларын жойыңыз.</translation>
 <translation id="8422748173858722634">IMEI</translation>
 <translation id="8428073762635678092">Ендірілген пернетақта</translation>
 <translation id="8431300646573772016">ChromeOS жаңалықтары</translation>
diff --git a/chromeos/strings/chromeos_strings_ky.xtb b/chromeos/strings/chromeos_strings_ky.xtb
index 527cf35..2fc1a760 100644
--- a/chromeos/strings/chromeos_strings_ky.xtb
+++ b/chromeos/strings/chromeos_strings_ky.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Батареянын кубаттануу ылдамдыгын текшерүү үчүн анын кубатын кыска убакыттын ичинде сарптаңыз</translation>
 <translation id="6517239166834772319">Изилдөө</translation>
 <translation id="6527081081771465939">Белгисиз WiFi коопсуздук протоколу</translation>
+<translation id="6535178685492749208">Сиз офлайндасыз Пикир кийинчерээк жөнөтүлөт.</translation>
 <translation id="65587193855025101">Планшет</translation>
 <translation id="6564646048574748301">Басылып чыгарылган жок - Принтер жеткиликсиз</translation>
 <translation id="6566314079205407217">Бир нече бетти скандоо</translation>
diff --git a/chromeos/strings/chromeos_strings_lv.xtb b/chromeos/strings/chromeos_strings_lv.xtb
index fb934e7..72ba4c7 100644
--- a/chromeos/strings/chromeos_strings_lv.xtb
+++ b/chromeos/strings/chromeos_strings_lv.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Lai pārbaudītu akumulatora uzlādes ātrumu, uz neilgu laiku palieliniet akumulatora enerģijas patēriņu, sasniedzot zemu uzlādes līmeni.</translation>
 <translation id="6517239166834772319">Izpēte</translation>
 <translation id="6527081081771465939">Nezināms Wi-Fi drošības protokols</translation>
+<translation id="6535178685492749208">Jūs esat bezsaistē. Atsauksme tiks nosūtīta vēlāk.</translation>
 <translation id="65587193855025101">Plakanvirsma</translation>
 <translation id="6564646048574748301">Neizdevās — printeris nav sasniedzams</translation>
 <translation id="6566314079205407217">Vairāku lapu skenēšana</translation>
diff --git a/chromeos/strings/chromeos_strings_mr.xtb b/chromeos/strings/chromeos_strings_mr.xtb
index 9914c35..6079473 100644
--- a/chromeos/strings/chromeos_strings_mr.xtb
+++ b/chromeos/strings/chromeos_strings_mr.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">बॅटरी चार्जिंग रेटची चाचणी घेण्यासाठी, थोडा वेळ तुमची बॅटरी ड्रेन होऊ द्या</translation>
 <translation id="6517239166834772319">एक्सप्लोर करा</translation>
 <translation id="6527081081771465939">अनोळखी वायफाय सुरक्षा प्रोटोकॉल</translation>
+<translation id="6535178685492749208">तुम्ही ऑफलाइन आहात. फीडबॅक हा नंतर पाठवला जाईल.</translation>
 <translation id="65587193855025101">फ्लॅटबेड</translation>
 <translation id="6564646048574748301">अयशस्वी झाले - प्रिंटरशी कनेक्ट करता आले नाही</translation>
 <translation id="6566314079205407217">मल्टी-पेज स्कॅन</translation>
diff --git a/chromeos/strings/chromeos_strings_ru.xtb b/chromeos/strings/chromeos_strings_ru.xtb
index 5c80b33..bc1ef0a 100644
--- a/chromeos/strings/chromeos_strings_ru.xtb
+++ b/chromeos/strings/chromeos_strings_ru.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Чтобы проверить скорость зарядки батареи, разрядите ее в течение короткого промежутка времени.</translation>
 <translation id="6517239166834772319">Возможности</translation>
 <translation id="6527081081771465939">Неизвестный протокол обеспечения безопасности сети Wi-Fi.</translation>
+<translation id="6535178685492749208">Нет подключения к интернету. Отзыв будет отправлен позже.</translation>
 <translation id="65587193855025101">Планшетный</translation>
 <translation id="6564646048574748301">Сбой: принтер недоступен</translation>
 <translation id="6566314079205407217">Сканировать несколько страниц</translation>
diff --git a/chromeos/strings/chromeos_strings_si.xtb b/chromeos/strings/chromeos_strings_si.xtb
index 9808067e..573b3262 100644
--- a/chromeos/strings/chromeos_strings_si.xtb
+++ b/chromeos/strings/chromeos_strings_si.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">බැටරිය ආරෝපණය වීමේ වේගය පරීක්ෂා කිරීමට, කෙටි කාලයක් සඳහා ඔබගේ බැටරිය බැස යාමට ඉඩ දෙන්න</translation>
 <translation id="6517239166834772319">ගවේෂණය</translation>
 <translation id="6527081081771465939">නොදන්නා Wi-Fi ආරක්ෂක ප්‍රොටොකෝලය</translation>
+<translation id="6535178685492749208">ඔබ නොබැඳි වේ. ප්‍රතිපෝෂණ පසුව යවනු ලැබේ.</translation>
 <translation id="65587193855025101">Flatbed</translation>
 <translation id="6564646048574748301">අසාර්ථක විය - මුද්‍රණ යන්ත්‍රය වෙත ළඟා විය නොහැකිය</translation>
 <translation id="6566314079205407217">බහු-පිටු ස්කෑන් කිරීම</translation>
diff --git a/chromeos/strings/chromeos_strings_sq.xtb b/chromeos/strings/chromeos_strings_sq.xtb
index aa2d729..fab3935 100644
--- a/chromeos/strings/chromeos_strings_sq.xtb
+++ b/chromeos/strings/chromeos_strings_sq.xtb
@@ -647,6 +647,7 @@
 <translation id="6516990319416533844">Për të testuar shpejtësinë e karikimit të baterisë, lëre baterinë të shkarkohet për një periudhë të shkurtër</translation>
 <translation id="6517239166834772319">Eksploro</translation>
 <translation id="6527081081771465939">Protokoll i panjohur sigurie i Wi-Fi</translation>
+<translation id="6535178685492749208">Je jashtë linje. Komentet do të dërgohen më vonë.</translation>
 <translation id="65587193855025101">Shtrat i sheshtë</translation>
 <translation id="6564646048574748301">Dështoi - Printeri është i paarritshëm</translation>
 <translation id="6566314079205407217">Skanimi me shumë faqe</translation>
diff --git a/chromeos/strings/chromeos_strings_sv.xtb b/chromeos/strings/chromeos_strings_sv.xtb
index b062ac4..ffba610 100644
--- a/chromeos/strings/chromeos_strings_sv.xtb
+++ b/chromeos/strings/chromeos_strings_sv.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Om du vill testa batteriets laddningshastighet låter du det laddas ur under en kortare period</translation>
 <translation id="6517239166834772319">Utforska</translation>
 <translation id="6527081081771465939">Okänt säkerhetsprotokoll för wifi</translation>
+<translation id="6535178685492749208">Du är offline. Din feedback skickas senare.</translation>
 <translation id="65587193855025101">Flatbädd</translation>
 <translation id="6564646048574748301">Misslyckades – skrivaren kan inte nås</translation>
 <translation id="6566314079205407217">Skanning av flera sidor</translation>
diff --git a/chromeos/strings/chromeos_strings_sw.xtb b/chromeos/strings/chromeos_strings_sw.xtb
index c4a070c..aa0278e 100644
--- a/chromeos/strings/chromeos_strings_sw.xtb
+++ b/chromeos/strings/chromeos_strings_sw.xtb
@@ -647,6 +647,7 @@
 <translation id="6516990319416533844">Ili uweze kupima kasi ya kuchaji ya betri, ruhusu betri yako itumike kwa muda mfupi</translation>
 <translation id="6517239166834772319">Gundua</translation>
 <translation id="6527081081771465939">Itifaki isiyojulikana ya ulinzi wa WiFi</translation>
+<translation id="6535178685492749208">Haupo mtandaoni. Maoni yatatumwa baadaye.</translation>
 <translation id="65587193855025101">Kichanganuzi bapa</translation>
 <translation id="6564646048574748301">Haijakamilika - Printa haiwezi kufikiwa</translation>
 <translation id="6566314079205407217">Uchanganuzi wa kurasa nyingi</translation>
diff --git a/chromeos/strings/chromeos_strings_ta.xtb b/chromeos/strings/chromeos_strings_ta.xtb
index 9612895..96b478fe 100644
--- a/chromeos/strings/chromeos_strings_ta.xtb
+++ b/chromeos/strings/chromeos_strings_ta.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">பேட்டரியின் சார்ஜிங் விகிதத்தைப் பரிசோதிக்க, சிறிது நேரத்திற்கு அதன் சார்ஜைக் காலி செய்யவும்</translation>
 <translation id="6517239166834772319">Explore</translation>
 <translation id="6527081081771465939">அறியப்படாத வைஃபை பாதுகாப்பு நெறிமுறை</translation>
+<translation id="6535178685492749208">ஆஃப்லைனில் உள்ளீர்கள். உங்களின் கருத்து பின்னர் அனுப்பப்படும்.</translation>
 <translation id="65587193855025101">ஃபிளாட்பெட்</translation>
 <translation id="6564646048574748301">பிரிண்டரை அணுக முடியாததால் அச்சிட முடியவில்லை</translation>
 <translation id="6566314079205407217">பல பக்கத்தை ஸ்கேன் செய்தல்</translation>
diff --git a/chromeos/strings/chromeos_strings_tr.xtb b/chromeos/strings/chromeos_strings_tr.xtb
index ae58932..7f852f4 100644
--- a/chromeos/strings/chromeos_strings_tr.xtb
+++ b/chromeos/strings/chromeos_strings_tr.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">Pilin şarj olma hızını test etmek için kısa bir süre için şarjınızın azalmasına izin verin</translation>
 <translation id="6517239166834772319">Keşfet</translation>
 <translation id="6527081081771465939">Bilinmeyen kablosuz ağ güvenlik protokolü</translation>
+<translation id="6535178685492749208">Çevrimdışısınız. Geri bildiriminiz daha sonra gönderilecek.</translation>
 <translation id="65587193855025101">Düz Yataklı</translation>
 <translation id="6564646048574748301">İşlem başarısız - Yazıcıya ulaşılamıyor</translation>
 <translation id="6566314079205407217">Çok sayfalı tarama</translation>
diff --git a/chromeos/strings/chromeos_strings_zh-CN.xtb b/chromeos/strings/chromeos_strings_zh-CN.xtb
index 590513d..25bb7a13 100644
--- a/chromeos/strings/chromeos_strings_zh-CN.xtb
+++ b/chromeos/strings/chromeos_strings_zh-CN.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">若要测试电池充电速率,请先耗掉少许电池电量</translation>
 <translation id="6517239166834772319">探索</translation>
 <translation id="6527081081771465939">未知的 Wi-Fi 安全协议</translation>
+<translation id="6535178685492749208">您目前处于离线状态。系统会在晚些时候发送您的反馈。</translation>
 <translation id="65587193855025101">平台式</translation>
 <translation id="6564646048574748301">失败 - 无法连接到打印机</translation>
 <translation id="6566314079205407217">多页面扫描</translation>
diff --git a/chromeos/strings/chromeos_strings_zh-HK.xtb b/chromeos/strings/chromeos_strings_zh-HK.xtb
index 3bb2ce9..a10f8e5 100644
--- a/chromeos/strings/chromeos_strings_zh-HK.xtb
+++ b/chromeos/strings/chromeos_strings_zh-HK.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">如要測試充電速率,請讓電池耗電一小段時間</translation>
 <translation id="6517239166834772319">探索</translation>
 <translation id="6527081081771465939">未知的 Wi-Fi 安全通訊協定</translation>
+<translation id="6535178685492749208">你已經離線,系統稍後才會傳送意見回饋。</translation>
 <translation id="65587193855025101">平台式</translation>
 <translation id="6564646048574748301">失敗 - 無法連接打印機</translation>
 <translation id="6566314079205407217">多頁掃瞄</translation>
diff --git a/chromeos/strings/chromeos_strings_zh-TW.xtb b/chromeos/strings/chromeos_strings_zh-TW.xtb
index f4073d8..9c73c4d 100644
--- a/chromeos/strings/chromeos_strings_zh-TW.xtb
+++ b/chromeos/strings/chromeos_strings_zh-TW.xtb
@@ -648,6 +648,7 @@
 <translation id="6516990319416533844">如要測試充電速率,請讓電池耗電一小段時間</translation>
 <translation id="6517239166834772319">探索</translation>
 <translation id="6527081081771465939">Wi-Fi 安全通訊協定不明</translation>
+<translation id="6535178685492749208">你已經離線,系統稍後才會傳送意見回饋。</translation>
 <translation id="65587193855025101">平台式</translation>
 <translation id="6564646048574748301">失敗 - 無法連上印表機</translation>
 <translation id="6566314079205407217">多頁掃描</translation>
diff --git a/chromeos/tast_control.gni b/chromeos/tast_control.gni
index 9dbeb43..a6d53f9 100644
--- a/chromeos/tast_control.gni
+++ b/chromeos/tast_control.gni
@@ -294,6 +294,10 @@
 
   # https://crbug.com/1340557
   "apps.LaunchSystemWebAppsFromURL",
+
+  # https://crbug.com/1341288
+  "launcher.Smoke",
+  "launcher.BubbleSmoke",
 ]
 
 # To create filters to be used on specific builders add them like this:
diff --git a/components/autofill/core/browser/autofill_external_delegate.cc b/components/autofill/core/browser/autofill_external_delegate.cc
index d9c6873e..345dace 100644
--- a/components/autofill/core/browser/autofill_external_delegate.cc
+++ b/components/autofill/core/browser/autofill_external_delegate.cc
@@ -255,7 +255,10 @@
     // User selected an Autocomplete or Merchant Promo Code field, so we fill
     // directly.
     driver_->RendererShouldFillFieldWithValue(query_field_.global_id(), value);
-    AutofillMetrics::LogAutocompleteSuggestionAcceptedIndex(position);
+
+    if (frontend_id == POPUP_ITEM_ID_AUTOCOMPLETE_ENTRY)
+      AutofillMetrics::LogAutocompleteSuggestionAcceptedIndex(position);
+
     manager_->OnSingleFieldSuggestionSelected(value, frontend_id);
   } else if (frontend_id == POPUP_ITEM_ID_SCAN_CREDIT_CARD) {
     manager_->client()->ScanCreditCard(base::BindOnce(
@@ -279,9 +282,6 @@
     manager_->FillOrPreviewVirtualCardInformation(
         mojom::RendererFormDataAction::kFill, absl::get<std::string>(payload),
         query_id_, query_form_, query_field_);
-  } else if (frontend_id == POPUP_ITEM_ID_MERCHANT_PROMO_CODE_ENTRY) {
-    // User selected a merchant promo code, so we fill directly.
-    driver_->RendererShouldFillFieldWithValue(query_field_.global_id(), value);
   } else if (frontend_id == POPUP_ITEM_ID_SEE_PROMO_CODE_DETAILS) {
     DCHECK(absl::holds_alternative<GURL>(payload));
     manager_->client()->OnPromoCodeSuggestionsFooterSelected(
diff --git a/components/autofill_assistant/browser/protocol_utils.cc b/components/autofill_assistant/browser/protocol_utils.cc
index 58b946b..f98a49fa 100644
--- a/components/autofill_assistant/browser/protocol_utils.cc
+++ b/components/autofill_assistant/browser/protocol_utils.cc
@@ -125,6 +125,9 @@
     non_sensitive_context.mutable_chrome()->set_chrome_version(
         client_context.chrome().chrome_version());
   }
+  if (client_context.has_platform_type()) {
+    non_sensitive_context.set_platform_type(client_context.platform_type());
+  }
   *request.mutable_client_context() = non_sensitive_context;
 
   std::string serialized_request;
diff --git a/components/autofill_assistant/browser/protocol_utils_unittest.cc b/components/autofill_assistant/browser/protocol_utils_unittest.cc
index a4a30ff6..97e171f 100644
--- a/components/autofill_assistant/browser/protocol_utils_unittest.cc
+++ b/components/autofill_assistant/browser/protocol_utils_unittest.cc
@@ -42,6 +42,8 @@
         ClientContextProto::UNKNOWN);
     client_context_proto_.set_country("US");
     client_context_proto_.set_locale("en-US");
+    client_context_proto_.set_platform_type(
+        ClientContextProto::PLATFORM_TYPE_ANDROID);
   }
   ~ProtocolUtilsTest() override {}
 
@@ -174,6 +176,7 @@
   client_context.set_country(client_context_proto_.country());
   client_context.mutable_chrome()->set_chrome_version(
       client_context_proto_.chrome().chrome_version());
+  client_context.set_platform_type(ClientContextProto::PLATFORM_TYPE_ANDROID);
   EXPECT_EQ(client_context, request.client_context());
 
   EXPECT_EQ(request.hash_prefix_length(), 16U);
diff --git a/components/autofill_assistant/browser/service/cup_impl.cc b/components/autofill_assistant/browser/service/cup_impl.cc
index 5dd06ff..11c517c 100644
--- a/components/autofill_assistant/browser/service/cup_impl.cc
+++ b/components/autofill_assistant/browser/service/cup_impl.cc
@@ -18,7 +18,7 @@
 namespace {
 
 // This is an ECDSA prime256v1 named-curve key.
-constexpr int kKeyVersion = 11;
+constexpr int kKeyVersion = 1;
 constexpr char kKeyPubBytesBase64[] =
     "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEK2TXDqsaUceOfIJldE1T+RENfPZk848Se+"
     "8ODrfNFfIW4CK5qwgoCdE2xbJPkgivLHNnm1nk6LQM7mP6FgsOGg==";
diff --git a/components/commerce/core/BUILD.gn b/components/commerce/core/BUILD.gn
index 182fc9a..dc84038d 100644
--- a/components/commerce/core/BUILD.gn
+++ b/components/commerce/core/BUILD.gn
@@ -89,6 +89,11 @@
     proto_in_dir = "//"
     sources = [ "proto/cart_db_content.proto" ]
   }
+
+  proto_library("coupon_db_content_proto") {
+    proto_in_dir = "//"
+    sources = [ "proto/coupon_db_content.proto" ]
+  }
 }
 
 source_set("commerce_heuristics_data") {
diff --git a/chrome/browser/commerce/coupons/coupon_db_content.proto b/components/commerce/core/proto/coupon_db_content.proto
similarity index 100%
rename from chrome/browser/commerce/coupons/coupon_db_content.proto
rename to components/commerce/core/proto/coupon_db_content.proto
diff --git a/components/history/core/browser/visit_annotations_database.cc b/components/history/core/browser/visit_annotations_database.cc
index d552c397..34e7a2d8 100644
--- a/components/history/core/browser/visit_annotations_database.cc
+++ b/components/history/core/browser/visit_annotations_database.cc
@@ -507,6 +507,18 @@
   return visit_ids;
 }
 
+bool VisitAnnotationsDatabase::IsVisitClustered(VisitID visit_id) {
+  DCHECK_GT(visit_id, 0);
+  sql::Statement statement(
+      GetDB().GetCachedStatement(SQL_FROM_HERE,
+                                 "SELECT 1 "
+                                 "FROM clusters_and_visits "
+                                 "WHERE visit_id=? "
+                                 "LIMIT 1"));
+  statement.BindInt64(0, visit_id);
+  return statement.Step();
+}
+
 void VisitAnnotationsDatabase::DeleteClusters(
     const std::vector<int64_t>& cluster_ids) {
   if (cluster_ids.empty())
diff --git a/components/history/core/browser/visit_annotations_database.h b/components/history/core/browser/visit_annotations_database.h
index 40d79ed..cf8b305 100644
--- a/components/history/core/browser/visit_annotations_database.h
+++ b/components/history/core/browser/visit_annotations_database.h
@@ -88,6 +88,9 @@
   // Get `VisitID`s in a cluster.
   std::vector<VisitID> GetVisitIdsInCluster(int64_t cluster_id);
 
+  // Return whether `visit_id` belongs to any cluster.
+  bool IsVisitClustered(VisitID visit_id);
+
   // Delete `Cluster`s from the table.
   void DeleteClusters(const std::vector<int64_t>& cluster_ids);
 
diff --git a/components/history/core/browser/visit_annotations_database_unittest.cc b/components/history/core/browser/visit_annotations_database_unittest.cc
index 0b64e371..7645c41 100644
--- a/components/history/core/browser/visit_annotations_database_unittest.cc
+++ b/components/history/core/browser/visit_annotations_database_unittest.cc
@@ -246,7 +246,7 @@
             std::vector<int64_t>({3}));
 }
 
-TEST_F(VisitAnnotationsDatabaseTest, GetVisitsInCluster) {
+TEST_F(VisitAnnotationsDatabaseTest, GetVisitsInCluster_IsVisitClustered) {
   // Add unclustered visits.
   AddVisitWithTime(IntToTime(0));
   AddVisitWithTime(IntToTime(2));
@@ -256,8 +256,18 @@
   AddCluster({AddVisitWithTime(IntToTime(3))});
   AddCluster({AddVisitWithTime(IntToTime(5)), AddVisitWithTime(IntToTime(7))});
 
+  // GetVisitIdsInCluster
   EXPECT_THAT(GetVisitIdsInCluster(1), ElementsAre(4));
   EXPECT_THAT(GetVisitIdsInCluster(3), ElementsAre(7, 6));
+
+  // IsVisitClustered
+  EXPECT_FALSE(IsVisitClustered(1));
+  EXPECT_FALSE(IsVisitClustered(2));
+  EXPECT_FALSE(IsVisitClustered(3));
+  EXPECT_TRUE(IsVisitClustered(4));
+  EXPECT_TRUE(IsVisitClustered(5));
+  EXPECT_TRUE(IsVisitClustered(6));
+  EXPECT_TRUE(IsVisitClustered(7));
 }
 
 TEST_F(VisitAnnotationsDatabaseTest, DeleteAnnotationsForVisit) {
diff --git a/components/omnibox/browser/zero_suggest_provider.cc b/components/omnibox/browser/zero_suggest_provider.cc
index 16a7f815..893702c 100644
--- a/components/omnibox/browser/zero_suggest_provider.cc
+++ b/components/omnibox/browser/zero_suggest_provider.cc
@@ -181,16 +181,12 @@
   }
 
   result_type_running_ = NONE;
+  input_ = input;
   set_field_trial_triggered(false);
   set_field_trial_triggered_in_session(false);
-  permanent_text_ = input.text();
-  current_query_ = input.current_url().spec();
-  current_title_ = input.current_title();
-  current_page_classification_ = input.current_page_classification();
-  current_text_match_ = MatchForCurrentText();
 
   TemplateURLRef::SearchTermsArgs search_terms_args;
-  search_terms_args.page_classification = current_page_classification_;
+  search_terms_args.page_classification = input.current_page_classification();
   search_terms_args.focus_type = input.focus_type();
   const int cache_duration_sec =
       OmniboxFieldTrial::kZeroSuggestCacheDurationSec.Get();
@@ -212,10 +208,11 @@
   else
     done_ = false;
 
-  const std::string original_response = MaybeUseStoredResponse();
+  const std::string original_response = MaybeUpdateResultsWithStoredResponse();
 
-  search_terms_args.current_page_url =
-      result_type_running_ == REMOTE_SEND_URL ? current_query_ : std::string();
+  search_terms_args.current_page_url = result_type_running_ == REMOTE_SEND_URL
+                                           ? input.current_url().spec()
+                                           : std::string();
   // Grab ownership of the loader until results come in to
   // `OnURLLoadComplete()`.
   loader_ = client()
@@ -245,16 +242,7 @@
   result_type_running_ = NONE;
 
   if (clear_cached_results) {
-    // We do not call Clear() on |results_| to retain |verbatim_relevance|
-    // value in the |results_| object. |verbatim_relevance| is used at the
-    // beginning of the next call to Start() to determine the current url
-    // match relevance.
-    results_.suggest_results.clear();
-    results_.navigation_results.clear();
-    results_.experiment_stats.clear();
-    results_.headers_map.clear();
-    current_query_.clear();
-    current_title_.clear();
+    results_.Clear();
   }
 }
 
@@ -303,15 +291,7 @@
 }
 
 const AutocompleteInput ZeroSuggestProvider::GetInput(bool is_keyword) const {
-  // The callers of this method won't look at the AutocompleteInput's
-  // |from_omnibox_focus| member, so we can set its value to false.
-  AutocompleteInput input(std::u16string(), current_page_classification_,
-                          client()->GetSchemeClassifier());
-  input.set_current_url(GURL(current_query_));
-  input.set_current_title(current_title_);
-  input.set_prevent_inline_autocomplete(true);
-  input.set_allow_exact_keyword_match(false);
-  return input;
+  return input_;
 }
 
 bool ZeroSuggestProvider::ShouldAppendExtraParams(
@@ -372,7 +352,7 @@
        source->ResponseInfo()->headers->response_code() == 200);
   const bool results_updated =
       response_received &&
-      UpdateResults(SearchSuggestionParser::ExtractJsonData(
+      UpdateResultsWithResponse(SearchSuggestionParser::ExtractJsonData(
           source, std::move(response_body)));
   loader_.reset();
   prefetch_done_ = true;
@@ -399,14 +379,18 @@
   counterfactual_loader_.reset();
 }
 
-bool ZeroSuggestProvider::UpdateResults(const std::string& json_data) {
+bool ZeroSuggestProvider::UpdateResultsWithResponse(
+    const std::string& json_data) {
+  if (json_data.empty())
+    return false;
+
   std::unique_ptr<base::Value> data(
       SearchSuggestionParser::DeserializeJsonData(json_data));
   if (!data)
     return false;
 
   // Store non-empty response if running the REMOTE_NO_URL variant.
-  if (result_type_running_ == REMOTE_NO_URL && !json_data.empty()) {
+  if (result_type_running_ == REMOTE_NO_URL) {
     client()->GetPrefs()->SetString(omnibox::kZeroSuggestCachedResults,
                                     json_data);
 
@@ -423,12 +407,39 @@
     if (non_empty_parsed_list && non_empty_cache)
       return false;
   }
+
   const bool results_updated = ParseSuggestResults(
       *data, kDefaultZeroSuggestRelevance, false, &results_);
-  ConvertResultsToAutocompleteMatches();
+  if (results_updated) {
+    ConvertResultsToAutocompleteMatches();
+  }
   return results_updated;
 }
 
+std::string ZeroSuggestProvider::MaybeUpdateResultsWithStoredResponse() {
+  // Use the stored response only if running the REMOTE_NO_URL variant.
+  if (result_type_running_ != REMOTE_NO_URL) {
+    return "";
+  }
+
+  std::string json_data =
+      client()->GetPrefs()->GetString(omnibox::kZeroSuggestCachedResults);
+  if (json_data.empty())
+    return "";
+
+  std::unique_ptr<base::Value> data(
+      SearchSuggestionParser::DeserializeJsonData(json_data));
+  if (!data)
+    return "";
+
+  if (ParseSuggestResults(*data, kDefaultZeroSuggestRelevance, false,
+                          &results_)) {
+    ConvertResultsToAutocompleteMatches();
+  }
+
+  return json_data;
+}
+
 AutocompleteMatch ZeroSuggestProvider::NavigationToMatch(
     const SearchSuggestionParser::NavigationResult& navigation) {
   AutocompleteMatch match(this, navigation.relevance(), false,
@@ -499,23 +510,6 @@
   }
 }
 
-AutocompleteMatch ZeroSuggestProvider::MatchForCurrentText() {
-  // The placeholder suggestion for the current URL has high relevance so
-  // that it is in the first suggestion slot and inline autocompleted. It
-  // gets dropped as soon as the user types something.
-  AutocompleteInput tmp(GetInput(false));
-  tmp.UpdateText(permanent_text_, std::u16string::npos, tmp.parts());
-
-  // We pass a nullptr as the |history_url_provider| parameter now to force
-  // VerbatimMatch to do a classification, since the text can be a search query.
-  // TODO(tommycli): Simplify this - probably just bypass VerbatimMatchForURL.
-  AutocompleteMatch match =
-      VerbatimMatchForURL(this, client(), tmp, GURL(current_query_),
-                          current_title_, results_.verbatim_relevance);
-  match.provider = this;
-  return match;
-}
-
 bool ZeroSuggestProvider::AllowZeroSuggestSuggestions(
     const AutocompleteInput& input) const {
   const auto& page_url = input.current_url();
@@ -578,24 +572,6 @@
   return true;
 }
 
-std::string ZeroSuggestProvider::MaybeUseStoredResponse() {
-  // Use the stored response only if running the REMOTE_NO_URL variant.
-  if (result_type_running_ != REMOTE_NO_URL) {
-    return "";
-  }
-
-  std::string json_data =
-      client()->GetPrefs()->GetString(omnibox::kZeroSuggestCachedResults);
-  if (!json_data.empty()) {
-    std::unique_ptr<base::Value> data(
-        SearchSuggestionParser::DeserializeJsonData(json_data));
-    if (data && ParseSuggestResults(*data, kDefaultZeroSuggestRelevance, false,
-                                    &results_))
-      ConvertResultsToAutocompleteMatches();
-  }
-  return json_data;
-}
-
 // static
 ZeroSuggestProvider::ResultType ZeroSuggestProvider::TypeOfResultToRun(
     AutocompleteProviderClient* client,
diff --git a/components/omnibox/browser/zero_suggest_provider.h b/components/omnibox/browser/zero_suggest_provider.h
index e43d0bc..12f4c4f 100644
--- a/components/omnibox/browser/zero_suggest_provider.h
+++ b/components/omnibox/browser/zero_suggest_provider.h
@@ -149,18 +149,25 @@
       const network::SimpleURLLoader* source,
       std::unique_ptr<std::string> response_body);
 
-  // The function updates |results_| with data parsed from |json_data|.
+  // Called when the remote response is received, populates |results_| with
+  // |json_data|; and converts them to |matches_|.
   //
   // * The update is not performed if |json_data| is invalid.
-  // * When the provider is using cached results and |json_data| is non-empty,
-  //   this function updates the cached results.
-  // * When |results_| contains cached results, these are updated only if
-  //   |json_cata| corresponds to an empty list. This is done to ensure that
+  // * Updates the zero suggest response stored in user prefs, if applicable.
+  //   In those cases, when |results_| is non-empty, it is updated only if
+  //   |json_data| corresponds to an empty list. This is done to ensure that
   //   the display is cleared, as it may be showing cached results that should
   //   not be shown.
+  // * Otherwise, the update is performed.
   //
-  // The return value is true only when |results_| changed.
-  bool UpdateResults(const std::string& json_data);
+  // Returns whether |results_| changed.
+  bool UpdateResultsWithResponse(const std::string& json_data);
+
+  // Called in Start(), populates |results_| with the zero suggest response
+  // stored in user prefs, if applicable; and converts them to |matches_|.
+  //
+  // Returns the stored response whether |results_| changed or not.
+  std::string MaybeUpdateResultsWithStoredResponse();
 
   // Returns an AutocompleteMatch for a navigational suggestion |navigation|.
   AutocompleteMatch NavigationToMatch(
@@ -171,11 +178,6 @@
   // received.
   void ConvertResultsToAutocompleteMatches();
 
-  // Returns an AutocompleteMatch for the current text. The match should be in
-  // the top position so that pressing enter has the effect of reloading the
-  // page.
-  AutocompleteMatch MatchForCurrentText();
-
   // Whether zero suggest suggestions are allowed in the given context.
   // Invoked early, confirms all the external conditions for ZeroSuggest are
   // met.
@@ -185,10 +187,6 @@
   // functions, so the reader has to look in two places.
   bool AllowZeroSuggestSuggestions(const AutocompleteInput& input) const;
 
-  // Populates |matches_| using the stored zero suggest response, if applicable.
-  // Returns the stored zero suggest response, whether or not it was used.
-  std::string MaybeUseStoredResponse();
-
   // Returns the type of results that should be generated for the current
   // context.
   // Logs UMA metrics. Should be called exactly once, on Start(), otherwise the
@@ -204,19 +202,8 @@
   // When the provider is not running, the result type is set to NONE.
   ResultType result_type_running_;
 
-  // The URL for which a suggestion fetch is pending.
-  std::string current_query_;
-
-  // The title of the page for which a suggestion fetch is pending.
-  std::u16string current_title_;
-
-  // The type of page the user is viewing (a search results page doing search
-  // term replacement, an arbitrary URL, etc.).
-  metrics::OmniboxEventProto::PageClassification current_page_classification_ =
-      metrics::OmniboxEventProto::INVALID_SPEC;
-
-  // Copy of OmniboxEditModel::permanent_text_.
-  std::u16string permanent_text_;
+  // The user's input for which a suggestion fetch is pending.
+  AutocompleteInput input_;
 
   // Loader used to retrieve results.
   std::unique_ptr<network::SimpleURLLoader> loader_;
@@ -229,9 +216,6 @@
   // Loader used to retrieve counterfactual results.
   std::unique_ptr<network::SimpleURLLoader> counterfactual_loader_;
 
-  // The verbatim match for the current text, which is always a URL.
-  AutocompleteMatch current_text_match_;
-
   // Contains suggest and navigation results as well as relevance parsed from
   // the response for the most recent zero suggest input URL.
   SearchSuggestionParser::Results results_;
diff --git a/components/omnibox/common/omnibox_features.cc b/components/omnibox/common/omnibox_features.cc
index d9f555f..45bc1ab 100644
--- a/components/omnibox/common/omnibox_features.cc
+++ b/components/omnibox/common/omnibox_features.cc
@@ -234,8 +234,8 @@
 // stock ticker. only colors being swapped are those that represent "growth" and
 // "loss" to represent colors red and green in a way that is appropriate for a
 // given country/culture
-const base::Feature kFinanceTickerColorReverse = {
-    "FinanceTickerColorReverse", base::FEATURE_DISABLED_BY_DEFAULT};
+const base::Feature kSuggestionAnswersColorReverse = {
+    "SuggestionAnswersColorReverse", base::FEATURE_DISABLED_BY_DEFAULT};
 
 // If enabled, frequently visited sites are presented in form of a single row
 // with a carousel of tiles, instead of one URL per row.
diff --git a/components/omnibox/common/omnibox_features.h b/components/omnibox/common/omnibox_features.h
index c23909b..8538c01 100644
--- a/components/omnibox/common/omnibox_features.h
+++ b/components/omnibox/common/omnibox_features.h
@@ -71,7 +71,7 @@
 // Suggestions UI - these affect the UI or function of the suggestions popup.
 extern const base::Feature kAdaptiveSuggestionsCount;
 extern const base::Feature kClipboardSuggestionContentHidden;
-extern const base::Feature kFinanceTickerColorReverse;
+extern const base::Feature kSuggestionAnswersColorReverse;
 extern const base::Feature kMostVisitedTiles;
 extern const base::Feature kRichAutocompletion;
 extern const base::Feature kNtpRealboxPedals;
diff --git a/components/optimization_guide/core/page_entities_model_executor_impl_unittest.cc b/components/optimization_guide/core/page_entities_model_executor_impl_unittest.cc
index 1857521..d989342 100644
--- a/components/optimization_guide/core/page_entities_model_executor_impl_unittest.cc
+++ b/components/optimization_guide/core/page_entities_model_executor_impl_unittest.cc
@@ -259,7 +259,14 @@
   EXPECT_TRUE(immediate_callback_run);
 }
 
-TEST_F(PageEntitiesModelExecutorImplTest, CreateMissingFiles) {
+// TODO(https://crbug.com/1341224): Fix flakes on linux-chromeos-chrome and
+// re-enable this test.
+#if BUILDFLAG(IS_CHROMEOS)
+#define MAYBE_CreateMissingFiles DISABLED_CreateMissingFiles
+#else
+#define MAYBE_CreateMissingFiles CreateMissingFiles
+#endif
+TEST_F(PageEntitiesModelExecutorImplTest, MAYBE_CreateMissingFiles) {
   proto::Any any;
   proto::PageEntitiesModelMetadata metadata;
   metadata.add_slice("global");
diff --git a/components/os_crypt/key_storage_keyring_unittest.cc b/components/os_crypt/key_storage_keyring_unittest.cc
index cbd4c72..18b0763 100644
--- a/components/os_crypt/key_storage_keyring_unittest.cc
+++ b/components/os_crypt/key_storage_keyring_unittest.cc
@@ -131,7 +131,8 @@
 };
 
 GnomeKeyringTest::GnomeKeyringTest()
-    : task_runner_(new base::TestSimpleTaskRunner()), keyring_(task_runner_, "chromium") {
+    : task_runner_(new base::TestSimpleTaskRunner()),
+      keyring_(task_runner_, kApplicationName) {
   MockGnomeKeyringLoader::ResetForOSCrypt();
 }
 
@@ -139,13 +140,7 @@
   MockGnomeKeyringLoader::TearDown();
 }
 
-// crbug.com/1211311 Disable due to persistently failing.
-#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && BUILDFLAG(IS_LINUX)
-#define MAYBE_KeyringRepeats DISABLED_KeyringRepeats
-#else
-#define MAYBE_KeyringRepeats KeyringRepeats
-#endif
-TEST_F(GnomeKeyringTest, MAYBE_KeyringRepeats) {
+TEST_F(GnomeKeyringTest, KeyringRepeats) {
   absl::optional<std::string> password = keyring_.GetKey();
   EXPECT_TRUE(password.has_value());
   EXPECT_FALSE(password.value().empty());
@@ -154,13 +149,7 @@
   EXPECT_EQ(password.value(), password_repeat.value());
 }
 
-// crbug.com/1211311 Disable due to persistently failing.
-#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && BUILDFLAG(IS_LINUX)
-#define MAYBE_KeyringCreatesRandomised DISABLED_KeyringCreatesRandomised
-#else
-#define MAYBE_KeyringCreatesRandomised KeyringCreatesRandomised
-#endif
-TEST_F(GnomeKeyringTest, MAYBE_KeyringCreatesRandomised) {
+TEST_F(GnomeKeyringTest, KeyringCreatesRandomised) {
   absl::optional<std::string> password = keyring_.GetKey();
   MockGnomeKeyringLoader::ResetForOSCrypt();
   absl::optional<std::string> password_new = keyring_.GetKey();
diff --git a/components/password_manager/core/browser/BUILD.gn b/components/password_manager/core/browser/BUILD.gn
index 31136bb6..e199495 100644
--- a/components/password_manager/core/browser/BUILD.gn
+++ b/components/password_manager/core/browser/BUILD.gn
@@ -548,6 +548,8 @@
     "mock_password_manager_settings_service.h",
     "mock_password_reuse_manager.cc",
     "mock_password_reuse_manager.h",
+    "mock_password_scripts_fetcher.cc",
+    "mock_password_scripts_fetcher.h",
     "mock_password_store_backend.cc",
     "mock_password_store_backend.h",
     "mock_password_store_interface.cc",
diff --git a/components/password_manager/core/browser/mock_password_scripts_fetcher.cc b/components/password_manager/core/browser/mock_password_scripts_fetcher.cc
new file mode 100644
index 0000000..9b104dc
--- /dev/null
+++ b/components/password_manager/core/browser/mock_password_scripts_fetcher.cc
@@ -0,0 +1,13 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "components/password_manager/core/browser/mock_password_scripts_fetcher.h"
+
+namespace password_manager {
+
+MockPasswordScriptsFetcher::MockPasswordScriptsFetcher() = default;
+
+MockPasswordScriptsFetcher::~MockPasswordScriptsFetcher() = default;
+
+}  // namespace password_manager
diff --git a/components/password_manager/core/browser/mock_password_scripts_fetcher.h b/components/password_manager/core/browser/mock_password_scripts_fetcher.h
new file mode 100644
index 0000000..676851d9
--- /dev/null
+++ b/components/password_manager/core/browser/mock_password_scripts_fetcher.h
@@ -0,0 +1,43 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_MOCK_PASSWORD_SCRIPTS_FETCHER_H_
+#define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_MOCK_PASSWORD_SCRIPTS_FETCHER_H_
+
+#include "components/password_manager/core/browser/password_scripts_fetcher.h"
+
+#include "base/callback.h"
+#include "base/values.h"
+#include "testing/gmock/include/gmock/gmock.h"
+#include "url/origin.h"
+
+namespace password_manager {
+
+class MockPasswordScriptsFetcher : public PasswordScriptsFetcher {
+ public:
+  explicit MockPasswordScriptsFetcher();
+  ~MockPasswordScriptsFetcher() override;
+
+  MOCK_METHOD(void, PrewarmCache, (), (override));
+
+  MOCK_METHOD(void, RefreshScriptsIfNecessary, (base::OnceClosure), (override));
+
+  MOCK_METHOD(void,
+              FetchScriptAvailability,
+              (const url::Origin&, base::OnceCallback<void(bool)>),
+              (override));
+
+  MOCK_METHOD(bool, IsScriptAvailable, (const url::Origin&), (const override));
+
+  MOCK_METHOD(base::Value::Dict,
+              GetDebugInformationForInternals,
+              (),
+              (const override));
+
+  MOCK_METHOD(base::Value::List, GetCacheEntries, (), (const override));
+};
+
+}  // namespace password_manager
+
+#endif  // COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_MOCK_PASSWORD_SCRIPTS_FETCHER_H_
diff --git a/components/password_manager/core/browser/mock_password_store_backend.h b/components/password_manager/core/browser/mock_password_store_backend.h
index b4c05263..4707ff3 100644
--- a/components/password_manager/core/browser/mock_password_store_backend.h
+++ b/components/password_manager/core/browser/mock_password_store_backend.h
@@ -26,8 +26,6 @@
   ~MockPasswordBackendSyncDelegate() override;
 
   MOCK_METHOD(bool, IsSyncingPasswordsEnabled, (), (override));
-
-  MOCK_METHOD(absl::optional<std::string>, GetSyncingAccount, (), (override));
 };
 
 class MockPasswordStoreBackend : public PasswordStoreBackend {
diff --git a/components/password_manager/core/browser/password_manager_metrics_util.h b/components/password_manager/core/browser/password_manager_metrics_util.h
index 6e600c0..3e1ecba 100644
--- a/components/password_manager/core/browser/password_manager_metrics_util.h
+++ b/components/password_manager/core/browser/password_manager_metrics_util.h
@@ -458,8 +458,9 @@
   kShowPassword = 6,
   kMutePassword = 7,
   kUnmutePassword = 8,
+  kChangePasswordAutomatically = 9,
   // Must be last.
-  kMaxValue = kUnmutePassword,
+  kMaxValue = kChangePasswordAutomatically,
 };
 
 // Represents different user interactions related to adding credential from the
diff --git a/components/password_manager/core/browser/password_store_backend.h b/components/password_manager/core/browser/password_store_backend.h
index a245f79..727cce924 100644
--- a/components/password_manager/core/browser/password_store_backend.h
+++ b/components/password_manager/core/browser/password_store_backend.h
@@ -70,10 +70,6 @@
 
     // Tells whether sync enabled or not.
     virtual bool IsSyncingPasswordsEnabled() = 0;
-
-    // Active syncing account if one exist. If sync disabled absl::nullopt will
-    // be returned.
-    virtual absl::optional<std::string> GetSyncingAccount() = 0;
   };
 
   using RemoteChangesReceived =
diff --git a/components/password_manager/core/browser/password_store_backend_migration_decorator.cc b/components/password_manager/core/browser/password_store_backend_migration_decorator.cc
index 6387765f..7def0d87 100644
--- a/components/password_manager/core/browser/password_store_backend_migration_decorator.cc
+++ b/components/password_manager/core/browser/password_store_backend_migration_decorator.cc
@@ -38,11 +38,11 @@
     std::unique_ptr<PasswordStoreBackend> built_in_backend,
     std::unique_ptr<PasswordStoreBackend> android_backend,
     PrefService* prefs,
-    SyncDelegate* sync_delegate)
+    std::unique_ptr<SyncDelegate> sync_delegate)
     : built_in_backend_(std::move(built_in_backend)),
       android_backend_(std::move(android_backend)),
       prefs_(prefs),
-      sync_delegate_(sync_delegate),
+      sync_delegate_(std::move(sync_delegate)),
       sync_settings_helper_(prefs) {
   DCHECK(built_in_backend_);
   DCHECK(android_backend_);
diff --git a/components/password_manager/core/browser/password_store_backend_migration_decorator.h b/components/password_manager/core/browser/password_store_backend_migration_decorator.h
index 8b8b73dd..2dcab70 100644
--- a/components/password_manager/core/browser/password_store_backend_migration_decorator.h
+++ b/components/password_manager/core/browser/password_store_backend_migration_decorator.h
@@ -31,7 +31,7 @@
       std::unique_ptr<PasswordStoreBackend> built_in_backend,
       std::unique_ptr<PasswordStoreBackend> android_backend,
       PrefService* prefs,
-      SyncDelegate* sync_delegate);
+      std::unique_ptr<SyncDelegate> sync_delegate);
   PasswordStoreBackendMigrationDecorator(
       const PasswordStoreBackendMigrationDecorator&) = delete;
   PasswordStoreBackendMigrationDecorator(
@@ -151,9 +151,8 @@
 
   const raw_ptr<PrefService> prefs_ = nullptr;
 
-  // |sync_delegate| lives inside |android_backend|. So it should always be
-  // destroyed before |android_backend_|.
-  const raw_ptr<SyncDelegate> sync_delegate_;
+  // A delegate used to retrieve sync status.
+  std::unique_ptr<SyncDelegate> sync_delegate_;
 
   std::unique_ptr<BuiltInBackendToAndroidBackendMigrator> migrator_;
 
diff --git a/components/password_manager/core/browser/password_store_backend_migration_decorator_unittest.cc b/components/password_manager/core/browser/password_store_backend_migration_decorator_unittest.cc
index 202f97e5..03a7d30 100644
--- a/components/password_manager/core/browser/password_store_backend_migration_decorator_unittest.cc
+++ b/components/password_manager/core/browser/password_store_backend_migration_decorator_unittest.cc
@@ -51,10 +51,13 @@
         /*enabled_feature=*/features::kUnifiedPasswordManagerAndroid,
         {{"migration_version", "1"}, {"stage", "0"}});
 
+    std::unique_ptr<MockPasswordBackendSyncDelegate> sync_delegate =
+        std::make_unique<MockPasswordBackendSyncDelegate>();
+    sync_delegate_ = sync_delegate.get();
     backend_migration_decorator_ =
         std::make_unique<PasswordStoreBackendMigrationDecorator>(
             CreateBuiltInBackend(), CreateAndroidBackend(), &prefs_,
-            &sync_delegate_);
+            std::move(sync_delegate));
   }
 
   ~PasswordStoreBackendMigrationDecoratorTest() override {
@@ -86,7 +89,7 @@
     RunUntilIdle();
   }
 
-  MockPasswordBackendSyncDelegate& sync_delegate() { return sync_delegate_; }
+  MockPasswordBackendSyncDelegate& sync_delegate() { return *sync_delegate_; }
   PasswordStoreBackend* backend_migration_decorator() {
     return backend_migration_decorator_.get();
   }
@@ -120,7 +123,7 @@
       base::test::TaskEnvironment::TimeSource::MOCK_TIME};
   base::test::ScopedFeatureList feature_list_;
   TestingPrefServiceSimple prefs_;
-  MockPasswordBackendSyncDelegate sync_delegate_;
+  raw_ptr<MockPasswordBackendSyncDelegate> sync_delegate_;
   raw_ptr<MockPasswordStoreBackend> built_in_backend_;
   raw_ptr<MockPasswordStoreBackend> android_backend_;
   syncer::TestSyncService sync_service_;
diff --git a/components/password_manager/core/browser/password_sync_util.cc b/components/password_manager/core/browser/password_sync_util.cc
index 27efcc3..ed452f3 100644
--- a/components/password_manager/core/browser/password_sync_util.cc
+++ b/components/password_manager/core/browser/password_sync_util.cc
@@ -106,5 +106,12 @@
              syncer::UserSelectableType::kPasswords);
 }
 
+absl::optional<std::string> GetSyncingAccount(
+    const syncer::SyncService* sync_service) {
+  if (!sync_service || !IsPasswordSyncEnabled(sync_service))
+    return absl::nullopt;
+  return sync_service->GetAccountInfo().email;
+}
+
 }  // namespace sync_util
 }  // namespace password_manager
diff --git a/components/password_manager/core/browser/password_sync_util.h b/components/password_manager/core/browser/password_sync_util.h
index 267c1e98..88b13c99 100644
--- a/components/password_manager/core/browser/password_sync_util.h
+++ b/components/password_manager/core/browser/password_sync_util.h
@@ -52,6 +52,11 @@
 // If syncing passwords is enabled in settings.
 bool IsPasswordSyncEnabled(const syncer::SyncService* sync_service);
 
+// Active syncing account if one exists. If password sync is disabled
+// absl::nullopt will be returned.
+absl::optional<std::string> GetSyncingAccount(
+    const syncer::SyncService* sync_service);
+
 }  // namespace sync_util
 
 }  // namespace password_manager
diff --git a/components/password_manager/core/browser/password_sync_util_unittest.cc b/components/password_manager/core/browser/password_sync_util_unittest.cc
index 4356ed99..81a02d8 100644
--- a/components/password_manager/core/browser/password_sync_util_unittest.cc
+++ b/components/password_manager/core/browser/password_sync_util_unittest.cc
@@ -13,6 +13,7 @@
 #include "components/password_manager/core/browser/sync_username_test_base.h"
 #include "components/prefs/pref_registry_simple.h"
 #include "components/prefs/testing_pref_service.h"
+#include "components/sync/driver/test_sync_service.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 using base::ASCIIToUTF16;
@@ -133,5 +134,36 @@
   }
 }
 
+TEST_F(PasswordSyncUtilTest, SyncDisabled) {
+  syncer::TestSyncService sync_service;
+  sync_service.SetTransportState(syncer::SyncService::TransportState::DISABLED);
+  sync_service.SetHasSyncConsent(false);
+  EXPECT_FALSE(IsPasswordSyncEnabled(&sync_service));
+  EXPECT_EQ(absl::nullopt, GetSyncingAccount(&sync_service));
+}
+
+TEST_F(PasswordSyncUtilTest, SyncEnabledButNotForPasswords) {
+  syncer::TestSyncService sync_service;
+  sync_service.SetTransportState(syncer::SyncService::TransportState::ACTIVE);
+  sync_service.SetHasSyncConsent(true);
+  static_cast<syncer::TestSyncUserSettings*>(sync_service.GetUserSettings())
+      ->SetSelectedTypes(/*sync_everything=*/false,
+                         {syncer::UserSelectableType::kHistory});
+  EXPECT_FALSE(IsPasswordSyncEnabled(&sync_service));
+  EXPECT_EQ(absl::nullopt, GetSyncingAccount(&sync_service));
+}
+
+TEST_F(PasswordSyncUtilTest, SyncEnabled) {
+  syncer::TestSyncService sync_service;
+  sync_service.SetTransportState(syncer::SyncService::TransportState::ACTIVE);
+  sync_service.SetHasSyncConsent(true);
+  AccountInfo active_info;
+  active_info.email = "test@email.com";
+  sync_service.SetAccountInfo(active_info);
+  EXPECT_TRUE(IsPasswordSyncEnabled(&sync_service));
+  EXPECT_TRUE(GetSyncingAccount(&sync_service).has_value());
+  EXPECT_EQ(active_info.email, GetSyncingAccount(&sync_service).value());
+}
+
 }  // namespace sync_util
 }  // namespace password_manager
diff --git a/components/policy/core/browser/policy_pref_mapping_test.cc b/components/policy/core/browser/policy_pref_mapping_test.cc
index c1cdf67..bfc2b7d 100644
--- a/components/policy/core/browser/policy_pref_mapping_test.cc
+++ b/components/policy/core/browser/policy_pref_mapping_test.cc
@@ -15,6 +15,7 @@
 #include "base/containers/flat_set.h"
 #include "base/files/file_path.h"
 #include "base/files/file_util.h"
+#include "base/hash/hash.h"
 #include "base/json/json_reader.h"
 #include "base/logging.h"
 #include "base/strings/string_split.h"
@@ -571,7 +572,8 @@
                                 PrefService* local_state,
                                 PrefService* user_prefs,
                                 PrefService* signin_profile_prefs,
-                                MockConfigurationPolicyProvider* provider) {
+                                MockConfigurationPolicyProvider* provider,
+                                PrefMappingChunkInfo* chunk_info) {
   Schema chrome_schema = Schema::Wrap(GetChromeSchemaData());
   ASSERT_TRUE(chrome_schema.valid());
 
@@ -583,6 +585,15 @@
   for (const auto& policy : test_cases) {
     SCOPED_TRACE(::testing::Message() << "Policy name: " << policy.first);
     for (const auto& test_case : policy.second) {
+      if (chunk_info != nullptr) {
+        const size_t policy_name_hash = base::FastHash(policy.first);
+        const size_t chunk_index = policy_name_hash % chunk_info->num_chunks;
+        if (chunk_index != chunk_info->current_chunk)
+          // Skip policy if test cases are chunked and the policy is not part of
+          // the current chunk.
+          continue;
+      }
+
       if (test_filter.has_value() &&
           !base::Contains(test_filter.value(), test_case->name())) {
         // Skip policy based on the filter.
diff --git a/components/policy/core/browser/policy_pref_mapping_test.h b/components/policy/core/browser/policy_pref_mapping_test.h
index a1aef8a..753055a 100644
--- a/components/policy/core/browser/policy_pref_mapping_test.h
+++ b/components/policy/core/browser/policy_pref_mapping_test.h
@@ -5,6 +5,8 @@
 #ifndef COMPONENTS_POLICY_CORE_BROWSER_POLICY_PREF_MAPPING_TEST_H_
 #define COMPONENTS_POLICY_CORE_BROWSER_POLICY_PREF_MAPPING_TEST_H_
 
+#include <stddef.h>
+
 namespace base {
 class FilePath;
 }
@@ -17,6 +19,13 @@
 
 namespace policy {
 
+// Allows to split the test cases for VerifyPolicyToPrefMappings into individual
+// chunks since the test might otherwise time out.
+struct PrefMappingChunkInfo {
+  size_t current_chunk;
+  size_t num_chunks;
+};
+
 // Verifies that all of the policies have a test case listed in the JSON file at
 // |test_case_path|.
 void VerifyAllPoliciesHaveATestCase(const base::FilePath& test_case_path);
@@ -33,7 +42,8 @@
                                 PrefService* local_state,
                                 PrefService* user_prefs,
                                 PrefService* signin_profile_prefs,
-                                MockConfigurationPolicyProvider* provider);
+                                MockConfigurationPolicyProvider* provider,
+                                PrefMappingChunkInfo* chunk_info = nullptr);
 
 }  // namespace policy
 
diff --git a/components/policy/resources/policy_templates_de.xtb b/components/policy/resources/policy_templates_de.xtb
index a5bd936..b19cd092 100644
--- a/components/policy/resources/policy_templates_de.xtb
+++ b/components/policy/resources/policy_templates_de.xtb
@@ -4947,12 +4947,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Safe Browsing-Überprüfung für alle Dateidownloads ausführen</translation>
 <translation id="6433697627431665375"><ph name="PRODUCT_NAME" />-Daten nicht in Sicherungen einschließen</translation>
-<translation id="6435570845618943258">Wenn diese Einstellung aktiviert ist, verifiziert <ph name="PRODUCT_NAME" /> Serverzertifikate anhand der integrierten Zertifikatsprüfung.
-      Ist sie deaktiviert, verifiziert <ph name="PRODUCT_NAME" /> Serverzertifikate mit der von der Plattform stammenden Legacy-Zertifikatsprüfung.
-      Wenn diese Einstellung nicht konfiguriert ist, wird die integrierte oder die Legacy-Zertifikatsprüfung verwendet.
-
-      Diese Richtlinie wird voraussichtlich in Version 107 von <ph name="PRODUCT_NAME" /> für <ph name="MAC_OS_NAME" /> entfernt, wenn auch die Legacy-Zertifikatsprüfung in <ph name="MAC_OS_NAME" /> voraussichtlich nicht mehr unterstützt wird.
-      </translation>
 <translation id="6436052172226685535">Standardverhalten für die Unterstützung älterer Browser.</translation>
 <translation id="6438364096042399634">Wenn diese Richtlinie konfiguriert ist, kannst du eine Liste der USB-Geräte definieren, die vom jeweiligen Kerneltreiber getrennt werden können, um über die chrome.usb API direkt in einer Webanwendung eingesetzt zu werden. Die Einträge bestehen aus der ID des USB-Herstellers und der Produkt-ID, über die die Hardware identifiziert werden kann.
 
diff --git a/components/policy/resources/policy_templates_es-419.xtb b/components/policy/resources/policy_templates_es-419.xtb
index 9066d42..a5de3958 100644
--- a/components/policy/resources/policy_templates_es-419.xtb
+++ b/components/policy/resources/policy_templates_es-419.xtb
@@ -5025,12 +5025,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Realiza las verificaciones de la Navegación segura en todos los archivos descargados</translation>
 <translation id="6433697627431665375">Impedir que se incluyan los datos de <ph name="PRODUCT_NAME" /> en las copias de seguridad</translation>
-<translation id="6435570845618943258">Si habilitas esta configuración, <ph name="PRODUCT_NAME" /> verificará los certificados de servidores mediante el verificador de certificados integrado.
-      Si se inhabilita, <ph name="PRODUCT_NAME" /> verificará los certificados de servidores mediante el verificador de certificados heredado que incluye la plataforma.
-      Si no se establece, podrán utilizarse el verificador de certificados integrado o el heredado.
-
-      Se planea quitar esta política en la versión 107 de <ph name="PRODUCT_NAME" /> para <ph name="MAC_OS_NAME" /> cuando se quite la compatibilidad con el verificador de certificados heredado de <ph name="MAC_OS_NAME" />.
-      </translation>
 <translation id="6436052172226685535">Comportamiento predeterminado de LBS</translation>
 <translation id="6438364096042399634">Si estableces la política, se definirá la lista de dispositivos USB que el usuario puede desconectar del controlador de kernel para usarlos a través de la API chrome.usb directamente en una aplicación web. Las entradas son pares formados por el identificador del producto y el identificador del proveedor USB que permiten reconocer hardware específico.
 
@@ -5674,6 +5668,7 @@
 
       Si inhabilitas la política, el sistema podrá considerar que el usuario está inactivo, independientemente de la actividad del video.</translation>
 <translation id="7086720321892395256">Controla las políticas de dispositivo y usuario para la función de la pantalla de privacidad.</translation>
+<translation id="7090500018761495290">Volver a habilitar la API de Event.path hasta M115</translation>
 <translation id="7090668780328470271">Si estableces la política, podrás especificar una lista de patrones de URL que indiquen qué sitios no pueden pedir a los usuarios permiso para acceder a un dispositivo USB.
 
       Si no estableces la política, se aplicará <ph name="DEFAULT_WEB_USB_GUARD_SETTING_POLICY_NAME" /> para todos los sitios, en caso de haberse establecido. De lo contrario se aplicará la configuración personal del usuario.
diff --git a/components/policy/resources/policy_templates_es.xtb b/components/policy/resources/policy_templates_es.xtb
index 28c86b7..b9236ca 100644
--- a/components/policy/resources/policy_templates_es.xtb
+++ b/components/policy/resources/policy_templates_es.xtb
@@ -5033,12 +5033,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Realizar comprobaciones de Navegación segura en todos los archivos descargados</translation>
 <translation id="6433697627431665375">Impedir que se incluyan datos de <ph name="PRODUCT_NAME" /> en copias de seguridad</translation>
-<translation id="6435570845618943258">Si se habilita esta opción, <ph name="PRODUCT_NAME" /> verificará los certificados de los servidores utilizando el verificador de certificados integrado.
-      Si se inhabilita esta opción, <ph name="PRODUCT_NAME" /> verificará los certificados de los servidores utilizando el verificador de certificados antiguo proporcionado por la plataforma.
-      Si no se configura esta opción, se podrá utilizar el verificador de certificados integrado o el antiguo.
-
-      Se prevé que esta política se elimine en la versión 107 de <ph name="PRODUCT_NAME" /> para <ph name="MAC_OS_NAME" />, en la que el verificador de certificados antiguo dejará de ser compatible con <ph name="MAC_OS_NAME" />.
-      </translation>
 <translation id="6436052172226685535">Comportamiento predeterminado para el LBS.</translation>
 <translation id="6438364096042399634">Si se asigna un valor a esta política, se definirá la lista de dispositivos USB que los usuarios pueden desvincular de su controlador de kernel para utilizarse en la API chrome.usb directamente en una aplicación web. Las entradas son pares de identificador de producto e identificador de proveedor del USB que permiten identificar hardware específico.
 
diff --git a/components/policy/resources/policy_templates_fr.xtb b/components/policy/resources/policy_templates_fr.xtb
index fa1d097..289ff7a17 100644
--- a/components/policy/resources/policy_templates_fr.xtb
+++ b/components/policy/resources/policy_templates_fr.xtb
@@ -4977,12 +4977,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" /> :</translation>
 <translation id="6424486395812679373">Procéder aux vérifications de la navigation sécurisée pour tous les fichiers téléchargés</translation>
 <translation id="6433697627431665375">Exclure des sauvegardes les données de <ph name="PRODUCT_NAME" /></translation>
-<translation id="6435570845618943258">Lorsque ce paramètre est activé : <ph name="PRODUCT_NAME" /> vérifie les certificats des serveurs à l'aide de l'outil de vérification intégré.
-      Lorsqu'il est désactivé : <ph name="PRODUCT_NAME" /> vérifie ces certificats avec l'ancien outil de vérification fourni par la plate-forme.
-      Lorsqu'il n'est pas défini : l'outil de vérification intégré ou l'ancien outil peuvent être utilisés.
-
-      Cette règle doit être supprimée de <ph name="PRODUCT_NAME" /> pour la version 107 de <ph name="MAC_OS_NAME" />, lorsque l'ancien outil en question sur <ph name="MAC_OS_NAME" /> ne sera plus pris en charge.
-      </translation>
 <translation id="6436052172226685535">Comportement par défaut de LBS.</translation>
 <translation id="6438364096042399634">Permet d'établir la liste des appareils USB que les utilisateurs peuvent dissocier de leur pilote de noyau pour s'en servir via l'API chrome.usb directement au sein d'une application Web. Les entrées sont des paires composées d'un identifiant de fournisseur USB et d'un code produit associé à un appareil spécifique.
 
@@ -5628,6 +5622,7 @@
 
       Si cette règle est désactivée, le système peut considérer que l'utilisateur est inactif malgré l'activité vidéo.</translation>
 <translation id="7086720321892395256">Contrôle les règles relatives aux utilisateurs et aux appareils pour la fonctionnalité d'écran de confidentialité.</translation>
+<translation id="7090500018761495290">Réactiver l'API Event.path jusqu'à M115.</translation>
 <translation id="7090668780328470271">Permet de dresser la liste des formats d'URL pour lesquels les sites ne sont pas autorisés à demander aux utilisateurs l'accès aux appareils USB.
 
       Si cette règle n'est pas configurée, la règle <ph name="DEFAULT_WEB_USB_GUARD_SETTING_POLICY_NAME" /> s'applique pour tous les sites, à condition qu'elle soit définie. Si ce n'est pas le cas, le paramètre défini par l'utilisateur s'applique.
diff --git a/components/policy/resources/policy_templates_id.xtb b/components/policy/resources/policy_templates_id.xtb
index 197e0224..45a5684 100644
--- a/components/policy/resources/policy_templates_id.xtb
+++ b/components/policy/resources/policy_templates_id.xtb
@@ -5033,12 +5033,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Lakukan pemeriksaan Safe Browsing pada semua file yang didownload</translation>
 <translation id="6433697627431665375">Cegah data <ph name="PRODUCT_NAME" /> disertakan dalam cadangan</translation>
-<translation id="6435570845618943258">Jika setelan ini diaktifkan, <ph name="PRODUCT_NAME" /> akan menjalankan verifikasi sertifikat server menggunakan pemverifikasi sertifikat bawaan.
-      Jika setelan ini dinonaktifkan, <ph name="PRODUCT_NAME" /> akan menjalankan verifikasi sertifikat server menggunakan pemverifikasi sertifikat lama yang disediakan oleh platform.
-      Jika setelan ini tidak ditetapkan, pemverifikasi sertifikat yang lama atau bawaan dapat digunakan.
-
-      Kebijakan ini akan dihapus dari <ph name="PRODUCT_NAME" /> untuk <ph name="MAC_OS_NAME" /> versi 107 dan saat ini terjadi, dukungan untuk pemverifikasi sertifikat versi lama di <ph name="MAC_OS_NAME" /> akan dihapus.
-      </translation>
 <translation id="6436052172226685535">Perilaku default untuk LBS.</translation>
 <translation id="6438364096042399634">Menyetel kebijakan akan menentukan daftar perangkat USB yang dapat dilepas pengguna dari driver kernelnya, agar dapat langsung digunakan melalui chrome.usb API dalam aplikasi web. Entri berupa pasangan ID Vendor USB dan Kode Produk untuk mengidentifikasi hardware tertentu.
 
diff --git a/components/policy/resources/policy_templates_it.xtb b/components/policy/resources/policy_templates_it.xtb
index 1f4acb0..34d7ebcb 100644
--- a/components/policy/resources/policy_templates_it.xtb
+++ b/components/policy/resources/policy_templates_it.xtb
@@ -4988,12 +4988,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Esegui i controlli di Navigazione sicura per tutti i file scaricati</translation>
 <translation id="6433697627431665375">Impedisci l'inclusione dei dati di <ph name="PRODUCT_NAME" /> nei backup</translation>
-<translation id="6435570845618943258">Se questa impostazione viene attivata, <ph name="PRODUCT_NAME" /> verifica i certificati dei server mediante lo strumento di verifica dei certificati integrato.
-      Se viene disattivata, <ph name="PRODUCT_NAME" /> verifica i certificati dei server mediante lo strumento di verifica dei certificati precedente fornito dalla piattaforma.
-      Se non viene configurata, potrebbe essere utilizzato lo strumento di verifica dei certificati integrato o quello precedente.
-
-      È prevista la rimozione di questo criterio nella versione 107 di <ph name="PRODUCT_NAME" /> per <ph name="MAC_OS_NAME" />, in concomitanza con la rimozione del supporto dello strumento di verifica dei certificati precedente su <ph name="MAC_OS_NAME" />.
-      </translation>
 <translation id="6436052172226685535">Comportamento predefinito di LBS</translation>
 <translation id="6438364096042399634">L'impostazione del criterio consente di definire l'elenco di dispositivi USB che gli utenti possono scollegare dal proprio driver del kernel per essere utilizzati tramite l'API chrome.usb direttamente all'interno di un'app web. Le voci sono coppie costituite dall'ID fornitore USB e dall'ID prodotto per identificare hardware specifico.
 
diff --git a/components/policy/resources/policy_templates_ja.xtb b/components/policy/resources/policy_templates_ja.xtb
index 077aab4c..1272fd6 100644
--- a/components/policy/resources/policy_templates_ja.xtb
+++ b/components/policy/resources/policy_templates_ja.xtb
@@ -4720,12 +4720,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">すべてのダウンロード ファイルに対してセーフ ブラウジング チェックを行う</translation>
 <translation id="6433697627431665375"><ph name="PRODUCT_NAME" /> データをバックアップに含めることを許可しない</translation>
-<translation id="6435570845618943258">有効な場合、<ph name="PRODUCT_NAME" /> は組み込みの証明書確認機能を使用してサーバー証明書の確認を行います。
-      無効な場合、<ph name="PRODUCT_NAME" /> はプラットフォームから提供される従来の証明書確認機能を使用してサーバー証明書の確認を行います。
-      未設定の場合、組み込みまたは従来の証明書確認機能が使用される可能性があります。
-
-      このポリシーは <ph name="MAC_OS_NAME" /> バージョン 107 の <ph name="PRODUCT_NAME" /> で削除される予定です(<ph name="MAC_OS_NAME" /> での従来の証明書確認機能のサポートがバージョン 107 で削除されるため)。
-      </translation>
 <translation id="6436052172226685535">LBS のデフォルトの動作。</translation>
 <translation id="6438364096042399634">このポリシーでは、ユーザーがカーネル ドライバから分離してウェブアプリ内で直接 chrome.usb API を通じて使用できる USB デバイスのリストを定義できます。USB ベンダー ID と商品 ID をペアで入力し、個々のハードウェアを特定できるようにします。
 
diff --git a/components/policy/resources/policy_templates_ko.xtb b/components/policy/resources/policy_templates_ko.xtb
index 96bc5ec..6faad3a7 100644
--- a/components/policy/resources/policy_templates_ko.xtb
+++ b/components/policy/resources/policy_templates_ko.xtb
@@ -5012,12 +5012,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">다운로드한 모든 파일에 대해 세이프 브라우징 확인 실행</translation>
 <translation id="6433697627431665375"><ph name="PRODUCT_NAME" /> 데이터가 백업에 포함되지 않도록 차단</translation>
-<translation id="6435570845618943258">이 설정을 사용하면 <ph name="PRODUCT_NAME" />에서 내장된 인증서 확인 기능을 사용하여 서버 인증서를 확인합니다.
-      사용 중지하면 <ph name="PRODUCT_NAME" />에서 플랫폼의 레거시 인증서 확인 기능을 사용하여 서버 인증서를 확인하게 됩니다.
-      설정하지 않으면 내장된 인증서 확인 기능 또는 레거시 인증서 확인 기능을 사용할 수 있습니다.
-
-      이 정책은 <ph name="MAC_OS_NAME" />의 레거시 인증서 확인 기능이 지원 중단되는 <ph name="MAC_OS_NAME" /> 버전 107용 <ph name="PRODUCT_NAME" />부터 삭제될 예정입니다.
-      </translation>
 <translation id="6436052172226685535">LBS 기본 동작</translation>
 <translation id="6438364096042399634">정책을 설정하면 사용자가 웹 앱 내에서 직접 chrome.usb API를 통해 사용하기 위해 커널 드라이버에서 분리할 수 있는 USB 기기 목록을 정의합니다. 항목은 특정 하드웨어를 식별하는 USB 공급업체 식별자 및 제품 식별자의 쌍입니다.
 
diff --git a/components/policy/resources/policy_templates_nl.xtb b/components/policy/resources/policy_templates_nl.xtb
index fe62905..5a286df 100644
--- a/components/policy/resources/policy_templates_nl.xtb
+++ b/components/policy/resources/policy_templates_nl.xtb
@@ -4921,12 +4921,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Safe Browsing-checks uitvoeren op alle gedownloade bestanden</translation>
 <translation id="6433697627431665375">Voorkomen dat <ph name="PRODUCT_NAME" />-gegevens in back-ups worden opgenomen</translation>
-<translation id="6435570845618943258">Als je deze instelling aanzet, verifieert <ph name="PRODUCT_NAME" /> servercertificaten met de ingebouwde certificaatverificatie.
-      Als je deze instelling uitzet, verifieert <ph name="PRODUCT_NAME" /> servercertificaten met de verouderde certificaatverificatie die door het platform wordt geleverd.
-      Als je deze instelling niet instelt, kan de ingebouwde of de verouderde certificaatverificatie worden gebruikt.
-
-      Dit beleid wordt verwijderd in <ph name="PRODUCT_NAME" /> versie 107 voor <ph name="MAC_OS_NAME" />, wanneer de support voor de verouderde certificaatverificatie in <ph name="MAC_OS_NAME" /> ook wordt verwijderd.
-      </translation>
 <translation id="6436052172226685535">Standaardgedrag voor LBS.</translation>
 <translation id="6438364096042399634">Als je het beleid instelt, wordt de lijst met USB-apparaten gedefinieerd die door gebruikers mogen worden ontkoppeld van hun kernel-driver, zodat ze via de chrome.usb API rechtstreeks kunnen worden gebruikt in een web-app. Items zijn paren van de ID van de USB-leverancier en de ID van het product, zodat specifieke hardware kan worden geïdentificeerd.
 
diff --git a/components/policy/resources/policy_templates_pt-BR.xtb b/components/policy/resources/policy_templates_pt-BR.xtb
index c6db573..039aadb 100644
--- a/components/policy/resources/policy_templates_pt-BR.xtb
+++ b/components/policy/resources/policy_templates_pt-BR.xtb
@@ -5009,12 +5009,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Realizar as verificações do "Navegação segura" em todos os arquivos transferidos por download</translation>
 <translation id="6433697627431665375">Evitar que os dados do <ph name="PRODUCT_NAME" /> sejam incluídos em backups</translation>
-<translation id="6435570845618943258">Quando esta configuração estiver ativada, o <ph name="PRODUCT_NAME" /> vai verificar os certificados do servidor usando o verificador integrado de certificados.
-      Quando ela estiver desativada, o <ph name="PRODUCT_NAME" /> vai verificar os certificados do servidor usando o verificador legado disponibilizado pela plataforma.
-      Quando a configuração não for definida, tanto o verificador de certificados integrado quanto o legado poderão ser usados.
-
-      Esta política será removida no <ph name="PRODUCT_NAME" /> para <ph name="MAC_OS_NAME" /> versão 107, quando o suporte para o verificador de certificados legado no <ph name="MAC_OS_NAME" /> também será removido.
-      </translation>
 <translation id="6436052172226685535">Comportamento padrão para LBS.</translation>
 <translation id="6438364096042399634">Se a política for definida, será configurada uma lista de dispositivos USB que o usuário pode remover do driver de kernel dele para uso pela API chrome.usb diretamente dentro de um app da Web. As entradas são pares de um identificador de fornecedor e um identificador de produto USB para reconhecer um hardware específico.
 
diff --git a/components/policy/resources/policy_templates_ru.xtb b/components/policy/resources/policy_templates_ru.xtb
index 712960f..f5b173f 100644
--- a/components/policy/resources/policy_templates_ru.xtb
+++ b/components/policy/resources/policy_templates_ru.xtb
@@ -5004,12 +5004,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Проверять все скачиваемые файлы с помощью Безопасного просмотра</translation>
 <translation id="6433697627431665375">Запретить включать данные <ph name="PRODUCT_NAME" /> в резервные копии</translation>
-<translation id="6435570845618943258">Если правило включено, проверка сертификатов сервера в <ph name="PRODUCT_NAME" /> будет выполняться встроенным инструментом верификации.
-      Если правило отключено, проверка сертификатов сервера в <ph name="PRODUCT_NAME" /> будет выполняться инструментом прошлого поколения, предоставленным платформой.
-      Если правило не настроено, может использоваться как встроенный инструмент, так и устаревший метод.
-
-      Это правило будет удалено в <ph name="PRODUCT_NAME" /> для <ph name="MAC_OS_NAME" /> версии 107, когда будет прекращена поддержка устаревшего метода подтверждения сертификатов в <ph name="MAC_OS_NAME" />.
-      </translation>
 <translation id="6436052172226685535">Поведение по умолчанию для поддержки альтернативного браузера</translation>
 <translation id="6438364096042399634">Это правило задает список USB-устройств, которые можно использовать напрямую в веб-приложениях через chrome.usb API (в обход драйвера ядра). Каждая запись должна содержать пару идентификаторов (продавца и товара), которая позволяет точно определить устройство.
 
@@ -5653,6 +5647,7 @@
 
       Если правило отключено, воспроизведение видео не воспринимается системой как действие.</translation>
 <translation id="7086720321892395256">Устанавливает правила для пользователей и устройств в отношении экрана конфиденциальности.</translation>
+<translation id="7090500018761495290">Снова сделать Event.path API доступным в версиях до M115</translation>
 <translation id="7090668780328470271">Позволяет задать список шаблонов URL для указания сайтов, которым запрещено запрашивать у пользователей доступ к USB-устройствам.
 
       Если правило не настроено, для всех сайтов действует правило <ph name="DEFAULT_WEB_USB_GUARD_SETTING_POLICY_NAME" /> при условии, что оно задано. В противном случае применяются персональные настройки пользователя.
diff --git a/components/policy/resources/policy_templates_th.xtb b/components/policy/resources/policy_templates_th.xtb
index 33ec98c..b4e6bc02 100644
--- a/components/policy/resources/policy_templates_th.xtb
+++ b/components/policy/resources/policy_templates_th.xtb
@@ -4920,12 +4920,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">เริ่มการตรวจสอบของ Google Safe Browsing ในไฟล์ที่ดาวน์โหลดทั้งหมด</translation>
 <translation id="6433697627431665375">ป้องกันไม่ให้รวมข้อมูลจาก <ph name="PRODUCT_NAME" /> ไว้ในการสำรองข้อมูล</translation>
-<translation id="6435570845618943258">เมื่อเปิดใช้การตั้งค่านี้ <ph name="PRODUCT_NAME" /> จะทำการยืนยันใบรับรองเซิร์ฟเวอร์โดยใช้ตัวตรวจสอบใบรับรองในตัว
-      เมื่อปิดใช้การตั้งค่านี้ <ph name="PRODUCT_NAME" /> จะทำการยืนยันใบรับรองเซิร์ฟเวอร์โดยใช้ตัวตรวจสอบใบรับรองเดิมที่แพลตฟอร์มมีให้
-      เมื่อไม่ได้ตั้งค่านี้ ระบบอาจใช้ตัวตรวจสอบใบรับรองในตัวหรือตัวตรวจสอบใบรับรองเดิมก็ได้
-
-      เรามีแผนจะนำนโยบายนี้ออกใน <ph name="PRODUCT_NAME" /> สำหรับ <ph name="MAC_OS_NAME" /> เวอร์ชัน 107 เมื่อถึงกำหนดการหยุดรองรับตัวตรวจสอบใบรับรองเดิมใน <ph name="MAC_OS_NAME" />
-      </translation>
 <translation id="6436052172226685535">ลักษณะการทำงานเริ่มต้นของ LBS</translation>
 <translation id="6438364096042399634">การตั้งค่านโยบายนี้จะกำหนดรายการอุปกรณ์ USB ที่ผู้ใช้จะปลดออกจากไดรเวอร์ Kernel เพื่อใช้งานผ่าน chrome.usb API ในเว็บแอปโดยตรงได้ รายการต่างๆ เป็นการจับคู่ระหว่างตัวระบุผู้ให้บริการ USB และตัวระบุผลิตภัณฑ์เพื่อที่จะระบุฮาร์ดแวร์ที่เจาะจง
 
diff --git a/components/policy/resources/policy_templates_tr.xtb b/components/policy/resources/policy_templates_tr.xtb
index 806532d..f5d2fd8 100644
--- a/components/policy/resources/policy_templates_tr.xtb
+++ b/components/policy/resources/policy_templates_tr.xtb
@@ -4977,12 +4977,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">İndirilen tüm dosyalarda Güvenli Tarama kontrolleri gerçekleştir</translation>
 <translation id="6433697627431665375"><ph name="PRODUCT_NAME" /> verilerinin yedeklere dahil edilmesini engelle</translation>
-<translation id="6435570845618943258">Bu ayar etkinleştirildiğinde <ph name="PRODUCT_NAME" /> sunucu sertifikalarının doğrulamasını yerleşik sertifika doğrulayıcıyı kullanarak yerine getirir.
-      Bu ayar devre dışı bırakıldığında <ph name="PRODUCT_NAME" /> sunucu sertifikalarının doğrulamasını platform tarafından sağlanan eski sertifika doğrulayıcıyı kullanarak yerine getirir.
-      Bu ayar belirtilmezse yerleşik veya eski sertifika doğrulayıcı kullanılabilir.
-
-      <ph name="MAC_OS_NAME" /> işletim sisteminde eski sertifika doğrulayıcı desteğinin kaldırılması planlandığından, bu politikanın da <ph name="MAC_OS_NAME" /> sürüm 107 için <ph name="PRODUCT_NAME" /> ürününden kaldırılması planlanmıştır.
-      </translation>
 <translation id="6436052172226685535">Eski Tarayıcı Desteği için varsayılan davranış.</translation>
 <translation id="6438364096042399634">Politikayı ayarlamak, kullanıcıların chrome.usb API'si aracılığıyla doğrudan bir web uygulaması içinde kullanmak için çekirdek sürücüsünden çıkarabildikleri USB cihazlarının listesini tanımlar. Girişler, belirli bir donanımı tanımlamak için kullanılan USB Tedarikçi Tanımlayıcısı ve Ürün Tanımlayıcısı çiftlerinden oluşmaktadır.
 
@@ -5628,6 +5622,7 @@
 
       Politika, Devre Dışı değerine ayarlanırsa video etkinliğine rağmen sistem, kullanıcıları boşta olarak algılayabilir.</translation>
 <translation id="7086720321892395256">Gizlilik ekranı özelliği için kullanıcı ve cihaz politikalarını kontrol eder.</translation>
+<translation id="7090500018761495290">Event.path API'yi, M115'e kadar yeniden etkinleştir</translation>
 <translation id="7090668780328470271">Politikayı ayarlamak, kullanıcıların sistemindeki bir USB cihazına erişme izni isteyemeyecek siteleri belirten bir URL kalıpları listesi yapmanıza olanak tanır.
 
       Politika ayarlanmadan bırakılırsa <ph name="DEFAULT_WEB_USB_GUARD_SETTING_POLICY_NAME" /> (etkinse) bütün siteler için geçerli olur. Aksi takdirde kullanıcının kişisel ayarları geçerlidir.
diff --git a/components/policy/resources/policy_templates_uk.xtb b/components/policy/resources/policy_templates_uk.xtb
index 144c5d93..ba2b7a16 100644
--- a/components/policy/resources/policy_templates_uk.xtb
+++ b/components/policy/resources/policy_templates_uk.xtb
@@ -5019,12 +5019,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Перевіряти всі завантажені файли за допомогою функції "Безпечний перегляд"</translation>
 <translation id="6433697627431665375">Заборонити включати дані <ph name="PRODUCT_NAME" /> у резервну копію</translation>
-<translation id="6435570845618943258">Якщо це налаштування ввімкнено, <ph name="PRODUCT_NAME" /> перевірятиме сертифікати сервера за допомогою вбудованого інструмента перевірки сертифікатів.
-      Якщо це налаштування вимкнено, <ph name="PRODUCT_NAME" /> перевірятиме сертифікати сервера за допомогою застарілого інструмента перевірки сертифікатів, наданого платформою.
-      Якщо цей параметр не налаштовано, може використовуватися вбудований або застарілий інструмент перевірки сертифікатів.
-
-      Коли підтримка застарілого інструмента перевірки сертифікатів у <ph name="MAC_OS_NAME" /> припиниться, це правило буде вилучено в <ph name="PRODUCT_NAME" /> для <ph name="MAC_OS_NAME" /> версії 107.
-      </translation>
 <translation id="6436052172226685535">Поведінка за умовчанням для підтримки застарілих веб-переглядачів.</translation>
 <translation id="6438364096042399634">Налаштування цього пристрою визначають список пристроїв USB, які користувачі можуть від'єднувати від драйвера ядра, щоб використовувати через chrome.usb API просто у веб-додатку. Записи є парами ідентифікатора постачальника USB й ідентифікатора продукту для визначення апаратного забезпечення.
 
diff --git a/components/policy/resources/policy_templates_vi.xtb b/components/policy/resources/policy_templates_vi.xtb
index 06fb12c..1f186b2 100644
--- a/components/policy/resources/policy_templates_vi.xtb
+++ b/components/policy/resources/policy_templates_vi.xtb
@@ -4996,12 +4996,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">Thực hiện quá trình kiểm tra của tính năng Duyệt web an toàn đối với tất cả tệp tải xuống</translation>
 <translation id="6433697627431665375">Không cho phép đưa dữ liệu của <ph name="PRODUCT_NAME" /> vào bản sao lưu</translation>
-<translation id="6435570845618943258">Khi bạn bật chế độ cài đặt này, <ph name="PRODUCT_NAME" /> sẽ sử dụng trình xác minh chứng chỉ tích hợp sẵn để xác minh chứng chỉ máy chủ.
-      Khi bạn tắt chế độ cài đặt này, <ph name="PRODUCT_NAME" /> sẽ sử dụng trình xác minh chứng chỉ cũ do nền tảng cung cấp để xác minh chứng chỉ máy chủ.
-      Nếu bạn không đặt chế độ cài đặt này, thì trình xác minh chứng chỉ cũ hoặc tích hợp sẵn có thể được sử dụng.
-
-      Chúng tôi dự định loại bỏ chính sách này trong <ph name="PRODUCT_NAME" /> cho <ph name="MAC_OS_NAME" /> phiên bản 107, khi ngừng hỗ trợ trình xác minh chứng chỉ cũ trong <ph name="MAC_OS_NAME" /> theo kế hoạch.
-      </translation>
 <translation id="6436052172226685535">Hành vi mặc định cho tính năng Hỗ trợ trình duyệt cũ.</translation>
 <translation id="6438364096042399634">Nếu đặt chính sách này, bạn có thể xác định danh sách các thiết bị USB mà người dùng có thể tháo khỏi trình điều khiển nhân hệ điều hành để sử dụng thông qua API chrome.usb ngay trong ứng dụng web. Các mục trong danh sách là những cặp Mã nhận dạng nhà cung cấp và Mã nhận dạng sản phẩm USB để xác định một phần cứng cụ thể.
 
diff --git a/components/policy/resources/policy_templates_zh-CN.xtb b/components/policy/resources/policy_templates_zh-CN.xtb
index f1748252..2667941 100644
--- a/components/policy/resources/policy_templates_zh-CN.xtb
+++ b/components/policy/resources/policy_templates_zh-CN.xtb
@@ -4918,12 +4918,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">对所有下载的文件执行安全浏览检查</translation>
 <translation id="6433697627431665375">阻止 <ph name="PRODUCT_NAME" /> 数据包含在备份中</translation>
-<translation id="6435570845618943258">如果此设置已启用,<ph name="PRODUCT_NAME" /> 将会使用内置的证书验证程序来验证服务器证书。
-      如果此设置已停用,<ph name="PRODUCT_NAME" /> 将会使用平台提供的旧版证书验证程序来验证服务器证书。
-      如果此设置未配置,系统既可能会使用内置的证书验证程序,也可能会使用旧版证书验证程序。
-
-      按照我们的计划,此政策将会从适用于 <ph name="MAC_OS_NAME" /> 107 版的 <ph name="PRODUCT_NAME" /> 中移除,该版本将不再支持在 <ph name="MAC_OS_NAME" /> 上使用旧版证书验证程序。
-      </translation>
 <translation id="6436052172226685535">LBS 的默认行为。</translation>
 <translation id="6438364096042399634">通过设置此政策,您可以指定一个 USB 设备列表,在其中列出用户可从内核驱动程序分离以便直接在 Web 应用内通过 chrome.usb API 使用的 USB 设备。列表中的条目是成对的用于标识特定硬件的 USB 供应商标识符和产品标识符。
 
@@ -5568,6 +5562,7 @@
 
           如果此政策已停用,则即使存在视频活动,系统仍会将设备视为闲置。</translation>
 <translation id="7086720321892395256">控制“隐私保护屏”功能的用户和设备政策。</translation>
+<translation id="7090500018761495290">重新启用 Event.path API,直至 M115</translation>
 <translation id="7090668780328470271">通过设置此政策,您可以罗列一些网址格式,从而指定哪些网站无法请求用户授权其访问 USB 设备。
 
       如果您未设置此政策,那么,倘若 <ph name="DEFAULT_WEB_USB_GUARD_SETTING_POLICY_NAME" /> 已设置,系统便会将它应用于所有网站,否则就会应用用户的个人设置。
diff --git a/components/policy/resources/policy_templates_zh-TW.xtb b/components/policy/resources/policy_templates_zh-TW.xtb
index 3394497..6c45217 100644
--- a/components/policy/resources/policy_templates_zh-TW.xtb
+++ b/components/policy/resources/policy_templates_zh-TW.xtb
@@ -4905,12 +4905,6 @@
 <translation id="6424485010103067949"><ph name="OMA_URI" />:</translation>
 <translation id="6424486395812679373">對所有下載檔案執行安全瀏覽檢查</translation>
 <translation id="6433697627431665375">不允許將 <ph name="PRODUCT_NAME" /> 資料納入備份內容</translation>
-<translation id="6435570845618943258">如果啟用這項設定,<ph name="PRODUCT_NAME" /> 將使用內建的憑證驗證器執行伺服器憑證驗證作業。
-      如果停用這項設定,<ph name="PRODUCT_NAME" /> 將使用平台提供的舊版憑證驗證器執行伺服器憑證驗證作業。
-      如果不進行設定,系統可能會使用內建或舊版的憑證驗證器。
-
-      我們計劃將這項政策從適用於 <ph name="MAC_OS_NAME" /> 107 版的 <ph name="PRODUCT_NAME" /> 中移除,屆時也將停止支援 <ph name="MAC_OS_NAME" /> 的舊版憑證驗證器。
-      </translation>
 <translation id="6436052172226685535">LBS 的預設行為。</translation>
 <translation id="6438364096042399634">你可以透過這項政策來定義 USB 裝置清單,使用者可以從核心驅動程式中卸除這份清單中的 USB 裝置,並且直接透過 chrome.usb API 在網頁應用程式中使用。輸入項目為可識別特定硬體的 USB 供應商 ID 和產品 ID 組合。
 
@@ -5553,6 +5547,7 @@
 
           如果將這項政策設為停用,即使有視訊活動,系統仍會將使用者狀態視為閒置。</translation>
 <translation id="7086720321892395256">控管隱私保護畫面功能的使用者和裝置政策。</translation>
+<translation id="7090500018761495290">重新啟用 Event.path API,直到 M115 為止。</translation>
 <translation id="7090668780328470271">你可以透過這項政策建立網址模式清單,用於指定無法要求使用者授予 USB 裝置存取權的網站。
 
       如果未設定這項政策,系統會針對所有網站套用 <ph name="DEFAULT_WEB_USB_GUARD_SETTING_POLICY_NAME" /> 政策 (如果已設定)。否則系統會套用使用者的個人設定。
diff --git a/components/signin/core/browser/account_reconcilor_unittest.cc b/components/signin/core/browser/account_reconcilor_unittest.cc
index b0971ba..7be43cb 100644
--- a/components/signin/core/browser/account_reconcilor_unittest.cc
+++ b/components/signin/core/browser/account_reconcilor_unittest.cc
@@ -8,6 +8,7 @@
 #include <memory>
 #include <string>
 #include <utility>
+#include <vector>
 
 #include "base/containers/contains.h"
 #include "base/run_loop.h"
@@ -1317,6 +1318,16 @@
 {  "*A",    "AB",   IsFirstReconcile::kBoth, "U",         "*A",          "A"},
 // Check that the previous case is idempotent.
 {  "*A",    "A",    IsFirstReconcile::kBoth, "",          "*A",          ""},
+
+// On Lacros, the reconcilor is enabled even if there is no account, or if the
+// primary account is in error.
+#if BUILDFLAG(IS_CHROMEOS_LACROS)
+{  "",      "",     IsFirstReconcile::kBoth, "",          "",            ""},
+{  "*xA",   "",     IsFirstReconcile::kBoth, "",          "*xA",         ""},
+{  "",      "A",    IsFirstReconcile::kBoth, "X",         "",            ""},
+{  "*xA",   "A",    IsFirstReconcile::kBoth, "X",         "*xA",         ""},
+{  "*xAB",  "AB",   IsFirstReconcile::kBoth, "X",         "*xAB",        ""},
+#endif  // BUILDFLAG(IS_CHROMEOS_LACROS)
 };
 // clang-format on
 
@@ -1389,8 +1400,15 @@
       GetParam().is_first_reconcile == IsFirstReconcile::kFirst ? true : false;
   reconcilor->StartReconcile(AccountReconcilor::Trigger::kCookieChange);
 
-  SimulateSetAccountsInCookieCompleted(
-      reconcilor, signin::SetAccountsInCookieResult::kSuccess);
+  if (GetParam().gaia_api_calls[0] != '\0') {
+    if (logout_action) {
+      SimulateLogOutFromCookieCompleted(
+          reconcilor, GoogleServiceAuthError::AuthErrorNone());
+    } else {
+      SimulateSetAccountsInCookieCompleted(
+          reconcilor, signin::SetAccountsInCookieResult::kSuccess);
+    }
+  }
 
   ASSERT_FALSE(reconcilor->is_reconcile_started_);
   ASSERT_EQ(signin_metrics::ACCOUNT_RECONCILOR_OK, reconcilor->GetState());
diff --git a/components/signin/public/android/java/src/org/chromium/components/signin/test/util/FakeAccountInfoService.java b/components/signin/public/android/java/src/org/chromium/components/signin/test/util/FakeAccountInfoService.java
index 3d24ef3..2c0118e 100644
--- a/components/signin/public/android/java/src/org/chromium/components/signin/test/util/FakeAccountInfoService.java
+++ b/components/signin/public/android/java/src/org/chromium/components/signin/test/util/FakeAccountInfoService.java
@@ -77,7 +77,7 @@
     /**
      * Adds {@link AccountInfo} with the given information to the fake service.
      */
-    public void addAccountInfo(String email, String fullName, String givenName,
+    public AccountInfo addAccountInfo(String email, String fullName, String givenName,
             @Nullable Bitmap avatar, @NonNull AccountCapabilities capabilities) {
         final CoreAccountInfo coreAccountInfo = CoreAccountInfo.createFromEmailAndGaiaId(
                 email, FakeAccountManagerFacade.toGaiaId(email));
@@ -91,5 +91,6 @@
                 observer.onAccountInfoUpdated(accountInfo);
             }
         });
+        return accountInfo;
     }
 }
diff --git a/components/strings/components_strings_af.xtb b/components/strings/components_strings_af.xtb
index b651432..776eee8 100644
--- a/components/strings/components_strings_af.xtb
+++ b/components/strings/components_strings_af.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Enkelspasielettertipe</translation>
 <translation id="1763864636252898013">Hierdie bediener kon nie bewys dat dit <ph name="DOMAIN" /> is nie; sy sekuriteitsertifikaat word nie deur jou toestel se bedryfstelsel vertrou nie. Dit kan veroorsaak word deur 'n wanopstelling of 'n aanvaller wat jou verbinding onderskep.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Probeer Windows Network Diagnostics uitvoer<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Die bediener waarheen jy nou gaan, <ph name="ORIGIN" />, het 'n opskrif gestel
-    wat vereis dat 'n oorsprongbeleid op alle versoeke daaraan toegepas word. Maar
-    die opskrif is misvormd, wat die blaaier verhinder om jou versoek
-    vir <ph name="SITE" /> uit te voer. Werfoperateurs kan oorsprongbeleide gebruik om
-    sekuriteit- en ander eienskappe vir 'n werf op te stel.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Kom meer te wete oor Incognito in Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Jou oop oortjies verskyn hier</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Minder as 1 MB</translation>
 <translation id="3990250421422698716">Gelykskudafwyking</translation>
 <translation id="3992684624889376114">Meer oor hierdie bladsy</translation>
-<translation id="3996311196211510766">Die werf <ph name="ORIGIN" /> het versoek dat 'n oorsprongbeleid
-    op alle versoeke daaraan toegepas word, maar hierdie beleid kan nie op die oomblik toegepas word nie.</translation>
 <translation id="4006465311664329701">Betaalmetodes, aanbiedings en adresse wat Google Pay gebruik</translation>
 <translation id="4009243425692662128">Die inhoud van bladsye wat jy druk, word na Google Wolk of derde partye toe gestuur vir ontleding. Dit kan byvoorbeeld vir sensitiewe data geskandeer word.</translation>
 <translation id="4010758435855888356">Laat bergingtoegang toe?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Vyfde rol</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Die brandmuur- en antivirus-opstellings nagaan<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Groot</translation>
-<translation id="4209166701302774460">Die bediener waarheen jy nou gaan, <ph name="ORIGIN" />, het versoek dat
-    'n oorsprongbeleid op alle versoeke daaraan toegepas word. Maar dit kon nie nou
-   'n beleid lewer nie, wat die blaaier verhinder om jou versoek
-    vir <ph name="SITE" /> uit te voer. Werfoperateurs kan oorsprongbeleide gebruik om
-    sekuriteit- en ander eienskappe vir 'n werf op te stel.</translation>
 <translation id="4210602799576081649">Verifikasiekode het verval; vra vir 'n nuwe kode</translation>
 <translation id="421066178035138955">Gebruik virtuelerealiteittoestelle en -data</translation>
 <translation id="4213305257324635756">Animasieflieks</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Kontak die webwerfeienaar as jy steeds die fout sien.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Probeer netwerkdiagnostiek uitvoer<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Kan vra om jou kamera te gebruik en beweeg</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Gaan voort na <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Geldig</translation>
 <translation id="4250431568374086873">Jou verbinding aan hierdie werf is nie heeltemal veilig nie</translation>
 <translation id="4250680216510889253">Nee</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Taakrekening-ID</translation>
 <translation id="4798078619018708837">Voer die vervaldatum en CVC vir <ph name="CREDIT_CARD" /> in om jou kaartbesonderhede op te dateer. Nadat jy bevestig het, sal kaartbesonderhede vanaf jou Google-rekening met hierdie werf gedeel word.</translation>
 <translation id="4800132727771399293">Gaan jou vervaldatum en CVC na en probeer weer</translation>
-<translation id="480334179571489655">Oorsprongbeleidfout</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Instruksies deur jou toesteladministrateur:</translation>
 <translation id="4812751092864334025">Drabare tegnologie</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Geel</translation>
 <translation id="5903264686717710770">Titel:</translation>
 <translation id="5904360430676679685">Gesin en verhoudings</translation>
-<translation id="5905445707201418379">Geblokkeer ingevolge <ph name="ORIGIN" /> se oorsprongbeleid.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (gesinkroniseer)</translation>
 <translation id="59174027418879706">Geaktiveer</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_am.xtb b/components/strings/components_strings_am.xtb
index 86c8f4c2..bf943d4 100644
--- a/components/strings/components_strings_am.xtb
+++ b/components/strings/components_strings_am.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Monospace ቅርጸ-ቁምፊ</translation>
 <translation id="1763864636252898013">ይህ አገልጋይ <ph name="DOMAIN" /> መሆኑን ሊያረጋግጥ አልቻለም፤ የደህንነት እውቅና ማረጋገጫው በመሣሪያዎ ስርዓተ ክወና የሚታመን አይደለም። ይሄ በተሳሳተ አወቃቀር ወይም አንድ አጥቂ ግንኙነትዎን በመጥለፉ የተከሰተ ሊሆን ይችላል።</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />የWindows አውታረ መረብ መመርመሪያውን ለማሄድ ይሞክሩ<ph name="END_LINK" />።</translation>
-<translation id="1772163372082567643">እየሄዱበት ያለው አገልጋይ <ph name="ORIGIN" /> ወደ እሱ በሚደረጉ ሁሉም ጥያቄዎች ላይ የምንጭ መመሪያ እንዲተገብር የሚፈልግ ራስጌ አቀናብሯል። ነገር ግን ራስጌው የተበላሸ ነው፣ ይህ አሳሹ <ph name="SITE" /> ጥያቄዎን እንዳያሟላ ይከለክለዋል። የምንጭ መመሪያዎች በጣቢያ ሥርዓት ከዋነኞች የደኅንነት እና ሌላ ባሕሪያትን ለጣቢያው ለማዋቀር ጥቅም ላይ ሊውል ይችላል።</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />በChromium ውስጥ ስላለ ማንነት የማያሳውቅ ተጨማሪ ይወቁ<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">የእርስዎ ክፍት ትሮች እዚህ ይመጣሉ</translation>
@@ -1106,8 +1105,6 @@
 <translation id="3987940399970879459">ከ1 ሜባ ያነሰ</translation>
 <translation id="3990250421422698716">ሕትመት አጠናቅ</translation>
 <translation id="3992684624889376114">ስለዚህ ገጽ</translation>
-<translation id="3996311196211510766">የ<ph name="ORIGIN" /> ጣቢያ የመጀመሪያ መመሪያ
-    በሁሉም ወደ እሱ በተላኩ ጥያቄዎች ላይ ተፈጻሚ እንዲሆን ጠይቋል፣ ነገር ግን ይህ መመሪያ በአሁኑ ጊዜ ሊተገበር አይችልም።</translation>
 <translation id="4006465311664329701">Google Payን የሚጠቀሙ የመክፈያ ዘዴዎች፣ ቅናሾች እና አድራሻዎች</translation>
 <translation id="4009243425692662128">እርስዎ የሚያትሙት የገጾች ይዘት ለትንተና ወደ Google ደመና ወይም ሶስተኛ ወገኖች ይላካል። ለምሳሌ፣ አደጋን ሊያስከትል ለሚችል ውሂብ ሊቃኙ ይችላሉ።</translation>
 <translation id="4010758435855888356">የማከማቻ መዳረሻ ይፈቀድ?</translation>
@@ -1172,8 +1169,6 @@
 <translation id="4202554117186904723">አምስተኛ ጥቅልል</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />የኬላ እና የጸረ-ቫይረስ ውቅረቶችን መፈተሽ<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">ትልቅ</translation>
-<translation id="4209166701302774460">እየሄዱበት ያሉት አገልጋይ፣ <ph name="ORIGIN" />፣ ሁሉም እሱን በሚጠይቁት ላይ
-    የመጀመሪያ መመሪያ ተፈጻሚ እንዲሆን ጠይቋል። ነገር ግን አሁን መመሪያ ሊያደርስ አልቻለም፣ ይህም አሳሹ የ<ph name="SITE" /> ጥያቄዎን እንዳያሟላ ይከለክለዋል። የምንጭ መመሪያዎች በጣቢያ ሥርዓት ከዋነኞች የደኅንነት እና ሌላ ባሕሪያትን ለጣቢያው ለማዋቀር ጥቅም ላይ ሊውል ይችላል።</translation>
 <translation id="4210602799576081649">የማረጋገጫ ኮድ ጊዜው አልፎበታል፣ አዲስ ኮድ ይጠይቁ</translation>
 <translation id="421066178035138955">የምናባዊ እውነታ መሣሪያዎችን እና ውሂብ ይጠቀሙ</translation>
 <translation id="4213305257324635756">የእነማ ፊልሞች</translation>
@@ -1201,7 +1196,6 @@
     &lt;p&gt;አሁንም ስህተቱ የሚያዩ ከሆኑ የድር ጣቢያውን ባለቤት ያነጋግሩ።&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />የአውታረ መረብ መመርመሪያን አሂደው ይሞክሩ<ph name="END_LINK" /></translation>
 <translation id="4230204356098880324">ካሜራዎን ለመጠቀም እና ለማንቀሳቀስ መጠየቅ ይችላል</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />ቀጥል ወደ <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">ትክክል</translation>
 <translation id="4250431568374086873">ወደዚህ ጣቢያ ያልዎት ግንኙነት ሙሉ በሙሉ ደህንነቱ አስተማማኝ አይደለም።</translation>
 <translation id="4250680216510889253">አይ</translation>
@@ -1405,7 +1399,6 @@
 <translation id="4796594887379589189">የስራ መለያ መታወቂያ</translation>
 <translation id="4798078619018708837">የካርድ ዝርዝሮችዎን ለማዘመን የ<ph name="CREDIT_CARD" /> ማብቂያ ቀን እና CVC ያስገቡ። ካረጋገጡ በኋላ የGoogle መለያ ካርድ ዝርዝሮችዎ ለዚህ ጣቢያ ይጋራል።</translation>
 <translation id="4800132727771399293">የእርስዎን የአገልግሎት ማብቂያ ቀን እና CVC ይፈትሹ እና እንደገና ይሞክሩ</translation>
-<translation id="480334179571489655">የምንጭ መመሪያ ስህተት</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">መመሪያዎች ከመሣሪያዎ አስተዳዳሪ፦</translation>
 <translation id="4812751092864334025">የተለባሽ ቴክኖሎጂ</translation>
@@ -1800,7 +1793,6 @@
 <translation id="5901630391730855834">ቢጫ</translation>
 <translation id="5903264686717710770">ርዕስ፡-</translation>
 <translation id="5904360430676679685">ቤተሰብ እና ግንኙነቶች</translation>
-<translation id="5905445707201418379">በ <ph name="ORIGIN" /> የደህንነት መመሪያ መሠረት ታግዷል።</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (ሰምሯል)</translation>
 <translation id="59174027418879706">ነቅቷል</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ar.xtb b/components/strings/components_strings_ar.xtb
index 2a9ede72..73dcd263 100644
--- a/components/strings/components_strings_ar.xtb
+++ b/components/strings/components_strings_ar.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">‏خط Monospace</translation>
 <translation id="1763864636252898013">هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />؛ بل إنه شهادة أمان غير موثوقة من خلال نظام تشغيل جهازك. وربما يكون السبب في ذلك خطأ في التكوين أو مهاجمًا يعترض الاتصال.</translation>
 <translation id="1768211456781949159">‏<ph name="BEGIN_LINK" />تجربة تشغيل بيانات التشخيص لشبكة Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">إنّ خادم <ph name="ORIGIN" /> الذي تنتقل إليه أعدّ عنوانًا يتطلّب
-    تطبيق سياسة المصدر على جميع الطلبات المقدّمة إليه، ولكن
-    العنوان غير صالح، مما يمنع المتصفِّح من إكمال
-    طلبك ذي الصلة بالموقع الإلكتروني <ph name="SITE" />. ويمكن استخدام سياسات المصدر من خلال
-    عوامل تشغيل المواقع الإلكترونية لضبط الأمان والخصائص الأخرى لموقع إلكتروني.</translation>
 <translation id="1774592222195216949">‏<ph name="BEGIN_LINK" />مزيد من المعلومات حول وضع التصفّح المتخفي في متصفّح Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">تظهر علامات التبويب المفتوحة هنا</translation>
@@ -1113,8 +1108,6 @@
 <translation id="3987940399970879459">أقل من ميغابايت واحد</translation>
 <translation id="3990250421422698716">ترتيب النسخ مع الفصل بينها</translation>
 <translation id="3992684624889376114">لمحة حول هذه الصفحة</translation>
-<translation id="3996311196211510766">لقد طلب الموقع الإلكتروني <ph name="ORIGIN" /> تطبيق سياسة المصدر
-    على جميع الطلبات المقدَّمة إليه، ولكن يتعذّر تطبيق هذه السياسة حاليًا.</translation>
 <translation id="4006465311664329701">‏طرق الدفع والعروض الترويجية والعناوين التي تستخدم Google Pay</translation>
 <translation id="4009243425692662128">‏يتم إرسال محتوى الصفحات التي تطبعها إلى Google Cloud أو أطراف خارجية لتحليله. على سبيل المثال، قد يتم فحص هذا المحتوى بحثًا عن بيانات حسّاسة.</translation>
 <translation id="4010758435855888356">هل تريد السماح بالوصول إلى مساحة التخزين؟</translation>
@@ -1179,11 +1172,6 @@
 <translation id="4202554117186904723">اللفافة الخامسة</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />التحقق من عمليات ضبط الجدار الناري وبرامج مكافحة الفيروسات<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">كبير</translation>
-<translation id="4209166701302774460">إن خادم <ph name="ORIGIN" /> الذي تنتقل إليه قد طلب تطبيق
-    سياسة المصدر على جميع الطلبات المقدَّمة إليه، ولكن تعذّر الآن
-    عرض سياسة، مما يمنع المتصفِّح من إكمال طلبك
-    ذي الصلة بالموقع الإلكتروني <ph name="SITE" />. ويمكن استخدام سياسات المصدر من خلال
-    عوامل تشغيل الموقع الإلكتروني لضبط الأمان والخصائص الأخرى لموقع إلكتروني.</translation>
 <translation id="4210602799576081649">انتهت صلاحية رمز إثبات الهوية، يُرجى طلب رمز جديد.</translation>
 <translation id="421066178035138955">استخدام أجهزة الواقع الافتراضي وبياناتها</translation>
 <translation id="4213305257324635756">أفلام رسومات متحركة</translation>
@@ -1211,7 +1199,6 @@
     &lt;p&gt;في حال استمرار ظهور هذا الخطأ، اتصِل بمالك الموقع الإلكتروني.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />تجربة تشغيل بيانات تشخيص الشبكة<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">السماح للموقع الإلكتروني بطلب استخدام الكاميرا وتحريكها</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />المتابعة إلى <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">صالح</translation>
 <translation id="4250431568374086873">إن اتصالك بهذا الموقع غير آمن تمامًا</translation>
 <translation id="4250680216510889253">لا</translation>
@@ -1416,7 +1403,6 @@
 <translation id="4796594887379589189">رقم تعريف حساب المهمة</translation>
 <translation id="4798078619018708837">‏يمكنك إدخال تاريخ انتهاء الصلاحية ورمز التحقّق (CVC) لبطاقة <ph name="CREDIT_CARD" /> لتحديث تفاصيلها. وبعد التأكيد، ستتم مشاركة تفاصيل البطاقة من حسابك على Google مع هذا الموقع الإلكتروني.</translation>
 <translation id="4800132727771399293">‏تحقق من تاريخ انتهاء الصلاحية ورمز التحقق من البطاقة (CVC) وأعد المحاولة مرة أخرى.</translation>
-<translation id="480334179571489655">خطأ في سياسة المصدر</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">تعليمات من مشرف الجهاز:</translation>
 <translation id="4812751092864334025">أجهزة قابلة للارتداء</translation>
@@ -1811,7 +1797,6 @@
 <translation id="5901630391730855834">أصفر</translation>
 <translation id="5903264686717710770">العنوان:</translation>
 <translation id="5904360430676679685">الأسرة وتكوين العلاقات</translation>
-<translation id="5905445707201418379">تم الحظر وفقًا لسياسة المصدر <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (تمت المزامنة)</translation>
 <translation id="59174027418879706">تم التفعيل</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_as.xtb b/components/strings/components_strings_as.xtb
index dded8ce..d03c324 100644
--- a/components/strings/components_strings_as.xtb
+++ b/components/strings/components_strings_as.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace ফ’ণ্ট</translation>
 <translation id="1763864636252898013">এই ছার্ভাৰটোৱে এইটোক <ph name="DOMAIN" /> বুলি প্ৰমাণ কৰিব নোৱাৰিলে; আপোনাৰ ডিভাইচৰ অপাৰেটিং ছিষ্টেমে ইয়াৰ সুৰক্ষাৰ প্ৰমাণপত্ৰ বিশ্বাস নকৰে। এয়া কোনো ভুল কনফিগাৰেশ্বনৰ বাবে বা কোনো আক্ৰমণকাৰীয়ে আপোনাৰ সংযোগ অৱৰোধ কৰাৰ বাবে হ'ব পাৰে।</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows Network Diagnostics চলাই চাওক<ph name="END_LINK" />।</translation>
-<translation id="1772163372082567643">আপুনি ব্যৱহাৰ কৰিবলৈ লোৱা ছাৰ্ভাৰ <ph name="ORIGIN" />এ এইটোলৈ কৰা সকলো অনুৰোধত
-    এটা মূল নীতি প্ৰয়োগ কৰাৰ প্ৰয়োজন হোৱাকৈ এটা হেডাৰ ছেট কৰিছে। কিন্তু
-    হেডাৰটো ত্ৰুটিপূৰ্ণ, যিয়ে ব্ৰাউজাৰটোক আপুনি <ph name="SITE" />ৰ বাবে কৰা
-    অনুৰোধটো পৰিপূৰ্ণ কৰাত বাধা দিয়ে। কোনো ছাইটৰ বাবে
-    সুৰক্ষা আৰু অন্য বৈশিষ্ট্যসমূহ কনফিগাৰ কৰিবলৈ ছাইট অপাৰেটৰসকলে মূল নীতিসমূহ ব্যৱহাৰ কৰিব পাৰে।</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromiumত ইনক’গনিট’ৰ বিষয়ে অধিক জানক<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">আপুনি খোলা টেববোৰ ইয়াত দেখা যাব</translation>
@@ -1108,8 +1103,6 @@
 <translation id="3987940399970879459">১ এম. বি.তকৈ কম</translation>
 <translation id="3990250421422698716">লাহেকৈ অফছেটক হেঁচক</translation>
 <translation id="3992684624889376114">এই পৃষ্ঠাখনৰ বিষয়ে</translation>
-<translation id="3996311196211510766">এই <ph name="ORIGIN" /> ছাইটটোৱে অনুৰোধ কৰিছে যে এটা মূল নীতি
-    ইয়াৰ সকলো অনুৰোধতে প্ৰযোজ্য কৰা হওক, কিন্তু এই নীতিটো বর্তমান প্ৰয়োগ কৰিব নোৱাৰি।</translation>
 <translation id="4006465311664329701">Google Pay ব্যৱহাৰ কৰা পৰিশোধ পদ্ধতি, অফাৰ আৰু ঠিকনা</translation>
 <translation id="4009243425692662128">আপুনি প্ৰিণ্ট কৰা পৃষ্ঠাখনৰ সমলখিনি বিশ্লেষণ কৰিবলৈ Google Cloud অথবা তৃতীয় পক্ষসমূহলৈ পঠিওৱা হয়। উদাহৰণস্বৰূপে, সেইসমূহ সংবেদনশীল ডেটাৰ বাবে স্কেন কৰা হ’ব পাৰে।</translation>
 <translation id="4010758435855888356">ষ্ট’ৰেজ এক্সেছ কৰাৰ অনুমতি দিবনে?</translation>
@@ -1174,11 +1167,6 @@
 <translation id="4202554117186904723">পঞ্চম ৰোল</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ফায়াৰৱাল আৰু এণ্টিভাইৰাছ পৰীক্ষা কৰা কনফিগাৰেশ্বন<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">ডাঙৰ</translation>
-<translation id="4209166701302774460">আপুনি ব্যৱহাৰ কৰিবলৈ লোৱা ছাৰ্ভাৰ <ph name="ORIGIN" />এ অনুৰোধ কৰিছে যে
-    এইটোলৈ কৰা সকলো অনুৰোধতে এটা মূল নীতি প্ৰয়োগ কৰা হওক। কিন্তু এইটোৱে এতিয়া এটা
-    নীতি প্ৰদান কৰিব নোৱাৰিলে, যিয়ে ব্ৰাউজাৰটোক আপুনি <ph name="SITE" />ৰ বাবে কৰা অনুৰোধটো
-    পৰিপূৰ্ণ কৰাত বাধা দিয়ে। কোনো ছাইটৰ বাবে সুৰক্ষা আৰু অন্য বৈশিষ্ট্যসমূহ কনফিগাৰ কৰিবলৈ
-    ছাইট অপাৰেটৰসকলে মূল নীতিসমূহ ব্যৱহাৰ কৰিব পাৰে।</translation>
 <translation id="4210602799576081649">সত্যাপনৰ ক’ডটোৰ ম্যাদ উকলিছে, এটা নতুন ক’ডৰ বাবে অনুৰোধ কৰক</translation>
 <translation id="421066178035138955">ভাৰ্চুৱেল ৰিয়েলিটি ডিভাইচসমূহ আৰু ডেটা ব্যৱহাৰ কৰিব বিচাৰিছে</translation>
 <translation id="4213305257324635756">এনিমেশ্বন কৰা চলচ্চিত্ৰ</translation>
@@ -1205,7 +1193,6 @@
     &lt;p&gt;যদি আপুনি এতিয়াও আসোঁৱাহটো দেখা পায় তেন্তে ৱেবছাইটৰ গৰাকীৰ সৈতে সম্পর্ক কৰক।&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />নেটৱৰ্ক ডায়গন'ষ্টিক্স চলাই চাওক<ph name="END_LINK" />।</translation>
 <translation id="4230204356098880324">আপোনাৰ কেমেৰা ব্যৱহাৰ আৰু লৰচৰ কৰিবলৈ বিচাৰিব পাৰে</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" />লৈ যাওক<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">মান্য</translation>
 <translation id="4250431568374086873">এই ছাইটটোত আপোনাৰ সংযোগ সম্পূর্ণভাৱে সুৰক্ষিত নহয়</translation>
 <translation id="4250680216510889253">নহয়</translation>
@@ -1409,7 +1396,6 @@
 <translation id="4796594887379589189">কামৰ একাউণ্ট আইডি</translation>
 <translation id="4798078619018708837">আপোনাৰ কার্ডৰ সবিশেষ আপডে’ট কৰিবলৈ <ph name="CREDIT_CARD" />ৰ ম্যাদ উকলা তাৰিখ আৰু CVC দিয়ক। আপুনি নিশ্চিত কৰাৰ পাছত আপোনাৰ Google একাউণ্টৰ পৰা আপোনাৰ কার্ডৰ সবিশেষ এই ছাইটটোৰ সৈতে শ্বেয়াৰ কৰা হ’ব।</translation>
 <translation id="4800132727771399293">আপোনাৰ ম্যাদ উকলা তাৰিখ আৰু CVC পৰীক্ষা কৰক আৰু আকৌ চেষ্টা কৰক</translation>
-<translation id="480334179571489655">উৎসৰ নীতিত আসোঁৱাহ</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">আপোনাৰ ডিভাইচ প্ৰশাসকৰ নিৰ্দেশাৱলী:</translation>
 <translation id="4812751092864334025">পৰিধানযোগ্য প্ৰযুক্তিবিদ্যা</translation>
@@ -1804,7 +1790,6 @@
 <translation id="5901630391730855834">হালধীয়া</translation>
 <translation id="5903264686717710770">শিৰোনাম:</translation>
 <translation id="5904360430676679685">পৰিয়াল আৰু সম্পৰ্ক</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" />ৰ মূল নীতি অনুযায়ী অৱৰোধ কৰা হৈছে।</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (ছিংক কৰা আছে)</translation>
 <translation id="59174027418879706">সক্ষম কৰা আছে</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_az.xtb b/components/strings/components_strings_az.xtb
index 519391df..cb9a30b 100644
--- a/components/strings/components_strings_az.xtb
+++ b/components/strings/components_strings_az.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Sabit Ölçülü Şrift</translation>
 <translation id="1763864636252898013">Bu server <ph name="DOMAIN" /> domenini təsdiqləyə bilmədi; onun təhlükəsizlik sertifikatı cihazınızın əməliyyat sistemi tərəfindən doğrulanmayıb. Buna səbəb yanlış konfiqurasiya və ya hücumçu tərəfindən bağlantınızın ələ keçirilməsi ola bilər.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows Şəbəkə Diaqnostikasını işlətməyə çalışın<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Daxil olduğunuz server (<ph name="ORIGIN" />) ona yönləndirilən
-    bütün sorğulara mənbə siyasətin tətbiq edilməsini tələb edən başlıq ayarlayıb. Lakin
-    başlıq yanlış formadadır, bu da brauzerin <ph name="SITE" />
-    üzrə olan sorğunuzu yerinə yetirməsinə mane olur. Mənbə siyasətlər 
-    təhlükəsizlik və digər xüsusiyyətləri konfiqurasiya etmək üçün sayt operatorları tərəfindən istifadə edilə bilər.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium'da Anonim Rejim barədə məlumat<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Açıq tablarınız burada görünür</translation>
@@ -1107,8 +1102,6 @@
 <translation id="3987940399970879459">1 MB-dan az</translation>
 <translation id="3990250421422698716">Kənarını bükün</translation>
 <translation id="3992684624889376114">Bu səhifə haqqında</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> saytı ona yönləndirilən
-    bütün sorğulara mənbə siyasətin tətbiq edilməsini tələb edib, lakin bu siyasət hazırda tətbiq edilə bilmir.</translation>
 <translation id="4006465311664329701">Google Pay istifadə edən Ödəniş Metodları, Təkliflər və Ünvanlar</translation>
 <translation id="4009243425692662128">Çap etdiyiniz səhifələrin məzmunu təhlil üçün Google Cloud və ya üçüncü tərəflərə göndərilir. Məsələn, onlar həssas dataya görə skanlana bilər.</translation>
 <translation id="4010758435855888356">Yaddaşa giriş icazəsi verilsin?</translation>
@@ -1173,10 +1166,6 @@
 <translation id="4202554117186904723">Beşinci Rulon</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />güvənlik divarı və antivirus konfiqurasiyaları yoxlanılır<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Böyük</translation>
-<translation id="4209166701302774460">Daxil olacağınız server <ph name="ORIGIN" />, ona göndərilən bütün giriş sorğulara
-    mənbə siyasətinin tətbiq edilməsini tələb edib. Lakin indi
-    siyasəti icra etmək alınmadı, bu isə brauzerin <ph name="SITE" /> saytı üçün sorğunuzu yerinə yetirməsinə icazə vermir. Mənbə siyasətlər
-    sayt üçün təhlükəsizlik və digər xüsusiyyətləri konfiqurasiya etmək üçün sayt operatorları tərəfindən istifadə edilə bilər.</translation>
 <translation id="4210602799576081649">Doğrulama kodunun müddəti bitib, yeni kod tələb edin</translation>
 <translation id="421066178035138955">Virtual reallıq cihazları və datanı istifadə etmək</translation>
 <translation id="4213305257324635756">Animasiya filmləri</translation>
@@ -1204,7 +1193,6 @@
     &lt;p&gt;Xətanı həll edə bilmirsinizsə, sayt sahibi ilə əlaqə saxlayın.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Şəbəkə Diaqnostikasını İşlətməyə Çalışın<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Saytlar kameranızdan istifadə etmək və onu hərəkət etdirmək üçün icazə istəyə bilər</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> ilə davam edin<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Düzgün</translation>
 <translation id="4250431568374086873">Bu sayta olan bağlantınız tam olaraq güvənli deyil</translation>
 <translation id="4250680216510889253">Yox</translation>
@@ -1408,7 +1396,6 @@
 <translation id="4796594887379589189">İş hesabı ID'si</translation>
 <translation id="4798078619018708837">Kart məlumatlarını yeniləmək üçün <ph name="CREDIT_CARD" /> kartının bitmə tarixini və CVC-ni daxil edin. Təsdiqlədikdən sonra Google Hesabındakı kart məlumatları bu saytda paylaşılacaq.</translation>
 <translation id="4800132727771399293">Bitmə tarixi və CVC nömrəsini yoxlayın və yenidən cəhd edin</translation>
-<translation id="480334179571489655">Mənbə Siyasəti Xətası</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Cihaz adminindən təlimatlar:</translation>
 <translation id="4812751092864334025">Daşına bilən texnologiya</translation>
@@ -1803,7 +1790,6 @@
 <translation id="5901630391730855834">Sarı</translation>
 <translation id="5903264686717710770">Başlıq:</translation>
 <translation id="5904360430676679685">Ailə və münasibətlər</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> təhlükəsizlik siyasətinə əsasən blok edildi.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sinxronlaşdırıldı)</translation>
 <translation id="59174027418879706">Aktiv edilib</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_be.xtb b/components/strings/components_strings_be.xtb
index 1d601adc3..8f8312a 100644
--- a/components/strings/components_strings_be.xtb
+++ b/components/strings/components_strings_be.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Монашырынны шрыфт</translation>
 <translation id="1763864636252898013">Серверу не ўдалося даказаць, што гэта <ph name="DOMAIN" />: аперацыйная сістэма прылады не давярае сертыфікату бяспекі гэтага дамена. Прычынай могуць быць няправільныя налады або зламыснік, які спрабуе перахапіць падключэнне.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Паспрабаваць запусціць дыягностыку сеткі Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Сервер, на які вы пераходзіце (<ph name="ORIGIN" />), мае загаловак, які патрабуе,
-    каб на ўсе запыты да сервера распаўсюджвалася палітыка крыніцы. Аднак
-    фармат загалоўка няправільны, што не дазваляе браўзеру
-    выканаць запыт сайта "<ph name="SITE" />". Палітыкі крыніцы могуць выкарыстоўвацца
-    аператарамі сайтаў для наладжвання бяспекі і іншых уласцівасцей сайта.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Даведацца больш пра рэжым інкогніта ў браўзеры Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Адкрытыя ўкладкі з'явяцца тут</translation>
@@ -1110,8 +1105,6 @@
 <translation id="3987940399970879459">Менш за 1 МБ</translation>
 <translation id="3990250421422698716">Велічыня зруху</translation>
 <translation id="3992684624889376114">Пра гэту старонку</translation>
-<translation id="3996311196211510766">Сайт "<ph name="ORIGIN" />" патрабуе, каб на ўсе запыты да яго распаўсюджвалася
-    палітыка крыніцы, але гэту палітыку зараз прымяніць нельга.</translation>
 <translation id="4006465311664329701">Спосабы аплаты, прапановы і адрасы, якія выкарыстоўваюць Google Pay</translation>
 <translation id="4009243425692662128">Змесціва старонак, якія вы друкуеце, перасылаецца для аналізу ў Google Cloud або староннія сэрвісы (напрыклад, для праверкі на наяўнасць канфідэнцыяльных даных).</translation>
 <translation id="4010758435855888356">Дазволіць доступ да сховішча?</translation>
@@ -1176,11 +1169,6 @@
 <translation id="4202554117186904723">Пяты рулон</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Праверыць канфігурацыю брандмаўэра і антывіруса.<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Вялікі</translation>
-<translation id="4209166701302774460">Сервер, на які вы пераходзіце (<ph name="ORIGIN" />), патрабуе, каб
-    на ўсе запыты да яго распаўсюджвалася палітыка крыніцы. Аднак ён не змог
-    даставіць палітыку, што не дазваляе браўзеру выканаць запыт
-    сайта "<ph name="SITE" />". Палітыкі крыніцы могуць выкарыстоўвацца аператарамі
-    сайтаў для наладжвання бяспекі і іншых уласцівасцей сайта.</translation>
 <translation id="4210602799576081649">Тэрмін дзеяння кода спраўджання скончыўся. Запытайце новы код.</translation>
 <translation id="421066178035138955">Выкарыстоўваць даныя і прылады віртуальнай рэальнасці</translation>
 <translation id="4213305257324635756">Анімацыйныя фільмы</translation>
@@ -1208,7 +1196,6 @@
     &lt;p&gt;Калі праблему вырашыць не ўдалося, звярніцеся да ўладальніка вэб-сайта.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Паспрабаваць запусціць дыягностыку сеткі<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Сайт можа запытваць дазвол на выкарыстанне і перамяшчэнне камеры</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Перайсці на сайт <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Сапраўдны</translation>
 <translation id="4250431568374086873">Ваша падключэнне да гэтага сайта не цалкам бяспечнае</translation>
 <translation id="4250680216510889253">Не</translation>
@@ -1412,7 +1399,6 @@
 <translation id="4796594887379589189">Ідэнтыфікатар уліковага запісу задання</translation>
 <translation id="4798078619018708837">Каб абнавіць даныя карткі, увядзіце дату заканчэння тэрміну дзеяння і код CVC з карткі <ph name="CREDIT_CARD" />. Пасля вашага пацвярджэння даныя карткі з Уліковага запісу Google будуць абагулены з гэтым сайтам.</translation>
 <translation id="4800132727771399293">Праверце тэрмін дзеяння і код CVC, затым паўтарыце спробу.</translation>
-<translation id="480334179571489655">Памылка палітыкі крыніцы</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Інструкцыі ад адміністратара прылады:</translation>
 <translation id="4812751092864334025">Нацельныя тэхналогіі</translation>
@@ -1807,7 +1793,6 @@
 <translation id="5901630391730855834">Жоўты</translation>
 <translation id="5903264686717710770">Назва:</translation>
 <translation id="5904360430676679685">Сям'я і адносіны</translation>
-<translation id="5905445707201418379">Заблакіравана згодна з палітыкай крыніцы "<ph name="ORIGIN" />".</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (сінхранізавана)</translation>
 <translation id="59174027418879706">Уключана</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_bg.xtb b/components/strings/components_strings_bg.xtb
index 0f033ac0..d40baedc 100644
--- a/components/strings/components_strings_bg.xtb
+++ b/components/strings/components_strings_bg.xtb
@@ -335,9 +335,6 @@
 <translation id="1757773103848038814">Непропорционален шрифт</translation>
 <translation id="1763864636252898013">Сървърът не можа да докаже, че е <ph name="DOMAIN" />; операционната система на устройството ви няма доверие на сертификата му за сигурност. Това може да се дължи на неправилно конфигуриране или на прихващане на връзката ви от атакуващ.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Опитайте да стартирате мрежова диагностика в Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Сървърът, който посещавате (<ph name="ORIGIN" />), има зададена заглавка,
-     изискваща за всички заявки към него да се прилага правило за източник. Тя обаче е неправилно образувана, поради което браузърът не може да изпълни заявката ви за <ph name="SITE" />. Операторите на сайтове могат да използват правилата за източник,
-за да конфигурират сигурността и други свойства за даден сайт.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Научете повече за режима „инкогнито“ в Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Тук ще се показват отворените ви раздели</translation>
@@ -1109,8 +1106,6 @@
 <translation id="3987940399970879459">По-малко от 1 МБ</translation>
 <translation id="3990250421422698716">Разделно офсетово отпечатване</translation>
 <translation id="3992684624889376114">Всичко за тази страница</translation>
-<translation id="3996311196211510766">Сайтът <ph name="ORIGIN" /> изисква за всички заявки към него
-да се прилага правило за източник, но понастоящем то не може да бъде приложено.</translation>
 <translation id="4006465311664329701">Начини на плащане, оферти и адреси посредством Google Pay</translation>
 <translation id="4009243425692662128">Съдържанието на страниците, които отпечатвате, се изпраща до Google Cloud или трети страни за анализ. Възможно е например да бъдат сканирани за чувствителни данни.</translation>
 <translation id="4010758435855888356">Да се разреши ли достъпът до хранилището?</translation>
@@ -1175,11 +1170,6 @@
 <translation id="4202554117186904723">Пета ролка</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Проверете конфигурацията на защитната стена и антивирусния софтуер<ph name="END_LINK" />.</translation>
 <translation id="4209092469652827314">Голям</translation>
-<translation id="4209166701302774460">Сървърът, който посещавате (<ph name="ORIGIN" />), изисква
-за всички заявки към него да се прилага правило за източник. Той обаче
-не успя да предостави правило, поради което браузърът не може да изпълни
-заявката ви за <ph name="SITE" />. Операторите на сайтове могат да използват правилата за източник,
-за да конфигурират сигурността и други свойства за даден сайт.</translation>
 <translation id="4210602799576081649">Кодът за потвърждение е изтекъл. Заявете нов</translation>
 <translation id="421066178035138955">Използва устройствата и данните за виртуална реалност</translation>
 <translation id="4213305257324635756">Анимационни филми</translation>
@@ -1207,7 +1197,6 @@
 &lt;p&gt;Ако продължавате да виждате грешката, свържете се със собственика на уебсайта.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Опитайте да стартирате мрежова диагностика<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Може да поиска разрешение да използва и мести камерата ви</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Продължаване към <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Валиден сертификат</translation>
 <translation id="4250431568374086873">Връзката ви с този сайт не е напълно защитена</translation>
 <translation id="4250680216510889253">Не</translation>
@@ -1411,7 +1400,6 @@
 <translation id="4796594887379589189">Идентификатор за отчитане на задания</translation>
 <translation id="4798078619018708837">Въведете датата на валидност и кода за проверка за <ph name="CREDIT_CARD" />, за да актуализирате данните за картата си. След като я потвърдите, данните за нея от профила ви в Google ще бъдат споделени с този сайт.</translation>
 <translation id="4800132727771399293">Прегледайте датата на валидност и кода за проверка и оптитайте отново</translation>
-<translation id="480334179571489655">Грешка поради правило на източника</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Инструкции от администратора на устройството ви:</translation>
 <translation id="4812751092864334025">Носими технологии</translation>
@@ -1806,7 +1794,6 @@
 <translation id="5901630391730855834">жълто</translation>
 <translation id="5903264686717710770">Заглавие:</translation>
 <translation id="5904360430676679685">Семейство и връзки</translation>
-<translation id="5905445707201418379">Блокирано според правилото за източник на <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (синхронизирано)</translation>
 <translation id="59174027418879706">Активирано</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_bn.xtb b/components/strings/components_strings_bn.xtb
index 0cc1627..79fa055 100644
--- a/components/strings/components_strings_bn.xtb
+++ b/components/strings/components_strings_bn.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace ফন্ট</translation>
 <translation id="1763864636252898013">এই সার্ভার প্রমাণ করতে পারেনি যে এটি <ph name="DOMAIN" />; এর নিরাপত্তা সার্টিফিকেটটি আপনার ডিভােইসের নিকট বিশ্বাসযোগ্য নয়। কোনো ভুল কনফিগারেশনের কারণে অথবা কোনো আক্রমণকারী আপনার সংযোগ মাঝপথে আটকে দিচ্ছে বলে এমনটা হতে পারে।</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows নেটওয়ার্ক ডায়গনিস্টিক্স চালিয়ে দেখুন<ph name="END_LINK" />।</translation>
-<translation id="1772163372082567643">আপনি যে সার্ভারটি <ph name="ORIGIN" /> অ্যাক্সেস করতে চলেছেন, সেটিতে একটি হেডার সেট করা আছে
-    এবং সেই কারণে সেটিতে করা সমস্ত অনুরোধের ক্ষেত্রে একটি 'অরিজিন নীতি' প্রয়োগ করা হবে। কিন্তু
-    হেডারটি সঠিকভাবে কাজ করছে না, তাই ব্রাউজার আপনার অনুরোধ অনুযায়ী <ph name="SITE" />-এর
-     সাথে যোগাযোগ বা তা অ্যাক্সেস করতে পারছে না। সাইট অপারেটর কোনও সাইটের
-    নিরাপত্তা ও অন্যান্য প্রপার্টি কনফিগার করতে 'অরিজিন নীতি' ব্যবহার করতে পারে।</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium-এ ছদ্মবেশী মোডের বিষয়ে আরও জানুন<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">আপনার খোলা ট্যাবগুলি এখানে দেখা যাবে</translation>
@@ -1112,8 +1107,6 @@
 <translation id="3987940399970879459">১ এমবির কম</translation>
 <translation id="3990250421422698716">জগ অফসেট</translation>
 <translation id="3992684624889376114">এই পৃষ্ঠা সম্পর্কে</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> সাইট থেকে অনুরোধ করা হয়েছে যে এতে করা সমস্ত অনুরোধের ক্ষেত্রে
-    একটি 'অরিজিন নীতি' প্রয়োগ করা হোক, কিন্তু বর্তমানে এই নীতি কার্যকর করা যাচ্ছে না।</translation>
 <translation id="4006465311664329701">Google Pay-এর সাথে যুক্ত 'পেমেন্ট পদ্ধতি', 'অফার' ও 'ঠিকানা'</translation>
 <translation id="4009243425692662128">আপনার প্রিন্ট করা পৃষ্ঠার কন্টেন্ট বিশ্লেষণের জন্য Google Cloud বা থার্ড-পার্টিকে পাঠানো হয়েছে। যেমন, কোনও সংবেদনশীল ডেটা আছে কিনা জানার জন্য এটি হয়ত স্ক্যান করা হতে পারে।</translation>
 <translation id="4010758435855888356">স্টোরেজ অ্যাক্সেসের অনুমতি দেবেন?</translation>
@@ -1178,11 +1171,6 @@
 <translation id="4202554117186904723">Fifth Roll</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ফায়ারওয়াল এবং অ্যান্টিভাইরাস কনফিগারেশন পরীক্ষা করে দেখুন<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">বৃহত্</translation>
-<translation id="4209166701302774460">আপনি যে সার্ভারটি <ph name="ORIGIN" /> অ্যাক্সেস করতে চলেছেন, সেটিতে অনুরোধ করা হয়েছে যে
-    সেটিতে করা সমস্ত অনুরোধের ক্ষেত্রে একটি 'অরিজিন নীতি' প্রয়োগ করা হোক। কিন্তু এটি এখন
-     কোনও নীতি পাঠাতে পারেনি, তাই ব্রাউজার আপনার অনুরোধ অনুযায়ী <ph name="SITE" />-এর সাথে যোগাযোগ বা তা অ্যাক্সেস
-     করতে পারছে না। সাইট অপারেটর কোনও সাইটের
-    নিরাপত্তা ও অন্যান্য প্রপার্টি কনফিগার করতে 'অরিজিন নীতি' ব্যবহার করতে পারে।</translation>
 <translation id="4210602799576081649">যাচাইকরণ কোডের মেয়াদ শেষ হয়েছে, একটি নতুন কোডের জন্য অনুরোধ জানান</translation>
 <translation id="421066178035138955">ভার্চুয়াল রিয়েলিটি ডিভাইস ও ডেটা ব্যবহার করার অনুমতি</translation>
 <translation id="4213305257324635756">অ্যানিমেটেড সিনেমা</translation>
@@ -1210,7 +1198,6 @@
     &lt;p&gt;এই ধাপগুলি অনুসরণ করার পরেও যদি একই সমস্যা হতে থাকে তাহলে ওয়েবসাইটের মালিকের সাথে যোগযোগ করুন।&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />নেটওয়ার্ক ডায়গনিস্টিক্স চালিয়ে দেখুন<ph name="END_LINK" />।</translation>
 <translation id="4230204356098880324">ক্যামেরা ব্যবহার করতে এবং সরাতে অনুমতি চাইতে পারে</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> সাইটে যান<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">সঠিক</translation>
 <translation id="4250431568374086873">এই সাইটে আপনার সংযোগ সম্পূর্ণরূপে নিরাপদ নয়</translation>
 <translation id="4250680216510889253">না</translation>
@@ -1414,7 +1401,6 @@
 <translation id="4796594887379589189">জব অ্যাকাউন্টের আইডি</translation>
 <translation id="4798078619018708837">আপনার কার্ডের বিবরণ আপডেট করতে <ph name="CREDIT_CARD" />-এর মেয়াদ শেষের তারিখ এবং সিভিসি লিখুন। আপনি কনফার্ম করার পর আপনার Google অ্যাকাউন্ট থেকে কার্ডের বিবরণ এই সাইটে শেয়ার করা হবে।</translation>
 <translation id="4800132727771399293">Check your expiration date and CVC and try again</translation>
-<translation id="480334179571489655">আসল নীতি সংক্রান্ত সমস্যা</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">আপনার ডিভাইস অ্যাডমিনিস্ট্রেটরের থেকে পাওয়া নির্দেশাবলী:</translation>
 <translation id="4812751092864334025">পরে থাকা যায় এমন প্রযুক্তি</translation>
@@ -1809,7 +1795,6 @@
 <translation id="5901630391730855834">হলুদ</translation>
 <translation id="5903264686717710770">শিরোনাম:</translation>
 <translation id="5904360430676679685">পরিবার ও সম্পর্ক</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> সার্ভারের 'অরিজিন নীতি' অনুযায়ী ব্লক করা হয়েছে।</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (সিঙ্ক হয়েছে)</translation>
 <translation id="59174027418879706">সক্ষমিত</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_bs.xtb b/components/strings/components_strings_bs.xtb
index a5964a0e..d6444e6 100644
--- a/components/strings/components_strings_bs.xtb
+++ b/components/strings/components_strings_bs.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Font fiksnog razmaka</translation>
 <translation id="1763864636252898013">Ovaj server nije mogao potvrditi da je ovo domena <ph name="DOMAIN" />. Operativni sistem vašeg uređaja ne smatra njenu potvrdu sigurnosti pouzdanom. Uzrok može biti u pogrešnoj konfiguraciji ili da je napadač presreo vašu vezu.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Probajte pokrenuti Windows mrežnu dijagnostiku<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Server na koji idete, <ph name="ORIGIN" />, ima zaglavlje
-    koje traži da se izvorno pravilo primijeni na sve zahtjeve upućene njemu. Ali
-    zaglavlje je neispravno što sprečava preglednik da ispuni
-    vaš zahtjev za web lokaciju <ph name="SITE" />. Operateri web lokacija mogu koristiti izvorna pravila
-    za konfiguriranje sigurnosti i drugih osobina web lokacije.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Saznajte više o anonimnom načinu rada u Chromiumu<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Ovdje se prikazuju vaše otvorene kartice</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Manje od 1 MB</translation>
 <translation id="3990250421422698716">Odvajanje dokumenata</translation>
 <translation id="3992684624889376114">O ovoj stranici</translation>
-<translation id="3996311196211510766">Web lokacija <ph name="ORIGIN" /> je zatražila da se izvorno pravilo
-    primijeni na sve zahtjeve upućenje njoj, ali ovo se pravilo trenutno ne može primijeniti.</translation>
 <translation id="4006465311664329701">Načini plaćanja, ponude i adrese iz Google Paya</translation>
 <translation id="4009243425692662128">Sadržaj stranica koje štampate se šalje na analizu u Google Cloud ili trećim stranama. Naprimjer, može se skenirati radi otkrivanja postojanja osjetljivih podataka.</translation>
 <translation id="4010758435855888356">Dozvoliti pristup pohrani?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Peta rolna</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Provjeriti konfiguracije zaštitnog zida i antivirusa<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Veliki</translation>
-<translation id="4209166701302774460">Server na koji idete, <ph name="ORIGIN" />, zatražio je da se
-    izvorno pravilo primijeni na sve zahtjeve upućene njemu. Ali sada nije uspio
-    isporučiti pravila, što sprečava preglednik da ispuni vaš zahtjev
-    za web lokaciju <ph name="SITE" />. Operateri web lokacija mogu koristiti izvorna pravila
-    za konfiguriranje sigurnosti i drugih osobina web lokacije.</translation>
 <translation id="4210602799576081649">Kôd za potvrdu je istekao. Zatražite novi</translation>
 <translation id="421066178035138955">Koristi uređaje za virtuelnu realnost i podatke</translation>
 <translation id="4213305257324635756">Animirani filmovi</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Ako se greška još uvijek prikazuje, obratite se vlasniku web lokacije.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Pokušajte pokrenuti dijagnostiku mreže<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Može tražiti da koristi i pomjera kameru</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Nastavite na web lokaciju <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Važeća</translation>
 <translation id="4250431568374086873">Veza s ovom web-lokacijom nije potpuno sigurna</translation>
 <translation id="4250680216510889253">Ne</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">ID računa za posao</translation>
 <translation id="4798078619018708837">Unesite datum isteka i CVC za <ph name="CREDIT_CARD" /> da ažurirate detalje kreditne kartice. Nakon vaše potvrde, detalji o kartici s vašeg Google računa će se dijeliti s ovom web lokacijom.</translation>
 <translation id="4800132727771399293">Provjerite datum isteka i CVC pa pokušajte ponovo</translation>
-<translation id="480334179571489655">Pogreška izvornog pravila</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Uputstva administratora uređaja:</translation>
 <translation id="4812751092864334025">Nosivi uređaji</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Žuta</translation>
 <translation id="5903264686717710770">Naslov:</translation>
 <translation id="5904360430676679685">Porodica i međuljudski odnosi</translation>
-<translation id="5905445707201418379">Blokirano prema izvornim pravilima koja određuje izvor <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sinhronizirano)</translation>
 <translation id="59174027418879706">Omogućeno</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ca.xtb b/components/strings/components_strings_ca.xtb
index 7905b7b..bca9bd33 100644
--- a/components/strings/components_strings_ca.xtb
+++ b/components/strings/components_strings_ca.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Tipus de lletra monoespaiada</translation>
 <translation id="1763864636252898013">Aquest servidor no ha pogut comprovar que sigui <ph name="DOMAIN" /> perquè el sistema operatiu del vostre dispositiu considera que el seu certificat de seguretat no és de confiança. Això pot ser a causa d'una configuració incorrecta o d'un atacant que intercepta la vostra connexió.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Prova d'executar el diagnòstic de xarxes de Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">El servidor de destinació, <ph name="ORIGIN" />, ha establert una capçalera en què se sol·licita que s'apliqui una política d'origen a totes les sol·licituds que rebi. Tanmateix, com que la capçalera no està ben formada, el navegador no pot completar la sol·licitud que has fet per a <ph name="SITE" />. Els operadors de llocs web poden fer servir les polítiques d'origen per configurar la seguretat i altres propietats d'un lloc web.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Més informació sobre el mode d'incògnit a Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Les pestanyes obertes es mostren aquí</translation>
@@ -1107,7 +1106,6 @@
 <translation id="3987940399970879459">Menys d'1 MB</translation>
 <translation id="3990250421422698716">Jog offset</translation>
 <translation id="3992684624889376114">Sobre aquesta pàgina</translation>
-<translation id="3996311196211510766">El lloc web <ph name="ORIGIN" /> ha sol·licitat que s'apliqui una política d'origen a totes les sol·licituds que rebi, però en aquest moment aquesta política no es pot aplicar.</translation>
 <translation id="4006465311664329701">Formes de pagament, ofertes i adreces que fan servir Google Pay</translation>
 <translation id="4009243425692662128">El contingut de les pàgines que imprimeixes s'envia a Google Cloud o a tercers perquè l'analitzin. Per exemple, pot ser que s'analitzi per detectar-hi dades sensibles.</translation>
 <translation id="4010758435855888356">Vols permetre l'accés a l'emmagatzematge?</translation>
@@ -1172,7 +1170,6 @@
 <translation id="4202554117186904723">Cinquè corró</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Comproveu la configuració del tallafoc i de l'antivirus<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Gran</translation>
-<translation id="4209166701302774460">El servidor de destinació, <ph name="ORIGIN" />, ha sol·licitat que s'apliqui una política d'origen a totes les sol·licituds que rebi. Tanmateix, no ha proporcionat cap política, de manera que el navegador no pot completar la sol·licitud que has fet per a <ph name="SITE" />. Els operadors de llocs web poden fer servir les polítiques d'origen per configurar la seguretat i altres propietats d'un lloc web.</translation>
 <translation id="4210602799576081649">El codi de verificació ha caducat; sol·licita'n un de nou</translation>
 <translation id="421066178035138955">Utilitza dades i dispositius de realitat virtual</translation>
 <translation id="4213305257324635756">Pel·lícules d'animació</translation>
@@ -1200,7 +1197,6 @@
     &lt;p&gt;Si encara veieu l'error, contacteu amb el propietari del lloc web.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Prova d'executar el diagnòstic de xarxes<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Pot demanar permís per utilitzar i moure la càmera</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Ves a <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Vàlid</translation>
 <translation id="4250431568374086873">La connexió amb aquest lloc web no és del tot segura</translation>
 <translation id="4250680216510889253">No</translation>
@@ -1404,7 +1400,6 @@
 <translation id="4796594887379589189">Identificador de compte de treball</translation>
 <translation id="4798078619018708837">Introdueix la data de caducitat i el CVC de la targeta <ph name="CREDIT_CARD" /> per actualitzar-ne la informació. Un cop confirmada, la informació de la targeta del Compte de Google es compartirà amb aquest lloc web.</translation>
 <translation id="4800132727771399293">Comproveu la data de caducitat i el CVC i torneu-ho a provar</translation>
-<translation id="480334179571489655">Error de la política d'origen</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Instruccions de l'administrador del dispositiu:</translation>
 <translation id="4812751092864334025">Tecnologia connectada</translation>
@@ -1799,7 +1794,6 @@
 <translation id="5901630391730855834">Groc</translation>
 <translation id="5903264686717710770">Títol:</translation>
 <translation id="5904360430676679685">Família i relacions</translation>
-<translation id="5905445707201418379">S'ha bloquejat d'acord amb la política d'origen de: <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (informació sincronitzada)</translation>
 <translation id="59174027418879706">Activat</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_cs.xtb b/components/strings/components_strings_cs.xtb
index 330857b..7e3f9e75 100644
--- a/components/strings/components_strings_cs.xtb
+++ b/components/strings/components_strings_cs.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Písmo s pevnou šířkou</translation>
 <translation id="1763864636252898013">Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Operační systém vašeho zařízení nedůvěřuje jeho bezpečnostnímu certifikátu. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Zkuste spustit Diagnostiku sítě systému Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Server, na který přecházíte (<ph name="ORIGIN" />), nastavil záhlaví, které vyžaduje, aby se na všechny na něj odesílané požadavky vztahovaly zásady ohledně původu. Záhlaví má ale nesprávný tvar. Prohlížeč proto váš požadavek na web <ph name="SITE" /> nemůže splnit. Zásady ohledně původu mohou použít provozovatelé webů ke konfiguraci bezpečnostních a dalších vlastností webu.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Další informace o anonymním režimu v prohlížeči Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Zde se zobrazí otevřené karty</translation>
@@ -1103,7 +1102,6 @@
 <translation id="3987940399970879459">Méně než 1 MB</translation>
 <translation id="3990250421422698716">Běžící odsazení</translation>
 <translation id="3992684624889376114">O této stránce</translation>
-<translation id="3996311196211510766">Web <ph name="ORIGIN" /> požádal, aby se na všechny na něj odesílané požadavky vztahovaly zásady ohledně původu, ale tyto zásady momentálně nelze použít.</translation>
 <translation id="4006465311664329701">Platební metody, nabídky a adresy z Google Pay</translation>
 <translation id="4009243425692662128">Obsah tisknutých stránek se odesílá do služby Google Cloud nebo třetím stranám k analýze. Může například projít kontrolou přítomnosti citlivých údajů.</translation>
 <translation id="4010758435855888356">Povolit přístup k úložišti?</translation>
@@ -1168,7 +1166,6 @@
 <translation id="4202554117186904723">Pátá role</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Zkontrolovat konfiguraci firewallu a antivirového softwaru<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Velké</translation>
-<translation id="4209166701302774460">Server, na který přecházíte (<ph name="ORIGIN" />), požádal, aby se na všechny na něj odesílané požadavky vztahovaly zásady ohledně původu. Nyní však zásady nedodal, a prohlížeč proto váš požadavek na web <ph name="SITE" /> nemůže splnit. Zásady ohledně původu mohou použít provozovatelé webů ke konfiguraci bezpečnostních a dalších vlastností webu.</translation>
 <translation id="4210602799576081649">Platnost ověřovacího kódu vypršela, požádejte o nový</translation>
 <translation id="421066178035138955">Používat zařízení a data pro virtuální realitu</translation>
 <translation id="4213305257324635756">Animované filmy</translation>
@@ -1196,7 +1193,6 @@
     &lt;p&gt;Pokud se chyba zobrazuje i nadále, kontaktujte vlastníka webu.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Zkuste spustit Diagnostiku sítě<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Může žádat o použití a pohybování kamerou</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Pokračovat na <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Platný</translation>
 <translation id="4250431568374086873">Spojení s tímto webem není plně zabezpečené</translation>
 <translation id="4250680216510889253">Ne</translation>
@@ -1400,7 +1396,6 @@
 <translation id="4796594887379589189">ID účtu úlohy</translation>
 <translation id="4798078619018708837">Chcete-li aktualizovat údaje o kartě, zadejte datum vypršení platnosti a kód CVC karty <ph name="CREDIT_CARD" />. Po potvrzení budou údaje o kartě z vašeho účtu Google poskytnuty tomuto webu.</translation>
 <translation id="4800132727771399293">Zkontrolujte datum vypršení platnosti a kód CVC a zkuste to znovu.</translation>
-<translation id="480334179571489655">Chyba zásad ohledně původu</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Pokyny od správce zařízení:</translation>
 <translation id="4812751092864334025">Nositelná technika</translation>
@@ -1795,7 +1790,6 @@
 <translation id="5901630391730855834">Žlutá</translation>
 <translation id="5903264686717710770">Název:</translation>
 <translation id="5904360430676679685">Rodina a vztahy</translation>
-<translation id="5905445707201418379">Zablokováno na základě zásad webu <ph name="ORIGIN" /> ohledně původu.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synchronizováno)</translation>
 <translation id="59174027418879706">Povoleno</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_cy.xtb b/components/strings/components_strings_cy.xtb
index aa0f3a6..5918448 100644
--- a/components/strings/components_strings_cy.xtb
+++ b/components/strings/components_strings_cy.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Ffont Lled Sefydlog</translation>
 <translation id="1763864636252898013">Ni allai'r gweinydd hwn brofi ei fod yn <ph name="DOMAIN" />; nid yw system weithredu eich dyfais yn ymddiried yn ei dystysgrif ddiogelwch. Gall hyn gael ei achosi gan gamffurfweddiad neu ymosodwr yn rhyng-gipio'ch cysylltiad.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Rhowch gynnig ar redeg Diagnosteg Rhwydwaith Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Mae'r gweinydd rydych yn mynd iddo, <ph name="ORIGIN" />, wedi gosod pennawd
-    sy'n ei gwneud yn ofynnol i bolisi tarddiad gael ei gymhwyso i bob cais iddo. Ond
-    mae'r pennawd wedi'i gamffurfio, sy'n atal y porwr rhag cyflawni
-    eich cais ar gyfer <ph name="SITE" />. Gall gweithredwyr gwefannau ddefnyddio
-    polisïau tarddiad i ffurfweddu diogelwch a phriodweddau eraill ar gyfer gwefan.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Dysgu rhagor am y modd Anhysbys yn Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Mae eich tabiau sydd ar agor yn ymddangos yma</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Llai nag 1 MB</translation>
 <translation id="3990250421422698716">Gwrthbwyso loncian</translation>
 <translation id="3992684624889376114">Ynghylch y dudalen hon</translation>
-<translation id="3996311196211510766">Mae'r wefan <ph name="ORIGIN" /> wedi gofyn bod polisi tarddiad
-    yn berthnasol i bob cais iddo, ond ar hyn o bryd ni ellir cymhwyso'r polisi hwn.</translation>
 <translation id="4006465311664329701">Dulliau Talu, Cynigion a Chyfeiriadau sy'n defnyddio Google Pay</translation>
 <translation id="4009243425692662128">Anfonir y cynnwys o dudalennau rydych yn eu hargraffu at Google Cloud neu drydydd partïon i'w dadansoddi. Er enghraifft, mae'n bosib y bydd yn cael ei sganio am ddata sensitif neu ddrwgwedd.</translation>
 <translation id="4010758435855888356">Caniatáu mynediad at y storfa?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Pumed Rôl</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Gwirio ffurfweddiadau wal dân a gwrthfeirysau<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Mawr</translation>
-<translation id="4209166701302774460">Mae'r gweinydd rydych yn mynd iddo, <ph name="ORIGIN" />, wedi gofyn i
-    bolisi tarddiad gael ei gymhwyso i bob cais. Ond mae bellach wedi methu
-    â chyflawni polisi, sy'n atal y porwr rhag cyflawni'ch gofynion
-    ar gyfer <ph name="SITE" />. Gall gweithredwyr gwefannau ddefnyddio
-    polisïau tarddiad i ffurfweddu diogelwch a phriodweddau eraill ar gyfer gwefan.</translation>
 <translation id="4210602799576081649">Mae'r cod dilysu wedi darfod, gofynnwch am god newydd</translation>
 <translation id="421066178035138955">Defnyddiwch ddyfeisiau a data rhithwirionedd</translation>
 <translation id="4213305257324635756">Ffilmiau animeiddiedig</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Os ydych yn parhau i weld y gwall, cysylltwch â pherchennog y wefan.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Rhowch gynnig ar redeg Diagnosteg Rhwydwaith<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Yn gallu gofyn am ddefnyddio a symud eich camera</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Parhau i <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Dilys</translation>
 <translation id="4250431568374086873">Nid yw eich cysylltiad â'r wefan hon yn gwbl ddiogel</translation>
 <translation id="4250680216510889253">Na</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Rhif adnabod cyfrif swydd</translation>
 <translation id="4798078619018708837">Rhowch y dyddiad darfod a'r CVC ar gyfer <ph name="CREDIT_CARD" /> i ddiweddaru manylion eich cerdyn. Ar ôl i chi gadarnhau, bydd manylion cardiau o'ch Cyfrif Google yn cael eu rhannu â'r wefan hon.</translation>
 <translation id="4800132727771399293">Gwiriwch eich dyddiad darfod a'ch CGS a rhowch gynnig arall arni</translation>
-<translation id="480334179571489655">Gwall Polisi Tarddiad</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Cyfarwyddiadau gan weinyddwr eich dyfais:</translation>
 <translation id="4812751092864334025">Technoleg gwisgadwy</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Melyn</translation>
 <translation id="5903264686717710770">Teitl:</translation>
 <translation id="5904360430676679685">Teulu a pherthnasoedd</translation>
-<translation id="5905445707201418379">Wedi'i rwystro yn unol â pholisi tarddiad <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (cysonwyd)</translation>
 <translation id="59174027418879706">Galluogwyd</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_da.xtb b/components/strings/components_strings_da.xtb
index 7afe463..be8029a 100644
--- a/components/strings/components_strings_da.xtb
+++ b/components/strings/components_strings_da.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Skrifttype med enkelt tegnafstand</translation>
 <translation id="1763864636252898013">Denne server kunne ikke bevise, at den er <ph name="DOMAIN" />, da operativsystemet på din enhed ikke har tillid til sikkerhedscertifikatet. Dette kan skyldes en fejlkonfiguration, eller at en hacker har opfanget din forbindelse.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Prøv at køre Windows Netværksdiagnosticering<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Den server, du er på vej til, <ph name="ORIGIN" />, har angivet en header,
-     som kræver, at der anvendes en politik for oprindelse på alle anmodninger, der sendes til den. Der er dog
-    en fejl i headeren, som forhindrer browseren i at opfylde
-    din anmodning til <ph name="SITE" />. Politikker for oprindelse kan anvendes af
-    websiteoperatorer til at konfigurere sikkerhed og andre egenskaber for et website.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Få flere oplysninger om inkognitotilstand i Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Dine åbne faner vises her</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Mindre end 1 MB</translation>
 <translation id="3990250421422698716">Langsom offsetkørsel</translation>
 <translation id="3992684624889376114">Om denne side</translation>
-<translation id="3996311196211510766">Websitet <ph name="ORIGIN" /> har anmodet om, at en politik for oprindelse
-    skal gælde for alle anmodninger til websitet, men i øjeblikket kan denne politik ikke anvendes.</translation>
 <translation id="4006465311664329701">Betalingsmetoder, tilbud og adresser, der bruger Google Pay</translation>
 <translation id="4009243425692662128">Indholdet på de sider, du udskriver, sendes til analyse i Google Cloud eller hos tredjeparter. Tekst kan f.eks. blive scannet for følsomme oplysninger.</translation>
 <translation id="4010758435855888356">Vil du give adgang til lagerpladsen?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Femte papirrulle</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Tjekke firewall- og antiviruskonfigurationer<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Stor</translation>
-<translation id="4209166701302774460">Den server, du er på vej til, <ph name="ORIGIN" />, har anmodet om, at
-    der anvendes en politik for oprindelse på alle anmodninger, der sendes til den. Det er dog nu
-    mislykkedes at levere en politik, hvilket forhindrer browseren i at opfylde
-    din anmodning til <ph name="SITE" />. Politikker for oprindelse kan anvendes af
-    websiteoperatorer til at konfigurere sikkerhed og andre egenskaber for et website.</translation>
 <translation id="4210602799576081649">Bekræftelseskoden udløb. Anmod om en ny kode.</translation>
 <translation id="421066178035138955">Anvende virtual reality-enheder og -data</translation>
 <translation id="4213305257324635756">Animationsfilm</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Hvis fejlen stadig vises, bør du kontakte ejeren af websitet.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Prøv at køre Netværksdiagnosticering<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Websitet kan anmode om tilladelse til at bruge og bevæge dit kamera</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Fortsæt til <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Gyldig</translation>
 <translation id="4250431568374086873">Din forbindelse til dette website er ikke helt sikker</translation>
 <translation id="4250680216510889253">Nej</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Jobkonto-id</translation>
 <translation id="4798078619018708837">Opdater dine kortoplysninger ved at indtaste udløbsdatoen og kontrolkoden for <ph name="CREDIT_CARD" />. Når du bekræfter, deles kortoplysningerne på din Google-konto med dette website.</translation>
 <translation id="4800132727771399293">Kontrollér, om din kontrolkode og udløbsdato er korrekte, og prøv igen.</translation>
-<translation id="480334179571489655">Fejl i politik med samme oprindelse</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Vejledninger fra din enhedsadministrator:</translation>
 <translation id="4812751092864334025">Teknologi til at tage på</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Gul</translation>
 <translation id="5903264686717710770">Titel:</translation>
 <translation id="5904360430676679685">Familie og forhold</translation>
-<translation id="5905445707201418379">Blokeret i overensstemmelse med oprindelsespolitikken for <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synkroniseret)</translation>
 <translation id="59174027418879706">Aktiveret</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_de.xtb b/components/strings/components_strings_de.xtb
index 0c7dd17f..30d968c 100644
--- a/components/strings/components_strings_de.xtb
+++ b/components/strings/components_strings_de.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Dicktengleiche Schrift</translation>
 <translation id="1763864636252898013">Dieser Server konnte nicht beweisen, dass er <ph name="DOMAIN" /> ist. Sein Sicherheitszertifikat wird vom Betriebssystem deines Geräts als nicht vertrauenswürdig eingestuft. Mögliche Gründe sind eine fehlerhafte Konfiguration oder ein Angreifer, der deine Verbindung abfängt.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Versuche, die Windows-Netzwerkdiagnose auszuführen.<ph name="END_LINK" /></translation>
-<translation id="1772163372082567643">Der Server <ph name="ORIGIN" />, zu dem du gehst, verlangt in einer Header-Datei, dass auf alle an ihn gerichteten Anfragen eine Ursprungsrichtlinie angewendet wird. Die Header-Datei ist allerdings fehlerhaft. Daher kann der Browser deine Anforderung für <ph name="SITE" /> nicht ausführen. Ursprungsrichtlinien können von Websitebetreibern verwendet werden, um die Sicherheit und andere Eigenschaften einer Website zu konfigurieren.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Weitere Informationen zum Inkognitomodus in Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Hier werden deine offenen Tabs angezeigt</translation>
@@ -1105,7 +1104,6 @@
 <translation id="3987940399970879459">Weniger als 1 MB</translation>
 <translation id="3990250421422698716">Jog-Versatz</translation>
 <translation id="3992684624889376114">Über diese Seite</translation>
-<translation id="3996311196211510766">Die Website <ph name="ORIGIN" /> verlangt, dass auf alle an sie gerichteten Anfragen eine Ursprungsrichtlinie angewendet wird. Diese Richtlinie kann jedoch momentan nicht angewandt werden.</translation>
 <translation id="4006465311664329701">Zahlungsmethoden, Angebote und Adressen aus Google Pay</translation>
 <translation id="4009243425692662128">Die Inhalt der gedruckten Seiten wird zur Analyse an Google Cloud oder Drittanbieter gesendet. Er wird beispielsweise auf sensible Daten geprüft.</translation>
 <translation id="4010758435855888356">Zugriff auf Speicher erlauben?</translation>
@@ -1170,7 +1168,6 @@
 <translation id="4202554117186904723">Fünfte Rolle</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Firewall und Antivirenkonfiguration prüfen<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Groß</translation>
-<translation id="4209166701302774460">Der Server <ph name="ORIGIN" />, zu dem du gehst, verlangt, dass auf alle an ihn gerichteten Anfragen eine Ursprungsrichtlinie angewendet wird. Er hat jedoch keine Richtlinie übergeben, was den Browser daran hindert, deine Anfrage für <ph name="SITE" /> auszuführen. Ursprungsrichtlinien können von Websitebetreibern verwendet werden, um die Sicherheit und andere Eigenschaften einer Website zu konfigurieren.</translation>
 <translation id="4210602799576081649">Bestätigungscode abgelaufen, fordere einen neuen an</translation>
 <translation id="421066178035138955">Virtual-Reality-Geräte und ‑Daten verwenden</translation>
 <translation id="4213305257324635756">Animationsfilme</translation>
@@ -1198,7 +1195,6 @@
     &lt;p&gt;Wende dich an den Websiteinhaber, wenn der Fehler noch immer angezeigt wird.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Versuche, die Netzwerkdiagnose auszuführen.<ph name="END_LINK" /></translation>
 <translation id="4230204356098880324">Darf nachfragen, wenn sie meine Kamera verwenden und bewegen möchte</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Weiter zu <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Gültig</translation>
 <translation id="4250431568374086873">Die Verbindung zu dieser Website ist nicht uneingeschränkt sicher</translation>
 <translation id="4250680216510889253">Nein</translation>
@@ -1402,7 +1398,6 @@
 <translation id="4796594887379589189">Konto-ID des Auftrags</translation>
 <translation id="4798078619018708837">Gib das Ablaufdatum und die Kartenprüfnummer (CVC) für <ph name="CREDIT_CARD" /> ein, um deine Kartendetails zu aktualisieren. Nach erfolgter Bestätigung werden die Kartendetails deines Google-Kontos an diese Website weitergegeben.</translation>
 <translation id="4800132727771399293">Prüfe das Ablaufdatum und deinen CVC und versuche es dann noch einmal.</translation>
-<translation id="480334179571489655">Fehler bezüglich Ursprungsrichtlinie</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Anweisungen des Geräteadministrators:</translation>
 <translation id="4812751092864334025">Am Körper tragbare Technologie</translation>
@@ -1797,7 +1792,6 @@
 <translation id="5901630391730855834">Gelb</translation>
 <translation id="5903264686717710770">Titel:</translation>
 <translation id="5904360430676679685">Familie und Beziehungen</translation>
-<translation id="5905445707201418379">Gemäß der Ursprungsrichtlinie von <ph name="ORIGIN" /> blockiert.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synchronisiert)</translation>
 <translation id="59174027418879706">Aktiviert</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_el.xtb b/components/strings/components_strings_el.xtb
index 7479276..3eec3c1 100644
--- a/components/strings/components_strings_el.xtb
+++ b/components/strings/components_strings_el.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Γραμματοσειρά Monospace</translation>
 <translation id="1763864636252898013">Ο διακομιστής δεν μπόρεσε να αποδείξει ότι είναι <ph name="DOMAIN" />. Το πιστοποιητικό ασφαλείας του δεν θεωρείται έμπιστο από το λειτουργικό σύστημα της συσκευής σας. Αυτό μπορεί να οφείλεται σε λανθασμένη ρύθμιση ή σε κάποιον τρίτο που επιτίθεται στη σύνδεσή σας.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Δοκιμάστε να εκτελέσετε τον Διαγνωστικό έλεγχο δικτύου των Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Ο διακομιστής στον οποίο μεταβαίνετε, <ph name="ORIGIN" />, έχει ορίσει μια κεφαλίδα
-    που απαιτεί την εφαρμογή μιας πολιτικής προέλευσης σε όλα τα αιτήματα που δέχεται. Ωστόσο,
-    η κεφαλίδα είναι εσφαλμένη, κάτι που αποτρέπει την εκπλήρωση του αιτήματός σας
-    για τον ιστότοπο <ph name="SITE" /> από το πρόγραμμα περιήγησης. Οι πολιτικές προέλευσης μπορούν να χρησιμοποιηθούν από
-    χειριστές ιστοτόπων για τη διαμόρφωση της ασφάλειας και άλλων ιδιοτήτων ενός ιστοτόπου.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Μάθετε περισσότερα σχετικά με την Ανώνυμη περιήγηση στο Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Οι ανοιχτές καρτέλες σας εμφανίζονται εδώ</translation>
@@ -1112,8 +1107,6 @@
 <translation id="3987940399970879459">Λιγότερα από 1 MB</translation>
 <translation id="3990250421422698716">Μετατόπιση στοίβας</translation>
 <translation id="3992684624889376114">Σχετικά με αυτήν τη σελίδα</translation>
-<translation id="3996311196211510766">Ο ιστότοπος <ph name="ORIGIN" /> ζήτησε να εφαρμοστεί μια πολιτική προέλευσης
-    για όλα τα αιτήματά του, αλλά δεν είναι δυνατή η εφαρμογή της πολιτικής αυτήν τη στιγμή.</translation>
 <translation id="4006465311664329701">Τρόποι πληρωμής, προσφορές και διευθύνσεις μέσω Google Pay</translation>
 <translation id="4009243425692662128">Το περιεχόμενο των σελίδων που εκτυπώνετε αποστέλλεται στο Google Cloud ή σε τρίτα μέρη για ανάλυση. Για παράδειγμα, ενδέχεται να σαρώνεται για ευαίσθητα δεδομένα.</translation>
 <translation id="4010758435855888356">Να επιτρέπεται η πρόσβαση στον αποθηκευτικό χώρο;</translation>
@@ -1178,11 +1171,6 @@
 <translation id="4202554117186904723">Πέμπτο ρολό</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Ελέγξτε τις διαμορφώσεις του τείχους προστασίας και της προστασίας από ιούς<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Μεγάλο</translation>
-<translation id="4209166701302774460">Ο διακομιστής στον οποίο μεταβαίνετε, <ph name="ORIGIN" />, έχει ζητήσει να εφαρμόζεται
-    μια πολιτική προέλευσης σε όλα τα αιτήματα προς αυτόν. Ωστόσο, απέτυχε να
-    παραδώσει μια πολιτική, γεγονός που εμποδίζει το πρόγραμμα περιήγησης να εκπληρώσει το αίτημά σας
-    για τον ιστότοπο <ph name="SITE" />. Οι πολιτικές προέλευσης μπορούν να χρησιμοποιηθούν από χειριστές ιστοτόπων
-    για τη διαμόρφωση της ασφάλειας και άλλων ιδιοτήτων ενός ιστοτόπου.</translation>
 <translation id="4210602799576081649">Ο κωδικός επαλήθευσης έληξε, υποβάλετε αίτημα για νέο κωδικό.</translation>
 <translation id="421066178035138955">Χρήση συσκευών και δεδομένων εικονικής πραγματικότητας</translation>
 <translation id="4213305257324635756">Ταινίες κινουμένων σχεδίων</translation>
@@ -1211,7 +1199,6 @@
     &lt;p&gt;Εάν το σφάλμα εξακολουθεί να εμφανίζεται, επικοινωνήστε με τον κάτοχο του ιστοτόπου.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Δοκιμάστε να εκτελέσετε τον Διαγνωστικό έλεγχο δικτύου<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Μπορεί να ζητά να χρησιμοποιεί και να μετακινεί την κάμερά σας.</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Συνέχεια σε <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Έγκυρο</translation>
 <translation id="4250431568374086873">Η σύνδεσή σας σε αυτόν τον ιστότοπο δεν είναι πλήρως ασφαλής</translation>
 <translation id="4250680216510889253">Όχι</translation>
@@ -1415,7 +1402,6 @@
 <translation id="4796594887379589189">Αναγνωριστικό λογαριασμού εργασίας</translation>
 <translation id="4798078619018708837">Καταχωρίστε την ημερομηνία λήξης και τον κωδικό CVC για την πιστωτική κάρτα <ph name="CREDIT_CARD" />, προκειμένου να ενημερώσετε τα στοιχεία της κάρτας σας. Μετά την επιβεβαίωση, τα στοιχεία της κάρτας από τον Λογαριασμό Google θα κοινοποιηθούν σε αυτόν τον ιστότοπο.</translation>
 <translation id="4800132727771399293">Ελέγξτε την ημερομηνία λήξης και τον κωδικό σας CVC και δοκιμάστε ξανά</translation>
-<translation id="480334179571489655">Σφάλμα πολιτικής προέλευσης</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Οδηγίες από τον διαχειριστή της συσκευής σας:</translation>
 <translation id="4812751092864334025">Φορετή τεχνολογία</translation>
@@ -1812,7 +1798,6 @@
 <translation id="5901630391730855834">Κίτρινο</translation>
 <translation id="5903264686717710770">Τίτλος:</translation>
 <translation id="5904360430676679685">Οικογένεια και σχέσεις</translation>
-<translation id="5905445707201418379">Αποκλείστηκε σύμφωνα με την πολιτική προέλευσης του <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (συγχρονισμένο)</translation>
 <translation id="59174027418879706">Ενεργοποιημένο</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_en-GB.xtb b/components/strings/components_strings_en-GB.xtb
index d5a322db..fdb1970 100644
--- a/components/strings/components_strings_en-GB.xtb
+++ b/components/strings/components_strings_en-GB.xtb
@@ -335,10 +335,6 @@
 <translation id="1757773103848038814">Monospace font</translation>
 <translation id="1763864636252898013">This server could not prove that it is <ph name="DOMAIN" />; its security certificate is not trusted by your device's operating system. This may be caused by a misconfiguration or an attacker intercepting your connection.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Try running Windows Network Diagnostics<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">The server that you are going to, <ph name="ORIGIN" />, has set a header
-    requiring that an origin policy is to be applied to all requests to it. But
-    the header is malformed, which prevents the browser from fulfilling
-    your request for <ph name="SITE" />. Origin policies can be used by site operators to configure security and other properties for a site.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Learn more about Incognito in Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Your open tabs appear here</translation>
@@ -1110,8 +1106,6 @@
 <translation id="3987940399970879459">Less than 1 MB</translation>
 <translation id="3990250421422698716">Jog offset</translation>
 <translation id="3992684624889376114">About this page</translation>
-<translation id="3996311196211510766">The site <ph name="ORIGIN" /> has requested that an origin policy will
-    apply to all requests to it, but this policy cannot presently be applied.</translation>
 <translation id="4006465311664329701">Payment methods, offers and addresses using Google Pay</translation>
 <translation id="4009243425692662128">The content of pages that you print is sent to Google Cloud or third parties for analysis. For example, it might be scanned for sensitive data.</translation>
 <translation id="4010758435855888356">Allow storage access?</translation>
@@ -1176,11 +1170,6 @@
 <translation id="4202554117186904723">Fifth roll</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Checking firewall and antivirus configurations<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Large</translation>
-<translation id="4209166701302774460">The server that you are going to, <ph name="ORIGIN" />, has requested that
-    an origin policy will be applied to all requests to it. But it has now failed to
-    deliver a policy, which prevents the browser from fulfilling your request
-    for <ph name="SITE" />. Origin policies can be used by site operators
-    to configure security and other properties for a site.</translation>
 <translation id="4210602799576081649">Verification code expired. Request a new code</translation>
 <translation id="421066178035138955">Use virtual reality devices and data</translation>
 <translation id="4213305257324635756">Animated movies</translation>
@@ -1208,7 +1197,6 @@
     &lt;p&gt;If you still see the error, contact the website owner.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Try running Network Diagnostics<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Can ask to use and move your camera</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Proceed to <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Valid</translation>
 <translation id="4250431568374086873">Your connection to this site is not fully secure</translation>
 <translation id="4250680216510889253">No</translation>
@@ -1412,7 +1400,6 @@
 <translation id="4796594887379589189">Job account ID</translation>
 <translation id="4798078619018708837">Enter the expiry date and CVC for <ph name="CREDIT_CARD" /> to update your card details. Once you confirm, card details from your Google Account will be shared with this site.</translation>
 <translation id="4800132727771399293">Check your expiration date and CVC and try again</translation>
-<translation id="480334179571489655">Origin Policy Error</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Instructions from your device administrator:</translation>
 <translation id="4812751092864334025">Wearable technology</translation>
@@ -1807,7 +1794,6 @@
 <translation id="5901630391730855834">Yellow</translation>
 <translation id="5903264686717710770">Title:</translation>
 <translation id="5904360430676679685">Family and relationships</translation>
-<translation id="5905445707201418379">Blocked according to <ph name="ORIGIN" />'s origin policy.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synced)</translation>
 <translation id="59174027418879706">Enabled</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_es-419.xtb b/components/strings/components_strings_es-419.xtb
index 0f205dbe..9931993 100644
--- a/components/strings/components_strings_es-419.xtb
+++ b/components/strings/components_strings_es-419.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Fuente monoespaciada</translation>
 <translation id="1763864636252898013">Este servidor no pudo probar que su dominio es <ph name="DOMAIN" />; el sistema operativo del dispositivo no confía en el certificado de seguridad. Es posible que esto se deba a una configuración incorrecta o a que un atacante interceptó la conexión.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Intenta ejecutar el Diagnóstico de red de Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">El servidor <ph name="ORIGIN" /> al que te diriges estableció un encabezado donde se indica que se aplica una política de origen a todas las solicitudes. Sin embargo, el encabezado tiene un formato no válido, por lo que el navegador no puede cumplir con tu solicitud para <ph name="SITE" />. Los operadores de sitios pueden usar políticas de origen para configurar la seguridad y otras propiedades de un sitio.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Obtén más información sobre el modo Incógnito en Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Tus pestañas abiertas aparecen aquí</translation>
@@ -1108,7 +1107,6 @@
 <translation id="3987940399970879459">Menos de 1 MB</translation>
 <translation id="3990250421422698716">Desplazamiento del borde</translation>
 <translation id="3992684624889376114">Acerca de esta página</translation>
-<translation id="3996311196211510766">El sitio <ph name="ORIGIN" /> solicitó que se aplique una política de origen a todas las solicitudes. Sin embargo, no es posible en este momento.</translation>
 <translation id="4006465311664329701">Formas de pago, ofertas y direcciones con Google Pay</translation>
 <translation id="4009243425692662128">Se envía el contenido de las páginas que imprimes a Google Cloud o a terceros para su análisis. Por ejemplo, es posible que se analice para detectar datos sensibles.</translation>
 <translation id="4010758435855888356">¿Quieres permitir el acceso al almacenamiento?</translation>
@@ -1173,7 +1171,6 @@
 <translation id="4202554117186904723">Quinto rollo</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Comprobar las configuraciones de firewall y antivirus<ph name="END_LINK" />.</translation>
 <translation id="4209092469652827314">Grande</translation>
-<translation id="4209166701302774460">El servidor <ph name="ORIGIN" /> al que te diriges solicitó que se aplique una política de origen a todas las solicitudes. Sin embargo, no pudo entregar ninguna política, lo que impide al navegador procesar tu solicitud para <ph name="SITE" />. Los operadores de sitios pueden usar políticas de origen para configurar la seguridad y otras propiedades de un sitio.</translation>
 <translation id="4210602799576081649">Caducó el código de verificación. Solicita uno nuevo.</translation>
 <translation id="421066178035138955">Usar datos y dispositivos de realidad virtual</translation>
 <translation id="4213305257324635756">Películas animadas</translation>
@@ -1201,7 +1198,6 @@
     &lt;p&gt;Si todavía se muestra el error, comunícate con el propietario del sitio web.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Intenta ejecutar el Diagnóstico de red<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Puede solicitar permiso para usar y mover la cámara</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Continuar a <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Válido</translation>
 <translation id="4250431568374086873">Tu conexión con este sitio no es completamente segura</translation>
 <translation id="4250680216510889253">No</translation>
@@ -1405,7 +1401,6 @@
 <translation id="4796594887379589189">ID de cuenta del trabajo</translation>
 <translation id="4798078619018708837">Ingresa la fecha de vencimiento y el CVC de la tarjeta <ph name="CREDIT_CARD" /> para actualizar los datos. Después de confirmar esta acción, esos datos en tu Cuenta de Google se compartirán con este sitio.</translation>
 <translation id="4800132727771399293">Verifica la fecha de vencimiento y el CVC, y vuelve a intentarlo.</translation>
-<translation id="480334179571489655">Error en la política de origen</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Instrucciones del administrador de tu dispositivo:</translation>
 <translation id="4812751092864334025">Tecnología wearable</translation>
@@ -1800,7 +1795,6 @@
 <translation id="5901630391730855834">Amarillo</translation>
 <translation id="5903264686717710770">Título:</translation>
 <translation id="5904360430676679685">Familia y relaciones</translation>
-<translation id="5905445707201418379">Se bloqueó conforme a la política de origen de <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sincronizado)</translation>
 <translation id="59174027418879706">Habilitado</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_es.xtb b/components/strings/components_strings_es.xtb
index c91db15..6fb561c 100644
--- a/components/strings/components_strings_es.xtb
+++ b/components/strings/components_strings_es.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Fuente monoespaciada</translation>
 <translation id="1763864636252898013">Este servidor no ha podido probar que su dominio es <ph name="DOMAIN" />, el sistema operativo de tu dispositivo no confía en su certificado de seguridad. Este problema puede deberse a una configuración incorrecta o a que un atacante haya interceptado la conexión.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Prueba a ejecutar Diagnósticos de red de Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">El servidor al que te diriges (<ph name="ORIGIN" />) ha establecido un encabezado
-    que requiere aplicar una política de origen a todas las solicitudes que reciba. Sin embargo,
-    el encabezado tiene errores, lo que impide al navegador procesar
-    tu solicitud de ir a <ph name="SITE" />. Los operadores de sitios
-    pueden usar las políticas de origen para configurar la seguridad y otras propiedades de un sitio web.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Más información sobre el modo Incógnito de Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Las pestañas abiertas aparecen aquí</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Menos de 1 MB</translation>
 <translation id="3990250421422698716">Agrupar</translation>
 <translation id="3992684624889376114">Acerca de esta página</translation>
-<translation id="3996311196211510766">El sitio web <ph name="ORIGIN" /> ha solicitado que se aplique una política de origen
-    a todas las solicitudes que reciba, pero esta política no se puede aplicar actualmente.</translation>
 <translation id="4006465311664329701">Métodos de pago, ofertas y direcciones con Google Pay</translation>
 <translation id="4009243425692662128">El contenido de las páginas que imprimes se envía a Google Cloud o a terceros para analizarlo. Por ejemplo, puede que se analice para buscar datos sensibles.</translation>
 <translation id="4010758435855888356">¿Permitir espacio de almacenamiento?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Quinto rollo</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Comprobar la configuración del cortafuegos y del antivirus<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Grande</translation>
-<translation id="4209166701302774460">El servidor al que te diriges (<ph name="ORIGIN" />) ha solicitado que
-    se aplique una política de origen a todas las solicitudes que reciba. Sin embargo, no ha
-    proporcionado ninguna política, lo que impide al navegador procesar tu solicitud
-    de ir a <ph name="SITE" />. Los operadores de sitios pueden usar las políticas de origen
-    para configurar la seguridad y otras propiedades de un sitio web.</translation>
 <translation id="4210602799576081649">El código de verificación ha caducado. Solicita uno nuevo.</translation>
 <translation id="421066178035138955">Usar dispositivos y datos de realidad virtual</translation>
 <translation id="4213305257324635756">Películas de animación</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Si el error persiste, ponte en contacto con el propietario del sitio web.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Prueba a ejecutar Diagnósticos de red<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Puede pedir permiso para usar y mover tu cámara</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Acceder a <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Válido</translation>
 <translation id="4250431568374086873">Tu conexión con este sitio web no es completamente segura</translation>
 <translation id="4250680216510889253">No</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">ID de cuenta de tarea</translation>
 <translation id="4798078619018708837">Introduce la fecha de vencimiento y el CVC de <ph name="CREDIT_CARD" /> para actualizar la información de tu tarjeta. Una vez que confirmes esta acción, la información de la tarjeta de tu cuenta de Google se compartirá con este sitio web.</translation>
 <translation id="4800132727771399293">Comprueba la fecha de caducidad y el código CVC, y vuelve a intentarlo</translation>
-<translation id="480334179571489655">Error de política de origen</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Instrucciones del administrador de tu dispositivo:</translation>
 <translation id="4812751092864334025">Tecnología wearable</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Amarillo</translation>
 <translation id="5903264686717710770">Título:</translation>
 <translation id="5904360430676679685">Familia y relaciones</translation>
-<translation id="5905445707201418379">Se ha bloqueado según la política de origen de <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sincronizado)</translation>
 <translation id="59174027418879706">Habilitado</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_et.xtb b/components/strings/components_strings_et.xtb
index 76c4453..3c7246b 100644
--- a/components/strings/components_strings_et.xtb
+++ b/components/strings/components_strings_et.xtb
@@ -335,10 +335,6 @@
 <translation id="1757773103848038814">Püsisammuga font</translation>
 <translation id="1763864636252898013">Server ei suutnud tõestada, et see on domeen <ph name="DOMAIN" />, seadme operatsioonisüsteem ei usalda selle turvasertifikaati. Selle põhjuseks võib olla vale seadistus või ründaja, kes on sekkunud teie ühendusse.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Proovige käitada Windowsi võrgudiagnostika tööriista<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Server, kuhu sisenete (<ph name="ORIGIN" />), on määranud päise,
-    mis nõuab lähtekohareegli rakendamist kõigi sellele saadetud taotluste puhul. Päis on aga valesti moodustatud ja see ei lase brauseril teie
-    saidile <ph name="SITE" /> esitatud taotlust täita. Saidioperaatorid saavad kasutada
-    lähtekohareegleid saidi turbe ja muude atribuutide seadistamiseks.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Lisateave Chromiumi inkognito režiimi kohta<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Teie avatud vahelehed kuvatakse siin</translation>
@@ -1110,8 +1106,6 @@
 <translation id="3987940399970879459">Alla 1 MB</translation>
 <translation id="3990250421422698716">Astme nihe</translation>
 <translation id="3992684624889376114">Lisateave selle lehe kohta</translation>
-<translation id="3996311196211510766">Sait <ph name="ORIGIN" /> nõuab, et lähtekohareeglit
-    kohaldataks kõigi taotluste puhul, kuid reeglit ei saa praegu rakendada.</translation>
 <translation id="4006465311664329701">Makseviisid, pakkumised ja aadressid, mis kasutavad Google Payd</translation>
 <translation id="4009243425692662128">Sisu teie prinditavatel lehtedel saadetakse analüüsiks Google Cloudile või kolmandatele osapooltele. Näiteks võidakse seda skannida tundlike andmete tuvastamiseks.</translation>
 <translation id="4010758435855888356">Kas lubada juurdepääs salvestusruumile?</translation>
@@ -1176,11 +1170,6 @@
 <translation id="4202554117186904723">Viies rull</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Kontrollige tulemüüri ja viirusetõrje seadistusi<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Suur</translation>
-<translation id="4209166701302774460">Server, kuhu sisenete (<ph name="ORIGIN" />), nõuab, et
-    lähtekohareeglit kohaldataks iga sisenemistaotluse puhul. Reegli saatmine aga ebaõnnestus,
-    mis takistab brauseril täitmast teie sisenemistaotlust
-    saidile <ph name="SITE" />. Saidioperaatorid saavad kasutada
-    lähtekohareegleid saidi turbe ja muude atribuutide seadistamiseks.</translation>
 <translation id="4210602799576081649">Kinnituskood on aegunud, taotlege uut koodi</translation>
 <translation id="421066178035138955">Kasutada virtuaalreaalsuse seadmeid ja andmeid</translation>
 <translation id="4213305257324635756">Animafilmid</translation>
@@ -1208,7 +1197,6 @@
     &lt;p&gt;Kui viga ei kao, võtke ühendust veebisaidi omanikuga.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Proovige käitada võrgudiagnostikat<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Saab küsida luba teie kaamera kasutamiseks ja liigutamiseks</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Edasi saidile <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Kehtiv</translation>
 <translation id="4250431568374086873">Teie ühendus selle saidiga pole täielikult turvaline</translation>
 <translation id="4250680216510889253">Ei</translation>
@@ -1412,7 +1400,6 @@
 <translation id="4796594887379589189">Töökonto ID</translation>
 <translation id="4798078619018708837">Kaardi üksikasjade värskendamiseks sisestage krediitkaardi <ph name="CREDIT_CARD" /> aegumiskuupäev ja CVC. Kui selle kinnitate, jagatakse teie Google'i kontol oleva kaardi üksikasju selle saidiga.</translation>
 <translation id="4800132727771399293">Kontrollige aegumiskuupäeva ja CVC-d ning proovige uuesti</translation>
-<translation id="480334179571489655">Algse reegli viga</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Juhised seadme administraatorilt:</translation>
 <translation id="4812751092864334025">Kehal kantav tehnoloogia</translation>
@@ -1807,7 +1794,6 @@
 <translation id="5901630391730855834">Kollane</translation>
 <translation id="5903264686717710770">Pealkiri:</translation>
 <translation id="5904360430676679685">Perekond ja suhted</translation>
-<translation id="5905445707201418379">Blokeeritud saidi <ph name="ORIGIN" /> lähtekohareegli tõttu.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sünkroonitud)</translation>
 <translation id="59174027418879706">Lubatud</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_eu.xtb b/components/strings/components_strings_eu.xtb
index 5e7ccb73..3335cf5 100644
--- a/components/strings/components_strings_eu.xtb
+++ b/components/strings/components_strings_eu.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Monospace letra</translation>
 <translation id="1763864636252898013">Zerbitzari honek ezin izan du egiaztatu <ph name="DOMAIN" /> domeinua denik. Zure gailuaren sistema eragilea ez da bere segurtasun-ziurtagiriaz fidatzen. Baliteke gaizki konfiguratuta dagoelako izatea edo erasotzaile batek zure konexioa atzeman duelako izatea.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Exekutatu Windows-en sare-diagnostikoak<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Aukeratu duzun zerbitzariak (<ph name="ORIGIN" />) goiburu bat ezarri du; haren arabera, jatorri-gidalerro bat aplikatuko zaie zerbitzari hartako eskaera guztiei. Alabaina, goiburua oker dago eratuta; ondorioz, arakatzaileak ezin du gauzatu <ph name="SITE" /> webgunean sartzeko egin duzun eskaera. Webgunearen segurtasuna eta beste propietate batzuk konfiguratzeko erabili ohi dituzte webguneen eragileek jatorri-gidalerroak.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Lortu Chromium-eko ezkutuko moduari buruzko informazio gehiago<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Ireki dituzun fitxak agertuko dira hemen</translation>
@@ -1103,7 +1102,6 @@
 <translation id="3987940399970879459">1 MB baino gutxiago</translation>
 <translation id="3990250421422698716">Tolestura-marjina</translation>
 <translation id="3992684624889376114">Orri honi buruz</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> webguneak hartarako eskaera guztiei jatorri-gidalerro bat aplikatzeko eskatu du, baina ezin da aplikatu gidalerroa une honetan.</translation>
 <translation id="4006465311664329701">Google Pay-rekin erabiltzen dituzun ordainketa-metodoak, eskaintzak eta helbideak</translation>
 <translation id="4009243425692662128">Inprimatzen dituzun orrietako edukia Google Cloud-i edo hirugarrenei bidaltzen zaie eduki hori azter dezaten; adibidez, baliteke orrian kontuzko daturik dagoen bilatzea.</translation>
 <translation id="4010758435855888356">Biltegia atzitzeko baimena eman nahi diozu?</translation>
@@ -1168,7 +1166,6 @@
 <translation id="4202554117186904723">Bosgarren arrabola</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Suebakiaren eta birusen kontrako programaren konfigurazioak egiaztatu<ph name="END_LINK" />.</translation>
 <translation id="4209092469652827314">Handia</translation>
-<translation id="4209166701302774460">Aukeratu duzun zerbitzariak (<ph name="ORIGIN" />) hartarako eskaera guztiei jatorri-gidalerro bat aplikatzeko eskatu du. Alabaina, gidalerrorik eman ez duenez, arakatzaileak ezin du gauzatu <ph name="SITE" /> webgunean sartzeko egin duzun eskaera. Webgunearen segurtasuna eta beste propietate batzuk konfiguratzeko erabili ohi dituzte webguneen eragileek jatorri-gidalerroak.</translation>
 <translation id="4210602799576081649">Iraungi egin da egiaztapen-kodea. Eskatu beste bat.</translation>
 <translation id="421066178035138955">Errealitate birtualeko gailuak eta datuak erabili.</translation>
 <translation id="4213305257324635756">Animaziozko filmak</translation>
@@ -1196,7 +1193,6 @@
     &lt;p&gt;Oraindik ere errorea ikusten baduzu, jarri harremanetan webgunearen jabearekin.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Exekutatu sare-diagnostikoak<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Kamera erabiltzea eta mugitzea eska dezake</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Joan <ph name="SITE" /> webgunera<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Balio du</translation>
 <translation id="4250431568374086873">Webgune honetarako konexioa ez da guztiz segurua</translation>
 <translation id="4250680216510889253">Ez</translation>
@@ -1400,7 +1396,6 @@
 <translation id="4796594887379589189">Laneko kontuaren IDa</translation>
 <translation id="4798078619018708837"><ph name="CREDIT_CARD" /> txartelaren xehetasunak eguneratzeko, idatzi iraungitze-data eta CVC kodea. Datuok berresten dituzunean, webgune honekin partekatuko dira Google-ko kontuarekin lotutako txartelaren xehetasunak.</translation>
 <translation id="4800132727771399293">Egiaztatu CVC kodea eta saiatu berriro</translation>
-<translation id="480334179571489655">Jatorrizko gidalerroaren errorea</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Gailuaren administratzailearen argibideak:</translation>
 <translation id="4812751092864334025">Soinean eramateko gailuek darabilten teknologia</translation>
@@ -1795,7 +1790,6 @@
 <translation id="5901630391730855834">Horia</translation>
 <translation id="5903264686717710770">Izena:</translation>
 <translation id="5904360430676679685">Familia eta harremanak</translation>
-<translation id="5905445707201418379">Blokeatuta, <ph name="ORIGIN" /> webguneko jatorri-gidalerro bati jarraikiz.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sinkronizatuta)</translation>
 <translation id="59174027418879706">Gaituta</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_fa.xtb b/components/strings/components_strings_fa.xtb
index 40fa562..c6194bd 100644
--- a/components/strings/components_strings_fa.xtb
+++ b/components/strings/components_strings_fa.xtb
@@ -2,7 +2,7 @@
 <!DOCTYPE translationbundle>
 <translationbundle lang="fa">
 <translation id="1003222766972176318">یادآوری: پیشنهاد ذخیره‌شده دردسترس است</translation>
-<translation id="1008557486741366299">اکنون نه</translation>
+<translation id="1008557486741366299">حالا نه</translation>
 <translation id="100957008357583611">از مکان شما استفاده شود؟</translation>
 <translation id="1010200102790553230">بار کردن صفحه در فرصتی دیگر</translation>
 <translation id="1011206368273183593">درحال آماده‌سازی فایل‌ها</translation>
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">قلم تک‌فاصله</translation>
 <translation id="1763864636252898013">این سرور نتوانست اثبات کند که این <ph name="DOMAIN" /> است؛ گواهی امنیتی آن مورداعتماد سیستم‌عامل دستگاه شما نیست. ممکن است علت این موضوع پیکربندی اشتباه باشد یا مهاجی اتصال شما را قطع کرده است.</translation>
 <translation id="1768211456781949159">‏<ph name="BEGIN_LINK" />Windows Network Diagnostics را اجرا کنید<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">سروری که به آن می‌روید، <ph name="ORIGIN" />، سرصفحه‌ای تنظیم کرده است که
-    ملزم می‌کند خط‌مشی مبدأ برای همه درخواست‌هایی که به سمت آن می‌رود اعمال شود. اما
-    قالب سرصفحه نادرست است و این موضوع اجازه نمی‌دهد 
-   مرورگر درخواستتان را برای <ph name="SITE" /> اجرا کند. اپراتورهای سایت می‌توانند از
-    خط‌مشی‌های اصلی برای پیکربندی امنیت و دیگر ویژگی‌های سایت استفاده کنند.</translation>
 <translation id="1774592222195216949">‏<ph name="BEGIN_LINK" />درباره «حالت ناشناس» در Chromium بیشتر بدانید<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">برگه‌های بازتان در اینجا نشان داده می‌شوند</translation>
@@ -934,7 +929,7 @@
 <translation id="3468054117417088249">‏<ph name="TAB_SWITCH_SUFFIX" />، اکنون باز است، برای جابه‌جا شدن به برگه باز، ابتدا دکمه Tab سپس Enter را فشار دهید</translation>
 <translation id="3470563864795286535"><ph name="CLOSE_INCOGNITO_WINDOWS_FOCUSED_FRIENDLY_MATCH_TEXT" />؛ برای بستن همه پنجره‌های ناشناسی که درحال‌حاضر باز هستند، کلید «جهش» و سپس «ورود» را فشار دهید</translation>
 <translation id="3477679029130949506">فهرست فیلم و ساعات کار سینما</translation>
-<translation id="3479552764303398839">اکنون نه</translation>
+<translation id="3479552764303398839">حالا نه</translation>
 <translation id="3484560055331845446">‏ممکن است دسترسی به حساب Google را از دست بدهید. Chrome توصیه می‌کند اکنون گذرواژه‌تان را تغییر دهید. از شما خواسته می‌شود به سیستم وارد شوید.</translation>
 <translation id="3484861421501147767">یادآوری: کد تبلیغاتی ذخیره‌شده دردسترس است</translation>
 <translation id="3487845404393360112">سینی ۴</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">کمتر از ۱ مگابایت</translation>
 <translation id="3990250421422698716">‏آفست Z شکل</translation>
 <translation id="3992684624889376114">درباره این صفحه</translation>
-<translation id="3996311196211510766">سایت <ph name="ORIGIN" /> درخواست کرده است خط‌مشی مبدأ
-    برای همه درخواست‌هایی به سمت آن می‌رود اعمال شود، اما این خط‌مشی درحال‌حاضر نمی‌تواند اعمال شود.</translation>
 <translation id="4006465311664329701">‏روش‌های پرداخت، پیشنهادها، و نشانی‌های استفاده‌شده در Google Pay</translation>
 <translation id="4009243425692662128">‏محتوای صفحه‌هایی که چاپ می‌کنید برای تجزیه‌وتحلیل به Google Cloud یا اشخاص ثالث ارسال می‌شود. مثلاً ممکن است این محتوا ازنظر وجود داده‌های حساس بررسی شود.</translation>
 <translation id="4010758435855888356">دسترسی به فضای ذخیره‌سازی مجاز شود؟</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">رول پنجم</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />بررسی پیکربندی آنتی‌ویروس و دیوار آتش<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">بزرگ</translation>
-<translation id="4209166701302774460">سروری که به آن می‌روید، <ph name="ORIGIN" />، درخواست کرده است
-    خط‌مشی مبدأ برای همه درخواست‌هایی که به سمت آن می‌رود اعمال شود. اما این سرور درحال‌حاضر
-    خط‌مشی ارائه نکرده است و بدین ترتیب مرورگر نمی‌تواند درخواستتان
-    را برای <ph name="SITE" /> اجرا کند. اپراتورهای سایت می‌توانند از
-    خط‌مشی‌های مبدأ برای پیکربندی امنیت و دیگر ویژگی‌های سایت استفاده کنند.</translation>
 <translation id="4210602799576081649">کد درستی‌سنجی منقضی شده است؛ کد جدیدی درخواست کنید</translation>
 <translation id="421066178035138955">از دستگاه‌ها و داده‌های واقعیت مجازی استفاده کند</translation>
 <translation id="4213305257324635756">فیلم انیمیشن</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;اگر همچنان خطا را می‌بینید، با مالک وب‌سایت تماس بگیرید.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />عیب‌یابی شبکه را اجرا کنید<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">می‌تواند برای استفاده از دوربین و حرکت دادن آن درخواست دهد</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />ادامه به <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">معتبر</translation>
 <translation id="4250431568374086873">اتصال شما به این سایت کاملاً امن نیست</translation>
 <translation id="4250680216510889253">نه</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">شناسه حساب کار</translation>
 <translation id="4798078619018708837">‏برای به‌روزرسانی جزئیات کارت، تاریخ انقضا و CVC کارت <ph name="CREDIT_CARD" /> را وارد کنید. بعد از تأیید کردن، جزئیات کارت از حساب Google شما با این سایت هم‌رسانی می‌شود.</translation>
 <translation id="4800132727771399293">‏تاریخ انقضا و CVC را بررسی کرده و دوباره امتحان کنید</translation>
-<translation id="480334179571489655">خطای خط‌‌مشی اصلی</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">دستورالعمل‌ها از سرپرست دستگاهتان:</translation>
 <translation id="4812751092864334025">فناوری پوشیدنی</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">زرد</translation>
 <translation id="5903264686717710770">عنوان:</translation>
 <translation id="5904360430676679685">خانواده و روابط</translation>
-<translation id="5905445707201418379">مسدودشده براساس خط‌مشی اصلی <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (همگام‌سازی‌شده)</translation>
 <translation id="59174027418879706">فعال شد</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_fi.xtb b/components/strings/components_strings_fi.xtb
index df64fa0..161f916 100644
--- a/components/strings/components_strings_fi.xtb
+++ b/components/strings/components_strings_fi.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace-fontti</translation>
 <translation id="1763864636252898013">Palvelin ei voinut todistaa olevansa <ph name="DOMAIN" />; laitteesi käyttöjärjestelmä ei luota sen suojausvarmenteeseen. Tämä voi johtua määritysvirheestä tai verkkoyhteytesi siepanneesta hyökkääjästä.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Kokeile Windowsin verkon diagnostiikkaa<ph name="END_LINK" /></translation>
-<translation id="1772163372082567643">Kohdepalvelin <ph name="ORIGIN" /> pyytää otsikossaan
-    alkuperäkäytännön soveltamista kaikkiin sen saamiin pyyntöihin. Koska
-    otsikko on muotoiltu väärin, selain ei voi täyttää
-    pyyntöäsi (<ph name="SITE" />). Alkuperäkäytäntöjen avulla
-    sivusto-operaattorit voivat määrittää sen tietosuojan ja muita ominaisuuksia.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Lue lisää Chromiumin incognito-tilasta<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0 (1 030 mm x 1 456 mm)</translation>
 <translation id="1787142507584202372">Avoimet välilehdet näkyvät tässä.</translation>
@@ -1112,8 +1107,6 @@
 <translation id="3987940399970879459">Alle 1 Mt</translation>
 <translation id="3990250421422698716">Jog offset</translation>
 <translation id="3992684624889376114">Tietoja sivusta</translation>
-<translation id="3996311196211510766">Sivusto <ph name="ORIGIN" /> pyytää alkuperäkäytännön
-    soveltamista kaikkiin sen pyyntöihin, mutta käytäntöä ei voi soveltaa tällä hetkellä.</translation>
 <translation id="4006465311664329701">Maksutavat, tarjoukset ja osoitteet Google Playta käyttäen</translation>
 <translation id="4009243425692662128">Tulostamiesi sivujen sisältö lähetetään Google Cloudin tai kolmansien osapuolten analysoitavaksi. Se voidaan esimerkiksi skannata arkaluontoisten tietojen varalta.</translation>
 <translation id="4010758435855888356">Sallitaanko tallennustilan pääsyoikeudet?</translation>
@@ -1178,11 +1171,6 @@
 <translation id="4202554117186904723">Viides rulla</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Tarkista palomuurin ja virustorjuntaohjelmiston määritykset.<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Suuri</translation>
-<translation id="4209166701302774460">Kohdepalvelin <ph name="ORIGIN" /> pyytää
-    alkuperäkäytännön soveltamista kaikkiin sen saamiin pyyntöihin. Käytännön palauttaminen ei kuitenkaan nyt onnistunut, 
-    , joten selain ei nyt voi toteuttaa
-    <ph name="SITE" />-pyyntöäsi. Alkuperäkäytäntöjen avulla sivuston operaattorit
-    voivat määrittää sen tietosuojan ja muita ominaisuuksia.</translation>
 <translation id="4210602799576081649">Vahvistuskoodi on vanhentunut, pyydä uutta koodia</translation>
 <translation id="421066178035138955">käyttää virtuaalitodellisuuslaitteita ja ‑dataa</translation>
 <translation id="4213305257324635756">Piirretyt elokuvat</translation>
@@ -1210,7 +1198,6 @@
     &lt;p&gt;Jos näet virheen vieläkin, ota yhteyttä verkkosivuston omistajaan.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Kokeile verkon diagnostiikkaa<ph name="END_LINK" /></translation>
 <translation id="4230204356098880324">Saa pyytää lupaa kameran käyttämiseen ja siirtämiseen</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Siirry sivustolle <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Voimassa</translation>
 <translation id="4250431568374086873">Yhteytesi sivustoon ei ole täysin suojattu.</translation>
 <translation id="4250680216510889253">Ei</translation>
@@ -1414,7 +1401,6 @@
 <translation id="4796594887379589189">Työpaikan tilin tunnus</translation>
 <translation id="4798078619018708837">Päivitä <ph name="CREDIT_CARD" /> ‑tiedot antamalla sen viimeinen voimassaolopäivä ja CVC. Vahvistamisen jälkeen korttitiedot Google-tililtäsi jaetaan tämän sivuston kanssa.</translation>
 <translation id="4800132727771399293">Tarkista vanhenemispäivä ja CVC ja yritä uudelleen.</translation>
-<translation id="480334179571489655">Käytännön alkuperävirhe</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Ohjeet laitteen järjestelmänvalvojalta</translation>
 <translation id="4812751092864334025">Puettava teknologia</translation>
@@ -1809,7 +1795,6 @@
 <translation id="5901630391730855834">Keltainen</translation>
 <translation id="5903264686717710770">Otsikko:</translation>
 <translation id="5904360430676679685">Perhe ja ihmissuhteet</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> estää tämän alkuperäkäytännössään.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synkronoitu)</translation>
 <translation id="59174027418879706">Käytössä</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_fil.xtb b/components/strings/components_strings_fil.xtb
index 67bd08b..d6b7635 100644
--- a/components/strings/components_strings_fil.xtb
+++ b/components/strings/components_strings_fil.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace Font</translation>
 <translation id="1763864636252898013">Hindi mapatunayan ng server na ito na ito ay <ph name="DOMAIN" />; hindi pinagkakatiwalaan ng operating system ng iyong device ang certificate ng seguridad nito. Maaaring dulot ito ng maling configuration o isang umaatake na hinahadlangan ang iyong koneksyon.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Subukang patakbuhin ang Windows Network Diagnostics<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Ang pupuntahan mong server na <ph name="ORIGIN" /> ay nagtakda ng header na
-    humihiling na maglapat ng patakaran ng pinagmulan sa lahat ng kahilingan dito. Pero
-    sira ang header, na pumipigil sa browser na matugunan
-    ang iyong kahilingan para sa <ph name="SITE" />. Magagamit ng mga operator ng site ang mga patakaran ng
-    pinagmulan para i-configure ang seguridad at iba pang property para sa isang site.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Matuto pa tungkol sa Incognito sa Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Lalabas dito ang iyong mga bukas na tab</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Wala pang 1 MB</translation>
 <translation id="3990250421422698716">Jog offset</translation>
 <translation id="3992684624889376114">Tungkol sa page na ito</translation>
-<translation id="3996311196211510766">Hiniling ng site na <ph name="ORIGIN" /> na maglapat ng patakaran ng pinagmulan
-    sa lahat ng kahilingan dito, pero hindi pa mailalapat sa ngayon ang patakarang ito.</translation>
 <translation id="4006465311664329701">Mga Paraan ng Pagbabayad, Alok, at Address na Gumagamit ng Google Pay</translation>
 <translation id="4009243425692662128">Ipapadala ang content ng mga page na ipi-print mo sa Google Cloud o mga third party para sa pagsusuri. Halimbawa, posible itong i-scan para sa sensitibong data.</translation>
 <translation id="4010758435855888356">Bigyan ng access sa storage?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Ikalimang Rolyo</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Suriin ang mga configuration ng firewall at antivirus<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Malaki</translation>
-<translation id="4209166701302774460">Hiniling ng pupuntahan mong server na <ph name="ORIGIN" /> na
-    maglapat ng patakaran ng pinagmulan sa lahat ng kahilingan dito. Pero hindi na ito
-    nakapaghatid ng patakaran, na pumipigil sa browser na matugunan ang iyong kahilingan
-    para sa <ph name="SITE" />. Magagamit ng mga operator ng site ang mga patakaran ng pinagmulan
-    para i-configure ang seguridad at iba pang property para sa isang site.</translation>
 <translation id="4210602799576081649">Nag-expire na ang code sa pag-verify, humiling ng bagong code</translation>
 <translation id="421066178035138955">Gumamit ng mga virtual reality device at data</translation>
 <translation id="4213305257324635756">Mga pelikulang animated</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Kung nakikita mo pa rin ang error, makipag-ugnayan sa may-ari ng website.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Subukang magpatakbo ng Network Diagnostics<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Puwedeng hilinging gamitin at igalaw ang iyong camera</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Magpatuloy sa <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Wasto</translation>
 <translation id="4250431568374086873">Hindi ganap na ligtas ang iyong koneksyon sa site na ito</translation>
 <translation id="4250680216510889253">Hindi</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Account ID ng trabaho</translation>
 <translation id="4798078619018708837">Ilagay ang petsa ng pag-expire at CVC para sa <ph name="CREDIT_CARD" /> para i-update ang mga detalye ng iyong card. Pagkatapos mong magkumpirma, ibabahagi sa site na ito ang mga detalye ng card mula sa iyong Google Account.</translation>
 <translation id="4800132727771399293">Tingnan ang iyong petsa ng pag-expire at CVC at subukang muli</translation>
-<translation id="480334179571489655">Error sa Patakaran ng Pinagmulan</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Mga tagubilin mula sa administrator ng iyong device:</translation>
 <translation id="4812751092864334025">Nasusuot na teknolohiya</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Dilaw</translation>
 <translation id="5903264686717710770">Pamagat:</translation>
 <translation id="5904360430676679685">Pamilya at mga ugnayan</translation>
-<translation id="5905445707201418379">Na-black ayon sa patakaran ng pinagmulan ng <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (naka-sync)</translation>
 <translation id="59174027418879706">Pinagana</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_fr-CA.xtb b/components/strings/components_strings_fr-CA.xtb
index d453187..ca2c419 100644
--- a/components/strings/components_strings_fr-CA.xtb
+++ b/components/strings/components_strings_fr-CA.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Police à espace unique</translation>
 <translation id="1763864636252898013">Impossible de vérifier sur le serveur qu'il s'agit bien du domaine <ph name="DOMAIN" />, car son certificat de sécurité n'est pas considéré comme fiable par le système d'exploitation de votre appareil. Cela peut être dû à une mauvaise configuration ou bien à l'interception de votre connexion par un pirate informatique.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Essayer d'exécuter Windows Network Diagnostics<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Le serveur auquel vous accédez, <ph name="ORIGIN" />, a défini un en-tête qui exige qu'une politique d'origine soit appliquée à toutes les demandes qu'il reçoit. Mais l'en-tête est formaté de manière incorrecte, ce qui empêche le navigateur de répondre à votre demande pour <ph name="SITE" />. Les exploitants de sites peuvent utiliser des politiques d'origine pour configurer la sécurité et d'autres propriétés d'un site.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />En savoir plus sur la navigation privée dans Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Vos onglets ouverts s'affichent ici</translation>
@@ -1107,7 +1106,6 @@
 <translation id="3987940399970879459">Moins de 1 Mo</translation>
 <translation id="3990250421422698716">Décalage</translation>
 <translation id="3992684624889376114">À propos de cette page</translation>
-<translation id="3996311196211510766">Le site <ph name="ORIGIN" /> a exigé qu'une politique d'origine soit appliquée à toutes les demandes qu'il reçoit, mais cette politique ne peut pas être appliquée actuellement.</translation>
 <translation id="4006465311664329701">Modes de paiement, offres et adresses utilisant Google Pay</translation>
 <translation id="4009243425692662128">Le contenu des pages que vous imprimez est envoyé à Google Cloud ou à des tiers à des fins d'analyse. Par exemple, il pourrait être analysé pour déterminer s'il contient des données confidentielles.</translation>
 <translation id="4010758435855888356">Autoriser l'accès à l'espace de stockage?</translation>
@@ -1172,7 +1170,6 @@
 <translation id="4202554117186904723">Cinquième rouleau</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />De vérifier les configurations du pare-feu et de l'antivirus<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Grand</translation>
-<translation id="4209166701302774460">Le serveur auquel vous accédez, <ph name="ORIGIN" />, a exigé qu'une politique de contrôle d'origine soit appliquée à toutes les demandes qu'il reçoit. Cependant, la politique n'a pas pu être émise, ce qui empêche le navigateur de répondre à votre demande pour <ph name="SITE" />. Les exploitants de sites peuvent utiliser des politiques d'origine pour configurer la sécurité et d'autres propriétés d'un site.</translation>
 <translation id="4210602799576081649">Le code de vérification a expiré, demandez un nouveau code</translation>
 <translation id="421066178035138955">Utiliser les appareils et les données de réalité virtuelle</translation>
 <translation id="4213305257324635756">Films d'animation</translation>
@@ -1200,7 +1197,6 @@
     &lt;p&gt;Si vous voyez toujours l'erreur, communiquez avec le propriétaire du site Web.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Essayer d'exécuter Network Diagnostics<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Les sites peuvent demander à utiliser et à déplacer votre appareil photo</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Continuer vers <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Valide</translation>
 <translation id="4250431568374086873">Votre connexion à ce site n'est pas totalement sécurisée</translation>
 <translation id="4250680216510889253">Non</translation>
@@ -1404,7 +1400,6 @@
 <translation id="4796594887379589189">Identifiant de compte de travail</translation>
 <translation id="4798078619018708837">Entrez la date d'expiration et le code de vérification de carte (CVC) de votre carte <ph name="CREDIT_CARD" /> afin de les mettre à jour. Après votre confirmation, les détails de la carte provenant de votre compte Google seront partagés avec ce site.</translation>
 <translation id="4800132727771399293">Vérifiez votre CVC et la date d'expiration, puis réessayez.</translation>
-<translation id="480334179571489655">Erreur de politique d'origine</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Instructions de l'administrateur de votre appareil :</translation>
 <translation id="4812751092864334025">Accessoires connectés</translation>
@@ -1799,7 +1794,6 @@
 <translation id="5901630391730855834">Jaune</translation>
 <translation id="5903264686717710770">Titre :</translation>
 <translation id="5904360430676679685">Famille et relations personnelles</translation>
-<translation id="5905445707201418379">Contenu bloqué conformément à la politique relative à l'origine de <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synchronisé)</translation>
 <translation id="59174027418879706">Activé</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_fr.xtb b/components/strings/components_strings_fr.xtb
index 48120ce..1bf480d 100644
--- a/components/strings/components_strings_fr.xtb
+++ b/components/strings/components_strings_fr.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Police à chasse fixe</translation>
 <translation id="1763864636252898013">Impossible de vérifier sur le serveur qu'il s'agit bien du domaine <ph name="DOMAIN" />, car son certificat de sécurité n'est pas considéré comme fiable par le système d'exploitation de votre appareil. Cela peut être dû à une mauvaise configuration ou bien à l'interception de votre connexion par un pirate informatique.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Essayez d'exécuter les diagnostics réseau de Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Le serveur auquel vous accédez (<ph name="ORIGIN" />) a défini un en-tête exigeant
-    qu'une règle d'origine soit appliquée à toutes les requêtes qu'il reçoit. Dans le cas présent,
-    le format de l'en-tête étant incorrect, le navigateur ne peut pas traiter
-    votre requête concernant <ph name="SITE" />. Les exploitants de sites peuvent utiliser
-    des règles d'origine pour en configurer la sécurité et d'autres propriétés.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />En savoir plus sur la navigation privée dans Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Les onglets ouverts s'affichent ici</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Moins de 1 Mo</translation>
 <translation id="3990250421422698716">Décalage</translation>
 <translation id="3992684624889376114">À propos de cette page</translation>
-<translation id="3996311196211510766">Le site <ph name="ORIGIN" /> a exigé qu'une règle d'origine
-    soit appliquée à toutes les requêtes qu'il reçoit. Or, cette règle n'est pas applicable actuellement.</translation>
 <translation id="4006465311664329701">Modes de paiement, offres et adresses utilisant Google Pay</translation>
 <translation id="4009243425692662128">Le contenu des pages que vous imprimez est envoyé à Google Cloud ou à des tiers pour être analysé, par exemple pour vérifier qu'il ne contient pas de données sensibles.</translation>
 <translation id="4010758435855888356">Autoriser l'accès à l'espace de stockage ?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">5e rouleau</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Vérifier les configurations du pare-feu et de l'antivirus<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Grande</translation>
-<translation id="4209166701302774460">Le serveur auquel vous accédez (<ph name="ORIGIN" />) a exigé qu'une règle d'origine
-    soit appliquée à toutes les requêtes qu'il reçoit. La règle n'ayant pu être émise,
-    le navigateur ne peut pas traiter votre requête
-    concernant <ph name="SITE" />. Les exploitants de sites peuvent utiliser des règles d'origine
-    pour en configurer la sécurité et d'autres propriétés.</translation>
 <translation id="4210602799576081649">Le code de validation a expiré. Demandez-en un autre.</translation>
 <translation id="421066178035138955">Utiliser vos données et appareils de réalité virtuelle</translation>
 <translation id="4213305257324635756">Films d'animation</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Si le message d'erreur s'affiche toujours, contactez le propriétaire du site.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Essayez d'exécuter les diagnostics réseau<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Peut demander à utiliser et bouger votre caméra</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Accéder au site <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Valide</translation>
 <translation id="4250431568374086873">Votre connexion à ce site n'est pas totalement sécurisée.</translation>
 <translation id="4250680216510889253">Non</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Numéro de compte de travail</translation>
 <translation id="4798078619018708837">Saisissez la date d'expiration et le code CVC de la carte <ph name="CREDIT_CARD" /> pour mettre à jour les informations relatives à celle-ci. Une fois la validation effectuée, les informations relatives à la carte de votre compte Google seront partagées avec ce site.</translation>
 <translation id="4800132727771399293">Veuillez vérifier la date d'expiration et le code CVC, puis réessayez.</translation>
-<translation id="480334179571489655">Erreur concernant la règle relative à l'origine</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Instructions de l'administrateur de votre appareil :</translation>
 <translation id="4812751092864334025">Accessoires connectés</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Jaune</translation>
 <translation id="5903264686717710770">Titre :</translation>
 <translation id="5904360430676679685">Famille et relations personnelles</translation>
-<translation id="5905445707201418379">Bloqué selon la règle relative à l'origine de <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synchronisés)</translation>
 <translation id="59174027418879706">Activé</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_gl.xtb b/components/strings/components_strings_gl.xtb
index 689144f2..66f5746 100644
--- a/components/strings/components_strings_gl.xtb
+++ b/components/strings/components_strings_gl.xtb
@@ -335,10 +335,6 @@
 <translation id="1757773103848038814">Tipo de letra monoespazado</translation>
 <translation id="1763864636252898013">Este servidor non puido demostrar que é <ph name="DOMAIN" /> porque o sistema operativo do teu dispositivo non confía no seu certificado de seguranza. É posible que isto se deba a un erro de configuración ou a que un atacante interceptase a túa conexión.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Proba a executar o diagnóstico de rede de Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">O servidor que vas visitar, <ph name="ORIGIN" />, definiu un título
-    que require que se aplique unha política de orixe a todas as solicitudes que reciba. Non
-    obstante, o título ten un formato incorrecto, o que impide que o navegador complete
-    a solicitude de <ph name="SITE" />. Os operadores dos sitios poden utilizar as políticas de orixe para configurar a seguranza e outras propiedades dos sitios.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Máis información sobre o modo de incógnito de Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">As pestanas abertas aparecerán aquí</translation>
@@ -1110,8 +1106,6 @@
 <translation id="3987940399970879459">Menos de 1 MB</translation>
 <translation id="3990250421422698716">Compensación mediante empurro</translation>
 <translation id="3992684624889376114">Acerca desta páxina</translation>
-<translation id="3996311196211510766">O sitio <ph name="ORIGIN" /> solicitou que se aplicase unha política de orixe
-    a todas as solicitudes que reciba, pero actualmente non se pode aplicar esta política.</translation>
 <translation id="4006465311664329701">Métodos de pago, ofertas e enderezos que usan Google Pay</translation>
 <translation id="4009243425692662128">O contido das páxinas que imprimas envíaselle a Google Cloud ou a terceiros para que o analicen. Por exemplo, poderíase comprobar se contén datos confidenciais.</translation>
 <translation id="4010758435855888356">Queres permitir o acceso ao almacenamento?</translation>
@@ -1176,11 +1170,6 @@
 <translation id="4202554117186904723">Quinto rolo</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Comprobar a configuración do firewall e do antivirus<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Grande</translation>
-<translation id="4209166701302774460">O servidor que vas visitar, <ph name="ORIGIN" />, solicitou que se aplicase
-    unha política de orixe a todas as solicitudes que reciba. Non obstante, agora non se emitiu
-     ningunha política, o que impide que o navegador complete a solicitude
-    de <ph name="SITE" />. Os operadores dos sitios poden utilizar as políticas de orixe
-    para configurar a seguranza e outras propiedades dos sitios.</translation>
 <translation id="4210602799576081649">O código de verificación está caducado. Solicita un novo</translation>
 <translation id="421066178035138955">Utilizar datos e dispositivos de realidade virtual</translation>
 <translation id="4213305257324635756">Películas de animación</translation>
@@ -1208,7 +1197,6 @@
     &lt;p&gt;Se aínda ves este erro, contacta co propietario do sitio web.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Proba a executar o diagnóstico de rede<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Pode pedirche permiso para usar e mover a cámara</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Ir a <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Válido</translation>
 <translation id="4250431568374086873">A túa conexión a este sitio non é completamente segura</translation>
 <translation id="4250680216510889253">Non</translation>
@@ -1412,7 +1400,6 @@
 <translation id="4796594887379589189">Código da conta para o traballo</translation>
 <translation id="4798078619018708837">Introduce a data de caducidade e o código CVC da tarxeta <ph name="CREDIT_CARD" /> para actualizar os datos. Unha vez confirmados, os detalles da tarxeta da túa Conta de Google compartiranse con este sitio.</translation>
 <translation id="4800132727771399293">Comproba a túa data de caducidade e o CVC e téntao de novo</translation>
-<translation id="480334179571489655">Produciuse un erro relacionado coa política de orixe</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Instrucións do administrador do teu dispositivo:</translation>
 <translation id="4812751092864334025">Tecnoloxía poñible</translation>
@@ -1807,7 +1794,6 @@
 <translation id="5901630391730855834">Amarelo</translation>
 <translation id="5903264686717710770">Título:</translation>
 <translation id="5904360430676679685">Familia e relacións</translation>
-<translation id="5905445707201418379">Bloqueouse debido á política de orixe de <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sincronizado)</translation>
 <translation id="59174027418879706">Activado</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_gu.xtb b/components/strings/components_strings_gu.xtb
index 8b92407..eac45b6 100644
--- a/components/strings/components_strings_gu.xtb
+++ b/components/strings/components_strings_gu.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace ફૉન્ટ</translation>
 <translation id="1763864636252898013">આ સર્વર સાબિત કરી શક્યું નથી કે એ <ph name="DOMAIN" /> છે; એનું સુરક્ષા પ્રમાણપત્ર તમારા ડિવાઇસની ઑપરેટિંગ સિસ્ટમ દ્વારા વિશ્વસનીય નથી. આ કોઈ ખોટી ગોઠવણીને કારણે થયું હશે અથવા કોઈ હુમલાખોર તમારા કનેક્શનને અટકાવી રહ્યો છે.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows નેટવર્ક ડાયગ્નોસ્ટિક્સ ચલાવવાનો પ્રયાસ કરો<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">તમે જે સર્વર પર જઈ રહ્યાં છો, <ph name="ORIGIN" />, તેણે એવું હેડર સેટ કર્યું છે
-    કે જે તેના માટેની બધી વિનંતીઓ પર ઑરિજિન પૉલિસી લાગુ કરવાનું જરૂરી બનાવશે. પરંતુ
-    હેડર દૂષિત છે, જે બ્રાઉઝરને
-    <ph name="SITE" /> માટેની તમારી વિનંતી પૂરી કરતા અટકાવે છે. સાઇટ ઑપરેટર ઑરિજિન
-    પૉલિસીઓનો ઉપયોગ સાઇટ માટે સુરક્ષા અને અન્ય પ્રોપર્ટીની ગોઠવણી કરવા માટે કરી શકે છે.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromiumમાં છૂપા મોડ વિશે વધુ જાણો<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">તમારા ખુલ્લા ટૅબ્સ અહીં દેખાય છે</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">1 MB કરતાં ઓછું</translation>
 <translation id="3990250421422698716">બહાર નીકળેલા ભાગને અંદર દબાવો</translation>
 <translation id="3992684624889376114">આ પેજ વિશે</translation>
-<translation id="3996311196211510766">આ સાઇટ <ph name="ORIGIN" /> દ્વારા વિનંતી કરવામાં આવી છે કે ઑરિજિન પૉલિસી તેની
-    બધી વિનંતી પર લાગુ થાય છે, પણ હાલમાં આ પૉલિસી લાગુ કરી શકાતી નથી.</translation>
 <translation id="4006465311664329701">Google Payનો ઉપયોગ કરતી ચુકવણી પદ્ધતિઓ, ઑફરો અને સરનામાં</translation>
 <translation id="4009243425692662128">તમે પ્રિન્ટ કરશો તે પેજનું કન્ટેન્ટ વિશ્લેષણ માટે, Google Cloud કે ત્રીજા પક્ષને મોકલવામાં આવશે. ઉદાહરણ તરીકે, તેને સંવેદનશીલ વ્યક્તિગત ડેટા માટે સ્કૅન કરવામાં આવી શકે છે.</translation>
 <translation id="4010758435855888356">શું સ્ટોરેજના ઍક્સેસની મંજૂરી આપીએ?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">પાંચમો રોલ</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ફાયરવોલ અને એન્ટીવાઇરસ ગોઠવણી તપાસીને<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">મોટું</translation>
-<translation id="4209166701302774460">તમે જેના પર જવાનો પ્રયાસ કરી રહ્યાં છો, તે <ph name="ORIGIN" />, સર્વર દ્વારા વિનંતી કરવામાં આવી છે
-    કે ઑરિજિન નીતિ તેના પરની બધી વિનંતીઓ પર લાગુ થશે. પણ તે હમણાં એવી નીતિ વિતરિત
-    કરવામાં નિષ્ફળ થયું કે જે બ્રાઉઝરને તમારી <ph name="SITE" /> માટેની વિનંતી પૂરી કરવાથી
-    અટકાવે છે. સાઇટ ઑપરેટર ઑરિજિન નીતિનો ઉપયોગ સાઇટ માટે
-    સુરક્ષા અને અન્ય પ્રોપર્ટીની ગોઠવણી કરવા માટે કરી શકે છે.</translation>
 <translation id="4210602799576081649">ચકાસણી કોડની સમયસીમા સમાપ્ત થઈ ગઈ છે, નવા કોડની વિનંતી કરો</translation>
 <translation id="421066178035138955">વર્ચ્યુઅલ રિયાલિટી ડિવાઇસ અને ડેટાનો ઉપયોગ કરો</translation>
 <translation id="4213305257324635756">ઍનિમેટેડ મૂવી</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;જો હજુ તમને ભૂલ દેખાય, તો વેબસાઇટના માલિકનો સંપર્ક કરો.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />નેટવર્ક ડાયગ્નોસ્ટિક્સ ચલાવવાનો પ્રયાસ કરો<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">તમારા કૅમેરાનો ઉપયોગ કરવાનું અને તેને ખસેડવાનું પૂછી શકે છે</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> પર આગળ વધો<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">માન્યતા</translation>
 <translation id="4250431568374086873">આ સાઇટ પરનું તમારું કનેક્શન પૂર્ણપણે સુરક્ષિત નથી</translation>
 <translation id="4250680216510889253">નહીં</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">જોબ એકાઉન્ટ ID</translation>
 <translation id="4798078619018708837">તમારા કાર્ડની વિગતો અપડેટ કરવા <ph name="CREDIT_CARD" />ની સમાપ્તિ તારીખ અને CVC દાખલ કરો. તમે ખાતરી કરી લો, પછી આ સાઇટ સાથે તમારા Google એકાઉન્ટમાંથી કાર્ડની વિગતો શેર કરવામાં આવશે.</translation>
 <translation id="4800132727771399293">તમારી સમાપ્તિ તારીખ અને CVC તપાસો અને ફરીથી પ્રયાસ કરો</translation>
-<translation id="480334179571489655">ઑરિજિન પૉલિસી ભૂલ</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">તમારા ડિવાઇસ વ્યવસ્થાપક તરફથી સૂચનાઓ</translation>
 <translation id="4812751092864334025">પહેરી શકાય તેવી ટેક્નોલોજી</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">પીળો</translation>
 <translation id="5903264686717710770">શીર્ષક:</translation>
 <translation id="5904360430676679685">કુટુંબ અને સંબંધો</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" />ની ઑરિજિન પૉલિસી અનુસાર બ્લૉક કરેલી છે.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (સમન્વયિત)</translation>
 <translation id="59174027418879706">સક્ષમ કરેલું</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_hi.xtb b/components/strings/components_strings_hi.xtb
index eddd67b..98af75d 100644
--- a/components/strings/components_strings_hi.xtb
+++ b/components/strings/components_strings_hi.xtb
@@ -336,11 +336,6 @@
 <translation id="1757773103848038814">मोनोस्पेस फ़ॉन्ट</translation>
 <translation id="1763864636252898013">यह सर्वर यह नहीं प्रमाणित कर सका कि यह <ph name="DOMAIN" /> है; इसका सुरक्षा प्रमाणपत्र आपके डिवाइस के ऑपरेटिंग सिस्टम द्वारा विश्वसनीय नहीं है. ऐसा गलत कॉन्फ़िगरेशन या किसी आक्रमणकर्ता द्वारा आपके कनेक्शन में अवरोध डालने के कारण हो सकता है.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows नेटवर्क निदान चलाकर देखें<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">आप जिस <ph name="ORIGIN" /> सर्वर पर जा रहे हैं उसने एक हेडर
-    सेट किया है कि उस पर आने वाले सभी अनुरोधों पर मूल नीति लागू की जाएगी. हालांकि,
-    यह हेडर गलत है. इसलिए, यह ब्राउज़र को <ph name="SITE" /> के लिए आपके अनुरोध पर कार्रवाई
-    करने से रोकता है. साइट ऑपरेटर, साइट की सुरक्षा और दूसरी
-    प्रॉपर्टी को कॉन्फ़िगर करने के लिए, मूल नीतियों का इस्तेमाल कर सकते हैं.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium में गुप्त मोड की सुविधा के बारे में ज़्यादा जानें<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">  खोले गए टैब, यहां दिखाई देंगे</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">एक एमबी से कम</translation>
 <translation id="3990250421422698716">जोग ऑफ़सेट</translation>
 <translation id="3992684624889376114">इस पेज के बारे में</translation>
-<translation id="3996311196211510766">साइट <ph name="ORIGIN" /> ने यह अनुरोध किया है कि इसके सभी अनुरोधों पर
-    मूल नीति लागू होती है, लेकिन अभी यह नीति लागू नहीं की जा सकती.</translation>
 <translation id="4006465311664329701">Google Pay का इस्तेमाल करने वाले पैसे चुकाने के तरीके, ऑफ़र, और पते</translation>
 <translation id="4009243425692662128">प्रिंट किए जाने वाले पेजों के कॉन्टेंट को, विश्लेषण के लिए Google Cloud या तीसरे पक्ष की कंपनियों को भेजा जाता है. उदाहरण के लिए, इसे संवेदनशील डेटा की जांच के लिए स्कैन किया जा सकता है.</translation>
 <translation id="4010758435855888356">क्या आप Chromium को डिवाइस का स्टोरेज ऐक्सेस करने की अनुमति देना चाहते हैं?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">पांचवां रोल</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />फायरवॉल और एंटीवायरस कॉन्फ़िगरेशन की जाँच करें<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">बड़ा</translation>
-<translation id="4209166701302774460">आप जिस <ph name="ORIGIN" /> सर्वर पर जा रहे हैं उसने अनुरोध किया है कि
-    उस पर आने वाले सभी अनुरोधों पर मूल नीति लागू की जाए. हालांकि, अब यह
-    नीति के मुताबिक काम नहीं कर रहा है. इस वजह से ब्राउज़र <ph name="SITE" /> के लिए आपके अनुरोध को
-     पूरा नहीं कर पा रहा है. साइट ऑपरेटर, साइट की सुरक्षा और दूसरी प्रॉपर्टी को कॉन्फ़िगर
-    करने के लिए, मूल नीतियों का इस्तेमाल कर सकते हैं.</translation>
 <translation id="4210602799576081649">पुष्टि करने वाले कोड की समयसीमा खत्म हो गई, नए कोड के लिए अनुरोध करें</translation>
 <translation id="421066178035138955">वर्चुअल रिएलिटी वाले डिवाइस और डेटा इस्तेमाल करें</translation>
 <translation id="4213305257324635756">ऐनिमेशन वाली फ़िल्में</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;अगर आपको अब भी गड़बड़ी दिखाई दे रही है, तो वेबसाइट के मालिक से संपर्क करें.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />नेटवर्क निदान चलाकर देखें<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">साइट, आपके कैमरे का इस्तेमाल करने और उसे घुमाने की अनुमति मांग सकती है</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> पर जाएं<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">मान्य</translation>
 <translation id="4250431568374086873">इस साइट से आपका कनेक्शन पूरी तरह से सुरक्षित नहीं है</translation>
 <translation id="4250680216510889253">नहीं</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">जॉब का खाता आईडी</translation>
 <translation id="4798078619018708837">अपने कार्ड का ब्यौरा अपडेट करने के लिए <ph name="CREDIT_CARD" /> की खत्म होने की तारीख और कार्ड वेरीफ़िकेशन कोड (सीवीसी) डालें. आपके पुष्टि करने के बाद, आपके Google खाते के कार्ड का ब्यौरा इस साइट के साथ शेयर किया जाएगा.</translation>
 <translation id="4800132727771399293">अपने क्रेडिट कार्ड की समय सीमा खत्म होने की तारीख और कार्ड वेरीफ़िकेशन कोड (सीवीसी) जांचें और फिर से कोशिश करें</translation>
-<translation id="480334179571489655">शुरुआत की जगह की नीति में गड़बड़ी</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">आपके डिवाइस के एडमिन से मिले निर्देश:</translation>
 <translation id="4812751092864334025">पहने जाने वाले डिवाइस</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">पीला</translation>
 <translation id="5903264686717710770">शीर्षक :</translation>
 <translation id="5904360430676679685">परिवार और रिश्तेदार</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> की मूल नीति के मुताबिक रोक लगाई गई.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (सिंक किया गया)</translation>
 <translation id="59174027418879706">चालू किया गया</translation>
 <translation id="5919090499915321845">बी10</translation>
diff --git a/components/strings/components_strings_hr.xtb b/components/strings/components_strings_hr.xtb
index 7bec0fa..fe89931 100644
--- a/components/strings/components_strings_hr.xtb
+++ b/components/strings/components_strings_hr.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Font Monospace</translation>
 <translation id="1763864636252898013">Poslužitelj nije mogao dokazati da je <ph name="DOMAIN" />; operativni sustav vašeg uređaja smatra da njegov sigurnosni certifikat nije pouzdan. To može biti uzrokovano pogrešnom konfiguracijom ili napadom na vašu vezu.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Pokušajte pokrenuti Mrežnu dijagnostiku sustava Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Poslužitelj kojem pristupate, <ph name="ORIGIN" />, postavio je zaglavlje
-    sa zahtjevom da se izvorno pravilo primjenjuje na sve zahtjeve upućene prema njemu. No
-    zaglavlje nije ispravno, što onemogućuje ispunjavanje
-    vašeg zahtjeva u pregledniku za web-lokaciju <ph name="SITE" />. Operatori web-lokacije mogu koristiti 
-    izvorna pravila radi konfiguracije zaštite i drugih svojstava web-lokacije.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Saznajte više o anonimnom načinu u Chromiumu<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Ovdje se prikazuju vaše otvorene kartice</translation>
@@ -1110,8 +1105,6 @@
 <translation id="3987940399970879459">Manje od 1 MB</translation>
 <translation id="3990250421422698716">Pomak u načinu rada Jog</translation>
 <translation id="3992684624889376114">Informacije o ovoj stranici</translation>
-<translation id="3996311196211510766">Web-lokacija <ph name="ORIGIN" /> zatražila je da se izvorno pravilo
-    primjenjuje na sve zahtjeve za nju, no to se pravilo trenutačno ne može primijeniti.</translation>
 <translation id="4006465311664329701">Načini plaćanja, ponude i adrese s Google Paya</translation>
 <translation id="4009243425692662128">Sadržaj stranica koje ispisujete šalje se na analizu Google Cloudu ili trećim stranama. Na primjer, može se pregledati radi otkrivanja osjetljivih podataka.</translation>
 <translation id="4010758435855888356">Želite li dopustiti pristup pohrani?</translation>
@@ -1176,12 +1169,6 @@
 <translation id="4202554117186904723">Peti kolut</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />provjerite vatrozid i konfiguraciju antivirusnog programa<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Velik</translation>
-<translation id="4209166701302774460">Poslužitelj kojem pristupate, <ph name="ORIGIN" />, zatražio je primjenu
-    izvornog pravila na sve zahtjeve upućene prema njemu. No sada nije
-    pružio pravilo i preglednik zbog toga ne može
-    ispuniti vaš zahtjev
-    za <ph name="SITE" />. Operatori web-lokacije mogu koristiti 
-    izvorna pravila radi konfiguracije sigurnosti i drugih svojstava web-lokacije.</translation>
 <translation id="4210602799576081649">Kontrolni kôd je istekao, zatražite novi kôd</translation>
 <translation id="421066178035138955">koristiti uređaje i podatke virtualne stvarnosti</translation>
 <translation id="4213305257324635756">Animirani filmovi</translation>
@@ -1209,7 +1196,6 @@
     &lt;p&gt;Ako i dalje vidite pogrešku, obratite se vlasniku web-lokacije.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Pokušajte pokrenuti Mrežnu dijagnostiku<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Može tražiti dopuštenje za upotrebu i pomicanje kamere</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Idi na web-lokaciju <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Važeći</translation>
 <translation id="4250431568374086873">Veza s ovom web-lokacijom nije potpuno sigurna</translation>
 <translation id="4250680216510889253">Ne</translation>
@@ -1413,7 +1399,6 @@
 <translation id="4796594887379589189">ID poslovnog računa</translation>
 <translation id="4798078619018708837">Unesite datum isteka i CVC za karticu <ph name="CREDIT_CARD" /> da biste ažurirali podatke o kartici. Nakon što ih potvrdite, podaci o kartici s vašeg Google računa podijelit će se s ovom web-lokacijom.</translation>
 <translation id="4800132727771399293">Provjerite datum isteka i CVC pa pokušajte ponovo</translation>
-<translation id="480334179571489655">Pogreška izvornog pravila</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Upute administratora uređaja:</translation>
 <translation id="4812751092864334025">Nosiva tehnologija</translation>
@@ -1808,7 +1793,6 @@
 <translation id="5901630391730855834">Žuta</translation>
 <translation id="5903264686717710770">Naslov:</translation>
 <translation id="5904360430676679685">Obitelj i veze</translation>
-<translation id="5905445707201418379">Blokirano izvornim pravilom koje određuje <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sinkronizirano)</translation>
 <translation id="59174027418879706">Omogućeno</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_hu.xtb b/components/strings/components_strings_hu.xtb
index 1d97f84..241f1ef2 100644
--- a/components/strings/components_strings_hu.xtb
+++ b/components/strings/components_strings_hu.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Fix szélességű betűtípus</translation>
 <translation id="1763864636252898013">A szerver nem tudta bizonyítani, hogy valóban a(z) <ph name="DOMAIN" /> domainbe tartozik; biztonsági tanúsítványa az Ön eszközének operációs rendszere szerint nem megbízható. Ennek oka lehet konfigurációs hiba, vagy hogy egy támadó eltérítette az Ön kapcsolódását.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Próbálkozzon a Windows Hálózati diagnosztika futtatásával<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">A felkeresni kívánt szerver (<ph name="ORIGIN" />) beállított fejléce eredetházirend alkalmazását
-    követeli meg az összes hozzá irányuló kérelem esetében. A
-    fejléc formátuma azonban nem megfelelő, így a böngésző nem tudja teljesíteni
-    a(z) <ph name="SITE" /> webhelyre irányuló kérelmet. Az eredetházirendek segítségével
-    a webhelyek üzemeltetői a webhely biztonsági és egyéb tulajdonságait konfigurálhatják.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />További információ a Chromium inkognitó módjáról<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">A megnyitott lapok helye</translation>
@@ -1109,8 +1104,6 @@
 <translation id="3987940399970879459">Kevesebb mint 1 MB</translation>
 <translation id="3990250421422698716">Példányok eltolása</translation>
 <translation id="3992684624889376114">Információ az oldalról</translation>
-<translation id="3996311196211510766">A(z) <ph name="ORIGIN" /> webhely egy adott eredetházirend alkalmazását kérte
-    az összes kérésére, de ez a házirend jelenleg nem alkalmazható.</translation>
 <translation id="4006465311664329701">A Google Pay szolgáltatásban használt fizetési módok, ajánlatok és címek</translation>
 <translation id="4009243425692662128">A böngésző elemzés céljából a Google Cloudnak vagy harmadik feleknek továbbítja a kinyomtatott oldalak tartalmát. A Google Cloud vagy a harmadik fél például bizalmas adatokat kereshet a szövegekben.</translation>
 <translation id="4010758435855888356">Engedélyezi a tárhelyhozzáférést?</translation>
@@ -1175,11 +1168,6 @@
 <translation id="4202554117186904723">5. tekercs</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />A tűzfal és a vírusirtó konfigurációjának ellenőrzése<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Nagy</translation>
-<translation id="4209166701302774460">A felkeresni kívánt szerver (<ph name="ORIGIN" />) egy adott eredetházirend
-    alkalmazását kérte az összes hozzá irányuló kérelem esetében. Most azonban nem sikerült
-    bemutatnia a házirendet, így a böngésző nem tudja teljesíteni
-    a(z) <ph name="SITE" /> webhelyre irányuló kérelmet. Az eredetházirendek segítségével a webhelyek üzemeltetői
-    a webhely biztonsági és egyéb tulajdonságait konfigurálhatják.</translation>
 <translation id="4210602799576081649">Az ellenőrző kód lejárt, kérjen újat.</translation>
 <translation id="421066178035138955">Virtuálisvalóság-eszközök és -adatok használata</translation>
 <translation id="4213305257324635756">Animációs filmek</translation>
@@ -1207,7 +1195,6 @@
     &lt;p&gt;Ha a hiba továbbra is fennáll, lépjen kapcsolatba a webhely tulajdonosával.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Próbálkozzon a Hálózati diagnosztika futtatásával<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Engedélyt kérhet a kamera használatára vagy mozgatására</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Tovább ide: <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Érvényes</translation>
 <translation id="4250431568374086873">Kapcsolata a webhellyel nem teljesen biztonságos</translation>
 <translation id="4250680216510889253">Nem</translation>
@@ -1411,7 +1398,6 @@
 <translation id="4796594887379589189">Munkafiók azonosítója</translation>
 <translation id="4798078619018708837">A(z) <ph name="CREDIT_CARD" /> kártyához tartozó CVC-kód és lejárati dátum megadásával frissítheti a kártyaadatokat. A megerősítést követően a böngésző megosztja az Ön Google-fiókjából származó kártyaadatokat ezzel a webhellyel.</translation>
 <translation id="4800132727771399293">Ellenőrizze a lejárati dátumot és a CVC-t, majd próbálja újra</translation>
-<translation id="480334179571489655">Eredet házirendhibája</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Utasítások az eszköz rendszergazdájától:</translation>
 <translation id="4812751092864334025">Hordható technológia</translation>
@@ -1806,7 +1792,6 @@
 <translation id="5901630391730855834">Sárga</translation>
 <translation id="5903264686717710770">Megszólítás:</translation>
 <translation id="5904360430676679685">Család és kapcsolatok</translation>
-<translation id="5905445707201418379">Letiltva a(z) <ph name="ORIGIN" /> eredetházirendje miatt.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (szinkronizálva)</translation>
 <translation id="59174027418879706">Engedélyezve</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_hy.xtb b/components/strings/components_strings_hy.xtb
index 60343a9..8fc089e 100644
--- a/components/strings/components_strings_hy.xtb
+++ b/components/strings/components_strings_hy.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace տառատեսակ</translation>
 <translation id="1763864636252898013">Այս սերվերը չի կարող ապացուցել, որ <ph name="DOMAIN" /> է: Ձեր սարքի օպերացիոն համակարգը չի վստահում դրա անվտանգության վկայականին: Պատճառը կարող է լինել սխալ կազմաձևումը կամ կապակցման խափանումը հարձակվողի կողմից:</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Գործարկեք Windows-ի ցանցի ախտորոշումը<ph name="END_LINK" />:</translation>
-<translation id="1772163372082567643">Սերվերը, որին պատրաստվում եք անցնել (<ph name="ORIGIN" />) վերնագիր է սահմանել, որը
-    պահանջում է, որ սկզբնական կանոնը կիրառվի իրեն ուղարկված բոլոր հարցումների նկատմամբ։ Սակայն
-    վերնագրի կազմությունը սխալ է, ինչը թույլ չի տալիս դիտարկիչին կատարել
-    <ph name="SITE" /> կայքի ձեր հարցումը։ Սկզբնական կանոնները կարող են օգտագործվել
-    կայքերի օպերատորների կողմից կայքի տարատեսակ պարամետրերի և անվտանգության կարգավորումների համար։</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Իմանալ ավելին Chromium-ի ինկոգնիտո ռեժիմի մասին<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Ձեր բացված ներդիրները կցուցադրվեն այստեղ</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">1 ՄԲ-ից քիչ</translation>
 <translation id="3990250421422698716">Աստիճանական տեղաշարժ</translation>
 <translation id="3992684624889376114">Այս էջի մասին</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> կայքը պահանջում է, որ սկզբնական կանոնը
-    կիրառվի իր բոլոր հարցումների նկատմամբ, բայց այս կանոնն այժմ հնարավոր չէ կիրառել։</translation>
 <translation id="4006465311664329701">Վճարման եղանակներ, առաջարկներ ու հասցեներ Google Pay-ից</translation>
 <translation id="4009243425692662128">Ձեր տպած էջերի բովանդակությունը վերլուծության նպատակով ուղարկվում է Google Cloud կամ երրորդ կողմերի։ Օրինակ՝ կարող է ստուգվել գաղտնի տվյալների առկայությունը։</translation>
 <translation id="4010758435855888356">Թույլատրե՞լ հիշողության օգտագործումը</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Հինգերորդ գլանափաթեթ</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Ստուգել հրապատի և հակավիրուսային ծրագրի կազմաձևումը<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Մեծ</translation>
-<translation id="4209166701302774460">Սերվերը, որին պատրաստվում եք անցնել (<ph name="ORIGIN" />), պահանջում է, որ
-    սկզբնական կանոնը կիրառվի իրեն ուղարկված բոլոր հարցումների նկատմամբ։ Սակայն այժմ սերվերին
-    չի հաջողվում տրամադրել կանոն, ինչը թույլ չի տալիս դիտարկիչին
-    կատարել <ph name="SITE" /> կայքի ձեր հարցումը։ Սկզբնական կանոնները կարող են օգտագործվել կայքերի օպերատորների
-    կողմից կայքի տարատեսակ պարամետրերի և անվտանգության կարգավորումների համար։</translation>
 <translation id="4210602799576081649">Հաստատման կոդի ժամկետը սպառվել է։ Ստացեք նոր կոդ։</translation>
 <translation id="421066178035138955">Օգտագործել վիրտուալ իրականության սարքերն ու տվյալները</translation>
 <translation id="4213305257324635756">Անիմացիոն ֆիլմեր</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Եթե շարունակում եք տեսնել սխալը, կապվեք կայքի սեփականատիրոջ հետ։&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Գործարկել ցանցի ախտորոշումը<ph name="END_LINK" />:</translation>
 <translation id="4230204356098880324">Կարող է հայցել տեսախցիկն օգտագործելու և տեղաշարժելու թույլտվություն</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Անցնել <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Վավեր</translation>
 <translation id="4250431568374086873">Կայքին կապակցումը լիարժեք պաշտպանված չէ</translation>
 <translation id="4250680216510889253">Ոչ</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Աշխատանքային հաշվի ID</translation>
 <translation id="4798078619018708837">Մուտքագրեք <ph name="CREDIT_CARD" /> քարտի վավերականության ժամկետն ու CVC կոդը՝ ձեր քարտի տվյալները թարմացնելու համար։ Հաստատումից հետո ձեր Google հաշվին կցված քարտի տվյալները կօգտագործվեն այս կայքի կողմից։</translation>
 <translation id="4800132727771399293">Ստուգեք սպառման ժամկետն ու CVC կոդը և նորից փորձեք</translation>
-<translation id="480334179571489655">Սկզբնական կանոնի սխալ</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Հրահանգներ ձեր սարքի ադմինիստրատորի կողմից՝</translation>
 <translation id="4812751092864334025">Կրելի սարքերի տեխնոլոգիաներ</translation>
@@ -1809,7 +1795,6 @@
 <translation id="5901630391730855834">Դեղին</translation>
 <translation id="5903264686717710770">Անվանում՝</translation>
 <translation id="5904360430676679685">Ընտանիք և հարաբերություններ</translation>
-<translation id="5905445707201418379">Արգելափակված է՝ համաձայն <ph name="ORIGIN" />-ի անվտանգության կանոնի:</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (համաժամացված)</translation>
 <translation id="59174027418879706">Միացված</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_id.xtb b/components/strings/components_strings_id.xtb
index d3002ccb9..a72cbaf 100644
--- a/components/strings/components_strings_id.xtb
+++ b/components/strings/components_strings_id.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Font Monospace</translation>
 <translation id="1763864636252898013">Server ini tidak dapat membuktikan bahwa ini adalah <ph name="DOMAIN" />; sertifikat keamanannya tidak dipercaya oleh sistem operasi perangkat Anda. Hal ini dapat disebabkan oleh kesalahan konfigurasi atau penyerang memotong sambungan Anda.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Coba jalankan Diagnostik Jaringan Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Server yang akan Anda akses, <ph name="ORIGIN" />, telah menetapkan header yang mengharuskan kebijakan asal diterapkan ke semua permintaan yang ditujukan kepadanya. Namun, format header tersebut salah, yang membuat browser tidak dapat memenuhi permintaan Anda untuk <ph name="SITE" />. Kebijakan asal dapat digunakan oleh operator situs guna mengonfigurasi keamanan dan properti lainnya untuk sebuah situs.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Pelajari mode Samaran di Chromium lebih lanjut<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Tab yang terbuka muncul di sini</translation>
@@ -1106,7 +1105,6 @@
 <translation id="3987940399970879459">Kurang dari 1 MB</translation>
 <translation id="3990250421422698716">Jog offset</translation>
 <translation id="3992684624889376114">Tentang halaman ini</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> situs telah meminta kebijakan asal agar diterapkan ke semua permintaan yang ditujukan kepadanya, tetapi kebijakan ini tidak dapat diterapkan untuk saat ini.</translation>
 <translation id="4006465311664329701">Metode Pembayaran, Penawaran, dan Alamat yang Menggunakan Google Pay</translation>
 <translation id="4009243425692662128">Konten halaman yang Anda cetak akan dikirim ke Google Cloud atau pihak ketiga untuk dianalisis. Misalnya, teks mungkin dipindai untuk mendeteksi data sensitif.</translation>
 <translation id="4010758435855888356">Izinkan akses penyimpanan?</translation>
@@ -1171,7 +1169,6 @@
 <translation id="4202554117186904723">Rol Kelima</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Periksa konfigurasi antivirus dan firewall<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Besar</translation>
-<translation id="4209166701302774460">Server yang akan Anda akses, <ph name="ORIGIN" />, telah meminta agar kebijakan asal diterapkan ke semua permintaan yang ditujukan kepadanya. Namun, server tersebut kini telah gagal menerapkan kebijakan, yang membuat browser tidak dapat memenuhi permintaan Anda untuk <ph name="SITE" />. Kebijakan asal dapat digunakan oleh operator situs guna mengonfigurasi keamanan dan properti lainnya untuk sebuah situs.</translation>
 <translation id="4210602799576081649">Kode verifikasi sudah tidak berlaku, minta kode baru</translation>
 <translation id="421066178035138955">Gunakan perangkat dan data virtual reality</translation>
 <translation id="4213305257324635756">Film animasi</translation>
@@ -1199,7 +1196,6 @@
     &lt;p&gt;Jika Anda masih melihat error, hubungi pemilik situs.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Coba jalankan Diagnostik Jaringan<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Dapat meminta untuk menggunakan &amp; menggerakkan kamera Anda</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Lanjutkan ke <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Valid</translation>
 <translation id="4250431568374086873">Sambungan ke situs ini tidak sepenuhnya aman</translation>
 <translation id="4250680216510889253">Tidak</translation>
@@ -1403,7 +1399,6 @@
 <translation id="4796594887379589189">ID akun tugas</translation>
 <translation id="4798078619018708837">Masukkan tanggal habis masa berlaku dan CVC untuk <ph name="CREDIT_CARD" /> guna memperbarui detail kartu. Setelah mengonfirmasi, detail kartu dari Akun Google Anda akan dibagikan dengan situs ini.</translation>
 <translation id="4800132727771399293">Periksa tanggal masa berlaku habis dan CVC, lalu coba lagi</translation>
-<translation id="480334179571489655">Error Kebijakan Asal</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Petunjuk dari administrator perangkat Anda:</translation>
 <translation id="4812751092864334025">Teknologi wearable</translation>
@@ -1798,7 +1793,6 @@
 <translation id="5901630391730855834">Kuning</translation>
 <translation id="5903264686717710770">Judul:</translation>
 <translation id="5904360430676679685">Keluarga &amp; hubungan</translation>
-<translation id="5905445707201418379">Diblokir sesuai dengan kebijakan asal <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (disinkronkan)</translation>
 <translation id="59174027418879706">Diaktifkan</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_is.xtb b/components/strings/components_strings_is.xtb
index cefa2d2..da3e902 100644
--- a/components/strings/components_strings_is.xtb
+++ b/components/strings/components_strings_is.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Jafnstafaletur</translation>
 <translation id="1763864636252898013">Þessi þjónn gat ekki sannað að hann væri <ph name="DOMAIN" />; stýrikerfi tækisins treystir ekki öryggisvottorðinu hans. Þetta kann að orsakast af vanstillingu eða tölvuþrjóti sem komist hefur inn í tenginguna.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Prófaðu að keyra Windows-netgreiningu<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Netþjónninn sem þú valdir, <ph name="ORIGIN" />, er með stilltan haus
-    þar sem farið er fram á að upprunaregla sé notuð við allar aðgangsbeiðnir. En
-    hausinn er gallaður, sem kemur í veg fyrir að vafrinn geti uppfyllt
-    beiðni þína fyrir <ph name="SITE" />. Notendur síðu geta notað upprunareglur
-    til að stilla öryggi og aðra eiginleika síðu.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Nánar um huliðsstillingu í Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Opnir flipar birtast hér</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Minna en 1 MB</translation>
 <translation id="3990250421422698716">Jöfnuð offsetprentun</translation>
 <translation id="3992684624889376114">Um þessa síðu</translation>
-<translation id="3996311196211510766">Vefsvæðið <ph name="ORIGIN" /> hefur beðið um að upprunaregla
-    gildi fyrir allar beiðnir þess, en ekki er hægt að nota þessa reglu eins og er.</translation>
 <translation id="4006465311664329701">Greiðslumátar, tilboð og heimilisföng sem nota Google Pay</translation>
 <translation id="4009243425692662128">Efni síðna sem þú prentar er sent til Google Cloud eða þriðju aðila til greiningar. Þær gætu til dæmis verið skannaðar í leit að viðkvæmum upplýsingum.</translation>
 <translation id="4010758435855888356">Veita aðgang að geymslurými?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Fimmta rúlla</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Athuga eldveggjar- og vírusvarnastillingar<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Stórt</translation>
-<translation id="4209166701302774460">Netþjónninn sem þú valdir, <ph name="ORIGIN" />, hefur beðið um að
-    upprunaregla sé notuð við allar aðgangsbeiðnir. En hann hefur ekki
-    afhent reglu, sem kemur í veg fyrir að vafrinn uppfylli beiðni þína
-    fyrir <ph name="SITE" />. Notendur síðu geta notað upprunareglur 
-    til að stilla öryggi og aðra eiginleika fyrir síðu.</translation>
 <translation id="4210602799576081649">Staðfestingarkóði er útrunninn, biddu um annan kóða</translation>
 <translation id="421066178035138955">Nota sýndarveruleikatæki og -gögn</translation>
 <translation id="4213305257324635756">Teiknimyndir</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Ef þú færð áfram sömu villu skaltu hafa samband við eiganda vefsvæðisins.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Prófaðu að keyra netgreiningu<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Getur beðið um að nota og færa myndavélina</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Halda áfram á <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Gilt</translation>
 <translation id="4250431568374086873">Tengingin við þetta vefsvæði er ekki alveg örugg</translation>
 <translation id="4250680216510889253">Nei</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Auðkenni vinnslureiknings</translation>
 <translation id="4798078619018708837">Sláðu inn gildistíma og CVC-númerið fyrir <ph name="CREDIT_CARD" /> til að uppfæra kortaupplýsingarnar. Greiðslukortaupplýsingum af Google reikningnum þínum verður deilt með vefsvæðinu eftir að þú hefur staðfest.</translation>
 <translation id="4800132727771399293">Athugaðu gildistímann og CVC-númerið og reyndu aftur</translation>
-<translation id="480334179571489655">Villa í upprunareglu</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Leiðbeiningar frá stjórnanda tækisins:</translation>
 <translation id="4812751092864334025">Tækni sem notandi ber á sér</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Gulur</translation>
 <translation id="5903264686717710770">Titill:</translation>
 <translation id="5904360430676679685">Fjölskylda og sambönd</translation>
-<translation id="5905445707201418379">Lokað á samkvæmt upprunareglu <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (samstillt)</translation>
 <translation id="59174027418879706">Virkt</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_it.xtb b/components/strings/components_strings_it.xtb
index 9d153c3..b1337b83 100644
--- a/components/strings/components_strings_it.xtb
+++ b/components/strings/components_strings_it.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Carattere monospazio</translation>
 <translation id="1763864636252898013">Questo server non è riuscito a dimostrare che si tratta di <ph name="DOMAIN" />; il relativo certificato di sicurezza non è considerato attendibile dal sistema operativo del dispositivo. Il problema potrebbe essere dovuto a un'errata configurazione o a un malintenzionato che intercetta la connessione.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Prova a eseguire lo strumento Diagnostica di rete Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Il server a cui ti stai collegando, <ph name="ORIGIN" />, ha impostato un'intestazione
-    che richiede l'applicazione di un criterio di origine per tutte le richieste indirizzate al server. Tuttavia
-    l'intestazione non è in formato corretto e impedisce al browser di soddisfare
-    la tua richiesta per <ph name="SITE" />. I criteri di origine possono essere usati dagli
-    operatori del sito per configurare la sicurezza e altre proprietà del sito.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Scopri di più sulla modalità di navigazione in incognito in Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Le tue schede aperte vengono visualizzate qui</translation>
@@ -1108,8 +1103,6 @@
 <translation id="3987940399970879459">Meno di 1 MB</translation>
 <translation id="3990250421422698716">Offset jog</translation>
 <translation id="3992684624889376114">Informazioni su questa pagina</translation>
-<translation id="3996311196211510766">Il sito <ph name="ORIGIN" /> ha richiesto l'applicazione di un criterio di origine
-    a tutte le richieste indirizzate a esso, ma questo criterio al momento non può essere applicato.</translation>
 <translation id="4006465311664329701">Metodi di pagamento, offerte e indirizzi che utilizzano Google Pay</translation>
 <translation id="4009243425692662128">I contenuti delle pagine che stampi vengono inviati a Google Cloud o a terze parti per essere analizzati. Ad esempio, potrebbero essere sottoposti a scansione alla ricerca di dati sensibili.</translation>
 <translation id="4010758435855888356">Vuoi consentire l'accesso allo spazio di archiviazione?</translation>
@@ -1174,11 +1167,6 @@
 <translation id="4202554117186904723">Quinto rullo</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Controllare le configurazioni del firewall e antivirus<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Grande</translation>
-<translation id="4209166701302774460">Il server a cui ti stai collegando, <ph name="ORIGIN" />, ha richiesto
-    l'applicazione di un criterio di origine per tutte le richieste indirizzate al server. Tuttavia, adesso non
-    è riuscito a pubblicare un criterio e ciò impedisce al browser
-    di soddisfare la tua richiesta per il sito <ph name="SITE" />. I criteri di origine possono essere usati dagli
-    operatori del sito per configurare la sicurezza e altre proprietà del sito.</translation>
 <translation id="4210602799576081649">Codice di verifica scaduto, richiedi nuovo codice</translation>
 <translation id="421066178035138955">Usare dati e dispositivi per realtà virtuale</translation>
 <translation id="4213305257324635756">Film di animazione</translation>
@@ -1206,7 +1194,6 @@
     &lt;p&gt;Se l'errore persiste, contatta il proprietario del sito web.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Prova a eseguire lo strumento Diagnostica di rete<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Può chiedere di usare e muovere la videocamera</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Vai a <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Valido</translation>
 <translation id="4250431568374086873">La connessione a questo sito non è completamente protetta</translation>
 <translation id="4250680216510889253">No</translation>
@@ -1410,7 +1397,6 @@
 <translation id="4796594887379589189">ID account lavoro</translation>
 <translation id="4798078619018708837">Inserisci la data di scadenza e il codice CVC della carta <ph name="CREDIT_CARD" /> per aggiornare i relativi dettagli. Dopo essere stati confermati, i dati della carta del tuo Account Google saranno condivisi con questo sito.</translation>
 <translation id="4800132727771399293">Controlla la data di scadenza e il codice CVC, poi riprova</translation>
-<translation id="480334179571489655">Errore norma di partenza</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Istruzioni dell'amministratore del tuo dispositivo:</translation>
 <translation id="4812751092864334025">Tecnologia indossabile</translation>
@@ -1805,7 +1791,6 @@
 <translation id="5901630391730855834">Giallo</translation>
 <translation id="5903264686717710770">Titolo:</translation>
 <translation id="5904360430676679685">Famiglia e relazioni</translation>
-<translation id="5905445707201418379">Bloccato secondo la norma di partenza di <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sincronizzati)</translation>
 <translation id="59174027418879706">Attivato</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_iw.xtb b/components/strings/components_strings_iw.xtb
index 8485ef8..ca79140 100644
--- a/components/strings/components_strings_iw.xtb
+++ b/components/strings/components_strings_iw.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">‏גופן Monospace</translation>
 <translation id="1763864636252898013">השרת הזה לא הצליח להוכיח שהוא <ph name="DOMAIN" />. אישור האבטחה שלו לא נחשב כמהימן על ידי מערכת ההפעלה של המכשיר. ייתכן שהסיבה לכך היא תצורה שגויה או תוקף המיירט את החיבור שלך.</translation>
 <translation id="1768211456781949159">‏<ph name="BEGIN_LINK" />יש לנסות להפעיל את אבחון הרשת של Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">בשרת שאליו ביקשת לעבור, <ph name="ORIGIN" />, הוגדרה כותרת
-    שדורשת להחיל מדיניות מקור על כל הבקשות הנשלחות אליו. עם זאת,
-    פורמט הכותרת שגוי, ולכן הדפדפן לא יכול למלא
-    את הבקשה שלך בשביל <ph name="SITE" />. מפעילי אתרים יכולים להשתמש במדיניות מקור
-    כדי להגדיר מאפייני אבטחה ומאפיינים אחרים עבור אתר מסוים.</translation>
 <translation id="1774592222195216949">‏<ph name="BEGIN_LINK" />מידע נוסף על מצב פרטי ב-Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">כאן מופיעות הכרטיסיות שפתחת</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">‏פחות מ-‎1 MB</translation>
 <translation id="3990250421422698716">היסט הלשונית</translation>
 <translation id="3992684624889376114">מידע על הדף הזה</translation>
-<translation id="3996311196211510766">האתר <ph name="ORIGIN" /> ביקש להחיל מדיניות מקור
-    על כל הבקשות הנשלחות אליו, אבל לא ניתן כרגע להחיל את המדיניות הזו.</translation>
 <translation id="4006465311664329701">‏אמצעי תשלום, מבצעים וכתובות שנשמרו ב‑Google Pay</translation>
 <translation id="4009243425692662128">‏התוכן של הדפים המודפסים נשלח ל-Google Cloud או לצדדים שלישיים לצורך ניתוח. לדוגמה, יכול להיות שהטקסט יעבור סריקה כדי לאתר מידע אישי רגיש.</translation>
 <translation id="4010758435855888356">לאפשר את הגישה לאחסון?</translation>
@@ -1177,9 +1170,6 @@
 <translation id="4202554117186904723">הגליל החמישי</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />לבדוק את תצורת האנטי-וירוס וחומת האש<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">גדול</translation>
-<translation id="4209166701302774460">השרת שאליו ביקשת לעבור, <ph name="ORIGIN" />, ביקש
-    להחיל מדיניות מקור על כל הבקשות הנשלחות אליו. עם זאת, הוא לא הצליח לספק עכשיו מדיניות, ומצב זה מונע מהדפדפן למלא את הבקשה לעבור אל <ph name="SITE" />. מפעילי אתרים יכולים להשתמש במדיניות מקור
-    כדי להגדיר מאפייני אבטחה ומאפיינים אחרים עבור אתר מסוים.</translation>
 <translation id="4210602799576081649">פג התוקף של קוד האימות. צריך לבקש קוד חדש</translation>
 <translation id="421066178035138955">להשתמש במכשירי מציאות מדומה ובנתוני מציאות מדומה</translation>
 <translation id="4213305257324635756">סרטי אנימציה</translation>
@@ -1207,7 +1197,6 @@
     &lt;p&gt;אם השגיאה עדיין מופיעה, יש לפנות לבעלי האתר.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />יש לנסות להפעיל את אבחון הרשת<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">האתר יכול לבקש הרשאה להשתמש במצלמה ולהזיז אותה</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />המשך אל <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">תקף</translation>
 <translation id="4250431568374086873">החיבור שלך לאתר הזה לא מאובטח בצורה מלאה</translation>
 <translation id="4250680216510889253">לא</translation>
@@ -1415,7 +1404,6 @@
 <translation id="4796594887379589189">מזהה חשבון עבודה</translation>
 <translation id="4798078619018708837">‏כדי לעדכן את פרטי הכרטיס, יש להזין את תאריך התפוגה וקוד האימות של <ph name="CREDIT_CARD" />. אחרי שנקבל ממך אישור, נשתף עם האתר הזה את פרטי הכרטיס מחשבון Google.</translation>
 <translation id="4800132727771399293">‏יש לבדוק את תאריך התפוגה ואת ה-CVC ולנסות שוב</translation>
-<translation id="480334179571489655">שגיאת מדיניות מקור</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">הוראות ממנהל המכשיר שלך:</translation>
 <translation id="4812751092864334025">טכנולוגיה לבישה</translation>
@@ -1811,7 +1799,6 @@
 <translation id="5901630391730855834">צהוב</translation>
 <translation id="5903264686717710770">כותרת:</translation>
 <translation id="5904360430676679685">משפחה ומערכות יחסים</translation>
-<translation id="5905445707201418379">נחסם בהתאם למדיניות המקור של <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (מסונכרנים)</translation>
 <translation id="59174027418879706">מופעל</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ja.xtb b/components/strings/components_strings_ja.xtb
index 682c736..af0f187 100644
--- a/components/strings/components_strings_ja.xtb
+++ b/components/strings/components_strings_ja.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Monospace フォント</translation>
 <translation id="1763864636252898013">このサーバーが <ph name="DOMAIN" /> であることを確認できませんでした。このサーバーのセキュリティ証明書は、ご使用のデバイスのオペレーティング システムによって信頼されているものではありません。原因としては、不適切な設定や、悪意のあるユーザーによる接続妨害が考えられます。</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows ネットワーク診断ツールを実行してみてください<ph name="END_LINK" />。</translation>
-<translation id="1772163372082567643">アクセスしているサーバー <ph name="ORIGIN" /> では、サーバーへのすべてのリクエストにオリジン ポリシーを適用することを求めるヘッダーが設定されていますが、ヘッダーの形式が正しくないため、ブラウザは <ph name="SITE" /> のリクエストを満たすことができません。オリジン ポリシーは、サイトのセキュリティやその他のプロパティを設定する目的でパブリッシャーが使用するものです。</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium のシークレット モードについて<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">最近開いたタブがここに表示されます</translation>
@@ -1107,7 +1106,6 @@
 <translation id="3987940399970879459">1 MB 未満</translation>
 <translation id="3990250421422698716">ジョグ オフセット</translation>
 <translation id="3992684624889376114">このページについて</translation>
-<translation id="3996311196211510766">サイト <ph name="ORIGIN" /> では、サイトへのすべてのリクエストにオリジン ポリシーの適用を求めていますが、このポリシーは現在適用することができません。</translation>
 <translation id="4006465311664329701">Google Pay を使用したお支払方法、クーポン、住所</translation>
 <translation id="4009243425692662128">印刷するページのコンテンツは分析のため Google Cloud または第三者に送信されます。たとえば、機密データがないかスキャンされます。</translation>
 <translation id="4010758435855888356">ストレージへのアクセスを許可しますか?</translation>
@@ -1172,7 +1170,6 @@
 <translation id="4202554117186904723">ロール 5</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ファイアウォールとウイルス対策の設定を確認する<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">大</translation>
-<translation id="4209166701302774460">アクセスしているサーバー <ph name="ORIGIN" /> では、サーバーへのすべてのリクエストにオリジン ポリシーを適用することが求められていますが、ポリシーがサーバーから送信されなかったため、ブラウザは <ph name="SITE" /> のリクエストを満たすことができません。オリジン ポリシーは、サイトのセキュリティやその他のプロパティを設定する目的でパブリッシャーが使用するものです。</translation>
 <translation id="4210602799576081649">確認コードの有効期限が切れています。新しいコードをリクエストしてください</translation>
 <translation id="421066178035138955">バーチャル リアリティ デバイスとデータの使用</translation>
 <translation id="4213305257324635756">アニメ映画</translation>
@@ -1200,7 +1197,6 @@
     &lt;p&gt;引き続きエラーが表示される場合は、ウェブサイトの所有者にお問い合わせください。&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />ネットワーク診断ツールを実行してみてください<ph name="END_LINK" />。</translation>
 <translation id="4230204356098880324">カメラの使用と移動を要求できる</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> に移動<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">有効</translation>
 <translation id="4250431568374086873">このサイトへの接続は完全には保護されていません</translation>
 <translation id="4250680216510889253">いいえ</translation>
@@ -1404,7 +1400,6 @@
 <translation id="4796594887379589189">ジョブ管理 ID</translation>
 <translation id="4798078619018708837">カード情報を更新するには <ph name="CREDIT_CARD" /> の有効期限と CVC を入力します。確認後、Google アカウントのカード情報がこのサイトと共有されます。</translation>
 <translation id="4800132727771399293">有効期限と CVC を確認してからもう一度お試しください</translation>
-<translation id="480334179571489655">オリジン ポリシーエラー</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">デバイス管理者からの指示:</translation>
 <translation id="4812751092864334025">ウェアラブル技術</translation>
@@ -1799,7 +1794,6 @@
 <translation id="5901630391730855834">黄</translation>
 <translation id="5903264686717710770">タイトル:</translation>
 <translation id="5904360430676679685">家族、人間関係</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> のオリジン ポリシーに沿ってブロックしました。</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" />(同期済み)</translation>
 <translation id="59174027418879706">有効</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ka.xtb b/components/strings/components_strings_ka.xtb
index a995de5b..21c780b 100644
--- a/components/strings/components_strings_ka.xtb
+++ b/components/strings/components_strings_ka.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Monospace შრიფტი</translation>
 <translation id="1763864636252898013">ეს ს ერვერი ვერ ამტკიცებს, რომ ის არის <ph name="DOMAIN" />; მისი უსაფრთხოების სერთიფიკატი არ ენდობა თქვენი მოწყობილობის ოპერაციულ სისტემას. ეს შეიძლება იყოს გამოწვეული არასწორი კონფიგურაციით ან თავდამსხმელის მიერ თქვენი კავშირის გადაჭრით.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />სცადეთ Windows-ის ქსელის დიაგნოსტიკის ხელსაწყოს გაშვება<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">სერვერმა, რომელზე გადასვლასაც ცდილობთ (<ph name="ORIGIN" />), დააყენა სათაური, რომლისადმი ყველა მიმართვაც საჭიროებს წყაროს წესების გამოყენებას. სამწუხაროდ, სათაური არასწორად ფორმულირებულია, რის გამოც ბრაუზერი <ph name="SITE" />-თან დაკავშირებულ თქვენს მოთხოვნას ვერ ასრულებს. წყაროს წესების მეშვეობით საიტების ოპერატორებს შეუძლიათ ამა თუ იმ საიტის უსაფრთხოებისა და სხვა მახასიათებლების კონფიგურაცია.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />შეიტყვეთ მეტი ინკოგნიტო რეჟიმის შესახებ Chromium-ში<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">აქ გამოჩნდება თქვენი გახსნილი ჩანართები</translation>
@@ -1107,7 +1106,6 @@
 <translation id="3987940399970879459">1 მბაიტზე ნაკლები</translation>
 <translation id="3990250421422698716">კიდის წანაცვლება</translation>
 <translation id="3992684624889376114">ამ გვერდის შესახებ</translation>
-<translation id="3996311196211510766">საიტმა (<ph name="ORIGIN" />) მოითხოვა წყაროს წესების მისადაგება მის მიმართ ყველა მოთხოვნისთვის, თუმცა ამ წესების მისადაგება ამჟამად ვერ ხერხდება.</translation>
 <translation id="4006465311664329701">გადახდის მეთოდები, შემოთავაზებები და მისამართები Google Pay-დან</translation>
 <translation id="4009243425692662128">თქვენ მიერ ამობეჭდილი გვერდების კონტენტი, ანალიზის მიზნით, იგზავნება Google Cloud-ში ან მესამე მხარესთან. მაგალითად, შესაძლოა, შესრულდეს გვერდების სკანირება სენსიტიური მონაცემების აღმოჩენის მიზნით.</translation>
 <translation id="4010758435855888356">გსურთ მეხსიერებაზე წვდომის დაშვება?</translation>
@@ -1172,7 +1170,6 @@
 <translation id="4202554117186904723">მეხუთე რულონი</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ქსელის დაცვისა და ანტივირუსის კონფიგურაციების შემოწმება<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">დიდი</translation>
-<translation id="4209166701302774460">სერვერმა, რომელზე გადასვლასაც ცდილობთ (<ph name="ORIGIN" />), მოითხოვა წყაროს წესების მისადაგება მის მიმართ ყველა მოთხოვნისთვის. თუმცა მან ვერ უზრუნველყო წესები, რაც ხელს უშლის ბრაუზერს <ph name="SITE" />-თან დაკავშირებული თქვენი მოთხოვნის შესრულებაში. წყაროს წესების მეშვეობით საიტების ოპერატორებს შეუძლიათ ამა თუ იმ საიტის უსაფრთხოებისა და სხვა მახასიათებლების კონფიგურაცია.</translation>
 <translation id="4210602799576081649">დამადასტურებელ კოდს ვადა გაუვიდა, მოითხოვეთ ახალი</translation>
 <translation id="421066178035138955">ვირტუალური რეალობის მოწყობილობებისა და მონაცემების გამოყენება</translation>
 <translation id="4213305257324635756">ანიმაციური ფილმები</translation>
@@ -1200,7 +1197,6 @@
     &lt;p&gt;თუ შეცდომის შესახებ შეტყობინება კვლავ ჩნდება, დაუკავშირდით ვებსაიტის მფლობელს.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />სცადეთ ქსელის დიაგნოსტიკის ხელსაწყოს გაშვება<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">შეუძლია თქვენი კამერის გამოყენებისა და გადაადგილების თხოვნა</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" />-ზე გადასვლა<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">სწორია</translation>
 <translation id="4250431568374086873">თქვენი კავშირი ამ საიტთან სრულად დაცული არ არის</translation>
 <translation id="4250680216510889253">არა</translation>
@@ -1404,7 +1400,6 @@
 <translation id="4796594887379589189">დავალების ანგარიშის ID</translation>
 <translation id="4798078619018708837">თქვენი ბარათის დეტალების გასაახლებლად შეიყვანეთ <ph name="CREDIT_CARD" />-ის მოქმედების ვადის ამოწურვის თარიღი და CVC. დადასტურების შემდეგ ბარათის დეტალები თქვენი Google ანგარიშიდან გაზიარდება ამ საიტთან.</translation>
 <translation id="4800132727771399293">შეამოწმეთ ვადის გასვლის თარიღი, ასევე CVC კოდი და ხელახლა ცადეთ</translation>
-<translation id="480334179571489655">წყაროს წესების შეცდომა</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">ინსტრუქცია თქვენი მოწყობილობის ადმინისტრატორისგან:</translation>
 <translation id="4812751092864334025">ტარებადი ტექნოლოგია</translation>
@@ -1799,7 +1794,6 @@
 <translation id="5901630391730855834">ყვითელი</translation>
 <translation id="5903264686717710770">სათაური:</translation>
 <translation id="5904360430676679685">ოჯახი და ურთიერთობები</translation>
-<translation id="5905445707201418379">დაბლოკილია <ph name="ORIGIN" />-ის წყაროს წესების შესაბამისად.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (სინქრონიზებული)</translation>
 <translation id="59174027418879706">ჩართული</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_kk.xtb b/components/strings/components_strings_kk.xtb
index 5d380a4a..2652754 100644
--- a/components/strings/components_strings_kk.xtb
+++ b/components/strings/components_strings_kk.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace қарпі</translation>
 <translation id="1763864636252898013">Бұл сервер оның <ph name="DOMAIN" /> екендігін дәлелдей алмайды; оның қауіпсіздік сертификаты құрылғының операциялық жүйесі арқылы тексерілмеген. Бұған конфигурация ақаулығы немесе қаскүнемнің қосылымыңызды тоқтатуы себеп болуы мүмкін.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows Network Diagnostics құралын пайдаланып көріңіз<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Сіз өткелі тұрған <ph name="ORIGIN" /> сервері орнатқан атау
-    өзіне берілген сұраулардың барлығына түпнұсқа саясатының қолданылуын талап етті. Бірақ
-    атауының пішіні өзгерген, бұл — браузердің <ph name="SITE" /> сайтына берілген сұрауларды толтыруына
-    жол бермейді. Сайттың қауіпсіздік параметрлері мен
-    басқа сипаттарын конфигурациялау үшін сайт операторлары түпнұсқа саясаттарын қолдануы мүмкін.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium браузеріндегі инкогнито режимі туралы толығырақ<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Ашық қойынды осы жерден шығады</translation>
@@ -935,6 +930,7 @@
 <translation id="3477679029130949506">Фильм тізімдері және кинотеатрдан көрсету кестесі</translation>
 <translation id="3479552764303398839">Қазір емес</translation>
 <translation id="3484560055331845446">Google аккаунтыңызға кіре алмай қалуыңыз мүмкін. Chrome браузері құпия сөзді қазір өзгертуге кеңес береді. Сонан соң аккаунтқа кіру сұралады.</translation>
+<translation id="3484861421501147767">Еске салғыш: сақталған промокодыңыз бар</translation>
 <translation id="3487845404393360112">4-науа</translation>
 <translation id="3495081129428749620"><ph name="PAGE_TITLE" />
 бетінен табу</translation>
@@ -1109,8 +1105,6 @@
 <translation id="3987940399970879459">1 МБ-тан аз</translation>
 <translation id="3990250421422698716">Бірқалыпты ығысу</translation>
 <translation id="3992684624889376114">Осы бет туралы ақпарат</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> сайты өзінің барлық сұрауына түпнұсқа саясатын
-    қолдануын талап етті, бірақ бұл саясатты дәл қазір қолдану мүмкін емес.</translation>
 <translation id="4006465311664329701">Google Pay қызметіндегі төлеу әдістері, ұсыныстар және мекенжайлар</translation>
 <translation id="4009243425692662128">Сіз басып шығаратын беттердің мазмұны талдау үшін Google Cloud қызметіне немесе үшінші тараптарға жіберіледі. Мысалы, онда құпия деректердің бар-жоғы тексерілуі мүмкін.</translation>
 <translation id="4010758435855888356">Жадты пайдалануға рұқсат берілсін бе?</translation>
@@ -1175,11 +1169,6 @@
 <translation id="4202554117186904723">Бесінші орам</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Брандмауэр және антивирус конфигурацияларын тексеру<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Үлкен</translation>
-<translation id="4209166701302774460">Сіз кіргелі жатқан сервер (<ph name="ORIGIN" />) өзіне
-     жіберілген сұраулардың барлығына түпнұсқа саясатының қолданылуын талап етті. Бірақ ол
-    саясатты жеткізбеді, сондықтан браузер
-    <ph name="SITE" /> сайты үшін сұрауыңызды орындай алмайды. Сайттың қауіпсіздік параметрлері мен
-    басқа сипаттарын конфигурациялау үшін сайт операторлары түпнұсқа саясаттарын қолдануы мүмкін.</translation>
 <translation id="4210602799576081649">Растау кодының мерзімі өткен, жаңа код сұраңыз.</translation>
 <translation id="421066178035138955">Виртуалдық шындық құрылғыларын және деректерді пайдалану</translation>
 <translation id="4213305257324635756">Анимациялық фильмдер</translation>
@@ -1207,7 +1196,6 @@
   &lt;p&gt;Қате жойылмаса, веб-сайт иесіне хабарласыңыз.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Network Diagnostics құралын пайдаланып көріңіз<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Камераңызды қолдануға және жылжытуға рұқсат сұрай алады</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> сайтына өту<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Жарамды</translation>
 <translation id="4250431568374086873">Бұл сайтпен байланысыңыз толықтай қауіпсіз емес</translation>
 <translation id="4250680216510889253">Жоқ</translation>
@@ -1411,7 +1399,6 @@
 <translation id="4796594887379589189">Тапсырма аккаунтының идентификаторы</translation>
 <translation id="4798078619018708837">Карта мәліметтерін жаңарту үшін <ph name="CREDIT_CARD" /> картасының жарамдылық мерзімі мен CVC кодын енгізіңіз. Растағаннан кейін, Google аккаунтындағы карта мәліметтері осы сайтқа беріледі.</translation>
 <translation id="4800132727771399293">Жарамдылық мерзімі мен CVC кодын тексеріп, әрекетті қайталаңыз</translation>
-<translation id="480334179571489655">Бастапқы саясат қатесі</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Құрылғы әкімшісінің нұсқаулары:</translation>
 <translation id="4812751092864334025">Денеге тағылатын құрылғылар</translation>
@@ -1806,7 +1793,6 @@
 <translation id="5901630391730855834">Сары</translation>
 <translation id="5903264686717710770">Атауы:</translation>
 <translation id="5904360430676679685">Отбасы және қарым-қатынас</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> бастапқы саясатына сәйкес бөгелді.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (синхрондалған)</translation>
 <translation id="59174027418879706">Қосылған</translation>
 <translation id="5919090499915321845">B10</translation>
@@ -2223,6 +2209,7 @@
             <ph name="LIST_ITEM" />үлгілерге енгізілген ақпарат.<ph name="END_LIST_ITEM" />
           <ph name="END_LIST" /></translation>
 <translation id="7129409597930077180">Бұл мекенжайға жөнелтілмейді. Басқа мекенжайды таңдаңыз.</translation>
+<translation id="7129809579943936035"><ph name="VALUE_PROP" /> <ph name="DETAILS" /></translation>
 <translation id="7132939140423847331">Әкімші бұл деректің көшірілуіне тыйым салды.</translation>
 <translation id="7135130955892390533">Күйін көрсету</translation>
 <translation id="7138472120740807366">Жеткізу әдісі</translation>
diff --git a/components/strings/components_strings_km.xtb b/components/strings/components_strings_km.xtb
index 91c2b2e6..fed2589 100644
--- a/components/strings/components_strings_km.xtb
+++ b/components/strings/components_strings_km.xtb
@@ -337,11 +337,6 @@
 <translation id="1763864636252898013">ម៉ាស៊ីនមេនេះមិនអាចបង្ហាញថាវាជា <ph name="DOMAIN" /> ទេ វិញ្ញាបនប័ត្រសុវត្ថិភាពរបស់វា
 មិនត្រូវបានជឿ៌ជាក់ដោយប្រព័ន្ធប្រតិបត្តិការឧបករណ៍របស់អ្នកទេ។ នេះអាចបណ្តាលមកពីការកំណត់មិនត្រឹមត្រូវ ឬមានការស្ទាក់ការភ្ជាប់របស់អ្នកពីអ្នកវាយប្រហារ។</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />សាកល្បងដំណើរការការវិភាគបណ្តាញ Windows<ph name="END_LINK" /></translation>
-<translation id="1772163372082567643">ម៉ាស៊ីនមេ <ph name="ORIGIN" /> ដែលអ្នក​កំពុងចូលបានកំណត់ផ្នែកក្បាល
-    ដែលតម្រូវឱ្យអនុវត្ត​គោលការណ៍ដើម​ចំពោះគ្រប់សំណើ​មកកាន់វា។ ប៉ុន្តែ
-    ផ្នែកក្បាលនោះមានទម្រង់មិនត្រឹមត្រូវ ដែលជាហេតុធ្វើឱ្យកម្មវិធីរុករកតាមអ៊ីនធឺណិតមិនអាចបំពេញ
-    តាមសំណើរបស់អ្នកសម្រាប់ <ph name="SITE" />។ ប្រតិបត្តិករ​គេហទំព័រ​អាចប្រើ
-    គោលការណ៍​ដើម ដើម្បីកំណត់​រចនាសម្ព័ន្ធ​សុវត្ថិភាព និង​លក្ខណសម្បត្តិ​ផ្សេងទៀត​សម្រាប់​គេហទំព័រ​។</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />ស្វែងយល់បន្ថែមអំពីមុខងារឯកជននៅក្នុង Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">ផ្ទាំង​ដែល​អ្នកបានបើកបង្ហាញ​នៅ​ទីនេះ</translation>
@@ -1114,8 +1109,6 @@
 <translation id="3987940399970879459">តិចជាង 1 MB</translation>
 <translation id="3990250421422698716">គម្លាតរុញ</translation>
 <translation id="3992684624889376114">អំពី​ទំព័រ​នេះ</translation>
-<translation id="3996311196211510766">គេហទំព័រ <ph name="ORIGIN" /> បានស្នើសុំឱ្យ​អនុវត្ត​គោលការណ៍​ដើម
-    ចំពោះ​គ្រប់សំណើ​មក​កាន់​វា ប៉ុន្តែ​គោលការណ៍នេះមិនអាច​អនុវត្ត​បាន​ទេក្នុងពេលបច្ចុប្បន្ន។</translation>
 <translation id="4006465311664329701">វិធី​បង់ប្រាក់ ការផ្ដល់ជូន និង​អាសយដ្ឋាន​ដែលប្រើ Google Pay</translation>
 <translation id="4009243425692662128">ខ្លឹមសារក្នុងទំព័រដែលអ្នកបោះពុម្ពត្រូវបានផ្ញើទៅ Google Cloud ឬភាគីទីបីដើម្បីវិភាគ។ ឧទាហរណ៍ ខ្លឹមសារនោះ​អាចត្រូវបាន​ស្កេន ដើម្បីរកមើល​ទិន្នន័យ​រសើប​។</translation>
 <translation id="4010758435855888356">អនុញ្ញាត​ឱ្យចូលប្រើ​ទំហំផ្ទុក​ដែរទេ?</translation>
@@ -1180,11 +1173,6 @@
 <translation id="4202554117186904723">ដុំទីប្រាំ</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ពិនិត្យការកំណត់រចនាសម្ព័ន្ធ firewall និងកម្មវិធីកម្ចាត់មេរោគ<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">ធំ</translation>
-<translation id="4209166701302774460">ម៉ាស៊ីនមេ <ph name="ORIGIN" /> ដែលអ្នក​កំពុងចូលបាន​ស្នើឱ្យ
-    អនុវត្ត​គោលការណ៍ដើម​ចំពោះគ្រប់សំណើ​មកកាន់វា។ ប៉ុន្តែ​ឥឡូវនេះ ម៉ាស៊ីនមេ​នេះមិនអាច
-    ផ្ដល់​គោលការណ៍បានទេ​ ដែល​ជាហេតុ​ធ្វើឱ្យ​កម្មវិធីរុករក​តាមអ៊ីនធឺណិត​មិនអាច​បំពេញតាមសំណើ​របស់អ្នក
-    សម្រាប់ <ph name="SITE" /> បាន។ ប្រតិបត្តិករ​គេហទំព័រ​អាចប្រើគោលការណ៍​ដើម
-     ដើម្បីកំណត់​រចនាសម្ព័ន្ធ​សុវត្ថិភាព និង​លក្ខណសម្បត្តិ​ផ្សេងទៀត​សម្រាប់​គេហទំព័រ​។</translation>
 <translation id="4210602799576081649">លេខកូដផ្ទៀងផ្ទាត់បានផុតកំណត់ សូមស្នើលេខកូដថ្មី</translation>
 <translation id="421066178035138955">ប្រើ​ទិន្នន័យ និង​ឧបករណ៍ VR</translation>
 <translation id="4213305257324635756">ភាពយន្ត​គំនូរជីវចល</translation>
@@ -1212,7 +1200,6 @@
     &lt;p&gt;ប្រសិនបើ​អ្នកនៅតែ​មើលឃើញ​បញ្ហានេះ សូម​ទាក់ទង​ម្ចាស់​គេហទំព័រ។&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />សាកល្បងដំណើរការការវិភាគបណ្តាញ<ph name="END_LINK" /></translation>
 <translation id="4230204356098880324">អាចស្នើសុំ​ប្រើ និងផ្លាស់ទី​កាមេរ៉ា​របស់អ្នក</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />បន្តទៅ <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">មានសុពលភាព</translation>
 <translation id="4250431568374086873">ការតភ្ជាប់របស់អ្នកទៅគេហទំព័រនេះមិនមានសុវត្ថិភាពពេញលេញទេ</translation>
 <translation id="4250680216510889253">ទេ</translation>
@@ -1417,7 +1404,6 @@
 <translation id="4796594887379589189">លេខសម្គាល់​គណនីការងារ</translation>
 <translation id="4798078619018708837">បញ្ចូល​កាលបរិច្ឆេទ​ផុតកំណត់ និង CVC សម្រាប់ <ph name="CREDIT_CARD" /> ដើម្បី​ធ្វើបច្ចុប្បន្ន​ភាព​ព័ត៌មាន​លម្អិត​អំពីកាតរបស់អ្នក។ បន្ទាប់ពី​អ្នក​បញ្ជាក់​ហើយ ព័ត៌មាន​លម្អិត​អំពី​កាតដែលបាន​មកពីគណនី Google របស់អ្នក​នឹងត្រូវ​បាន​ចែករំលែក​ជាមួយ​គេហទំព័រ​នេះ។</translation>
 <translation id="4800132727771399293">ពិនិត្យកាលបរិចេ្ឆទផុតកំណត់ និងលេខកូដ CVC ហើយព្យាយាមម្តងទៀត</translation>
-<translation id="480334179571489655">បញ្ហា​គោលការណ៍​ប្រភពដើម</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">ការណែនាំពីអ្នកគ្រប់គ្រងឧបករណ៍របស់អ្នក៖</translation>
 <translation id="4812751092864334025">បច្ចេកវិទ្យា​ឧបករណ៍​អាចពាក់បាន</translation>
@@ -1812,7 +1798,6 @@
 <translation id="5901630391730855834">លឿង</translation>
 <translation id="5903264686717710770">ចំណង​ជើង៖</translation>
 <translation id="5904360430676679685">គ្រួសារ និង​ទំនាក់ទំនង</translation>
-<translation id="5905445707201418379">បានទប់ស្កាត់​ដោយ​ផ្អែកលើ​គោលការណ៍​ដើម​របស់ <ph name="ORIGIN" /> ។</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (បានធ្វើសមកាលកម្ម)</translation>
 <translation id="59174027418879706">បានបើកដំណើរការ</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_kn.xtb b/components/strings/components_strings_kn.xtb
index e9e7617..6d0db2eb 100644
--- a/components/strings/components_strings_kn.xtb
+++ b/components/strings/components_strings_kn.xtb
@@ -334,10 +334,6 @@
 <translation id="1757773103848038814">ಮೊನೋಸ್ಪೇಸ್ ಫಾಂಟ್</translation>
 <translation id="1763864636252898013">ಈ ಸರ್ವರ್ <ph name="DOMAIN" /> ಆಗಿದೆ ಎಂಬುದನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ; ಅದರ ಸುರಕ್ಷತಾ ಪ್ರಮಾಣಪತ್ರವು ನಿಮ್ಮ ಸಾಧನದ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಂ‌ ಪ್ರಕಾರ ವಿಶ್ವಾಸಾರ್ಹವಾಗಿಲ್ಲ. ಇದು ತಪ್ಪು ಕಾನ್ಫಿಗರೇಶನ್‌ನಿಂದ ಅಥವಾ ಆಕ್ರಮಣಕಾರರು ನಿಮ್ಮ ಸಂಪರ್ಕದಲ್ಲಿ ಒಳನುಸುಳಿರುವುದರಿಂದ ಆಗಿರಬಹುದು.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows ನೆಟ್‌ವರ್ಕ್ ಡಯಾಗ್ನಾಸ್ಟಿಕ್ಸ್‌ ರನ್ ಮಾಡಲು ಪ್ರಯತ್ನಿಸಿ‌<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">ನೀವು ಪ್ರವೇಶಿಸುತ್ತಿರುವ ಸರ್ವರ್, <ph name="ORIGIN" />, ಹೆಡರ್ ಫೈಲ್ ಅನ್ನು 
-ಸೆಟ್ ಮಾಡಿದೆ ಹಾಗೂ ತನ್ನ ಎಲ್ಲಾ ವಿನಂತಿಗಳಿಗೆ ಮೂಲ ಕಾರ್ಯನೀತಿಯನ್ನು ಅನ್ವಯಿಸಲು ವಿನಂತಿಸಿದೆ. ಆದರೆ,
-    ಹೆಡರ್ ಫೈಲ್ ವಿರೂಪಗೊಂಡಿದೆ, <ph name="SITE" /> ಅನ್ನು ಪ್ರವೇಶಿಸಲು ನಿಮ್ಮ ವಿನಂತಿಯನ್ನು
-    ಬ್ರೌಸರ್ ಪೂರೈಸದಂತೆ ತಡೆಯುತ್ತದೆ. ಸೈಟ್‌ ಒಂದಕ್ಕಾಗಿ ಸುರಕ್ಷತೆ ಮತ್ತು ಇತರ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಲು ಸೈಟ್ ಆಪರೇಟರ್‌ಗಳು ಮೂಲ ಕಾರ್ಯನೀತಿಗಳನ್ನು ಬಳಸಬಹುದು.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium ನಲ್ಲಿ ಅದೃಶ್ಯ ಮೋಡ್ ಕುರಿತು ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">ನಿಮ್ಮ ತೆರೆಯಲಾದ ಟ್ಯಾಬ್‌ಗಳು ಇಲ್ಲಿ ಗೋಚರಿಸುತ್ತದೆ</translation>
@@ -1106,7 +1102,6 @@
 <translation id="3987940399970879459">1 MB ಗಿಂತ ಕಡಿಮೆ</translation>
 <translation id="3990250421422698716">ಜಾಗ್ ಆಫ್‌ಸೆಟ್</translation>
 <translation id="3992684624889376114">ಈ ಪುಟದ ಕುರಿತು</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> ಸೈಟ್ ತನ್ನ ಎಲ್ಲಾ ವಿನಂತಿಗಳಿಗೆ ಮೂಲ ಕಾರ್ಯನೀತಿಯೊಂದನ್ನು ಅನ್ವಯಿಸಲು ವಿನಂತಿಸಿದೆ, ಆದರೆ ಈ ಕಾರ್ಯನೀತಿಯನ್ನು ಪ್ರಸ್ತುತವಾಗಿ ಅನ್ವಯಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ.</translation>
 <translation id="4006465311664329701">Google Pay ಅನ್ನು ಬಳಸುತ್ತಿರುವ ಪಾವತಿ ವಿಧಾನಗಳು, ಆಫರ್‌ಗಳು ಮತ್ತು ವಿಳಾಸಗಳು</translation>
 <translation id="4009243425692662128">ನೀವು ಪ್ರಿಂಟ್ ಮಾಡುವ ಪುಟಗಳ ವಿಷಯವನ್ನು ವಿಶ್ಲೇಷಣೆಗಾಗಿ Google ಕ್ಲೌಡ್‌ ಅಥವಾ ಮೂರನೇ ವ್ಯಕ್ತಿಗಳಿಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಸೂಕ್ಷ್ಮವಾದ ವೈಯಕ್ತಿಕ ಡೇಟಾವನ್ನು ಪತ್ತೆಹಚ್ಚಲು ಅದನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡಬಹುದು.</translation>
 <translation id="4010758435855888356">ಸಂಗ್ರಹಣೆಯನ್ನು ಪ್ರವೇಶಿಸಲು ಅನುಮತಿಸಬೇಕೆ?</translation>
@@ -1171,7 +1166,6 @@
 <translation id="4202554117186904723">ಐದನೇ ರೋಲ್</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ಫೈರ್‌ವಾಲ್ ಮತ್ತು ಆಂಟಿವೈರಸ್ ಕಾನ್ಫಿಗರೇಶನ್‌‌ಗಳನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">ದೊಡ್ಡದು</translation>
-<translation id="4209166701302774460">ನೀವು ಪ್ರವೇಶಿಸುತ್ತಿರುವ ಸರ್ವರ್, <ph name="ORIGIN" />, ತನ್ನ ಎಲ್ಲಾ ವಿನಂತಿಗಳಿಗೆ ಮೂಲ ಕಾರ್ಯನೀತಿಯನ್ನು ಅನ್ವಯಿಸಲು ವಿನಂತಿಸಿದೆ. ಅದರೆ ಇದು ಈಗ ಕಾರ್ಯನೀತಿಯನ್ನು ಒದಗಿಸಲು ವಿಫಲವಾಗಿದೆ, ಇದು <ph name="SITE" /> ಗಾಗಿ ನಿಮ್ಮ ವಿನಂತಿಯನ್ನು ಪೂರ್ಣಗೊಳಿಸದಂತೆ ಬ್ರೌಸರ್ ಅನ್ನು ತಡೆಯುತ್ತದೆ. ಸೈಟ್‌ ಒಂದಕ್ಕಾಗಿ ಸುರಕ್ಷತೆ ಮತ್ತು ಇತರ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಲು ಸೈಟ್ ಆಪರೇಟರ್‌ಗಳು ಮೂಲ ಕಾರ್ಯನೀತಿಗಳನ್ನು ಬಳಸಬಹುದು.</translation>
 <translation id="4210602799576081649">ದೃಢೀಕರಣ ಕೋಡ್ ಅವಧಿ ಮೀರಿದೆ, ಹೊಸ ಕೋಡ್‌ಗಾಗಿ ವಿನಂತಿಸಿ</translation>
 <translation id="421066178035138955">ವರ್ಚುವಲ್ ರಿಯಾಲಿಟಿ ಸಾಧನಗಳು ಮತ್ತು ಡೇಟಾವನ್ನು ಬಳಸಿ</translation>
 <translation id="4213305257324635756">ಆ್ಯನಿಮೇಟೆಡ್ ಚಲನಚಿತ್ರಗಳು</translation>
@@ -1199,7 +1193,6 @@
     &lt;p&gt;ದೋಷವು ಇನ್ನೂ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತಿದ್ದರೆ, ವೆಬ್‌ಸೈಟ್ ಮಾಲೀಕರನ್ನು ಸಂಪರ್ಕಿಸಿ.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />ನೆಟ್‌ವರ್ಕ್ ಡಯಾಗ್ನಾಸ್ಟಿಕ್ಸ್‌ ರನ್ ಮಾಡಲು ಪ್ರಯತ್ನಿಸಿ<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">ನಿಮ್ಮ ಕ್ಯಾಮರಾವನ್ನು ಬಳಸಲು ಮತ್ತು ಸರಿಸಲು ಕೇಳಬಹುದು</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> ವೆಬ್‌ಸೈಟ್‌ಗೆ ಮುಂದುವರೆಯಿರಿ<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">ಮಾನ್ಯವಾಗಿದೆ</translation>
 <translation id="4250431568374086873">ಈ ಸೈಟ್‌ಗೆ ನಿಮ್ಮ ಸಂಪರ್ಕವು ಸಂಪೂರ್ಣವಾಗಿ ಸುರಕ್ಷಿತವಾಗಿಲ್ಲ</translation>
 <translation id="4250680216510889253">ಇಲ್ಲ</translation>
@@ -1403,7 +1396,6 @@
 <translation id="4796594887379589189">ಕೆಲಸದ ಖಾತೆ ಐಡಿ</translation>
 <translation id="4798078619018708837">ನಿಮ್ಮ ಕಾರ್ಡ್‌ ವಿವರಗಳನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲು <ph name="CREDIT_CARD" /> ಗೆ ಸಂಬಂಧಿಸಿದ ಅವಧಿ ಮುಕ್ತಾಯದ ದಿನಾಂಕ ಮತ್ತು CVC ಅನ್ನು ನಮೂದಿಸಿ. ನೀವು ಖಚಿತಪಡಿಸಿದ ನಂತರ, ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿನ ಕಾರ್ಡ್ ವಿವರಗಳನ್ನು ಈ ಸೈಟ್ ಜೊತೆಗೆ ಹಂಚಿಕೊಳ್ಳಲಾಗುತ್ತದೆ.</translation>
 <translation id="4800132727771399293">ನಿಮ್ಮ ಮುಕ್ತಾಯದ ದಿನಾಂಕ ಮತ್ತು CVC ಪರಿಶೀಲಿಸಿ ಹಾಗೂ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ</translation>
-<translation id="480334179571489655">ಮೂಲ ಕಾರ್ಯನೀತಿಯ ದೋಷ</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">ನಿಮ್ಮ ಸಾಧನದ ನಿರ್ವಾಹಕರಿಂದ ಸೂಚನೆಗಳು</translation>
 <translation id="4812751092864334025">ಧರಿಸಬಹುದಾದ ತಂತ್ರಜ್ಞಾನ</translation>
@@ -1798,7 +1790,6 @@
 <translation id="5901630391730855834">ಹಳದಿ</translation>
 <translation id="5903264686717710770">ಶೀರ್ಷಿಕೆ:</translation>
 <translation id="5904360430676679685">ಕುಟುಂಬ ಮತ್ತು ಸಂಬಂಧಗಳು</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> ನ ಮೂಲ ಕಾರ್ಯನೀತಿಗೆ ಅನುಗುಣವಾಗಿ ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (ಸಿಂಕ್‌ ಮಾಡಲಾಗಿದೆ)</translation>
 <translation id="59174027418879706">ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ko.xtb b/components/strings/components_strings_ko.xtb
index b46224f7..6272b86 100644
--- a/components/strings/components_strings_ko.xtb
+++ b/components/strings/components_strings_ko.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">고정폭 글꼴</translation>
 <translation id="1763864636252898013">이 서버가 <ph name="DOMAIN" />임을 입증할 수 없으며 기기의 운영체제에서 신뢰하는 보안 인증서가 아닙니다. 서버를 잘못 설정했거나 불법 사용자가 연결을 가로채고 있기 때문일 수 있습니다.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows 네트워크 진단 프로그램을 실행<ph name="END_LINK" />해 보세요.</translation>
-<translation id="1772163372082567643">대상 서버인 <ph name="ORIGIN" />에서 헤더를 설정하여 서버로 전송되는 모든 요청에 출처 정책을 적용하도록 요청했습니다. 하지만 헤더의 형식이 잘못되어 브라우저에서 <ph name="SITE" />에 관한 요청을 처리할 수 없습니다. 사이트 운영자는 출처 정책을 사용해 사이트의 보안 및 기타 속성을 구성할 수 있습니다.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium 시크릿 모드 자세히 알아보기<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">열린 탭이 여기에 표시됩니다.</translation>
@@ -1107,7 +1106,6 @@
 <translation id="3987940399970879459">1MB 미만</translation>
 <translation id="3990250421422698716">조그 오프셋</translation>
 <translation id="3992684624889376114">이 페이지에 관한 정보</translation>
-<translation id="3996311196211510766">사이트 <ph name="ORIGIN" />에서 모든 요청에 출처 정책을 적용하도록 요청했으나 이 정책은 현재 적용할 수 없습니다.</translation>
 <translation id="4006465311664329701">Google Pay에 사용되는 결제 수단, 쿠폰, 주소</translation>
 <translation id="4009243425692662128">인쇄하는 페이지의 콘텐츠가 분석을 위해 Google Cloud 또는 타사로 전송됩니다. 예를 들어, 민감한 정보를 찾기 위해 텍스트를 스캔할 수 있습니다.</translation>
 <translation id="4010758435855888356">저장소 액세스 권한을 허용하시겠습니까?</translation>
@@ -1172,7 +1170,6 @@
 <translation id="4202554117186904723">5번째 롤</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />방화벽 및 바이러스 백신 소프트웨어 설정 확인<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">크게</translation>
-<translation id="4209166701302774460">대상 서버인 <ph name="ORIGIN" />에서 서버로 전송되는 모든 요청에 출처 정책을 적용하도록 요청했습니다. 하지만 현재 정책을 전달하는 데 실패하여 브라우저에서 <ph name="SITE" />에 관한 요청을 처리할 수 없습니다. 사이트 운영자는 출처 정책을 사용해 사이트의 보안 및 기타 속성을 구성할 수 있습니다.</translation>
 <translation id="4210602799576081649">인증 코드가 만료되었습니다. 새 코드를 요청하세요.</translation>
 <translation id="421066178035138955">가상 현실 기기 및 데이터 사용</translation>
 <translation id="4213305257324635756">애니메이션 영화</translation>
@@ -1200,7 +1197,6 @@
     &lt;p&gt;계속해서 오류가 표시되면 웹사이트 소유자에게 문의하세요.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />네트워크 진단 프로그램을 실행<ph name="END_LINK" />해 보세요.</translation>
 <translation id="4230204356098880324">카메라 사용 및 이동을 요청할 수 있음</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" />(으)로 이동<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">유효</translation>
 <translation id="4250431568374086873">이 사이트의 보안 연결(HTTPS)은 완벽하지 않습니다.</translation>
 <translation id="4250680216510889253">아니요</translation>
@@ -1404,7 +1400,6 @@
 <translation id="4796594887379589189">작업 계정 ID</translation>
 <translation id="4798078619018708837">카드 세부정보를 업데이트하려면 <ph name="CREDIT_CARD" /> 카드의 만료일과 CVC를 입력하세요. 카드를 확인하면 Google 계정의 카드 세부정보가 이 사이트와 공유됩니다.</translation>
 <translation id="4800132727771399293">유효기간과 CVC를 확인한 후 다시 시도해 주세요.</translation>
-<translation id="480334179571489655">기존 정책 오류</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">기기 관리자가 제공하는 지침:</translation>
 <translation id="4812751092864334025">웨어러블 기술</translation>
@@ -1799,7 +1794,6 @@
 <translation id="5901630391730855834">노란색</translation>
 <translation id="5903264686717710770">직책:</translation>
 <translation id="5904360430676679685">가족 및 대인관계</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" />의 기존 정책에 따라 차단됨</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" />(동기화됨)</translation>
 <translation id="59174027418879706">사용 가능</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ky.xtb b/components/strings/components_strings_ky.xtb
index d31ec21..476419d 100644
--- a/components/strings/components_strings_ky.xtb
+++ b/components/strings/components_strings_ky.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace ариби</translation>
 <translation id="1763864636252898013">Бул сервер <ph name="DOMAIN" /> экендигин далилдей алган жок; себеби түзмөгүңүздүн иш тутуму анын коопсуздук тастыктамасына ишенбейт. Мындай көйгөй туура эмес конфигурация менен шартталышы мүмкүн же туташууңузга чабуулчу кийлигишип жатат.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows аркылуу Тармак мүчүлүштүгүн аныктоону иштетип көрүңүз<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Сиз өтүүгө аракет кылып жаткан <ph name="ORIGIN" /> сервери
-    ушул сыяктуу бардык өтүнүчтөр үчүн баштапкы саясат колдонулсун деген аталышты койду. Бирок
-    аталыш бузук болгондуктан, серепчи <ph name="SITE" /> сайты үчүн коюлган өтүнүчтү
-    аткара албайт. Баштапкы саясаттар
-    сайттын операторлору тарабынан сайттын коопсуздугун жана башка касиеттерин конфигурациялоо үчүн колдонулат.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium'дагы жашыруун өтмөк жөнүндө кеңири маалымат<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0 (1030mm x 1456mm)</translation>
 <translation id="1787142507584202372">Ачылган өтмөктөр бул жерде көрүнөт</translation>
@@ -1110,8 +1105,6 @@
 <translation id="3987940399970879459">1 Мб азыраак</translation>
 <translation id="3990250421422698716">Оффсеттик басып чыгаруу</translation>
 <translation id="3992684624889376114">Бул бет жөнүндө</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> сайты бардык кирүү сурамдары үчүн баштапкы саясаты
-    колдонулсун деп суранды, бирок бул саясатты учурда колдонууга болбойт.</translation>
 <translation id="4006465311664329701">Google Pay'ди колдонгон төлөм ыкмалары, сунуштар жана даректер</translation>
 <translation id="4009243425692662128">Басып чыгарган барактардагы нерселер тууралуу маалымат талдоо үчүн Google Булутка же үчүнчү тараптарга жөнөтүлөт. Мисалы, анда купуя маалыматтын болуусу текшерилет.</translation>
 <translation id="4010758435855888356">Сактагычты колдонууга уруксат бересизби?</translation>
@@ -1176,11 +1169,6 @@
 <translation id="4202554117186904723">Бешинчи барабан</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Брандмауэр жана антивирус конфигурацияларын текшерип көрүңүз<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Чоң</translation>
-<translation id="4209166701302774460">Сиз өтүүгө аракет кылып жаткан <ph name="ORIGIN" /> сервери
-    ушул сыяктуу бардык өтүнүчтөр үчүн баштапкы саясаты колдонулсун деп суранды. Бирок азыр ал
-    саясатты көрсөтө алган жок,
-    андыктан <ph name="SITE" /> сайтына өтүү бөгөттөлдү. Баштапкы саясаттар
-    сайттын операторлору тарабынан сайттын коопсуздугун жана башка касиеттерин конфигурациялоо үчүн колдонулат.</translation>
 <translation id="4210602799576081649">Текшерүү кодунун мөөнөтү бүттү, жаңы кодду сураныңыз</translation>
 <translation id="421066178035138955">Виртуалдык чындык түзмөктөрүн жана маалыматтарды колдонуу</translation>
 <translation id="4213305257324635756">Анимацияланган тасмалар</translation>
@@ -1208,7 +1196,6 @@
     &lt;p&gt;Катаны дагы деле көрүп жатсаңыз, вебсайттын ээси менен байланышыңыз.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Тармак мүчүлүштүгүн аныктоону иштетип көрүңүз<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Камераңызды колдонууга жана жылдырууга уруксат сурай алат</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> сайтына улантуу<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Жарактуу</translation>
 <translation id="4250431568374086873">Бул сайтка туташуу толугу менен коопсуз эмес</translation>
 <translation id="4250680216510889253">Жок</translation>
@@ -1412,7 +1399,6 @@
 <translation id="4796594887379589189">Тапшырманын идентификатору</translation>
 <translation id="4798078619018708837">Картаңыздын реквизиттерин жаңыртуу үчүн, <ph name="CREDIT_CARD" /> картаңыздын жарамдуулук мөөнөтүн жана CVC кодун киргизиңиз. Сиз ырастагандан кийин, Google аккаунтуңуздагы картанын реквизиттери бул сайтка жөнөтүлөт.</translation>
 <translation id="4800132727771399293">Мөөнөтү бүтчү күндү жана CVC'иңизди текшерип, кайталап көрүңүз</translation>
-<translation id="480334179571489655">Түпнуска саясат катасы</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Түзмөгүңүздүн администратору жөнөткөн нускама:</translation>
 <translation id="4812751092864334025">Кийилүүчү технология</translation>
@@ -1807,7 +1793,6 @@
 <translation id="5901630391730855834">Сары</translation>
 <translation id="5903264686717710770">Аталышы:</translation>
 <translation id="5904360430676679685">Үй-бүлө жана мамилелер</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> баштапкы саясатына ылайык бөгөттөлдү.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (шайкештирилген)</translation>
 <translation id="59174027418879706">Иштетилген</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_lo.xtb b/components/strings/components_strings_lo.xtb
index 748577c..545e0f8b 100644
--- a/components/strings/components_strings_lo.xtb
+++ b/components/strings/components_strings_lo.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">ຟອນ Monospace</translation>
 <translation id="1763864636252898013">ເຊີບເວີນີ້ບໍ່ສາມາດພິສູດໄດ້ວ່າ ມັນແມ່ນ <ph name="DOMAIN" />; ໃບຢັ້ງຢືນຄວາມປອດໄພຂອງມັນບໍ່ໄດ້ຮັບການເຊື່ອໝັ້ນໂດຍລະບົບການດໍາເນີນງານຂອງອຸປະກອນຂອງທ່ານ. ອັນນີ້ອາດຈະເຮັດໃຫ້ເກີດມີການປັບຕັ້ງຄ່າຜິດ ຫຼືຜູ້ໂຈມຕີອາດຈະດັກເອົາການເຊື່ອມຕໍ່ຂອງທ່ານ.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />ລອງເປີດໃຊ້ Windows Network Diagnostics<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">ເຊີບເວີທີ່ທ່ານຈະໄປຫາ, <ph name="ORIGIN" />, ໄດ້ຕັ້ງຄ່າສ່ວນຫົວ
-    ທີ່ກຳນົດໃຫ້ນຳໃຊ້ນະໂຍບາຍຕົ້ນທາງກັບທຸກຄຳຂໍທີ່ສົ່ງຫາມັນ. ແຕ່
-    ສ່ວນຫົວດັ່ງກ່າວມີຮູບແບບບໍ່ຖືກຕ້ອງ, ເຊິ່ງເຮັດໃຫ້ໂປຣແກຣມທ່ອງເວັບດຳເນີນການຕາມ
-    ຄຳຂໍຂອງທ່ານສຳລັບ <ph name="SITE" /> ບໍ່ໄດ້. ນະໂຍບາຍຕົ້ນທາງສາມາດໃຊ້ໄດ້ໂດຍ
-    ຜູ້ໃຫ້ບໍລິການເວັບໄຊເພື່ອກຳນົດຄ່າຄວາມປອດໄພ ແລະ ຄຸນລັກສະນະອື່ນໆສຳລັບເວັບໄຊ.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />ສຶກສາເພີ່ມເຕີມກ່ຽວກັບໂໝດບໍ່ເປີດເຜີຍຕົວຕົນໃນ Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">ແຖບທີ່ເປີດຢູ່ຂອງທ່ານປາກົດຢູ່ບ່ອນນີ້</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">ໜ້ອຍກວ່າ 1 MB</translation>
 <translation id="3990250421422698716">ການຊົດເຊີຍພື້ນຜິວທີ່ບໍ່ສະໝໍ່າສະເໝີ</translation>
 <translation id="3992684624889376114">ກ່ຽວກັບໜ້ານີ້</translation>
-<translation id="3996311196211510766">ເວັບໄຊ <ph name="ORIGIN" /> ໄດ້ຂໍໃຫ້ນຳໃຊ້ນະໂຍບາຍ
-    ຕົ້ນທາງກັບຄຳຂໍຂອງມັນທັງໝົດ, ແຕ່ລະບົບບໍ່ສາມາດນຳໃຊ້ນະໂຍບາຍນີ້ໄດ້ໃນປັດຈຸບັນນີ້.</translation>
 <translation id="4006465311664329701">ວິທີການຈ່າຍເງິນ, ຂໍ້ສະເໜີ ແລະ ທີ່ຢູ່ໂດຍໃຊ້ Google Pay</translation>
 <translation id="4009243425692662128">ເນື້ອຫາຂອງໜ້າທີ່ທ່ານພິມແມ່ນຖືກສົ່ງໄປໃຫ້ Google Cloud ຫຼື ພາກສ່ວນທີສາມວິເຄາະ. ຕົວຢ່າງ: ມັນອາດຖືກສະແກນຫາຂໍ້ມູນລະອຽດອ່ອນ.</translation>
 <translation id="4010758435855888356">ອະນຸຍາດການເຂົ້າເຖິງບ່ອນຈັດເກັບຂໍ້ມູນບໍ?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">ມ້ວນທີຫ້າ</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ກຳລັງກວດເບິ່ງການຕັ້ງຄ່າໄຟລ໌ວໍ ແລະ ການປ້ອງກັນໄວຣັສ<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">​ໃຫຍ່</translation>
-<translation id="4209166701302774460">ເຊີບເວີທີ່ທ່ານຈະໄປຫາ, <ph name="ORIGIN" />, ໄດ້ຂໍວ່າ
-    ຈະນຳໃຊ້ນະໂຍບາຍຕົ້ນທາງກັບທຸກຄຳຂໍທີ່ສົ່ງຫາມັນ. ແຕ່ດຽວນີ້ມັນສະແດງ
-    ນະໂຍບາຍບໍ່ສຳເລັດ ເຊິ່ງປ້ອງກັນບໍ່ໃຫ້ໂປຣແກຣມທ່ອງເວັບຕອບສະໜອງຄໍາຂໍຂອງທ່ານ
-    ສຳລັບ <ph name="SITE" />. ນະໂຍບາຍຕົ້ນທາງສາມາດໃຊ້ໄດ້ໂດຍຜູ້ໃຫ້ບໍລິການເວັບໄຊ
-    ເພື່ອກຳນົດຄ່າຄວາມປອດໄພ ແລະ ຄຸນລັກສະນະອື່ນໆສຳລັບເວັບໄຊ.</translation>
 <translation id="4210602799576081649">ລະຫັດການຢັ້ງຢືນໝົດອາຍຸແລ້ວ, ກະລຸນາຮ້ອງຂໍລະຫັດໃໝ່</translation>
 <translation id="421066178035138955">ໃຊ້ອຸປະກອນ ແລະ ຂໍ້ມູນເວີຊົວ ຣິອາລິຕີ</translation>
 <translation id="4213305257324635756">ໜັງກາຕູນ</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;ຖ້າທ່ານຍັງເຫັນຂໍ້ຜິດພາດຢູ່, ກະລຸນາຕິດຕໍ່ຫາເຈົ້າຂອງເວັບໄຊ.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />ລອງເປີດໃຊ້ Network Diagnostics<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">ສາມາດຂໍໃຊ້ ແລະ ເຄື່ອນກ້ອງຖ່າຍຮູບຂອງທ່ານ</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />ໄປທີ່ <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">ຖືກຕ້ອງ</translation>
 <translation id="4250431568374086873">ການເຊື່ອມຕໍ່ຂອງທ່ານກັບເວັບໄຊນີ້ບໍ່ປອດໄພເຕັມສ່ວນ</translation>
 <translation id="4250680216510889253">ບໍ່ແມ່ນ</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">ID ບັນຊີວຽກ</translation>
 <translation id="4798078619018708837">ປ້ອນວັນທີໝົດອາຍຸ ແລະ CVC ສຳລັບ <ph name="CREDIT_CARD" /> ເພື່ອອັບເດດລາຍລະອຽດບັດຂອງທ່ານ. ຫຼັງຈາກທີ່ທ່ານຢືນຢັນ, ລະບົບຈະແບ່ງປັນລາຍລະອຽດບັດຈາກບັນຊີ Google ຂອງທ່ານກັບເວັບໄຊນີ້.</translation>
 <translation id="4800132727771399293">ກວດ​ເບິ່ງວັນ​ໝົດ​ອາ​ຍຸ ແລະ CVC ຂອງ​ທ່ານ ແລະ​ລອງ​ໃໝ່​ອີກ</translation>
-<translation id="480334179571489655">ຂໍ້ຜິດພາດຂອງນະໂຍບາຍຕົ້ນທາງ</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">ຄຳແນະນຳຈາກຜູ້ເບິ່ງແຍງລະບົບອຸປະກອນຂອງທ່ານ:</translation>
 <translation id="4812751092864334025">ເທັກໂນໂລຢີທີ່ສວມໃສ່ໄດ້</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">ສີ​ເຫຼືອງ</translation>
 <translation id="5903264686717710770">ຊື່:</translation>
 <translation id="5904360430676679685">ຄອບຄົວ ແລະ ຄວາມສຳພັນ</translation>
-<translation id="5905445707201418379">ບລັອກໄວ້ຕາມນະໂຍບາຍຕົ້ນທາງຂອງ <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (ຊິ້ງຂໍ້ມູນແລ້ວ)</translation>
 <translation id="59174027418879706">ເປີດໃຊ້ງານແລ້ວ</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_lt.xtb b/components/strings/components_strings_lt.xtb
index 4503aac..56b542b 100644
--- a/components/strings/components_strings_lt.xtb
+++ b/components/strings/components_strings_lt.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Lygiaplotis šriftas</translation>
 <translation id="1763864636252898013">Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikatas nėra patikimas įrenginio operacinei sistemai. Taip gali nutikti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užgrobėjo.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Pabandykite paleisti „Windows Network Diagnostics“<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Serveris, į kurį esate nukreipiami (<ph name="ORIGIN" />), nustatė antraštę,
-    pagal kurią reikalaujama, kad pradinė politika būtų taikoma visoms jam teikiamoms užklausoms. Bet
-    antraštė netinkamai suformatuota, todėl naršyklė negali įvykdyti
-    <ph name="SITE" /> užklausos. Pradinę politiką gali naudoti
-    svetainių operatoriai, siekdami konfigūruoti svetainės saugą ir kitas nuosavybes.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Sužinokite daugiau apie inkognito režimą naršyklėje „Chromium“<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Atidaryti skirtukai bus rodomi čia</translation>
@@ -1112,8 +1107,6 @@
 <translation id="3987940399970879459">Mažiau nei 1 MB</translation>
 <translation id="3990250421422698716">Kopijų atskyrimas</translation>
 <translation id="3992684624889376114">Apie šį puslapį</translation>
-<translation id="3996311196211510766">Svetainė <ph name="ORIGIN" /> pateikė užklausą taikyti pradinę politiką
-    visoms jos užklausoms, bet šiuo metu šios politikos taikyti negalima.</translation>
 <translation id="4006465311664329701">Mokėjimo metodai, pasiūlymai ir adresai naudojant „Google Pay“</translation>
 <translation id="4009243425692662128">Spausdinamų puslapių turinys siunčiamas į „Google Cloud“ arba trečiosioms šalims analizuoti. Pavyzdžiui, tekstas gali būti nuskaitytas, ar jame nėra neskelbtinų duomenų.</translation>
 <translation id="4010758435855888356">Suteikti prieigą prie saugyklos?</translation>
@@ -1178,11 +1171,6 @@
 <translation id="4202554117186904723">Penktas ritinėlis</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Patikrinti užkardos ir antivirusinės sistemos konfigūracijas<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Didelis</translation>
-<translation id="4209166701302774460">Serveris, į kurį esate nukreipiami (<ph name="ORIGIN" />), pateikė užklausą
-    taikyti pradinę politiką visoms jam teikiamoms užklausoms. Bet dabar jam nepavyko
-    pateikti politikos, todėl naršyklė negali vykdyti
-    <ph name="SITE" /> užklausos. Pradinę politiką gali naudoti svetainių operatoriai,
-    siekdami konfigūruoti svetainės saugą ir kitas nuosavybes.</translation>
 <translation id="4210602799576081649">Patvirtinimo kodas baigė galioti, pateikite užklausą dėl naujo kodo</translation>
 <translation id="421066178035138955">Naudoti virtualiosios realybės įrenginius ir duomenis</translation>
 <translation id="4213305257324635756">Animaciniai filmai</translation>
@@ -1210,7 +1198,6 @@
     &lt;p&gt;Jei vis tiek rodoma klaida, susisiekite su svetainės savininku.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Pabandykite paleisti „Windows Network Diagnostics“<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Gali būti prašoma naudoti ir perkelti fotoaparatą</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Eiti į <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Tinkamas</translation>
 <translation id="4250431568374086873">Ryšys su šia svetaine nėra visiškai saugus</translation>
 <translation id="4250680216510889253">Ne</translation>
@@ -1414,7 +1401,6 @@
 <translation id="4796594887379589189">Užduoties paskyros ID</translation>
 <translation id="4798078619018708837">Jei norite atnaujinti išsamią kortelės informaciją, įveskite „<ph name="CREDIT_CARD" />“ galiojimo laiko pabaigos datą ir kortelės saugos kodą (CVC). Kai patvirtinsite, „Google“ paskyroje nurodyta išsami kortelės informacija bus bendrinama su šia svetaine.</translation>
 <translation id="4800132727771399293">Patikrinkite kortelės galiojimo pabaigos datą bei saugos kodą (CVC) ir bandykite dar kart</translation>
-<translation id="480334179571489655">Pradinės politikos klaida</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Įrenginio administratoriaus instrukcijos:</translation>
 <translation id="4812751092864334025">Nešiojamosios technologijos</translation>
@@ -1809,7 +1795,6 @@
 <translation id="5901630391730855834">Geltona</translation>
 <translation id="5903264686717710770">Pavadinimas:</translation>
 <translation id="5904360430676679685">Šeima ir santykiai</translation>
-<translation id="5905445707201418379">Užblokuota vadovaujantis „<ph name="ORIGIN" />“ pradine politika.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sinchronizuota)</translation>
 <translation id="59174027418879706">Įjungta</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_lv.xtb b/components/strings/components_strings_lv.xtb
index 68595bd..852446b 100644
--- a/components/strings/components_strings_lv.xtb
+++ b/components/strings/components_strings_lv.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Vienplatuma fonts</translation>
 <translation id="1763864636252898013">Šis serveris nevarēja pierādīt, ka šī ir vietne <ph name="DOMAIN" />; tās drošības sertifikāts netiek uzskatīts par uzticamu jūsu ierīces operētājsistēmā. Iespējams, tas ir nepareizas konfigurācijas dēļ vai arī kāds ir ļaunprātīgi izmantojis jūsu savienojumu.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Mēģiniet palaist Windows tīkla diagnostiku<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Visiem pieprasījumiem uz serveri <ph name="ORIGIN" />, kurā ir iestatīta galvene,
-    ir jāpiemēro izcelsmes politika. Taču
-    galvene ir nepareizi izveidota, kas neļauj pārlūkam izpildīt
-    jūsu pieprasījumu vietnei <ph name="SITE" />. Vietņu operatori var izmantot
-    izcelsmes politikas, lai konfigurētu drošību un citus vietnes rekvizītus.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Uzzināt vairāk par inkognito režīmu pārlūkā Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Šeit tiks parādītas jūsu atvērtās cilnes</translation>
@@ -1110,8 +1105,6 @@
 <translation id="3987940399970879459">Mazāk nekā 1 MB</translation>
 <translation id="3990250421422698716">Ofseta izlīdzināšana</translation>
 <translation id="3992684624889376114">Par šo lapu</translation>
-<translation id="3996311196211510766">Vietne <ph name="ORIGIN" /> ir pieprasījusi, lai izcelsmes politika attiektos uz visu
-    tās pieprasījumu, taču šobrīd šo politiku nevar piemērot.</translation>
 <translation id="4006465311664329701">Maksājumu veidi, piedāvājumi un adreses no pakalpojuma Google Pay</translation>
 <translation id="4009243425692662128">Jūsu izdrukāto lapu saturs tiek nosūtīts uz Google Cloud vai trešajām pusēm, lai veiktu analīzi. Piemēram, saturs var tikt pārmeklēts, lai konstatētu, vai tajā ir ietverti sensitīvi dati.</translation>
 <translation id="4010758435855888356">Vai atļaut piekļuvi krātuvei?</translation>
@@ -1176,11 +1169,6 @@
 <translation id="4202554117186904723">Piektais rullis</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Pārbaudiet ugunsmūri un pretvīrusu programmu konfigurācijas<ph name="END_LINK" />.</translation>
 <translation id="4209092469652827314">Liels</translation>
-<translation id="4209166701302774460">Visiem pieprasījumiem uz serveri <ph name="ORIGIN" /> ir jāpiemēro
-    izcelsmes politika. Taču šobrīd serveris nevar
-    iesniegt politiku, kas neļauj pārlūkam izpildīt jūsu pieprasījumu
-    vietnei <ph name="SITE" />. Vietņu operatori var izmantot
-    izcelsmes politikas, lai konfigurētu drošību un citus vietnes rekvizītus.</translation>
 <translation id="4210602799576081649">Verifikācijas koda termiņš ir beidzies. Pieprasiet jaunu kodu.</translation>
 <translation id="421066178035138955">izmantot virtuālās realitātes ierīces un datus</translation>
 <translation id="4213305257324635756">Animācijas filmas</translation>
@@ -1208,7 +1196,6 @@
     &lt;p&gt;Ja kļūda joprojām tiek rādīta, sazinieties ar vietnes īpašnieku.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Mēģiniet palaist tīkla diagnostiku<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Var pieprasīt atļauju izmantot kameru un mainīt tās pozīciju</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Pāriet uz vietni <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Derīgs</translation>
 <translation id="4250431568374086873">Jūsu savienojums ar šo vietni nav pavisam drošs.</translation>
 <translation id="4250680216510889253">Nē</translation>
@@ -1412,7 +1399,6 @@
 <translation id="4796594887379589189">Darba konta ID</translation>
 <translation id="4798078619018708837">Lai atjauninātu kartes informāciju, ievadiet kredītkartes <ph name="CREDIT_CARD" /> derīguma termiņu un CVC kodu. Pēc apstiprināšanas kartes informācija no Google konta tiks kopīgota ar šo vietni.</translation>
 <translation id="4800132727771399293">Pārbaudiet derīguma termiņu un CVC kodu un mēģiniet vēlreiz.</translation>
-<translation id="480334179571489655">Izcelsmes politikas kļūda</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Ierīces administratora norādījumi</translation>
 <translation id="4812751092864334025">Valkājamo ierīču tehnoloģijas</translation>
@@ -1807,7 +1793,6 @@
 <translation id="5901630391730855834">Dzeltena</translation>
 <translation id="5903264686717710770">Nosaukums:</translation>
 <translation id="5904360430676679685">Ģimene un attiecības</translation>
-<translation id="5905445707201418379">Bloķēts, pamatojoties uz <ph name="ORIGIN" /> izcelsmes politiku.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (veikta sinhronizācija)</translation>
 <translation id="59174027418879706">Iespējots</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_mk.xtb b/components/strings/components_strings_mk.xtb
index 2a6149e..6ccbbb8 100644
--- a/components/strings/components_strings_mk.xtb
+++ b/components/strings/components_strings_mk.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Фонт Monospace</translation>
 <translation id="1763864636252898013">Серверот не може да докаже дека е <ph name="DOMAIN" />; oперативниот систем на уредот не му верува на неговиот безбедносен сертификат. Тоа може да се должи на погрешна конфигурација или на напаѓач што го пресретнува поврзувањето.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Обидете се да извршите дијагностика на мрежата на Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Серверот каде што сте упатени, <ph name="ORIGIN" />, поставил наслов
-    со кој се бара примена на правило за потекло за сите барања до него. Но,
-    насловот е лошо форматиран, што го спречува прелистувачот да го исполни
-    вашето барање за <ph name="SITE" />. Операторите на сајтови може да ги користат правилата за потекло
-     за конфигурирање на безбедноста и другите својства за сајтот.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Дознајте повеќе за „Инкогнито“ во Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Отворените картички се појавуваат тука</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Помалку од 1 MB</translation>
 <translation id="3990250421422698716">Офсет превиткување</translation>
 <translation id="3992684624889376114">За оваа страница</translation>
-<translation id="3996311196211510766">Сајтот <ph name="ORIGIN" /> побарал да се применува правило за потекло
-     за сите барања до него, но ова правило не може да се примени во моментов.</translation>
 <translation id="4006465311664329701">Начини на плаќање, понуди и адреси преку Google Pay</translation>
 <translation id="4009243425692662128">Содржините на страниците што ги печатите се испраќаат на Google Cloud или трети страни за анализа. На пример, можеби ќе се скенираат за да се провери дали содржат чувствителни податоци.</translation>
 <translation id="4010758435855888356">Да се дозволи пристап до капацитетот?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Петта ролна</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Да ги проверите заштитниот ѕид и антивирусните конфигурации<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Голем</translation>
-<translation id="4209166701302774460">Серверот каде што сте упатени, <ph name="ORIGIN" />, побарал
-    да се применува правило за потекло за сите барања до него. Но, сега не успеа
-    да испорача правило, што го спречува прелистувачот да го исполни вашето барање
-    за <ph name="SITE" />. Операторите на сајтови може да ги користат правилата за потекло
-    за конфигурирање на безбедноста и другите својства за сајтот.</translation>
 <translation id="4210602799576081649">Кодот за потврда истече, побарајте нов код</translation>
 <translation id="421066178035138955">да ги користи уредите и податоците за виртуелна реалност</translation>
 <translation id="4213305257324635756">Анимирани филмови</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Ако сѐ уште ја гледате грешкава, контактирајте со сопственикот на веб-сајтот.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Обидете се да извршите дијагностика на мрежата<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Може да прашува за да ја користи и преместува камерата</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Продолжете на <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Важечки</translation>
 <translation id="4250431568374086873">Врската со овој сајт не е потполно безбедна</translation>
 <translation id="4250680216510889253">Не</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">ID на работен налог</translation>
 <translation id="4798078619018708837">Внесете ги рокот на важност и CVC за <ph name="CREDIT_CARD" /> за да ги ажурирате деталите за картичката. Откако ќе потврдите, деталите за картичката од вашата сметка на Google ќе се споделат со сајтов.</translation>
 <translation id="4800132727771399293">Проверете го датумот на истекување на КВК и обидете се повторно</translation>
-<translation id="480334179571489655">Грешка на правилото за потекло</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Упатства од администраторот на уредот:</translation>
 <translation id="4812751092864334025">Технологија на уреди за носење</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Жолта боја</translation>
 <translation id="5903264686717710770">Наслов:</translation>
 <translation id="5904360430676679685">Семејство и односи</translation>
-<translation id="5905445707201418379">Блокирано согласно правилото за потекло на <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (синхронизирани)</translation>
 <translation id="59174027418879706">Овозможено</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ml.xtb b/components/strings/components_strings_ml.xtb
index 534fa8d6..31e1729 100644
--- a/components/strings/components_strings_ml.xtb
+++ b/components/strings/components_strings_ml.xtb
@@ -335,10 +335,6 @@
 <translation id="1757773103848038814">മോണോസ്പെയ്‌സ് ഫോണ്ട്</translation>
 <translation id="1763864636252898013">ഈ സെർവറിന് അത് <ph name="DOMAIN" /> ആണെന്ന് തെളിയിക്കാനായില്ല; അതിന്റെ സുരക്ഷ സർട്ടിഫിക്കറ്റിനെ നിങ്ങളുടെ ഉപകരണത്തിന്റെ ഓപ്പറേറ്റിംഗ് സിസ്‌റ്റത്തിന് പരിചയമില്ല. തെറ്റായ കോൺഫിഗറേഷൻ കാരണമോ ഒരു അക്രമണകാരി നിങ്ങളുടെ കണക്ഷനെ തടസ്സപ്പെടുത്തുന്നത് കൊണ്ടോ ആയിരിക്കാം ഇത് സംഭവിച്ചത്.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows നെറ്റ്‌വർക്ക് ഡയഗണോസ്‌റ്റിക്‌സ് റൺ ചെയ്‌തുനോക്കൂ<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643"><ph name="ORIGIN" /> എന്നതിലേക്ക് പോകാൻ നിങ്ങൾ ഉപയോഗിക്കുന്ന സെർവർ, അതിലേക്കുള്ള എല്ലാ അഭ്യർത്ഥനകൾക്കും ഉറവിട നയം ബാധകമാക്കാൻ ആവശ്യ‌പ്പെട്ട് കൊണ്ടുള്ള 
-    തലക്കെട്ട് സജ്ജീകരിച്ചിട്ടുണ്ട്. എന്നാൽ
-    ശരിയായ രീതിയിൽ തലക്കെട്ട് സജ്ജീകരിക്കാത്തതിനാൽ,
-    <ph name="SITE" /> എന്നതിനുള്ള നിങ്ങളുടെ അഭ്യർത്ഥന പൂർത്തീകരിക്കാൻ ബ്രൗസറിന് കഴിയുന്നില്ല. ഒരു സൈറ്റിന്റെ സുരക്ഷയും മറ്റ് പ്രോപ്പർട്ടികളും കോൺഫിഗർ ചെയ്യാൻ സൈറ്റ് ഓപ്പറേറ്റർമാർക്ക് ഉറവിട നയങ്ങൾ ഉപയോഗിക്കാനാവും.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium-ലെ അദൃശ്യ മോഡിനെ കുറിച്ച് കൂടുതലറിയുക<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">നിങ്ങൾ നിലവിൽ തുറന്നിട്ടുള്ള ടാബുകൾ ഇവിടെ ദൃശ്യമാകും</translation>
@@ -1109,8 +1105,6 @@
 <translation id="3987940399970879459">ഒരു MB-യിൽ കുറവാണ്</translation>
 <translation id="3990250421422698716">ജോഗ് ഓഫ്‌സെറ്റ്</translation>
 <translation id="3992684624889376114">ഈ പേജിനെക്കുറിച്ച്</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> എന്ന സൈറ്റിലേക്കുള്ള എല്ലാ അഭ്യർത്ഥനകൾക്കും ഒരു ഉറവിട നയം
-    ബാധകമാകുമെന്ന് ഇത് അഭ്യർത്ഥിച്ചിരിക്കുന്നു, എന്നാൽ ഈ നയം ഇപ്പോൾ ബാധകമാക്കാനാവില്ല.</translation>
 <translation id="4006465311664329701">Google Pay ഉപയോഗിക്കുന്ന പേയ്മെന്റ് രീതികളും ഓഫറുകളും വിലാസങ്ങളും</translation>
 <translation id="4009243425692662128">നിങ്ങൾ പ്രിന്റ് ചെയ്യുന്ന പേജുകളുടെ ഉള്ളടക്കം, വിശകലനം ചെയ്യാൻ Google ക്ലൗഡിനോ മൂന്നാം കക്ഷികൾക്കോ അയയ്ക്കും. ഉദാഹരണത്തിന്, സെൻസിറ്റീവായിട്ടുള്ള വ്യക്തിപരമായ ഡാറ്റ ഉണ്ടോയെന്നറിയാൻ ഇത് സ്‌കാൻ ചെയ്‌തേക്കാം.</translation>
 <translation id="4010758435855888356">സ്റ്റോറേജ് ആക്‌സസിനുള്ള അനുമതി നൽകണോ?</translation>
@@ -1175,9 +1169,6 @@
 <translation id="4202554117186904723">അഞ്ചാമത്തെ റോൾ</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ഫയർവാളും ആന്റിവൈറസ് കോൺഫിഗറേഷനുകളും പരിശോധിക്കുന്നു<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">വലുത്</translation>
-<translation id="4209166701302774460"><ph name="ORIGIN" /> എന്നതിലേക്ക് പോകാൻ നിങ്ങൾ ഉപയോഗിക്കുന്ന സെർവർ, അതിലേക്കുള്ള എല്ലാ അഭ്യർത്ഥനകൾക്കും ഉറവിട നയം ബാധകമാക്കുമെന്ന് അഭ്യർത്ഥിച്ചിട്ടുണ്ട്. ഒരു നയം നിർവഹിക്കാൻ
-    ഇപ്പോൾ ഇതിന് കഴിയാത്തതിനാൽ
-    <ph name="SITE" /> എന്നതിനുള്ള നിങ്ങളുടെ അഭ്യർത്ഥന പൂർത്തീകരിക്കാൻ ബ്രൗസറിന് കഴിയുന്നില്ല. ഒരു സൈറ്റിന്റെ സുരക്ഷയും മറ്റ് പ്രോപ്പർട്ടികളും കോൺഫിഗർ ചെയ്യാൻ സൈറ്റ് ഓപ്പറേറ്റർമാർക്ക് ഉറവിട നയങ്ങൾ ഉപയോഗിക്കാനാവും.</translation>
 <translation id="4210602799576081649">പരിശോധനാ കോഡ് കാലഹരണപ്പെട്ടു, പുതിയൊരു കോഡ് അഭ്യർത്ഥിക്കുക</translation>
 <translation id="421066178035138955">വെർച്വൽ റിയാലിറ്റി ഉപകരണങ്ങളും ഡാറ്റയും ഉപയോഗിക്കുക</translation>
 <translation id="4213305257324635756">ആനിമേറ്റ് ചെയ്ത സിനിമകൾ</translation>
@@ -1205,7 +1196,6 @@
     &lt;p&gt;നിങ്ങൾ ഇപ്പോഴും പിശക് കാണുന്നുവെങ്കിൽ, വെബ്‌സൈറ്റ് ഉടമയെ ബന്ധപ്പെടുക.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />നെറ്റ്‌വർക്ക് ഡയഗണോസ്‌റ്റിക്‌സ് റൺ ചെയ്‌തുനോക്കൂ<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">നിങ്ങളുടെ ക്യാമറ ഉപയോഗിക്കാനും നീക്കാനും ആവശ്യപ്പെടാം</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> എന്ന സൈറ്റിലേക്ക് പോവുക<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">സാധുത</translation>
 <translation id="4250431568374086873">ഈ സൈറ്റിലുള്ള നിങ്ങളുടെ കണക്ഷൻ പൂർണ്ണമായും സുരക്ഷിതമല്ല</translation>
 <translation id="4250680216510889253">ഇല്ല</translation>
@@ -1409,7 +1399,6 @@
 <translation id="4796594887379589189">ജോബ് അക്കൗണ്ട് ഐഡി</translation>
 <translation id="4798078619018708837">നിങ്ങളുടെ കാർഡ് വിശദാംശങ്ങൾ അപ്‌ഡേറ്റ് ചെയ്യാൻ <ph name="CREDIT_CARD" />-ന്‍റെ കാലാവധി തീരുന്ന തീയതിയും CVC-യും നൽകുക. സ്ഥിരീകരിച്ച് കഴിഞ്ഞാൽ, നിങ്ങളുടെ Google അക്കൗണ്ടിൽ നിന്നുള്ള കാർഡ് വിശദാംശങ്ങൾ ഈ സൈറ്റുമായി പങ്കിടും.</translation>
 <translation id="4800132727771399293">നിങ്ങളുടെ കാലഹരണ തീയതിയും CVC യും പരിശോധിച്ച് വീണ്ടും ശ്രമിക്കുക</translation>
-<translation id="480334179571489655">ഒറിജിൻ നയത്തിൽ പിശക്</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">നിങ്ങളുടെ ഉപകരണ അഡ്‌മിന്റെ നിർദ്ദേശങ്ങൾ:</translation>
 <translation id="4812751092864334025">ധരിക്കാനാകുന്ന സാങ്കേതികവിദ്യ</translation>
@@ -1804,7 +1793,6 @@
 <translation id="5901630391730855834">മഞ്ഞ</translation>
 <translation id="5903264686717710770">ശീര്‍ഷകം:</translation>
 <translation id="5904360430676679685">കുടുംബവും ബന്ധങ്ങളും</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> എന്നതിന്റെ ഉറവിട നയത്തിന് അനുസൃതമായി ബ്ലോക്ക് ചെയ്‌തു.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (സമന്വയിപ്പിച്ചത്)</translation>
 <translation id="59174027418879706">പ്രാപ്തമാക്കി</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_mn.xtb b/components/strings/components_strings_mn.xtb
index 91601dc..1d2554ce 100644
--- a/components/strings/components_strings_mn.xtb
+++ b/components/strings/components_strings_mn.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace фонт</translation>
 <translation id="1763864636252898013">Энэ сервер нь <ph name="DOMAIN" />-аа баталж чадсангүй; учир нь энэхүү сертификатыг таны төхөөрөмжийн үйлдлийн систем дэмждэггүй. Энэ нь тохиргоо буруу хийгдсэнээс эсвэл халдагч таны холболтонд саад учруулж байгаагаас шалтгаалж болох юм.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows сүлжээний оношилгоог ажиллуулж үзнэ үү<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Таны очих гэж буй <ph name="ORIGIN" /> сервер нь үндсэн удирдамжийг
-    бүх хүсэлтдээ хэрэгжүүлэхийг шаарддаг толгой хэсгийг тохируулсан байна. Гэсэн хэдий ч,
-    толгой хэсэг нь гэмтсэн тул
-    <ph name="SITE" />-д зочлох таны хүсэлтийг гүйцэтгэхэд хөтчид саад болж байна. Үндсэн удирдамжийг
-    сайтад зориулж аюулгүй байдал болон бусад шинж чанарыг тохируулахад сайтын оператор ашиглаж болно.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium дахь Нууцлалтай горимын талаар нэмэлт мэдээлэл авах<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Таны нээлттэй таб энд харагдана</translation>
@@ -1112,8 +1107,6 @@
 <translation id="3987940399970879459">1 МБ-аас бага</translation>
 <translation id="3990250421422698716">Шилжүүлэн байрлуулах оффсет</translation>
 <translation id="3992684624889376114">Энэ хуудасны тухай</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> сайт үндсэн удирдамжийг
-    бүх хүсэлтдээ хэрэгжүүлэх хүсэлт тавьсан хэдий ч энэ удирдамжийг одоогоор хэрэгжүүлэх боломжгүй байна.</translation>
 <translation id="4006465311664329701">Google Pay-г ашиглаж буй төлбөрийн хэрэгсэл, санал болон хаяг</translation>
 <translation id="4009243425692662128">Таы хэвлэх хуудасны контентыг задлан шинжлүүлэхээр Google Cloud эсвэл гуравдагч тал руу илгээнэ. Жишээ нь үүнд эмзэг өгөгдөл байгаа эсэхийг скан хийж болзошгүй.</translation>
 <translation id="4010758435855888356">Хадгалах санд хандахыг зөвшөөрөх үү?</translation>
@@ -1178,11 +1171,6 @@
 <translation id="4202554117186904723">Тав дахь хуйлмал</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Галт хана болон вирусын эсрэг оновчилгоог шалгаж байна<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Том</translation>
-<translation id="4209166701302774460">Таны очих гэж буй <ph name="ORIGIN" /> сервер нь үндсэн удирдамжийг бүх хүсэлтдээ хэрэгжүүлэх
-    хүсэлт тавьсан байна. Гэсэн хэдий ч, энэ нь
-    <ph name="SITE" />-д зочлох таны хүсэлтийг гүйцэтгэхэд хөтчид саад болох
-     удирдамжийг хүргэж чадсангүй. Үндсэн удирдамжийг
-    сайтад зориулж аюулгүй байдал болон бусад шинж чанарыг тохируулахад сайтын оператор ашиглаж болно.</translation>
 <translation id="4210602799576081649">Баталгаажуулах кодын хугацаа дууссан. Шинэ код хүснэ үү</translation>
 <translation id="421066178035138955">Виртуал бодит байдлын төхөөрөмжүүд болон өгөгдлийг ашиглах</translation>
 <translation id="4213305257324635756">Хүүхэлдэйн кино</translation>
@@ -1210,7 +1198,6 @@
     &lt;p&gt;Хэрэв та тус алдааг харсаар байвал вебсайтын эзэмшигчтэй холбогдоно уу.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Сүлжээний оношилгоог ажиллуулж үзнэ үү<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Таны камерыг ашиглах болон хөдөлгөхийг хүсэх боломжтой</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> руу үргэлжлүүлэх<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Хүчинтэй</translation>
 <translation id="4250431568374086873">Энэ сайтын холболт аюултай байж болзошгүй</translation>
 <translation id="4250680216510889253">Үгүй</translation>
@@ -1414,7 +1401,6 @@
 <translation id="4796594887379589189">Ажилтай холбоотой бүртгэлийн ID</translation>
 <translation id="4798078619018708837">Картын дэлгэрэнгүй мэдээллийг шинэчлэхийн тулд <ph name="CREDIT_CARD" />-н дуусах огноо, карт баталгаажуулалтын кодыг оруулна уу. Баталгаажуулсны дараагаар таны Google бүртгэлийн картын дэлгэрэнгүйг энэ сайтад хуваалцах болно.</translation>
 <translation id="4800132727771399293">Дуусах хугацаа болон CVC-гээ шалгаад дахин оролдож үзнэ үү</translation>
-<translation id="480334179571489655">Үндсэн удирдамжийн алдаа</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Таны төхөөрөмжийн администраторын зааварчилгаа:</translation>
 <translation id="4812751092864334025">Зүүсгэл технологи</translation>
@@ -1809,7 +1795,6 @@
 <translation id="5901630391730855834">Шар</translation>
 <translation id="5903264686717710770">Гарчиг:</translation>
 <translation id="5904360430676679685">Гэр бүл, харилцаа холбоо</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" />-н үндсэн удирдамжийн дагуу хориглосон.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (синк хийсэн)</translation>
 <translation id="59174027418879706">Идэвхжсэн</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_mr.xtb b/components/strings/components_strings_mr.xtb
index 3b9b0a5e..e26d6c5 100644
--- a/components/strings/components_strings_mr.xtb
+++ b/components/strings/components_strings_mr.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace फॉंट</translation>
 <translation id="1763864636252898013">हा सर्व्हर हे <ph name="DOMAIN" /> असल्याचे सिद्ध करू शकला नाही; त्याचे सुरक्षितता सर्टिफिकेट तुम्हाला डिव्हाइसच्या ऑपरेटिंग सिस्टमद्वारे विश्वसनीय नाही. हे कदाचित एका चुकीच्या कॉन्फिगरेशनमुळे किंवा हल्लेखोराने तुमचे कनेक्शन इंटरसेप्ट केल्यामुळे झाले असू शकते.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows नेटवर्क निदान चालवून पहा<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">तुम्ही ज्या सर्व्हरवर जात आहात त्याने <ph name="ORIGIN" />, ला केलेल्या सर्व विनंत्यांवर
-     मूळ धोरण लागू केले जाणे अशी आवश्यकता असलेले हेडर सेट केले आहे. पण
-    हेडर विकृत झालेले आहे, ज्यामुळे ब्राउझरला
-    तुमच्या <ph name="SITE" /> साठीच्या विनंतीची पूर्तता करण्यापासून रोखले जात आहे. साइटची सुरक्षितता
-    आणि इतर मालमत्ता काँफिगर करण्यासाठी साइट ऑपरेटरकडून मूळ धोरणे वापरली जाऊ शकतात.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium मधील गुप्त मोड याबद्दल अधिक जाणून घ्या<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">तुमचे खुले टॅब येथे दिसतात</translation>
@@ -1110,8 +1105,6 @@
 <translation id="3987940399970879459">1 MB पेक्षा कमी</translation>
 <translation id="3990250421422698716">जॉग ऑफसेट</translation>
 <translation id="3992684624889376114">या पेजबद्दल</translation>
-<translation id="3996311196211510766">साइटने <ph name="ORIGIN" /> विनंती केली आहे की, मूळ धोरण
-    त्याच्या सर्व विनंत्यांवर लागू होईल पण हे धोरण सध्या लागू केले जाऊ शकत नाही.</translation>
 <translation id="4006465311664329701">Google Pay वापरून पेमेंट पद्धती, ऑफर आणि पत्ते</translation>
 <translation id="4009243425692662128">तुम्ही प्रिंट करता त्या पेजचा आशय विश्लेषणासाठी Google क्लाउड किंवा तृतीय पक्षांना पाठवला जातो. उदाहरणार्थ, तो संवेदनशील डेटासाठी स्कॅन केला जाऊ शकतो.</translation>
 <translation id="4010758435855888356">स्टोरेज अ‍ॅक्सेस करण्याची अनुमती द्यायची का?</translation>
@@ -1176,11 +1169,6 @@
 <translation id="4202554117186904723">पाचवा रोल</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />फायरवॉल आणि अँटीव्हायरस कॉंफिगरेशन तपासणे<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">मोठा</translation>
-<translation id="4209166701302774460">तुम्ही भेट देत असलेला सर्व्हर <ph name="ORIGIN" /> ने विनंती केली आहे की,
-     त्याला केलेल्या सर्व विनंत्यांवर मूळ धोरण लागू केले जावे. पण त्याला आता
-    धोरण वितरित करता आले नाही, ज्यामुळे ते तुमची <ph name="SITE" /> ची विनंती पूर्ण करण्यापासून ब्राउझरला
-    रोखत आहे. साइटची सुरक्षितता आणि इतर मालमत्ता काँफिगर करण्यासाठी
-    साइट ऑपरेटरकडून मूळ धोरणे वापरली जाऊ शकतात.</translation>
 <translation id="4210602799576081649">पडताळणी कोड एक्स्पायर झाला, नवीन कोडसाठी विनंती करा</translation>
 <translation id="421066178035138955">आभासी वास्तविकता डिव्हाइस आणि डेटा वापरा</translation>
 <translation id="4213305257324635756">अ‍ॅनिमेटेड चित्रपट</translation>
@@ -1208,7 +1196,6 @@
     &lt;p&gt;जर अजूनही तुम्हाला हीच एरर दिसत असेल, तर वेबसाइटच्या मालकाशी संपर्क करा.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />नेटवर्क निदान चालवून पहा<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">तुमचा कॅमेरा वापरण्याची आणि आजूबाजूला हलवण्याची विनंती करू शकते</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> वर जा<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">वैध</translation>
 <translation id="4250431568374086873">या साइटवरील तुमचे कनेक्शन पूर्णपणे सुरक्षित नाही</translation>
 <translation id="4250680216510889253">नाही</translation>
@@ -1412,7 +1399,6 @@
 <translation id="4796594887379589189">जॉब खाते आयडी</translation>
 <translation id="4798078619018708837">तुमच्या कार्डाचा तपशील अपडेट करण्यासाठी <ph name="CREDIT_CARD" /> साठी कार्डची एक्स्पायरेशन तारीख आणि CVC टाका. तुम्ही निश्चित केल्यानंतर, तुमच्या Google खात्यामधील कार्डाचा तपशील या साइटसोबत शेअर केला जाईल.</translation>
 <translation id="4800132727771399293">तुमची कालबाह्यता तारीख आणि CVC तपासा आणि पुन्हा प्रयत्न करा</translation>
-<translation id="480334179571489655">मूळ धोरण एरर</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">तुमच्या डिव्हाइस अ‍ॅडमिनिस्ट्रेटरकडून सूचना:</translation>
 <translation id="4812751092864334025">वेअरेबल तंत्रज्ञान</translation>
@@ -1807,7 +1793,6 @@
 <translation id="5901630391730855834">पिवळा</translation>
 <translation id="5903264686717710770">शीर्षक:</translation>
 <translation id="5904360430676679685">कुटुंब आणि नातेसंबंध</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> च्या मूळ धोरणानुसार ब्लॉक केले आहे.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (सिंक केलेले)</translation>
 <translation id="59174027418879706">सक्षम</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ms.xtb b/components/strings/components_strings_ms.xtb
index c1051f3..5cd6979 100644
--- a/components/strings/components_strings_ms.xtb
+++ b/components/strings/components_strings_ms.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Fon Monospace</translation>
 <translation id="1763864636252898013">Pelayan ini tidak dapat membuktikan bahawa domainnya ialah <ph name="DOMAIN" />; sijil keselamatannya tidak dipercayai oleh sistem pengendalian peranti anda. Ini mungkin disebabkan oleh kesilapan konfigurasi atau penyerang yang memintasi sambungan anda.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Cuba jalankan Diagnostik Rangkaian Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Pelayan destinasi anda, <ph name="ORIGIN" />, telah menetapkan pengepala
-    yang menghendaki dasar asal dikenakan pada semua permintaan yang diterima oleh pelayan itu. Walau bagaimanapun,
-    pengepala tersebut telah rosak dan menghalang penyemak imbas daripada memenuhi
-    permintaan anda untuk <ph name="SITE" />. Dasar asal boleh digunakan oleh
-    pengendali tapak untuk mengkonfigurasi keselamatan dan sifat lain bagi tapak.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Ketahui lebih lanjut tentang Inkognito dalam Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Tab yang dibuka dipaparkan di sini</translation>
@@ -1112,8 +1107,6 @@
 <translation id="3987940399970879459">Kurang daripada 1 MB</translation>
 <translation id="3990250421422698716">Ofset jog</translation>
 <translation id="3992684624889376114">Perihal halaman ini</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> tapak telah meminta dasar asal
-    dikenakan pada semua permintaan yang diterima, tetapi dasar ini tidak dapat dikenakan pada masa ini.</translation>
 <translation id="4006465311664329701">Kaedah pembayaran, Tawaran dan Alamat yang Menggunakan Google Pay</translation>
 <translation id="4009243425692662128">Kandungan halaman yang anda cetak dihantar ke Google Cloud atau pihak ketiga untuk analisis. Contohnya, teks itu mungkin diimbas untuk mencari data sensitif.</translation>
 <translation id="4010758435855888356">Benarkan akses storan?</translation>
@@ -1178,11 +1171,6 @@
 <translation id="4202554117186904723">Gulungan Kelima</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Menyemak konfigurasi tembok api dan antivirus<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Besar</translation>
-<translation id="4209166701302774460">Pelayan destinasi anda, <ph name="ORIGIN" />, telah meminta
-    dasar asal dikenakan pada semua permintaan yang diterima oleh pelayan itu. Akan tetapi, kini pelayan itu gagal
-    menyampaikan dasar, yang menghalang penyemak imbas daripada memenuhi permintaan anda
-    untuk <ph name="SITE" />. Dasar asal boleh digunakan oleh pengendali tapak
-    untuk mengkonfigurasi keselamatan dan sifat lain bagi tapak.</translation>
 <translation id="4210602799576081649">Kod pengesahan sudah tamat tempoh, minta kod baharu</translation>
 <translation id="421066178035138955">Gunakan peranti dan data realiti maya</translation>
 <translation id="4213305257324635756">Filem animasi</translation>
@@ -1210,7 +1198,6 @@
     &lt;p&gt;Jika ralat masih kelihatan, hubungi pemilik laman web.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Cuba jalankan Diagnostik Rangkaian<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Boleh meminta untuk menggunakan &amp; menggerakkan kamera anda</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Teruskan ke <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Sah</translation>
 <translation id="4250431568374086873">Sambungan anda ke tapak ini tidak selamat sepenuhnya</translation>
 <translation id="4250680216510889253">Tidak</translation>
@@ -1414,7 +1401,6 @@
 <translation id="4796594887379589189">ID akaun kerja</translation>
 <translation id="4798078619018708837">Masukkan tarikh tamat tempoh dan CVC <ph name="CREDIT_CARD" /> untuk mengemas kini butiran kad anda. Setelah anda mengesahkan maklumat, butiran kad daripada Akaun Google anda akan dikongsi dengan tapak ini.</translation>
 <translation id="4800132727771399293">Semak tarikh tamat tempoh serta CVC anda dan cuba lagi</translation>
-<translation id="480334179571489655">Ralat Dasar Asal</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Arahan daripada pentadbir peranti anda:</translation>
 <translation id="4812751092864334025">Teknologi boleh dipakai</translation>
@@ -1809,7 +1795,6 @@
 <translation id="5901630391730855834">Kuning</translation>
 <translation id="5903264686717710770">Tajuk:</translation>
 <translation id="5904360430676679685">Keluarga &amp; perhubungan</translation>
-<translation id="5905445707201418379">Disekat menurut dasar asal <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (disegerakkan)</translation>
 <translation id="59174027418879706">Didayakan</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_my.xtb b/components/strings/components_strings_my.xtb
index 23dc716d..e2bbd3c1 100644
--- a/components/strings/components_strings_my.xtb
+++ b/components/strings/components_strings_my.xtb
@@ -336,11 +336,6 @@
 <translation id="1763864636252898013">ဒီဆာဗာက <ph name="DOMAIN" /> ဖြစ်တာကို သက်သေထူ မပြနိုင်ခဲ့ပါ၊ ၎င်း၏ လုံခြုံရေး လက်မှတ်ကို သင့်ကိရိယာ၏ လည်ပတ်မှု စနစ် ဘက်မှ မယုံကြည်ပါ။ ဖွဲ့စည်းစီစဉ်မှု အမှားကြောင့် သို့မဟုတ် တိုက်ခိုက်လိုသူက 
 သင်၏ ချိတ်ဆက်မှုကို ကြားဖြတ်ယူနေ၍ ထိုသို့ ဖြစ်လာနိုင်ခဲ့ပါသည်။</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />ဝင်းဒိုးကွန်ရက်ပြဿနာရှာဖွေမှုကို ပြုလုပ်ကြည့်ပါ<ph name="END_LINK" />။</translation>
-<translation id="1772163372082567643">သင်သွားနေသည့် <ph name="ORIGIN" /> ဆာဗာက ၎င်းထံတောင်းဆိုသမျှ အားလုံးသို့
-    ရင်းမြစ်မူဝါဒ ထည့်သွင်းမည်ဖြစ်ကြောင်း သတ်မှတ်ထားသည်။ သို့သော်
-    ခေါင်းစဉ်ပုံစံပျက်ယွင်းနေသောကြောင့် ဘရောင်ဇာက <ph name="SITE" /> အတွက်
-    သင်၏တောင်းဆိုချက်ကို မဖြည့်ဆည်းနိုင်ပါ။ ဝဘ်ဆိုက်တစ်ခုအတွက် လုံခြုံရေးနှင့် အခြားသတ်မှတ်ချက်များကို
-    စီစဉ်သတ်မှတ်ရန် ဝဘ်ဆိုက် အော်ပရေတာများက ရင်းမြစ် မူဝါဒများကို အသုံးပြုနိုင်ပါသည်။</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium ရှိ ရုပ်ဖျက်မုဒ်အကြောင်း ပိုမိုလေ့လာရန်<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">သင်ဖွင့်ထားသည့်တဘ်များ ဤနေရာတွင် ပေါ်ပါမည်</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">၁ MB ထက်နည်းပါသည်</translation>
 <translation id="3990250421422698716">လည်ပတ်မှု ချိန်ညှိရန်</translation>
 <translation id="3992684624889376114">ဤစာမျက်နှာ အကြောင်း</translation>
-<translation id="3996311196211510766">ဝဘ်ဆိုက် <ph name="ORIGIN" /> က ၎င်း၏တောင်းဆိုချက် အားလုံးသို့
-    ရင်းမြစ်မူဝါဒ ထည့်သွင်းရန် သတ်မှတ်ထားသော်လည်း လက်ရှိတွင် ဤမူဝါဒကို ထည့်သွင်း၍မရပါ။</translation>
 <translation id="4006465311664329701">Google Pay ကို သုံးထားသော ငွေပေးချေနည်းလမ်း၊ ကမ်းလှမ်းချက်နှင့် လိပ်စာများ</translation>
 <translation id="4009243425692662128">သင်ပုံနှိပ်ထုတ်လိုက်သော စာမျက်နှာများ၏အကြောင်းအရာကို စိတ်ဖြာလေ့လာရန် Google Cloud (သို့) ပြင်ပအဖွဲ့အစည်းသို့ ပို့လိုက်သည်။ ဥပမာ သတိထားရမည့်ဒေတာ ရှိ၊ မရှိ ၎င်းကို စစ်ဆေးနိုင်သည်။</translation>
 <translation id="4010758435855888356">သိုလှောင်ခန်းကို သုံးခွင့်ပြုမလား။</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">ငါးခုမြောက်အလိပ်</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />firewall နှင့်ဗိုင်းရပ်စ်တိုက်ဖျက်ရေး ပြင်ဆင်သတ်မှတ်မှုများကို စစ်ဆေးနေသည်<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">ကြီးမား</translation>
-<translation id="4209166701302774460">သင်သွားနေသည့် <ph name="ORIGIN" /> ဆာဗာက ၎င်းထံတောင်းဆိုသမျှ အားလုံးသို့
-    ရင်းမြစ်မူဝါဒ ထည့်သွင်းမည်ဖြစ်ကြောင်း သတ်မှတ်ထားသည်။ သို့သော် ၎င်းသည် မူဝါဒကို
-    ပေးပို့၍မရသောကြောင့် ဘရောင်ဇာအား <ph name="SITE" /> အတွက် သင့်တောင်းဆိုချက်ကို
-    ဖြည့်ဆည်းမပေးရန် တားဆီးပါသည်။ ဝဘ်ဆိုက်တစ်ခုအတွက် လုံခြုံရေးနှင့် အခြားသတ်မှတ်ချက်များကို
-    စီစဉ်သတ်မှတ်ရန် ဝဘ်ဆိုက် အော်ပရေတာများက ရင်းမြစ် မူဝါဒများကို အသုံးပြုနိုင်ပါသည်။</translation>
 <translation id="4210602799576081649">စိစစ်ခြင်းကုဒ် သက်တမ်းကုန်သွားပြီ။ ကုဒ်အသစ် တောင်းဆိုပါ</translation>
 <translation id="421066178035138955">ပကတိအသွင်စက်နှင့် ဒေတာများ အသုံးပြုခြင်း</translation>
 <translation id="4213305257324635756">လှုပ်ရှားသက်ဝင် ရုပ်ရှင်များ</translation>
@@ -1210,7 +1198,6 @@
     &lt;p&gt;ဤအမှားအယွင်းကို တွေ့နေရဆဲဖြစ်လျှင် ဝဘ်ဆိုက်ပိုင်ရှင်ကို ဆက်သွယ်ပါ။&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />ကွန်ရက်ပြဿနာရှာဖွေမှု ပြုလုပ်ကြည့်ပါ<ph name="END_LINK" />။</translation>
 <translation id="4230204356098880324">သင့်ကင်မရာကို သုံးရန်နှင့် ရွှေ့ရန် ခွင့်တောင်းနိုင်သည်</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> သို့ ဆက်သွားရန်<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">မှန်ကန်သည်</translation>
 <translation id="4250431568374086873">ဤဝဘ်ဆိုက်သို့ သင့်ချိတ်ဆက်ထားမှုသည် လုံခြုံမှုအပြည့်အဝမရှိပါ</translation>
 <translation id="4250680216510889253">No</translation>
@@ -1414,7 +1401,6 @@
 <translation id="4796594887379589189">အလုပ်အကောင့် ID</translation>
 <translation id="4798078619018708837">သင့်ကဒ်၏ အသေးစိတ်အချက်အလက်များကို အပ်ဒိတ်လုပ်ရန် <ph name="CREDIT_CARD" /> အတွက် ကုန်ဆုံးရက်နှင့် CVC ကို ထည့်ပါ။ အတည်ပြုပြီးသည်နှင့် Google အကောင့်မှ သင့်ကဒ်၏အသေးစိတ် အချက်အလက်များကို ဤဆိုက်အား မျှဝေသွားပါမည်။</translation>
 <translation id="4800132727771399293">သင်၏ သက်တမ်းကုန်ဆုံးရက်နှင့် CVC အား စစ်ဆေးပြီး ထပ်မံကြိုးစားပါ</translation>
-<translation id="480334179571489655">မူရင်း မူဝါဒ အမှား</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">သင့်စက် စီမံခန့်ခွဲသူထံမှ လမ်းညွှန်ချက်များ-</translation>
 <translation id="4812751092864334025">ဝတ်ဆင်ပစ္စည်း နည်းပညာ</translation>
@@ -1809,7 +1795,6 @@
 <translation id="5901630391730855834">အၐါရောင်</translation>
 <translation id="5903264686717710770">ခေါင်းစဉ်-</translation>
 <translation id="5904360430676679685">မိသားစုအရေးနှင့် အချစ်ရေး</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> ၏ ရင်းမြစ် မူဝါဒအရ ပိတ်ထားသည်။</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (စင့်ခ်လုပ်ထားသည်)</translation>
 <translation id="59174027418879706">ဖွင့်ထားသည်</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ne.xtb b/components/strings/components_strings_ne.xtb
index a4f69f4..96fda51 100644
--- a/components/strings/components_strings_ne.xtb
+++ b/components/strings/components_strings_ne.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">मोनोस्पेस फन्ट</translation>
 <translation id="1763864636252898013">यो सर्भर हो भनेर प्रमाणित गर्न सकेन <ph name="DOMAIN" />; यसको सुरक्षा प्रमाणपत्रलाई तपाईंको डिभाइसको अपरेटिङ सिस्टमले विश्वास गरेन। यो एक गलत कन्फिगुरेसन वा तपाईंको जडान अवरोध गर्न खोज्ने आक्रमणकारीको हुनसक्छ।</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows नेटवर्क सम्बन्धी निदान चलाएर हेर्नुहोस्<ph name="END_LINK" />।</translation>
-<translation id="1772163372082567643">तपाईंले प्रयोग गर्न लाग्नुभएको सर्भर <ph name="ORIGIN" /> मा एउटा हेडर राखिएको छ। उक्त हेडरअनुसार यो सर्भरलाई गरिने
-    सबै अनुरोधहरूमा कुनै मूल नीति लागू गरिने छ। तर
-    उक्त हेडरको ढाँचा सही नभएकाले यसले ब्राउजरलाई 
-    <ph name="SITE" /> का सन्दर्भमा तपाईंले गर्नुभएको अनुरोध पूरा गर्न दिँदैन। साइटका सञ्चालकहरू कुनै साइटको सुरक्षा र
-    अन्य विशेषता कन्फिगर गर्ने प्रयोजनका लागि मूल नीतिहरू प्रयोग गर्न सक्छन्।</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium मा उपलब्ध इन्कोग्निटो मोडका बारेमा थप जान्नुहोस्<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">तपाईंका खुला ट्याबहरू यहाँ देखा पर्छन्</translation>
@@ -1108,8 +1103,6 @@
 <translation id="3987940399970879459">१ एम.बि. भन्दा कम</translation>
 <translation id="3990250421422698716">जग अफसेट</translation>
 <translation id="3992684624889376114">यो पेजका बारेमा</translation>
-<translation id="3996311196211510766">यो साइट <ph name="ORIGIN" /> ले यसलाई गरिने सबै अनुरोधहरूमा मूल नीति
-    लागू गर्न अनुरोध गरेको छ। तर अहिले यो नीति लागू गर्न सकिँदैन।</translation>
 <translation id="4006465311664329701">Google Pay प्रयोग गर्दा इम्पोर्ट गरिने भुक्तानी विधि, अफर र ठेगानाहरू</translation>
 <translation id="4009243425692662128">तपाईंले प्रिन्ट गर्ने पेजका सामग्री विश्लेषण गर्ने प्रयोजनका लागि Google क्लाउड वा तेस्रो पक्षकहाँ पठाइन्छ। उदाहरणका लागि, उक्त पाठमा संवेदनशील डेटा छ कि छैन भनी जाँच गरिन सक्छ।</translation>
 <translation id="4010758435855888356">भण्डारण प्रयोग गर्ने अनुमति दिने हो?</translation>
@@ -1174,10 +1167,6 @@
 <translation id="4202554117186904723">पाचौँ रोल</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />फायरवाल र एन्टिभाइरसका कन्फिगरेसनलाई जाँच गर्नुहोस्<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">विशाल</translation>
-<translation id="4209166701302774460">तपाईंले प्रयोग गर्न आँट्नुभएको सर्भर <ph name="ORIGIN" /> ले यसलाई गरिने सबै अनुरोधहरूमा मूल नीति लागू गरिनु पर्ने कुरा अनुरोध गरेको छ। तर यसले अहिले नीति डेलिभर गर्न
-    नसकेकोले ब्राउजरलाई तपाईंले
-    <ph name="SITE" /> का सन्दर्भमा गर्नुभएको अनुरोध पूरा हुन दिँदैन। साइटका सञ्चालकहरू कुनै साइटको सुरक्षा र
-    अन्य विशेषता कन्फिगर गर्ने प्रयोजनका लागि मूल नीतिहरू प्रयोग गर्न सक्छन्।</translation>
 <translation id="4210602799576081649">पुष्टि कोडको म्याद सकिएको छ, नयाँ कोड पठाइदिन अनुरोध गर्नुहोस्</translation>
 <translation id="421066178035138955">भर्चुअल रियालिटी चल्ने डिभाइसहरू र तिनमा भएका डेटा प्रयोग गर्न</translation>
 <translation id="4213305257324635756">एनिमेटेड चल‍चित्रहरू</translation>
@@ -1205,7 +1194,6 @@
     &lt;p&gt;तपाईंले अझै पनि यो त्रुटि देख्नुभएको खण्डमा वेबसाइटको मालिकलाई सम्पर्क गर्नुहोस्‌।&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />नेटवर्क सम्बन्धी निदान चलाएर हेर्नुहोस्<ph name="END_LINK" />।</translation>
 <translation id="4230204356098880324">तपाईंको क्यामेरा चलाउने तथा यताउता सार्ने अनुमति माग्न सक्छ</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> मा जानुहोस्<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">मान्य</translation>
 <translation id="4250431568374086873">यस साइटमा तपाईँको जडान पूर्णतया सुरक्षित छैन</translation>
 <translation id="4250680216510889253">होइन</translation>
@@ -1409,7 +1397,6 @@
 <translation id="4796594887379589189">कार्य खाताको ID</translation>
 <translation id="4798078619018708837">आफ्नो कार्डसम्बन्धी विवरणहरू अद्यावधिक गर्न <ph name="CREDIT_CARD" /> को म्याद सकिने मिति र CVC प्रविष्टि गर्नुहोस्। तपाईंले पुष्टि गरिसकेपछि तपाईंको Google खातामा रहेका कार्डसम्बन्धी विवरणहरू यो साइटसँग आदान प्रदान गरिने छ।</translation>
 <translation id="4800132727771399293">तपाईँको म्याद समाप्त हुने मिति र CVC जाँच गर्नुहोस् र फेरि प्रयास गर्नुहोस्</translation>
-<translation id="480334179571489655">मूल नीतिगत त्रुटि</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">तपाईंको डिभाइसको एड्मिनबाट प्राप्त भएका निर्देशनहरू:</translation>
 <translation id="4812751092864334025">लगाउन मिल्ने प्रविधि</translation>
@@ -1804,7 +1791,6 @@
 <translation id="5901630391730855834">पहेँलो</translation>
 <translation id="5903264686717710770">शीर्षक:</translation>
 <translation id="5904360430676679685">परिवार तथा नातागोता</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> को मूल नीतिका आधारमा रोक लगाइयो।</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (सिंक गरिएको)</translation>
 <translation id="59174027418879706">सक्षम गरिएको</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_nl.xtb b/components/strings/components_strings_nl.xtb
index b41125a..136896d 100644
--- a/components/strings/components_strings_nl.xtb
+++ b/components/strings/components_strings_nl.xtb
@@ -335,8 +335,6 @@
 <translation id="1757773103848038814">Monospace-lettertype</translation>
 <translation id="1763864636252898013">De server kan niet bewijzen dat dit <ph name="DOMAIN" /> is. Het beveiligingscertificaat van de server wordt niet vertrouwd door het besturingssysteem van je apparaat. Dit kan worden veroorzaakt door een verkeerde configuratie of een aanvaller die je verbinding onderschept.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Voer Windows Netwerkcontrole uit<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Voor de server waar je naartoe gaat (<ph name="ORIGIN" />), is een header ingesteld
-    die vereist dat een herkomstbeleid wordt toegepast op alle verzoeken aan de server. De header heeft echter een verkeerde indeling, waardoor de browser je verzoek voor <ph name="SITE" /> niet kan uitvoeren. Herkomstbeleidsregels kunnen worden gebruikt door site-operators om beveiliging en andere eigenschappen voor een site te configureren.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Meer informatie over incognito in Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Je geopende tabbladen zie je hier</translation>
@@ -1103,8 +1101,6 @@
 <translation id="3987940399970879459">Minder dan 1 MB</translation>
 <translation id="3990250421422698716">Sorteren</translation>
 <translation id="3992684624889376114">Over deze pagina</translation>
-<translation id="3996311196211510766">De site <ph name="ORIGIN" /> heeft gevraagd een herkomstbeleid
-    toe te passen op alle verzoeken aan de site, maar dit beleid kan momenteel niet worden toegepast.</translation>
 <translation id="4006465311664329701">Betaalmethoden, aanbiedingen en adressen via Google Pay</translation>
 <translation id="4009243425692662128">De content van pagina's die je afdrukt, wordt naar Google Cloud of derden gestuurd voor analyse. De tekst kan bijvoorbeeld worden gescand op gevoelige gegevens of malware.</translation>
 <translation id="4010758435855888356">Toegang tot opslag toestaan?</translation>
@@ -1169,11 +1165,6 @@
 <translation id="4202554117186904723">5e rol</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Controleer firewall- en antivirusconfiguraties<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Groot</translation>
-<translation id="4209166701302774460">De server waar je naartoe gaat (<ph name="ORIGIN" />), heeft gevraagd om
-    een herkomstbeleid toe te passen op alle verzoeken aan de server. Deze heeft nu echter
-    geen beleid geleverd, waardoor de browser je verzoek
-    voor <ph name="SITE" /> niet kan uitvoeren. Herkomstbeleidsregels kunnen worden gebruikt door site-operators
-    om beveiliging en andere eigenschappen voor een site te configureren.</translation>
 <translation id="4210602799576081649">De verificatiecode is verlopen. Vraag een nieuwe code aan.</translation>
 <translation id="421066178035138955">Virtualreality-apparaten en -gegevens gebruiken</translation>
 <translation id="4213305257324635756">Animatiefilms</translation>
@@ -1201,7 +1192,6 @@
     &lt;p&gt;Als de fout nog steeds wordt weergegeven, neem je contact op met de eigenaar van de website.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Voer Netwerkcontrole uit<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Kan vragen of deze site je camera mag gebruiken en bewegen</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Doorgaan naar <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Geldig</translation>
 <translation id="4250431568374086873">Je verbinding met deze site is niet volledig beveiligd</translation>
 <translation id="4250680216510889253">Nee</translation>
@@ -1405,7 +1395,6 @@
 <translation id="4796594887379589189">Taakaccount-ID</translation>
 <translation id="4798078619018708837">Geef de vervaldatum en CVC-code voor <ph name="CREDIT_CARD" /> op om je creditcardgegevens te updaten. Nadat je hebt bevestigd, worden de creditcardgegevens uit je Google-account gedeeld met deze site.</translation>
 <translation id="4800132727771399293">Controleer je vervaldatum en CVC-code en probeer het opnieuw</translation>
-<translation id="480334179571489655">Fout met beleid van oorsprong</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Instructies van de beheerder van je apparaat:</translation>
 <translation id="4812751092864334025">Wearables</translation>
@@ -1800,7 +1789,6 @@
 <translation id="5901630391730855834">Geel</translation>
 <translation id="5903264686717710770">Titel:</translation>
 <translation id="5904360430676679685">Familie en relaties</translation>
-<translation id="5905445707201418379">Geblokkeerd op basis van het herkomstbeleid van <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (gesynchroniseerd)</translation>
 <translation id="59174027418879706">Aangezet</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_no.xtb b/components/strings/components_strings_no.xtb
index 4d14375..bcf0c1b 100644
--- a/components/strings/components_strings_no.xtb
+++ b/components/strings/components_strings_no.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace-skrifttype</translation>
 <translation id="1763864636252898013">Denne tjeneren kunne ikke bevise at den er <ph name="DOMAIN" />. Sikkerhetssertifikatet til tjeneren er ikke klarert av enhetens operativsystem. Dette kan være forårsaket av en feilkonfigurering eller en angriper som avskjærer tilkoblingen din.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Prøv å kjøre Windows Nettverksdiagnose<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Tjeneren du er på vei til (<ph name="ORIGIN" />), har angitt en header
-    som krever at en opphavsregel brukes for alle forespørsler som sendes til den. Men
-    headeren har feil format, og dette forhindrer nettleseren fra å effektuere
-    forespørselen din til <ph name="SITE" />. Nettstedsoperatører kan bruke
-    opphavsregler til å konfigurere sikkerhet og andre egenskaper for nettsteder.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Finn ut mer om Inkognito i Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">De åpne fanene dine vises her</translation>
@@ -1110,8 +1105,6 @@
 <translation id="3987940399970879459">Under 1 MB</translation>
 <translation id="3990250421422698716">Støtforskyvning</translation>
 <translation id="3992684624889376114">Om denne siden</translation>
-<translation id="3996311196211510766">Nettstedet <ph name="ORIGIN" /> har bedt om at en opphavsregel
-    skal gjelde for alle forespørsler som sendes til det, men denne regelen kan ikke tas i bruk akkurat nå.</translation>
 <translation id="4006465311664329701">Betalingsmåter, tilbud og adresser som bruker Google Pay</translation>
 <translation id="4009243425692662128">Innholdet på sidene du skriver ut, blir sendt til Google Cloud eller tredjeparter for analyse. Sidene kan for eksempel bli skannet for sensitive data.</translation>
 <translation id="4010758435855888356">Vil du gi lagringstilgang?</translation>
@@ -1176,11 +1169,6 @@
 <translation id="4202554117186904723">Femte rull</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Sjekk brannmur- og antiviruskonfigurasjonen<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Stor</translation>
-<translation id="4209166701302774460">Tjeneren du er på vei til (<ph name="ORIGIN" />), har bedt om at
-    en opphavsregel brukes for alle forespørsler som sendes til den. Men nå har tjeneren ikke klart å
-    sende noen regel, og dette forhindrer nettleseren fra å effektuere forespørselen din
-    til <ph name="SITE" />. Nettstedsoperatører kan bruke
-    opphavsregler til å konfigurere sikkerhet og andre egenskaper for nettsteder.</translation>
 <translation id="4210602799576081649">Bekreftelseskoden er utløpt – be om en ny kode</translation>
 <translation id="421066178035138955">Bruk virtuell virkelighet-enheter og -data</translation>
 <translation id="4213305257324635756">Animasjonsfilmer</translation>
@@ -1208,7 +1196,6 @@
     &lt;p&gt;Hvis du fortsatt får feilmeldingen, bør du kontakte eieren av nettstedet.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Prøv å kjøre Nettverksdiagnose<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Kan be om å få bruke og bevege kameraet ditt</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Gå videre til <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Gyldig</translation>
 <translation id="4250431568374086873">Tilkoblingen til dette nettstedet er ikke helt sikker</translation>
 <translation id="4250680216510889253">Nei</translation>
@@ -1412,7 +1399,6 @@
 <translation id="4796594887379589189">Jobbkonto-ID</translation>
 <translation id="4798078619018708837">Skriv inn utløpsdatoen og verifiseringskoden for <ph name="CREDIT_CARD" /> for å oppdatere kortopplysningene dine. Etter at du har bekreftet, deles kortopplysningene fra Google-kontoen din med dette nettstedet.</translation>
 <translation id="4800132727771399293">Kontrollér utløpsdatoen og CVC-koden, og prøv igjen.</translation>
-<translation id="480334179571489655">Feil i opprinnelsesregel</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Veiledning fra enhetsadministratoren din:</translation>
 <translation id="4812751092864334025">Hapå-teknologi</translation>
@@ -1807,7 +1793,6 @@
 <translation id="5901630391730855834">Gul</translation>
 <translation id="5903264686717710770">Tittel:</translation>
 <translation id="5904360430676679685">Familie og forhold</translation>
-<translation id="5905445707201418379">Blokkert i samsvar med opphavsregelen for <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synkronisert)</translation>
 <translation id="59174027418879706">Aktivert</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_or.xtb b/components/strings/components_strings_or.xtb
index a3ac6cd5..1934f8a 100644
--- a/components/strings/components_strings_or.xtb
+++ b/components/strings/components_strings_or.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Monospace ଫଣ୍ଟ</translation>
 <translation id="1763864636252898013">ଏହି ସର୍ଭର୍ ଏହା ପ୍ରମାଣ କରିପାରିଲା ନାହିଁ ଯେ ଏହା <ph name="DOMAIN" /> ଅଟେ; ଏହାର ସୁରକ୍ଷା ସାର୍ଟିଫିକେଟ୍ ଆପଣଙ୍କର ଅପରେଟିଂ ସିଷ୍ଟମ୍ ଦ୍ୱାରା ବିଶ୍ୱସନୀୟ ନୁହେଁ। ଏହା ହୁଏତ ଏକ ଭୁଲ୍ କନଫିଗ୍‍‍ରେସନ୍ କିମ୍ବା ଆପଣଙ୍କର ସଂଯୋଗକୁ ପ୍ରତିରୋଧ କରୁଥିବା ଜଣେ ଆକ୍ରମଣକାରୀଙ୍କ କାରଣରୁ ହୋଇପାରେ।</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />ୱିଣ୍ଡୋ ନେଟ୍‌ୱର୍କ ଡାଇଗ୍ନୋଷ୍ଟିକ୍ସ ଚଲେଇବାକୁ ଚେଷ୍ଟା କରନ୍ତୁ<ph name="END_LINK" />।</translation>
-<translation id="1772163372082567643">ଆପଣ ଯାଉଥିବା <ph name="ORIGIN" /> ସର୍ଭର୍, ଗୋଟିଏ ହେଡର୍ ସେଟ୍ କରିଛି, ଯାହା ଏହି ସର୍ଭରକୁ କରାଯାଇଥିବା ସମସ୍ତ ଅନୁରୋଧରେ ଏକ ମୂଳ ନୀତି ଲାଗୁ କରାଯିବା ଆବଶ୍ୟକ କରୁଛି। କିନ୍ତୁ ହେଡରଟି ତ୍ରୁଟିପୂର୍ଣ୍ଣ ଅଟେ, ଯାହା <ph name="SITE" /> ପାଇଁ ଆପଣଙ୍କ ଅନୁରୋଧ ପୂରଣ କରିବାରୁ ବ୍ରାଉଜରକୁ ପ୍ରତିରୋଧ କରେ। କୌଣସି ସାଇଟର ସୁରକ୍ଷା ଏବଂ ଅନ୍ୟ ପ୍ରୋପର୍ଟିଗୁଡ଼ିକ କନଫିଗର୍ କରିବାକୁ ସାଇଟ୍ ଅପରେଟରମାନଙ୍କ ଦ୍ୱାରା ମୂଳ ନୀତିଗୁଡ଼ିକ ବ୍ୟବହାର କରାଯାଇପାରିବ।</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromiumରେ ଇନକଗ୍ନିଟୋ ମୋଡ ବିଷୟରେ ଅଧିକ ଜାଣନ୍ତୁ<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">ଆପଣଙ୍କର ଖୋଲାଥିବା ଟାବ୍‌ଗୁଡ଼ିକ ଏଠାରେ ଦେଖାଯିବ</translation>
@@ -1104,7 +1103,6 @@
 <translation id="3987940399970879459">1 MBରୁ କମ୍ ଅଛି</translation>
 <translation id="3990250421422698716">ଜଗ୍ ଅଫ୍‌ସେଟ୍</translation>
 <translation id="3992684624889376114">ଏହି ପୃଷ୍ଠା ବିଷୟରେ</translation>
-<translation id="3996311196211510766">ଏଇ ସାଇଟକୁ କରାଯାଇଥିବା ସମସ୍ତ ଅନୁରୋଧରେ ଏକ ମୂଳ ନୀତି ଲାଗୁ କରାଯାଉ ବୋଲି ଏହି <ph name="ORIGIN" /> ସାଇଟ୍ ଅନୁରୋଧ କରିଛି, କିନ୍ତୁ ଏ ନୀତି ବର୍ତ୍ତମାନ ଲାଗୁ କରାଯାଇପାରିବ ନାହିଁ।</translation>
 <translation id="4006465311664329701">Google Pay ବ୍ୟବହାର କରୁଥିବା ପେମେଣ୍ଟ ପଦ୍ଧତି, ଅଫର ଏବଂ ଠିକଣାଗୁଡ଼ିକ</translation>
 <translation id="4009243425692662128">ଆପଣ ପ୍ରିଣ୍ଟ କରୁଥିବା ପୃଷ୍ଠାଗୁଡ଼ିକର ବିଷୟବସ୍ତୁ ବିଶ୍ଳେଷଣ ପାଇଁ Google Cloud କିମ୍ବା ତୃତୀୟ ପକ୍ଷଗୁଡ଼ିକୁ ପଠାଯାଏ। ଉଦାହରଣ ସ୍ଵରୂପ, ଏହାକୁ ସମ୍ବେଦନଶୀଳ ଡାଟା ପାଇଁ ସ୍କାନ କରାଯାଇପାରେ।</translation>
 <translation id="4010758435855888356">ଷ୍ଟୋରେଜ୍ ଆକ୍ସେସ୍ କରିବାର ଅନୁମତି ଦେବେ?</translation>
@@ -1169,7 +1167,6 @@
 <translation id="4202554117186904723">ପଞ୍ଚମ ରୋଲ୍</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ଫାୟାର୍‌ୱାଲ୍‌ ଏବଂ ଆଣ୍ଟିଭାଇରସ୍‌ କନ୍‌ଫିଗ୍‌ରେସନ୍‌ ଯାଞ୍ଚ ହେଉଛି<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">ବହୁତ୍</translation>
-<translation id="4209166701302774460">ଆପଣ ଯାଉଥିବା <ph name="ORIGIN" /> ସର୍ଭର୍, ଗୋଟିଏ ହେଡର୍ ସେଟ୍ କରିଛି, ଯାହା ଏହି ସର୍ଭରକୁ କରାଯାଇଥିବା ସମସ୍ତ ଅନୁରୋଧରେ ଏକ ମୂଳ ନୀତି ଲାଗୁ କରାଯିବା ଆବଶ୍ୟକ କରୁଛି। କିନ୍ତୁ ବର୍ତ୍ତମାନ ଏହା ଏକ ନୀତି ପ୍ରଦାନ କରିବାରେ ବିଫଳ ହୋଇଛି, ଯାହା <ph name="SITE" /> ପାଇଁ ଆପଣଙ୍କ ଅନୁରୋଧ ପୂରଣ କରିବାରୁ ବ୍ରାଉଜରକୁ ପ୍ରତିରୋଧ କରେ। କୌଣସି ସାଇଟର ସୁରକ୍ଷା ଏବଂ ଅନ୍ୟ ପ୍ରୋପର୍ଟିଗୁଡ଼ିକ କନଫିଗର୍ କରିବାକୁ ସାଇଟ୍ ଅପରେଟରମାନଙ୍କ ଦ୍ୱାରା ମୂଳ ନୀତିଗୁଡ଼ିକ ବ୍ୟବହାର କରାଯାଇପାରିବ।</translation>
 <translation id="4210602799576081649">ଯାଞ୍ଚକରଣ କୋଡର ମିଆଦ ଶେଷ ହୋଇଯାଇଛି, ଏକ ନୂଆ କୋଡ ପାଇଁ ଅନୁରୋଧ କରନ୍ତୁ</translation>
 <translation id="421066178035138955">ଭର୍ଚୁଆଲ୍ ରିଆଲିଟୀ ଡିଭାଇସ୍ ଏବଂ ଡାଟାକୁ ବ୍ୟବହାର କରିବା</translation>
 <translation id="4213305257324635756">ଆନିମେଟେଡ ମୁଭିଗୁଡ଼ିକ</translation>
@@ -1197,7 +1194,6 @@
     &lt;p&gt;ଯଦି ଆପଣ ତଥାପି ଏହି ତ୍ରୁଟି ଦେଖନ୍ତି, ତେବେ ୱେବ୍‌ସାଇଟ୍ ମାଲିକଙ୍କୁ ଯୋଗାଯୋଗ କରନ୍ତୁ।&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />ନେଟ୍‌ୱର୍କ ଡାଏଗ୍ନୋଷ୍ଟିକ୍ ଚଳାଇବାକୁ ଚେଷ୍ଟା କରନ୍ତୁ<ph name="END_LINK" />।</translation>
 <translation id="4230204356098880324">ଆପଣଙ୍କ କ୍ୟାମେରାକୁ ବ୍ୟବହାର କରି ମୁଭ୍ କରିବାକୁ ସାଇଟ୍ ପଚାରିପାରେ</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" />କୁ ଯାଆନ୍ତୁ<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">ବୈଧ ଅଟେ</translation>
 <translation id="4250431568374086873">ଏହି ସାଇଟ୍‌କୁ ଆପଣଙ୍କର ସଂଯୋଗ ପୂର୍ଣ୍ଣରୂପେ ସୁରକ୍ଷିତ ନୁହେଁ</translation>
 <translation id="4250680216510889253">ନାହିଁ</translation>
@@ -1401,7 +1397,6 @@
 <translation id="4796594887379589189">ଜବ୍ ଆକାଉଣ୍ଟ ID</translation>
 <translation id="4798078619018708837">ଆପଣଙ୍କର କ୍ରେଡିଟ୍ କାର୍ଡ ବିବରଣୀ ଅପ୍‌ଡେଟ୍ କରିବାକୁ <ph name="CREDIT_CARD" /> ପାଇଁ ମିଆଦ ସମାପ୍ତି ତାରିଖ ଏବଂ CVC ଲେଖନ୍ତୁ। ଆପଣ ସୁନିଶ୍ଚିତ କରିବା ପରେ, ଆପଣଙ୍କର Google ଆକାଉଣ୍ଟରୁ ମିଳିଥିବା କାର୍ଡ ବିବରଣୀ ଏହି ସାଇଟ୍ ସହ ସେୟାର୍ କରାଯିବ।</translation>
 <translation id="4800132727771399293">ସମୟ ସୀମା ସମାପ୍ତ ହେବାର ତାରିଖ ଏବଂ CVCକୁ ଯାଞ୍ଚ କରିବା ସହିତ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ</translation>
-<translation id="480334179571489655">ମୂଳ ନୀତିରେ ତ୍ରୁଟି</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">ଆପଣଙ୍କ ଡିଭାଇସ୍ ଆଡମିନିଷ୍ଟ୍ରେଟର୍ ଠାରୁ ନିର୍ଦ୍ଦେଶଗୁଡ଼ିକ:</translation>
 <translation id="4812751092864334025">ୱେରେବୁଲ ଟେକ୍ନୋଲୋଜି</translation>
@@ -1797,7 +1792,6 @@
 <translation id="5901630391730855834">ହଳଦିଆ</translation>
 <translation id="5903264686717710770">ଆଖ୍ୟା:</translation>
 <translation id="5904360430676679685">ପରିବାର ଏବଂ ସମ୍ପର୍କଗୁଡ଼ିକ</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" />ର ମୂଳ ନୀତି ଅନୁଯାୟୀ ବ୍ଲକ୍ କରାଯାଇଛି।</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> ( ସିଙ୍କ୍‍ କରାଯାଇଛି)</translation>
 <translation id="59174027418879706">ସାମର୍ଥ୍ୟ ହୋଇଛି</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_pa.xtb b/components/strings/components_strings_pa.xtb
index 7bf85f06..8ee9f7e6 100644
--- a/components/strings/components_strings_pa.xtb
+++ b/components/strings/components_strings_pa.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">ਮੋਨੋਸਪੇਸ ਫ਼ੌਂਟ</translation>
 <translation id="1763864636252898013">ਇਹ ਸਰਵਰ ਇਹ ਸਿੱਧ ਨਹੀਂ ਕਰ ਸਕਿਆ ਕਿ ਇਹ <ph name="DOMAIN" /> ਹੈ; ਇਸਦਾ ਸੁਰੱਖਿਆ ਪ੍ਰਮਾਣ-ਪੱਤਰ ਤੁਹਾਡੀ ਡਿਵਾਈਸ ਦੇ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਵੱਲੋਂ ਭਰੋਸੇਯੋਗ ਨਹੀਂ ਹੈ। ਇਸ ਦਾ ਕਾਰਨ ਗਲਤ ਸੰਰੂਪਣ ਹੋ ਸਕਦਾ ਹੈ ਜਾਂ ਕੋਈ ਹਮਲਾਵਰ ਤੁਹਾਡੇ ਕਨੈਕਸ਼ਨ ਦੇ ਰਾਹ ਨੂੰ ਰੋਕ ਰਿਹਾ ਹੈ।</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows ਨੈੱਟਵਰਕ ਤਸ਼ਖੀਸਾਂ ਨੂੰ ਚਲਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ<ph name="END_LINK" />।</translation>
-<translation id="1772163372082567643">ਜਿਸ ਸਰਵਰ 'ਤੇ ਤੁਸੀਂ ਜਾ ਰਹੇ ਹੋ, <ph name="ORIGIN" />, ਉਸਨੇ ਇੱਕ ਸਿਰਲੇਖ ਸੈੱਟ ਕੀਤਾ ਹੈ ਜਿਸ ਵਿੱਚ ਇਹ ਚੀਜ਼ ਲੋੜੀਂਦੀ ਹੈ ਕਿ ਮੂਲ ਨੀਤੀ ਨੂੰ ਇਸ 'ਤੇ ਕੀਤੀਆਂ ਗਈਆਂ ਸਾਰੀਆਂ ਬੇਨਤੀਆਂ 'ਤੇ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਪਰ ਸਿਰਲੇਖ ਨੁਕਸਦਾਰ ਹੈ, ਜੋ ਬ੍ਰਾਊਜ਼ਰ ਨੂੰ <ph name="SITE" /> ਲਈ ਤੁਹਾਡੀ ਬੇਨਤੀ ਨੂੰ ਪੂਰਾ ਕਰਨ ਤੋਂ ਰੋਕਦਾ ਹੈ। ਮੂਲ ਸੰਬੰਧੀ ਨੀਤੀਆਂ ਨੂੰ ਕਿਸੇ ਸਾਈਟ ਦੀ ਸੁਰੱਖਿਆ ਅਤੇ ਹੋਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦਾ ਸੰਰੂਪਣ ਕਰਨ ਲਈ ਸਾਈਟ ਓਪਰੇਟਰਾਂ ਵੱਲੋਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium ਵਿੱਚ ਇਨਕੋਗਨਿਟੋ ਮੋਡ ਬਾਰੇ ਹੋਰ ਜਾਣੋ<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">ਤੁਹਾਡੇ ਖੁੱਲ੍ਹੇ ਟੈਬ ਇੱਥੇ ਵਿਖਾਈ ਦੇਣਗੇ</translation>
@@ -1104,7 +1103,6 @@
 <translation id="3987940399970879459">1 MB ਤੋਂ ਘੱਟ</translation>
 <translation id="3990250421422698716">ਜੌਗ ਆਫ਼ਸੈੱਟ</translation>
 <translation id="3992684624889376114">ਇਸ ਪੰਨੇ ਬਾਰੇ</translation>
-<translation id="3996311196211510766">ਸਾਈਟ <ph name="ORIGIN" /> ਨੇ ਬੇਨਤੀ ਕੀਤੀ ਹੈ ਕਿ ਮੂਲ ਸੰਬੰਧੀ ਨੀਤੀ ਨੂੰ ਉਸ ਦੀਆਂ ਸਾਰੀਆਂ ਬੇਨਤੀਆਂ 'ਤੇ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਪਰ ਇਸ ਨੀਤੀ ਨੂੰ ਫਿਲਹਾਲ ਲਾਗੂ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ।</translation>
 <translation id="4006465311664329701">Google Pay ਦੀ ਵਰਤੋਂ ਕਰਨ ਵਾਲੀਆਂ ਭੁਗਤਾਨ ਵਿਧੀਆਂ, ਪੇਸ਼ਕਸ਼ਾਂ ਅਤੇ ਪਤੇ</translation>
 <translation id="4009243425692662128">ਤੁਹਾਡੇ ਵੱਲੋਂ ਪ੍ਰਿੰਟ ਕੀਤੇ ਗਏ ਪੰਨਿਆਂ ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਵਿਸ਼ਲੇਸ਼ਣ ਲਈ Google ਕਲਾਊਡ ਜਾਂ ਤੀਜੀਆਂ ਧਿਰਾਂ ਨੂੰ ਭੇਜਿਆ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਇਸਨੂੰ ਸੰਵੇਦਨਸ਼ੀਲ ਡਾਟੇ ਲਈ ਸਕੈਨ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।</translation>
 <translation id="4010758435855888356">ਕੀ ਸਟੋਰੇਜ ਤੱਕ ਪਹੁੰਚ ਦੀ ਆਗਿਆ ਦੇਣੀ ਹੋ?</translation>
@@ -1169,7 +1167,6 @@
 <translation id="4202554117186904723">ਪੰਜਵਾਂ ਰੋਲ</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ਫ਼ਾਇਰਵਾਲ ਅਤੇ ਐਂਟੀਵਾਇਰਸ ਸੰਰੂਪਣਾਂ ਦੀ ਜਾਂਚ ਕਰੋ<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">ਵੱਡਾ</translation>
-<translation id="4209166701302774460">ਜਿਸ ਸਰਵਰ 'ਤੇ ਤੁਸੀਂ ਜਾ ਰਹੇ ਹੋ, <ph name="ORIGIN" />, ਉਸਨੇ ਬੇਨਤੀ ਕੀਤੀ ਹੈ ਕਿ ਉਸ 'ਤੇ ਕੀਤੀਆਂ ਸਾਰੀਆਂ ਬੇਨਤੀਆਂ 'ਤੇ ਮੂਲ ਸੰਬੰਧੀ ਨੀਤੀ ਲਾਗੂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਪਰ ਇਹ ਹੁਣ ਨੀਤੀ ਨਹੀਂ ਡਿਲੀਵਰ ਕਰ ਸਕਿਆ, ਜਿਸ ਕਰਕੇ ਬ੍ਰਾਊਜ਼ਰ ਨੂੰ <ph name="SITE" /> ਲਈ ਤੁਹਾਡੀ ਬੇਨਤੀ ਨੂੰ ਪੂਰਾ ਕਰਨ ਤੋਂ ਰੋਕਿਆ ਜਾਂਦਾ ਹੈ। ਮੂਲ ਸੰਬੰਧੀ ਨੀਤੀਆਂ ਨੂੰ ਕਿਸੇ ਸਾਈਟ ਦੀ ਸੁਰੱਖਿਆ ਅਤੇ ਹੋਰ ਵਿਸੇਸ਼ਤਾਵਾਂ ਦਾ ਸੰਰੂਪਣ ਕਰਨ ਲਈ ਸਾਈਟ ਓਪਰੇਟਰਾਂ ਵੱਲੋਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।</translation>
 <translation id="4210602799576081649">ਪੁਸ਼ਟੀਕਰਨ ਕੋਡ ਦੀ ਮਿਆਦ ਸਮਾਪਤ ਹੋ ਗਈ ਹੈ, ਨਵੇਂ ਕੋਡ ਲਈ ਬੇਨਤੀ ਕਰੋ</translation>
 <translation id="421066178035138955">ਆਭਾਸੀ ਵਾਸਤਵਿਕਤਾ ਵਾਲੇ ਡੀਵਾਈਸਾਂ ਅਤੇ ਡਾਟੇ ਨੂੰ ਵਰਤੋ</translation>
 <translation id="4213305257324635756">ਐਨੀਮੇਟਿਡ ਫ਼ਿਲਮਾਂ</translation>
@@ -1197,7 +1194,6 @@
     &lt;p&gt;ਜੇਕਰ ਤੁਹਾਨੂੰ ਹਾਲੇ ਵੀ ਗੜਬੜ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ, ਤਾਂ ਵੈੱਬਸਾਈਟ ਮਾਲਕ ਨਾਲ ਸੰਪਰਕ ਕਰੋ।&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />ਨੈੱਟਵਰਕ ਤਸ਼ਖੀਸਾਂ ਨੂੰ ਚਲਾ ਕੇ ਦੇਖੋ<ph name="END_LINK" />।</translation>
 <translation id="4230204356098880324">ਸਾਈਟ ਤੁਹਾਡਾ ਕੈਮਰਾ ਵਰਤਣ ਅਤੇ ਉਸਨੂੰ ਹਿਲਾਉਣ ਲਈ ਪੁੱਛ ਸਕਦੀ ਹੈ</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> 'ਤੇ ਜਾਰੀ ਰੱਖੋ<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">ਵੈਧ</translation>
 <translation id="4250431568374086873">ਇਸ ਸਾਈਟ ਨਾਲ ਤੁਹਾਡਾ ਕਨੈਕਸ਼ਨ ਪੂਰੀ ਤਰ੍ਹਾਂ ਸੁਰੱਖਿਅਤ ਨਹੀਂ ਹੈ</translation>
 <translation id="4250680216510889253">ਨਹੀਂ</translation>
@@ -1401,7 +1397,6 @@
 <translation id="4796594887379589189">ਕਾਰਵਾਈ ਖਾਤਾ ਆਈਡੀ</translation>
 <translation id="4798078619018708837">ਆਪਣੇ ਕਾਰਡ ਵੇਰਵਿਆਂ ਨੂੰ ਅੱਪਡੇਟ ਕਰਨ ਲਈ <ph name="CREDIT_CARD" /> ਦੀ ਮਿਆਦ ਸਮਾਪਤੀ ਦੀ ਤਾਰੀਖ ਅਤੇ CVC ਦਾਖਲ ਕਰੋ। ਤੁਹਾਡੇ ਵੱਲੋਂ ਪੁਸ਼ਟੀ ਕੀਤੇ ਜਾਣ ਤੋਂ ਬਾਅਦ, ਤੁਹਾਡੇ Google ਖਾਤੇ ਤੋਂ ਕਾਰਡ ਦੇ ਵੇਰਵੇ ਇਸ ਸਾਈਟ ਨਾਲ ਸਾਂਝੇ ਕੀਤੇ ਜਾਣਗੇ।</translation>
 <translation id="4800132727771399293">ਆਪਣੀ ਮਿਆਦ ਸਮਾਪਤੀ ਦੀ ਤਾਰੀਖ ਤੇ CVC ਦੇਖੋ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ</translation>
-<translation id="480334179571489655">ਮੂਲ ਨੀਤੀ ਸੰਬੰਧੀ ਗੜਬੜ</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਪ੍ਰਸ਼ਾਸਕ ਵੱਲੋਂ ਹਿਦਾਇਤਾਂ:</translation>
 <translation id="4812751092864334025">ਪਹਿਨਣਯੋਗ ਤਕਨੀਕ</translation>
@@ -1796,7 +1791,6 @@
 <translation id="5901630391730855834">ਪੀਲਾ</translation>
 <translation id="5903264686717710770">ਸਿਰਲੇਖ:</translation>
 <translation id="5904360430676679685">ਪਰਿਵਾਰ ਅਤੇ ਰਿਸ਼ਤੇ</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> ਦੀ ਮੂਲ ਸੰਬੰਧੀ ਨੀਤੀ ਮੁਤਾਬਕ ਬਲਾਕ ਕੀਤਾ ਗਿਆ।</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (ਸਿੰਕ ਕੀਤਾ)</translation>
 <translation id="59174027418879706">ਸਮਰਥਿਤ</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_pl.xtb b/components/strings/components_strings_pl.xtb
index 3283011..a7dc789bc 100644
--- a/components/strings/components_strings_pl.xtb
+++ b/components/strings/components_strings_pl.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Czcionka o stałej szerokości</translation>
 <translation id="1763864636252898013">Ten serwer nie mógł udowodnić, że należy do <ph name="DOMAIN" />. Jego certyfikat bezpieczeństwa nie jest zaufany w systemie operacyjnym tego urządzenia. Może to być spowodowane błędną konfiguracją lub przechwyceniem połączenia przez atakującego.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Uruchom Diagnostykę sieci systemu Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Serwer <ph name="ORIGIN" />, z którym chcesz się połączyć, ma ustawiony nagłówek z wymaganiem, by do wszystkich kierowanych do niego żądań stosować zasadę dotyczącą źródła. Jednak ten nagłówek ma nieprawidłowy format, przez co przeglądarka nie może zrealizować Twojego żądania dotyczącego strony <ph name="SITE" />. Zasady dotyczące źródła mogą stosować operatorzy stron internetowych, by skonfigurować zabezpieczenia i inne właściwości strony.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Więcej informacji o trybie incognito w Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Tutaj pojawiają się otwarte karty</translation>
@@ -1107,7 +1106,6 @@
 <translation id="3987940399970879459">Mniej niż 1 MB</translation>
 <translation id="3990250421422698716">Odsunięcie poszczególnych kopii</translation>
 <translation id="3992684624889376114">Informacje o tej stronie</translation>
-<translation id="3996311196211510766">Strona <ph name="ORIGIN" /> zażądała, by do wszystkich kierowanych do niej żądań stosować zasadę dotyczącą źródła, ale tej zasady nie można teraz zastosować.</translation>
 <translation id="4006465311664329701">Formy płatności, oferty i adresy korzystające z Google Pay</translation>
 <translation id="4009243425692662128">Zawartość drukowanych stron jest wysyłana do Google Cloud lub innych firm w celu przeanalizowania. Może na przykład zostać przeskanowana w poszukiwaniu danych wrażliwych.</translation>
 <translation id="4010758435855888356">Zezwolić na dostęp do pamięci?</translation>
@@ -1172,7 +1170,6 @@
 <translation id="4202554117186904723">Rolka 5</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Sprawdź konfigurację zapory sieciowej i oprogramowania antywirusowego<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Duży</translation>
-<translation id="4209166701302774460">Serwer <ph name="ORIGIN" />, z którym chcesz się połączyć, żąda, by do wszystkich kierowanych do niego żądań stosować zasadę dotyczącą źródła. Jednak nie dostarczył zasad, co uniemożliwia przeglądarce zrealizowanie Twojego żądania dotyczącego strony <ph name="SITE" />. Zasady dotyczące źródła mogą stosować operatorzy stron internetowych, by skonfigurować zabezpieczenia i inne właściwości strony.</translation>
 <translation id="4210602799576081649">Kod weryfikacyjny stracił ważność, poproś o nowy</translation>
 <translation id="421066178035138955">Używać urządzeń i danych rzeczywistości wirtualnej</translation>
 <translation id="4213305257324635756">Filmy animowane</translation>
@@ -1200,7 +1197,6 @@
     &lt;p&gt;Jeśli błąd nadal się pojawia, skontaktuj się z właścicielem strony.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Uruchom diagnostykę sieci<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Może prosić o zgodę na używanie i przesuwanie kamery</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Wejdź na <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Ważny</translation>
 <translation id="4250431568374086873">Twoje połączenie z tą witryną nie jest w pełni bezpieczne</translation>
 <translation id="4250680216510889253">Nie</translation>
@@ -1404,7 +1400,6 @@
 <translation id="4796594887379589189">Identyfikator konta zadania</translation>
 <translation id="4798078619018708837">Wpisz datę ważności i kod CVC karty <ph name="CREDIT_CARD" />, by zaktualizować jej dane. Po potwierdzeniu dane karty z Twojego konta Google zostaną udostępnione tej stronie.</translation>
 <translation id="4800132727771399293">Sprawdź datę ważności i kod CVC, a potem spróbuj ponownie</translation>
-<translation id="480334179571489655">Błąd zasady dotyczącej źródła</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Instrukcje od administratora urządzenia:</translation>
 <translation id="4812751092864334025">Urządzenia do noszenia</translation>
@@ -1799,7 +1794,6 @@
 <translation id="5901630391730855834">Żółty</translation>
 <translation id="5903264686717710770">Tytuł:</translation>
 <translation id="5904360430676679685">Rodziny i związki</translation>
-<translation id="5905445707201418379">Zablokowano zgodnie z zasadami dotyczącymi źródła obowiązującymi w przypadku strony <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (zsynchronizowane)</translation>
 <translation id="59174027418879706">Włączony</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_pt-BR.xtb b/components/strings/components_strings_pt-BR.xtb
index 0620c9f2..7a9a684 100644
--- a/components/strings/components_strings_pt-BR.xtb
+++ b/components/strings/components_strings_pt-BR.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Fonte monoespaçada</translation>
 <translation id="1763864636252898013">Este servidor não conseguiu provar que é <ph name="DOMAIN" />. O certificado de segurança não é confiável para o sistema operacional do seu dispositivo. Isso pode ser causado por uma configuração incorreta ou pela interceptação da sua conexão por um invasor.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Tente executar o Diagnóstico de Rede do Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">O servidor que você acessará, <ph name="ORIGIN" />, definiu um cabeçalho solicitando que uma política de origem seja aplicada a todas as solicitações feitas a ele. No entanto, o cabeçalho está incorreto, o que impede que o navegador faça a solicitação para <ph name="SITE" />. Políticas de origem podem ser usadas por operadores para configurar a segurança e outras propriedades de um site.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Saiba mais sobre a navegação anônima no Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Suas guias abertas são exibidas aqui</translation>
@@ -1107,7 +1106,6 @@
 <translation id="3987940399970879459">Menos de 1 MB</translation>
 <translation id="3990250421422698716">Ajustar desvio</translation>
 <translation id="3992684624889376114">Sobre esta página</translation>
-<translation id="3996311196211510766">O site <ph name="ORIGIN" /> solicitou que uma política de origem seja aplicada a todas as solicitações feitas a ele, mas não é possível aplicá-la no momento.</translation>
 <translation id="4006465311664329701">Formas de pagamento, ofertas e endereços que usam o Google Pay</translation>
 <translation id="4009243425692662128">O conteúdo das páginas que você imprime é enviado ao Google Cloud ou a terceiros para análise. Por exemplo, ele pode ser verificado em busca de dados sensíveis.</translation>
 <translation id="4010758435855888356">Permitir acesso ao armazenamento?</translation>
@@ -1172,7 +1170,6 @@
 <translation id="4202554117186904723">Quinto rolo</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Verificar as configurações do antivírus e firewall<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Grande</translation>
-<translation id="4209166701302774460">O servidor que você acessará, <ph name="ORIGIN" />, solicitou que uma política de origem seja aplicada a todas as solicitações feitas a ele. No entanto, agora ele deixou de carregar uma política, o que impede que o navegador faça a solicitação para <ph name="SITE" />. Políticas de origem podem ser usadas por operadores para configurar a segurança e outras propriedades de um site.</translation>
 <translation id="4210602799576081649">Código de verificação expirado. Peça um novo</translation>
 <translation id="421066178035138955">Usar dispositivos e dados de realidade virtual</translation>
 <translation id="4213305257324635756">Filmes de animação</translation>
@@ -1200,7 +1197,6 @@
     &lt;p&gt;Se o erro persistir, entre em contato com o proprietário do site.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Tente executar o Diagnóstico de Rede<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Pode pedir para usar e mover a câmera</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Ir para <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Válido</translation>
 <translation id="4250431568374086873">Sua conexão com esse site não é completamente segura</translation>
 <translation id="4250680216510889253">Não</translation>
@@ -1404,7 +1400,6 @@
 <translation id="4796594887379589189">ID da conta de trabalho</translation>
 <translation id="4798078619018708837">Informe a data de validade e o CVC do <ph name="CREDIT_CARD" /> para atualizar os detalhes do cartão. Depois da confirmação, os detalhes do cartão da sua Conta do Google serão compartilhados com este site.</translation>
 <translation id="4800132727771399293">Verifique sua data de validade e seu CVC e tente novamente</translation>
-<translation id="480334179571489655">Erro de política de origem</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Instruções do administrador do dispositivo:</translation>
 <translation id="4812751092864334025">Tecnologia de wearables</translation>
@@ -1799,7 +1794,6 @@
 <translation id="5901630391730855834">Amarelo</translation>
 <translation id="5903264686717710770">Título:</translation>
 <translation id="5904360430676679685">Família e relacionamentos</translation>
-<translation id="5905445707201418379">Bloqueado de acordo com a política de origem de <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sincronizado)</translation>
 <translation id="59174027418879706">Ativado</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_pt-PT.xtb b/components/strings/components_strings_pt-PT.xtb
index 68eea2b..9577fef 100644
--- a/components/strings/components_strings_pt-PT.xtb
+++ b/components/strings/components_strings_pt-PT.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Tipo de letra de monoespaço</translation>
 <translation id="1763864636252898013">Este servidor não conseguiu provar que é o domínio <ph name="DOMAIN" />; o sistema operativo do seu dispositivo não confia no respetivo certificado de segurança. Isto pode ser o resultado de uma configuração incorreta ou de um invasor a intercetar a sua ligação.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Experimente executar o Diagnóstico de rede do Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">O servidor ao qual irá aceder, <ph name="ORIGIN" />, definiu um cabeçalho
-    que solicita que seja aplicada uma política de origem a todos os pedidos. Contudo,
-    o cabeçalho está formatado incorretamente, o que impede que o navegador satisfaça
-    o seu pedido para <ph name="SITE" />. As políticas de origem podem ser utilizadas
-    pelos operadores de sites para configurar a segurança e outras propriedades de um site.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Saiba mais sobre a Navegação anónima no Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Os separadores abertos aparecem aqui</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Menos de 1 MB</translation>
 <translation id="3990250421422698716">Separar conjuntos</translation>
 <translation id="3992684624889376114">Acerca desta página</translation>
-<translation id="3996311196211510766">O site <ph name="ORIGIN" /> solicitou que seja aplicada uma política de origem
-    a todos os pedidos, mas, de momento, não é possível aplicar essa política.</translation>
 <translation id="4006465311664329701">Métodos de pagamento, ofertas e endereços com o Google Pay</translation>
 <translation id="4009243425692662128">O conteúdo das páginas que imprime é enviado para o Google Cloud ou terceiros para análise. Por exemplo, pode ser analisado quanto a dados confidenciais.</translation>
 <translation id="4010758435855888356">Permitir o acesso ao armazenamento?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Quinto rolo</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Verificar as configurações da firewall e de antivírus<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Grande</translation>
-<translation id="4209166701302774460">O servidor ao qual irá aceder, <ph name="ORIGIN" />, solicitou que seja aplicada uma
-    política de origem a todos os pedidos. Contudo, não
-    conseguiu devolver uma política, o que impede o navegador de satisfazer
-    o seu pedido para <ph name="SITE" />. As políticas de origem podem ser utilizadas
-    pelos operadores de sites para configurar a segurança e outras propriedades de um site.</translation>
 <translation id="4210602799576081649">Código de validação expirado, solicite um novo código</translation>
 <translation id="421066178035138955">Utilizar dados e dispositivos de realidade virtual</translation>
 <translation id="4213305257324635756">Filmes de animação</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Se o erro persistir, contacte o proprietário do Website.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Experimente executar o Diagnóstico de rede<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Pode solicitar a utilização e a movimentação da câmara</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Continuar para <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Válido</translation>
 <translation id="4250431568374086873">A ligação a este site não é totalmente segura</translation>
 <translation id="4250680216510889253">Não</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">ID da conta da tarefa</translation>
 <translation id="4798078619018708837">Introduza a data de validade e o Código de Segurança/CVC de <ph name="CREDIT_CARD" /> para atualizar os detalhes do cartão. Depois de confirmar, os detalhes do cartão da sua Conta Google são partilhados com este site.</translation>
 <translation id="4800132727771399293">Verifique a data de validade e o Código de Segurança/CVC e tente novamente</translation>
-<translation id="480334179571489655">Erro de política de origem</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Instruções do administrador do dispositivo:</translation>
 <translation id="4812751092864334025">Tecnologia em dispositivos de vestir</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Amarelo</translation>
 <translation id="5903264686717710770">Título:</translation>
 <translation id="5904360430676679685">Família e relações</translation>
-<translation id="5905445707201418379">Bloqueado de acordo com a política de origem de <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sincronizados)</translation>
 <translation id="59174027418879706">Ativada</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ro.xtb b/components/strings/components_strings_ro.xtb
index 0bf66f1..c6e681a 100644
--- a/components/strings/components_strings_ro.xtb
+++ b/components/strings/components_strings_ro.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Font Monospace</translation>
 <translation id="1763864636252898013">Acest server nu a putut dovedi că este <ph name="DOMAIN" />; sistemul de operare al dispozitivului nu consideră că certificatul său de securitate este de încredere. Cauza poate fi o configurare greșită sau interceptarea conexiunii de către un atacator.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Rulează Diagnostice rețea Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Serverul pe care dorești să îl accesezi, <ph name="ORIGIN" />, a setat un antet care solicită
-    ca o politică de origine să fie aplicată tuturor solicitărilor către el. Dar
-    antetul are o formă necorespunzătoare, ceea ce împiedică browserul să îți îndeplinească
-    solicitarea pentru <ph name="SITE" />. Politicile de origine pot fi folosite de
-    operatorii de site pentru a configura securitatea și alte proprietăți ale site-ului.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Află mai multe despre modul incognito în Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Filele deschise sunt afișate aici</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Mai puțin de 1 MB</translation>
 <translation id="3990250421422698716">Decalaj de îndoire</translation>
 <translation id="3992684624889376114">Despre această pagină</translation>
-<translation id="3996311196211510766">Site-ul <ph name="ORIGIN" /> a solicitat ca o politică de origine
-    să se aplice tuturor solicitărilor, dar această politică nu poate fi aplicată momentan.</translation>
 <translation id="4006465311664329701">Metode de plată, oferte și adrese care folosesc Google Pay</translation>
 <translation id="4009243425692662128">Conținutul paginilor pe care le printezi este trimis la Google Cloud sau la terți spre analiză. De exemplu, se pot căuta date sensibile.</translation>
 <translation id="4010758435855888356">Permiți accesul la spațiul de stocare?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">A cincea rolă</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />să verifici configurarea pentru firewall și antivirus;<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Mare</translation>
-<translation id="4209166701302774460">Serverul pe care dorești să îl accesezi, <ph name="ORIGIN" />, a solicitat
-    ca o politică de origine să fie aplicată tuturor solicitărilor către el. Dar acum
-    nu a reușit să livreze o politică, ceea ce împiedică browserul să îți îndeplinească
-    solicitarea pentru <ph name="SITE" />. Politicile de origine pot fi folosite de
-    operatorii de site pentru a configura securitatea și alte proprietăți ale site-ului.</translation>
 <translation id="4210602799576081649">Codul de verificare a expirat. Solicită un cod nou.</translation>
 <translation id="421066178035138955">să folosească dispozitivele de realitate virtuală și datele conexe.</translation>
 <translation id="4213305257324635756">Filme de animație</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Dacă eroarea apare în continuare, contactează proprietarul site-ului.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Rulează Diagnostice rețea<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Poate solicita permisiunea de a mișca și folosi camera</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Accesează <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Valid</translation>
 <translation id="4250431568374086873">Conexiunea la acest site nu este complet sigură</translation>
 <translation id="4250680216510889253">Nu</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Codul contului sarcinii</translation>
 <translation id="4798078619018708837">Introdu data de expirare și codul CVC pentru <ph name="CREDIT_CARD" /> ca să actualizezi detaliile cardului. După ce confirmi, acest site va avea acces la detaliile cardului tău din Contul Google.</translation>
 <translation id="4800132727771399293">Verifică data de expirare și codul CVC și încearcă din nou</translation>
-<translation id="480334179571489655">Eroare de politică de origine</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Instrucțiuni de la administratorul dispozitivului:</translation>
 <translation id="4812751092864334025">Tehnologie portabilă</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Galben</translation>
 <translation id="5903264686717710770">Titlul:</translation>
 <translation id="5904360430676679685">Familie și relații</translation>
-<translation id="5905445707201418379">Blocat conform politicii de origine de la <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sincronizat)</translation>
 <translation id="59174027418879706">Activat</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ru.xtb b/components/strings/components_strings_ru.xtb
index 74e2929..494b5d4 100644
--- a/components/strings/components_strings_ru.xtb
+++ b/components/strings/components_strings_ru.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Моноширинный шрифт</translation>
 <translation id="1763864636252898013">Не удалось подтвердить, что это сервер <ph name="DOMAIN" />. Операционная система устройства не доверяет его сертификату безопасности. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Выполните диагностику сети в Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Сервер <ph name="ORIGIN" />, на который вы переходите, установил заголовок, требующий применять правило источника ко всем запросам. Однако из-за неверного формата заголовка браузер не может выполнить ваш запрос для сайта <ph name="SITE" />. Правила в отношении источников позволяют операторам настраивать параметры безопасности и другие свойства сайтов.</translation>
 <translation id="1774592222195216949">Подробнее <ph name="BEGIN_LINK" />о режиме инкогнито в Chromium<ph name="END_LINK" />…</translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Здесь появятся открытые вкладки.</translation>
@@ -1106,7 +1105,6 @@
 <translation id="3987940399970879459">Менее 1 МБ</translation>
 <translation id="3990250421422698716">Смещение</translation>
 <translation id="3992684624889376114">Об этой странице</translation>
-<translation id="3996311196211510766">Сайт <ph name="ORIGIN" />, на который вы переходите, требует применять правило источника ко всем запросам, однако это сейчас невозможно.</translation>
 <translation id="4006465311664329701">Способы оплаты, адреса и специальные предложения из Google Pay</translation>
 <translation id="4009243425692662128">Содержание страниц, которые вы печатаете, отправляется в Google Cloud или третьим лицам для анализа. В частности, оно может быть просканировано на наличие конфиденциальных данных.</translation>
 <translation id="4010758435855888356">Предоставить доступ к хранилищу?</translation>
@@ -1171,7 +1169,6 @@
 <translation id="4202554117186904723">Пятый рулон</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Проверьте настройки брандмауэра и антивирусного ПО<ph name="END_LINK" />.</translation>
 <translation id="4209092469652827314">Крупный</translation>
-<translation id="4209166701302774460">Сервер <ph name="ORIGIN" />, на который вы переходите, требует применять правило источника ко всем запросам. Однако серверу не удалось отправить правило, поэтому браузер не может выполнить ваш запрос для сайта <ph name="SITE" />. Правила в отношении источников позволяют операторам настраивать параметры безопасности и другие свойства сайтов.</translation>
 <translation id="4210602799576081649">Код подтверждения больше не действителен. Запросите новый.</translation>
 <translation id="421066178035138955">Использование устройств и данных виртуальной реальности.</translation>
 <translation id="4213305257324635756">Анимационные фильмы</translation>
@@ -1199,7 +1196,6 @@
     &lt;p&gt;Если проблему решить не удалось, обратитесь к владельцу сайта.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Выполните диагностику сети<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Разрешено отправлять запрос на использование камеры и ее перемещение</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Перейти на сайт <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Действительный</translation>
 <translation id="4250431568374086873">Подключение к сайту защищено не полностью</translation>
 <translation id="4250680216510889253">Нет</translation>
@@ -1403,7 +1399,6 @@
 <translation id="4796594887379589189">Идентификатор аккаунта, в котором выполняется задание</translation>
 <translation id="4798078619018708837">Введите срок действия и CVC-код карты <ph name="CREDIT_CARD" />. После этого ее реквизиты из аккаунта Google будут переданы сайту.</translation>
 <translation id="4800132727771399293">Проверьте срок действия и CVC-код, а затем повторите попытку</translation>
-<translation id="480334179571489655">Ошибка политики источника</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Инструкции от администратора вашего устройства:</translation>
 <translation id="4812751092864334025">Носимые устройства</translation>
@@ -1798,7 +1793,6 @@
 <translation id="5901630391730855834">Желтый</translation>
 <translation id="5903264686717710770">Заголовок:</translation>
 <translation id="5904360430676679685">Семья и взаимоотношения</translation>
-<translation id="5905445707201418379">Заблокировано в соответствии с политикой в отношении источников <ph name="ORIGIN" /></translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (данные синхронизируются)</translation>
 <translation id="59174027418879706">Включено</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_si.xtb b/components/strings/components_strings_si.xtb
index 7106dce..ee940230 100644
--- a/components/strings/components_strings_si.xtb
+++ b/components/strings/components_strings_si.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace ෆොන්ට</translation>
 <translation id="1763864636252898013">මෙම සේවාදායකයට එය <ph name="DOMAIN" /> බව සනාථ කිරීමට නොහැකි විය; එහි ආරක්ෂණ සහතිකය ඔබගේ උපාංගයෙහි මෙහෙයුම් පද්ධතිය මගින් විශ්වාස නොකරයි. මෙය වැරදි වින්‍යාස කිරීමක් හෝ ප්‍රහාරකයකු ඔබගේ සබැඳුමට බාධා කිරීමක් නිසා විය හැකිය.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows ජාල දෝෂහරණ ධාවනය කිරීමට උත්සාහ කරන්න<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">ඔබ යන සේවාදායකය, <ph name="ORIGIN" />, එය වෙත කෙරෙන සියලුම
-    ඉල්ලීම්වලට මූලාරම්භ ප්‍රතිපත්තියක් යෙදෙන මාතෘකාවක් සකසා ඇත. නමුත්
-    මාතෘකාව වැරදිව ආකෘති කර ඇත, එය බ්‍රවුසරය
-    <ph name="SITE" /> සඳහා වන ඔබේ ඉල්ලීම ඉටු කිරීමෙන් වළක්වයි. වෙබ් අඩවියක් සඳහා ආරක්‍ෂාව සහ වෙනත් ලක්‍ෂණ
-    වින්‍යාස කිරීමට වෙබ් අඩවිය ක්‍රියා කරවන්නන් විසින් මූලාරම්භ ප්‍රතිපත්ති භාවිත කරනු ලැබිය හැක.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium හි අප්‍රසිද්ධ ගැන තව දැන ගන්න<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">ඔබේ විවෘත කළ පටිති මෙහි දිස් වේ</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">1 MBට වඩා අඩු</translation>
 <translation id="3990250421422698716">අනුලම්බයේ සෙමින් දුවන්න</translation>
 <translation id="3992684624889376114">මෙම පිටුව පිළිබඳ</translation>
-<translation id="3996311196211510766">මූලාරම්භ ප්‍රතිපත්තිය එය වෙත සියලුම ඉල්ලීම්වලට යෙදීමට <ph name="ORIGIN" /> වෙබ් අඩවිය
-    ඉල්ලා ඇති නමුත්, දැනට මෙම ප්‍රතිපත්තිය යෙදිය නොහැක.</translation>
 <translation id="4006465311664329701">Google Pay භාවිතයෙන් ගෙවීමේ ක්‍රම, දීමනා සහ ලිපින</translation>
 <translation id="4009243425692662128">ඔබ මුද්‍රණය කරන පිටුවල අන්තර්ගතය විශ්ලේෂණය සඳහා Google ක්ලවුඩ් හෝ තෙවන පාර්ශ්ව වෙත යවනු ලැබේ. උදාහරණයක් වශයෙන්, සංවේදි දත්ත සඳහා එය ස්කෑන් කරනු ලැබිය හැකිය.</translation>
 <translation id="4010758435855888356">ගබඩා ප්‍රවේශය ඉඩ දෙන්නද?</translation>
@@ -1177,8 +1170,6 @@
 <translation id="4202554117186904723">Fifth Roll</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />සුරැකුම් පවුර සහ ප්‍රතිවයිරස වින්‍යාස කිරීම් පරීක්ෂා කරමින්<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">විශාල</translation>
-<translation id="4209166701302774460">ඔබ යන සේවාදායකය, <ph name="ORIGIN" />, එය වෙත සියලුම ඉල්ලීම්වලට මූලාරම්භක ප්‍රතිපත්තියක් යෙදීමට ඉල්ලා ඇත. නමුත් එය දැන් ප්‍රතිපත්තියක් බෙදා හැරීමට අසමත් වී ඇත, එය <ph name="SITE" /> සඳහා වන ඔබේ ඉල්ලීම ඉටු කිරීමෙන් බ්‍රවුසරය වළක්වයි. වෙබ් අඩවියක් සඳහා ආරක්‍ෂාව සහ වෙනත් ලක්‍ෂණ
-    වින්‍යාස කිරීමට වෙබ් අඩවිය ක්‍රියා කරවන්නන් විසින් මූලාරම්භ ප්‍රතිපත්ති භාවිත කරනු ලැබිය හැක.</translation>
 <translation id="4210602799576081649">සත්‍යාපන කේතය කල් ඉකුත් වී ඇත, නව කේතයක් ඉල්ලන්න</translation>
 <translation id="421066178035138955">අතත්‍ය යථාර්ථ උපාංග සහ දත්ත භාවිත කරන්න</translation>
 <translation id="4213305257324635756">සජීවන චිත්‍රපට</translation>
@@ -1206,7 +1197,6 @@
     &lt;p&gt;ඔබට තවමත් දෝෂය පෙනේ නම්, වෙබ් අඩවි හිමිකරු සම්බන්ධ කර ගන්න.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />ජාල දෝෂහරණ ධාවනය කිරීමට උත්සාහ කරන්න<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">ඔබගේ කැමරාව භාවිත කිරීමට සහ චලනය කිරීමට ඉල්ලිය හැකිය</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> ‌වෙත යන්න<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">වලංගුයි</translation>
 <translation id="4250431568374086873">මෙම අඩවිය වෙත ඔබගේ සම්බන්ධතාවය සම්පූර්ණයෙන්ම සුරක්ෂිත නැත</translation>
 <translation id="4250680216510889253">නැත</translation>
@@ -1410,7 +1400,6 @@
 <translation id="4796594887379589189">වැඩ ගිණුම් හැඳුනුම</translation>
 <translation id="4798078619018708837">ඔබේ කාඩ්පත් විස්තර යාවත්කාලීන කිරීමට <ph name="CREDIT_CARD" /> සඳහා කල් ඉකුත් වීමේ දිනය සහ CVC ඇතුළත් කරන්න. ඔබ තහවුරු කළ පසු, ඔබේ Google ගිණුමෙන් කාඩ්පත් විස්තර මෙම අඩවිය සමඟ බෙදා ගනු ලැබේ.</translation>
 <translation id="4800132727771399293">ඔබේ කල් ඉකුත් වූ දිනය සහ CVC, පරික්ෂා කර යළි උත්සාහ කරන්න</translation>
-<translation id="480334179571489655">මුල් ප්‍රතිපත්තිය දෝෂය</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">ඔබේ උපාංග පරිපාලකයාගෙන් ලැබෙන උපදෙස්:</translation>
 <translation id="4812751092864334025">පළඳිය හැකි තාක්ෂණය</translation>
@@ -1805,7 +1794,6 @@
 <translation id="5901630391730855834">කහ</translation>
 <translation id="5903264686717710770">මාතෘකාව:</translation>
 <translation id="5904360430676679685">පවුල සහ සම්බන්ධතා</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" />ගේ මූලාරම්භ ප්‍රතිපත්තියට අනුව අවහිර කර ඇත.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (සමමුහුර්තයි)</translation>
 <translation id="59174027418879706">සබලයි</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_sk.xtb b/components/strings/components_strings_sk.xtb
index 65346a42..6d4cb39 100644
--- a/components/strings/components_strings_sk.xtb
+++ b/components/strings/components_strings_sk.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">Neproporcionálne písmo</translation>
 <translation id="1763864636252898013">Server nedokáže overiť, či ide o doménu <ph name="DOMAIN" />, operačný systém vášho zariadenia nedôveruje jej bezpečnostnému certifikátu. Môže to byť spôsobené nesprávnou konfiguráciou alebo tým, že vaše pripojenie zachytil útočník.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Skúste spustiť nástroj Diagnostika siete systému Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Server <ph name="ORIGIN" />, na ktorý prechádzate, nastavil hlavičku, ktorá požaduje, aby sa na všetky požiadavky odoslané na server vzťahovalo pravidlo pre zdroj. Hlavička má však nesprávny tvar a prehliadač preto nemôže vašej požiadavke pre web <ph name="SITE" /> vyhovieť. Pomocou pravidiel pre zdroj môžu operátori webu nakonfigurovať zabezpečenie a ďalšie vlastnosti webu.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Ďalšie informácie o režime inkognito v prehliadači Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Tu sa zobrazia otvorené karty</translation>
@@ -1103,7 +1102,6 @@
 <translation id="3987940399970879459">Menej ako 1 MB</translation>
 <translation id="3990250421422698716">Odsadenie zarovnania okrajov</translation>
 <translation id="3992684624889376114">Táto stránka</translation>
-<translation id="3996311196211510766">Web <ph name="ORIGIN" /> požiadal, aby sa na všetky jeho požiadavky vzťahovalo pravidlo pre zdroj, ale toto pravidlo sa momentálne nedá uplatniť.</translation>
 <translation id="4006465311664329701">Spôsoby platby, ponuky a adresy používajúce Google Pay</translation>
 <translation id="4009243425692662128">Obsah stránok, ktoré vytlačíte, sa odosiela na analýzu do služby Google Cloud alebo tretím stranám. Môže sa v ňom napríklad kontrolovať prítomnosť citlivých údajov.</translation>
 <translation id="4010758435855888356">Chcete povoliť prístup k úložisku?</translation>
@@ -1168,7 +1166,6 @@
 <translation id="4202554117186904723">Piaty kotúč</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Skontrolovať konfiguráciu brány firewall a antivírusového softvéru<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Veľké</translation>
-<translation id="4209166701302774460">Server <ph name="ORIGIN" />, na ktorý prechádzate, požiadal, aby sa na všetky naň odoslané požiadavky vzťahovalo pravidlo pre zdroj. Neposkytol však pravidlo, a preto prehliadač nemôže splniť vašu požiadavku pre web <ph name="SITE" />. Pomocou pravidiel pre zdroj môžu operátori webu nakonfigurovať zabezpečenie a ďalšie vlastnosti webu.</translation>
 <translation id="4210602799576081649">Overovací kód vypršal, požiadajte o nový</translation>
 <translation id="421066178035138955">Používať zariadenia a údaje virtuálnej reality</translation>
 <translation id="4213305257324635756">Animované filmy</translation>
@@ -1196,7 +1193,6 @@
     &lt;p&gt;Ak sa chyba zobrazuje aj naďalej, kontaktujte vlastníka príslušného webu.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Skúste spustiť nástroj Diagnostika siete<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Môže žiadať o povolenie používať kameru a hýbať ňou</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Pokračovať na <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Platný</translation>
 <translation id="4250431568374086873">Spojenie s týmto webom nie je úplne zabezpečené</translation>
 <translation id="4250680216510889253">Nie</translation>
@@ -1400,7 +1396,6 @@
 <translation id="4796594887379589189">Číslo účtu úlohy</translation>
 <translation id="4798078619018708837">Ak chcete aktualizovať údaje o karte <ph name="CREDIT_CARD" />, zadajte dátum vypršania platnosti a kód CVC. Po potvrdení sa budú údaje o karte z vášho účtu Google zdieľať s týmto webom.</translation>
 <translation id="4800132727771399293">Skontrolujte dátum vypršania platnosti aj kód CVC a skúste to znova</translation>
-<translation id="480334179571489655">Chyba pravidla pôvodu</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Pokyny od správcu vášho zariadenia:</translation>
 <translation id="4812751092864334025">Nositeľné zariadenia</translation>
@@ -1795,7 +1790,6 @@
 <translation id="5901630391730855834">Žltá</translation>
 <translation id="5903264686717710770">Názov:</translation>
 <translation id="5904360430676679685">Rodina a vzťahy</translation>
-<translation id="5905445707201418379">Blokované pravidlom pre zdroj <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synchronizované)</translation>
 <translation id="59174027418879706">Povolené</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_sl.xtb b/components/strings/components_strings_sl.xtb
index 6c5a546..c81dfe4 100644
--- a/components/strings/components_strings_sl.xtb
+++ b/components/strings/components_strings_sl.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Pisava s stalno širino</translation>
 <translation id="1763864636252898013">Strežniku ni uspelo dokazati, da je <ph name="DOMAIN" />; operacijski sistem vaše naprave ne zaupa njegovemu varnostnemu potrdilu. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Poskušajte zagnati orodje Omrežna diagnostika Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Strežnik, na katerega greste, <ph name="ORIGIN" />, je nastavil glavo,
-    ki zahteva, da se za vse zahteve, ki so mu poslane, uporabi pravilnik o izvoru. Vendar
-    je glava popačena, zaradi česar brskalnik ne more
-    izpolniti vaše zahteve za <ph name="SITE" />. Pravilnike izvora lahko uporabljajo
-    ponudniki spletnih mest zaradi konfiguriranja varnosti in drugih lastnosti spletnega mesta.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Preberite več o anonimnem načinu v Chromiumu<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Tu so prikazani odprti zavihki</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Manj kot 1 MB</translation>
 <translation id="3990250421422698716">Zamik v načinu dela »jog«</translation>
 <translation id="3992684624889376114">O tej strani</translation>
-<translation id="3996311196211510766">Spletno mesto <ph name="ORIGIN" /> je zahtevalo, da izvorni pravilnik
-    velja za vse njegove zahteve, vendar tega pravilnika trenutno ni mogoče uveljaviti.</translation>
 <translation id="4006465311664329701">Plačilna sredstva, ponudbe in naslovi z Googlom Pay</translation>
 <translation id="4009243425692662128">Vsebina natisnjenih strani je poslana v Google Cloud ali drugim ponudnikom v analizo. Lahko je na primer pregledana glede tega, ali vsebuje občutljive podatke.</translation>
 <translation id="4010758435855888356">Želite odobriti dostop do shrambe?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Kolut 5</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />preveriti požarni zid in konfiguracije protivirusnega programa<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Velika</translation>
-<translation id="4209166701302774460">Strežnik, na katerega greste, <ph name="ORIGIN" />, je zahteval, da se
-    za vse zahteve, ki so mu poslane, uporabi pravilnik o izvoru. Vendar pa zdaj ni zagotovil
-    pravilnika, kar brskalniku preprečuje, da bi izpolnil vašo zahtevo
-    za <ph name="SITE" />. Pravilnike o izvoru lahko uporabljajo ponudniki spletnih mest
-    zaradi konfiguriranja varnosti in drugih lastnosti spletnega mesta.</translation>
 <translation id="4210602799576081649">Potrditvena koda je potekla, zahtevajte novo kodo.</translation>
 <translation id="421066178035138955">Uporaba naprav in podatkov za navidezno resničnost</translation>
 <translation id="4213305257324635756">Animirani filmi</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Če je napaka še vedno prikazana, se obrnite na lastnika spletnega mesta.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Poskušajte zagnati orodje za omrežno diagnostiko<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Lahko zahteva uporabo in premik kamere.</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Nadaljuj na <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Veljavno</translation>
 <translation id="4250431568374086873">Povezava s tem mestom ni povsem varna.</translation>
 <translation id="4250680216510889253">Ne</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">ID računa za opravilo</translation>
 <translation id="4798078619018708837">Vnesite datum poteka in CVC za kreditno kartico <ph name="CREDIT_CARD" />, da posodobite podatke o kartici. Ko potrdite, bodo temu spletnemu mestu razkriti podatki o kreditni kartici iz Google Računa.</translation>
 <translation id="4800132727771399293">Preverite datum poteka in številko CVC ter poskusite znova</translation>
-<translation id="480334179571489655">Napaka pravilnika o izvoru</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Navodila skrbnika naprave:</translation>
 <translation id="4812751092864334025">Nosljiva tehnologija</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Rumena</translation>
 <translation id="5903264686717710770">Naslov:</translation>
 <translation id="5904360430676679685">Družina in odnosi</translation>
-<translation id="5905445707201418379">Blokirano v skladu s pravilnikom izvora za <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sinhronizirano)</translation>
 <translation id="59174027418879706">Omogočeno</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_sq.xtb b/components/strings/components_strings_sq.xtb
index 66aa162..58db1b0 100644
--- a/components/strings/components_strings_sq.xtb
+++ b/components/strings/components_strings_sq.xtb
@@ -335,10 +335,6 @@
 <translation id="1757773103848038814">Fonti me hapësirë fikse</translation>
 <translation id="1763864636252898013">Ky server nuk mundi të dëshmonte se ky është <ph name="DOMAIN" />; certifikata e tij e sigurisë nuk është e besueshme nga Chromium. Kjo mund të shkaktohet nga keqkonfigurimi ose ndonjë sulmues që po kap lidhjen tënde.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Provo të ekzekutosh diagnostikimin e rrjetit të Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Serveri ku po shkon, <ph name="ORIGIN" />, ka vendosur një titull
-    që kërkon që të aplikohet një politikë origjine për të gjitha kërkesat drejtuar atij. Por
-    titulli është formuar gabimisht, gjë që e parandalon përmbushjen e
-    kërkesës sate për <ph name="SITE" />. Politikat e origjinës mund të përdoren nga operatorët e sajtit për të konfiguruar karakteristikat e sigurisë dhe karakteristika të tjera për një sajt.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Mëso më shumë për modalitetin "I fshehtë" në Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Skedat e tua të hapura shfaqen këtu</translation>
@@ -1110,8 +1106,6 @@
 <translation id="3987940399970879459">Më pak se 1 MB</translation>
 <translation id="3990250421422698716">Zhvendosja e bordurës</translation>
 <translation id="3992684624889376114">Rreth kësaj faqeje</translation>
-<translation id="3996311196211510766">Sajti <ph name="ORIGIN" /> ka kërkuar që të zbatohet një politikë e origjinës
-    për të gjitha kërkesat drejtuar atij, por kjo politikë nuk mund të zbatohet aktualisht.</translation>
 <translation id="4006465311664329701">Mënyrat e pagesës, ofertat dhe adresat që përdorin Google Pay</translation>
 <translation id="4009243425692662128">Përmbajtja e faqeve që printon i dërgohet "Resë kompjuterike të Google" ose palëve të treta për analizë. Për shembull, mund të skanohet për të dhëna delikate.</translation>
 <translation id="4010758435855888356">Të lejohet qasja te hapësira ruajtëse?</translation>
@@ -1176,9 +1170,6 @@
 <translation id="4202554117186904723">Ruli i pestë</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Të kontrollosh konfigurimet e murit mbrojtës dhe antivirusit<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">E madhe</translation>
-<translation id="4209166701302774460">Serveri ku po shkon, <ph name="ORIGIN" />, ka kërkuar që të zbatohet një politikë e origjinës për të gjitha kërkesat drejtuar atij Por tani nuk ka arritur
-    të dorëzojë një politikë, gjë që parandalon që shfletuesi të përmbushë kërkesën tënde për <ph name="SITE" />. Politikat e origjinës mund të përdoren nga operatorët
-    e sajtit për të konfiguruar karakteristikat e sigurisë dhe karakteristika të tjera për një sajt.</translation>
 <translation id="4210602799576081649">Kodi i verifikimit skadoi; kërko një kod të ri</translation>
 <translation id="421066178035138955">Përdor pajisjet dhe të dhënat e "Realitetit virtual"</translation>
 <translation id="4213305257324635756">Filmat e animuar</translation>
@@ -1206,7 +1197,6 @@
     &lt;p&gt;Nëse ende e sheh gabimin, kontakto me zotëruesin e sajtit të uebit.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Provo të ekzekutosh diagnostikimin e rrjetit<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Mund të kërkojë të përdorë dhe lëvizë kamerën tënde</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Vazhdo te <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">I vlefshëm</translation>
 <translation id="4250431568374086873">Lidhja jote me këtë sajt nuk është plotësisht e sigurt</translation>
 <translation id="4250680216510889253">Jo</translation>
@@ -1410,7 +1400,6 @@
 <translation id="4796594887379589189">ID-ja e llogarisë së punës</translation>
 <translation id="4798078619018708837">Shkruaj datën e skadimit dhe kodin CVC për <ph name="CREDIT_CARD" /> për të përditësuar detajet e kartës. Pasi t'i konfirmosh, detajet e kartës nga "Llogaria jote e Google" do të ndahen me këtë sajt.</translation>
 <translation id="4800132727771399293">Kontrollo datën e skadimit dhe CVC-në dhe provo sërish.</translation>
-<translation id="480334179571489655">Gabim i politikës së origjinës</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Udhëzimet nga administratori i pajisjes sate:</translation>
 <translation id="4812751092864334025">Teknologjia që vishet</translation>
@@ -1805,7 +1794,6 @@
 <translation id="5901630391730855834">E verdhë</translation>
 <translation id="5903264686717710770">Titulli:</translation>
 <translation id="5904360430676679685">Familja dhe marrëdhëniet</translation>
-<translation id="5905445707201418379">Bllokuar sipas politikës së origjinës së <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sinkronizuar)</translation>
 <translation id="59174027418879706">Aktivizuar</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_sr-Latn.xtb b/components/strings/components_strings_sr-Latn.xtb
index b11a1ef..908454b 100644
--- a/components/strings/components_strings_sr-Latn.xtb
+++ b/components/strings/components_strings_sr-Latn.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Font fiksne širine</translation>
 <translation id="1763864636252898013">Ovaj server ne može da dokaže da je <ph name="DOMAIN" />; operativni sistem uređaja nema poverenja u njegov bezbednosni sertifikat. Uzrok tome je možda pogrešna konfiguracija ili napadač koji je prekinuo vezu.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Pokušajte da pokrenete Windows dijagnostiku mreže<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Server na koji idete, <ph name="ORIGIN" />, podesio je zaglavlje
-    koje zahteva da se smernice za poreklo primenjuju na sve zahteve ka njemu. Međutim,
-    format zaglavlja je netačan, što sprečava pregledač da ispuni
-    zahtev za <ph name="SITE" />. Pomoću smernica za poreklo
-    operatori sajtova mogu da konfigurišu bezbednost i druga svojstva za sajt.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Saznajte više o režimu Bez arhiviranja u Chromium-u<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Otvorene kartice se pojavljuju ovde</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Manje od 1 MB</translation>
 <translation id="3990250421422698716">Protresanje radi poravnanja</translation>
 <translation id="3992684624889376114">O ovoj stranici</translation>
-<translation id="3996311196211510766">Sajt <ph name="ORIGIN" /> je zatražio da se smernice za poreklo
-    primene na sve zahteve ka njemu, ali ove smernice trenutno ne mogu da se primene.</translation>
 <translation id="4006465311664329701">Načini plaćanja, ponude i adrese koji koriste Google Pay</translation>
 <translation id="4009243425692662128">Sadržaj stranica koje štampate se šalje u Google Cloud ili trećim stranama na analizu. Na primer, možda će biti skeniran u potrazi za osetljivim podacima.</translation>
 <translation id="4010758435855888356">Želite li da dozvolite pristup memorijskom prostoru?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Peti kotur</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />da proverite konfiguraciju zaštitnog zida i antivirusa<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Velika</translation>
-<translation id="4209166701302774460">Server na koji idete, <ph name="ORIGIN" />, zatražio je
-    da se smernice za poreklo primene na sve zahteve ka njemu. Međutim, slanje smernica nije uspelo,
-    pa pregledač ne može da ispuni vaš zahtev
-    za <ph name="SITE" />. Pomoću smernica za poreklo operatori sajtova
-    mogu da konfigurišu bezbednost i druga svojstva za sajt.</translation>
 <translation id="4210602799576081649">Verifikacioni kôd je istekao, zatražite novi</translation>
 <translation id="421066178035138955">koristi uređaje i podatke virtuelne realnosti</translation>
 <translation id="4213305257324635756">Animirani filmovi</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Ako vam se i dalje prikazuje greška, kontaktirajte vlasnika veb-sajta.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Pokušajte da pokrenete dijagnostiku mreže<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Može da traži da koristi i pomera kameru</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Nastavite na <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Važeći</translation>
 <translation id="4250431568374086873">Veza sa ovim sajtom nije potpuno bezbedna</translation>
 <translation id="4250680216510889253">Ne</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">ID naloga zadatka</translation>
 <translation id="4798078619018708837">Unesite rok trajanja i CVC za karticu <ph name="CREDIT_CARD" /> da biste ažurirali podatke o kartici. Kada budete potvrdili, podaci o kartici sa Google naloga će se deliti sa ovim sajtom.</translation>
 <translation id="4800132727771399293">Proverite datum isteka i CVC i pokušajte ponovo</translation>
-<translation id="480334179571489655">Greška sa poreklom smernica</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Uputstva administratora uređaja:</translation>
 <translation id="4812751092864334025">Nosiva tehnologija</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Žuta</translation>
 <translation id="5903264686717710770">Naslov:</translation>
 <translation id="5904360430676679685">Porodični i drugi odnosi</translation>
-<translation id="5905445707201418379">Blokirano je u skladu sa smernicama za poreklo (<ph name="ORIGIN" />).</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sinhronizovano)</translation>
 <translation id="59174027418879706">Omogućeno</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_sr.xtb b/components/strings/components_strings_sr.xtb
index 59c7473..b5724beb 100644
--- a/components/strings/components_strings_sr.xtb
+++ b/components/strings/components_strings_sr.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Фонт фиксне ширине</translation>
 <translation id="1763864636252898013">Овај сервер не може да докаже да је <ph name="DOMAIN" />; оперативни систем уређаја нема поверења у његов безбедносни сертификат. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Покушајте да покренете Windows дијагностику мреже<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Сервер на који идете, <ph name="ORIGIN" />, подесио је заглавље
-    које захтева да се смернице за порекло примењују на све захтеве ка њему. Међутим,
-    формат заглавља је нетачан, што спречава прегледач да испуни
-    захтев за <ph name="SITE" />. Помоћу смерница за порекло
-    оператори сајтова могу да конфигуришу безбедност и друга својства за сајт.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Сазнајте више о режиму Без архивирања у Chromium-у<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Отворене картице се појављују овде</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Мање од 1 MB</translation>
 <translation id="3990250421422698716">Протресање ради поравнања</translation>
 <translation id="3992684624889376114">О овој страници</translation>
-<translation id="3996311196211510766">Сајт <ph name="ORIGIN" /> је затражио да се смернице за порекло
-    примене на све захтеве ка њему, али ове смернице тренутно не могу да се примене.</translation>
 <translation id="4006465311664329701">Начини плаћања, понуде и адресе који користе Google Pay</translation>
 <translation id="4009243425692662128">Садржај страница које штампате се шаље у Google Cloud или трећим странама на анализу. На пример, можда ће бити скениран у потрази за осетљивим подацима.</translation>
 <translation id="4010758435855888356">Желите ли да дозволите приступ меморијском простору?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Пети котур</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />да проверите конфигурацију заштитног зида и антивируса<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Велика</translation>
-<translation id="4209166701302774460">Сервер на који идете, <ph name="ORIGIN" />, затражио је
-    да се смернице за порекло примене на све захтеве ка њему. Међутим, слање смерница није успело,
-    па прегледач не може да испуни ваш захтев
-    за <ph name="SITE" />. Помоћу смерница за порекло оператори сајтова
-    могу да конфигуришу безбедност и друга својства за сајт.</translation>
 <translation id="4210602799576081649">Верификациони кôд је истекао, затражите нови</translation>
 <translation id="421066178035138955">користи уређаје и податке виртуелне реалности</translation>
 <translation id="4213305257324635756">Анимирани филмови</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Ако вам се и даље приказује грешка, контактирајте власника веб-сајта.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Покушајте да покренете дијагностику мреже<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Може да тражи да користи и помера камеру</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Наставите на <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Важећи</translation>
 <translation id="4250431568374086873">Веза са овим сајтом није потпуно безбедна</translation>
 <translation id="4250680216510889253">Не</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">ИД налога задатка</translation>
 <translation id="4798078619018708837">Унесите рок трајања и CVC за картицу <ph name="CREDIT_CARD" /> да бисте ажурирали податке о картици. Када будете потврдили, подаци о картици са Google налога ће се делити са овим сајтом.</translation>
 <translation id="4800132727771399293">Проверите датум истека и CVC и покушајте поново</translation>
-<translation id="480334179571489655">Грешка са пореклом смерница</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Упутства администратора уређаја:</translation>
 <translation id="4812751092864334025">Носива технологија</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Жута</translation>
 <translation id="5903264686717710770">Наслов:</translation>
 <translation id="5904360430676679685">Породични и други односи</translation>
-<translation id="5905445707201418379">Блокирано је у складу са смерницама за порекло (<ph name="ORIGIN" />).</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (синхронизовано)</translation>
 <translation id="59174027418879706">Омогућено</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_sv.xtb b/components/strings/components_strings_sv.xtb
index d957126..f4a8746 100644
--- a/components/strings/components_strings_sv.xtb
+++ b/components/strings/components_strings_sv.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Jämnbrett teckensnitt</translation>
 <translation id="1763864636252898013">Servern kunde inte bevisa att den är <ph name="DOMAIN" /> eftersom enhetens operativsystem inte litar på dess säkerhetscertifikat. Detta kan orsakas av en felaktig konfigurering eller att någon spärrar anslutningen.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Testa att köra nätverksdiagnostik för Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Servern som du är på väg till, <ph name="ORIGIN" />, har en inställning som innebär
-    att en ursprungsprincip ska gälla för varje begäran den svarar på. Men
-    inställningen har fel format, och därför går det inte att slutföra begäran
-    om <ph name="SITE" /> i webbläsaren. Ursprungsprinciper kan användas av
-    webbplatsoperatörer för att konfigurera säkerhetsfunktioner och andra funktioner för webbplatser.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Läs mer om inkognitoläge i Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Öppna flikar visas här</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Mindre än 1 MB</translation>
 <translation id="3990250421422698716">Stötvis förskjutning</translation>
 <translation id="3992684624889376114">Om den här sidan</translation>
-<translation id="3996311196211510766">Webbplatsen <ph name="ORIGIN" /> har begärt att en ursprungsprincip
-    ska gälla varje gång den svarar på en begäran, men denna princip går inte att tillämpa just nu.</translation>
 <translation id="4006465311664329701">Betalningsmetoder, erbjudanden och adresser med Google Pay</translation>
 <translation id="4009243425692662128">Innehållet på sidor du skriver ut skickas till Google Cloud eller tredje part för analys. Den kan till exempel genomsökas efter känsliga uppgifter.</translation>
 <translation id="4010758435855888356">Vill du tillåta åtkomst till lagringsutrymmet?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Femte rullen</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />kontrollera konfigureringarna för brandväggen och antivirusprogram<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Stor</translation>
-<translation id="4209166701302774460">Servern som du är på väg till, <ph name="ORIGIN" />, har begärt att en
-    ursprungsprincip ska gälla varje gång den svarar på en begäran. Men den skickade
-    ingen princip, och därför går det inte att slutföra begäran
-    om <ph name="SITE" /> i webbläsaren. Ursprungsprinciper kan användas av webbplatsoperatörer
-    för att konfigurera säkerhetsfunktioner och andra funktioner för webbplatser.</translation>
 <translation id="4210602799576081649">Verifieringskoden har löpt ut. Begär en ny kod.</translation>
 <translation id="421066178035138955">använda VR-enheter och data</translation>
 <translation id="4213305257324635756">Animerade filmer</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Om felet fortfarande visas kontaktar du webbplatsens ägare.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Testa att köra nätverksdiagnostik<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Får begära tillstånd att använda och röra kameran</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Fortsätt till <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Giltigt</translation>
 <translation id="4250431568374086873">Anslutningen till den här webbplatsen är inte helt säker</translation>
 <translation id="4250680216510889253">Nej</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Konto-ID för utskriften</translation>
 <translation id="4798078619018708837">Uppdatera kortinformationen genom att ange sista giltighetsdatum och CVC-kod för <ph name="CREDIT_CARD" />. När du bekräftar delas kortuppgifter från ditt Google-konto med webbplatsen.</translation>
 <translation id="4800132727771399293">Kontrollera utgångsdatum och CVC-kod och försök igen</translation>
-<translation id="480334179571489655">Fel vid tillämpning av ursprungsprincip</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Anvisningar från enhetsadministratören:</translation>
 <translation id="4812751092864334025">Kroppsburen teknik</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Gul</translation>
 <translation id="5903264686717710770">Namn:</translation>
 <translation id="5904360430676679685">Familj och relationer</translation>
-<translation id="5905445707201418379">Blockerad i enlighet med ursprungsprincipen på <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (synkroniserade)</translation>
 <translation id="59174027418879706">Aktiverad</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_sw.xtb b/components/strings/components_strings_sw.xtb
index f5776546..6daa8585 100644
--- a/components/strings/components_strings_sw.xtb
+++ b/components/strings/components_strings_sw.xtb
@@ -335,10 +335,6 @@
 <translation id="1757773103848038814">Fonti ya "Monospace"</translation>
 <translation id="1763864636252898013">Seva hii haikuweza kuthibitisha kuwa ni <ph name="DOMAIN" />; cheti chake cha usalama hakiaminiwi na mfumo wa uendeshaji wa kifaa chako. Hii inaweza kusababishwa na usanidi usiofaa au mvamizi kuingilia muunganisho wako.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Jaribu kutumia zana ya Kuchunguza Mtandao wa Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Seva ambako unaenda, <ph name="ORIGIN" />, ina mada
-    inayotaka sera ya asili itumike katika maombi yote inayopokea. Lakini
-    mada si sahihi, hali inayozuia kivinjari kisitekeleze
-    ombi lako la <ph name="SITE" />. Sera za asili zinaweza kutumiwa na wahudumu wa tovuti kuweka mipangilio ya usalama na sifa nyingine za tovuti.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Pata maelezo zaidi kuhusu Hali fiche kwenye Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Vichupo vyako vilivyo wazi huonekana hapa</translation>
@@ -1110,8 +1106,6 @@
 <translation id="3987940399970879459">Chini ya MB 1</translation>
 <translation id="3990250421422698716">Kunja kuwa katika muundo wa Z</translation>
 <translation id="3992684624889376114">Kuhusu ukurasa huu</translation>
-<translation id="3996311196211510766">Tovuti ya <ph name="ORIGIN" /> inataka sera ya asili
-    itumike kwenye maombi yote inayopokea, lakini sera hii haiwezi kutumika kwa sasa.</translation>
 <translation id="4006465311664329701">Njia za Kulipa, Ofa na Anwani Zinazotumia Google Pay</translation>
 <translation id="4009243425692662128">Maudhui ya kurasa unazochapisha yanatumwa kwenda katika huduma za Google Cloud au kwa washirika wengine kwa ajili ya uchambuzi. Kwa mfano, yanaweza kuchanganuliwa ili kubaini data nyeti.</translation>
 <translation id="4010758435855888356">Ungependa kuruhusu nafasi ya hifadhi ifikiwe?</translation>
@@ -1176,11 +1170,6 @@
 <translation id="4202554117186904723">Gombo la Tano</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Kuangalia mipangilio ya kinga mtandao na kingavirusi<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Kubwa</translation>
-<translation id="4209166701302774460">Seva ambako unaenda, <ph name="ORIGIN" />, inataka
-    sera ya asili itumike katika maombi yote inayopokea. Lakini kwa sasa imeshindwa
-    kutuma sera, hali inayozuia kivinjari kisitekeleze
-    ombi lako la <ph name="SITE" />. Sera za asili zinaweza kutumiwa na wahudumu wa tovuti
-    ili kuweka mipangilio ya usalama na sifa nyingine za tovuti.</translation>
 <translation id="4210602799576081649">Muda wa kutumia nambari hii ya kuthibitisha umeisha, omba utumiwe nambari mpya ya kuthibitisha</translation>
 <translation id="421066178035138955">Tumia data na vifaa vya uhalisia pepe</translation>
 <translation id="4213305257324635756">Filamu zilizohuishwa</translation>
@@ -1208,7 +1197,6 @@
     &lt;p&gt;Kama bado unaona hitilafu, wasiliana na mmiliki wa tovuti.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Jaribu kutumia zana ya Kuchunguza Mtandao<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Inaweza kuomba ruhusa ya kutumia na kusogeza kamera yako</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Endelea kwenye <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Halali</translation>
 <translation id="4250431568374086873">Muunganisho wako kwenye tovuti hii si salama kabisa</translation>
 <translation id="4250680216510889253">La</translation>
@@ -1412,7 +1400,6 @@
 <translation id="4796594887379589189">Kitambulisho cha akaunti ya kazini</translation>
 <translation id="4798078619018708837">Ili usasishe maelezo ya kadi yako, weka tarehe ya mwisho wa matumizi na CVC ya <ph name="CREDIT_CARD" />. Baada ya kuthibitisha, maelezo ya kadi kutoka Akaunti yako ya Google yatashirikiwa na tovuti hii.</translation>
 <translation id="4800132727771399293">Angalia tarehe yako ya kuisha muda na CVC na ujaribu tena</translation>
-<translation id="480334179571489655">Hitilafu ya Sera Asili</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Maagizo kutoka kwa msimamizi wa kifaa chako:</translation>
 <translation id="4812751092864334025">Teknolojia ya vifaa vya kuvaliwa</translation>
@@ -1807,7 +1794,6 @@
 <translation id="5901630391730855834">Manjano</translation>
 <translation id="5903264686717710770">Kichwa:</translation>
 <translation id="5904360430676679685">Familia na mahusiano</translation>
-<translation id="5905445707201418379">Imezuiwa kulingana na sera ya asili ya <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (imesawazishwa)</translation>
 <translation id="59174027418879706">Imewezeshwa</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ta.xtb b/components/strings/components_strings_ta.xtb
index 1a8108b..ee550d9f 100644
--- a/components/strings/components_strings_ta.xtb
+++ b/components/strings/components_strings_ta.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Monospace எழுத்துரு</translation>
 <translation id="1763864636252898013">இது <ph name="DOMAIN" /> தான் என்பதை இந்தச் சேவையகம் உறுதிப்படுத்தவில்லை; இதன் பாதுகாப்புச் சான்றிதழை உங்கள் கம்ப்யூட்டரின் ஆப்ரேட்டிங் சிஸ்டம் நம்பவில்லை. இது தவறான உள்ளமைவால் ஏற்பட்டிருக்கலாம் அல்லது தீங்கிழைப்பவர் உங்கள் இணைப்பில் குறுக்கிட்டிருக்கலாம்.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows நெட்வொர்க் டயக்னாஸ்டிக்ஸ் கருவியை இயக்கவும்<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">நீங்கள் செல்லும் சேவையகமான <ph name="ORIGIN" />, மேற்குறிப்பு ஒன்றை அமைத்துள்ளது
-    இதனால் அதன் அனைத்துக் கோரிக்கைகளுக்கும் அசல் கொள்கையைப் பயன்படுத்துவது அவசியமாகிறது. ஆனால்
-    மேற்குறிப்பு தவறாக உள்ளதால்
-    <ph name="SITE" /> தளத்திற்கான உங்கள் கோரிக்கையை நிறைவுசெய்ய முடியாத வகையில் உலாவி தடுக்கப்பட்டுள்ளது. இணையதள ஆப்ரேட்டர்கள் இணையதளத்திற்கான பாதுகாப்பையும் மற்ற பண்புகளையும் உள்ளமைக்க
-    அசல் கொள்கைகளைப் பயன்படுத்தலாம்.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium மறைநிலைப் பயன்முறை குறித்து மேலும் அறிக<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">உங்கள் தாவல்கள் இங்கே தோன்றும்</translation>
@@ -1107,8 +1102,6 @@
 <translation id="3987940399970879459">1 மெ.பை. அளவை விடக் குறைவாக உள்ளது</translation>
 <translation id="3990250421422698716">ஜாக் ஆஃப்செட்</translation>
 <translation id="3992684624889376114">இந்தப் பக்கம் - ஓர் அறிமுகம்</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> தளம், அதற்கான அனைத்துக் கோரிக்கைகளுக்கும் 
-    அசல் கொள்கையைப் பயன்படுத்த வேண்டுமெனக் கோரிக்கை விடுத்துள்ளது, ஆனால் தற்சமயம் அதைச் செய்ய முடியாது.</translation>
 <translation id="4006465311664329701">Google Payயைப் பயன்படுத்தும் பேமெண்ட் முறைகள், ஆஃபர்கள் மற்றும் முகவரிகள்</translation>
 <translation id="4009243425692662128">நீங்கள் அச்சிடும் பக்கங்களில் உள்ள உள்ளடக்கம் பகுப்பாய்விற்காக Google Cloud அல்லது மூன்றாம் தரப்பினருக்கு அனுப்பப்படும். எடுத்துக்காட்டாக, பாதுகாக்கப்பட வேண்டிய தனிப்பட்ட தரவு உள்ளதா எனக் கண்டறிவதற்காக அது ஸ்கேன் செய்யப்படலாம்.</translation>
 <translation id="4010758435855888356">சேமிப்பக அணுகலை வழங்கவா?</translation>
@@ -1173,11 +1166,6 @@
 <translation id="4202554117186904723">ரோல் 5</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ஃபயர்வால் மற்றும் வைரஸ் எதிர்ப்பு உள்ளமைவைச் சரிபார்த்தல்<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">பெரிய</translation>
-<translation id="4209166701302774460">நீங்கள் செல்லும் சேவையகமான <ph name="ORIGIN" />,
-    அதற்கான அனைத்துக் கோரிக்கைகளுக்கும் அசல் கொள்கையைப் பயன்படுத்த வேண்டுமெனக் கோரிக்கை விடுத்துள்ளது. ஆனால் இப்போது
-    அது எந்தவொரு கொள்கையையும் வழங்கவில்லை என்பதால் <ph name="SITE" /> தளத்திற்கான உங்கள் கோரிக்கையை
-    நிறைவுசெய்ய முடியாத வகையில் உலாவி தடுக்கப்பட்டுள்ளது. இணையதள ஆப்ரேட்டர்கள் இணையதளத்திற்கான பாதுகாப்பையும் மற்ற பண்புகளையும் உள்ளமைக்க
-    அசல் கொள்கைகளைப் பயன்படுத்தலாம்.</translation>
 <translation id="4210602799576081649">சரிபார்ப்புக் குறியீடு காலாவதியாகிவிட்டது, புதிய குறியீட்டைக் கோரவும்</translation>
 <translation id="421066178035138955">உங்கள் விர்ச்சுவல் ரியாலிட்டி சாதனங்களையும் தரவையும் பயன்படுத்த விரும்புகிறது</translation>
 <translation id="4213305257324635756">அனிமேஷன் திரைப்படங்கள்</translation>
@@ -1205,7 +1193,6 @@
     &lt;p&gt;அப்போதும் பிழை வந்தால், இணையதள உரிமையாளரைத் தொடர்புகொள்ளவும்.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />நெட்வொர்க் டயக்னாஸ்டிக்ஸ் கருவியை இயக்கவும்<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">எனது கேமராவைப் பயன்படுத்தவும் நகர்த்தவும் அனுமதி கேட்க வேண்டும்</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />இணைப்பிற்கு செல்க <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">செல்லுபடியானது</translation>
 <translation id="4250431568374086873">இந்தத் தளத்திற்கான உங்கள் இணைப்பு, முழுப் பாதுகாப்புடன் இல்லை</translation>
 <translation id="4250680216510889253">இல்லை</translation>
@@ -1409,7 +1396,6 @@
 <translation id="4796594887379589189">பணிக் கணக்கு ஐடி</translation>
 <translation id="4798078619018708837">கார்டு விவரங்களைப் புதுப்பிக்க, <ph name="CREDIT_CARD" /> இன் காலாவதித் தேதியையும் CVC எண்ணையும் உள்ளிடவும். நீங்கள் உறுதிப்படுத்திய பின்னர், உங்கள் Google கணக்கிலிருக்கும் கார்டு விவரங்கள் இந்தத் தளத்துடன் பகிரப்படும்.</translation>
 <translation id="4800132727771399293">காலாவதியாகும் நேரத்தையும், CVCஐயும் சரிபார்த்து, மீண்டும் முயற்சிக்கவும்</translation>
-<translation id="480334179571489655">அசல் கொள்கை பிழை</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">உங்கள் சாதன நிர்வாகியின் வழிகாட்டுதல்கள்:</translation>
 <translation id="4812751092864334025">அணிந்துகொள்ளக்கூடிய தொழில்நுட்பத் தயாரிப்பு</translation>
@@ -1804,7 +1790,6 @@
 <translation id="5901630391730855834">மஞ்சள்</translation>
 <translation id="5903264686717710770">தலைப்பு:</translation>
 <translation id="5904360430676679685">குடும்பம் &amp; உறவுகள்</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> இன் அசல் கொள்கையின்படி தடுக்கப்பட்டுள்ளது.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (ஒத்திசைக்கப்பட்டது)</translation>
 <translation id="59174027418879706">இயக்கப்பட்டது</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_te.xtb b/components/strings/components_strings_te.xtb
index fc45886..7563383 100644
--- a/components/strings/components_strings_te.xtb
+++ b/components/strings/components_strings_te.xtb
@@ -337,11 +337,6 @@
 <translation id="1757773103848038814">మోనోస్పేస్ ఫాంట్</translation>
 <translation id="1763864636252898013">ఈ సర్వర్ <ph name="DOMAIN" /> అని నిరూపించుకోలేకపోయింది; దీని భద్రతా ప్రమాణపత్రాన్ని మీ పరికర ఆపరేటింగ్ సిస్టమ్ విశ్వసించలేదు. ఇది తప్పుగా కాన్ఫిగర్ చేయడం వలన లేదా దాడిచేసే వ్యక్తి మీ కనెక్షన్‌కు అంతరాయం కలిగించడం వలన జరిగి ఉండవచ్చు.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows నెట్‌వర్క్ సమస్య విశ్లేషణలను అమలు చేయడం ప్రయత్నించండి<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">మీరు వెళ్లాలనుకుంటున్న సర్వర్, <ph name="ORIGIN" />, దానికి పంపే
-    అన్ని రిక్వెస్ట్‌లకు ఆరిజిన్ పాలసీని వర్తింపజేయాలని తెలిపే ఒక హెడర్‌ను సెట్ చేసింది. కానీ
-    హెడర్ తప్పుగా సెట్ చేయబడింది, దాని వలన <ph name="SITE" />కు మీరు పంపిన రిక్వెస్ట్‌ను
-    బ్రౌజర్ పూర్తి చేయలేకపోతోంది. భద్రతను, సైట్ ఇతర ప్రాపర్టీ‌లను
-    కాన్ఫిగర్ చేయడానికి సైట్ ఆపరేటర్‌లు ఆరిజిన్ పాలసీలను ఉపయోగించవచ్చు.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromiumలో అజ్ఞాత మోడ్ గురించి మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">మీ తెరవబడిన ట్యాబ్‌లు ఇక్కడ కనిపిస్తాయి</translation>
@@ -1113,8 +1108,6 @@
 <translation id="3987940399970879459">1 MB కంటే తక్కువ</translation>
 <translation id="3990250421422698716">జోగ్ ఆఫ్‌సెట్</translation>
 <translation id="3992684624889376114">ఈ పేజీ గురించి</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> సైట్, తనకు చేసే అన్ని రిక్వెస్ట్‌లకు ఆరిజిన్ పాలసీని
-    వర్తింపజేయమని అభ్యర్థించింది. కానీ, ప్రస్తుతం ఈ పాలసీని వర్తింపజేయడం సాధ్యపడదు.</translation>
 <translation id="4006465311664329701">Google Payను ఉపయోగిస్తున్న పేమెంట్ ఆప్షన్‌లు, ఆఫర్‌లు, అడ్రస్‌లు</translation>
 <translation id="4009243425692662128">మీరు ప్రింట్ చేసిన పేజీల కంటెంట్, విశ్లేషణ కోసం Google Cloud లేదా థర్డ్-పార్టీలకు పంపబడుతుంది. ఉదాహరణకు, ఇది సున్నితమైన వ్యక్తిగత సమాచారం కోసం స్కాన్ చేయబడవచ్చు.</translation>
 <translation id="4010758435855888356">స్టోరేజ్‌ను యాక్సెస్ చేయడానికి అనుమతించాలా?</translation>
@@ -1179,11 +1172,6 @@
 <translation id="4202554117186904723">ఫిఫ్త్ రోల్</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ఫైర్‌వాల్ మరియు యాంటీవైరస్ కాన్ఫిగరేషన్‌లను తనిఖీ చేయడం<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">పెద్దది</translation>
-<translation id="4209166701302774460">మీరు వెళ్లాలనుకుంటున్న సర్వర్ <ph name="ORIGIN" />, దానికి చేసే అన్ని రిక్వెస్ట్‌లకు
-    ఆరిజిన్ పాలసీ వర్తింపజేసేలా అభ్యర్థించింది. కానీ అది ఇప్పుడు
-    ఒక పాలసీని డెలివరీ చేయడంలో విఫలమైంది, దీని వలన <ph name="SITE" /> కోసం మీ రిక్వెస్ట్‌ను పూర్తి చేయకుండా
-    బ్రౌజర్‌ను నిరోధిస్తుంది. భద్రతను, సైట్ ఇతర ప్రాపర్టీ‌లను
-    కాన్ఫిగర్ చేయడానికి, సైట్ ఆపరేటర్‌లు ఆరిజిన్ పాలసీలను ఉపయోగించవచ్చు.</translation>
 <translation id="4210602799576081649">వెరిఫికేషన్ కోడ్ గడువు ముగిసింది, కొత్త కోడ్ కోసం రిక్వెస్ట్ చేయండి</translation>
 <translation id="421066178035138955">వర్చువల్ రియాలిటీ పరికరాలను, డేటాను వినియోగించడం</translation>
 <translation id="4213305257324635756">యానిమేటెడ్ సినిమాలు</translation>
@@ -1211,7 +1199,6 @@
     &lt;p&gt;ఇప్పటికీ మీకు ఎర్రర్ కనిపిస్తున్నట్లయితే, వెబ్‌సైట్ యజమానిని సంప్రదించండి.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />నెట్‌వర్క్ సమస్య విశ్లేషణలను అమలు చేయడం ప్రయత్నించండి<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">మీ కెమెరాను ఉపయోగించడానికి, అలాగే దానిని జరపడానికి సైట్ అనుమతి అడగవచ్చు</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" />కు వెళ్లండి<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">చెల్లుతుంది</translation>
 <translation id="4250431568374086873">ఈ సైట్‌కు మీ కనెక్షన్ పూర్తి స్థాయిలో సురక్షితంగా లేదు</translation>
 <translation id="4250680216510889253">లేదు</translation>
@@ -1415,7 +1402,6 @@
 <translation id="4796594887379589189">జాబ్ ఖాతా ID</translation>
 <translation id="4798078619018708837">మీ కార్డ్ వివరాలను అప్‌డేట్ చేయడానికి <ph name="CREDIT_CARD" /> కార్డ్ గడువు ముగింపు తేదీ, CVCని నమోదు చేయండి. మీరు నిర్ధారించిన తర్వాత, మీ Google ఖాతా నుండి కార్డ్ వివరాలు ఈ సైట్‌తో షేర్ చేయబడతాయి.</translation>
 <translation id="4800132727771399293">మీ గడువు ముగింపు తేదీ మరియు CVCని తనిఖీ చేసి, మళ్లీ ప్రయత్నించండి</translation>
-<translation id="480334179571489655">అసలు విధానం ఎర్రర్</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">మీ పరికర అడ్మినిస్ట్రేట‌ర్ నుండి సూచనలు:</translation>
 <translation id="4812751092864334025">టెక్నాలజీ కలిగిన ధరించే పరికరాలు</translation>
@@ -1810,7 +1796,6 @@
 <translation id="5901630391730855834">పసుపు</translation>
 <translation id="5903264686717710770">శీర్షిక:</translation>
 <translation id="5904360430676679685">కుటుంబం &amp; సంబంధాలు</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> యొక్క ఆరిజిన్ ఎర్రర్ విధానం ప్రకారం బ్లాక్ చేయబడింది.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (సమకాలీకరించబడింది)</translation>
 <translation id="59174027418879706">ప్రారంభించబడింది</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_th.xtb b/components/strings/components_strings_th.xtb
index 3fbca6c4..e85f782 100644
--- a/components/strings/components_strings_th.xtb
+++ b/components/strings/components_strings_th.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">แบบอักษรที่มีความกว้างคงที่</translation>
 <translation id="1763864636252898013">เซิร์ฟเวอร์นี้ไม่สามารถพิสูจน์ได้ว่าเป็น <ph name="DOMAIN" /> เพราะระบบปฏิบัติการของอุปกรณ์ของคุณไม่เชื่อถือใบรับรองความปลอดภัย โดยอาจเกิดจากการกำหนดค่าผิดหรือผู้บุกรุกที่ขัดขวางการเชื่อมต่อของคุณ</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />ลองเรียกใช้การวินิจฉัยเครือข่ายของ Windows<ph name="END_LINK" /></translation>
-<translation id="1772163372082567643">เซิร์ฟเวอร์ที่คุณกำลังจะเข้าถึง <ph name="ORIGIN" /> ได้ตั้งค่าส่วนหัวที่กำหนดให้บังคับใช้นโยบายดั้งเดิมกับคำขอทั้งหมดที่ส่งถึงเซิร์ฟเวอร์ แต่ส่วนหัวดังกล่าวมีรูปแบบที่ไม่ถูกต้อง ซึ่งทำให้เบราว์เซอร์ดำเนินการตามคำขอของคุณสำหรับ <ph name="SITE" /> ไม่ได้ ผู้ให้บริการเว็บไซต์อาจใช้นโยบายดั้งเดิมในการกำหนดค่าความปลอดภัยและพร็อพเพอร์ตี้อื่นๆ ของเว็บไซต์</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />ดูข้อมูลเพิ่มเติมเกี่ยวกับโหมดไม่ระบุตัวตนใน Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">แท็บที่คุณเปิดไว้จะปรากฏที่นี่</translation>
@@ -1106,7 +1105,6 @@
 <translation id="3987940399970879459">ไม่ถึง 1 MB</translation>
 <translation id="3990250421422698716">การชดเชยพื้นผิวที่ไม่สม่ำเสมอ</translation>
 <translation id="3992684624889376114">เกี่ยวกับหน้านี้</translation>
-<translation id="3996311196211510766">เว็บไซต์ <ph name="ORIGIN" /> ขอให้บังคับใช้นโยบายดั้งเดิมกับคำขอทั้งหมดที่ส่งถึงเว็บไซต์ แต่ขณะนี้ใช้นโยบายนี้ไม่ได้</translation>
 <translation id="4006465311664329701">วิธีการชำระเงิน ข้อเสนอ และที่อยู่จาก Google Pay</translation>
 <translation id="4009243425692662128">ระบบจะส่งเนื้อหาของหน้าที่คุณพิมพ์ไปยัง Google Cloud หรือบุคคลที่สามเพื่อการวิเคราะห์ เช่น สแกนหาข้อมูลที่ละเอียดอ่อน</translation>
 <translation id="4010758435855888356">อนุญาตให้เข้าถึงพื้นที่เก็บข้อมูลไหม</translation>
@@ -1171,7 +1169,6 @@
 <translation id="4202554117186904723">ม้วนกระดาษ 5</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />ตรวจสอบไฟร์วอลล์และการกำหนดค่าการป้องกันไวรัส<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">ขนาดใหญ่</translation>
-<translation id="4209166701302774460">เซิร์ฟเวอร์ที่คุณกำลังจะเข้าถึง <ph name="ORIGIN" /> ขอให้บังคับใช้นโยบายดั้งเดิมกับคำขอทั้งหมดที่ส่งถึงเซิร์ฟเวอร์ แต่ขณะนี้เซิร์ฟเวอร์แสดงนโยบายไม่ได้ ซึ่งทำให้เบราว์เซอร์ดำเนินการตามคำขอของคุณสำหรับ <ph name="SITE" /> ไม่ได้ ผู้ให้บริการเว็บไซต์อาจใช้นโยบายดั้งเดิมในการกำหนดค่าความปลอดภัยและพร็อพเพอร์ตี้อื่นๆ ของเว็บไซต์</translation>
 <translation id="4210602799576081649">รหัสยืนยันหมดอายุแล้ว โปรดขอรหัสใหม่</translation>
 <translation id="421066178035138955">ใช้อุปกรณ์และข้อมูล Virtual Reality</translation>
 <translation id="4213305257324635756">ภาพยนตร์แอนิเมชัน</translation>
@@ -1199,7 +1196,6 @@
     &lt;p&gt;หากคุณยังคงเห็นข้อผิดพลาด โปรดติดต่อเจ้าของเว็บไซต์&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />ลองเรียกใช้การวินิจฉัยเครือข่าย<ph name="END_LINK" /></translation>
 <translation id="4230204356098880324">สามารถขอใช้และเลื่อนกล้องของคุณได้</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />ดำเนินการต่อที่ <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">ถูกต้อง</translation>
 <translation id="4250431568374086873">การเชื่อมต่อกับเว็บไซต์นี้ไม่ปลอดภัยโดยสมบูรณ์</translation>
 <translation id="4250680216510889253">ไม่</translation>
@@ -1403,7 +1399,6 @@
 <translation id="4796594887379589189">รหัสบัญชีงาน</translation>
 <translation id="4798078619018708837">ป้อนวันที่หมดอายุและ CVC ของ <ph name="CREDIT_CARD" /> เพื่ออัปเดตรายละเอียดของบัตร เมื่อยืนยันแล้ว ระบบจะแชร์รายละเอียดของบัตรจากบัญชี Google กับเว็บไซต์นี้</translation>
 <translation id="4800132727771399293">ตรวจสอบวันหมดอายุและ CVC แล้วลองอีกครั้ง</translation>
-<translation id="480334179571489655">ข้อผิดพลาดเกี่ยวกับนโยบายต้นทาง</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">วิธีการจากผู้ดูแลระบบอุปกรณ์ของคุณ</translation>
 <translation id="4812751092864334025">เทคโนโลยีที่สวมใส่ได้</translation>
@@ -1798,7 +1793,6 @@
 <translation id="5901630391730855834">สีเหลือง</translation>
 <translation id="5903264686717710770">ชื่อ:</translation>
 <translation id="5904360430676679685">ครอบครัวและความสัมพันธ์</translation>
-<translation id="5905445707201418379">ถูกบล็อกตามนโยบายดั้งเดิมของ <ph name="ORIGIN" /></translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (ซิงค์แล้ว)</translation>
 <translation id="59174027418879706">เปิดใช้งาน</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_tr.xtb b/components/strings/components_strings_tr.xtb
index cda4a543..962baad 100644
--- a/components/strings/components_strings_tr.xtb
+++ b/components/strings/components_strings_tr.xtb
@@ -335,8 +335,6 @@
 <translation id="1757773103848038814">Sabit Aralıklı Yazı Tipi</translation>
 <translation id="1763864636252898013">Bu sunucu <ph name="DOMAIN" /> olduğunu kanıtlayamadı. cihazınızın işletim sistemi, sunucunun güvenlik sertifikasına güvenmiyor. Bu durum, bir yanlış yapılandırmadan veya bağlantıya müdahale eden bir saldırgandan kaynaklanıyor olabilir.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows Ağ Teşhislerini çalıştırmayı deneyin<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Ziyaret etmek üzere olduğunuz sunucu (<ph name="ORIGIN" />) kendisine gelen tüm isteklere bir kaynak politikası uygulanmasını gerektiren bir üst bilgi ayarladı. Ancak üst bilgi yanlış biçimlendirildiği için tarayıcı, <ph name="SITE" /> sitesiyle ilgili isteğinizi yerine getiremiyor. Kaynak politikaları
-    site operatörleri tarafından sitenin güvenliğini ve diğer mülklerini yapılandırmak için kullanılabilir.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromium'daki Gizli mod hakkında daha fazla bilgi<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Açık sekmeleriniz burada görünür</translation>
@@ -1108,7 +1106,6 @@
 <translation id="3987940399970879459">1 MB'tan az</translation>
 <translation id="3990250421422698716">Jog ofset</translation>
 <translation id="3992684624889376114">Bu sayfa hakkında</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> sitesi, bir kaynak politikasının kendisine gelen tüm talepler için geçerli olmasını istedi, ancak bu politika şu anda uygulanamıyor.</translation>
 <translation id="4006465311664329701">Google Pay'i Kullanan Ödeme Yöntemleri, Teklifler ve Adresler</translation>
 <translation id="4009243425692662128">Yazdırdığınız sayfaların içeriği analiz edilmek üzere Google Cloud'a veya üçüncü taraflara gönderilir. Dosyalarınızın hassas veriler içerip içermediği kontrol edilir.</translation>
 <translation id="4010758435855888356">Depolama alanına erişime izin verilsin mi?</translation>
@@ -1173,8 +1170,6 @@
 <translation id="4202554117186904723">Beşinci Rulo</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Güvenlik duvarı ve virüsten korunma yapılandırmalarını kontrol etme<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Büyük</translation>
-<translation id="4209166701302774460">Ziyaret etmek üzere olduğunuz sunucu (<ph name="ORIGIN" />) kendisine gelen tüm isteklere bir kaynak politikası uygulanmasını talep etti. Ancak şimdi politika sunamadığı için tarayıcı, <ph name="SITE" /> sitesiyle ilgili isteğinizi yerine getiremiyor. Kaynak politikaları
-    site operatörleri tarafından sitenin güvenliğini ve diğer özelliklerini yapılandırmak için kullanılabilir.</translation>
 <translation id="4210602799576081649">Doğrulama kodunun süresi doldu. Yeni bir kod isteyin</translation>
 <translation id="421066178035138955">Sanal gerçeklik cihazlarını ve verilerini kullanmak</translation>
 <translation id="4213305257324635756">Animasyon filmleri</translation>
@@ -1202,7 +1197,6 @@
     &lt;p&gt;Hatayı görmeye devam ederseniz web sitesinin sahibiyle iletişime geçin.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Ağ Teşhislerini çalıştırmayı deneyin<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Kameranızı kullanmak ve hareket ettirmek isteyebilir</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> sitesine git<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Geçerli</translation>
 <translation id="4250431568374086873">Bu siteye bağlantınız tam olarak güvenli değil</translation>
 <translation id="4250680216510889253">Hayır</translation>
@@ -1406,7 +1400,6 @@
 <translation id="4796594887379589189">İş hesabı kimliği</translation>
 <translation id="4798078619018708837">Kart bilgilerinizi güncellemek için <ph name="CREDIT_CARD" /> numaralı karta ait son kullanma tarihini ve CVC kodunu girin. Onayladığınızda Google Hesabınızdaki kart bilgileriniz bu siteyle paylaşılır.</translation>
 <translation id="4800132727771399293">Son kullanma tarihinizi ve CVC'nizi kontrol edip tekrar deneyin</translation>
-<translation id="480334179571489655">Kaynak Politikası Hatası</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Cihaz yöneticinizden talimatlar:</translation>
 <translation id="4812751092864334025">Giyilebilir teknoloji ürünleri</translation>
@@ -1801,7 +1794,6 @@
 <translation id="5901630391730855834">Sarı</translation>
 <translation id="5903264686717710770">Başlık:</translation>
 <translation id="5904360430676679685">Aile ve ilişkiler</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> sitesinin kaynak politikası uyarınca engellendi.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (senkronize edildi)</translation>
 <translation id="59174027418879706">Etkin</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_uk.xtb b/components/strings/components_strings_uk.xtb
index c4bf25e..6008552e 100644
--- a/components/strings/components_strings_uk.xtb
+++ b/components/strings/components_strings_uk.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Моноширинний шрифт</translation>
 <translation id="1763864636252898013">Цей сервер не зміг довести, що він – домен <ph name="DOMAIN" />. Операційна система вашого пристрою не вважає його сертифікат безпеки надійним. Імовірні причини: неправильна конфігурація або хтось намагається перехопити ваше з’єднання.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Проведіть діагностику мережі Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Для сервера, на який ви переходите (<ph name="ORIGIN" />), вибрано заголовок,
-    який вимагає застосовувати правило джерела до всіх запитів, які йому надсилаються. Однак
-    структура заголовка неправильна, тому веб-переглядач не може виконати
-    ваш запит для сайту <ph name="SITE" />. Оператори можуть використовувати
-    правило джерела, щоб налаштувати захист та інші ресурси сайту.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Докладніше про анонімний режим у Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Тут відображатимуться ваші відкриті вкладки</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Менше 1 МБ</translation>
 <translation id="3990250421422698716">Поступове зміщення</translation>
 <translation id="3992684624889376114">Про цю сторінку</translation>
-<translation id="3996311196211510766">Сайт <ph name="ORIGIN" /> просить, щоб правило джерела
-    застосовувалося до всіх його запитів, однак наразі це неможливо.</translation>
 <translation id="4006465311664329701">Способи оплати, пропозиції й адреси з Google Pay</translation>
 <translation id="4009243425692662128">Контент сторінок, які ви друкуєте, надсилається на аналіз на платформу Google Cloud або стороннім сервісам. Наприклад, його можуть сканувати на наявність конфіденційних даних.</translation>
 <translation id="4010758435855888356">Дозволити доступ до пам’яті?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">П’ятий рулон</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />перевірити конфігурацію брандмауера й антивірусної програми<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Великий</translation>
-<translation id="4209166701302774460">Сервер, на який ви переходите (<ph name="ORIGIN" />), просить
-    застосовувати правило джерела до всіх запитів, які йому надсилаються. Однак зараз він
-    не надав правило, що перешкоджає веб-переглядачу виконати ваш запит
-    для сайту <ph name="SITE" />. Оператори можуть використовувати
-    правило джерела, щоб налаштувати захист та інші ресурси сайту.</translation>
 <translation id="4210602799576081649">Термін дії коду підтвердження минув, надішліть запит на новий</translation>
 <translation id="421066178035138955">Використовувати дані й пристрої віртуальної реальності</translation>
 <translation id="4213305257324635756">Анімаційні фільми</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Якщо повідомлення про помилку не зникає, зв’яжіться з власником веб-сайту.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Проведіть діагностику мережі<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Може просити дозвіл використовувати й переміщувати камеру</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Перейти на сайт <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Дійсний</translation>
 <translation id="4250431568374086873">Ваше з’єднання з цим сайтом не повністю захищене</translation>
 <translation id="4250680216510889253">Ні</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Ідентифікатор робочого облікового запису</translation>
 <translation id="4798078619018708837">Введіть дату закінчення терміну дії та код CVC картки <ph name="CREDIT_CARD" />, щоб оновити її дані. Щойно ви підтвердите дані картки в обліковому записі Google, цей сайт отримає доступ до них.</translation>
 <translation id="4800132727771399293">Перевірте дату закінчення терміну дії та код CVC та повторіть спробу</translation>
-<translation id="480334179571489655">Помилка правила джерела</translation>
 <translation id="4803924862070940586"><ph name="FORMATTED_TOTAL_AMOUNT" /> <ph name="CURRENCY_CODE" /></translation>
 <translation id="4809079943450490359">Вказівки адміністратора вашого пристрою:</translation>
 <translation id="4812751092864334025">Гаджети</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Жовтий</translation>
 <translation id="5903264686717710770">Заголовок:</translation>
 <translation id="5904360430676679685">Сім’я та стосунки</translation>
-<translation id="5905445707201418379">Заблоковано відповідно до правила джерела <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (синхронізовано)</translation>
 <translation id="59174027418879706">Увімкнено</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_ur.xtb b/components/strings/components_strings_ur.xtb
index 9dcaf1c..de82530 100644
--- a/components/strings/components_strings_ur.xtb
+++ b/components/strings/components_strings_ur.xtb
@@ -336,11 +336,6 @@
 <translation id="1757773103848038814">مونو اسپیس فونٹ</translation>
 <translation id="1763864636252898013">یہ سرور یہ ثابت نہیں کر سکا کہ یہ <ph name="DOMAIN" /> ہے؛ اس کا سیکیورٹی سرٹیفیکیٹ آپ کے آلہ کے آپریٹنگ سسٹم کے ذریعے بھروسہ مند نہیں ہے۔ یہ غلط کنفیگریشن یا آپ کے کنکشن میں مانع بن رہے کسی حملہ آور کی وجہ سے ہو سکتا ہے۔</translation>
 <translation id="1768211456781949159">‏<ph name="BEGIN_LINK" />Windows نیٹ ورک کی تشخیصات چلانے کی کوشش کریں<ph name="END_LINK" />۔</translation>
-<translation id="1772163372082567643">آپ جس سرور پر جا رہے ہیں، <ph name="ORIGIN" />، نے ہیڈر سیٹ کیا ہے
-    جس کا تقاضہ ہے کہ اس سے کی جانے والی تمام درخواستوں پر ایک ماخذ پالیسی لاگو کیا جائے۔ لیکن
-    ہیڈر ناقص ہے، جو براؤزر کو <ph name="SITE" /> کے ليے کی گئی
-    آپ کی درخواست کو پورا کرنے سے روکتا ہے۔ کسی سائٹ کی خاطر سیکیورٹی اور دیگر پراپرٹیز کو ترتیب دینے کے لیے
-    سائٹ آپریٹرز کے ذریعے ماخذ پالیسیوں کا استعمال کیا جا سکتا ہے۔</translation>
 <translation id="1774592222195216949">‏<ph name="BEGIN_LINK" />Chromium میں پوشیدگی وضع کے بارے میں مزید جانیں<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">آپ کے کھلے ٹیبز یہاں ظاہر ہوتے ہیں</translation>
@@ -1113,8 +1108,6 @@
 <translation id="3987940399970879459">‏‎1 MB‎ سے کم</translation>
 <translation id="3990250421422698716">جاگ آفسیٹ</translation>
 <translation id="3992684624889376114">اس صفحہ کے بارے میں</translation>
-<translation id="3996311196211510766">اس سائٹ <ph name="ORIGIN" /> نے درخواست کی ہے کہ ایک ماخذ پالیسی کا اطلاق
-    اس سے کی جانے والی سبھی درخواستوں پر کیا جائے، لیکن فی الحال اس پالیسی کو لاگو نہیں کیا جا سکتا۔</translation>
 <translation id="4006465311664329701">‏Google Pay استعمال کرنے والے ادائیگی کے طریقے، پیشکشیں اور پتے</translation>
 <translation id="4009243425692662128">‏آپ کے پرنٹ کردہ صفحات کا مواد تجزیہ کے لیے Google کلاؤڈ یا فریقین ثالث کو بھیجا جاتا ہے۔ مثال کے طور پر، اسے حساس ڈیٹا کیلئے اسکین کیا جا سکتا ہے۔</translation>
 <translation id="4010758435855888356">اسٹوریج تک رسائی کی اجازت دیں؟</translation>
@@ -1179,11 +1172,6 @@
 <translation id="4202554117186904723">پانچواں رول</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />فائروال اور اینٹی وائرس کنفیگریشنز کو چیک کیا جا رہا ہے<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">بڑا</translation>
-<translation id="4209166701302774460">آپ جس سرور پر جا رہے ہیں، <ph name="ORIGIN" />، اس نے درخواست کی ہے کہ
-    ایک ماخذ پالیسی اس سے کی جانے والی تمام درخواستوں پر لاگو کی جائے۔ لیکن اب یہ
-    ایک ایسی پالیسی ڈیلیور کرنے میں ناکام ہو گئی ہے جو براؤزر کو
-    <ph name="SITE" /> کیلئے کی گئی آپ کی درخواست کو پورا کرنے سے روکتی ہے۔ کسی سائٹ کی خاطر سیکیورٹی اور دیگر پراپرٹیز کو ترتیب دینے کے لیے
-    سائٹ آپریٹرز کے ذریعے ماخذ پالیسیوں کا استعمال کیا جا سکتا ہے۔</translation>
 <translation id="4210602799576081649">توثیقی کوڈ کی میعاد ختم ہوگئی، ایک نئے کوڈ کی درخواست کریں</translation>
 <translation id="421066178035138955">ورچوئل رئیلٹی آلات اور ڈیٹا کا استعمال کریں</translation>
 <translation id="4213305257324635756">انیمیٹڈ موویز</translation>
@@ -1211,7 +1199,6 @@
     &lt;p&gt;اگر آپ کو اب بھی خرابی دکھائی دیتی ہے، تو ویب سائٹ کے مالک سے رابطہ کریں۔&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />نیٹ ورک کی تشخیصات چلانے کی کوشش کریں<ph name="END_LINK" />۔</translation>
 <translation id="4230204356098880324">سائٹ آپ کے کیمرا کو استعمال کرنے اور منتقل کرنے کیلئے پوچھ سکتی ہے</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> کی طرف بڑھیں<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">درست</translation>
 <translation id="4250431568374086873">اس سائٹ سے آپ کا کنکشن پوری طرح سے محفوظ نہیں ہے</translation>
 <translation id="4250680216510889253">نہیں</translation>
@@ -1415,7 +1402,6 @@
 <translation id="4796594887379589189">‏جاب اکاؤنٹ ID</translation>
 <translation id="4798078619018708837">‏اپنے کارڈ کی تفصیلات کو اپ ڈیٹ کرنے کے لیے <ph name="CREDIT_CARD" /> کی تاریخ اختتام اور CVC درج کریں۔ آپ کے توثیق کرنے کے بعد، آپ کے Google اکاؤنٹ سے کارڈ کی تفصیلات کا اس سائٹ کے ساتھ اشتراک کر دیا جائے گا۔</translation>
 <translation id="4800132727771399293">‏اپنی اختتامی تاریخ اور CVC چیک کریں اور دوبارہ کوشش کریں</translation>
-<translation id="480334179571489655">اصل پالیسی کی خرابی</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">آپ کے آلہ کے منتظم کی طرف سے ہدایات:</translation>
 <translation id="4812751092864334025">ویئرایبل ٹیکنالوجی</translation>
@@ -1810,7 +1796,6 @@
 <translation id="5901630391730855834">پیلا</translation>
 <translation id="5903264686717710770">عنوان:</translation>
 <translation id="5904360430676679685">خاندان اور تعلقات</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> کی اصل پالیسی کے مطابق مسدود کردہ۔</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (مطابقت پذیری کردہ)</translation>
 <translation id="59174027418879706">فعال</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_uz.xtb b/components/strings/components_strings_uz.xtb
index 549d33a..6b6e3ea 100644
--- a/components/strings/components_strings_uz.xtb
+++ b/components/strings/components_strings_uz.xtb
@@ -334,11 +334,6 @@
 <translation id="1757773103848038814">Monospace shrifti</translation>
 <translation id="1763864636252898013">Bu <ph name="DOMAIN" /> serveri ekanligini tasdiqlab bo‘lmadi. Uning havfsizlik sertifikati qurilmangizdagi operatsion tizimga ishonchli tuyulmayapti. Balki, server noto‘g‘ri sozlangan yoki kimdir ma’lumotlaringizni o‘g‘rilashga urinayotgan bo‘lishi mumkin.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Windows tarmoq diagnostikasi bilan tekshirib ko‘ring<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Siz ochmoqchi boʻlgan <ph name="ORIGIN" /> serverida
-    barcha soʻrovlar manba siyosati tekshiruvidan oʻtishini talab qiluvchi sarlavha bilan sozlangan. Lekin
-    sarlavha xato formatdaligi sababli brauzer <ph name="SITE" /> saytidagi soʻrovingizni
-    bajara olmaydi. Manba siyosatlari sayt operatorlari
-    tomonidan xavfsizlik kabi sayt parametrlarini sozlashda ishlatiladi.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Chromiumdagi Inkognito rejimi haqida batafsil<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Ochiq varaqlar shu yerda ko‘rsatiladi</translation>
@@ -1106,8 +1101,6 @@
 <translation id="3987940399970879459">1 MBdan kam</translation>
 <translation id="3990250421422698716">Qogʻozlarni ajratib toʻplash</translation>
 <translation id="3992684624889376114">Bu sahifa haqida</translation>
-<translation id="3996311196211510766"><ph name="ORIGIN" /> sayti manba siyosati tekshiruvini talab qildi
-    lekin bu tekshiruv barcha soʻrovlar uchun ishlatilganda bu siyosat uchun qoʻllanilmaydi.</translation>
 <translation id="4006465311664329701">Google Pay xizmatidagi bank kartalari, takliflar va manzillar</translation>
 <translation id="4009243425692662128">Chop etiladigan sahifalar kontenti tahlil qilinishi uchun Google Cloud yoki tashqi xizmatlarga yuboriladi. Masalan, tarkibida maxfiy axborot borligini aniqlash uchun.</translation>
 <translation id="4010758435855888356">Xotiraga ruxsat berilsinmi?</translation>
@@ -1172,11 +1165,6 @@
 <translation id="4202554117186904723">Beshinchi oʻram</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Himoya devori va antivirus sozlamalarini tekshirish<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Katta</translation>
-<translation id="4209166701302774460">Siz ochmoqchi boʻlgan <ph name="ORIGIN" /> serveri
-    barcha soʻrovlar manba siyosati tekshiruvidan oʻtishini talab qilgan. Lekin bu safar brauzer
-    <ph name="SITE" /> saytini ochish
-    uchun siyosat taqdim qilmadi. Manba siyosatlari sayt operatorlari
-    tomonidan xavfsizlik kabi sayt parametrlarini sozlashda ishlatiladi.</translation>
 <translation id="4210602799576081649">Tasdiqlash kodi muddati tugadi, yangi kod talab qiling</translation>
 <translation id="421066178035138955">Virtual reallik qurilmalari va maʼlumotlaridan foydalanish</translation>
 <translation id="4213305257324635756">Multfilmlar</translation>
@@ -1204,7 +1192,6 @@
     &lt;p&gt;Xato qaytarilaversa, sayt egasi bilan bog‘laning.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Tarmoq diagnostikasi bilan tekshirib ko‘ring<ph name="END_LINK" /></translation>
 <translation id="4230204356098880324">Kameradan foydalanish yoki boshqarish uchun ruxsat soʻrashi mumkin</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" /><ph name="SITE" /> saytini ochish<ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Haqiqiy</translation>
 <translation id="4250431568374086873">Bu sayt bilan o‘rnatilgan aloqa himoyalanmagan.</translation>
 <translation id="4250680216510889253">Yo‘q</translation>
@@ -1408,7 +1395,6 @@
 <translation id="4796594887379589189">Vazifalar hisobi identifikatori</translation>
 <translation id="4798078619018708837"><ph name="CREDIT_CARD" /> kartasining amal qilish muddati va CVC kodini kiritib, bank kartangiz maʼlumotlarini yangilang. Tasdiqlangandan soʻng, Google hisobingizdagi bank karta ma’lumotlari bu saytda saqlanib qoladi.</translation>
 <translation id="4800132727771399293">Kartangiz orqasidagi CVC-kod muddatini tekshiring va qaytadan urinib ko‘ring.</translation>
-<translation id="480334179571489655">Origin Policy xatosi</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Administrator korsatmalari:</translation>
 <translation id="4812751092864334025">Taqiladigan texnologiyalar</translation>
@@ -1803,7 +1789,6 @@
 <translation id="5901630391730855834">Sariq</translation>
 <translation id="5903264686717710770">Nomi:</translation>
 <translation id="5904360430676679685">Oila va munosabatlar</translation>
-<translation id="5905445707201418379"><ph name="ORIGIN" /> manba siyosati asosida bloklandi.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (sinxronlandi)</translation>
 <translation id="59174027418879706">Yoqilgan</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_vi.xtb b/components/strings/components_strings_vi.xtb
index 1e0762c1..afc5053 100644
--- a/components/strings/components_strings_vi.xtb
+++ b/components/strings/components_strings_vi.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Phông chữ giãn cách đơn</translation>
 <translation id="1763864636252898013">Máy chủ này không chứng minh được rằng đó là <ph name="DOMAIN" />; chứng chỉ bảo mật của máy chủ này không được hệ điều hành thiết bị của bạn tin cậy. Điều này có thể do định cấu hình sai hoặc có kẻ tấn công chặn kết nối của bạn.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Thử chạy Chẩn đoán mạng của Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Máy chủ bạn định truy cập vào, <ph name="ORIGIN" />, đã đặt tiêu đề
-    yêu cầu phải áp dụng một chính sách nguồn gốc cho tất cả yêu cầu gửi tới máy chủ đó. Tuy nhiên,
-    tiêu đề đó không đúng định dạng. Điều này khiến trình duyệt không hoàn thành được
-    yêu cầu của bạn là truy cập vào <ph name="SITE" />. Nhà điều hành trang web có thể
-    dựa vào chính sách nguồn gốc để định cấu hình bảo mật và các thuộc tính khác cho trang web.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Tìm hiểu thêm về Chế độ ẩn danh trên Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">Thẻ đang mở của bạn xuất hiện ở đây</translation>
@@ -1111,8 +1106,6 @@
 <translation id="3987940399970879459">Dưới 1 MB</translation>
 <translation id="3990250421422698716">Bù dịch chuyển</translation>
 <translation id="3992684624889376114">Giới thiệu về trang này</translation>
-<translation id="3996311196211510766">Trang web <ph name="ORIGIN" /> đã yêu cầu phải áp dụng một chính sách nguồn gốc
-    cho tất cả yêu cầu gửi tới trang web đó. Tuy nhiên, chính sách này hiện không áp dụng được.</translation>
 <translation id="4006465311664329701">Phương thức thanh toán, ưu đãi và địa chỉ sử dụng Google Pay</translation>
 <translation id="4009243425692662128">Nội dung của các trang bạn in được gửi tới Google Cloud hoặc các bên thứ ba để phân tích. Ví dụ: nội dung đó có thể được quét tìm dữ liệu nhạy cảm.</translation>
 <translation id="4010758435855888356">Cho phép quyền truy cập bộ nhớ?</translation>
@@ -1177,11 +1170,6 @@
 <translation id="4202554117186904723">Cuộn thứ năm</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Kiểm tra tường lửa và cấu hình diệt vi-rút<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Lớn</translation>
-<translation id="4209166701302774460">Máy chủ bạn định truy cập vào, <ph name="ORIGIN" />, đã yêu cầu phải
-    áp dụng một chính sách nguồn gốc cho tất cả yêu cầu gửi tới máy chủ đó. Tuy nhiên, máy chủ đó hiện không
-    cung cấp được chính sách. Điều này khiến trình duyệt không hoàn thành được
-    yêu cầu của bạn là truy cập vào <ph name="SITE" />. Nhà điều hành trang web có thể dựa vào chính sách nguồn gốc
-    để định cấu hình bảo mật và các thuộc tính khác cho trang web.</translation>
 <translation id="4210602799576081649">Mã xác minh đã hết hạn, hãy yêu cầu mã mới</translation>
 <translation id="421066178035138955">Sử dụng dữ liệu và thiết bị thực tế ảo</translation>
 <translation id="4213305257324635756">Phim hoạt hình</translation>
@@ -1209,7 +1197,6 @@
     &lt;p&gt;Nếu bạn vẫn gặp lỗi này, hãy liên hệ với chủ sở hữu trang web.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Thử chạy Chẩn đoán mạng<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Trang web có thể yêu cầu dùng và di chuyển máy ảnh của bạn</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Tiếp tục truy cập vào <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Hợp lệ</translation>
 <translation id="4250431568374086873">Kết nối của bạn tới trang web này không đủ an toàn</translation>
 <translation id="4250680216510889253">Không</translation>
@@ -1413,7 +1400,6 @@
 <translation id="4796594887379589189">Mã tài khoản lệnh</translation>
 <translation id="4798078619018708837">Hãy nhập ngày hết hạn và số CVC của <ph name="CREDIT_CARD" /> để cập nhật thông tin chi tiết thẻ của bạn. Sau khi bạn xác nhận, thông tin chi tiết thẻ trong Tài khoản Google của bạn sẽ được chia sẻ với trang web này.</translation>
 <translation id="4800132727771399293">Kiểm tra ngày hết hạn và CVC của bạn rồi thử lại</translation>
-<translation id="480334179571489655">Lỗi chính sách nguồn gốc</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Hướng dẫn từ quản trị viên thiết bị:</translation>
 <translation id="4812751092864334025">Sản phẩm công nghệ có thể bị đeo</translation>
@@ -1808,7 +1794,6 @@
 <translation id="5901630391730855834">Vàng</translation>
 <translation id="5903264686717710770">Tiêu đề:</translation>
 <translation id="5904360430676679685">Gia đình và các mối quan hệ</translation>
-<translation id="5905445707201418379">Bị chặn theo chính sách nguồn gốc của <ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (được đồng bộ hóa)</translation>
 <translation id="59174027418879706">Được kích hoạt</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_zh-CN.xtb b/components/strings/components_strings_zh-CN.xtb
index 6d17849..dbb4582 100644
--- a/components/strings/components_strings_zh-CN.xtb
+++ b/components/strings/components_strings_zh-CN.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">等宽字体</translation>
 <translation id="1763864636252898013">此服务器无法证明它是<ph name="DOMAIN" />;您设备的操作系统不信任其安全证书。出现此问题的原因可能是配置有误或您的连接被拦截了。</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />尝试运行 Windows 网络诊断<ph name="END_LINK" />。</translation>
-<translation id="1772163372082567643">您要访问的服务器 <ph name="ORIGIN" /> 已设定标头,其中要求收到的所有请求都应用一项来源政策。但该标头的格式不正确,导致浏览器无法实现您对 <ph name="SITE" /> 的访问请求。网站运营商可以使用来源政策为网站配置安全属性及其他属性。</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />详细了解 Chromium 中的无痕模式<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">您打开的标签页会显示在此处</translation>
@@ -1103,7 +1102,6 @@
 <translation id="3987940399970879459">小于 1 MB</translation>
 <translation id="3990250421422698716">撞页偏移</translation>
 <translation id="3992684624889376114">关于此页面</translation>
-<translation id="3996311196211510766">网站 <ph name="ORIGIN" /> 已要求收到的所有请求都应用一项来源政策,但此政策目前无法应用。</translation>
 <translation id="4006465311664329701">Google Pay 中存储的付款方式、优惠和地址信息</translation>
 <translation id="4009243425692662128">您打印的页面内容会被发送到 Google Cloud 或第三方进行分析。例如,这类内容可能会被扫描,以确定其中是否包含敏感数据。</translation>
 <translation id="4010758435855888356">允许使用存储空间?</translation>
@@ -1168,7 +1166,6 @@
 <translation id="4202554117186904723">第 5 卷</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />检查防火墙和防病毒配置<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">大</translation>
-<translation id="4209166701302774460">您要访问的服务器 <ph name="ORIGIN" /> 已要求收到的所有请求都应用一项来源政策。但该服务器目前并未提供任何政策,导致浏览器无法实现您对 <ph name="SITE" /> 的访问请求。网站运营商可以使用来源政策为网站配置安全属性及其他属性。</translation>
 <translation id="4210602799576081649">验证码已失效,请申请新的验证码</translation>
 <translation id="421066178035138955">使用虚拟实境设备和数据</translation>
 <translation id="4213305257324635756">动画片</translation>
@@ -1196,7 +1193,6 @@
     &lt;p&gt;如果您仍会看到这条错误消息,请与网站所有者联系。&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />尝试运行网络诊断<ph name="END_LINK" />。</translation>
 <translation id="4230204356098880324">可以询问能否使用和移动您的摄像头</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />继续前往 <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">有效</translation>
 <translation id="4250431568374086873">您与此网站之间建立的连接并非完全安全</translation>
 <translation id="4250680216510889253">否</translation>
@@ -1400,7 +1396,6 @@
 <translation id="4796594887379589189">工作帐号 ID</translation>
 <translation id="4798078619018708837">请输入 <ph name="CREDIT_CARD" /> 的失效日期和银行卡验证码 (CVC),以更新您的信用卡详细信息。待您确认后,系统便会将您 Google 帐号中的信用卡详细信息共享给该网站。</translation>
 <translation id="4800132727771399293">请检查您的到期日期和银行卡验证码 (CVC),然后重试</translation>
-<translation id="480334179571489655">来源政策错误</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">您的设备管理员温馨提示:</translation>
 <translation id="4812751092864334025">穿戴式技术</translation>
@@ -1795,7 +1790,6 @@
 <translation id="5901630391730855834">黄色</translation>
 <translation id="5903264686717710770">标题:</translation>
 <translation id="5904360430676679685">家庭与人际关系</translation>
-<translation id="5905445707201418379">已根据 <ph name="ORIGIN" /> 的来源政策而屏蔽。</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" />(已同步)</translation>
 <translation id="59174027418879706">已启用</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_zh-HK.xtb b/components/strings/components_strings_zh-HK.xtb
index 9a66ac8..a87d1ec 100644
--- a/components/strings/components_strings_zh-HK.xtb
+++ b/components/strings/components_strings_zh-HK.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">等寬字型</translation>
 <translation id="1763864636252898013">伺服器無法證明其屬於 <ph name="DOMAIN" /> 網域;其安全性憑證未取得您裝置的操作系統的信任。這可能是因為設定錯誤,或有攻擊者攔截您的連線。</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />嘗試執行 Windows 網絡診斷<ph name="END_LINK" />。</translation>
-<translation id="1772163372082567643">您的目標伺服器「<ph name="ORIGIN" />」已設定標題要求為收到的所有要求套用來源政策。不過,由於該標題格式錯誤,因此瀏覽器無法完成您向 <ph name="SITE" /> 提出的要求。網站網絡供應商可使用來源政策設定網站的安全性及其他屬性。</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />進一步瞭解 Chromium 無痕模式<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">您最近開啟的分頁會在這裡顯示</translation>
@@ -1106,7 +1105,6 @@
 <translation id="3987940399970879459">小於 1 MB</translation>
 <translation id="3990250421422698716">撞頁偏移</translation>
 <translation id="3992684624889376114">關於本頁</translation>
-<translation id="3996311196211510766">網站 <ph name="ORIGIN" /> 指定所有收到的要求都必須套用來源政策,但目前無法套用此政策。</translation>
 <translation id="4006465311664329701">使用 Google Pay 儲存的付款方法、優惠和地址</translation>
 <translation id="4009243425692662128">您列印的頁面內容會傳送至 Google Cloud 或第三方進行分析。例如,Google Cloud 或第三方可能會掃瞄文字,檢查是否含有敏感資料。</translation>
 <translation id="4010758435855888356">要授予儲存空間存取權嗎?</translation>
@@ -1171,7 +1169,6 @@
 <translation id="4202554117186904723">第五卷</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />檢查防火牆和防毒軟件設定<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">大</translation>
-<translation id="4209166701302774460">您的目標伺服器「<ph name="ORIGIN" />」要求為收到的所有要求套用來源政策。不過,由於該伺服器目前並未提供政策,因此瀏覽器無法完成您向 <ph name="SITE" /> 提出的要求。網站網絡供應商可使用來源政策設定網站的安全性及其他屬性。</translation>
 <translation id="4210602799576081649">驗證碼已過期,請要求新驗證碼</translation>
 <translation id="421066178035138955">使用虛擬實境裝置和資料</translation>
 <translation id="4213305257324635756">動畫電影</translation>
@@ -1199,7 +1196,6 @@
     &lt;p&gt;如果您仍然看到錯誤訊息,請聯絡網站擁有者。&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />嘗試執行網絡診斷<ph name="END_LINK" />。</translation>
 <translation id="4230204356098880324">可要求使用和移動攝錄機</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />繼續前往 <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">有效</translation>
 <translation id="4250431568374086873">您與此網站的連線並非完全安全</translation>
 <translation id="4250680216510889253">否</translation>
@@ -1403,7 +1399,6 @@
 <translation id="4796594887379589189">工作帳戶 ID</translation>
 <translation id="4798078619018708837">請輸入 <ph name="CREDIT_CARD" /> 的到期日和信用卡驗證碼 (CVC),以更新您的信用卡詳細資料。確認後,您的 Google 帳戶會與這個網站共用您的信用卡資料。</translation>
 <translation id="4800132727771399293">請檢查您的到期日和卡片驗證碼 (CVC),然後再試一次</translation>
-<translation id="480334179571489655">來源政策錯誤</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">來自裝置管理員的指示:</translation>
 <translation id="4812751092864334025">穿戴式裝置</translation>
@@ -1798,7 +1793,6 @@
 <translation id="5901630391730855834">黃色</translation>
 <translation id="5903264686717710770">標題:</translation>
 <translation id="5904360430676679685">家庭和人際關係</translation>
-<translation id="5905445707201418379">已根據 <ph name="ORIGIN" /> 的安全政策封鎖。</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (已同步)</translation>
 <translation id="59174027418879706">已啟用</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_zh-TW.xtb b/components/strings/components_strings_zh-TW.xtb
index 8c3e4a5..470f7fc 100644
--- a/components/strings/components_strings_zh-TW.xtb
+++ b/components/strings/components_strings_zh-TW.xtb
@@ -335,7 +335,6 @@
 <translation id="1757773103848038814">等寬字型</translation>
 <translation id="1763864636252898013">伺服器無法證明其屬於 <ph name="DOMAIN" /> 網域;其安全性憑證未取得你裝置作業系統的信任。這可能是因為設定錯誤,或有攻擊者攔截你的連線所致。</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />嘗試執行 Windows 網路診斷<ph name="END_LINK" />。</translation>
-<translation id="1772163372082567643">你要存取的伺服器「<ph name="ORIGIN" />」已設定標頭,指定所有收到的要求都必須套用來源政策。但該標頭格式錯誤,因此瀏覽器無法完成你向「<ph name="SITE" />」提出的要求。網站業者可使用來源政策設定網站的安全性和其他屬性。</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />進一步瞭解 Chromium 無痕模式<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">JIS B0</translation>
 <translation id="1787142507584202372">這裡會顯示你最近開啟的分頁</translation>
@@ -1107,7 +1106,6 @@
 <translation id="3987940399970879459">不到 1 MB</translation>
 <translation id="3990250421422698716">撞頁偏移</translation>
 <translation id="3992684624889376114">為何顯示此頁</translation>
-<translation id="3996311196211510766">「<ph name="ORIGIN" />」網站指定所有收到的要求都必須套用來源政策,但目前無法套用此政策。</translation>
 <translation id="4006465311664329701">儲存在 Google Pay 的付款方式、優惠和地址資訊</translation>
 <translation id="4009243425692662128">你列印的頁面內容會傳送給 Google Cloud 或第三方進行分析。舉例來說,Google Cloud 或第三方可能會掃描文字,檢查是否含有機密資料。</translation>
 <translation id="4010758435855888356">要授予儲存空間存取權嗎?</translation>
@@ -1172,7 +1170,6 @@
 <translation id="4202554117186904723">第五卷</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />檢查防火牆和防毒軟體設定<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">大</translation>
-<translation id="4209166701302774460">你要存取的伺服器「<ph name="ORIGIN" />」指定所有收到的要求都必須套用來源政策。但該伺服器目前並未提供政策,因此瀏覽器無法完成你向「<ph name="SITE" />」提出的要求。網站業者可使用來源政策設定網站的安全性和其他屬性。</translation>
 <translation id="4210602799576081649">驗證碼已過期,請申請新的驗證碼</translation>
 <translation id="421066178035138955">使用虛擬實境裝置和資料</translation>
 <translation id="4213305257324635756">動畫片</translation>
@@ -1200,7 +1197,6 @@
     &lt;p&gt;如果您仍看見錯誤訊息,請與網站擁有者聯絡。&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />嘗試執行網路診斷<ph name="END_LINK" />。</translation>
 <translation id="4230204356098880324">可以要求使用及移動你的攝影機</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />繼續前往 <ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">有效</translation>
 <translation id="4250431568374086873">你與這個網站的連線可能有安全漏洞</translation>
 <translation id="4250680216510889253">否</translation>
@@ -1404,7 +1400,6 @@
 <translation id="4796594887379589189">工作帳戶 ID</translation>
 <translation id="4798078619018708837">請輸入 <ph name="CREDIT_CARD" /> 的到期日和信用卡驗證碼,以更新信用卡詳細資料。你確認後,這個網站就會取得你 Google 帳戶中的信用卡詳細資料。</translation>
 <translation id="4800132727771399293">請檢查您的有效期限和信用卡驗證碼,然後再試一次</translation>
-<translation id="480334179571489655">來源政策錯誤</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">來自裝置管理員的指示:</translation>
 <translation id="4812751092864334025">穿戴式裝置</translation>
@@ -1799,7 +1794,6 @@
 <translation id="5901630391730855834">黃色</translation>
 <translation id="5903264686717710770">標題:</translation>
 <translation id="5904360430676679685">家庭與人際關係</translation>
-<translation id="5905445707201418379">已根據「<ph name="ORIGIN" />」的來源政策加以封鎖。</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (已同步)</translation>
 <translation id="59174027418879706">已啟用</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/strings/components_strings_zu.xtb b/components/strings/components_strings_zu.xtb
index c6d9843..c1b2f7f 100644
--- a/components/strings/components_strings_zu.xtb
+++ b/components/strings/components_strings_zu.xtb
@@ -335,11 +335,6 @@
 <translation id="1757773103848038814">Ifonti ye-Monospace</translation>
 <translation id="1763864636252898013">Le seva ayikwazanga ukukhombisa ukuthi iyi-<ph name="DOMAIN" />; isitifiketi sayo sokuvikeleka asithenjiwe isistimu yokusebenza yedivayisi yakho. Lokhu kungenzeka kubangelwe ukulungisa okungalungile noma umhlaseli uzama ukufinyelela uxhumo lwakho.</translation>
 <translation id="1768211456781949159"><ph name="BEGIN_LINK" />Zama ukusebenzisa ukuxilongwa kwenethiwekhi ye-Windows<ph name="END_LINK" />.</translation>
-<translation id="1772163372082567643">Iseva oya kuyo, <ph name="ORIGIN" />, inesihloko esisethiwe
-    esidinga ukuthi inqubomgomo yokwangempela izosetshenziswa kuzo zonke izicelo zayo. Kodwa
-    isihloko asakhekanga kahle, okugwema isiphequluli ukufeza
-    isicelo sakho se-<ph name="SITE" />. Izinqubomgomo zoqobo zingasetshenziswa
-    abasebenzisi besayithi ukulungisa ukuphepha nezinye izinto zesayithi.</translation>
 <translation id="1774592222195216949"><ph name="BEGIN_LINK" />Funda kabanzi nge-Incognito ku-Chromium<ph name="END_LINK" /></translation>
 <translation id="1778646502362731194">I-JIS B0</translation>
 <translation id="1787142507584202372">Amathebhu akho avulekile abonakala lapha</translation>
@@ -1108,8 +1103,6 @@
 <translation id="3987940399970879459">Ngaphansi kunokungu-1 MB</translation>
 <translation id="3990250421422698716">I-Jog offset</translation>
 <translation id="3992684624889376114">Mayelana naleli khasi</translation>
-<translation id="3996311196211510766">Isayithi le-<ph name="ORIGIN" /> licele ukuthi inqubomgomo yokwangempela
-    isebenze kuzo zonke izicelo zayo, kodwa le nqubomgomo ayikwazi ukusetshenziswa okwamanje.</translation>
 <translation id="4006465311664329701">Izindlela Zokukhokha, Imititilizo, Namakheli Asebenzisa I-Google Pay</translation>
 <translation id="4009243425692662128">Okuqukethwe kwamakhasi owaphrintayo kuthunyelwa ku-Google Cloud noma kwizinkampani ezingahlangene ngqo ukuze kuhlaziywe. Isibonelo, ingapheqululwa mayelana nedatha ezwelayo</translation>
 <translation id="4010758435855888356">Vumela ukufinyelela kusitoreji?</translation>
@@ -1174,11 +1167,6 @@
 <translation id="4202554117186904723">Umqulu Wesihlanu</translation>
 <translation id="4203896806696719780"><ph name="BEGIN_LINK" />Ukuhlola i-firewall nokulungiswa kwesivikeli magciwane<ph name="END_LINK" /></translation>
 <translation id="4209092469652827314">Okukhulu</translation>
-<translation id="4209166701302774460">Iseva oya kuyo, <ph name="ORIGIN" />, icele ukuthi
-    inqubomgomo yokwangempela ifakwe kuzo zonke izicelo zayo. Kodwa manje
-    yehlulekile ukuletha inqubomgomo, egwema isiphequluli ekugcwaliseni
-    isicelo sakho se-<ph name="SITE" />. Izinqubomgomo zokwangempela zingasetshenziswa
-    o-opharetha besayithi ukulungiselela ukuphepha nezinye izinto zesayithi.</translation>
 <translation id="4210602799576081649">Ikhodi yokuqinisekisa iphelelwe yisikhathi, cela ikhodi entsha</translation>
 <translation id="421066178035138955">Sebenzisa amadivayisi ento engekho ngokoqobo nedatha</translation>
 <translation id="4213305257324635756">Ama-movie wopopayi</translation>
@@ -1206,7 +1194,6 @@
     &lt;p&gt;Uma usabona leli phutha, xhumana nomnikazi wewebhusayithi.&lt;/p&gt;</translation>
 <translation id="4226937834893929579"><ph name="BEGIN_LINK" />Zama ukuqalisa ukuxilongwa kwenethiwekhi<ph name="END_LINK" />.</translation>
 <translation id="4230204356098880324">Ingacela ukusebenzisa noma ukuhambisa ikhamera yakho</translation>
-<translation id="4234495348042597185"><ph name="BEGIN_LINK" />Qhubekela ku-<ph name="SITE" /><ph name="END_LINK" /></translation>
 <translation id="4235360514405112390">Lungile</translation>
 <translation id="4250431568374086873">UKuxhumeka kwakho kuleli sayithi akuvikelekile ngokugcwele</translation>
 <translation id="4250680216510889253">Cha</translation>
@@ -1410,7 +1397,6 @@
 <translation id="4796594887379589189">I-ID ye-akhawunti yomsebenzi</translation>
 <translation id="4798078619018708837">Faka idethi yokuphelelwa isikhathi kanye ne-CVC ye-<ph name="CREDIT_CARD" /> ukuze ubuyekeze imininingwane yekhadi lakho. Ngemuva kokuqinisekisa, imininingwane yekhadi kusuka ku-akhawunti yakho ye-Google izokwabiwa naleli sayithi.</translation>
 <translation id="4800132727771399293">Hlola idethi yakho yokuphelelwa yisikhathi ne-CVC uphinde uzame futhi</translation>
-<translation id="480334179571489655">Iphutha lenqubomgomo yoqobo</translation>
 <translation id="4803924862070940586"><ph name="CURRENCY_CODE" /> <ph name="FORMATTED_TOTAL_AMOUNT" /></translation>
 <translation id="4809079943450490359">Imiyalelo esuka kumlawuli wedivayisi yakho:</translation>
 <translation id="4812751092864334025">Ubuchwepheshe obugqokekayo</translation>
@@ -1805,7 +1791,6 @@
 <translation id="5901630391730855834">Okuliphuzi</translation>
 <translation id="5903264686717710770">Isihloko:</translation>
 <translation id="5904360430676679685">Umndeni nobudlelwano</translation>
-<translation id="5905445707201418379">Kuvinjelwe ngokuya kwenqubomgomo yoqobo ye-<ph name="ORIGIN" />.</translation>
 <translation id="5908541034548427511"><ph name="TYPE_1" /> (kuvumelanisiwe)</translation>
 <translation id="59174027418879706">Kunikwe amandla</translation>
 <translation id="5919090499915321845">B10</translation>
diff --git a/components/sync/base/features.h b/components/sync/base/features.h
index 26f0845b..d853200d 100644
--- a/components/sync/base/features.h
+++ b/components/sync/base/features.h
@@ -23,6 +23,9 @@
 inline constexpr base::Feature kCacheBaseEntitySpecificsInMetadata{
     "CacheBaseEntitySpecificsInMetadata", base::FEATURE_DISABLED_BY_DEFAULT};
 
+inline constexpr base::Feature kEnableSyncImmediatelyInFRE{
+    "EnableSyncImmediatelyInFRE", base::FEATURE_DISABLED_BY_DEFAULT};
+
 // Causes Sync to ignore updates encrypted with keys that have been missing for
 // too long from this client; Sync will proceed normally as if those updates
 // didn't exist.
diff --git a/content/browser/browser_interface_binders.cc b/content/browser/browser_interface_binders.cc
index b791cf4a..c64a2ee 100644
--- a/content/browser/browser_interface_binders.cc
+++ b/content/browser/browser_interface_binders.cc
@@ -1442,6 +1442,10 @@
                           base::Unretained(host)));
   map->Add<blink::mojom::ReportingServiceProxy>(base::BindRepeating(
       &CreateReportingServiceProxyForServiceWorker, base::Unretained(host)));
+#if !BUILDFLAG(IS_ANDROID)
+  map->Add<blink::mojom::HidService>(base::BindRepeating(
+      &ServiceWorkerHost::BindHidService, base::Unretained(host)));
+#endif
 
   // RenderProcessHost binders
   map->Add<media::mojom::VideoDecodePerfHistory>(BindServiceWorkerReceiver(
diff --git a/content/browser/hid/hid_test_utils.h b/content/browser/hid/hid_test_utils.h
index ed96a08..fc4538d 100644
--- a/content/browser/hid/hid_test_utils.h
+++ b/content/browser/hid/hid_test_utils.h
@@ -70,6 +70,8 @@
   MOCK_METHOD2(IsFidoAllowedForOrigin,
                bool(BrowserContext* browser_context,
                     const url::Origin& origin));
+  MOCK_METHOD1(IsServiceWorkerAllowedForOrigin,
+               bool(const url::Origin& origin));
 
  private:
   base::ObserverList<Observer> observer_list_;
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index 4546a4e3..db1e973 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -209,6 +209,8 @@
 #include "content/public/browser/android/java_interfaces.h"
 #include "media/audio/android/audio_manager_android.h"
 #include "third_party/blink/public/mojom/android_font_lookup/android_font_lookup.mojom.h"
+#else
+#include "content/browser/hid/hid_service.h"
 #endif
 
 #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
@@ -5287,4 +5289,13 @@
           std::move(allocator)));
 }
 
+#if !BUILDFLAG(IS_ANDROID)
+void RenderProcessHostImpl::BindHidService(
+    const url::Origin& origin,
+    mojo::PendingReceiver<blink::mojom::HidService> receiver) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+  content::HidService::Create(GetBrowserContext(), origin, std::move(receiver));
+}
+#endif  // !BUILDFLAG(IS_ANDROID)
+
 }  // namespace content
diff --git a/content/browser/renderer_host/render_process_host_impl.h b/content/browser/renderer_host/render_process_host_impl.h
index f5e6061b..d1cfab9 100644
--- a/content/browser/renderer_host/render_process_host_impl.h
+++ b/content/browser/renderer_host/render_process_host_impl.h
@@ -81,6 +81,8 @@
 
 #if BUILDFLAG(IS_ANDROID)
 #include "content/public/browser/android/child_process_importance.h"
+#else
+#include "third_party/blink/public/mojom/hid/hid.mojom-forward.h"
 #endif
 
 #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
@@ -689,6 +691,11 @@
     ipc_send_watcher_for_testing_ = std::move(watcher);
   }
 
+#if !BUILDFLAG(IS_ANDROID)
+  void BindHidService(const url::Origin& origin,
+                      mojo::PendingReceiver<blink::mojom::HidService> receiver);
+#endif  // !BUILDFLAG(IS_ANDROID)
+
 #if BUILDFLAG(ENABLE_PLUGINS)
   PepperRendererConnection* pepper_renderer_connection() {
     return pepper_renderer_connection_.get();
diff --git a/content/browser/resources/service_worker/serviceworker_internals.html b/content/browser/resources/service_worker/serviceworker_internals.html
index 17a18d3c..74482ad8 100644
--- a/content/browser/resources/service_worker/serviceworker_internals.html
+++ b/content/browser/resources/service_worker/serviceworker_internals.html
@@ -91,7 +91,7 @@
           <div class="serviceworker-nonce"
             jsdisplay="$this.ancestor_chain_bit == 'CrossSite'">
             <span>nonce:</span>
-            <span jscontent="$this.active"></span>
+            <span jscontent="$this.nonce"></span>
           </div>
         </div>
       </div>
diff --git a/content/browser/scheduler/browser_task_queues.h b/content/browser/scheduler/browser_task_queues.h
index 2b89aa6c..36ae3d0 100644
--- a/content/browser/scheduler/browser_task_queues.h
+++ b/content/browser/scheduler/browser_task_queues.h
@@ -143,7 +143,9 @@
 
     // |outer_| can only be safely used from a task posted to one of the
     // runners.
-    raw_ptr<BrowserTaskQueues> outer_ = nullptr;
+    //
+    // TODO(crbug.com/1298696): Breaks events_unittests.
+    raw_ptr<BrowserTaskQueues, DegradeToNoOpWhenMTE> outer_ = nullptr;
     scoped_refptr<base::SingleThreadTaskRunner> control_task_runner_;
     scoped_refptr<base::SingleThreadTaskRunner> default_task_runner_;
     std::array<scoped_refptr<base::SingleThreadTaskRunner>, kNumQueueTypes>
diff --git a/content/browser/service_worker/embedded_worker_instance.cc b/content/browser/service_worker/embedded_worker_instance.cc
index 41dfe5a..43a91cd 100644
--- a/content/browser/service_worker/embedded_worker_instance.cc
+++ b/content/browser/service_worker/embedded_worker_instance.cc
@@ -37,6 +37,7 @@
 #include "content/common/url_schemes.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
+#include "content/public/browser/hid_delegate.h"
 #include "content/public/browser/web_ui_url_loader_factory.h"
 #include "content/public/common/child_process_host.h"
 #include "content/public/common/content_client.h"
@@ -745,6 +746,26 @@
   BindCacheStorageInternal();
 }
 
+#if !BUILDFLAG(IS_ANDROID)
+void EmbeddedWorkerInstance::BindHidService(
+    const url::Origin& origin,
+    mojo::PendingReceiver<blink::mojom::HidService> receiver) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+  auto* rph = static_cast<RenderProcessHostImpl*>(
+      RenderProcessHost::FromID(process_id()));
+  if (!rph)
+    return;
+
+  HidDelegate* hid_delegate = GetContentClient()->browser()->GetHidDelegate();
+  if (!hid_delegate) {
+    return;
+  }
+  if (hid_delegate->IsServiceWorkerAllowedForOrigin(origin)) {
+    rph->BindHidService(origin, std::move(receiver));
+  }
+}
+#endif  // !BUILDFLAG(IS_ANDROID)
+
 base::WeakPtr<EmbeddedWorkerInstance> EmbeddedWorkerInstance::AsWeakPtr() {
   return weak_factory_.GetWeakPtr();
 }
diff --git a/content/browser/service_worker/embedded_worker_instance.h b/content/browser/service_worker/embedded_worker_instance.h
index 2a9382b..5a998d67f 100644
--- a/content/browser/service_worker/embedded_worker_instance.h
+++ b/content/browser/service_worker/embedded_worker_instance.h
@@ -40,6 +40,10 @@
 #include "third_party/blink/public/mojom/worker/subresource_loader_updater.mojom.h"
 #include "url/gurl.h"
 
+#if !BUILDFLAG(IS_ANDROID)
+#include "third_party/blink/public/mojom/hid/hid.mojom-forward.h"
+#endif
+
 namespace content {
 
 class CrossOriginEmbedderPolicyReporter;
@@ -225,6 +229,11 @@
   void BindCacheStorage(
       mojo::PendingReceiver<blink::mojom::CacheStorage> receiver);
 
+#if !BUILDFLAG(IS_ANDROID)
+  void BindHidService(const url::Origin& origin,
+                      mojo::PendingReceiver<blink::mojom::HidService> receiver);
+#endif  // !BUILDFLAG(IS_ANDROID)
+
   base::WeakPtr<EmbeddedWorkerInstance> AsWeakPtr();
 
   // The below can only be called on the UI thread. The returned factory may be
diff --git a/content/browser/service_worker/service_worker_host.cc b/content/browser/service_worker/service_worker_host.cc
index 33af82d..b587a6d 100644
--- a/content/browser/service_worker/service_worker_host.cc
+++ b/content/browser/service_worker/service_worker_host.cc
@@ -94,6 +94,15 @@
   version_->embedded_worker()->BindCacheStorage(std::move(receiver));
 }
 
+#if !BUILDFLAG(IS_ANDROID)
+void ServiceWorkerHost::BindHidService(
+    mojo::PendingReceiver<blink::mojom::HidService> receiver) {
+  DCHECK_CURRENTLY_ON(BrowserThread::UI);
+  version_->embedded_worker()->BindHidService(version_->key().origin(),
+                                              std::move(receiver));
+}
+#endif
+
 net::NetworkIsolationKey ServiceWorkerHost::GetNetworkIsolationKey() const {
   // TODO(https://crbug.com/1147281): This is the NetworkIsolationKey of a
   // top-level browsing context, which shouldn't be use for ServiceWorkers used
diff --git a/content/browser/service_worker/service_worker_host.h b/content/browser/service_worker/service_worker_host.h
index f1658ed..08b3bc0 100644
--- a/content/browser/service_worker/service_worker_host.h
+++ b/content/browser/service_worker/service_worker_host.h
@@ -38,6 +38,10 @@
 #include "third_party/blink/public/mojom/webtransport/web_transport_connector.mojom.h"
 #include "url/origin.h"
 
+#if !BUILDFLAG(IS_ANDROID)
+#include "third_party/blink/public/mojom/hid/hid.mojom-forward.h"
+#endif
+
 namespace content {
 
 class ServiceWorkerContextCore;
@@ -83,6 +87,10 @@
   void BindCacheStorage(
       mojo::PendingReceiver<blink::mojom::CacheStorage> receiver);
 
+#if !BUILDFLAG(IS_ANDROID)
+  void BindHidService(mojo::PendingReceiver<blink::mojom::HidService> receiver);
+#endif  // !BUILDFLAG(IS_ANDROID)
+
   content::ServiceWorkerContainerHost* container_host() {
     return container_host_.get();
   }
diff --git a/content/browser/service_worker/service_worker_internals_ui_browsertest.cc b/content/browser/service_worker/service_worker_internals_ui_browsertest.cc
index 3d9c45a..75a7503 100644
--- a/content/browser/service_worker/service_worker_internals_ui_browsertest.cc
+++ b/content/browser/service_worker/service_worker_internals_ui_browsertest.cc
@@ -20,11 +20,13 @@
 #include "content/public/browser/render_process_host.h"
 #include "content/public/browser/web_contents.h"
 #include "content/public/test/browser_test.h"
+#include "content/public/test/browser_test_base.h"
 #include "content/public/test/browser_test_utils.h"
 #include "content/public/test/content_browser_test.h"
 #include "content/public/test/content_browser_test_utils.h"
 #include "content/public/test/test_utils.h"
 #include "content/shell/browser/shell.h"
+#include "net/dns/mock_host_resolver.h"
 #include "net/test/embedded_test_server/embedded_test_server.h"
 #include "third_party/blink/public/common/service_worker/service_worker_status_code.h"
 #include "third_party/blink/public/common/storage_key/storage_key.h"
@@ -204,16 +206,20 @@
 
 class ServiceWorkerInternalsUIBrowserTest : public ContentBrowserTest {
  public:
-  ServiceWorkerInternalsUIBrowserTest() = default;
+  ServiceWorkerInternalsUIBrowserTest()
+      : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {}
 
  protected:
-  void SetUp() override {
-    ASSERT_TRUE(embedded_test_server()->InitializeAndListen());
-    ContentBrowserTest::SetUp();
-  }
+  // void SetUp() override {
+  //   ASSERT_TRUE(embedded_test_server()->InitializeAndListen());
+  //   ContentBrowserTest::SetUp();
+  // }
 
   void SetUpOnMainThread() override {
-    StartServer();
+    host_resolver()->AddRule("*", "127.0.0.1");
+    SetupCrossSiteRedirector(embedded_test_server());
+    ASSERT_TRUE(embedded_test_server()->Start());
+    // StartServer();
     StoragePartition* partition = shell()
                                       ->web_contents()
                                       ->GetBrowserContext()
@@ -233,13 +239,14 @@
     wrapper_ = nullptr;
   }
 
-  void StartServer() {
-    DCHECK_CURRENTLY_ON(BrowserThread::UI);
-    embedded_test_server()->StartAcceptingConnections();
-  }
+  // void StartServer() {
+  //   DCHECK_CURRENTLY_ON(BrowserThread::UI);
+  //   embedded_test_server()->StartAcceptingConnections();
+  // }
 
   ServiceWorkerContextWrapper* wrapper() { return wrapper_.get(); }
   ServiceWorkerContext* public_context() { return wrapper(); }
+  net::EmbeddedTestServer* https_server() { return &https_server_; }
 
   blink::ServiceWorkerStatusCode FindRegistration() {
     const GURL& document_url =
@@ -521,6 +528,7 @@
   base::test::ScopedFeatureList feature_list_;
   scoped_refptr<ServiceWorkerContextWrapper> wrapper_;
   raw_ptr<Shell, DanglingUntriaged> active_shell_ = shell();
+  net::EmbeddedTestServer https_server_;
 };
 
 // Tests
@@ -693,4 +701,79 @@
   TearDownWindow(sw_registration_window);
   TearDownWindow(sw_internal_ui_window);
 }
+
+class ServiceWorkerInternalsUIBrowserTestWithStoragePartitioning
+    : public ServiceWorkerInternalsUIBrowserTest {
+ public:
+  ServiceWorkerInternalsUIBrowserTestWithStoragePartitioning() {
+    scoped_feature_list_.InitAndEnableFeature(
+        blink::features::kThirdPartyStoragePartitioning);
+  }
+
+ private:
+  base::test::ScopedFeatureList scoped_feature_list_;
+};
+
+IN_PROC_BROWSER_TEST_F(
+    ServiceWorkerInternalsUIBrowserTestWithStoragePartitioning,
+    RegisteredSWReflectedOnInternalUI) {
+  https_server()->ServeFilesFromSourceDirectory(GetTestDataFilePath());
+  https_server()->SetSSLConfig(net::EmbeddedTestServer::CERT_TEST_NAMES);
+  ASSERT_TRUE(https_server()->Start());
+
+  Shell* sw_internal_ui_window = CreateNewWindow();
+  NavigateToServiceWorkerInternalUI();
+
+  // Register and wait for the service worker to populate on the internal UI.
+  const std::u16string kTitle = u"SW populated";
+  TitleWatcher title_watcher(web_contents(), kTitle);
+  SetMutationObserver("status", "ACTIVATED", kTitle);
+
+  auto sw_state_observer = base::MakeRefCounted<SWStateObserver>(
+      wrapper(), ServiceWorkerVersion::ACTIVATED);
+  sw_state_observer->Init();
+
+  GURL top_level_page(
+      https_server()->GetURL("a.test", kServiceWorkerSetupPage));
+  GURL scope(https_server()->GetURL("b.test", kServiceWorkerScope));
+  {
+    base::RunLoop run_loop;
+    blink::mojom::ServiceWorkerRegistrationOptions options(
+        scope, blink::mojom::ScriptType::kClassic,
+        blink::mojom::ServiceWorkerUpdateViaCache::kImports);
+    // Set up the storage key for the service worker
+    blink::StorageKey key = blink::StorageKey::CreateWithOptionalNonce(
+        url::Origin::Create(options.scope),
+        net::SchemefulSite(url::Origin::Create(top_level_page)), nullptr,
+        blink::mojom::AncestorChainBit::kCrossSite);
+    // Register returns when the promise is resolved.
+    public_context()->RegisterServiceWorker(
+        https_server()->GetURL("b.test", kServiceWorkerUrl), key, options,
+        base::BindOnce(&ExpectRegisterResultAndRun,
+                       blink::ServiceWorkerStatusCode::kOk,
+                       run_loop.QuitClosure()));
+    run_loop.Run();
+  }
+
+  sw_state_observer->Wait();
+  int64_t registration_id = sw_state_observer->RegistrationID();
+
+  EXPECT_EQ(kTitle, title_watcher.WaitAndGetTitle());
+
+  // Assert populated service worker info.
+  SetActiveWindow(sw_internal_ui_window);
+  ASSERT_EQ(scope.spec(),
+            GetServiceWorkerInfoFromInternalUI(registration_id, "scope"));
+
+  ASSERT_EQ(url::Origin::Create(scope).GetDebugString(),
+            GetServiceWorkerInfoFromInternalUI(registration_id, "origin"));
+  ASSERT_EQ(
+      net::SchemefulSite(url::Origin::Create(top_level_page)).Serialize(),
+      GetServiceWorkerInfoFromInternalUI(registration_id, "top_level_site"));
+  ASSERT_EQ("CrossSite", GetServiceWorkerInfoFromInternalUI(
+                             registration_id, "ancestor_chain_bit"));
+  ASSERT_EQ("<null>",
+            GetServiceWorkerInfoFromInternalUI(registration_id, "nonce"));
+}
+
 }  // namespace content
diff --git a/content/browser/webrtc/resources/stats_graph_helper.js b/content/browser/webrtc/resources/stats_graph_helper.js
index a32807d..0c1fc15 100644
--- a/content/browser/webrtc/resources/stats_graph_helper.js
+++ b/content/browser/webrtc/resources/stats_graph_helper.js
@@ -147,6 +147,12 @@
   if (report.type === 'candidate-pair' && statName === 'priority') {
     return true;
   }
+  // The mid/rid associated with a sender/receiver does not change over time;
+  // plotting uninteresting.
+  if (['inbound-rtp', 'outbound-rtp'].includes(report.type) &&
+      ['mid', 'rid'].includes(statName)) {
+    return true;
+  }
   return false;
 }
 
diff --git a/content/browser/webrtc/resources/stats_table.js b/content/browser/webrtc/resources/stats_table.js
index 6a845e5..57189a1f 100644
--- a/content/browser/webrtc/resources/stats_table.js
+++ b/content/browser/webrtc/resources/stats_table.js
@@ -39,14 +39,34 @@
 
     if (['outbound-rtp', 'inbound-rtp'].includes(report.type)
         && report.stats.values) {
-      // Show codec for inbound-rtp and outbound-rtp.
-      const codecIndex = report.stats.values.indexOf('[codec]');
+      let summary = report.id + ' (' + report.type;
+      // Show mid, rid and codec for inbound-rtp and outbound-rtp.
+      // Note: values is an array [key1, val1, key2, val2, ...] so searching
+      // for a certain key needs to ensure it does not collide with a value.
+      const midIndex = report.stats.values.findIndex((value, index) => {
+        return value === 'mid' && index % 2 === 0;
+      });
+      if (midIndex !== -1) {
+        const midInfo = report.stats.values[midIndex + 1];
+        summary += ', mid=' + midInfo;
+      }
+      const ridIndex = report.stats.values.findIndex((value, index) => {
+        return value === 'rid' && index % 2 === 0;
+      });
+      if (ridIndex !== -1) {
+        const ridInfo = report.stats.values[ridIndex + 1];
+        summary += ', rid=' + ridInfo;
+      }
+
+      const codecIndex = report.stats.values.findIndex((value, index) => {
+        return value === '[codec]' && index % 2 === 0;
+      });
       if (codecIndex !== -1) {
         const codecInfo = report.stats.values[codecIndex + 1].split(' ')[0];
-        // Update the summary.
-        statsTable.parentElement.firstElementChild.innerText =
-          report.id + ' (' + report.type + ', ' + codecInfo + ')';
+        summary += ', ' + codecInfo;
       }
+      // Update the summary.
+      statsTable.parentElement.firstElementChild.innerText = summary + ')';
     }
 
     if (report.stats) {
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
index 7915f82..a4318f1 100644
--- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc
@@ -410,6 +410,7 @@
            blink::features::kClientHintThirdPartyDelegation},
           {"UserAgentReduction", blink::features::kReduceUserAgent},
           {"UserAgentFull", blink::features::kFullUserAgent},
+          {"VariableCOLRV1", blink::features::kVariableCOLRV1},
           {"WindowPlacement", blink::features::kWindowPlacement},
           {"WindowPlacementFullscreenOnScreensChange",
            blink::features::kWindowPlacementFullscreenOnScreensChange},
diff --git a/content/common/mac/attributed_string_type_converters.mm b/content/common/mac/attributed_string_type_converters.mm
index a03d086..20b9b2d 100644
--- a/content/common/mac/attributed_string_type_converters.mm
+++ b/content/common/mac/attributed_string_type_converters.mm
@@ -18,11 +18,17 @@
 
 NSDictionary* ToAttributesDictionary(std::u16string name, float font_size) {
   DCHECK(!name.empty());
-  NSString* font_name_ns = base::SysUTF16ToNSString(name);
-  NSFont* font = [NSFont fontWithName:font_name_ns size:font_size];
-  if (!font)
-    return [NSDictionary dictionary];
-  return [NSDictionary dictionaryWithObject:font forKey:NSFontAttributeName];
+  NSFont* font = [NSFont fontWithName:base::SysUTF16ToNSString(name)
+                                 size:font_size];
+  if (!font) {
+    // This can happen if:
+    // - The specified font is unavailable in this process.
+    // - The specified font is a system font unavailable through `+[NSFont
+    //   fontWithName:size]`.
+    // In either case, the system font is a reasonable substitute.
+    font = [NSFont systemFontOfSize:font_size];
+  }
+  return @{NSFontAttributeName : font};
 }
 
 }  // namespace
@@ -38,21 +44,19 @@
   // Iterate over all the encoded attributes, attaching each to the string.
   const std::vector<ui::mojom::FontAttributePtr>& attributes =
       mojo_attributed_string->attributes;
-  for (std::vector<ui::mojom::FontAttributePtr>::const_iterator it =
-           attributes.begin();
-       it != attributes.end(); ++it) {
+  for (const auto& attribute : attributes) {
     // Protect against ranges that are outside the range of the string.
-    const gfx::Range& range = it->get()->effective_range;
+    const gfx::Range& range = attribute.get()->effective_range;
     if (range.GetMin() > [plain_text length] ||
         range.GetMax() > [plain_text length]) {
       continue;
     }
     [decoded_string
-        addAttributes:ToAttributesDictionary(it->get()->font_name,
-                                             it->get()->font_point_size)
+        addAttributes:ToAttributesDictionary(attribute.get()->font_name,
+                                             attribute.get()->font_point_size)
                 range:range.ToNSRange()];
   }
-  return [decoded_string.release() autorelease];
+  return decoded_string.autorelease();
 }
 
 ui::mojom::AttributedStringPtr
@@ -72,7 +76,7 @@
         [ns_attributed_string attributesAtIndex:i
                                  effectiveRange:&effective_range];
 
-    NSFont* font = [ns_attributes objectForKey:NSFontAttributeName];
+    NSFont* font = ns_attributes[NSFontAttributeName];
     std::u16string font_name;
     float font_point_size;
     // Only encode the attributes if the filtered set contains font information.
diff --git a/content/common/mac/attributed_string_type_converters_unittest.mm b/content/common/mac/attributed_string_type_converters_unittest.mm
index 98aff4d..a298818 100644
--- a/content/common/mac/attributed_string_type_converters_unittest.mm
+++ b/content/common/mac/attributed_string_type_converters_unittest.mm
@@ -135,3 +135,25 @@
   EXPECT_FALSE([attrs objectForKey:NSFontAttributeName]);
   EXPECT_EQ(0U, [attrs count]);
 }
+
+TEST_F(AttributedStringConverterTest, SystemFontSubstitution) {
+  // Ask for a specialization of the system font that the OS will refuse to
+  // instantiate via the normal font APIs.
+  std::u16string font_name = u".SFNS-Regular_wdth_opsz200000_GRAD_wght2BC0000";
+  ui::mojom::AttributedStringPtr attributed_string =
+      ui::mojom::AttributedString::New();
+  attributed_string->string = u"Hello";
+  attributed_string->attributes.push_back(
+      ui::mojom::FontAttribute::New(font_name, 12, gfx::Range(0, 5)));
+
+  NSAttributedString* ns_attributed_string =
+      attributed_string.To<NSAttributedString*>();
+  EXPECT_TRUE(ns_attributed_string);
+
+  NSRange range;
+  NSDictionary* attrs = [ns_attributed_string attributesAtIndex:0
+                                                 effectiveRange:&range];
+  EXPECT_NSEQ([NSFont systemFontOfSize:12],
+              [attrs objectForKey:NSFontAttributeName]);
+  EXPECT_TRUE(NSEqualRanges(range, NSMakeRange(0, 5)));
+}
diff --git a/content/public/browser/hid_delegate.h b/content/public/browser/hid_delegate.h
index 69637ecb..4cfc1cb6 100644
--- a/content/public/browser/hid_delegate.h
+++ b/content/public/browser/hid_delegate.h
@@ -93,6 +93,9 @@
   virtual bool IsFidoAllowedForOrigin(BrowserContext* browser_context,
                                       const url::Origin& origin) = 0;
 
+  // Returns true if |origin| is allowed to access HID from service workers.
+  virtual bool IsServiceWorkerAllowedForOrigin(const url::Origin& origin) = 0;
+
   // Gets the device info for a particular device, identified by its guid.
   virtual const device::mojom::HidDeviceInfo* GetDeviceInfo(
       BrowserContext* browser_context,
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
index 362cb45..82996460 100644
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -167,6 +167,11 @@
     base::FEATURE_DISABLED_BY_DEFAULT,
 };
 
+// When kPrivateNetworkAccessPermissionPrompt is enabled, public secure websites
+// are allowed to access private insecure subresources with user's permission.
+const base::Feature kPrivateNetworkAccessPermissionPrompt{
+    "PrivateNetworkRequestPermissionPrompt", base::FEATURE_DISABLED_BY_DEFAULT};
+
 // Broker file operations on disk cache in the Network Service.
 // This is no-op if the network service is hosted in the browser process.
 const base::Feature kBrokerFileOperationsOnDiskCacheInNetworkService{
diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h
index 7f04242c..125cbef 100644
--- a/content/public/common/content_features.h
+++ b/content/public/common/content_features.h
@@ -185,6 +185,7 @@
 CONTENT_EXPORT extern const base::Feature
     kPrivateNetworkAccessRespectPreflightResults;
 CONTENT_EXPORT extern const base::Feature kPrivateNetworkAccessSendPreflights;
+CONTENT_EXPORT extern const base::Feature kPrivateNetworkAccessPermissionPrompt;
 CONTENT_EXPORT extern const base::Feature kProactivelySwapBrowsingInstance;
 CONTENT_EXPORT extern const base::Feature
     kProcessSharingWithDefaultSiteInstances;
diff --git a/content/public/common/content_switch_dependent_feature_overrides.cc b/content/public/common/content_switch_dependent_feature_overrides.cc
index 716327cd..79064f1a 100644
--- a/content/public/common/content_switch_dependent_feature_overrides.cc
+++ b/content/public/common/content_switch_dependent_feature_overrides.cc
@@ -66,6 +66,9 @@
      std::cref(features::kBlockInsecurePrivateNetworkRequestsFromUnknown),
      base::FeatureList::OVERRIDE_ENABLE_FEATURE},
     {switches::kEnableExperimentalWebPlatformFeatures,
+     std::cref(features::kPrivateNetworkAccessPermissionPrompt),
+     base::FeatureList::OVERRIDE_ENABLE_FEATURE},
+    {switches::kEnableExperimentalWebPlatformFeatures,
      std::cref(features::kPrivateNetworkAccessForWorkers),
      base::FeatureList::OVERRIDE_ENABLE_FEATURE},
     {switches::kEnableExperimentalWebPlatformFeatures,
diff --git a/content/test/fuzzer/BUILD.gn b/content/test/fuzzer/BUILD.gn
index f758644..4dd1057b 100644
--- a/content/test/fuzzer/BUILD.gn
+++ b/content/test/fuzzer/BUILD.gn
@@ -375,6 +375,21 @@
   }
 }
 
+mojolpm_fuzzer_test("image_capture_mojolpm_fuzzer") {
+  sources = [ "image_capture_mojolpm_fuzzer.cc" ]
+
+  proto_source = "image_capture_mojolpm_fuzzer.proto"
+
+  deps = [
+    ":mojolpm_fuzzer_support",
+    "//content/browser:for_content_tests",
+    "//content/public/browser:browser_sources",
+    "//media/capture:capture_lib",
+  ]
+
+  proto_deps = [ "//media/capture/mojom:image_capture_mojolpm" ]
+}
+
 mojolpm_fuzzer_test("presentation_service_mojolpm_fuzzer") {
   sources = [ "presentation_service_mojolpm_fuzzer.cc" ]
 
diff --git a/content/test/fuzzer/clipboard_host_mojolpm_fuzzer.cc b/content/test/fuzzer/clipboard_host_mojolpm_fuzzer.cc
index af0551f..8a02e461 100644
--- a/content/test/fuzzer/clipboard_host_mojolpm_fuzzer.cc
+++ b/content/test/fuzzer/clipboard_host_mojolpm_fuzzer.cc
@@ -10,6 +10,7 @@
 #include "base/callback_helpers.h"
 #include "base/no_destructor.h"
 #include "content/browser/renderer_host/clipboard_host_impl.h"
+#include "content/public/test/test_browser_context.h"
 #include "content/test/fuzzer/clipboard_host_mojolpm_fuzzer.pb.h"
 #include "content/test/fuzzer/mojolpm_fuzzer_support.h"
 #include "content/test/test_render_frame_host.h"
@@ -39,193 +40,139 @@
 // The lifetime of this is scoped to a single testcase, and it is created and
 // destroyed from the fuzzer sequence.
 //
-class ClipboardHostTestcase : public content::RenderViewHostTestHarness {
+class ClipboardHostTestcase
+    : public ::mojolpm::Testcase<
+          content::fuzzing::clipboard_host::proto::Testcase,
+          content::fuzzing::clipboard_host::proto::Action> {
  public:
+  using ProtoTestcase = content::fuzzing::clipboard_host::proto::Testcase;
+  using ProtoAction = content::fuzzing::clipboard_host::proto::Action;
   explicit ClipboardHostTestcase(
       const content::fuzzing::clipboard_host::proto::Testcase& testcase);
-  ~ClipboardHostTestcase() override;
+  ~ClipboardHostTestcase();
 
-  bool IsFinished();
-  void NextAction();
+  void SetUp(base::OnceClosure done_closure) override;
+  void TearDown(base::OnceClosure done_closure) override;
+
+  void RunAction(const ProtoAction& action,
+                 base::OnceClosure done_closure) override;
 
  private:
-  using Action = content::fuzzing::clipboard_host::proto::Action;
-
-  void SetUp() override;
-  void SetUpOnUIThread();
-
-  void TearDown() override;
-  void TearDownOnUIThread();
+  void SetUpOnUIThread(base::OnceClosure done_closure);
+  void TearDownOnUIThread(base::OnceClosure done_closure);
 
   void AddClipboardHostImpl(
-      mojo::PendingReceiver<blink::mojom::ClipboardHost> receiver);
-  void AddClipboardHost(uint32_t id);
+      uint32_t id,
+      mojo::PendingReceiver<blink::mojom::ClipboardHost>&& receiver);
+  void AddClipboardHost(uint32_t id, base::OnceClosure done_closure);
 
-  void TestBody() override {}
-
-  // The proto message describing the test actions to perform.
-  const content::fuzzing::clipboard_host::proto::Testcase& testcase_;
-
-  // Apply a reasonable upper-bound on testcase complexity to avoid timeouts.
-  const int max_action_count_ = 512;
-
-  // Apply a reasonable upper-bound on maximum size of action that we will
-  // deserialize. (This is deliberately slightly larger than max mojo message
-  // size)
-  const size_t max_action_size_ = 300 * 1024 * 1024;
-
-  // Count of total actions performed in this testcase.
-  int action_count_ = 0;
-
-  // The index of the next sequence of actions to execute.
-  int next_sequence_idx_ = 0;
-
+  content::mojolpm::RenderViewHostTestHarnessAdapter test_adapter_;
   content::TestRenderFrameHost* render_frame_host_ = nullptr;
 
   SEQUENCE_CHECKER(sequence_checker_);
 };
 
-ClipboardHostTestcase::ClipboardHostTestcase(
-    const content::fuzzing::clipboard_host::proto::Testcase& testcase)
-    : RenderViewHostTestHarness(
-          base::test::TaskEnvironment::TimeSource::MOCK_TIME,
-          base::test::TaskEnvironment::MainThreadType::DEFAULT,
-          base::test::TaskEnvironment::ThreadPoolExecutionMode::ASYNC,
-          base::test::TaskEnvironment::ThreadingMode::MULTIPLE_THREADS,
-          content::BrowserTaskEnvironment::REAL_IO_THREAD),
-      testcase_(testcase) {
-  SetUp();
+ClipboardHostTestcase::ClipboardHostTestcase(const ProtoTestcase& testcase)
+    : Testcase<ProtoTestcase, ProtoAction>(testcase) {
+  test_adapter_.SetUp();
 }
 
 ClipboardHostTestcase::~ClipboardHostTestcase() {
-  TearDown();
+  test_adapter_.TearDown();
 }
 
-bool ClipboardHostTestcase::IsFinished() {
-  return next_sequence_idx_ >= testcase_.sequence_indexes_size();
-}
-
-void ClipboardHostTestcase::NextAction() {
-  if (next_sequence_idx_ < testcase_.sequence_indexes_size()) {
-    auto sequence_idx = testcase_.sequence_indexes(next_sequence_idx_++);
-    const auto& sequence =
-        testcase_.sequences(sequence_idx % testcase_.sequences_size());
-    for (auto action_idx : sequence.action_indexes()) {
-      if (!testcase_.actions_size() || ++action_count_ > max_action_count_) {
-        return;
+void ClipboardHostTestcase::RunAction(const ProtoAction& action,
+                                      base::OnceClosure run_closure) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  const auto ThreadId_UI =
+      content::fuzzing::clipboard_host::proto::RunThreadAction_ThreadId_UI;
+  const auto ThreadId_IO =
+      content::fuzzing::clipboard_host::proto::RunThreadAction_ThreadId_IO;
+  switch (action.action_case()) {
+    case ProtoAction::kRunThread:
+      // These actions ensure that any tasks currently queued on the named
+      // thread have chance to run before the fuzzer continues.
+      //
+      // We don't provide any particular guarantees here; this does not mean
+      // that the named thread is idle, nor does it prevent any other threads
+      // from running (or the consequences of any resulting callbacks, for
+      // example).
+      if (action.run_thread().id() == ThreadId_UI) {
+        content::GetUIThreadTaskRunner({})->PostTaskAndReply(
+            FROM_HERE, base::DoNothing(), std::move(run_closure));
+      } else if (action.run_thread().id() == ThreadId_IO) {
+        content::GetIOThreadTaskRunner({})->PostTaskAndReply(
+            FROM_HERE, base::DoNothing(), std::move(run_closure));
       }
-      const auto& action =
-          testcase_.actions(action_idx % testcase_.actions_size());
-      if (action.ByteSizeLong() > max_action_size_) {
-        return;
-      }
-      switch (action.action_case()) {
-        case Action::kRunThread: {
-          if (action.run_thread().id()) {
-            base::RunLoop run_loop(base::RunLoop::Type::kNestableTasksAllowed);
-            content::GetUIThreadTaskRunner({})->PostTask(
-                FROM_HERE, run_loop.QuitClosure());
-            run_loop.Run();
-          } else {
-            base::RunLoop run_loop(base::RunLoop::Type::kNestableTasksAllowed);
-            content::GetIOThreadTaskRunner({})->PostTask(
-                FROM_HERE, run_loop.QuitClosure());
-            run_loop.Run();
-          }
-        } break;
-        case Action::kNewClipboardHost: {
-          AddClipboardHost(action.new_clipboard_host().id());
-        } break;
-        case Action::kClipboardHostRemoteAction: {
-          mojolpm::HandleRemoteAction(action.clipboard_host_remote_action());
-        } break;
-        case Action::ACTION_NOT_SET:
-          break;
-      }
-    }
+      return;
+    case ProtoAction::kNewClipboardHost:
+      AddClipboardHost(action.new_clipboard_host().id(),
+                       std::move(run_closure));
+      return;
+    case ProtoAction::kClipboardHostRemoteAction:
+      mojolpm::HandleRemoteAction(action.clipboard_host_remote_action());
+      break;
+    case ProtoAction::ACTION_NOT_SET:
+      break;
   }
+  GetFuzzerTaskRunner()->PostTask(FROM_HERE, std::move(run_closure));
 }
 
-void ClipboardHostTestcase::SetUp() {
-  RenderViewHostTestHarness::SetUp();
-  base::RunLoop run_loop;
+void ClipboardHostTestcase::SetUp(base::OnceClosure done_closure) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
 
-  content::GetUIThreadTaskRunner({})->PostTaskAndReply(
+  content::GetUIThreadTaskRunner({})->PostTask(
       FROM_HERE,
       base::BindOnce(&ClipboardHostTestcase::SetUpOnUIThread,
-                     base::Unretained(this)),
-      run_loop.QuitClosure());
-  run_loop.Run();
+                     base::Unretained(this), std::move(done_closure)));
 }
 
-void ClipboardHostTestcase::SetUpOnUIThread() {
-  render_frame_host_ = static_cast<content::TestWebContents*>(web_contents())
-                           ->GetPrimaryMainFrame();
+void ClipboardHostTestcase::SetUpOnUIThread(base::OnceClosure done_closure) {
+  render_frame_host_ =
+      static_cast<content::TestWebContents*>(test_adapter_.web_contents())
+          ->GetPrimaryMainFrame();
   render_frame_host_->InitializeRenderFrameIfNeeded();
+
+  GetFuzzerTaskRunner()->PostTask(FROM_HERE, std::move(done_closure));
 }
 
-void ClipboardHostTestcase::TearDown() {
-  base::RunLoop run_loop;
-  content::GetUIThreadTaskRunner({})->PostTaskAndReply(
+void ClipboardHostTestcase::TearDown(base::OnceClosure done_closure) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  content::GetUIThreadTaskRunner({})->PostTask(
       FROM_HERE,
       base::BindOnce(&ClipboardHostTestcase::TearDownOnUIThread,
-                     base::Unretained(this)),
-      run_loop.QuitClosure());
-  run_loop.Run();
-
-  RenderViewHostTestHarness::TearDown();
+                     base::Unretained(this), std::move(done_closure)));
 }
 
-void ClipboardHostTestcase::TearDownOnUIThread() {}
+void ClipboardHostTestcase::TearDownOnUIThread(base::OnceClosure done_closure) {
+  GetFuzzerTaskRunner()->PostTask(FROM_HERE, std::move(done_closure));
+}
 
 void ClipboardHostTestcase::AddClipboardHostImpl(
-    mojo::PendingReceiver<blink::mojom::ClipboardHost> receiver) {
+    uint32_t id,
+    mojo::PendingReceiver<blink::mojom::ClipboardHost>&& receiver) {
   content::ClipboardHostImpl::Create(render_frame_host_, std::move(receiver));
 }
 
-void ClipboardHostTestcase::AddClipboardHost(uint32_t id) {
-  mojo::Remote<blink::mojom::ClipboardHost> remote;
-  base::RunLoop run_loop(base::RunLoop::Type::kNestableTasksAllowed);
-  mojo::PendingReceiver<blink::mojom::ClipboardHost> receiver =
-      remote.BindNewPipeAndPassReceiver();
+static void AddClipboardHostInstance(
+    uint32_t id,
+    mojo::Remote<blink::mojom::ClipboardHost> remote,
+    base::OnceClosure run_closure) {
+  mojolpm::GetContext()->AddInstance(id, std::move(remote));
+  std::move(run_closure).Run();
+}
 
+void ClipboardHostTestcase::AddClipboardHost(uint32_t id,
+                                             base::OnceClosure run_closure) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  mojo::Remote<blink::mojom::ClipboardHost> remote;
+  auto receiver = remote.BindNewPipeAndPassReceiver();
   content::GetUIThreadTaskRunner({})->PostTaskAndReply(
       FROM_HERE,
       base::BindOnce(&ClipboardHostTestcase::AddClipboardHostImpl,
-                     base::Unretained(this), std::move(receiver)),
-      run_loop.QuitClosure());
-
-  run_loop.Run();
-
-  mojolpm::GetContext()->AddInstance(id, std::move(remote));
-}
-
-void NextAction(ClipboardHostTestcase* testcase,
-                base::RepeatingClosure quit_closure) {
-  if (!testcase->IsFinished()) {
-    testcase->NextAction();
-    GetFuzzerTaskRunner()->PostTask(
-        FROM_HERE, base::BindOnce(NextAction, base::Unretained(testcase),
-                                  std::move(quit_closure)));
-  } else {
-    GetFuzzerTaskRunner()->PostTask(FROM_HERE, std::move(quit_closure));
-  }
-}
-
-void RunTestcase(ClipboardHostTestcase* testcase) {
-  mojo::Message message;
-  auto dispatch_context =
-      std::make_unique<mojo::internal::MessageDispatchContext>(&message);
-
-  mojolpm::GetContext()->StartTestcase();
-
-  base::RunLoop fuzzer_run_loop(base::RunLoop::Type::kNestableTasksAllowed);
-  GetFuzzerTaskRunner()->PostTask(
-      FROM_HERE, base::BindOnce(NextAction, base::Unretained(testcase),
-                                fuzzer_run_loop.QuitClosure()));
-  fuzzer_run_loop.Run();
-
-  mojolpm::GetContext()->EndTestcase();
+                     base::Unretained(this), id, std::move(receiver)),
+      base::BindOnce(AddClipboardHostInstance, id, std::move(remote),
+                     std::move(run_closure)));
 }
 
 DEFINE_BINARY_PROTO_FUZZER(
@@ -239,11 +186,11 @@
 
   ClipboardHostTestcase testcase(proto_testcase);
 
-  base::RunLoop ui_run_loop(base::RunLoop::Type::kNestableTasksAllowed);
-
-  GetFuzzerTaskRunner()->PostTaskAndReply(
-      FROM_HERE, base::BindOnce(RunTestcase, base::Unretained(&testcase)),
-      ui_run_loop.QuitClosure());
-
-  ui_run_loop.Run();
+  base::RunLoop main_run_loop;
+  GetFuzzerTaskRunner()->PostTask(
+      FROM_HERE,
+      base::BindOnce(&mojolpm::RunTestcase<ClipboardHostTestcase>,
+                     base::Unretained(&testcase), GetFuzzerTaskRunner(),
+                     main_run_loop.QuitClosure()));
+  main_run_loop.Run();
 }
diff --git a/content/test/fuzzer/image_capture_mojolpm_fuzzer.cc b/content/test/fuzzer/image_capture_mojolpm_fuzzer.cc
new file mode 100644
index 0000000..e851ec06
--- /dev/null
+++ b/content/test/fuzzer/image_capture_mojolpm_fuzzer.cc
@@ -0,0 +1,228 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include <stdint.h>
+#include <cstddef>
+#include <utility>
+
+#include "base/bind.h"
+#include "base/callback_helpers.h"
+#include "base/no_destructor.h"
+#include "base/task/thread_pool/thread_pool_instance.h"
+#include "base/test/scoped_command_line.h"
+#include "content/browser/browser_main_loop.h"                 //nogncheck
+#include "content/browser/image_capture/image_capture_impl.h"  //nogncheck
+#include "content/browser/site_instance_impl.h"                //nogncheck
+#include "content/public/browser/site_instance.h"
+#include "content/public/common/content_client.h"
+#include "content/public/common/content_switches.h"
+#include "content/public/common/main_function_params.h"
+#include "content/public/test/mock_navigation_handle.h"
+#include "content/public/test/test_browser_context.h"
+#include "content/test/fuzzer/image_capture_mojolpm_fuzzer.pb.h"
+#include "content/test/fuzzer/mojolpm_fuzzer_support.h"
+#include "content/test/test_render_frame_host.h"
+#include "content/test/test_web_contents.h"
+#include "media/capture/mojom/image_capture.mojom-mojolpm.h"
+#include "mojo/public/cpp/bindings/pending_receiver.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
+#include "mojo/public/cpp/bindings/receiver.h"
+#include "mojo/public/cpp/bindings/remote.h"
+#include "third_party/abseil-cpp/absl/types/optional.h"
+#include "third_party/libprotobuf-mutator/src/src/libfuzzer/libfuzzer_macro.h"
+
+const char* kCmdline[] = {"image_capture_mojolpm_fuzzer", nullptr};
+
+content::mojolpm::FuzzerEnvironment& GetEnvironment() {
+  static base::NoDestructor<content::mojolpm::FuzzerEnvironment> environment(
+      1, kCmdline);
+  return *environment;
+}
+
+scoped_refptr<base::SequencedTaskRunner> GetFuzzerTaskRunner() {
+  return GetEnvironment().fuzzer_task_runner();
+}
+
+class ImageCaptureTestcase
+    : public mojolpm::Testcase<content::fuzzing::image_capture::proto::Testcase,
+                               content::fuzzing::image_capture::proto::Action> {
+ public:
+  using ProtoTestcase = content::fuzzing::image_capture::proto::Testcase;
+  using ProtoAction = content::fuzzing::image_capture::proto::Action;
+
+  explicit ImageCaptureTestcase(const ProtoTestcase& testcase);
+  ~ImageCaptureTestcase();
+
+  void SetUp(base::OnceClosure done_closure) override;
+  void TearDown(base::OnceClosure done_closure) override;
+  void RunAction(const ProtoAction& action,
+                 base::OnceClosure run_closure) override;
+
+ private:
+  void SetUpOnUIThread(base::OnceClosure done_closure);
+  void SetUpOnIOThread(base::OnceClosure done_closure);
+  void TearDownOnUIThread(base::OnceClosure done_closure);
+  void TearDownOnIOThread(base::OnceClosure done_closure);
+
+  void AddImageCapture(uint32_t id, base::OnceClosure done_closure);
+  void AddImageCaptureImpl(
+      mojo::PendingReceiver<media::mojom::ImageCapture> receiver);
+
+  // Prerequisite state.
+  content::mojolpm::RenderViewHostTestHarnessAdapter test_adapter_;
+  content::TestRenderFrameHost* render_frame_host_ = nullptr;
+};
+
+ImageCaptureTestcase::ImageCaptureTestcase(const ProtoTestcase& testcase)
+    : Testcase<ProtoTestcase, ProtoAction>(testcase) {
+  test_adapter_.SetUp();
+
+  base::test::ScopedCommandLine scoped_command_line;
+  content::MainFunctionParams main_function_params(
+      scoped_command_line.GetProcessCommandLine());
+  content::BrowserMainLoop browser_main_loop_(
+      std::move(main_function_params),
+      std::make_unique<base::ThreadPoolInstance::ScopedExecutionFence>());
+  browser_main_loop_.Init();
+}
+
+ImageCaptureTestcase::~ImageCaptureTestcase() {
+  test_adapter_.TearDown();
+}
+
+void ImageCaptureTestcase::RunAction(const ProtoAction& action,
+                                     base::OnceClosure run_closure) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+
+  const auto ThreadId_UI =
+      content::fuzzing::image_capture::proto::RunThreadAction_ThreadId_UI;
+  const auto ThreadId_IO =
+      content::fuzzing::image_capture::proto::RunThreadAction_ThreadId_IO;
+
+  switch (action.action_case()) {
+    case ProtoAction::kRunThread:
+      // These actions ensure that any tasks currently queued on the named
+      // thread have chance to run before the fuzzer continues.
+      //
+      // We don't provide any particular guarantees here; this does not mean
+      // that the named thread is idle, nor does it prevent any other threads
+      // from running (or the consequences of any resulting callbacks, for
+      // example).
+      if (action.run_thread().id() == ThreadId_UI) {
+        content::GetUIThreadTaskRunner({})->PostTaskAndReply(
+            FROM_HERE, base::DoNothing(), std::move(run_closure));
+      } else if (action.run_thread().id() == ThreadId_IO) {
+        content::GetIOThreadTaskRunner({})->PostTaskAndReply(
+            FROM_HERE, base::DoNothing(), std::move(run_closure));
+      }
+      return;
+
+    case ProtoAction::kNewImageCapture:
+      AddImageCapture(action.new_image_capture().id(), std::move(run_closure));
+      return;
+
+    case ProtoAction::kImageCaptureRemoteAction:
+      mojolpm::HandleRemoteAction(action.image_capture_remote_action());
+      break;
+
+    case ProtoAction::ACTION_NOT_SET:
+      break;
+  }
+
+  GetFuzzerTaskRunner()->PostTask(FROM_HERE, std::move(run_closure));
+}
+
+void ImageCaptureTestcase::SetUp(base::OnceClosure done_closure) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+
+  content::GetIOThreadTaskRunner({})->PostTask(
+      FROM_HERE,
+      base::BindOnce(&ImageCaptureTestcase::SetUpOnIOThread,
+                     base::Unretained(this), std::move(done_closure)));
+}
+
+void ImageCaptureTestcase::SetUpOnIOThread(base::OnceClosure done_closure) {
+  content::GetUIThreadTaskRunner({})->PostTask(
+      FROM_HERE,
+      base::BindOnce(&ImageCaptureTestcase::SetUpOnUIThread,
+                     base::Unretained(this), std::move(done_closure)));
+}
+
+void ImageCaptureTestcase::SetUpOnUIThread(base::OnceClosure done_closure) {
+  render_frame_host_ =
+      static_cast<content::TestWebContents*>(test_adapter_.web_contents())
+          ->GetPrimaryMainFrame();
+  render_frame_host_->InitializeRenderFrameIfNeeded();
+
+  GetFuzzerTaskRunner()->PostTask(FROM_HERE, std::move(done_closure));
+}
+
+void ImageCaptureTestcase::TearDown(base::OnceClosure done_closure) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+
+  content::GetUIThreadTaskRunner({})->PostTask(
+      FROM_HERE,
+      base::BindOnce(&ImageCaptureTestcase::TearDownOnUIThread,
+                     base::Unretained(this), std::move(done_closure)));
+}
+
+void ImageCaptureTestcase::TearDownOnUIThread(base::OnceClosure done_closure) {
+  content::GetIOThreadTaskRunner({})->PostTask(
+      FROM_HERE,
+      base::BindOnce(&ImageCaptureTestcase::TearDownOnIOThread,
+                     base::Unretained(this), std::move(done_closure)));
+}
+
+void ImageCaptureTestcase::TearDownOnIOThread(base::OnceClosure done_closure) {
+  GetFuzzerTaskRunner()->PostTask(FROM_HERE, std::move(done_closure));
+}
+
+void ImageCaptureTestcase::AddImageCaptureImpl(
+    mojo::PendingReceiver<media::mojom::ImageCapture> receiver) {
+  content::ImageCaptureImpl::Create(render_frame_host_, std::move(receiver));
+}
+
+static void AddImageCaptureInstance(
+    uint32_t id,
+    mojo::Remote<media::mojom::ImageCapture> remote,
+    base::OnceClosure run_closure) {
+  mojolpm::GetContext()->AddInstance(id, std::move(remote));
+  std::move(run_closure).Run();
+}
+
+void ImageCaptureTestcase::AddImageCapture(uint32_t id,
+                                           base::OnceClosure run_closure) {
+  DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+  mojo::Remote<media::mojom::ImageCapture> remote;
+  auto receiver = remote.BindNewPipeAndPassReceiver();
+
+  content::GetUIThreadTaskRunner({})->PostTaskAndReply(
+      FROM_HERE,
+      base::BindOnce(&ImageCaptureTestcase::AddImageCaptureImpl,
+                     base::Unretained(this), std::move(receiver)),
+      base::BindOnce(AddImageCaptureInstance, id, std::move(remote),
+                     std::move(run_closure)));
+}
+
+DEFINE_BINARY_PROTO_FUZZER(
+    const content::fuzzing::image_capture::proto::Testcase& proto_testcase) {
+  if (!proto_testcase.actions_size() || !proto_testcase.sequences_size() ||
+      !proto_testcase.sequence_indexes_size()) {
+    return;
+  }
+
+  GetEnvironment();
+
+  ImageCaptureTestcase testcase(proto_testcase);
+
+  base::RunLoop main_run_loop;
+
+  GetFuzzerTaskRunner()->PostTask(
+      FROM_HERE,
+      base::BindOnce(&mojolpm::RunTestcase<ImageCaptureTestcase>,
+                     base::Unretained(&testcase), GetFuzzerTaskRunner(),
+                     main_run_loop.QuitClosure()));
+
+  main_run_loop.Run();
+}
diff --git a/content/test/fuzzer/image_capture_mojolpm_fuzzer.proto b/content/test/fuzzer/image_capture_mojolpm_fuzzer.proto
new file mode 100644
index 0000000..23adef7
--- /dev/null
+++ b/content/test/fuzzer/image_capture_mojolpm_fuzzer.proto
@@ -0,0 +1,51 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Message format for the MojoLPM fuzzer for the ImageCapture interface.
+
+syntax = "proto2";
+
+package content.fuzzing.image_capture.proto;
+
+import "media/capture/mojom/image_capture.mojom.mojolpm.proto";
+
+// Bind a new ImageCapture remote
+message NewImageCaptureAction {
+  required uint32 id = 1;
+}
+
+// Run the specific sequence for (an indeterminate) period. This is not
+// intended to create a specific ordering, but to allow the fuzzer to delay a
+// later task until previous tasks have completed.
+message RunThreadAction {
+  enum ThreadId {
+    IO = 0;
+    UI = 1;
+  }
+
+  required ThreadId id = 1;
+}
+
+// Actions that can be performed by the fuzzer.
+message Action {
+  oneof action {
+    NewImageCaptureAction new_image_capture = 1;
+    RunThreadAction run_thread = 2;
+    mojolpm.media.mojom.ImageCapture.RemoteAction image_capture_remote_action =
+        3;
+  }
+}
+
+// Sequence provides a level of indirection which allows Testcase to compactly
+// express repeated sequences of actions.
+message Sequence {
+  repeated uint32 action_indexes = 1 [packed = true];
+}
+
+// Testcase is the top-level message type interpreted by the fuzzer.
+message Testcase {
+  repeated Action actions = 1;
+  repeated Sequence sequences = 2;
+  repeated uint32 sequence_indexes = 3 [packed = true];
+}
diff --git a/docs/asan.md b/docs/asan.md
index 6394dd11..79d17507 100644
--- a/docs/asan.md
+++ b/docs/asan.md
@@ -141,7 +141,7 @@
 `NSS_DISABLE_ARENA_FREE_LIST=1` and `NSS_DISABLE_UNLOAD=1` are required as well.
 
 When filing a bug found by AddressSanitizer, please add a label
-`Stability-AddressSanitizer`.
+`Stability-Memory-AddressSanitizer`.
 
 ## ASan runtime options
 
diff --git a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
index d7dcd90..9fa230c 100644
--- a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
+++ b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
@@ -144,7 +144,8 @@
       owner_type == blink::FrameOwnerElementType::kObject;
   DCHECK_NE(MSG_ROUTING_NONE, embedder_widget_routing_id_);
   delegate_->RecordLoadMetric(
-      /* in_main_frame */ !GetEmbedderFrame()->GetParent(), mime_type_);
+      /*is_full_page=*/!GetEmbedderFrame()->GetParentOrOuterDocument(),
+      mime_type_);
 }
 
 void MimeHandlerViewGuest::SetBeforeUnloadController(
diff --git a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest_delegate.cc b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest_delegate.cc
index 41b022f..9725a58 100644
--- a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest_delegate.cc
+++ b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest_delegate.cc
@@ -13,7 +13,7 @@
 }
 
 void MimeHandlerViewGuestDelegate::RecordLoadMetric(
-    bool in_main_frame,
+    bool is_full_page,
     const std::string& mime_type) {}
 
 }  // namespace extensions
diff --git a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest_delegate.h b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest_delegate.h
index d97b054a..3aaeab0b 100644
--- a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest_delegate.h
+++ b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest_delegate.h
@@ -33,7 +33,7 @@
   virtual bool HandleContextMenu(content::RenderFrameHost& render_frame_host,
                                  const content::ContextMenuParams& params);
   // Called when MimeHandlerViewGuest has an associated embedder frame.
-  virtual void RecordLoadMetric(bool in_main_frame,
+  virtual void RecordLoadMetric(bool is_full_page,
                                 const std::string& mime_type);
 };
 
diff --git a/ios/chrome/app/strings/resources/ios_strings_kk.xtb b/ios/chrome/app/strings/resources/ios_strings_kk.xtb
index d92dad28..ab4aed2 100644
--- a/ios/chrome/app/strings/resources/ios_strings_kk.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_kk.xtb
@@ -324,6 +324,7 @@
 <translation id="369349502275246497">Құпия сөздерді сақтауды ұсыну</translation>
 <translation id="3709582977625132201">Оқылмаған деп белгілеу</translation>
 <translation id="371230970611282515">Қауіпті іс-шараларды болжайды және хабарлайды.</translation>
+<translation id="37207012422556617">Танымал іздеу сұраулары</translation>
 <translation id="3740397331642243698">Енгізілген URL сілтемелерін Google Chrome браузерінде инкогнито режимінде ашады.</translation>
 <translation id="3762232513783804601">iPad үшін әзірленген</translation>
 <translation id="3771033907050503522">Инкогнито қойындылары</translation>
diff --git a/ios/chrome/browser/app_launcher/app_launcher_abuse_detector.h b/ios/chrome/browser/app_launcher/app_launcher_abuse_detector.h
index dc8f96e..7dc798f 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_abuse_detector.h
+++ b/ios/chrome/browser/app_launcher/app_launcher_abuse_detector.h
@@ -32,19 +32,19 @@
 // original source URL, and the scheme of the external Application URL.
 @interface AppLauncherAbuseDetector : NSObject
 
-// Updates the state for external application |gURL| and |sourcePageURL| with a
+// Updates the state for external application `URL` and `sourcePageURL` with a
 // new app launch request.
-- (void)didRequestLaunchExternalAppURL:(const GURL&)gURL
+- (void)didRequestLaunchExternalAppURL:(const GURL&)URL
                      fromSourcePageURL:(const GURL&)sourcePageURL;
 
 // Returns the launching recommendation based on the current state for given
-// application |gURL| and |sourcePageURL|.
-- (ExternalAppLaunchPolicy)launchPolicyForURL:(const GURL&)gURL
+// application `URL` and `sourcePageURL`.
+- (ExternalAppLaunchPolicy)launchPolicyForURL:(const GURL&)URL
                             fromSourcePageURL:(const GURL&)sourcePageURL;
 
-// Sets the state of the application |gURL| and |sourcePageURL| as blocked for
+// Sets the state of the application `URL` and `sourcePageURL` as blocked for
 // the remaining lifetime of this object.
-- (void)blockLaunchingAppURL:(const GURL&)gURL
+- (void)blockLaunchingAppURL:(const GURL&)URL
            fromSourcePageURL:(const GURL&)sourcePageURL;
 @end
 
diff --git a/ios/chrome/browser/app_launcher/app_launcher_abuse_detector.mm b/ios/chrome/browser/app_launcher/app_launcher_abuse_detector.mm
index 8203f19..d3231504 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_abuse_detector.mm
+++ b/ios/chrome/browser/app_launcher/app_launcher_abuse_detector.mm
@@ -20,8 +20,8 @@
 // original source URL, and the scheme of the external Application URL.
 @property(nonatomic, strong)
     NSMutableDictionary<NSString*, AppLaunchingState*>* appLaunchingStates;
-// Generates key for |appURL| and |sourceURL| to be used to retrieve state from
-// |appLaunchingStates|.
+// Generates key for `appURL` and `sourceURL` to be used to retrieve state from
+// `appLaunchingStates`.
 + (NSString*)stateKeyForAppURL:(const GURL&)appURL
                      sourceURL:(const GURL&)sourceURL;
 @end
@@ -45,17 +45,17 @@
   return self;
 }
 
-- (void)didRequestLaunchExternalAppURL:(const GURL&)gURL
+- (void)didRequestLaunchExternalAppURL:(const GURL&)URL
                      fromSourcePageURL:(const GURL&)sourcePageURL {
-  NSString* key = [[self class] stateKeyForAppURL:gURL sourceURL:sourcePageURL];
+  NSString* key = [[self class] stateKeyForAppURL:URL sourceURL:sourcePageURL];
   if (!_appLaunchingStates[key])
     _appLaunchingStates[key] = [[AppLaunchingState alloc] init];
   [_appLaunchingStates[key] updateWithLaunchRequest];
 }
 
-- (ExternalAppLaunchPolicy)launchPolicyForURL:(const GURL&)gURL
+- (ExternalAppLaunchPolicy)launchPolicyForURL:(const GURL&)URL
                             fromSourcePageURL:(const GURL&)sourcePageURL {
-  NSString* key = [[self class] stateKeyForAppURL:gURL sourceURL:sourcePageURL];
+  NSString* key = [[self class] stateKeyForAppURL:URL sourceURL:sourcePageURL];
   // Don't block apps that are not registered with the abuse detector.
   if (!_appLaunchingStates[key])
     return ExternalAppLaunchPolicyAllow;
@@ -71,9 +71,9 @@
   return ExternalAppLaunchPolicyAllow;
 }
 
-- (void)blockLaunchingAppURL:(const GURL&)gURL
+- (void)blockLaunchingAppURL:(const GURL&)URL
            fromSourcePageURL:(const GURL&)sourcePageURL {
-  NSString* key = [[self class] stateKeyForAppURL:gURL sourceURL:sourcePageURL];
+  NSString* key = [[self class] stateKeyForAppURL:URL sourceURL:sourcePageURL];
   [_appLaunchingStates[key] setAppLaunchingBlocked:YES];
 }
 @end
diff --git a/ios/chrome/browser/app_launcher/app_launcher_browser_agent.h b/ios/chrome/browser/app_launcher/app_launcher_browser_agent.h
index 43fca0f..bab4255 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_browser_agent.h
+++ b/ios/chrome/browser/app_launcher/app_launcher_browser_agent.h
@@ -39,7 +39,7 @@
         base::OnceCallback<void(bool)> completion) override;
 
     // Returns the OverlayRequestQueue to use for app launch dialogs from
-    // |web_state|.  Returns the queue for |web_state|'s opener if |web_state|
+    // `web_state`.  Returns the queue for `web_state`'s opener if `web_state`
     // is expected to be closed before the app launcher dialog can be shown.
     OverlayRequestQueue* GetQueueForAppLaunchDialog(web::WebState* web_state);
 
diff --git a/ios/chrome/browser/app_launcher/app_launcher_browser_agent.mm b/ios/chrome/browser/app_launcher/app_launcher_browser_agent.mm
index 299fe2babd..1804858 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_browser_agent.mm
+++ b/ios/chrome/browser/app_launcher/app_launcher_browser_agent.mm
@@ -35,7 +35,7 @@
 
 namespace {
 // Records histogram metric on the user's response when prompted to open another
-// application. |user_accepted| should be YES if the user accepted the prompt to
+// application. `user_accepted` should be YES if the user accepted the prompt to
 // launch another application. This call is extracted to a separate function to
 // reduce macro code expansion.
 void RecordUserAcceptedAppLaunchMetric(BOOL user_accepted) {
@@ -58,7 +58,7 @@
   std::move(completion).Run(user_accepted);
 }
 
-// Launches the app for |url| if |user_accepted| is true.
+// Launches the app for `url` if `user_accepted` is true.
 void LaunchExternalApp(const GURL url, bool user_accepted = true) {
   if (!user_accepted)
     return;
diff --git a/ios/chrome/browser/app_launcher/app_launcher_browser_agent_unittest.mm b/ios/chrome/browser/app_launcher/app_launcher_browser_agent_unittest.mm
index e380acd..ee080c9b 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_browser_agent_unittest.mm
+++ b/ios/chrome/browser/app_launcher/app_launcher_browser_agent_unittest.mm
@@ -55,11 +55,11 @@
     return AppLauncherBrowserAgent::FromBrowser(browser_.get());
   }
 
-  // Adds a WebState to |browser_| using |opener|.  The WebState's session
-  // history is populated with |nav_item_count| items.  Returns the added
+  // Adds a WebState to `browser_` using `opener`.  The WebState's session
+  // history is populated with `nav_item_count` items.  Returns the added
   // WebState.
   web::WebState* AddWebState(web::WebState* opener, size_t nav_item_count) {
-    // Create the NavigationManager and populate it with |nav_item_count| items.
+    // Create the NavigationManager and populate it with `nav_item_count` items.
     auto navigation_manager = std::make_unique<web::FakeNavigationManager>();
     for (size_t i = 0; i < nav_item_count; ++i) {
       navigation_manager->AddItem(GURL("http://www.chromium.test"),
@@ -83,9 +83,9 @@
     return web_state;
   }
 
-  // Returns whether the front OverlayRequest for |web_state|'s queue is
+  // Returns whether the front OverlayRequest for `web_state`'s queue is
   // configured with an AppLaunchConfirmationRequest with
-  // |is_repeated_request|.
+  // `is_repeated_request`.
   bool IsShowingDialog(web::WebState* web_state, bool is_repeated_request) {
     OverlayRequest* request = OverlayRequestQueue::FromWebState(
                                   web_state, OverlayModality::kWebContentArea)
@@ -116,7 +116,7 @@
   AppLauncherTabHelper::FromWebState(web_state)->RequestToLaunchApp(
       kAppStoreUrl, kSourcePageUrl, /*link_transition=*/false);
 
-  // Verify that an app launch overlay request was added to |web_state|'s queue.
+  // Verify that an app launch overlay request was added to `web_state`'s queue.
   EXPECT_TRUE(IsShowingDialog(web_state, /*is_repeated_request=*/false));
 
   // Add a response allowing the navigation.
@@ -191,7 +191,7 @@
       kAppUrl, kSourcePageUrl, /*link_transition=*/false);
 
   // Verify that an app launch overlay request for a repeated request was added
-  // to |web_state|'s queue.
+  // to `web_state`'s queue.
   EXPECT_TRUE(IsShowingDialog(web_state, /*is_repeated_request=*/true));
 
   // Add a response allowing the navigation.
@@ -223,7 +223,7 @@
   AppLauncherTabHelper::FromWebState(web_state)->RequestToLaunchApp(
       kAppUrl, kSourcePageUrl, /*link_transition=*/false);
 
-  // Verify that an app launch overlay request was added to |web_state|'s queue.
+  // Verify that an app launch overlay request was added to `web_state`'s queue.
   EXPECT_TRUE(IsShowingDialog(web_state, /*is_repeated_request=*/false));
 
   // Add a response allowing the navigation.
@@ -256,6 +256,6 @@
   AppLauncherTabHelper::FromWebState(web_state)->RequestToLaunchApp(
       kAppStoreUrl, kSourcePageUrl, /*link_transition=*/false);
 
-  // Verify that an app launch overlay request was added to |web_state|'s queue.
+  // Verify that an app launch overlay request was added to `web_state`'s queue.
   EXPECT_TRUE(IsShowingDialog(opener, /*is_repeated_request=*/false));
 }
diff --git a/ios/chrome/browser/app_launcher/app_launcher_tab_helper.h b/ios/chrome/browser/app_launcher/app_launcher_tab_helper.h
index eed957f9..deefe74 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_tab_helper.h
+++ b/ios/chrome/browser/app_launcher/app_launcher_tab_helper.h
@@ -23,22 +23,22 @@
 
   ~AppLauncherTabHelper() override;
 
-  // Creates a tab helper for |web_state| that uses |abuse_detector| to make
+  // Creates a tab helper for `web_state` that uses `abuse_detector` to make
   // navigation policy decisions.
   static void CreateForWebState(web::WebState* web_state,
                                 AppLauncherAbuseDetector* abuse_detector =
                                     [[AppLauncherAbuseDetector alloc] init]);
 
-  // Returns true, if the |url| has a scheme for an external application
+  // Returns true, if the `url` has a scheme for an external application
   // (eg. twitter:// , calshow://).
   static bool IsAppUrl(const GURL& url);
 
   // Sets the delegate.
   void SetDelegate(AppLauncherTabHelperDelegate* delegate);
 
-  // Requests to open the application with |url|.
-  // The method checks if the application for |url| has been opened repeatedly
-  // by the |source_page_url| page in a short time frame, in that case a prompt
+  // Requests to open the application with `url`.
+  // The method checks if the application for `url` has been opened repeatedly
+  // by the `source_page_url` page in a short time frame, in that case a prompt
   // will appear to the user with an option to block the application from
   // launching. Then the method also checks for user interaction and for schemes
   // that require special handling (eg. facetime, mailto) and may present the
@@ -56,7 +56,7 @@
  private:
   friend class web::WebStateUserData<AppLauncherTabHelper>;
 
-  // Constructor for AppLauncherTabHelper. |abuse_detector| provides policy for
+  // Constructor for AppLauncherTabHelper. `abuse_detector` provides policy for
   // launching apps.
   AppLauncherTabHelper(web::WebState* web_state,
                        AppLauncherAbuseDetector* abuse_detector);
@@ -73,7 +73,7 @@
   // Used to launch apps and present UI.
   AppLauncherTabHelperDelegate* delegate_ = nullptr;
 
-  // Returns whether there is a prompt shown by |RequestToOpenUrl| or not.
+  // Returns whether there is a prompt shown by `RequestToOpenUrl` or not.
   bool is_prompt_active_ = false;
 
   // Must be last member to ensure it is destroyed last.
diff --git a/ios/chrome/browser/app_launcher/app_launcher_tab_helper.mm b/ios/chrome/browser/app_launcher/app_launcher_tab_helper.mm
index c97f98a..9e3b48c 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_tab_helper.mm
+++ b/ios/chrome/browser/app_launcher/app_launcher_tab_helper.mm
@@ -51,7 +51,7 @@
   return true;
 }
 
-// Returns True if |app_url| has a Chrome bundle URL scheme.
+// Returns True if `app_url` has a Chrome bundle URL scheme.
 bool HasChromeAppScheme(const GURL& app_url) {
   NSArray* chrome_schemes =
       [[ChromeAppConstants sharedInstance] allBundleURLSchemes];
@@ -148,7 +148,7 @@
               return;
             if (user_allowed && weak_this->delegate()) {
               // By confirming that user wants to launch the application, there
-              // is no need to check for |link_tapped|.
+              // is no need to check for `link_tapped`.
               weak_this->delegate()->LaunchAppForTabHelper(
                   this, copied_url,
                   /*link_transition=*/true);
@@ -216,7 +216,7 @@
   }
 
   // If this is a Universal 2nd Factor (U2F) call, the origin needs to be
-  // checked to make sure it's secure and then update the |request_url| with
+  // checked to make sure it's secure and then update the `request_url` with
   // the generated x-callback GURL based on x-callback-url specs.
   if (request_url.SchemeIs("u2f")) {
     GURL origin = web_state_->GetNavigationManager()
@@ -225,7 +225,7 @@
                       .DeprecatedGetOriginAsURL();
     U2FTabHelper* u2f_helper = U2FTabHelper::FromWebState(web_state_);
     request_url = u2f_helper->GetXCallbackUrl(request_url, origin);
-    // If the URL was rejected by the U2F handler, |request_url| will be empty.
+    // If the URL was rejected by the U2F handler, `request_url` will be empty.
     if (!request_url.is_valid()) {
       return std::move(callback).Run(
           web::WebStatePolicyDecider::PolicyDecision::Cancel());
@@ -245,7 +245,7 @@
 
   if (!is_link_transition && original_pending_url.is_valid()) {
     // At this stage the navigation will be canceled in all cases. If this
-    // was a redirection, the |source_url| may not have been reported to
+    // was a redirection, the `source_url` may not have been reported to
     // ReadingListWebStateObserver. Report it to mark as read if needed.
     ReadingListModel* model =
         ReadingListModelFactory::GetForBrowserState(browser_state);
diff --git a/ios/chrome/browser/app_launcher/app_launcher_tab_helper_delegate.h b/ios/chrome/browser/app_launcher/app_launcher_tab_helper_delegate.h
index 5effa12..755ac2d 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_tab_helper_delegate.h
+++ b/ios/chrome/browser/app_launcher/app_launcher_tab_helper_delegate.h
@@ -16,15 +16,15 @@
   AppLauncherTabHelperDelegate() = default;
   virtual ~AppLauncherTabHelperDelegate() = default;
 
-  // Launches application that has |URL| if possible (optionally after
+  // Launches application that has `url` if possible (optionally after
   // confirming via dialog).
   virtual void LaunchAppForTabHelper(AppLauncherTabHelper* tab_helper,
                                      const GURL& url,
                                      bool link_transition) = 0;
 
   // Alerts the user that there have been repeated attempts to launch
-  // the application. |completionHandler| is called with the user's
-  // response on whether to launch the application.
+  // the application. `completion` is called with the user's response on whether
+  // to launch the application.
   virtual void ShowRepeatedAppLaunchAlert(
       AppLauncherTabHelper* tab_helper,
       base::OnceCallback<void(bool)> completion) = 0;
diff --git a/ios/chrome/browser/app_launcher/app_launcher_tab_helper_unittest.mm b/ios/chrome/browser/app_launcher/app_launcher_tab_helper_unittest.mm
index 89cac3da..09bf405 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_tab_helper_unittest.mm
+++ b/ios/chrome/browser/app_launcher/app_launcher_tab_helper_unittest.mm
@@ -69,7 +69,7 @@
   // Number of times the repeated launches alert has been shown.
   size_t alert_shown_count_ = 0;
   // Simulates the user tapping the accept button when prompted via
-  // |-appLauncherTabHelper:showAlertOfRepeatedLaunchesWithCompletionHandler|.
+  // `-appLauncherTabHelper:showAlertOfRepeatedLaunchesWithCompletionHandler`.
   bool should_accept_prompt_ = false;
 };
 // A fake NavigationManager to be used by the WebState object for the
@@ -152,7 +152,7 @@
     is_reading_list_initialized_ = true;
   }
 
-  // Returns true if the |expected_read_status| matches the read status for any
+  // Returns true if the `expected_read_status` matches the read status for any
   // non empty source URL based on the transition type and the app policy.
   bool TestReadingListUpdate(bool is_app_blocked,
                              bool is_link_transition,
diff --git a/ios/chrome/browser/app_launcher/app_launcher_util.h b/ios/chrome/browser/app_launcher/app_launcher_util.h
index ab8519d..afe41066 100644
--- a/ios/chrome/browser/app_launcher/app_launcher_util.h
+++ b/ios/chrome/browser/app_launcher/app_launcher_util.h
@@ -12,7 +12,7 @@
 // Returns a set of NSStrings that are URL schemes for iTunes Stores.
 NSSet<NSString*>* GetItmsSchemes();
 
-// Returns whether |url| has an app store scheme.
+// Returns whether `url` has an app store scheme.
 bool UrlHasAppStoreScheme(const GURL& url);
 
 #endif  // IOS_CHROME_BROWSER_APP_LAUNCHER_APP_LAUNCHER_UTIL_H_
diff --git a/ios/chrome/browser/app_launcher/app_launching_state.h b/ios/chrome/browser/app_launcher/app_launching_state.h
index b8bf704..3353b100 100644
--- a/ios/chrome/browser/app_launcher/app_launching_state.h
+++ b/ios/chrome/browser/app_launcher/app_launching_state.h
@@ -15,7 +15,7 @@
 // represented by timestamp of the last time the app was launched, and the
 // number of consecutive launches. Launches are considered consecutive when the
 // time difference between them are less than
-// |kDefaultMaxSecondsBetweenConsecutiveExternalAppLaunches|.
+// `kDefaultMaxSecondsBetweenConsecutiveExternalAppLaunches`.
 // The AppLaunchingState doesn't know the source URL nor the destination
 // URL, the AppLauncherAbuseDetector object will have an
 // AppLaunchingState object for  each sourceURL/Application Scheme pair.
diff --git a/ios/chrome/browser/app_launcher/app_launching_state_unittest.mm b/ios/chrome/browser/app_launcher/app_launching_state_unittest.mm
index 6d9c564..e242c11 100644
--- a/ios/chrome/browser/app_launcher/app_launching_state_unittest.mm
+++ b/ios/chrome/browser/app_launcher/app_launching_state_unittest.mm
@@ -32,7 +32,7 @@
   EXPECT_EQ(2, state.consecutiveLaunchesCount);
   [state updateWithLaunchRequest];
   EXPECT_EQ(3, state.consecutiveLaunchesCount);
-  // Wait for more than |maxSecondsBetweenLaunches|.
+  // Wait for more than `maxSecondsBetweenLaunches`.
   base::test::ios::SpinRunLoopWithMinDelay(
       base::Seconds(maxSecondsBetweenLaunches + 0.1));
   // consecutiveLaunchesCount should reset.
diff --git a/ios/chrome/browser/app_launcher/fake_app_launcher_abuse_detector.h b/ios/chrome/browser/app_launcher/fake_app_launcher_abuse_detector.h
index f937ec57..4fc4c5a8 100644
--- a/ios/chrome/browser/app_launcher/fake_app_launcher_abuse_detector.h
+++ b/ios/chrome/browser/app_launcher/fake_app_launcher_abuse_detector.h
@@ -10,7 +10,7 @@
 // An AppLauncherAbuseDetector for testing.
 @interface FakeAppLauncherAbuseDetector : AppLauncherAbuseDetector
 
-// The policy returned by |-launchPolicyforURL:fromSourcePageURL:|.  Default
+// The policy returned by `-launchPolicyforURL:fromSourcePageURL:`.  Default
 // value is ExternalAppLaunchPolicyAllow.
 @property(nonatomic, assign) ExternalAppLaunchPolicy policy;
 
diff --git a/ios/chrome/browser/metrics/ios_chrome_metrics_service_accessor.h b/ios/chrome/browser/metrics/ios_chrome_metrics_service_accessor.h
index d0fcad1..6bcffd1 100644
--- a/ios/chrome/browser/metrics/ios_chrome_metrics_service_accessor.h
+++ b/ios/chrome/browser/metrics/ios_chrome_metrics_service_accessor.h
@@ -19,6 +19,10 @@
 class CrashesDOMHandler;
 }
 
+namespace segmentation_platform {
+class IOSFieldTrialRegisterImpl;
+}
+
 // 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.
@@ -40,8 +44,9 @@
 
   friend class ApplicationBreadcrumbsLogger;
   friend class CrashesDOMHandler;
-  friend class OptimizationGuideService;
   friend class IOSChromeMainParts;
+  friend class OptimizationGuideService;
+  friend class segmentation_platform::IOSFieldTrialRegisterImpl;
 
   FRIEND_TEST_ALL_PREFIXES(IOSChromeMetricsServiceAccessorTest,
                            MetricsReportingEnabled);
diff --git a/ios/chrome/browser/segmentation_platform/BUILD.gn b/ios/chrome/browser/segmentation_platform/BUILD.gn
index 20b16a65..960a4b2 100644
--- a/ios/chrome/browser/segmentation_platform/BUILD.gn
+++ b/ios/chrome/browser/segmentation_platform/BUILD.gn
@@ -10,6 +10,8 @@
     "model_provider_factory_impl.mm",
     "otr_web_state_observer.h",
     "otr_web_state_observer.mm",
+    "segmentation_platform_config.h",
+    "segmentation_platform_config.mm",
     "segmentation_platform_service_factory.h",
     "segmentation_platform_service_factory.mm",
   ]
@@ -31,6 +33,7 @@
     "//ios/chrome/browser/browser_state",
     "//ios/chrome/browser/history",
     "//ios/chrome/browser/main:public",
+    "//ios/chrome/browser/metrics:accessor",
     "//ios/chrome/browser/optimization_guide",
     "//ios/chrome/browser/web_state_list",
   ]
diff --git a/ios/chrome/browser/segmentation_platform/model_provider_factory_impl.mm b/ios/chrome/browser/segmentation_platform/model_provider_factory_impl.mm
index afa5d86b..b474d1e 100644
--- a/ios/chrome/browser/segmentation_platform/model_provider_factory_impl.mm
+++ b/ios/chrome/browser/segmentation_platform/model_provider_factory_impl.mm
@@ -8,6 +8,7 @@
 #include "components/segmentation_platform/internal/execution/optimization_guide/optimization_guide_segmentation_model_provider.h"
 #include "components/segmentation_platform/public/model_provider.h"
 #include "components/segmentation_platform/public/proto/segmentation_platform.pb.h"
+#include "ios/chrome/browser/segmentation_platform/segmentation_platform_config.h"
 
 #if !defined(__has_feature) || !__has_feature(objc_arc)
 #error "This file requires ARC support."
@@ -58,7 +59,7 @@
 
 std::unique_ptr<ModelProvider> ModelProviderFactoryImpl::CreateDefaultProvider(
     proto::SegmentId segment_id) {
-  return nullptr;
+  return GetDefaultModelProvider(segment_id);
 }
 
 }  // namespace segmentation_platform
diff --git a/ios/chrome/browser/segmentation_platform/segmentation_platform_config.h b/ios/chrome/browser/segmentation_platform/segmentation_platform_config.h
new file mode 100644
index 0000000..6cd2e0c1
--- /dev/null
+++ b/ios/chrome/browser/segmentation_platform/segmentation_platform_config.h
@@ -0,0 +1,45 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef IOS_CHROME_BROWSER_SEGMENTATION_PLATFORM_SEGMENTATION_PLATFORM_CONFIG_H_
+#define IOS_CHROME_BROWSER_SEGMENTATION_PLATFORM_SEGMENTATION_PLATFORM_CONFIG_H_
+
+#include <memory>
+#include <vector>
+
+#include "components/segmentation_platform/public/field_trial_register.h"
+#include "components/segmentation_platform/public/proto/segmentation_platform.pb.h"
+
+namespace segmentation_platform {
+struct Config;
+class ModelProvider;
+
+// Returns a Config created from the finch feature params.
+std::vector<std::unique_ptr<Config>> GetSegmentationPlatformConfig();
+
+// Returns a default model provider for the `target`.
+std::unique_ptr<ModelProvider> GetDefaultModelProvider(proto::SegmentId target);
+
+// Implementation of FieldTrialRegister that uses synthetic field trials to
+// record segmentation groups.
+class IOSFieldTrialRegisterImpl : public FieldTrialRegister {
+ public:
+  IOSFieldTrialRegisterImpl();
+  ~IOSFieldTrialRegisterImpl() override;
+  IOSFieldTrialRegisterImpl(const IOSFieldTrialRegisterImpl&) = delete;
+  IOSFieldTrialRegisterImpl& operator=(const IOSFieldTrialRegisterImpl&) =
+      delete;
+
+  // FieldTrialRegister:
+  void RegisterFieldTrial(base::StringPiece trial_name,
+                          base::StringPiece group_name) override;
+
+  void RegisterSubsegmentFieldTrialIfNeeded(base::StringPiece trial_name,
+                                            proto::SegmentId segment_id,
+                                            int subsegment_rank) override;
+};
+
+}  // namespace segmentation_platform
+
+#endif  // IOS_CHROME_BROWSER_SEGMENTATION_PLATFORM_SEGMENTATION_PLATFORM_CONFIG_H_
diff --git a/ios/chrome/browser/segmentation_platform/segmentation_platform_config.mm b/ios/chrome/browser/segmentation_platform/segmentation_platform_config.mm
new file mode 100644
index 0000000..6a76ed1
--- /dev/null
+++ b/ios/chrome/browser/segmentation_platform/segmentation_platform_config.mm
@@ -0,0 +1,89 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "ios/chrome/browser/segmentation_platform/segmentation_platform_config.h"
+
+#include <memory>
+
+#include "base/feature_list.h"
+#include "base/metrics/field_trial_params.h"
+#include "base/time/time.h"
+#include "components/segmentation_platform/public/config.h"
+#include "components/segmentation_platform/public/features.h"
+#include "components/segmentation_platform/public/model_provider.h"
+#include "components/segmentation_platform/public/proto/segmentation_platform.pb.h"
+#include "ios/chrome/browser/metrics/ios_chrome_metrics_service_accessor.h"
+
+#if !defined(__has_feature) || !__has_feature(objc_arc)
+#error "This file requires ARC support."
+#endif
+
+namespace segmentation_platform {
+
+namespace {
+
+using ::segmentation_platform::proto::SegmentId;
+
+constexpr int kFeedUserSegmentSelectionTTLDays = 14;
+constexpr int kFeedUserSegmentUnknownSelectionTTLDays = 14;
+
+std::unique_ptr<Config> GetConfigForFeedSegments() {
+  auto config = std::make_unique<Config>();
+  config->segmentation_key = kFeedUserSegmentationKey;
+  config->segment_ids = {
+      SegmentId::OPTIMIZATION_TARGET_SEGMENTATION_FEED_USER,
+  };
+  config->segment_selection_ttl =
+      base::Days(base::GetFieldTrialParamByFeatureAsInt(
+          features::kSegmentationPlatformFeedSegmentFeature,
+          "segment_selection_ttl_days", kFeedUserSegmentSelectionTTLDays));
+  config->unknown_selection_ttl =
+      base::Days(base::GetFieldTrialParamByFeatureAsInt(
+          features::kSegmentationPlatformFeedSegmentFeature,
+          "unknown_selection_ttl_days",
+          kFeedUserSegmentUnknownSelectionTTLDays));
+  return config;
+}
+
+}  // namespace
+
+using proto::SegmentId;
+
+std::vector<std::unique_ptr<Config>> GetSegmentationPlatformConfig() {
+  std::vector<std::unique_ptr<Config>> configs;
+  if (base::FeatureList::IsEnabled(
+          features::kSegmentationPlatformFeedSegmentFeature)) {
+    configs.emplace_back(GetConfigForFeedSegments());
+  }
+
+  // Add new configs here.
+
+  return configs;
+}
+
+std::unique_ptr<ModelProvider> GetDefaultModelProvider(
+    proto::SegmentId target) {
+  // Add default models here.
+  return nullptr;
+}
+
+IOSFieldTrialRegisterImpl::IOSFieldTrialRegisterImpl() = default;
+IOSFieldTrialRegisterImpl::~IOSFieldTrialRegisterImpl() = default;
+
+void IOSFieldTrialRegisterImpl::RegisterFieldTrial(
+    base::StringPiece trial_name,
+    base::StringPiece group_name) {
+  // See this comment for limitations of using this API:
+  // chrome/browser/segmentation_platform/segmentation_platform_config.cc.
+  IOSChromeMetricsServiceAccessor::RegisterSyntheticFieldTrial(
+      std::string(trial_name), std::string(group_name),
+      variations::SyntheticTrialAnnotationMode::kCurrentLog);
+}
+
+void IOSFieldTrialRegisterImpl::RegisterSubsegmentFieldTrialIfNeeded(
+    base::StringPiece trial_name,
+    SegmentId segment_id,
+    int subsegment_rank) {}
+
+}  // namespace segmentation_platform
diff --git a/ios/chrome/browser/segmentation_platform/segmentation_platform_service_factory.mm b/ios/chrome/browser/segmentation_platform/segmentation_platform_service_factory.mm
index 4c292b0a..879fe8f 100644
--- a/ios/chrome/browser/segmentation_platform/segmentation_platform_service_factory.mm
+++ b/ios/chrome/browser/segmentation_platform/segmentation_platform_service_factory.mm
@@ -16,6 +16,7 @@
 #include "components/segmentation_platform/internal/dummy_ukm_data_manager.h"
 #include "components/segmentation_platform/internal/segmentation_platform_service_impl.h"
 #include "components/segmentation_platform/internal/ukm_data_manager.h"
+#include "components/segmentation_platform/public/config.h"
 #include "components/segmentation_platform/public/features.h"
 #include "ios/chrome/browser/application_context.h"
 #include "ios/chrome/browser/browser_state/browser_state_otr_helper.h"
@@ -25,6 +26,7 @@
 #include "ios/chrome/browser/optimization_guide/optimization_guide_service_factory.h"
 #include "ios/chrome/browser/segmentation_platform/model_provider_factory_impl.h"
 #include "ios/chrome/browser/segmentation_platform/otr_web_state_observer.h"
+#include "ios/chrome/browser/segmentation_platform/segmentation_platform_config.h"
 
 #if !defined(__has_feature) || !__has_feature(objc_arc)
 #error "This file requires ARC support."
@@ -93,9 +95,9 @@
       optimization_guide, params->task_runner);
   params->ukm_data_manager = GetUkmDataManager();
   params->profile_prefs = chrome_browser_state->GetPrefs();
-  // TODO(crbug.com/1333641): params->configs should be initialized.
-  // TODO(crbug.com/1333641): params->field_trial_register should be
-  // initialized.
+
+  params->configs = GetSegmentationPlatformConfig();
+  params->field_trial_register = std::make_unique<IOSFieldTrialRegisterImpl>();
 
   auto service =
       std::make_unique<SegmentationPlatformServiceImpl>(std::move(params));
diff --git a/ios/chrome/browser/ssl/BUILD.gn b/ios/chrome/browser/ssl/BUILD.gn
index a0aee31..d85ea8c 100644
--- a/ios/chrome/browser/ssl/BUILD.gn
+++ b/ios/chrome/browser/ssl/BUILD.gn
@@ -9,7 +9,6 @@
     "captive_portal_metrics.h",
     "captive_portal_tab_helper.h",
     "captive_portal_tab_helper.mm",
-    "captive_portal_tab_helper_delegate.h",
     "ios_captive_portal_blocking_page.h",
     "ios_captive_portal_blocking_page.mm",
     "ios_ssl_blocking_page.h",
@@ -34,6 +33,8 @@
     "//ios/chrome/browser/safe_browsing",
     "//ios/chrome/browser/tabs",
     "//ios/chrome/browser/ui/util",
+    "//ios/chrome/browser/web",
+    "//ios/chrome/browser/web_state_list:agents",
     "//ios/components/security_interstitials",
     "//ios/public/provider/chrome/browser",
     "//ios/web/common",
diff --git a/ios/chrome/browser/ssl/captive_portal_tab_helper.h b/ios/chrome/browser/ssl/captive_portal_tab_helper.h
index 22d6352..2958eef 100644
--- a/ios/chrome/browser/ssl/captive_portal_tab_helper.h
+++ b/ios/chrome/browser/ssl/captive_portal_tab_helper.h
@@ -5,10 +5,9 @@
 #ifndef IOS_CHROME_BROWSER_SSL_CAPTIVE_PORTAL_TAB_HELPER_H_
 #define IOS_CHROME_BROWSER_SSL_CAPTIVE_PORTAL_TAB_HELPER_H_
 
+#import "ios/chrome/browser/web_state_list/tab_insertion_browser_agent.h"
 #import "ios/web/public/web_state_user_data.h"
 
-@protocol CaptivePortalTabHelperDelegate;
-
 namespace web {
 class WebState;
 }
@@ -22,22 +21,17 @@
 
   ~CaptivePortalTabHelper() override;
 
-  // Creates a Tab Helper and attaches it to |web_state|. The |delegate| is not
-  // retained by the CaptivePortalTabHelper and must not be nil.
-  static void CreateForWebState(web::WebState* web_state,
-                                id<CaptivePortalTabHelperDelegate> delegate);
-
   // Displays the Captive Portal Login page at |landing_url|.
   void DisplayCaptivePortalLoginPage(GURL landing_url);
 
+  void SetTabInsertionBrowserAgent(TabInsertionBrowserAgent* insertionAgent);
+
  private:
   friend class web::WebStateUserData<CaptivePortalTabHelper>;
 
-  CaptivePortalTabHelper(id<CaptivePortalTabHelperDelegate> delegate);
+  CaptivePortalTabHelper(web::WebState* web_state);
 
-  // The delegate to notify when the user performs an action in response to the
-  // captive portal detector state.
-  __weak id<CaptivePortalTabHelperDelegate> delegate_;
+  TabInsertionBrowserAgent* insertionAgent_;
 
   WEB_STATE_USER_DATA_KEY_DECL();
 };
diff --git a/ios/chrome/browser/ssl/captive_portal_tab_helper.mm b/ios/chrome/browser/ssl/captive_portal_tab_helper.mm
index f588d49..cb79543 100644
--- a/ios/chrome/browser/ssl/captive_portal_tab_helper.mm
+++ b/ios/chrome/browser/ssl/captive_portal_tab_helper.mm
@@ -7,7 +7,7 @@
 #include <memory>
 
 #include "base/memory/ptr_util.h"
-#import "ios/chrome/browser/ssl/captive_portal_tab_helper_delegate.h"
+#import "ios/chrome/browser/web/web_navigation_util.h"
 #include "ios/web/public/browser_state.h"
 #import "ios/web/public/web_state.h"
 
@@ -15,25 +15,21 @@
 #error "This file requires ARC support."
 #endif
 
-// static
-void CaptivePortalTabHelper::CreateForWebState(
-    web::WebState* web_state,
-    id<CaptivePortalTabHelperDelegate> delegate) {
-  DCHECK(web_state);
-  if (!FromWebState(web_state)) {
-    web_state->SetUserData(
-        UserDataKey(), base::WrapUnique(new CaptivePortalTabHelper(delegate)));
-  }
-}
+CaptivePortalTabHelper::CaptivePortalTabHelper(web::WebState* web_state) {}
 
-CaptivePortalTabHelper::CaptivePortalTabHelper(
-    id<CaptivePortalTabHelperDelegate> delegate)
-    : delegate_(delegate) {
-  DCHECK(delegate);
+void CaptivePortalTabHelper::SetTabInsertionBrowserAgent(
+    TabInsertionBrowserAgent* insertionAgent) {
+  insertionAgent_ = insertionAgent;
 }
 
 void CaptivePortalTabHelper::DisplayCaptivePortalLoginPage(GURL landing_url) {
-  [delegate_ captivePortalTabHelper:this connectWithLandingURL:landing_url];
+  DCHECK(insertionAgent_);
+  insertionAgent_->InsertWebState(
+      web_navigation_util::CreateWebLoadParams(
+          landing_url, ui::PAGE_TRANSITION_TYPED, nullptr),
+      nil, false, TabInsertion::kPositionAutomatically,
+      /*in_background=*/false, /*inherit_opener=*/false,
+      /*should_show_start_surface=*/false, /*filtered_param_count=*/0);
 }
 
 CaptivePortalTabHelper::~CaptivePortalTabHelper() = default;
diff --git a/ios/chrome/browser/ssl/captive_portal_tab_helper_delegate.h b/ios/chrome/browser/ssl/captive_portal_tab_helper_delegate.h
deleted file mode 100644
index eb83f9a..0000000
--- a/ios/chrome/browser/ssl/captive_portal_tab_helper_delegate.h
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef IOS_CHROME_BROWSER_SSL_CAPTIVE_PORTAL_TAB_HELPER_DELEGATE_H_
-#define IOS_CHROME_BROWSER_SSL_CAPTIVE_PORTAL_TAB_HELPER_DELEGATE_H_
-
-#import <Foundation/Foundation.h>
-
-class CaptivePortalTabHelper;
-class GURL;
-
-// Delegate for CaptivePortalTabHelper.
-@protocol CaptivePortalTabHelperDelegate <NSObject>
-
-// Notifies the delegate the user selected the connect button on the captive
-// portal blocking page and that the page with the specified |landingURL| should
-// be displayed to the user.
-- (void)captivePortalTabHelper:(CaptivePortalTabHelper*)tabHelper
-         connectWithLandingURL:(const GURL&)landingURL;
-
-@end
-
-#endif  // IOS_CHROME_BROWSER_SSL_CAPTIVE_PORTAL_TAB_HELPER_DELEGATE_H_
diff --git a/ios/chrome/browser/ssl/ios_ssl_error_handler_unittest.mm b/ios/chrome/browser/ssl/ios_ssl_error_handler_unittest.mm
index 7b225ab4..46750725 100644
--- a/ios/chrome/browser/ssl/ios_ssl_error_handler_unittest.mm
+++ b/ios/chrome/browser/ssl/ios_ssl_error_handler_unittest.mm
@@ -9,7 +9,6 @@
 #import "base/test/ios/wait_util.h"
 #include "ios/chrome/browser/browser_state/test_chrome_browser_state.h"
 #import "ios/chrome/browser/ssl/captive_portal_tab_helper.h"
-#import "ios/chrome/browser/ssl/captive_portal_tab_helper_delegate.h"
 #import "ios/components/security_interstitials/ios_blocking_page_tab_helper.h"
 #import "ios/web/public/test/fakes/fake_navigation_manager.h"
 #import "ios/web/public/test/fakes/fake_web_state.h"
@@ -106,14 +105,10 @@
   void SetUp() override {
     IOSSSLErrorHandlerWithoutTabHelpersTest::SetUp();
 
-    id captive_portal_tab_helper_delegate = [OCMockObject
-        mockForProtocol:@protocol(CaptivePortalTabHelperDelegate)];
-
     security_interstitials::IOSBlockingPageTabHelper::CreateForWebState(
         web_state());
 
-    CaptivePortalTabHelper::CreateForWebState(
-        web_state(), captive_portal_tab_helper_delegate);
+    CaptivePortalTabHelper::CreateForWebState(web_state());
     ASSERT_TRUE(cert());
 
     std::unique_ptr<web::FakeNavigationManager> fake_navigation_manager =
diff --git a/ios/chrome/browser/tabs/tab_helper_util.mm b/ios/chrome/browser/tabs/tab_helper_util.mm
index 87004c5..c09bbcdb 100644
--- a/ios/chrome/browser/tabs/tab_helper_util.mm
+++ b/ios/chrome/browser/tabs/tab_helper_util.mm
@@ -70,6 +70,7 @@
 #import "ios/chrome/browser/search_engines/search_engine_tab_helper.h"
 #import "ios/chrome/browser/sessions/ios_chrome_session_tab_helper.h"
 #import "ios/chrome/browser/snapshots/snapshot_tab_helper.h"
+#import "ios/chrome/browser/ssl/captive_portal_tab_helper.h"
 #import "ios/chrome/browser/store_kit/store_kit_tab_helper.h"
 #import "ios/chrome/browser/sync/ios_chrome_synced_tab_delegate.h"
 #import "ios/chrome/browser/translate/chrome_ios_translate_client.h"
@@ -254,4 +255,6 @@
   if (IsWebChannelsEnabled()) {
     FollowTabHelper::CreateForWebState(web_state);
   }
+
+  CaptivePortalTabHelper::CreateForWebState(web_state);
 }
diff --git a/ios/chrome/browser/ui/browser_view/browser_coordinator.mm b/ios/chrome/browser/ui/browser_view/browser_coordinator.mm
index 775dec3..47b8d53 100644
--- a/ios/chrome/browser/ui/browser_view/browser_coordinator.mm
+++ b/ios/chrome/browser/ui/browser_view/browser_coordinator.mm
@@ -32,6 +32,7 @@
 #import "ios/chrome/browser/prerender/prerender_service_factory.h"
 #import "ios/chrome/browser/signin/account_consistency_browser_agent.h"
 #import "ios/chrome/browser/signin/account_consistency_service_factory.h"
+#import "ios/chrome/browser/ssl/captive_portal_tab_helper.h"
 #import "ios/chrome/browser/store_kit/store_kit_coordinator.h"
 #import "ios/chrome/browser/store_kit/store_kit_tab_helper.h"
 #import "ios/chrome/browser/sync/sync_error_browser_agent.h"
@@ -133,6 +134,7 @@
 #import "ios/chrome/browser/web/repost_form_tab_helper_delegate.h"
 #import "ios/chrome/browser/web/web_navigation_browser_agent.h"
 #import "ios/chrome/browser/web/web_state_delegate_browser_agent.h"
+#import "ios/chrome/browser/web_state_list/tab_insertion_browser_agent.h"
 #import "ios/chrome/browser/web_state_list/view_source_browser_agent.h"
 #import "ios/chrome/browser/web_state_list/web_state_list.h"
 #import "ios/chrome/browser/web_state_list/web_state_list_observer_bridge.h"
@@ -1551,6 +1553,13 @@
     FollowTabHelper::FromWebState(webState)->set_follow_iph_presenter(
         self.followIPHCoordinator);
   }
+
+  if (CaptivePortalTabHelper::FromWebState(webState)) {
+    TabInsertionBrowserAgent* insertionAgent =
+        TabInsertionBrowserAgent::FromBrowser(self.browser);
+    CaptivePortalTabHelper::FromWebState(webState)->SetTabInsertionBrowserAgent(
+        insertionAgent);
+  }
 }
 
 // Uninstalls delegates for `webState`.
@@ -1574,6 +1583,11 @@
   if (FollowTabHelper::FromWebState(webState)) {
     FollowTabHelper::FromWebState(webState)->set_follow_iph_presenter(nil);
   }
+
+  if (CaptivePortalTabHelper::FromWebState(webState)) {
+    CaptivePortalTabHelper::FromWebState(webState)->SetTabInsertionBrowserAgent(
+        nil);
+  }
 }
 
 #pragma mark - PasswordBreachCommands
diff --git a/ios/chrome/browser/ui/browser_view/browser_view_controller.mm b/ios/chrome/browser/ui/browser_view/browser_view_controller.mm
index 1948851..980a13a 100644
--- a/ios/chrome/browser/ui/browser_view/browser_view_controller.mm
+++ b/ios/chrome/browser/ui/browser_view/browser_view_controller.mm
@@ -47,8 +47,6 @@
 #import "ios/chrome/browser/signin/authentication_service.h"
 #import "ios/chrome/browser/signin/authentication_service_factory.h"
 #import "ios/chrome/browser/snapshots/snapshot_tab_helper.h"
-#import "ios/chrome/browser/ssl/captive_portal_tab_helper.h"
-#import "ios/chrome/browser/ssl/captive_portal_tab_helper_delegate.h"
 #import "ios/chrome/browser/tabs/tab_title_util.h"
 #import "ios/chrome/browser/ui/authentication/re_signin_infobar_delegate.h"
 #import "ios/chrome/browser/ui/bookmarks/bookmark_interaction_controller.h"
@@ -247,8 +245,7 @@
 #pragma mark - BVC
 
 // Note other delegates defined in the Delegates category header.
-@interface BrowserViewController () <CaptivePortalTabHelperDelegate,
-                                     CRWWebStateObserver,
+@interface BrowserViewController () <CRWWebStateObserver,
                                      FindBarPresentationDelegate,
                                      FullscreenUIElement,
                                      InfobarPositioner,
@@ -2388,9 +2385,6 @@
   DCHECK(!_prerenderService ||
          !_prerenderService->IsWebStatePrerendered(webState));
 
-  // TODO(crbug.com/1272473): Remove CaptivePortalTabHelper from the BVC.
-  CaptivePortalTabHelper::CreateForWebState(webState, self);
-
   NewTabPageTabHelper::FromWebState(webState)->SetDelegate(self);
 }
 
@@ -4164,22 +4158,6 @@
   return nil;
 }
 
-#pragma mark - CaptivePortalTabHelperDelegate
-// TODO(crbug.com/1272473) : Factor CaptivePortaTabHelperDelegate of
-// the BVC. This logic can be handled inside the tab helper.
-
-- (void)captivePortalTabHelper:(CaptivePortalTabHelper*)tabHelper
-         connectWithLandingURL:(const GURL&)landingURL {
-  TabInsertionBrowserAgent* insertionAgent =
-      TabInsertionBrowserAgent::FromBrowser(self.browser);
-  insertionAgent->InsertWebState(
-      web_navigation_util::CreateWebLoadParams(
-          landingURL, ui::PAGE_TRANSITION_TYPED, nullptr),
-      nil, false, self.browser->GetWebStateList()->count(),
-      /*in_background=*/false, /*inherit_opener=*/false,
-      /*should_show_start_surface=*/false, /*filtered_param_count=*/0);
-}
-
 #pragma mark - PageInfoPresentation
 
 - (void)presentPageInfoView:(UIView*)pageInfoView {
diff --git a/ios/chrome/browser/ui/first_run/default_browser/default_browser_screen_coordinator.h b/ios/chrome/browser/ui/first_run/default_browser/default_browser_screen_coordinator.h
index ce5ecadb..0fb1f8f 100644
--- a/ios/chrome/browser/ui/first_run/default_browser/default_browser_screen_coordinator.h
+++ b/ios/chrome/browser/ui/first_run/default_browser/default_browser_screen_coordinator.h
@@ -12,8 +12,8 @@
 // Coordinator to present the default browser screen.
 @interface DefaultBrowserScreenCoordinator : ChromeCoordinator
 
-// Initiates a DefaultBrowserCoordinator with |navigationController|,
-// |browser| and |delegate|.
+// Initiates a DefaultBrowserCoordinator with `navigationController`,
+// `browser` and `delegate`.
 - (instancetype)initWithBaseNavigationController:
                     (UINavigationController*)navigationController
                                          browser:(Browser*)browser
diff --git a/ios/chrome/browser/ui/first_run/first_run_app_interface.h b/ios/chrome/browser/ui/first_run/first_run_app_interface.h
index 453f46e..99c10dd3 100644
--- a/ios/chrome/browser/ui/first_run/first_run_app_interface.h
+++ b/ios/chrome/browser/ui/first_run/first_run_app_interface.h
@@ -12,7 +12,7 @@
 // test code.
 @interface FirstRunAppInterface : NSObject
 
-// Resets the UMA collection enabled pref to |enabled|.
+// Resets the UMA collection enabled pref to `enabled`.
 + (void)setUMACollectionEnabled:(BOOL)enabled;
 
 // Returns whether UMA collection is enabled.
diff --git a/ios/chrome/browser/ui/first_run/first_run_coordinator.h b/ios/chrome/browser/ui/first_run/first_run_coordinator.h
index 33b79df..5cfbfbba 100644
--- a/ios/chrome/browser/ui/first_run/first_run_coordinator.h
+++ b/ios/chrome/browser/ui/first_run/first_run_coordinator.h
@@ -24,8 +24,8 @@
 @interface FirstRunCoordinator : ChromeCoordinator
 
 // Initiate the coordinator.
-// |browser| used for authentication. It must not be off the record (incognito).
-// |screenProvider| helps decide which screen to show.
+// `browser` used for authentication. It must not be off the record (incognito).
+// `screenProvider` helps decide which screen to show.
 - (instancetype)initWithBaseViewController:(UIViewController*)viewController
                                    browser:(Browser*)browser
                             screenProvider:(ScreenProvider*)screenProvider
diff --git a/ios/chrome/browser/ui/first_run/first_run_coordinator.mm b/ios/chrome/browser/ui/first_run/first_run_coordinator.mm
index 11038d30e..a19a5ac 100644
--- a/ios/chrome/browser/ui/first_run/first_run_coordinator.mm
+++ b/ios/chrome/browser/ui/first_run/first_run_coordinator.mm
@@ -100,7 +100,7 @@
 
 #pragma mark - Helper
 
-// Presents the screen of certain |type|.
+// Presents the screen of certain `type`.
 - (void)presentScreen:(ScreenType)type {
   // If no more screen need to be present, call delegate to stop presenting
   // screens.
@@ -112,7 +112,7 @@
   [self.childCoordinator start];
 }
 
-// Creates a screen coordinator according to |type|.
+// Creates a screen coordinator according to `type`.
 - (ChromeCoordinator*)createChildCoordinatorWithScreenType:(ScreenType)type {
   switch (type) {
     case kWelcomeAndConsent:
diff --git a/ios/chrome/browser/ui/first_run/first_run_egtest.mm b/ios/chrome/browser/ui/first_run/first_run_egtest.mm
index 54eef5b..50ef8e01 100644
--- a/ios/chrome/browser/ui/first_run/first_run_egtest.mm
+++ b/ios/chrome/browser/ui/first_run/first_run_egtest.mm
@@ -212,7 +212,7 @@
       assertWithMatcher:grey_sufficientlyVisible()];
 }
 
-// Scrolls down to |elementMatcher| in the scrollable content of the first run
+// Scrolls down to `elementMatcher` in the scrollable content of the first run
 // screen.
 - (void)scrollToElementAndAssertVisibility:(id<GREYMatcher>)elementMatcher {
   id<GREYMatcher> scrollView = grey_accessibilityID(kScrollViewIdentifier);
@@ -608,7 +608,7 @@
   FakeChromeIdentity* fakeIdentity = [FakeChromeIdentity fakeIdentity1];
   [SigninEarlGrey addFakeIdentity:fakeIdentity];
 
-  // Check that the title of the primary button updates for |fakeIdentity|.
+  // Check that the title of the primary button updates for `fakeIdentity`.
   [[EarlGrey selectElementWithMatcher:GetYesImInButton()]
       performAction:grey_tap()];
 
@@ -634,7 +634,7 @@
   [self scrollToElementAndAssertVisibility:identityButton];
   [[EarlGrey selectElementWithMatcher:identityButton] performAction:grey_tap()];
 
-  // Check that |fakeIdentity2| is displayed.
+  // Check that `fakeIdentity2` is displayed.
   [self scrollToElementAndAssertVisibility:IdentityCellMatcherForEmail(
                                                fakeIdentity2.userEmail)];
   // Check that 'Add Account' is displayed.
@@ -642,12 +642,12 @@
             grey_accessibilityLabel(l10n_util::GetNSString(
                 IDS_IOS_ACCOUNT_IDENTITY_CHOOSER_ADD_ACCOUNT))];
 
-  // Select |fakeIdentity2|.
+  // Select `fakeIdentity2`.
   [[EarlGrey selectElementWithMatcher:IdentityCellMatcherForEmail(
                                           fakeIdentity2.userEmail)]
       performAction:grey_tap()];
 
-  // Check that the title of the primary button updates for |fakeIdentity2|.
+  // Check that the title of the primary button updates for `fakeIdentity2`.
   [self scrollToElementAndAssertVisibility:GetYesImInButton()];
 }
 
diff --git a/ios/chrome/browser/ui/first_run/fre_field_trial.cc b/ios/chrome/browser/ui/first_run/fre_field_trial.cc
index f2bc458..a0e3dc16 100644
--- a/ios/chrome/browser/ui/first_run/fre_field_trial.cc
+++ b/ios/chrome/browser/ui/first_run/fre_field_trial.cc
@@ -258,7 +258,7 @@
       /*default_group_name=*/kDefaultGroup, low_entropy_provider);
 
   // Finalize the group choice and activate the trial - similar to a variation
-  // config that's marked with |starts_active| true. This is required for
+  // config that's marked with `starts_active` true. This is required for
   // studies that register variation ids, so they don't reveal extra information
   // beyond the low-entropy source.
   const std::string& group_name = trial->group_name();
diff --git a/ios/chrome/browser/ui/first_run/interruptible_chrome_coordinator.h b/ios/chrome/browser/ui/first_run/interruptible_chrome_coordinator.h
index a5aac394..d3e0196 100644
--- a/ios/chrome/browser/ui/first_run/interruptible_chrome_coordinator.h
+++ b/ios/chrome/browser/ui/first_run/interruptible_chrome_coordinator.h
@@ -18,10 +18,10 @@
 @interface InterruptibleChromeCoordinator : ChromeCoordinator
 
 // Interrupt the coordinator to immediately tear down the views it manages.
-// Dependending on |action|, the interruption may be done asynchronously
+// Dependending on `action`, the interruption may be done asynchronously
 // with/without an animation, or without dismissing the views when the
-// interruption is for shutdown (e.g., tearing down the scene). |completion| is
-// called when the interruption is done. Simply calls |completion| if the
+// interruption is for shutdown (e.g., tearing down the scene). `completion` is
+// called when the interruption is done. Simply calls `completion` if the
 // method is not overridden.
 - (void)interruptWithAction:(SigninCoordinatorInterruptAction)action
                  completion:(ProceduralBlock)completion;
diff --git a/ios/chrome/browser/ui/first_run/ios_first_run_field_trials.h b/ios/chrome/browser/ui/first_run/ios_first_run_field_trials.h
index d4a5891..fa3bddf5 100644
--- a/ios/chrome/browser/ui/first_run/ios_first_run_field_trials.h
+++ b/ios/chrome/browser/ui/first_run/ios_first_run_field_trials.h
@@ -37,7 +37,7 @@
 // at first run must be pre-defined in client code.
 class FirstRunFieldTrialConfig {
  public:
-  // Initializes with |trial_name| as the name of the FieldTrial.
+  // Initializes with `trial_name` as the name of the FieldTrial.
   FirstRunFieldTrialConfig(const std::string& trial_name);
 
   FirstRunFieldTrialConfig(const FirstRunFieldTrialConfig&) = delete;
@@ -46,13 +46,13 @@
   ~FirstRunFieldTrialConfig();
 
   // Creates and returns a one-time randomized FieldTrial with
-  // |default_group_name| with groups configured with Google Variation IDs.
+  // `default_group_name` with groups configured with Google Variation IDs.
   scoped_refptr<base::FieldTrial> CreateOneTimeRandomizedTrial(
       const std::string& default_group_name,
       const base::FieldTrial::EntropyProvider& low_entropy_provider);
 
-  // Adds a new FieldTrial group of |name| with a probability of |percentage|.
-  // |variation| defines a server-side variation configuration (non-trigger).
+  // Adds a new FieldTrial group of `name` with a probability of `percentage`.
+  // `variation` defines a server-side variation configuration (non-trigger).
   void AddGroup(const std::string& name,
                 variations::VariationID variation,
                 base::FieldTrial::Probability percentage);
diff --git a/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_consumer.h b/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_consumer.h
index 9f672eef..9df495dd 100644
--- a/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_consumer.h
+++ b/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_consumer.h
@@ -10,8 +10,8 @@
 // Handles sign-in screen UI updates.
 @protocol LegacySigninScreenConsumer <NSObject>
 
-// Sets the |userName|, |email|, |givenName| and |avatar| of the selected
-// identity. The |userName| and |givenName| can be nil. Notifies the UI that an
+// Sets the `userName`, `email`, `givenName` and `avatar` of the selected
+// identity. The `userName` and `givenName` can be nil. Notifies the UI that an
 // identity is available.
 - (void)setSelectedIdentityUserName:(NSString*)userName
                               email:(NSString*)email
diff --git a/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_coordinator.h b/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_coordinator.h
index fc3412d..29d6194 100644
--- a/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_coordinator.h
+++ b/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_coordinator.h
@@ -13,9 +13,9 @@
 // Need to remove this class when crbug.com/1290848 is fixed.
 @interface LegacySigninScreenCoordinator : InterruptibleChromeCoordinator
 
-// Initiates a LegacySigninScreenCoordinator with |navigationController|,
-// |browser| and |delegate|.
-// The |delegate| parameter is for handling the transfer between screens.
+// Initiates a LegacySigninScreenCoordinator with `navigationController`,
+// `browser` and `delegate`.
+// The `delegate` parameter is for handling the transfer between screens.
 - (instancetype)initWithBaseNavigationController:
                     (UINavigationController*)navigationController
                                          browser:(Browser*)browser
diff --git a/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_coordinator.mm b/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_coordinator.mm
index 14dff43..7dc52f14 100644
--- a/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_coordinator.mm
+++ b/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_coordinator.mm
@@ -276,7 +276,7 @@
 
 #pragma mark - Private
 
-// Dismisses the Signed Out modal if it is still present and |skipScreens|.
+// Dismisses the Signed Out modal if it is still present and `skipScreens`.
 - (void)dismissSignedOutModalAndSkipScreens:(BOOL)skipScreens {
   [self.enterprisePromptCoordinator stop];
   self.enterprisePromptCoordinator = nil;
@@ -295,7 +295,7 @@
 }
 
 // Completes the presentation of the screen, recording the metrics and notifying
-// the delegate to skip the rest of the FRE if |skipRemainingScreens| is YES, or
+// the delegate to skip the rest of the FRE if `skipRemainingScreens` is YES, or
 // to continue the FRE.
 - (void)finishPresentingAndSkipRemainingScreens:(BOOL)skipRemainingScreens {
   if (self.firstRun) {
diff --git a/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_view_controller.mm b/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_view_controller.mm
index 176517e8..b9fe2b8 100644
--- a/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_view_controller.mm
+++ b/ios/chrome/browser/ui/first_run/legacy_signin/legacy_signin_screen_view_controller.mm
@@ -80,7 +80,7 @@
         l10n_util::GetNSString(IDS_IOS_FIRST_RUN_SIGNIN_SUBTITLE_MANAGED);
   }
   if (!self.primaryActionString) {
-    // |primaryActionString| could already be set using the consumer methods.
+    // `primaryActionString` could already be set using the consumer methods.
     self.primaryActionString =
         l10n_util::GetNSString(IDS_IOS_FIRST_RUN_SIGNIN_SIGN_IN_ACTION);
   }
@@ -259,13 +259,13 @@
 
 #pragma mark - Private
 
-// Callback for |identityControl|.
+// Callback for `identityControl`.
 - (void)identityButtonControlTapped:(id)sender forEvent:(UIEvent*)event {
   UITouch* touch = event.allTouches.anyObject;
   [self.delegate showAccountPickerFromPoint:[touch locationInView:nil]];
 }
 
-// Updates the UI to adapt for |identityAvailable| or not.
+// Updates the UI to adapt for `identityAvailable` or not.
 - (void)updateUIForIdentityAvailable:(BOOL)identityAvailable {
   self.identityControl.hidden = !identityAvailable;
   if (identityAvailable) {
@@ -327,8 +327,8 @@
 }
 
 - (void)textViewDidChangeSelection:(UITextView*)textView {
-  // Always force the |selectedTextRange| to |nil| to prevent users from
-  // selecting text. Setting the |selectable| property to |NO| doesn't help
+  // Always force the `selectedTextRange` to `nil` to prevent users from
+  // selecting text. Setting the `selectable` property to `NO` doesn't help
   // since it makes links inside the text view untappable.
   textView.selectedTextRange = nil;
 }
diff --git a/ios/chrome/browser/ui/first_run/orientation_limiting_navigation_controller.h b/ios/chrome/browser/ui/first_run/orientation_limiting_navigation_controller.h
index 83c2a99..34fa5ed 100644
--- a/ios/chrome/browser/ui/first_run/orientation_limiting_navigation_controller.h
+++ b/ios/chrome/browser/ui/first_run/orientation_limiting_navigation_controller.h
@@ -6,7 +6,7 @@
 
 #import <UIKit/UIKit.h>
 
-// A navigation controller that supports only |UIInterfaceOrientationPortrait|
+// A navigation controller that supports only `UIInterfaceOrientationPortrait`
 // orientation on iPhone and supports all orientations on iPad.
 @interface OrientationLimitingNavigationController : UINavigationController
 @end
diff --git a/ios/chrome/browser/ui/first_run/signin/signin_screen_consumer.h b/ios/chrome/browser/ui/first_run/signin/signin_screen_consumer.h
index a4a1fe02..3d2f3d98 100644
--- a/ios/chrome/browser/ui/first_run/signin/signin_screen_consumer.h
+++ b/ios/chrome/browser/ui/first_run/signin/signin_screen_consumer.h
@@ -42,8 +42,8 @@
 // This property needs to be set before the view is loaded.
 @property(nonatomic, assign) SigninScreenConsumerSigninStatus signinStatus;
 
-// Sets the |userName|, |email|, |givenName| and |avatar| of the selected
-// identity. The |userName| and |givenName| can be nil. Notifies the UI that an
+// Sets the `userName`, `email`, `givenName` and `avatar` of the selected
+// identity. The `userName` and `givenName` can be nil. Notifies the UI that an
 // identity is available.
 - (void)setSelectedIdentityUserName:(NSString*)userName
                               email:(NSString*)email
diff --git a/ios/chrome/browser/ui/first_run/signin/signin_screen_coordinator.h b/ios/chrome/browser/ui/first_run/signin/signin_screen_coordinator.h
index 655ece8..12c390b 100644
--- a/ios/chrome/browser/ui/first_run/signin/signin_screen_coordinator.h
+++ b/ios/chrome/browser/ui/first_run/signin/signin_screen_coordinator.h
@@ -12,9 +12,9 @@
 // Coordinator to present sign-in screen with FRE consent (optional).
 @interface SigninScreenCoordinator : InterruptibleChromeCoordinator
 
-// Initiates a SigninScreenCoordinator with |navigationController|,
-// |browser| and |delegate|.
-// The |delegate| parameter is for handling the transfer between screens.
+// Initiates a SigninScreenCoordinator with `navigationController`,
+// `browser` and `delegate`.
+// The `delegate` parameter is for handling the transfer between screens.
 - (instancetype)initWithBaseNavigationController:
                     (UINavigationController*)navigationController
                                          browser:(Browser*)browser
diff --git a/ios/chrome/browser/ui/first_run/signin/signin_screen_mediator.h b/ios/chrome/browser/ui/first_run/signin/signin_screen_mediator.h
index bd34355b..67d2f77 100644
--- a/ios/chrome/browser/ui/first_run/signin/signin_screen_mediator.h
+++ b/ios/chrome/browser/ui/first_run/signin/signin_screen_mediator.h
@@ -40,12 +40,12 @@
 @property(nonatomic, assign) BOOL addedAccount;
 
 // The designated initializer.
-// |accountManagerService| account manager service.
-// |authenticationService| authentication service.
-// |localPrefService| application local pref.
-// |prefService| user pref.
-// |syncService| sync service.
-// |showFREConsent| YES if the screen needs to display the term of service.
+// `accountManagerService` account manager service.
+// `authenticationService` authentication service.
+// `localPrefService` application local pref.
+// `prefService` user pref.
+// `syncService` sync service.
+// `showFREConsent` YES if the screen needs to display the term of service.
 - (instancetype)
     initWithAccountManagerService:
         (ChromeAccountManagerService*)accountManagerService
diff --git a/ios/chrome/browser/ui/first_run/signin/signin_screen_view_controller.mm b/ios/chrome/browser/ui/first_run/signin/signin_screen_view_controller.mm
index 51daf1c..3bfc504 100644
--- a/ios/chrome/browser/ui/first_run/signin/signin_screen_view_controller.mm
+++ b/ios/chrome/browser/ui/first_run/signin/signin_screen_view_controller.mm
@@ -67,7 +67,7 @@
   // Set banner.
   self.bannerName = kSigninBannerName;
 
-  // Set |self.titleText| and |self.subtitleText|.
+  // Set `self.titleText` and `self.subtitleText`.
   switch (self.signinStatus) {
     case SigninScreenConsumerSigninStatusAvailable: {
       self.titleText = l10n_util::GetNSString(IDS_IOS_FIRST_RUN_SIGNIN_TITLE);
@@ -99,7 +99,7 @@
   }
   [self generateDisclaimer];
 
-  // Add |self.identityControl| if needed.
+  // Add `self.identityControl` if needed.
   if (self.signinStatus != SigninScreenConsumerSigninStatusDisabled) {
     [self.specificContentView addSubview:self.identityControl];
 
@@ -142,8 +142,8 @@
   }
 
   // Set primary button if sign-in is disabled. For other cases, the primary
-  // button is set with |setSelectedIdentityUserName:email:givenName:avatar:|
-  // or |noIdentityAvailable|.
+  // button is set with `setSelectedIdentityUserName:email:givenName:avatar:`
+  // or `noIdentityAvailable`.
   DCHECK(self.primaryActionString ||
          self.signinStatus == SigninScreenConsumerSigninStatusDisabled);
   if (self.signinStatus == SigninScreenConsumerSigninStatusDisabled) {
@@ -231,13 +231,13 @@
   self.disclaimerURLs = urls;
 }
 
-// Callback for |identityControl|.
+// Callback for `identityControl`.
 - (void)identityButtonControlTapped:(id)sender forEvent:(UIEvent*)event {
   UITouch* touch = event.allTouches.anyObject;
   [self.delegate showAccountPickerFromPoint:[touch locationInView:nil]];
 }
 
-// Updates the UI to adapt for |identityAvailable| or not.
+// Updates the UI to adapt for `identityAvailable` or not.
 - (void)updateUIForIdentityAvailable:(BOOL)identityAvailable {
   self.identityControl.hidden = !identityAvailable;
   if (identityAvailable) {
diff --git a/ios/chrome/browser/ui/first_run/static_file_view_controller.h b/ios/chrome/browser/ui/first_run/static_file_view_controller.h
index 6eee483..759e28628 100644
--- a/ios/chrome/browser/ui/first_run/static_file_view_controller.h
+++ b/ios/chrome/browser/ui/first_run/static_file_view_controller.h
@@ -14,7 +14,7 @@
 @interface StaticFileViewController : UIViewController
 
 // Initializes with the given URL to display and browser state. Neither
-// |browserState| nor |URL| may be nil.
+// `browserState` nor `URL` may be nil.
 - (instancetype)initWithBrowserState:(ChromeBrowserState*)browserState
                                  URL:(NSURL*)URL;
 
diff --git a/ios/chrome/browser/ui/first_run/sync/sync_screen_coordinator.h b/ios/chrome/browser/ui/first_run/sync/sync_screen_coordinator.h
index 3a5717e..ecfe2e8 100644
--- a/ios/chrome/browser/ui/first_run/sync/sync_screen_coordinator.h
+++ b/ios/chrome/browser/ui/first_run/sync/sync_screen_coordinator.h
@@ -13,9 +13,9 @@
 @interface SyncScreenCoordinator : InterruptibleChromeCoordinator
 
 // Initiates a SyncScreenCoordinator with
-// |navigationController| to present the view;
-// |browser| to provide the browser;
-// |delegate| to handle user action.
+// `navigationController` to present the view;
+// `browser` to provide the browser;
+// `delegate` to handle user action.
 - (instancetype)initWithBaseNavigationController:
                     (UINavigationController*)navigationController
                                          browser:(Browser*)browser
diff --git a/ios/chrome/browser/ui/first_run/sync/sync_screen_coordinator.mm b/ios/chrome/browser/ui/first_run/sync/sync_screen_coordinator.mm
index 1eceb27..765fff5 100644
--- a/ios/chrome/browser/ui/first_run/sync/sync_screen_coordinator.mm
+++ b/ios/chrome/browser/ui/first_run/sync/sync_screen_coordinator.mm
@@ -281,14 +281,14 @@
 
 #pragma mark - Private
 
-// Dismisses the Signed Out modal if it is still present and |skipScreens|.
+// Dismisses the Signed Out modal if it is still present and `skipScreens`.
 - (void)dismissSignedOutModalAndSkipScreens:(BOOL)skipScreens {
   [self.enterprisePromptCoordinator stop];
   self.enterprisePromptCoordinator = nil;
   [self.delegate skipAll];
 }
 
-// Starts syncing or opens |advancedSettings|.
+// Starts syncing or opens `advancedSettings`.
 - (void)startSyncOrAdvancedSettings:(BOOL)advancedSettings {
   self.advancedSettingsRequested = advancedSettings;
   int confirmationID = advancedSettings
diff --git a/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator.h b/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator.h
index b8a54cdbc..638cd18 100644
--- a/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator.h
+++ b/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator.h
@@ -36,10 +36,10 @@
 - (instancetype)init NS_UNAVAILABLE;
 
 // Inits the mediator with
-// |authenticationService| provides the authentication library.
-// |identityManager| gives access to information of users Google identity.
-// |consentAuditor| to record the content.
-// |syncSetupService| helps triggering the sync flow.
+// `authenticationService` provides the authentication library.
+// `identityManager` gives access to information of users Google identity.
+// `consentAuditor` to record the content.
+// `syncSetupService` helps triggering the sync flow.
 - (instancetype)
     initWithAuthenticationService:(AuthenticationService*)authenticationService
                   identityManager:(signin::IdentityManager*)identityManager
diff --git a/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator.mm b/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator.mm
index 67b569b..a28536f1 100644
--- a/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator.mm
+++ b/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator.mm
@@ -112,7 +112,7 @@
 
 #pragma mark - Private
 
-// Callback used when the sign in flow is complete, with |success|.
+// Callback used when the sign in flow is complete, with `success`.
 - (void)signinCompletedWithSuccess:(BOOL)success
                     confirmationID:(const int)confirmationID
                         consentIDs:(NSArray<NSNumber*>*)consentIDs
diff --git a/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator_delegate.h b/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator_delegate.h
index 821b225..b6ca379 100644
--- a/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator_delegate.h
+++ b/ios/chrome/browser/ui/first_run/sync/sync_screen_mediator_delegate.h
@@ -12,7 +12,7 @@
 // Delegate for the Sync mediator.
 @protocol SyncScreenMediatorDelegate
 
-// Notifies the delegate that |mediator| has finished sign in with success.
+// Notifies the delegate that `mediator` has finished sign in with success.
 - (void)syncScreenMediatorDidSuccessfulyFinishSignin:
     (SyncScreenMediator*)mediator;
 
diff --git a/ios/chrome/browser/ui/first_run/sync/sync_screen_view_controller.mm b/ios/chrome/browser/ui/first_run/sync/sync_screen_view_controller.mm
index f7b143e..4832c7e 100644
--- a/ios/chrome/browser/ui/first_run/sync/sync_screen_view_controller.mm
+++ b/ios/chrome/browser/ui/first_run/sync/sync_screen_view_controller.mm
@@ -177,7 +177,7 @@
 
 #pragma mark - Private
 
-// Push the string id to |_contentStringIds| and returns NSString.
+// Push the string id to `_contentStringIds` and returns NSString.
 - (NSString*)contentTextWithStringID:(const int)stringID {
   [self.delegate addConsentStringID:stringID];
   return l10n_util::GetNSString(stringID);
diff --git a/ios/chrome/browser/ui/first_run/uma/uma_coordinator.h b/ios/chrome/browser/ui/first_run/uma/uma_coordinator.h
index c7fa2db7..836b6ce8 100644
--- a/ios/chrome/browser/ui/first_run/uma/uma_coordinator.h
+++ b/ios/chrome/browser/ui/first_run/uma/uma_coordinator.h
@@ -13,7 +13,7 @@
 @protocol UMACoordinatorDelegate <NSObject>
 
 // Called when the coordinator has been removed from the screen.
-// |userChoice| whether the user accepts UMA reporting.
+// `userChoice` whether the user accepts UMA reporting.
 - (void)UMACoordinatorDidRemoveWithCoordinator:(UMACoordinator*)coordinator
                         UMAReportingUserChoice:(BOOL)UMAReportingUserChoice;
 
@@ -26,8 +26,8 @@
 
 @property(nonatomic, weak) id<UMACoordinatorDelegate> delegate;
 
-// Initiates UMACoordinator with |viewController| and |browser|.
-// |UMAReportingValue| is the UMA toggle value, when opening the dialog.
+// Initiates UMACoordinator with `viewController` and `browser`.
+// `UMAReportingValue` is the UMA toggle value, when opening the dialog.
 // It should be kDefaultMetricsReportingCheckboxValue if the user never opened
 // the dialog yet.
 - (instancetype)initWithBaseViewController:(UIViewController*)viewController
diff --git a/ios/chrome/browser/ui/first_run/welcome/checkbox_button.mm b/ios/chrome/browser/ui/first_run/welcome/checkbox_button.mm
index 1696506..0178d58 100644
--- a/ios/chrome/browser/ui/first_run/welcome/checkbox_button.mm
+++ b/ios/chrome/browser/ui/first_run/welcome/checkbox_button.mm
@@ -65,7 +65,7 @@
 
     // Layout constraints for the custom button and image. The label is on the
     // left of the image, and both are centered vertically. The image is only
-    // visible if the |selected| property is YES, otherwise it is hidden (but
+    // visible if the `selected` property is YES, otherwise it is hidden (but
     // still takes the same amount of space in the layout). For RTL, the layout
     // is flipped horizontally, meaning the label is to the right of the image.
     [NSLayoutConstraint activateConstraints:@[
diff --git a/ios/chrome/browser/ui/first_run/welcome/tos_view_controller.h b/ios/chrome/browser/ui/first_run/welcome/tos_view_controller.h
index 82f1993..f1da098 100644
--- a/ios/chrome/browser/ui/first_run/welcome/tos_view_controller.h
+++ b/ios/chrome/browser/ui/first_run/welcome/tos_view_controller.h
@@ -13,8 +13,8 @@
 @interface TOSViewController : UIViewController
 
 // Initiates a TOSViewController with
-// |TOSView| UIView with ToS page in it;
-// |handler| to handle user action.
+// `TOSView` UIView with ToS page in it;
+// `handler` to handle user action.
 - (instancetype)initWithContentView:(UIView*)TOSView
                             handler:(id<TOSCommands>)handler;
 
diff --git a/ios/chrome/browser/ui/first_run/welcome/welcome_screen_coordinator.h b/ios/chrome/browser/ui/first_run/welcome/welcome_screen_coordinator.h
index 71e413b9..3f5d2eb 100644
--- a/ios/chrome/browser/ui/first_run/welcome/welcome_screen_coordinator.h
+++ b/ios/chrome/browser/ui/first_run/welcome/welcome_screen_coordinator.h
@@ -12,8 +12,8 @@
 // Coordinator to present welcome and consent screen.
 @interface WelcomeScreenCoordinator : ChromeCoordinator
 
-// Initiates a WelcomeScreenCoordinator with |navigationController| and
-// |browser|.
+// Initiates a WelcomeScreenCoordinator with `navigationController` and
+// `browser`.
 - (instancetype)initWithBaseNavigationController:
                     (UINavigationController*)navigationController
                                          browser:(Browser*)browser
diff --git a/ios/chrome/browser/ui/first_run/welcome/welcome_screen_view_controller.mm b/ios/chrome/browser/ui/first_run/welcome/welcome_screen_view_controller.mm
index 0865d5a..4911234 100644
--- a/ios/chrome/browser/ui/first_run/welcome/welcome_screen_view_controller.mm
+++ b/ios/chrome/browser/ui/first_run/welcome/welcome_screen_view_controller.mm
@@ -348,10 +348,10 @@
 }
 
 - (void)textViewDidChangeSelection:(UITextView*)textView {
-  // Always force the |selectedTextRange| to |nil| to prevent users from
-  // selecting text. Setting the |selectable| property to |NO| doesn't help
+  // Always force the `selectedTextRange` to `nil` to prevent users from
+  // selecting text. Setting the `selectable` property to `NO` doesn't help
   // since it makes links inside the text view untappable. Another solution is
-  // to subclass |UITextView| and override |canBecomeFirstResponder| to return
+  // to subclass `UITextView` and override `canBecomeFirstResponder` to return
   // NO, but that workaround only works on iOS 13.5+. This is the simplest
   // approach that works well on iOS 12, 13 & 14.
   textView.selectedTextRange = nil;
diff --git a/ios/chrome/browser/ui/first_run/welcome_to_chrome_view_controller.h b/ios/chrome/browser/ui/first_run/welcome_to_chrome_view_controller.h
index 36531c23..98601d66 100644
--- a/ios/chrome/browser/ui/first_run/welcome_to_chrome_view_controller.h
+++ b/ios/chrome/browser/ui/first_run/welcome_to_chrome_view_controller.h
@@ -16,7 +16,7 @@
 // Chrome Terms of Service before proceeding to use Chrome.
 //
 // Note: On iPhone, this controller supports portrait orientation only. It
-// should always be presented in an |OrientationLimitingNavigationController|.
+// should always be presented in an `OrientationLimitingNavigationController`.
 @interface WelcomeToChromeViewController : UIViewController
 
 // True when the stats checkbox should be checked by default.
diff --git a/ios/chrome/browser/ui/first_run/welcome_to_chrome_view_controller.mm b/ios/chrome/browser/ui/first_run/welcome_to_chrome_view_controller.mm
index d4b16aa..9a00ad1 100644
--- a/ios/chrome/browser/ui/first_run/welcome_to_chrome_view_controller.mm
+++ b/ios/chrome/browser/ui/first_run/welcome_to_chrome_view_controller.mm
@@ -116,8 +116,8 @@
   // The sign-in coordinator is part of the navigation controller, so the
   // sign-in coordinator didn't present itself. Therefore the interrupt action
   // must be SigninCoordinatorInterruptActionNoDismiss.
-  // |completion| has to be stored in order to be invoked when
-  // |firstRunDismissedWithPresentingViewController:signinAction:| is
+  // `completion` has to be stored in order to be invoked when
+  // `firstRunDismissedWithPresentingViewController:signinAction:` is
   // called.
   self.interruptCompletion = completion;
   [self.coordinator
@@ -249,7 +249,7 @@
 }
 
 // Handles the sign-in completion and proceeds to complete the first run
-// operation depending on the |signinResult| state.
+// operation depending on the `signinResult` state.
 - (void)signinCompleteResult:(SigninCoordinatorResult)signinResult
               completionInfo:(SigninCompletionInfo*)signinCompletionInfo {
   [self.coordinator stop];
diff --git a/ios/chrome/browser/ui/omnibox/popup/autocomplete_match_formatter.mm b/ios/chrome/browser/ui/omnibox/popup/autocomplete_match_formatter.mm
index 4df07b2..578b118a 100644
--- a/ios/chrome/browser/ui/omnibox/popup/autocomplete_match_formatter.mm
+++ b/ios/chrome/browser/ui/omnibox/popup/autocomplete_match_formatter.mm
@@ -113,9 +113,9 @@
                            useDeemphasizedStyling:YES];
     }
   } else {
-    // The detail text should be the URL (|_match.contents|) for non-search
-    // suggestions and the entity type (|_match.description|) for search entity
-    // suggestions. For all other search suggestions, |_match.description| is
+    // The detail text should be the URL (`_match.contents`) for non-search
+    // suggestions and the entity type (`_match.description`) for search entity
+    // suggestions. For all other search suggestions, `_match.description` is
     // the name of the currently selected search engine, which for mobile we
     // suppress.
     NSString* detailText = nil;
@@ -182,8 +182,8 @@
                        useDeemphasizedStyling:NO];
     }
   } else {
-    // The text should be search term (|_match.contents|) for searches,
-    // otherwise page title (|_match.description|).
+    // The text should be search term (`_match.contents`) for searches,
+    // otherwise page title (`_match.description`).
     std::u16string textString =
         !self.isURL ? _match.contents : _match.description;
     NSString* text = base::SysUTF16ToNSString(textString);
@@ -271,7 +271,7 @@
                    useDeemphasizedStyling:useDeemphasizedStyling];
 }
 
-// Adds the |additional_text| and |status_text| from |line| to the given
+// Adds the `additional_text` and `status_text` from `line` to the given
 // attributed string. This is necessary because answers get their main text
 // from the match contents instead of the ImageLine's text_fields. This is
 // because those fields contain server-provided formatting, which aren't used.
@@ -320,7 +320,7 @@
 }
 
 // Return correct formatting attributes for the given style.
-// |useDeemphasizedStyling| is necessary because some styles (e.g. SUPERIOR)
+// `useDeemphasizedStyling` is necessary because some styles (e.g. SUPERIOR)
 // should take their color from the surrounding line; they don't have a fixed
 // color.
 - (NSDictionary<NSAttributedStringKey, id>*)
diff --git a/ios/chrome/browser/ui/omnibox/popup/autocomplete_result_consumer.h b/ios/chrome/browser/ui/omnibox/popup/autocomplete_result_consumer.h
index 4fe67bef..06fa6e0 100644
--- a/ios/chrome/browser/ui/omnibox/popup/autocomplete_result_consumer.h
+++ b/ios/chrome/browser/ui/omnibox/popup/autocomplete_result_consumer.h
@@ -28,12 +28,12 @@
 - (void)autocompleteResultConsumer:(id<AutocompleteResultConsumer>)sender
                       didSelectRow:(NSUInteger)row
                          inSection:(NSUInteger)section;
-// Tells the delegate when a suggestion in|row| was chosen for appending to
+// Tells the delegate when a suggestion in `row` was chosen for appending to
 // omnibox.
 - (void)autocompleteResultConsumer:(id<AutocompleteResultConsumer>)sender
         didTapTrailingButtonForRow:(NSUInteger)row
                          inSection:(NSUInteger)section;
-// Tells the delegate when a suggestion in |row| was removed.
+// Tells the delegate when a suggestion in `row` was removed.
 - (void)autocompleteResultConsumer:(id<AutocompleteResultConsumer>)sender
            didSelectRowForDeletion:(NSUInteger)row
                          inSection:(NSUInteger)section;
diff --git a/ios/chrome/browser/ui/omnibox/popup/autocomplete_suggestion.h b/ios/chrome/browser/ui/omnibox/popup/autocomplete_suggestion.h
index 40ddd05..9546864 100644
--- a/ios/chrome/browser/ui/omnibox/popup/autocomplete_suggestion.h
+++ b/ios/chrome/browser/ui/omnibox/popup/autocomplete_suggestion.h
@@ -29,7 +29,7 @@
 @property(nonatomic, readonly) NSAttributedString* text;
 // Second line of text.
 @property(nonatomic, readonly) NSAttributedString* detailText;
-// Suggested number of lines to format |detailText|.
+// Suggested number of lines to format `detailText`.
 @property(nonatomic, readonly) NSInteger numberOfLines;
 
 @property(nonatomic, readonly) id<OmniboxIcon> icon;
diff --git a/ios/chrome/browser/ui/omnibox/popup/favicon_retriever.h b/ios/chrome/browser/ui/omnibox/popup/favicon_retriever.h
index 94289d2..02f11d9 100644
--- a/ios/chrome/browser/ui/omnibox/popup/favicon_retriever.h
+++ b/ios/chrome/browser/ui/omnibox/popup/favicon_retriever.h
@@ -12,7 +12,7 @@
 // favicon retrieving logic from the View layer.
 @protocol FaviconRetriever <NSObject>
 // Fetches favicon given a page URL.
-// |completion| is guaranteed to only be called on main thread, but could be
+// `completion` is guaranteed to only be called on main thread, but could be
 // called at any time, even before this returns.
 // It might never be called if the favicon is not available.
 // It might be called multiple times per request.
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_icon.h b/ios/chrome/browser/ui/omnibox/popup/omnibox_icon.h
index f0c3a95..9cba136 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_icon.h
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_icon.h
@@ -18,7 +18,7 @@
 // This protocol represents all the parts necessary to display a composited
 // omnibox icon. Most icons have a background and a main image. If the main
 // image is an icon (not an image from the web), it will be tinted some color.
-// |OmniboxIconView| is the preferred way to consume this protocol and display
+// `OmniboxIconView` is the preferred way to consume this protocol and display
 // the icons.
 @protocol OmniboxIcon <NSObject>
 
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_icon_view.h b/ios/chrome/browser/ui/omnibox/popup/omnibox_icon_view.h
index 1db06c0..1112300 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_icon_view.h
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_icon_view.h
@@ -11,7 +11,7 @@
 @protocol FaviconRetriever;
 @protocol ImageRetriever;
 
-// This class is used to display |OmniboxIcon|s. It handles the multiple image
+// This class is used to display `OmniboxIcon`s. It handles the multiple image
 // views neceesary to get the correct compositing behavior.
 @interface OmniboxIconView : UIView
 
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_accessibility_identifier_constants.h b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_accessibility_identifier_constants.h
index 21e8d2b..c0ee2430 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_accessibility_identifier_constants.h
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_accessibility_identifier_constants.h
@@ -19,7 +19,7 @@
 // Helper to generate omnibox popup accessibility identifiers.
 @interface OmniboxPopupAccessibilityIdentifierHelper : NSObject
 
-// Generate omnibox popup row accessibility identifier at |indexPath|.
+// Generate omnibox popup row accessibility identifier at `indexPath`.
 + (NSString*)accessibilityIdentifierForRowAtIndexPath:(NSIndexPath*)indexPath;
 
 @end
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_egtest.mm b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_egtest.mm
index 4e1dbb5..b4e74b7 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_egtest.mm
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_egtest.mm
@@ -27,7 +27,7 @@
 
 namespace {
 
-// Returns the popup row containing the |url| as suggestion.
+// Returns the popup row containing the `url` as suggestion.
 id<GREYMatcher> PopupRowWithUrl(GURL url) {
   NSString* urlString = base::SysUTF8ToNSString(url.GetContent());
   id<GREYMatcher> URLMatcher =
@@ -40,7 +40,7 @@
   return grey_allOf(chrome_test_util::OmniboxPopupRow(), URLMatcher, nil);
 }
 
-// Returns the switch to open tab element for the |url|.
+// Returns the switch to open tab element for the `url`.
 id<GREYMatcher> SwitchTabElementForUrl(const GURL& url) {
   return grey_allOf(
       grey_ancestor(PopupRowWithUrl(url)),
@@ -630,7 +630,7 @@
 - (void)setUp {
   _variant = std::string(kIOSOmniboxUpdatedPopupUIVariation1);
 
-  // |appConfigurationForTestCase| is called during [super setUp], and
+  // `appConfigurationForTestCase` is called during [super setUp], and
   // depends on _variant.
   [super setUp];
 }
@@ -651,7 +651,7 @@
 - (void)setUp {
   _variant = std::string(kIOSOmniboxUpdatedPopupUIVariation2);
 
-  // |appConfigurationForTestCase| is called during [super setUp], and
+  // `appConfigurationForTestCase` is called during [super setUp], and
   // depends on _variant.
   [super setUp];
 }
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_mediator.h b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_mediator.h
index 11d80ff5..fe36c52e 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_mediator.h
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_mediator.h
@@ -76,7 +76,7 @@
 // The annotator to create pedals for ths mediator.
 @property(nonatomic) OmniboxPedalAnnotator* pedalAnnotator;
 
-// Designated initializer. Takes ownership of |imageFetcher|.
+// Designated initializer. Takes ownership of `imageFetcher`.
 - (instancetype)initWithFetcher:
                     (std::unique_ptr<image_fetcher::ImageDataFetcher>)
                         imageFetcher
@@ -88,7 +88,7 @@
 // Sets the text alignment of the popup content.
 - (void)setTextAlignment:(NSTextAlignment)alignment;
 
-// Updates the popup with the |results|.
+// Updates the popup with the `results`.
 - (void)updateWithResults:(const AutocompleteResult&)results;
 
 @end
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_mediator.mm b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_mediator.mm
index c52bf27..42e5bbbc 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_mediator.mm
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_mediator.mm
@@ -158,7 +158,7 @@
                       didSelectRow:(NSUInteger)row
                          inSection:(NSUInteger)section {
   // OpenMatch() may close the popup, which will clear the result set and, by
-  // extension, |match| and its contents.  So copy the relevant match out to
+  // extension, `match` and its contents.  So copy the relevant match out to
   // make sure it stays alive until the call completes.
   const AutocompleteMatch& match =
       ((const AutocompleteResult&)_currentResult).match_at(row);
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_row_cell.mm b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_row_cell.mm
index b19a585..d6b1f29 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_row_cell.mm
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_row_cell.mm
@@ -131,7 +131,7 @@
 }
 
 - (void)willTransitionToState:(UITableViewCellStateMask)state {
-  // |UITableViewCellStateDefaultMask| is actually 0, so it must be checked
+  // `UITableViewCellStateDefaultMask` is actually 0, so it must be checked
   // manually, and can't be checked with bitwise AND.
   if (state == UITableViewCellStateDefaultMask) {
     for (NSLayoutConstraint* constraint in self
@@ -260,7 +260,7 @@
   // The text stack view is attached to both ends of the layout gude. This is
   // because it needs to switch directions if the device is in LTR mode and the
   // user types in RTL. Furthermore, because the layout guide is added to the
-  // main view, its direction will not change if the |semanticContentAttribute|
+  // main view, its direction will not change if the `semanticContentAttribute`
   // of this cell or the omnibox changes.
   // However, the text should still extend all the way to cell's trailing edge.
   // To do this, constrain the text to the layout guide using a low priority
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_controller.mm b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_controller.mm
index 6782b35..49fcd6c8 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_controller.mm
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_controller.mm
@@ -326,7 +326,7 @@
             self.currentResult[indexPath.section].suggestions.count);
   NSUInteger row = indexPath.row;
 
-  // Crash reports tell us that |row| is sometimes indexed past the end of
+  // Crash reports tell us that `row` is sometimes indexed past the end of
   // the results array. In those cases, just ignore the request and return
   // early. See b/5813291.
   if (row >= self.currentResult[indexPath.section].suggestions.count)
@@ -354,8 +354,8 @@
   DCHECK_EQ(0U, (NSUInteger)indexPath.section);
 
   // iOS doesn't check -numberOfRowsInSection before checking
-  // -canEditRowAtIndexPath in a reload call. If |indexPath.row| is too large,
-  // simple return |NO|.
+  // -canEditRowAtIndexPath in a reload call. If `indexPath.row` is too large,
+  // simple return `NO`.
   if ((NSUInteger)indexPath.row >=
       self.currentResult[indexPath.section].suggestions.count)
     return NO;
@@ -524,7 +524,7 @@
 #pragma mark - ContentProviding
 
 - (BOOL)hasContent {
-  // The table view is a |SelfSizingTableView|, so its intrinsic content size
+  // The table view is a `SelfSizingTableView`, so its intrinsic content size
   // can tell whether it has content.
   return self.view.intrinsicContentSize.height > 0;
 }
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_ios.h b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_ios.h
index 7e01bddb..ffbe7324 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_ios.h
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_ios.h
@@ -48,7 +48,7 @@
   bool IsStarredMatch(const AutocompleteMatch& match) const override;
   void OnHighlightCanceled() override;
   void OnMatchHighlighted(size_t row) override;
-  // |disposition| should be CURRENT_TAB is the match should be loaded,
+  // `disposition` should be CURRENT_TAB is the match should be loaded,
   // SWITCH_TO_TAB if it should switch to this tab.
   void OnMatchSelected(const AutocompleteMatch& match,
                        size_t row,
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_ios.mm b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_ios.mm
index 6ce078df..7758751 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_ios.mm
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_ios.mm
@@ -135,7 +135,7 @@
   base::RecordAction(UserMetricsAction("MobileOmniboxUse"));
 
   // OpenMatch() may close the popup, which will clear the result set and, by
-  // extension, |match| and its contents.  So copy the relevant match out to
+  // extension, `match` and its contents.  So copy the relevant match out to
   // make sure it stays alive until the call completes.
   AutocompleteMatch match = selectedMatch;
 
@@ -159,8 +159,8 @@
 
 void OmniboxPopupViewIOS::OnMatchSelectedForAppending(
     const AutocompleteMatch& match) {
-  // Make a defensive copy of |match.fill_into_edit|, as CopyToOmnibox() will
-  // trigger a new round of autocomplete and modify |match|.
+  // Make a defensive copy of `match.fill_into_edit`, as CopyToOmnibox() will
+  // trigger a new round of autocomplete and modify `match`.
   std::u16string fill_into_edit(match.fill_into_edit);
 
   // If the match is not a URL, append a whitespace to the end of it.
diff --git a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_suggestions_delegate.h b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_suggestions_delegate.h
index 9f147dc..03523a3 100644
--- a/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_suggestions_delegate.h
+++ b/ios/chrome/browser/ui/omnibox/popup/omnibox_popup_view_suggestions_delegate.h
@@ -20,7 +20,7 @@
   // match (for example, on NTP with no zero suggest, there's no default match),
   // values in match_type, answer_type, and favicon_url are invalid and a
   // default image should be used instead. Current UI should only use
-  // |matchType|; new UI may use |answerType| and |faviconURL| if available.
+  // `matchType`; new UI may use `answerType` and `faviconURL` if available.
   virtual void OnSelectedMatchImageChanged(
       bool has_match,
       AutocompleteMatchType::Type match_type,
diff --git a/ios/chrome/browser/ui/omnibox/popup/pedal_section_extractor.h b/ios/chrome/browser/ui/omnibox/popup/pedal_section_extractor.h
index 4ab647d..81454ed7 100644
--- a/ios/chrome/browser/ui/omnibox/popup/pedal_section_extractor.h
+++ b/ios/chrome/browser/ui/omnibox/popup/pedal_section_extractor.h
@@ -14,7 +14,7 @@
 // consumer. It acts as a consumer and a consumer delegate, and is intended to
 // intercept any calls in these protocols.
 // It extracts any pedals being pushed to it, wraps them to look like
-// suggestions, and passes it down to |dataSink|.
+// suggestions, and passes it down to `dataSink`.
 // It also intercepts the return key (by proxying OmniboxReturnDelegate) to
 // allow "return" key to execute the pedal whenever it selected; if a non-pedal
 // is highlighted, it forwards the call to its accept delegate.
diff --git a/ios/chrome/browser/ui/omnibox/popup/pedal_suggestion_wrapper.h b/ios/chrome/browser/ui/omnibox/popup/pedal_suggestion_wrapper.h
index e1d970c5..dd4bca4 100644
--- a/ios/chrome/browser/ui/omnibox/popup/pedal_suggestion_wrapper.h
+++ b/ios/chrome/browser/ui/omnibox/popup/pedal_suggestion_wrapper.h
@@ -16,7 +16,7 @@
 - (instancetype)initWithPedal:(id<OmniboxPedal, OmniboxIcon>)pedal;
 
 // Underlying pedal.
-// Note that this is different from |pedal| inherited from
+// Note that this is different from `pedal` inherited from
 // <AutocompleteSuggestion>.
 @property(nonatomic, strong) id<OmniboxPedal, OmniboxIcon> innerPedal;
 
diff --git a/ios/chrome/browser/ui/settings/privacy/BUILD.gn b/ios/chrome/browser/ui/settings/privacy/BUILD.gn
index 5ef3344..d941671 100644
--- a/ios/chrome/browser/ui/settings/privacy/BUILD.gn
+++ b/ios/chrome/browser/ui/settings/privacy/BUILD.gn
@@ -163,6 +163,7 @@
   sources = [ "privacy_safe_browsing_egtest.mm" ]
   deps = [
     "//base",
+    "//base/test:test_support",
     "//components/safe_browsing/core/common",
     "//components/safe_browsing/core/common:safe_browsing_prefs",
     "//components/strings:components_strings_grit",
diff --git a/ios/chrome/browser/ui/settings/privacy/privacy_safe_browsing_egtest.mm b/ios/chrome/browser/ui/settings/privacy/privacy_safe_browsing_egtest.mm
index dda4ac76..76020f88 100644
--- a/ios/chrome/browser/ui/settings/privacy/privacy_safe_browsing_egtest.mm
+++ b/ios/chrome/browser/ui/settings/privacy/privacy_safe_browsing_egtest.mm
@@ -2,6 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+#import "base/test/ios/wait_util.h"
 #import "components/safe_browsing/core/common/features.h"
 #import "components/safe_browsing/core/common/safe_browsing_prefs.h"
 #import "components/strings/grit/components_strings.h"
@@ -23,8 +24,27 @@
 using chrome_test_util::SettingsMenuPrivacyButton;
 using l10n_util::GetNSString;
 
+namespace {
+
+// Waits until the warning alert is shown.
+[[nodiscard]] bool WaitForWarningAlert(NSString* alertMessage) {
+  return base::test::ios::WaitUntilConditionOrTimeout(
+      base::test::ios::kWaitForUIElementTimeout, ^{
+        NSError* error = nil;
+        [[EarlGrey selectElementWithMatcher:grey_text(alertMessage)]
+            assertWithMatcher:grey_notNil()
+                        error:&error];
+        return (error == nil);
+      });
+}
+
+}  // namespace
+
 // Integration tests using the Privacy Safe Browsing settings screen.
-@interface PrivacySafeBrowsingTestCase : ChromeTestCase
+@interface PrivacySafeBrowsingTestCase : ChromeTestCase {
+  // The default value for SafeBrowsingEnabled pref.
+  BOOL _safeBrowsingEnabledPrefDefault;
+}
 @end
 
 @implementation PrivacySafeBrowsingTestCase
@@ -35,12 +55,22 @@
   return config;
 }
 
+- (void)setUp {
+  [super setUp];
+  // Ensure that Safe Browsing opt-out starts in its default (opted-in) state.
+  [ChromeEarlGrey setBoolValue:YES forUserPref:prefs::kSafeBrowsingEnabled];
+}
+
+- (void)tearDown {
+  [ChromeEarlGrey setBoolValue:YES forUserPref:prefs::kSafeBrowsingEnabled];
+  [super tearDown];
+}
+
 - (void)testOpenPrivacySafeBrowsingSettings {
   [self openPrivacySafeBrowsingSettings];
 }
 
-// TODO(crbug.com/1333625): Enable once activation point is fixed.
-- (void)DISABLED_testEachSafeBrowsingOption {
+- (void)testEachSafeBrowsingOption {
   [self openPrivacySafeBrowsingSettings];
 
   // Presses each of the Safe Browsing options.
@@ -51,34 +81,50 @@
   GREYAssertTrue([ChromeEarlGrey userBooleanPref:prefs::kSafeBrowsingEnhanced],
                  @"Failed to toggle-on Enhanced Safe Browsing");
 
-  [[EarlGrey
-      selectElementWithMatcher:
-          grey_accessibilityID(kSettingsSafeBrowsingStandardProtectionCellId)]
+  [[EarlGrey selectElementWithMatcher:
+                 grey_allOf(grey_accessibilityID(
+                                kSettingsSafeBrowsingStandardProtectionCellId),
+                            grey_sufficientlyVisible(), nil)]
       performAction:grey_tap()];
   GREYAssertFalse([ChromeEarlGrey userBooleanPref:prefs::kSafeBrowsingEnhanced],
                   @"Failed to toggle-off Enhanced Safe Browsing");
   GREYAssertTrue([ChromeEarlGrey userBooleanPref:prefs::kSafeBrowsingEnabled],
                  @"Failed to toggle-on Standard Safe Browsing");
 
+  // Taps "No Protection" and then the Cancel button on pop-up.
   [[EarlGrey
-      selectElementWithMatcher:grey_accessibilityID(
-                                   kSettingsSafeBrowsingNoProtectionCellId)]
+      selectElementWithMatcher:grey_allOf(
+                                   grey_accessibilityID(
+                                       kSettingsSafeBrowsingNoProtectionCellId),
+                                   grey_sufficientlyVisible(), nil)]
       performAction:grey_tap()];
-  [[EarlGrey selectElementWithMatcher:grey_buttonTitle(GetNSString(IDS_CANCEL))]
+  GREYAssert(
+      WaitForWarningAlert(l10n_util::GetNSString(
+          IDS_IOS_SAFE_BROWSING_NO_PROTECTION_CONFIRMATION_DIALOG_CONFIRM)),
+      @"The No Protection pop-up did not show up");
+  [[EarlGrey
+      selectElementWithMatcher:ButtonWithAccessibilityLabelId(IDS_CANCEL)]
       performAction:grey_tap()];
   GREYAssertFalse([ChromeEarlGrey userBooleanPref:prefs::kSafeBrowsingEnhanced],
                   @"Failed to keep Enhanced Safe Browsing off");
   GREYAssertTrue([ChromeEarlGrey userBooleanPref:prefs::kSafeBrowsingEnabled],
                  @"Failed to keep Standard Safe Browsing on");
 
+  // Taps "No Protection" and then the "Turn Off" Button on pop-up.
   [[EarlGrey
-      selectElementWithMatcher:grey_accessibilityID(
-                                   kSettingsSafeBrowsingNoProtectionCellId)]
+      selectElementWithMatcher:grey_allOf(
+                                   grey_accessibilityID(
+                                       kSettingsSafeBrowsingNoProtectionCellId),
+                                   grey_sufficientlyVisible(), nil)]
       performAction:grey_tap()];
+  GREYAssert(
+      WaitForWarningAlert(l10n_util::GetNSString(
+          IDS_IOS_SAFE_BROWSING_NO_PROTECTION_CONFIRMATION_DIALOG_CONFIRM)),
+      @"The No Protection pop-up did not show up");
   [[EarlGrey
       selectElementWithMatcher:
-          grey_buttonTitle(GetNSString(
-              IDS_IOS_SAFE_BROWSING_NO_PROTECTION_CONFIRMATION_DIALOG_CONFIRM))]
+          ButtonWithAccessibilityLabelId(
+              IDS_IOS_SAFE_BROWSING_NO_PROTECTION_CONFIRMATION_DIALOG_CONFIRM)]
       performAction:grey_tap()];
   GREYAssertFalse([ChromeEarlGrey userBooleanPref:prefs::kSafeBrowsingEnabled],
                   @"Failed to toggle-off Standard Safe Browsing");
diff --git a/ios/chrome/browser/web/chrome_web_client_unittest.mm b/ios/chrome/browser/web/chrome_web_client_unittest.mm
index 88c0860..4f79739 100644
--- a/ios/chrome/browser/web/chrome_web_client_unittest.mm
+++ b/ios/chrome/browser/web/chrome_web_client_unittest.mm
@@ -25,7 +25,6 @@
 #include "ios/chrome/browser/content_settings/host_content_settings_map_factory.h"
 #import "ios/chrome/browser/safe_browsing/safe_browsing_blocking_page.h"
 #import "ios/chrome/browser/ssl/captive_portal_tab_helper.h"
-#import "ios/chrome/browser/ssl/captive_portal_tab_helper_delegate.h"
 #include "ios/chrome/browser/web/error_page_controller_bridge.h"
 #import "ios/chrome/browser/web/error_page_util.h"
 #include "ios/chrome/browser/web/features.h"
@@ -286,11 +285,7 @@
       base::MakeRefCounted<network::WeakWrapperSharedURLLoaderFactory>(
           &test_loader_factory));
 
-  id captive_portal_tab_helper_delegate =
-      [OCMockObject mockForProtocol:@protocol(CaptivePortalTabHelperDelegate)];
-  CaptivePortalTabHelper::CreateForWebState(&web_state,
-                                            captive_portal_tab_helper_delegate);
-
+  CaptivePortalTabHelper::CreateForWebState(&web_state);
   web_state.SetBrowserState(browser_state());
   web_client.PrepareErrorPage(&web_state, GURL(kTestUrl), error,
                               /*is_post=*/false,
diff --git a/media/base/media_log_record.h b/media/base/media_log_record.h
index 3148f3b..3db5b21 100644
--- a/media/base/media_log_record.h
+++ b/media/base/media_log_record.h
@@ -29,6 +29,14 @@
     return *this;
   }
 
+  bool operator==(const MediaLogRecord& other) const {
+    return id == other.id && type == other.type && params == other.params &&
+           time == other.time;
+  }
+  bool operator!=(const MediaLogRecord& other) const {
+    return !(*this == other);
+  }
+
   enum class Type {
     // See media/base/media_log_message_levels.h for info.
     kMessage,
diff --git a/media/mojo/services/stable_video_decoder_service.cc b/media/mojo/services/stable_video_decoder_service.cc
index e35e068e..728c16d 100644
--- a/media/mojo/services/stable_video_decoder_service.cc
+++ b/media/mojo/services/stable_video_decoder_service.cc
@@ -144,7 +144,8 @@
 
 void StableVideoDecoderService::OnWaiting(WaitingReason reason) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  NOTIMPLEMENTED();
+  DCHECK(stable_video_decoder_client_remote_.is_bound());
+  stable_video_decoder_client_remote_->OnWaiting(reason);
 }
 
 void StableVideoDecoderService::RequestOverlayInfo(
@@ -155,7 +156,8 @@
 
 void StableVideoDecoderService::AddLogRecord(const MediaLogRecord& event) {
   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-  NOTIMPLEMENTED();
+  DCHECK(stable_media_log_remote_.is_bound());
+  stable_media_log_remote_->AddLogRecord(event);
 }
 
 }  // namespace media
diff --git a/media/mojo/services/stable_video_decoder_service_unittest.cc b/media/mojo/services/stable_video_decoder_service_unittest.cc
index a445bca..fba3d4a 100644
--- a/media/mojo/services/stable_video_decoder_service_unittest.cc
+++ b/media/mojo/services/stable_video_decoder_service_unittest.cc
@@ -690,6 +690,61 @@
   EXPECT_TRUE(video_frame_received->metadata().end_of_stream);
 }
 
+// Tests that a mojom::VideoDecoderClient::OnWaiting() call originating from the
+// underlying mojom::VideoDecoder gets forwarded to the
+// stable::mojom::VideoDecoderClient correctly.
+TEST_F(StableVideoDecoderServiceTest,
+       StableVideoDecoderClientReceivesOnWaitingEvent) {
+  auto mock_video_decoder = std::make_unique<StrictMock<MockVideoDecoder>>();
+  auto* mock_video_decoder_raw = mock_video_decoder.get();
+  auto stable_video_decoder_remote =
+      CreateStableVideoDecoder(std::move(mock_video_decoder));
+  ASSERT_TRUE(stable_video_decoder_remote.is_bound());
+  ASSERT_TRUE(stable_video_decoder_remote.is_connected());
+  auto auxiliary_endpoints = ConstructStableVideoDecoder(
+      stable_video_decoder_remote, *mock_video_decoder_raw,
+      /*expect_construct_call=*/true);
+  ASSERT_TRUE(auxiliary_endpoints);
+  ASSERT_TRUE(auxiliary_endpoints->video_decoder_client_remote);
+  ASSERT_TRUE(auxiliary_endpoints->mock_stable_video_decoder_client);
+
+  constexpr WaitingReason kWaitingReason = WaitingReason::kNoDecryptionKey;
+  EXPECT_CALL(*auxiliary_endpoints->mock_stable_video_decoder_client,
+              OnWaiting(kWaitingReason));
+  auxiliary_endpoints->video_decoder_client_remote->OnWaiting(kWaitingReason);
+  auxiliary_endpoints->video_decoder_client_remote.FlushForTesting();
+}
+
+// Tests that a mojom::MediaLog::AddLogRecord() call originating from the
+// underlying mojom::VideoDecoder gets forwarded to the stable::mojom::MediaLog
+// correctly.
+TEST_F(StableVideoDecoderServiceTest,
+       StableVideoDecoderClientReceivesAddLogRecordEvent) {
+  auto mock_video_decoder = std::make_unique<StrictMock<MockVideoDecoder>>();
+  auto* mock_video_decoder_raw = mock_video_decoder.get();
+  auto stable_video_decoder_remote =
+      CreateStableVideoDecoder(std::move(mock_video_decoder));
+  ASSERT_TRUE(stable_video_decoder_remote.is_bound());
+  ASSERT_TRUE(stable_video_decoder_remote.is_connected());
+  auto auxiliary_endpoints = ConstructStableVideoDecoder(
+      stable_video_decoder_remote, *mock_video_decoder_raw,
+      /*expect_construct_call=*/true);
+  ASSERT_TRUE(auxiliary_endpoints);
+  ASSERT_TRUE(auxiliary_endpoints->media_log_remote);
+  ASSERT_TRUE(auxiliary_endpoints->mock_stable_media_log);
+
+  MediaLogRecord media_log_record_to_send;
+  media_log_record_to_send.id = 2;
+  media_log_record_to_send.type = MediaLogRecord::Type::kMediaStatus;
+  media_log_record_to_send.params.SetStringKey("Test", "Value");
+  media_log_record_to_send.time = base::TimeTicks::Now();
+
+  EXPECT_CALL(*auxiliary_endpoints->mock_stable_media_log,
+              AddLogRecord(media_log_record_to_send));
+  auxiliary_endpoints->media_log_remote->AddLogRecord(media_log_record_to_send);
+  auxiliary_endpoints->media_log_remote.FlushForTesting();
+}
+
 }  // namespace
 
 }  // namespace media
diff --git a/mojo/public/tools/bindings/generators/cpp_templates/interface_declaration.tmpl b/mojo/public/tools/bindings/generators/cpp_templates/interface_declaration.tmpl
index 9759bdbd..bbac331 100644
--- a/mojo/public/tools/bindings/generators/cpp_templates/interface_declaration.tmpl
+++ b/mojo/public/tools/bindings/generators/cpp_templates/interface_declaration.tmpl
@@ -55,12 +55,16 @@
 {%- endfor %}
   };
 
+// crbug.com/1340245 - this causes binary size bloat on Fuchsia, and we're OK
+// with not having this data in traces there.
+#if !BUILDFLAG(IS_FUCHSIA)
 {#--- Per method symbols #}
 {%- for method in interface.methods %}
   struct {{method.name}}_Sym {
     NOINLINE static void IPCSymbol();
   };
 {%- endfor %}
+#endif // !BUILDFLAG(IS_FUCHSIA)
 
 {#--- Enums #}
 {%- for enum in interface.enums %}
diff --git a/mojo/public/tools/bindings/generators/cpp_templates/interface_definition.tmpl b/mojo/public/tools/bindings/generators/cpp_templates/interface_definition.tmpl
index 3e88d44d..9beaa2cc 100644
--- a/mojo/public/tools/bindings/generators/cpp_templates/interface_definition.tmpl
+++ b/mojo/public/tools/bindings/generators/cpp_templates/interface_definition.tmpl
@@ -52,7 +52,11 @@
     case internal::k{{interface.name}}_{{method.name}}_Name: {
       constexpr uint32_t value = base::MD5Hash32Constexpr(
               "(Impl){{namespace_as_string}}::{{interface.name}}::{{method.name}}");
-      return std::make_pair(value, reinterpret_cast<const void*>(&{{interface.name}}::{{method.name}}_Sym::IPCSymbol));
+#if BUILDFLAG(IS_FUCHSIA)
+        return std::make_pair(value, nullptr);
+#else
+        return std::make_pair(value, reinterpret_cast<const void*>(&{{interface.name}}::{{method.name}}_Sym::IPCSymbol));
+#endif // BUILDFLAG(IS_FUCHSIA)
     }
 {%-   endfor %}
   }
@@ -92,6 +96,7 @@
 #endif // BUILDFLAG(MOJO_TRACE_ENABLED)
 }
 
+#if !BUILDFLAG(IS_FUCHSIA)
 {%-   for method in interface.methods %}
 void {{interface.name}}::{{method.name}}_Sym::IPCSymbol() {
   // This method's address is used for indetifiying the mojo method name after
@@ -99,6 +104,7 @@
   NO_CODE_FOLDING();
 }
 {%-   endfor %}
+# endif // !BUILDFLAG(IS_FUCHSIA)
 
 {%- for method in interface.methods %}
 {%-   if method.sync %}
diff --git a/net/quic/dedicated_web_transport_http3_client_test.cc b/net/quic/dedicated_web_transport_http3_client_test.cc
index 86d2bb1..70839b1 100644
--- a/net/quic/dedicated_web_transport_http3_client_test.cc
+++ b/net/quic/dedicated_web_transport_http3_client_test.cc
@@ -204,8 +204,8 @@
   Run();
 }
 
-// TODO(https://crbug.com/1288036): The test is flaky on Mac.
-#if BUILDFLAG(IS_MAC)
+// TODO(https://crbug.com/1288036): The test is flaky on iOS.
+#if BUILDFLAG(IS_IOS)
 #define MAYBE_CloseTimeout DISABLED_CloseTimeout
 #else
 #define MAYBE_CloseTimeout CloseTimeout
diff --git a/pdf/pdfium/findtext_unittest.cc b/pdf/pdfium/findtext_unittest.cc
index 152883f..02908c3 100644
--- a/pdf/pdfium/findtext_unittest.cc
+++ b/pdf/pdfium/findtext_unittest.cc
@@ -149,4 +149,55 @@
   engine->StartFind(base::UTF16ToUTF8(term), /*case_sensitive=*/true);
 }
 
+TEST_F(FindTextTest, SelectFindResult) {
+  FindTextTestClient client;
+  std::unique_ptr<PDFiumEngine> engine =
+      InitializeEngine(&client, FILE_PATH_LITERAL("hello_world2.pdf"));
+  ASSERT_TRUE(engine);
+
+  {
+    InSequence sequence;
+
+    EXPECT_CALL(client,
+                NotifyNumberOfFindResultsChanged(1, /*final_result=*/false));
+    EXPECT_CALL(client, NotifySelectedFindResultChanged(0));
+    for (int i = 1; i < 4; ++i) {
+      EXPECT_CALL(client, NotifyNumberOfFindResultsChanged(
+                              i + 1, /*final_result=*/false));
+    }
+    EXPECT_CALL(client,
+                NotifyNumberOfFindResultsChanged(4, /*final_result=*/true));
+  }
+
+  engine->StartFind("world", /*case_sensitive=*/true);
+
+  {
+    InSequence sequence;
+
+    EXPECT_CALL(client, NotifySelectedFindResultChanged(1));
+    EXPECT_CALL(client,
+                NotifyNumberOfFindResultsChanged(4, /*final_result=*/true));
+  }
+
+  ASSERT_TRUE(engine->SelectFindResult(/*forward=*/true));
+
+  {
+    InSequence sequence;
+
+    EXPECT_CALL(client, NotifySelectedFindResultChanged(2));
+    EXPECT_CALL(client,
+                NotifyNumberOfFindResultsChanged(4, /*final_result=*/true));
+  }
+  ASSERT_TRUE(engine->SelectFindResult(/*forward=*/true));
+
+  {
+    InSequence sequence;
+
+    EXPECT_CALL(client, NotifySelectedFindResultChanged(1));
+    EXPECT_CALL(client,
+                NotifyNumberOfFindResultsChanged(4, /*final_result=*/true));
+  }
+  ASSERT_TRUE(engine->SelectFindResult(/*forward=*/false));
+}
+
 }  // namespace chrome_pdf
diff --git a/remoting/client/notification/notification_client.cc b/remoting/client/notification/notification_client.cc
index 1ceba178..a4225c6 100644
--- a/remoting/client/notification/notification_client.cc
+++ b/remoting/client/notification/notification_client.cc
@@ -220,7 +220,8 @@
   std::string locale_;
   Callback done_;
   raw_ptr<std::string> out_message_translation_;
-  raw_ptr<std::string> out_link_translation_;
+  // TODO(crbug.com/1298696): Breaks remoting_unittests.
+  raw_ptr<std::string, DegradeToNoOpWhenMTE> out_link_translation_;
   bool is_message_translation_fetched_ = false;
   bool is_link_translation_fetched_ = false;
 };
diff --git a/remoting/resources/remoting_strings_fa.xtb b/remoting/resources/remoting_strings_fa.xtb
index 50c5d11..7468567 100644
--- a/remoting/resources/remoting_strings_fa.xtb
+++ b/remoting/resources/remoting_strings_fa.xtb
@@ -2,7 +2,7 @@
 <!DOCTYPE translationbundle>
 <translationbundle lang="fa">
 <translation id="1002108253973310084">نسخه ناسازگار پروتکل شناسایی شد. لطفاً مطمئن شوید جدیدترین نسخه نرم‌افزار روی هر دو رایانه نصب شده است و دوباره امتحان کنید.</translation>
-<translation id="1008557486741366299">اکنون نه</translation>
+<translation id="1008557486741366299">حالا نه</translation>
 <translation id="1201402288615127009">بعدی</translation>
 <translation id="1297009705180977556">خطا در اتصال به <ph name="HOSTNAME" /></translation>
 <translation id="1450760146488584666">شئ درخواست شده وجود ندارد.</translation>
diff --git a/services/audio/output_controller_unittest.cc b/services/audio/output_controller_unittest.cc
index 48b5ce1..7369e7a 100644
--- a/services/audio/output_controller_unittest.cc
+++ b/services/audio/output_controller_unittest.cc
@@ -326,8 +326,11 @@
   }
 
   media::FakeAudioLogFactory fake_audio_log_factory_;
-  raw_ptr<MockAudioOutputStream> last_created_stream_ = nullptr;
-  raw_ptr<MockAudioOutputStream> last_closed_stream_ = nullptr;
+  // TODO(crbug.com/1298696): Breaks services_unittests.
+  raw_ptr<MockAudioOutputStream, DegradeToNoOpWhenMTE> last_created_stream_ =
+      nullptr;
+  raw_ptr<MockAudioOutputStream, DegradeToNoOpWhenMTE> last_closed_stream_ =
+      nullptr;
 };
 
 ACTION(PopulateBuffer) {
diff --git a/services/network/first_party_sets/first_party_sets_access_delegate_unittest.cc b/services/network/first_party_sets/first_party_sets_access_delegate_unittest.cc
index 89e3846..fabf7187 100644
--- a/services/network/first_party_sets/first_party_sets_access_delegate_unittest.cc
+++ b/services/network/first_party_sets/first_party_sets_access_delegate_unittest.cc
@@ -45,6 +45,69 @@
 
 }  // namespace
 
+// No-op FirstPartySetsAccessDelegate should just pass queries to
+// FirstPartySetsManager synchronously.
+class NoopFirstPartySetsAccessDelegateTest : public ::testing::Test {
+ public:
+  NoopFirstPartySetsAccessDelegateTest()
+      : first_party_sets_manager_(/*enabled=*/true),
+        delegate_(
+            /*receiver=*/mojo::NullReceiver(),
+            /*params=*/nullptr,
+            &first_party_sets_manager_) {
+    first_party_sets_manager_.SetCompleteSets({
+        {kSet1Member1, kSet1Owner},
+        {kSet1Member2, kSet1Owner},
+        {kSet1Owner, kSet1Owner},
+        {kSet2Member1, kSet2Owner},
+        {kSet2Owner, kSet2Owner},
+    });
+  }
+
+  FirstPartySetsAccessDelegate& delegate() { return delegate_; }
+
+ private:
+  FirstPartySetsManager first_party_sets_manager_;
+  FirstPartySetsAccessDelegate delegate_;
+};
+
+TEST_F(NoopFirstPartySetsAccessDelegateTest, IsEnabled) {
+  EXPECT_TRUE(delegate().is_enabled());
+}
+
+TEST_F(NoopFirstPartySetsAccessDelegateTest, ComputeMetadata) {
+  EXPECT_THAT(
+      delegate()
+          .ComputeMetadata(kSet1Member1, &kSet1Owner,
+                           {kSet1Member1, kSet1Owner}, base::NullCallback())
+          ->context(),
+      net::SamePartyContext(Type::kSameParty));
+}
+
+TEST_F(NoopFirstPartySetsAccessDelegateTest, Sets) {
+  EXPECT_THAT(delegate().Sets(base::NullCallback()),
+              FirstPartySetsAccessDelegate::SetsByOwner({
+                  {kSet1Owner, {kSet1Owner, kSet1Member1, kSet1Member2}},
+                  {kSet2Owner, {kSet2Owner, kSet2Member1}},
+              }));
+}
+
+TEST_F(NoopFirstPartySetsAccessDelegateTest, FindOwner) {
+  EXPECT_THAT(delegate().FindOwner(kSet1Owner, base::NullCallback()),
+              absl::make_optional(kSet1Owner));
+  EXPECT_THAT(delegate().FindOwner(kSet2Member1, base::NullCallback()),
+              absl::make_optional(kSet2Owner));
+}
+
+TEST_F(NoopFirstPartySetsAccessDelegateTest, FindOwners) {
+  EXPECT_THAT(
+      delegate().FindOwners({kSet1Member1, kSet2Member1}, base::NullCallback()),
+      FirstPartySetsAccessDelegate::OwnersResult({
+          {kSet1Member1, kSet1Owner},
+          {kSet2Member1, kSet2Owner},
+      }));
+}
+
 class FirstPartySetsAccessDelegateTest : public ::testing::Test {
  public:
   explicit FirstPartySetsAccessDelegateTest(bool enabled)
diff --git a/testing/buildbot/chromium.clang.json b/testing/buildbot/chromium.clang.json
index 16fd065..cf9a738 100644
--- a/testing/buildbot/chromium.clang.json
+++ b/testing/buildbot/chromium.clang.json
@@ -21716,7 +21716,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21734,7 +21734,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21755,7 +21755,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21774,7 +21774,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21792,7 +21792,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21810,7 +21810,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21828,7 +21828,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21846,7 +21846,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21864,7 +21864,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21883,7 +21883,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21901,7 +21901,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21919,7 +21919,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21937,7 +21937,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -21959,7 +21959,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21977,7 +21977,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -21995,7 +21995,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22013,7 +22013,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22031,7 +22031,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22049,7 +22049,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22067,7 +22067,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22085,7 +22085,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22103,7 +22103,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -22122,7 +22122,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22140,7 +22140,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22158,7 +22158,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22176,7 +22176,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22194,7 +22194,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22212,7 +22212,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22230,7 +22230,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22248,7 +22248,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22266,7 +22266,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22284,7 +22284,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22302,7 +22302,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22320,7 +22320,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22338,7 +22338,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22356,7 +22356,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22374,7 +22374,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22392,7 +22392,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22410,7 +22410,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22428,7 +22428,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22446,7 +22446,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22464,7 +22464,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22482,7 +22482,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -22501,7 +22501,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22519,7 +22519,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22537,7 +22537,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22555,7 +22555,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22573,7 +22573,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22591,7 +22591,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22609,7 +22609,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22627,7 +22627,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22645,7 +22645,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22663,7 +22663,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22681,7 +22681,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22699,7 +22699,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22717,7 +22717,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22735,7 +22735,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22753,7 +22753,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22771,7 +22771,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22789,7 +22789,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22807,7 +22807,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22825,7 +22825,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22843,7 +22843,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22861,7 +22861,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22879,7 +22879,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22897,7 +22897,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22915,7 +22915,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22933,7 +22933,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22951,7 +22951,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22969,7 +22969,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -22987,7 +22987,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23005,7 +23005,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23023,7 +23023,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23046,7 +23046,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23064,7 +23064,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23082,7 +23082,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23100,7 +23100,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23118,7 +23118,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23137,7 +23137,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23155,7 +23155,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23180,7 +23180,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23215,7 +23215,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -23251,7 +23251,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -23274,7 +23274,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23300,7 +23300,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23319,7 +23319,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23343,7 +23343,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23366,7 +23366,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23389,7 +23389,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23411,7 +23411,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23430,7 +23430,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23452,7 +23452,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23474,7 +23474,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "idempotent": false,
@@ -23500,7 +23500,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "idempotent": false,
@@ -23528,7 +23528,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "idempotent": false,
@@ -23554,7 +23554,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23586,7 +23586,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23607,7 +23607,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23629,7 +23629,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23651,7 +23651,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23672,7 +23672,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23693,7 +23693,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23714,7 +23714,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23735,7 +23735,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23756,7 +23756,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23778,7 +23778,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23799,7 +23799,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23820,7 +23820,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23841,7 +23841,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -23864,7 +23864,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23885,7 +23885,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23906,7 +23906,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23927,7 +23927,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23948,7 +23948,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23969,7 +23969,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -23990,7 +23990,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24011,7 +24011,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24032,7 +24032,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -24054,7 +24054,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24075,7 +24075,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24096,7 +24096,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24117,7 +24117,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24138,7 +24138,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24159,7 +24159,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24180,7 +24180,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24201,7 +24201,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24222,7 +24222,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24243,7 +24243,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24264,7 +24264,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24285,7 +24285,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24306,7 +24306,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24327,7 +24327,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24348,7 +24348,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24369,7 +24369,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24390,7 +24390,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24411,7 +24411,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24432,7 +24432,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24453,7 +24453,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24474,7 +24474,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -24496,7 +24496,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24517,7 +24517,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24538,7 +24538,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24559,7 +24559,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24580,7 +24580,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24601,7 +24601,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24622,7 +24622,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24643,7 +24643,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24664,7 +24664,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24685,7 +24685,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24706,7 +24706,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24727,7 +24727,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24748,7 +24748,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24769,7 +24769,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24790,7 +24790,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24811,7 +24811,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24832,7 +24832,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24853,7 +24853,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24874,7 +24874,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24895,7 +24895,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24916,7 +24916,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24937,7 +24937,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24958,7 +24958,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -24979,7 +24979,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25000,7 +25000,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25021,7 +25021,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25042,7 +25042,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25063,7 +25063,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25084,7 +25084,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25108,7 +25108,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25129,7 +25129,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25150,7 +25150,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25171,7 +25171,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25192,7 +25192,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25214,7 +25214,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25235,7 +25235,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -25260,7 +25260,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25279,7 +25279,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25301,7 +25301,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25321,7 +25321,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25340,7 +25340,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25359,7 +25359,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25378,7 +25378,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25397,7 +25397,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25416,7 +25416,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25436,7 +25436,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25455,7 +25455,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25474,7 +25474,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25493,7 +25493,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25516,7 +25516,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25535,7 +25535,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25554,7 +25554,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25573,7 +25573,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25592,7 +25592,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25611,7 +25611,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25630,7 +25630,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25649,7 +25649,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25668,7 +25668,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25688,7 +25688,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25707,7 +25707,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25726,7 +25726,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25745,7 +25745,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25764,7 +25764,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25783,7 +25783,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25802,7 +25802,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25821,7 +25821,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25840,7 +25840,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25859,7 +25859,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25878,7 +25878,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25897,7 +25897,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25916,7 +25916,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25935,7 +25935,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25954,7 +25954,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25973,7 +25973,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -25992,7 +25992,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26011,7 +26011,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26030,7 +26030,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26049,7 +26049,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26068,7 +26068,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26088,7 +26088,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26107,7 +26107,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26126,7 +26126,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26145,7 +26145,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26164,7 +26164,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26183,7 +26183,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26202,7 +26202,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26221,7 +26221,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26240,7 +26240,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26259,7 +26259,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26278,7 +26278,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26297,7 +26297,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26316,7 +26316,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26335,7 +26335,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26354,7 +26354,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26373,7 +26373,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26392,7 +26392,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26411,7 +26411,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26430,7 +26430,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26449,7 +26449,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26468,7 +26468,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26487,7 +26487,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26506,7 +26506,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26525,7 +26525,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26544,7 +26544,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26563,7 +26563,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26582,7 +26582,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26601,7 +26601,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26620,7 +26620,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26639,7 +26639,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26663,7 +26663,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26682,7 +26682,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26701,7 +26701,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26720,7 +26720,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26739,7 +26739,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26759,7 +26759,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26778,7 +26778,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26804,7 +26804,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26840,7 +26840,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26877,7 +26877,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26901,7 +26901,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26928,7 +26928,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26948,7 +26948,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26973,7 +26973,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -26997,7 +26997,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -27021,7 +27021,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -27044,7 +27044,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -27064,7 +27064,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -27087,7 +27087,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -27110,7 +27110,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -27137,7 +27137,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -27166,7 +27166,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
@@ -27193,7 +27193,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15",
+              "os": "Mac-12",
               "pool": "chrome.tests"
             }
           ],
diff --git a/testing/buildbot/chromium.dev.json b/testing/buildbot/chromium.dev.json
index 52045158..4aa7be59 100644
--- a/testing/buildbot/chromium.dev.json
+++ b/testing/buildbot/chromium.dev.json
@@ -414,7 +414,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester-dev@chops-service-accounts.iam.gserviceaccount.com"
@@ -433,7 +433,7 @@
             {
               "cores": "8|12",
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester-dev@chops-service-accounts.iam.gserviceaccount.com"
@@ -451,7 +451,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester-dev@chops-service-accounts.iam.gserviceaccount.com"
@@ -469,7 +469,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester-dev@chops-service-accounts.iam.gserviceaccount.com"
@@ -487,7 +487,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester-dev@chops-service-accounts.iam.gserviceaccount.com"
@@ -505,7 +505,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester-dev@chops-service-accounts.iam.gserviceaccount.com"
diff --git a/testing/buildbot/chromium.goma.json b/testing/buildbot/chromium.goma.json
index 405a94a..fb15b05 100644
--- a/testing/buildbot/chromium.goma.json
+++ b/testing/buildbot/chromium.goma.json
@@ -190,7 +190,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -208,7 +208,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -233,7 +233,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -251,7 +251,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -276,7 +276,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -294,7 +294,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -319,7 +319,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -337,7 +337,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
diff --git a/testing/buildbot/chromium.memory.json b/testing/buildbot/chromium.memory.json
index b2596a9..a750855 100644
--- a/testing/buildbot/chromium.memory.json
+++ b/testing/buildbot/chromium.memory.json
@@ -12567,7 +12567,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12588,7 +12588,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12610,7 +12610,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12632,7 +12632,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12653,7 +12653,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12674,7 +12674,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12695,7 +12695,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12716,7 +12716,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12737,7 +12737,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12759,7 +12759,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12780,7 +12780,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12801,7 +12801,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12824,7 +12824,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -12847,7 +12847,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12868,7 +12868,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12889,7 +12889,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12910,7 +12910,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12931,7 +12931,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12952,7 +12952,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12973,7 +12973,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -12994,7 +12994,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13016,7 +13016,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -13038,7 +13038,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13059,7 +13059,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13080,7 +13080,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13101,7 +13101,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13122,7 +13122,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13143,7 +13143,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13164,7 +13164,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13185,7 +13185,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13206,7 +13206,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13227,7 +13227,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13248,7 +13248,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13269,7 +13269,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13290,7 +13290,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13311,7 +13311,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13332,7 +13332,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13353,7 +13353,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13374,7 +13374,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13395,7 +13395,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13416,7 +13416,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13437,7 +13437,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13459,7 +13459,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -13481,7 +13481,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13502,7 +13502,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13523,7 +13523,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13544,7 +13544,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13565,7 +13565,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13586,7 +13586,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13607,7 +13607,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13628,7 +13628,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13649,7 +13649,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13670,7 +13670,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13691,7 +13691,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13712,7 +13712,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13733,7 +13733,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13754,7 +13754,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13775,7 +13775,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13796,7 +13796,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13817,7 +13817,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13838,7 +13838,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13859,7 +13859,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13880,7 +13880,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13901,7 +13901,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13922,7 +13922,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13943,7 +13943,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13964,7 +13964,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -13985,7 +13985,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14006,7 +14006,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@@ -14028,7 +14028,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14049,7 +14049,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14070,7 +14070,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14094,7 +14094,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14115,7 +14115,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14136,7 +14136,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14157,7 +14157,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14178,7 +14178,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14200,7 +14200,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@@ -14221,7 +14221,7 @@
           "dimension_sets": [
             {
               "cpu": "x86-64",
-              "os": "Mac-10.15"
+              "os": "Mac-12"
             }
           ],
           "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
diff --git a/testing/buildbot/mixins.pyl b/testing/buildbot/mixins.pyl
index 300b2747..fa5d17a 100644
--- a/testing/buildbot/mixins.pyl
+++ b/testing/buildbot/mixins.pyl
@@ -968,7 +968,7 @@
     'swarming': {
       'dimension_sets': [
          {
-           'os': 'Mac-10.15',
+           'os': 'Mac-12',
            'cpu': 'x86-64',
          },
       ],
diff --git a/third_party/android_lint/.gitignore b/third_party/android_build_tools/lint/.gitignore
similarity index 100%
rename from third_party/android_lint/.gitignore
rename to third_party/android_build_tools/lint/.gitignore
diff --git a/third_party/android_lint/3pp/3pp.pb b/third_party/android_build_tools/lint/3pp/3pp.pb
similarity index 75%
rename from third_party/android_lint/3pp/3pp.pb
rename to third_party/android_build_tools/lint/3pp/3pp.pb
index 388f771..5274a2b 100644
--- a/third_party/android_lint/3pp/3pp.pb
+++ b/third_party/android_build_tools/lint/3pp/3pp.pb
@@ -1,6 +1,7 @@
-# Copyright 2021 The Chromium Authors. All rights reserved.
+# Copyright 2022 The Chromium Authors. All rights reserved.
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
+
 create {
   source {
     script {
@@ -17,6 +18,6 @@
 }
 
 upload {
-  pkg_prefix: "chromium/third_party"
+  pkg_prefix: "chromium/third_party/android_build_tools"
   universal: true
 }
diff --git a/third_party/android_lint/3pp/fetch.py b/third_party/android_build_tools/lint/3pp/fetch.py
similarity index 100%
rename from third_party/android_lint/3pp/fetch.py
rename to third_party/android_build_tools/lint/3pp/fetch.py
diff --git a/third_party/android_lint/3pp/install.py b/third_party/android_build_tools/lint/3pp/install.py
similarity index 100%
rename from third_party/android_lint/3pp/install.py
rename to third_party/android_build_tools/lint/3pp/install.py
diff --git a/third_party/android_lint/BUILD.gn b/third_party/android_build_tools/lint/BUILD.gn
similarity index 87%
rename from third_party/android_lint/BUILD.gn
rename to third_party/android_build_tools/lint/BUILD.gn
index ed4d4382..9d342b98 100644
--- a/third_party/android_lint/BUILD.gn
+++ b/third_party/android_build_tools/lint/BUILD.gn
@@ -11,5 +11,5 @@
 
   # Avoid using java_prebuilt() to ensure all uses go through the checked-in
   # version.
-  input_jars_paths = [ "//third_party/android_lint/lint.jar" ]
+  input_jars_paths = [ "//third_party/android_build_tools/lint/lint.jar" ]
 }
diff --git a/third_party/android_lint/LICENSE b/third_party/android_build_tools/lint/LICENSE
similarity index 100%
rename from third_party/android_lint/LICENSE
rename to third_party/android_build_tools/lint/LICENSE
diff --git a/third_party/android_lint/OWNERS b/third_party/android_build_tools/lint/OWNERS
similarity index 100%
rename from third_party/android_lint/OWNERS
rename to third_party/android_build_tools/lint/OWNERS
diff --git a/third_party/android_lint/README.chromium b/third_party/android_build_tools/lint/README.chromium
similarity index 71%
rename from third_party/android_lint/README.chromium
rename to third_party/android_build_tools/lint/README.chromium
index 12f1534..49c32c9b 100644
--- a/third_party/android_lint/README.chromium
+++ b/third_party/android_build_tools/lint/README.chromium
@@ -12,8 +12,9 @@
 Local Modifications:
 * For the custom lint jar:
   * This is required only when CustomLint.java changes.
-autoninja -C out/Debug third_party/android_lint:custom_lint_java
-cp out/Debug/obj/third_party/android_lint/custom_lint_java.javac.jar third_party/android_lint/custom_lint.jar
+autoninja -C out/Debug third_party/android_build_tools/lint:custom_lint_java
+cp out/Debug/obj/third_party/android_build_tools/lint/custom_lint_java.javac.jar \
+   third_party/android_build_tools/lint/custom_lint.jar
 
 What version is this:
   * New instances are uploaded by the packager bot:
@@ -21,4 +22,4 @@
   * The bot autoruns every 6 hours. Ping a trooper or a clank-build-core@ dev to
     trigger it if you need it sooner:
     https://luci-scheduler.appspot.com/jobs/chromium/3pp-linux-amd64-packager
-  * New versions need to be manually added by updating //DEPS.
+  * Switching to a newer verison requires manually updating //DEPS.
diff --git a/third_party/android_lint/custom_lint.jar b/third_party/android_build_tools/lint/custom_lint.jar
similarity index 100%
rename from third_party/android_lint/custom_lint.jar
rename to third_party/android_build_tools/lint/custom_lint.jar
Binary files differ
diff --git a/third_party/android_lint/java/src/org/chromium/build/CustomLint.java b/third_party/android_build_tools/lint/java/src/org/chromium/build/CustomLint.java
similarity index 100%
rename from third_party/android_lint/java/src/org/chromium/build/CustomLint.java
rename to third_party/android_build_tools/lint/java/src/org/chromium/build/CustomLint.java
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
index 513474f..a4ac6fd 100644
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -166,6 +166,9 @@
 const base::Feature kPrefersColorSchemeClientHintHeader{
     "PrefersColorSchemeClientHintHeader", base::FEATURE_ENABLED_BY_DEFAULT};
 
+const base::Feature kVariableCOLRV1{"VariableCOLRV1",
+                                    base::FEATURE_DISABLED_BY_DEFAULT};
+
 // Controls whether the Viewport Height client hint can be added to request
 // headers.
 const base::Feature kViewportHeightClientHintHeader{
diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h
index b9a0499..9ae0d7b 100644
--- a/third_party/blink/public/common/features.h
+++ b/third_party/blink/public/common/features.h
@@ -62,6 +62,7 @@
 BLINK_COMMON_EXPORT extern const base::Feature kUserAgentClientHint;
 BLINK_COMMON_EXPORT extern const base::Feature
     kPrefersColorSchemeClientHintHeader;
+BLINK_COMMON_EXPORT extern const base::Feature kVariableCOLRV1;
 BLINK_COMMON_EXPORT extern const base::Feature kViewportHeightClientHintHeader;
 BLINK_COMMON_EXPORT extern const base::Feature kFullUserAgent;
 BLINK_COMMON_EXPORT extern const base::Feature kPath2DPaintCache;
diff --git a/third_party/blink/public/mojom/use_counter/metrics/web_feature.mojom b/third_party/blink/public/mojom/use_counter/metrics/web_feature.mojom
index f08c067..e48b3e0 100644
--- a/third_party/blink/public/mojom/use_counter/metrics/web_feature.mojom
+++ b/third_party/blink/public/mojom/use_counter/metrics/web_feature.mojom
@@ -3611,6 +3611,7 @@
   kDeviceOrientationUsedWithoutPermissionRequest = 4290,
   kDeviceMotionPermissionRequested = 4291,
   kDeviceMotionUsedWithoutPermissionRequest = 4292,
+  kPrivateNetworkAccessPermissionPrompt = 4293,
 
   // Add new features immediately above this line. Don't change assigned
   // numbers of any item, and don't reuse removed slots.
diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_party/blink/public/platform/web_runtime_features.h
index f23687a..40d8809 100644
--- a/third_party/blink/public/platform/web_runtime_features.h
+++ b/third_party/blink/public/platform/web_runtime_features.h
@@ -242,6 +242,7 @@
       bool);
   BLINK_PLATFORM_EXPORT static void EnableWebAuthenticationRemoteDesktopSupport(
       bool);
+  BLINK_PLATFORM_EXPORT static void EnableWebHIDOnServiceWorkers(bool enable);
 
  private:
   WebRuntimeFeatures();
diff --git a/third_party/blink/renderer/bindings/idl_in_modules.gni b/third_party/blink/renderer/bindings/idl_in_modules.gni
index efb65ac..227dd50c 100644
--- a/third_party/blink/renderer/bindings/idl_in_modules.gni
+++ b/third_party/blink/renderer/bindings/idl_in_modules.gni
@@ -325,6 +325,7 @@
           "//third_party/blink/renderer/modules/hid/hid_report_info.idl",
           "//third_party/blink/renderer/modules/hid/hid_report_item.idl",
           "//third_party/blink/renderer/modules/hid/navigator_hid.idl",
+          "//third_party/blink/renderer/modules/hid/worker_navigator_hid.idl",
           "//third_party/blink/renderer/modules/idle/idle_detector.idl",
           "//third_party/blink/renderer/modules/idle/idle_options.idl",
           "//third_party/blink/renderer/modules/imagecapture/constrain_point_2d_parameters.idl",
diff --git a/third_party/blink/renderer/build/scripts/templates/instrumenting_probes_impl.cc.tmpl b/third_party/blink/renderer/build/scripts/templates/instrumenting_probes_impl.cc.tmpl
index aa57ba6b..51a329421 100644
--- a/third_party/blink/renderer/build/scripts/templates/instrumenting_probes_impl.cc.tmpl
+++ b/third_party/blink/renderer/build/scripts/templates/instrumenting_probes_impl.cc.tmpl
@@ -14,15 +14,15 @@
 {% for agent in agents|sort %}
 #include "{{agent | agent_name_to_include}}"
 {% endfor %}
-#include "third_party/blink/renderer/platform/wtf/threading_primitives.h"
+#include "base/synchronization/lock.h"
 
 namespace blink {
 
 namespace {
 
-Mutex& AgentCountMutex() {
-  DEFINE_THREAD_SAFE_STATIC_LOCAL(Mutex, mutex, ());
-  return mutex;
+base::Lock& AgentCountLock() {
+  DEFINE_THREAD_SAFE_STATIC_LOCAL(base::Lock, lock, ());
+  return lock;
 }
 
 }  // namespace
@@ -33,7 +33,7 @@
 {{sink_class}}::{{sink_class}}() {}
 
 {{sink_class}}::~{{sink_class}}() {
-  MutexLocker lock(AgentCountMutex());
+  base::AutoLock locker(AgentCountLock());
 {% for agent in agents|sort %}
   if (Has{{agent}}s() && --s_numSinksWith{{agent}} == 0)
     s_existingAgents &= ~k{{agent}};
@@ -52,7 +52,7 @@
   {{getter_name}}s_.AddAgent(agent);
 
   if (!already_had_agent) {
-    MutexLocker lock(AgentCountMutex());
+    base::AutoLock locker(AgentCountLock());
     if (++s_numSinksWith{{agent}} == 1)
       s_existingAgents |= k{{agent}};
   }
@@ -67,7 +67,7 @@
   {{getter_name}}s_.RemoveAgent(agent);
 
   if (!Has{{agent}}s()) {
-    MutexLocker lock(AgentCountMutex());
+    base::AutoLock locker(AgentCountLock());
     if (--s_numSinksWith{{agent}} == 0)
       s_existingAgents &= ~k{{agent}};
   }
diff --git a/third_party/blink/renderer/core/dom/events/event_listener_map.cc b/third_party/blink/renderer/core/dom/events/event_listener_map.cc
index 334ed94..dfb57bd 100644
--- a/third_party/blink/renderer/core/dom/events/event_listener_map.cc
+++ b/third_party/blink/renderer/core/dom/events/event_listener_map.cc
@@ -40,20 +40,20 @@
 #include "third_party/blink/renderer/platform/wtf/vector.h"
 
 #if DCHECK_IS_ON()
+#include "base/synchronization/lock.h"
 #include "third_party/blink/renderer/platform/wtf/threading.h"
-#include "third_party/blink/renderer/platform/wtf/threading_primitives.h"
 #endif
 
 namespace blink {
 
 #if DCHECK_IS_ON()
-static Mutex& ActiveIteratorCountMutex() {
-  DEFINE_THREAD_SAFE_STATIC_LOCAL(Mutex, mutex, ());
-  return mutex;
+static base::Lock& ActiveIteratorCountLock() {
+  DEFINE_THREAD_SAFE_STATIC_LOCAL(base::Lock, lock, ());
+  return lock;
 }
 
 void EventListenerMap::CheckNoActiveIterators() {
-  MutexLocker locker(ActiveIteratorCountMutex());
+  base::AutoLock locker(ActiveIteratorCountLock());
   DCHECK(!active_iterator_count_);
 }
 #endif
diff --git a/third_party/blink/renderer/core/editing/substring_util.h b/third_party/blink/renderer/core/editing/substring_util.h
index e5d6a32..eb57e7d 100644
--- a/third_party/blink/renderer/core/editing/substring_util.h
+++ b/third_party/blink/renderer/core/editing/substring_util.h
@@ -52,31 +52,30 @@
 
 class SubstringUtil {
  public:
-  // Returns an autoreleased NSAttributedString that is the word under
-  // the given point inside the given WebFrameWidgetImpl or nil on error.
-  // Upon return, |baselinePoint| is set to the left baseline point in
-  // AppKit coordinates.
+  // Given a point inside a `WebFrameWidgetImpl`, determines the word underneath
+  // that point and returns:
+  //
+  // - an autoreleased `NSAttributedString` of that word and
+  // - the left baseline point of that word in `baseline_point`
+  //
+  // Returns nil on failure.
   CORE_EXPORT static NSAttributedString* AttributedWordAtPoint(
       WebFrameWidgetImpl*,
       gfx::Point,
       gfx::Point& baseline_point);
 
-  // Returns an autoreleased NSAttributedString that is a substring of the
-  // Frame at the given range, or nil on error.
-  CORE_EXPORT static NSAttributedString* AttributedSubstringInRange(
-      LocalFrame*,
-      wtf_size_t location,
-      wtf_size_t length);
-
-  // Returns an autoreleased NSAttributedString that is a substring of the
-  // Frame at the given range, or nil on error.
-  // It also gets the baseline point for the given range for showing
-  // dictionary lookup bubble.
+  // Given a range of a `LocalFrame`, determines the substring specified by that
+  // range and returns:
+  //
+  // - an autoreleased `NSAttributedString` of that substring and
+  // - the left baseline point of that substring in `baseline_point`
+  //
+  // Returns nil on failure.
   CORE_EXPORT static NSAttributedString* AttributedSubstringInRange(
       LocalFrame*,
       wtf_size_t location,
       wtf_size_t length,
-      gfx::Point* baseline_point);
+      gfx::Point& baseline_point);
 };
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/core/editing/substring_util.mm b/third_party/blink/renderer/core/editing/substring_util.mm
index 876a87e..eabb963 100644
--- a/third_party/blink/renderer/core/editing/substring_util.mm
+++ b/third_party/blink/renderer/core/editing/substring_util.mm
@@ -61,9 +61,12 @@
 
 namespace {
 
-NSAttributedString* AttributedSubstringFromRange(const EphemeralRange& range,
-                                                 float font_scale) {
-  NSMutableAttributedString* string = [[NSMutableAttributedString alloc] init];
+NSString* const kCrBaselineOffset = @"kCrBaselineOffset";
+
+NSAttributedString* AttributedSubstringFromRange(LocalFrame* frame,
+                                                 const EphemeralRange& range) {
+  NSMutableAttributedString* string =
+      [[[NSMutableAttributedString alloc] init] autorelease];
   NSMutableDictionary* attrs = [NSMutableDictionary dictionary];
   size_t length = range.EndPosition().ComputeOffsetInContainerNode() -
                   range.StartPosition().ComputeOffsetInContainerNode();
@@ -87,11 +90,37 @@
     if (!layout_object)
       continue;
 
+    // There are two ways that the size of text can be affected by the user. One
+    // is the page scale factor, which is what the user changes by pinching on
+    // the trackpad. The other is zooming, which combines 1. the effect of users
+    // using ⌘+/⌘- and 2. implementing the device scale factor (this is an
+    // implementation feature called "zoom-for-dsf"). The zoom value is baked
+    // into the font size, so to calculate the font size needed for display, the
+    // device scale factor must be divided out from the font size and the page
+    // scale factor must be multiplied in.
+
     const ComputedStyle* style = layout_object->Style();
-    FontPlatformData font_platform_data =
+    const FontPlatformData font_platform_data =
         style->GetFont().PrimaryFont()->PlatformData();
-    font_platform_data.text_size_ *= font_scale;
-    NSFont* font = base::mac::CFToNSCast(font_platform_data.CtFont());
+
+    const float page_scale_factor = frame->GetPage()->PageScaleFactor();
+    const float device_scale_factor =
+        frame->GetWidgetForLocalRoot()->DIPsToBlinkSpace(1.0f);
+
+    NSFont* original_font = base::mac::CFToNSCast(font_platform_data.CtFont());
+    const CGFloat desired_size =
+        font_platform_data.size() * page_scale_factor / device_scale_factor;
+
+    NSFont* font = nil;
+    if (original_font) {
+      if (@available(macos 10.15, *)) {
+        font = [original_font fontWithSize:desired_size];
+      } else {
+        font = [NSFontManager.sharedFontManager convertFont:original_font
+                                                     toSize:desired_size];
+      }
+    }
+
     // If the platform font can't be loaded, or the size is incorrect comparing
     // to the computed style, it's likely that the site is using a web font.
     // For now, just use the default font instead.
@@ -100,13 +129,17 @@
     // TODO(shuchen): Support scaling the font as necessary according to CSS
     // transforms, not just pinch-zoom.
     if (!font || floor(font_platform_data.size()) !=
-                     floor([[font fontDescriptor] pointSize])) {
+                     floor(original_font.fontDescriptor.pointSize)) {
       font = [NSFont systemFontOfSize:style->GetFont()
                                           .GetFontDescription()
                                           .ComputedSize() *
-                                      font_scale];
+                                      page_scale_factor / device_scale_factor];
     }
     attrs[NSFontAttributeName] = font;
+    if (original_font)
+      attrs[kCrBaselineOffset] = @(original_font.descender * page_scale_factor);
+    else
+      attrs[kCrBaselineOffset] = @(font.descender * page_scale_factor);
 
     if (style->VisitedDependentColor(GetCSSPropertyColor()).Alpha())
       attrs[NSForegroundColorAttributeName] =
@@ -130,7 +163,7 @@
     [string setAttributes:attrs range:NSMakeRange(position, num_characters)];
     position += num_characters;
   }
-  return [string autorelease];
+  return string;
 }
 
 gfx::Point GetBaselinePoint(LocalFrameView* frame_view,
@@ -143,8 +176,9 @@
   if ([string length]) {
     NSDictionary* attributes = [string attributesAtIndex:0
                                           effectiveRange:nullptr];
-    if (NSFont* font = attributes[NSFontAttributeName])
-      string_point.Offset(0, ceil([font descender]));
+    if (NSNumber* descender = attributes[kCrBaselineOffset]) {
+      string_point.Offset(0, ceil(descender.doubleValue));
+    }
   }
   return string_point;
 }
@@ -172,8 +206,7 @@
   const EphemeralRange word_range = NormalizeRange(selection);
 
   // Convert to NSAttributedString.
-  NSAttributedString* string = AttributedSubstringFromRange(
-      word_range, frame->GetPage()->GetVisualViewport().Scale());
+  NSAttributedString* string = AttributedSubstringFromRange(frame, word_range);
   baseline_point = GetBaselinePoint(frame->View(), word_range, string);
   return string;
 }
@@ -181,16 +214,8 @@
 NSAttributedString* SubstringUtil::AttributedSubstringInRange(
     LocalFrame* frame,
     wtf_size_t location,
-    wtf_size_t length) {
-  return SubstringUtil::AttributedSubstringInRange(frame, location, length,
-                                                   nil);
-}
-
-NSAttributedString* SubstringUtil::AttributedSubstringInRange(
-    LocalFrame* frame,
-    wtf_size_t location,
     wtf_size_t length,
-    gfx::Point* baseline_point) {
+    gfx::Point& baseline_point) {
   frame->View()->UpdateStyleAndLayout();
 
   Element* editable = frame->Selection().RootEditableElementOrDocumentElement();
@@ -201,11 +226,10 @@
   if (ephemeral_range.IsNull())
     return nil;
 
-  NSAttributedString* result = AttributedSubstringFromRange(
-      ephemeral_range, frame->GetPage()->GetVisualViewport().Scale());
-  if (baseline_point)
-    *baseline_point = GetBaselinePoint(frame->View(), ephemeral_range, result);
-  return result;
+  NSAttributedString* string =
+      AttributedSubstringFromRange(frame, ephemeral_range);
+  baseline_point = GetBaselinePoint(frame->View(), ephemeral_range, string);
+  return string;
 }
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/core/editing/substring_util_test.mm b/third_party/blink/renderer/core/editing/substring_util_test.mm
index 6a5d38f..6c52ad9 100644
--- a/third_party/blink/renderer/core/editing/substring_util_test.mm
+++ b/third_party/blink/renderer/core/editing/substring_util_test.mm
@@ -52,7 +52,7 @@
 
   gfx::Point baseline_point;
   NSAttributedString* result = SubstringUtil::AttributedSubstringInRange(
-      frame->GetFrame(), 10, 3, &baseline_point);
+      frame->GetFrame(), 10, 3, baseline_point);
   ASSERT_TRUE(!!result);
 
   gfx::Point point(baseline_point);
@@ -63,7 +63,7 @@
   web_view->SetZoomLevel(3);
 
   result = SubstringUtil::AttributedSubstringInRange(frame->GetFrame(), 5, 5,
-                                                     &baseline_point);
+                                                     baseline_point);
   ASSERT_TRUE(!!result);
 
   point = baseline_point;
@@ -82,12 +82,11 @@
       static_cast<WebLocalFrameImpl*>(web_view->MainFrame());
 
   gfx::Point old_point;
-  SubstringUtil::AttributedSubstringInRange(frame->GetFrame(), 3, 1,
-                                            &old_point);
+  SubstringUtil::AttributedSubstringInRange(frame->GetFrame(), 3, 1, old_point);
 
   gfx::Point new_point;
   SubstringUtil::AttributedSubstringInRange(frame->GetFrame(), 3, 20,
-                                            &new_point);
+                                            new_point);
 
   EXPECT_EQ(old_point.x(), new_point.x());
   EXPECT_EQ(old_point.y(), new_point.y());
@@ -105,14 +104,14 @@
 
   gfx::Point baseline_point;
   result = SubstringUtil::AttributedSubstringInRange(frame->GetFrame(), 10, 3,
-                                                     &baseline_point);
+                                                     baseline_point);
   ASSERT_TRUE(!!result);
 
   web_view->SetPageScaleFactor(3);
 
   gfx::Point point_after_zoom;
   result = SubstringUtil::AttributedSubstringInRange(frame->GetFrame(), 10, 3,
-                                                     &point_after_zoom);
+                                                     point_after_zoom);
   ASSERT_TRUE(!!result);
 
   // We won't have moved by a full factor of 3 because of the translations, but
@@ -136,7 +135,7 @@
 
   gfx::Point baseline_point;
   NSAttributedString* result = SubstringUtil::AttributedSubstringInRange(
-      child_frame->GetFrame(), 11, 7, &baseline_point);
+      child_frame->GetFrame(), 11, 7, baseline_point);
   ASSERT_NE(result, nullptr);
 
   gfx::Point point(baseline_point);
diff --git a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc
index b222ff2ef..98cc08b 100644
--- a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc
+++ b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc
@@ -1175,7 +1175,7 @@
   ui::mojom::blink::AttributedStringPtr attributed_string = nullptr;
   NSAttributedString* string = SubstringUtil::AttributedSubstringInRange(
       frame_, base::checked_cast<WTF::wtf_size_t>(range.start()),
-      base::checked_cast<WTF::wtf_size_t>(range.length()), &baseline_point);
+      base::checked_cast<WTF::wtf_size_t>(range.length()), baseline_point);
   if (string)
     attributed_string = ui::mojom::blink::AttributedString::From(string);
 
diff --git a/third_party/blink/renderer/core/inspector/inspector_task_runner.cc b/third_party/blink/renderer/core/inspector/inspector_task_runner.cc
index 0ea17b3..553feae 100644
--- a/third_party/blink/renderer/core/inspector/inspector_task_runner.cc
+++ b/third_party/blink/renderer/core/inspector/inspector_task_runner.cc
@@ -18,19 +18,19 @@
 InspectorTaskRunner::~InspectorTaskRunner() = default;
 
 void InspectorTaskRunner::InitIsolate(v8::Isolate* isolate) {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   isolate_ = isolate;
 }
 
 void InspectorTaskRunner::Dispose() {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   disposed_ = true;
   isolate_ = nullptr;
   isolate_task_runner_ = nullptr;
 }
 
 bool InspectorTaskRunner::AppendTask(Task task) {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   if (disposed_)
     return false;
   interrupting_task_queue_.push_back(std::move(task));
@@ -47,7 +47,7 @@
 }
 
 bool InspectorTaskRunner::AppendTaskDontInterrupt(Task task) {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   if (disposed_)
     return false;
   PostCrossThreadTask(*isolate_task_runner_, FROM_HERE, std::move(task));
@@ -55,7 +55,7 @@
 }
 
 InspectorTaskRunner::Task InspectorTaskRunner::TakeNextInterruptingTask() {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
 
   if (disposed_ || interrupting_task_queue_.IsEmpty())
     return Task();
diff --git a/third_party/blink/renderer/core/inspector/inspector_task_runner.h b/third_party/blink/renderer/core/inspector/inspector_task_runner.h
index 6d870562..0b88027 100644
--- a/third_party/blink/renderer/core/inspector/inspector_task_runner.h
+++ b/third_party/blink/renderer/core/inspector/inspector_task_runner.h
@@ -5,6 +5,7 @@
 #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_INSPECTOR_INSPECTOR_TASK_RUNNER_H_
 #define THIRD_PARTY_BLINK_RENDERER_CORE_INSPECTOR_INSPECTOR_TASK_RUNNER_H_
 
+#include "base/synchronization/lock.h"
 #include "base/task/single_thread_task_runner.h"
 #include "base/thread_annotations.h"
 #include "third_party/blink/renderer/core/core_export.h"
@@ -13,7 +14,6 @@
 #include "third_party/blink/renderer/platform/wtf/forward.h"
 #include "third_party/blink/renderer/platform/wtf/functional.h"
 #include "third_party/blink/renderer/platform/wtf/thread_safe_ref_counted.h"
-#include "third_party/blink/renderer/platform/wtf/threading_primitives.h"
 #include "v8/include/v8.h"
 
 namespace blink {
@@ -38,9 +38,9 @@
   InspectorTaskRunner& operator=(const InspectorTaskRunner&) = delete;
 
   // Must be called on the isolate's thread.
-  void InitIsolate(v8::Isolate*) LOCKS_EXCLUDED(mutex_);
+  void InitIsolate(v8::Isolate*) LOCKS_EXCLUDED(lock_);
   // Can be disposed from any thread.
-  void Dispose() LOCKS_EXCLUDED(mutex_);
+  void Dispose() LOCKS_EXCLUDED(lock_);
 
   // Can be called from any thread other than isolate's thread.
   // This method appends a task, and both posts to the isolate's task runner
@@ -49,7 +49,7 @@
   // already been disposed. Note that successfully appending a task does not
   // guarantee that it'll run, e.g. if Dispose() is called before it runs.
   using Task = CrossThreadOnceClosure;
-  bool AppendTask(Task) LOCKS_EXCLUDED(mutex_);
+  bool AppendTask(Task) LOCKS_EXCLUDED(lock_);
 
   // Can be called from any thread other than isolate's thread.
   // This method appends a task and posts to the isolate's task runner to
@@ -58,7 +58,7 @@
   // Returns if the task has been appended or discarded if this runner has
   // already been disposed. Note that successfully appending a task does not
   // guarantee that it'll run, e.g. if Dispose() is called before it runs.
-  bool AppendTaskDontInterrupt(Task) LOCKS_EXCLUDED(mutex_);
+  bool AppendTaskDontInterrupt(Task) LOCKS_EXCLUDED(lock_);
 
   scoped_refptr<base::SingleThreadTaskRunner> isolate_task_runner() {
     return isolate_task_runner_;
@@ -71,15 +71,15 @@
   ~InspectorTaskRunner();
 
   // All these methods are run on the isolate's thread.
-  Task TakeNextInterruptingTask() LOCKS_EXCLUDED(mutex_);
-  void PerformSingleInterruptingTaskDontWait() LOCKS_EXCLUDED(mutex_);
+  Task TakeNextInterruptingTask() LOCKS_EXCLUDED(lock_);
+  void PerformSingleInterruptingTaskDontWait() LOCKS_EXCLUDED(lock_);
   static void V8InterruptCallback(v8::Isolate*, void* data);
 
-  Mutex mutex_;
+  base::Lock lock_;
   scoped_refptr<base::SingleThreadTaskRunner> isolate_task_runner_;
-  v8::Isolate* isolate_ GUARDED_BY(mutex_) = nullptr;
+  v8::Isolate* isolate_ GUARDED_BY(lock_) = nullptr;
   Deque<Task> interrupting_task_queue_;
-  bool disposed_ GUARDED_BY(mutex_) = false;
+  bool disposed_ GUARDED_BY(lock_) = false;
 };
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/core/inspector/main_thread_debugger.cc b/third_party/blink/renderer/core/inspector/main_thread_debugger.cc
index 2e477ee..3ef3a983 100644
--- a/third_party/blink/renderer/core/inspector/main_thread_debugger.cc
+++ b/third_party/blink/renderer/core/inspector/main_thread_debugger.cc
@@ -32,6 +32,7 @@
 
 #include <memory>
 
+#include "base/synchronization/lock.h"
 #include "build/chromeos_buildflags.h"
 #include "third_party/blink/renderer/bindings/core/v8/binding_security.h"
 #include "third_party/blink/renderer/bindings/core/v8/script_controller.h"
@@ -65,15 +66,14 @@
 #include "third_party/blink/renderer/platform/bindings/dom_wrapper_world.h"
 #include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
 #include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
-#include "third_party/blink/renderer/platform/wtf/threading_primitives.h"
 
 namespace blink {
 
 namespace {
 
-Mutex& CreationMutex() {
-  DEFINE_THREAD_SAFE_STATIC_LOCAL(Mutex, mutex, ());
-  return mutex;
+base::Lock& CreationLock() {
+  DEFINE_THREAD_SAFE_STATIC_LOCAL(base::Lock, lock, ());
+  return lock;
 }
 
 LocalFrame* ToFrame(ExecutionContext* context) {
@@ -92,13 +92,13 @@
 MainThreadDebugger::MainThreadDebugger(v8::Isolate* isolate)
     : ThreadDebugger(isolate),
       paused_(false) {
-  MutexLocker locker(CreationMutex());
+  base::AutoLock locker(CreationLock());
   DCHECK(!instance_);
   instance_ = this;
 }
 
 MainThreadDebugger::~MainThreadDebugger() {
-  MutexLocker locker(CreationMutex());
+  base::AutoLock locker(CreationLock());
   DCHECK_EQ(instance_, this);
   instance_ = nullptr;
 }
diff --git a/third_party/blink/renderer/core/workers/parent_execution_context_task_runners.cc b/third_party/blink/renderer/core/workers/parent_execution_context_task_runners.cc
index 32f1e64..b0d01d0 100644
--- a/third_party/blink/renderer/core/workers/parent_execution_context_task_runners.cc
+++ b/third_party/blink/renderer/core/workers/parent_execution_context_task_runners.cc
@@ -4,11 +4,11 @@
 
 #include "third_party/blink/renderer/core/workers/parent_execution_context_task_runners.h"
 
+#include "base/synchronization/lock.h"
 #include "third_party/blink/public/platform/platform.h"
 #include "third_party/blink/public/platform/task_type.h"
 #include "third_party/blink/renderer/core/execution_context/execution_context.h"
 #include "third_party/blink/renderer/platform/scheduler/public/thread.h"
-#include "third_party/blink/renderer/platform/wtf/threading_primitives.h"
 
 namespace blink {
 
@@ -40,7 +40,7 @@
 
 scoped_refptr<base::SingleThreadTaskRunner>
 ParentExecutionContextTaskRunners::Get(TaskType type) {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   return task_runners_.at(type);
 }
 
@@ -49,7 +49,7 @@
 }
 
 void ParentExecutionContextTaskRunners::ContextDestroyed() {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   for (auto& entry : task_runners_)
     entry.value = Thread::Current()->GetTaskRunner();
 }
diff --git a/third_party/blink/renderer/core/workers/parent_execution_context_task_runners.h b/third_party/blink/renderer/core/workers/parent_execution_context_task_runners.h
index bbf3eb5..e0d0b10 100644
--- a/third_party/blink/renderer/core/workers/parent_execution_context_task_runners.h
+++ b/third_party/blink/renderer/core/workers/parent_execution_context_task_runners.h
@@ -5,6 +5,7 @@
 #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_WORKERS_PARENT_EXECUTION_CONTEXT_TASK_RUNNERS_H_
 #define THIRD_PARTY_BLINK_RENDERER_CORE_WORKERS_PARENT_EXECUTION_CONTEXT_TASK_RUNNERS_H_
 
+#include "base/synchronization/lock.h"
 #include "base/task/single_thread_task_runner.h"
 #include "base/thread_annotations.h"
 #include "third_party/blink/renderer/core/core_export.h"
@@ -13,7 +14,6 @@
 #include "third_party/blink/renderer/platform/heap/garbage_collected.h"
 #include "third_party/blink/renderer/platform/wtf/allocator/allocator.h"
 #include "third_party/blink/renderer/platform/wtf/hash_map.h"
-#include "third_party/blink/renderer/platform/wtf/threading_primitives.h"
 
 namespace blink {
 
@@ -45,7 +45,7 @@
   // Might return nullptr for unsupported task types. This can be called from
   // any threads.
   scoped_refptr<base::SingleThreadTaskRunner> Get(TaskType)
-      LOCKS_EXCLUDED(mutex_);
+      LOCKS_EXCLUDED(lock_);
 
   void Trace(Visitor*) const override;
 
@@ -55,10 +55,10 @@
                                     WTF::IntHash<TaskType>,
                                     TaskTypeTraits>;
 
-  void ContextDestroyed() LOCKS_EXCLUDED(mutex_) override;
+  void ContextDestroyed() LOCKS_EXCLUDED(lock_) override;
 
-  Mutex mutex_;
-  TaskRunnerHashMap task_runners_ GUARDED_BY(mutex_);
+  base::Lock lock_;
+  TaskRunnerHashMap task_runners_ GUARDED_BY(lock_);
 };
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/core/workers/worker_backing_thread.cc b/third_party/blink/renderer/core/workers/worker_backing_thread.cc
index 0c06d181..b14a7610 100644
--- a/third_party/blink/renderer/core/workers/worker_backing_thread.cc
+++ b/third_party/blink/renderer/core/workers/worker_backing_thread.cc
@@ -7,6 +7,7 @@
 #include <memory>
 
 #include "base/location.h"
+#include "base/synchronization/lock.h"
 #include "third_party/blink/public/common/features.h"
 #include "third_party/blink/public/platform/platform.h"
 #include "third_party/blink/public/web/blink.h"
@@ -26,26 +27,23 @@
 
 namespace {
 
-Mutex& IsolatesMutex() {
-  DEFINE_THREAD_SAFE_STATIC_LOCAL(Mutex, mutex, ());
-  return mutex;
+base::Lock& IsolatesLock() {
+  DEFINE_THREAD_SAFE_STATIC_LOCAL(base::Lock, lock, ());
+  return lock;
 }
 
-HashSet<v8::Isolate*>& Isolates() {
-#if DCHECK_IS_ON()
-  IsolatesMutex().AssertAcquired();
-#endif
+HashSet<v8::Isolate*>& Isolates() EXCLUSIVE_LOCKS_REQUIRED(IsolatesLock()) {
   static HashSet<v8::Isolate*>& isolates = *new HashSet<v8::Isolate*>();
   return isolates;
 }
 
 void AddWorkerIsolate(v8::Isolate* isolate) {
-  MutexLocker lock(IsolatesMutex());
+  base::AutoLock locker(IsolatesLock());
   Isolates().insert(isolate);
 }
 
 void RemoveWorkerIsolate(v8::Isolate* isolate) {
-  MutexLocker lock(IsolatesMutex());
+  base::AutoLock locker(IsolatesLock());
   Isolates().erase(isolate);
 }
 
@@ -120,7 +118,7 @@
 // static
 void WorkerBackingThread::MemoryPressureNotificationToWorkerThreadIsolates(
     v8::MemoryPressureLevel level) {
-  MutexLocker lock(IsolatesMutex());
+  base::AutoLock locker(IsolatesLock());
   for (v8::Isolate* isolate : Isolates())
     isolate->MemoryPressureNotification(level);
 }
diff --git a/third_party/blink/renderer/core/workers/worker_thread.cc b/third_party/blink/renderer/core/workers/worker_thread.cc
index 265e4bed..ef06596 100644
--- a/third_party/blink/renderer/core/workers/worker_thread.cc
+++ b/third_party/blink/renderer/core/workers/worker_thread.cc
@@ -32,6 +32,7 @@
 
 #include "base/auto_reset.h"
 #include "base/metrics/histogram_functions.h"
+#include "base/synchronization/lock.h"
 #include "base/synchronization/waitable_event.h"
 #include "base/threading/thread_restrictions.h"
 #include "third_party/blink/public/common/loader/worker_main_script_load_parameters.h"
@@ -79,9 +80,9 @@
 
 }  // namespace
 
-Mutex& WorkerThread::ThreadSetMutex() {
-  DEFINE_THREAD_SAFE_STATIC_LOCAL(Mutex, mutex, ());
-  return mutex;
+base::Lock& WorkerThread::ThreadSetLock() {
+  DEFINE_THREAD_SAFE_STATIC_LOCAL(base::Lock, lock, ());
+  return lock;
 }
 
 static std::atomic_int g_unique_worker_thread_id(1);
@@ -153,7 +154,7 @@
 
 WorkerThread::~WorkerThread() {
   DCHECK_CALLED_ON_VALID_THREAD(parent_thread_checker_);
-  MutexLocker lock(ThreadSetMutex());
+  base::AutoLock locker(ThreadSetLock());
   DCHECK(InitializingWorkerThreads().Contains(this) ||
          WorkerThreads().Contains(this));
   InitializingWorkerThreads().erase(this);
@@ -273,7 +274,7 @@
 void WorkerThread::Terminate() {
   DCHECK_CALLED_ON_VALID_THREAD(parent_thread_checker_);
   {
-    MutexLocker lock(mutex_);
+    base::AutoLock locker(lock_);
     if (requested_to_terminate_)
       return;
     requested_to_terminate_ = true;
@@ -357,13 +358,13 @@
 }
 
 void WorkerThread::DebuggerTaskStarted() {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   DCHECK(IsCurrentThread());
   debugger_task_counter_++;
 }
 
 void WorkerThread::DebuggerTaskFinished() {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   DCHECK(IsCurrentThread());
   debugger_task_counter_--;
 }
@@ -379,7 +380,7 @@
 }
 
 unsigned WorkerThread::WorkerThreadCount() {
-  MutexLocker lock(ThreadSetMutex());
+  base::AutoLock locker(ThreadSetLock());
   return InitializingWorkerThreads().size() + WorkerThreads().size();
 }
 
@@ -394,7 +395,7 @@
 }
 
 bool WorkerThread::IsForciblyTerminated() {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   switch (exit_code_) {
     case ExitCode::kNotTerminated:
     case ExitCode::kGracefullyTerminated:
@@ -414,7 +415,7 @@
 }
 
 ExitCode WorkerThread::GetExitCodeForTesting() {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   return exit_code_;
 }
 
@@ -435,7 +436,7 @@
   DCHECK(IsCurrentThread());
 #if DCHECK_IS_ON()
   {
-    MutexLocker lock(mutex_);
+    base::AutoLock locker(lock_);
     DCHECK_EQ(ThreadState::kRunning, thread_state_);
   }
 #endif
@@ -464,7 +465,7 @@
           std::move(parent_thread_default_task_runner)),
       shutdown_event_(RefCountedWaitableEvent::Create()) {
   DCHECK_CALLED_ON_VALID_THREAD(parent_thread_checker_);
-  MutexLocker lock(ThreadSetMutex());
+  base::AutoLock locker(ThreadSetLock());
   InitializingWorkerThreads().insert(this);
 }
 
@@ -507,7 +508,7 @@
 
 void WorkerThread::EnsureScriptExecutionTerminates(ExitCode exit_code) {
   DCHECK_CALLED_ON_VALID_THREAD(parent_thread_checker_);
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   switch (ShouldTerminateScriptExecution()) {
     case TerminationState::kTerminationUnnecessary:
       return;
@@ -596,7 +597,7 @@
   worker_reporting_proxy_.WillInitializeWorkerContext();
   {
     TRACE_EVENT0("blink.worker", "WorkerThread::InitializeWorkerContext");
-    MutexLocker lock(mutex_);
+    base::AutoLock locker(lock_);
     DCHECK_EQ(ThreadState::kNotStarted, thread_state_);
 
     if (IsOwningBackingThread()) {
@@ -647,7 +648,7 @@
   }
 
   {
-    MutexLocker lock(ThreadSetMutex());
+    base::AutoLock locker(ThreadSetLock());
     DCHECK(InitializingWorkerThreads().Contains(this));
     DCHECK(!WorkerThreads().Contains(this));
     InitializingWorkerThreads().erase(this);
@@ -722,7 +723,7 @@
 void WorkerThread::PrepareForShutdownOnWorkerThread() {
   DCHECK(IsCurrentThread());
   {
-    MutexLocker lock(mutex_);
+    base::AutoLock locker(lock_);
     if (thread_state_ == ThreadState::kReadyToShutdown)
       return;
     SetThreadState(ThreadState::kReadyToShutdown);
@@ -756,7 +757,7 @@
 void WorkerThread::PerformShutdownOnWorkerThread() {
   DCHECK(IsCurrentThread());
   {
-    MutexLocker lock(mutex_);
+    base::AutoLock locker(lock_);
     DCHECK(requested_to_terminate_);
     DCHECK_EQ(ThreadState::kReadyToShutdown, thread_state_);
     if (exit_code_ == ExitCode::kNotTerminated)
@@ -824,7 +825,7 @@
 }
 
 bool WorkerThread::CheckRequestedToTerminate() {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   return requested_to_terminate_;
 }
 
@@ -840,7 +841,7 @@
     // workers might not yield. Likewise we might not be in JS and the
     // interrupt might not fire right away, so we post a task as well.
     // Use a token to mitigate both the interrupt and post task firing.
-    MutexLocker lock(mutex_);
+    base::AutoLock locker(lock_);
 
     InterruptData* interrupt_data =
         new InterruptData(this, state, is_in_back_forward_cache);
@@ -911,7 +912,7 @@
   bool should_execute = false;
   mojom::blink::FrameLifecycleState state;
   {
-    MutexLocker lock(mutex_);
+    base::AutoLock locker(lock_);
     state = interrupt_data->state();
     // If both the V8 interrupt and PostTask have executed we can remove
     // the matching InterruptData from the |pending_interrupts_| as it is
diff --git a/third_party/blink/renderer/core/workers/worker_thread.h b/third_party/blink/renderer/core/workers/worker_thread.h
index 834aabc1..0b4d219 100644
--- a/third_party/blink/renderer/core/workers/worker_thread.h
+++ b/third_party/blink/renderer/core/workers/worker_thread.h
@@ -31,6 +31,7 @@
 
 #include "base/gtest_prod_util.h"
 #include "base/memory/scoped_refptr.h"
+#include "base/synchronization/lock.h"
 #include "base/synchronization/waitable_event.h"
 #include "base/task/single_thread_task_runner.h"
 #include "base/thread_annotations.h"
@@ -149,7 +150,7 @@
   // the underlying thread. This task may be blocked by JavaScript execution on
   // the worker thread, so this function also forcibly terminates JavaScript
   // execution after a certain grace period.
-  void Terminate() LOCKS_EXCLUDED(mutex_);
+  void Terminate() LOCKS_EXCLUDED(lock_);
 
   // Terminates the worker thread. Subclasses of WorkerThread can override this
   // to do cleanup. The default behavior is to call Terminate() and
@@ -203,7 +204,7 @@
   static unsigned CallOnAllWorkerThreads(FunctionType function,
                                          TaskType task_type,
                                          Parameters&&... parameters) {
-    MutexLocker lock(ThreadSetMutex());
+    base::AutoLock locker(ThreadSetLock());
     unsigned called_worker_count = 0;
     for (WorkerThread* thread : WorkerThreads()) {
       PostCrossThreadTask(
@@ -217,10 +218,10 @@
 
   int GetWorkerThreadId() const { return worker_thread_id_; }
 
-  bool IsForciblyTerminated() LOCKS_EXCLUDED(mutex_);
+  bool IsForciblyTerminated() LOCKS_EXCLUDED(lock_);
 
   void WaitForShutdownForTesting();
-  ExitCode GetExitCodeForTesting() LOCKS_EXCLUDED(mutex_);
+  ExitCode GetExitCodeForTesting() LOCKS_EXCLUDED(lock_);
   scoped_refptr<base::SingleThreadTaskRunner> GetParentTaskRunnerForTesting() {
     return parent_thread_default_task_runner_;
   }
@@ -280,12 +281,13 @@
   FRIEND_TEST_ALL_PREFIXES(WorkerThreadTest,
                            Terminate_WhileDebuggerTaskIsRunning);
 
+  static base::Lock& ThreadSetLock();
   // Contains threads which are created but haven't started.
-  static HashSet<WorkerThread*>& InitializingWorkerThreads();
+  static HashSet<WorkerThread*>& InitializingWorkerThreads()
+      EXCLUSIVE_LOCKS_REQUIRED(ThreadSetLock());
   // Contains threads which have started.
-  static HashSet<WorkerThread*>& WorkerThreads();
-  // This mutex guards both WorkerThreads() and InitializingWorkerThreads().
-  static Mutex& ThreadSetMutex();
+  static HashSet<WorkerThread*>& WorkerThreads()
+      EXCLUSIVE_LOCKS_REQUIRED(ThreadSetLock());
 
   // Represents the state of this worker thread.
   enum class ThreadState {
@@ -319,21 +321,21 @@
   // Returns true if we should synchronously terminate the script execution so
   // that a shutdown task can be handled by the thread event loop.
   TerminationState ShouldTerminateScriptExecution()
-      EXCLUSIVE_LOCKS_REQUIRED(mutex_);
+      EXCLUSIVE_LOCKS_REQUIRED(lock_);
 
   // Terminates worker script execution if the worker thread is running and not
   // already shutting down. Does not terminate if a debugger task is running,
   // because the debugger task is guaranteed to finish and it heavily uses V8
   // API calls which would crash after forcible script termination. Called on
   // the main thread.
-  void EnsureScriptExecutionTerminates(ExitCode) LOCKS_EXCLUDED(mutex_);
+  void EnsureScriptExecutionTerminates(ExitCode) LOCKS_EXCLUDED(lock_);
 
   // These are called in this order during worker thread startup.
   void InitializeSchedulerOnWorkerThread(base::WaitableEvent*);
   void InitializeOnWorkerThread(
       std::unique_ptr<GlobalScopeCreationParams>,
       const absl::optional<WorkerBackingThreadStartupData>&,
-      std::unique_ptr<WorkerDevToolsParams>) LOCKS_EXCLUDED(mutex_);
+      std::unique_ptr<WorkerDevToolsParams>) LOCKS_EXCLUDED(lock_);
 
   void EvaluateClassicScriptOnWorkerThread(
       const KURL& script_url,
@@ -387,13 +389,13 @@
   // then posts a task to the parent thread to request termination. In addition
   // to that, separate functions are useful for waiting until all nested workers
   // are terminated before the parent thread shut down.
-  void PrepareForShutdownOnWorkerThread() LOCKS_EXCLUDED(mutex_);
-  void PerformShutdownOnWorkerThread() LOCKS_EXCLUDED(mutex_);
+  void PrepareForShutdownOnWorkerThread() LOCKS_EXCLUDED(lock_);
+  void PerformShutdownOnWorkerThread() LOCKS_EXCLUDED(lock_);
 
-  void SetThreadState(ThreadState) EXCLUSIVE_LOCKS_REQUIRED(mutex_);
-  void SetExitCode(ExitCode) EXCLUSIVE_LOCKS_REQUIRED(mutex_);
+  void SetThreadState(ThreadState) EXCLUSIVE_LOCKS_REQUIRED(lock_);
+  void SetExitCode(ExitCode) EXCLUSIVE_LOCKS_REQUIRED(lock_);
 
-  bool CheckRequestedToTerminate() LOCKS_EXCLUDED(mutex_);
+  bool CheckRequestedToTerminate() LOCKS_EXCLUDED(lock_);
 
   class InterruptData;
   void PauseOrFreeze(mojom::blink::FrameLifecycleState state,
@@ -411,17 +413,17 @@
   const int worker_thread_id_;
 
   // Set on the main thread.
-  bool requested_to_terminate_ GUARDED_BY(mutex_) = false;
+  bool requested_to_terminate_ GUARDED_BY(lock_) = false;
 
-  ThreadState thread_state_ GUARDED_BY(mutex_) = ThreadState::kNotStarted;
-  ExitCode exit_code_ GUARDED_BY(mutex_) = ExitCode::kNotTerminated;
+  ThreadState thread_state_ GUARDED_BY(lock_) = ThreadState::kNotStarted;
+  ExitCode exit_code_ GUARDED_BY(lock_) = ExitCode::kNotTerminated;
 
   base::TimeDelta forcible_termination_delay_;
 
   scoped_refptr<InspectorTaskRunner> inspector_task_runner_;
   base::UnguessableToken devtools_worker_token_;
   InspectorIssueStorage inspector_issue_storage_;
-  int debugger_task_counter_ GUARDED_BY(mutex_) = 0;
+  int debugger_task_counter_ GUARDED_BY(lock_) = 0;
 
   WorkerReportingProxy& worker_reporting_proxy_;
 
@@ -447,7 +449,7 @@
   // This lock protects shared states between the main thread and the worker
   // thread. See thread-safety annotations (e.g., GUARDED_BY) in this header
   // file.
-  Mutex mutex_;
+  base::Lock lock_;
 
   // Whether the thread is paused in a nested message loop or not. Used
   // only on the worker thread.
@@ -476,8 +478,7 @@
   // List of data to passed into the interrupt callbacks. The V8 API takes
   // a void* and we need to pass more data that just a ptr, so we pass
   // a pointer to a member in this list.
-  HashSet<std::unique_ptr<InterruptData>> pending_interrupts_
-      GUARDED_BY(mutex_);
+  HashSet<std::unique_ptr<InterruptData>> pending_interrupts_ GUARDED_BY(lock_);
 
   THREAD_CHECKER(parent_thread_checker_);
 };
diff --git a/third_party/blink/renderer/core/workers/worker_thread_test.cc b/third_party/blink/renderer/core/workers/worker_thread_test.cc
index f1e9991c..b088a38 100644
--- a/third_party/blink/renderer/core/workers/worker_thread_test.cc
+++ b/third_party/blink/renderer/core/workers/worker_thread_test.cc
@@ -7,6 +7,7 @@
 #include <memory>
 #include <utility>
 
+#include "base/synchronization/lock.h"
 #include "base/synchronization/waitable_event.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
@@ -208,7 +209,7 @@
   worker_thread_->inspector_task_runner_ = InspectorTaskRunner::Create(nullptr);
 
   // SetExitCode() and ShouldTerminateScriptExecution() require the lock.
-  MutexLocker dummy_lock(worker_thread_->mutex_);
+  base::AutoLock dummy_locker(worker_thread_->lock_);
 
   EXPECT_EQ(ThreadState::kNotStarted, worker_thread_->thread_state_);
   EXPECT_EQ(WorkerThread::TerminationState::kTerminationUnnecessary,
@@ -398,7 +399,7 @@
   // Wait for the debugger task.
   test::EnterRunLoop();
   {
-    MutexLocker lock(worker_thread_->mutex_);
+    base::AutoLock lock(worker_thread_->lock_);
     EXPECT_EQ(1, worker_thread_->debugger_task_counter_);
   }
 
@@ -411,7 +412,7 @@
   // because of the running debugger task but it should get reposted.
   test::RunDelayedTasks(kDelay);
   {
-    MutexLocker lock(worker_thread_->mutex_);
+    base::AutoLock lock(worker_thread_->lock_);
     EXPECT_EQ(WorkerThread::TerminationState::kPostponeTerminate,
               worker_thread_->ShouldTerminateScriptExecution());
   }
@@ -444,7 +445,7 @@
   // Wait for the debugger task.
   test::EnterRunLoop();
   {
-    MutexLocker lock(worker_thread_->mutex_);
+    base::AutoLock lock(worker_thread_->lock_);
     EXPECT_EQ(1, worker_thread_->debugger_task_counter_);
   }
 
@@ -457,7 +458,7 @@
   // because of the running debugger task but it should get reposted.
   test::RunDelayedTasks(kDelay);
   {
-    MutexLocker lock(worker_thread_->mutex_);
+    base::AutoLock lock(worker_thread_->lock_);
     EXPECT_EQ(WorkerThread::TerminationState::kPostponeTerminate,
               worker_thread_->ShouldTerminateScriptExecution());
   }
diff --git a/third_party/blink/renderer/core/workers/worklet_module_responses_map.cc b/third_party/blink/renderer/core/workers/worklet_module_responses_map.cc
index 879ecf8..c44d090 100644
--- a/third_party/blink/renderer/core/workers/worklet_module_responses_map.cc
+++ b/third_party/blink/renderer/core/workers/worklet_module_responses_map.cc
@@ -73,7 +73,7 @@
     ModuleType module_type,
     ModuleScriptFetcher::Client* client,
     scoped_refptr<base::SingleThreadTaskRunner> client_task_runner) {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   DCHECK_NE(module_type, ModuleType::kInvalid);
   if (!is_available_ || !IsValidURL(url)) {
     client_task_runner->PostTask(
@@ -126,7 +126,7 @@
     const KURL& url,
     ModuleType module_type,
     const absl::optional<ModuleScriptCreationParams>& params) {
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   if (!is_available_)
     return;
 
@@ -137,7 +137,7 @@
 
 void WorkletModuleResponsesMap::Dispose() {
   DCHECK(IsMainThread());
-  MutexLocker lock(mutex_);
+  base::AutoLock locker(lock_);
   is_available_ = false;
   for (auto& it : entries_) {
     switch (it.value->GetState()) {
diff --git a/third_party/blink/renderer/core/workers/worklet_module_responses_map.h b/third_party/blink/renderer/core/workers/worklet_module_responses_map.h
index 8156aa8..d1075c7f 100644
--- a/third_party/blink/renderer/core/workers/worklet_module_responses_map.h
+++ b/third_party/blink/renderer/core/workers/worklet_module_responses_map.h
@@ -5,6 +5,7 @@
 #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_WORKERS_WORKLET_MODULE_RESPONSES_MAP_H_
 #define THIRD_PARTY_BLINK_RENDERER_CORE_WORKERS_WORKLET_MODULE_RESPONSES_MAP_H_
 
+#include "base/synchronization/lock.h"
 #include "third_party/abseil-cpp/absl/types/optional.h"
 #include "third_party/blink/renderer/core/core_export.h"
 #include "third_party/blink/renderer/core/loader/modulescript/module_script_creation_params.h"
@@ -13,7 +14,6 @@
 #include "third_party/blink/renderer/platform/weborigin/kurl.h"
 #include "third_party/blink/renderer/platform/weborigin/kurl_hash.h"
 #include "third_party/blink/renderer/platform/wtf/allocator/allocator.h"
-#include "third_party/blink/renderer/platform/wtf/threading_primitives.h"
 
 namespace blink {
 
@@ -45,18 +45,18 @@
                 ModuleType,
                 ModuleScriptFetcher::Client*,
                 scoped_refptr<base::SingleThreadTaskRunner> client_task_runner)
-      LOCKS_EXCLUDED(mutex_);
+      LOCKS_EXCLUDED(lock_);
 
   // Called on worklet threads.
   void SetEntryParams(const KURL&,
                       ModuleType,
                       const absl::optional<ModuleScriptCreationParams>&)
-      LOCKS_EXCLUDED(mutex_);
+      LOCKS_EXCLUDED(lock_);
 
   // Called when the associated document is destroyed and clears the map.
   // Following GetEntry() calls synchronously call Client::OnFailed().
   // Called on main thread.
-  void Dispose() LOCKS_EXCLUDED(mutex_);
+  void Dispose() LOCKS_EXCLUDED(lock_);
 
   void Trace(Visitor*) const {}
 
@@ -88,16 +88,16 @@
 
   // |is_available_| is written to false by the main thread on disposal, and
   // read by any thread.
-  bool is_available_ GUARDED_BY(mutex_) = true;
+  bool is_available_ GUARDED_BY(lock_) = true;
 
   // TODO(nhiroki): Keep the insertion order of top-level modules to replay
   // addModule() calls for a newly created global scope.
   // See https://drafts.css-houdini.org/worklets/#creating-a-workletglobalscope
   // Can be read/written by any thread.
   using Key = std::pair<KURL, ModuleType>;
-  HashMap<Key, std::unique_ptr<Entry>> entries_ GUARDED_BY(mutex_);
+  HashMap<Key, std::unique_ptr<Entry>> entries_ GUARDED_BY(lock_);
 
-  Mutex mutex_;
+  base::Lock lock_;
 };
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/core/workers/worklet_thread_holder.h b/third_party/blink/renderer/core/workers/worklet_thread_holder.h
index e3c0a03..d8712a8 100644
--- a/third_party/blink/renderer/core/workers/worklet_thread_holder.h
+++ b/third_party/blink/renderer/core/workers/worklet_thread_holder.h
@@ -5,7 +5,9 @@
 #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_WORKERS_WORKLET_THREAD_HOLDER_H_
 #define THIRD_PARTY_BLINK_RENDERER_CORE_WORKERS_WORKLET_THREAD_HOLDER_H_
 
+#include "base/synchronization/lock.h"
 #include "base/synchronization/waitable_event.h"
+#include "base/thread_annotations.h"
 #include "third_party/blink/renderer/core/workers/worker_backing_thread.h"
 #include "third_party/blink/renderer/core/workers/worker_backing_thread_startup_data.h"
 #include "third_party/blink/renderer/platform/scheduler/public/post_cross_thread_task.h"
@@ -20,13 +22,13 @@
 class WorkletThreadHolder {
  public:
   static WorkletThreadHolder<DerivedWorkletThread>* GetInstance() {
-    MutexLocker locker(HolderInstanceMutex());
+    base::AutoLock locker(HolderInstanceLock());
     return thread_holder_instance_;
   }
 
   static void EnsureInstance(const ThreadCreationParams& params) {
     DCHECK(IsMainThread());
-    MutexLocker locker(HolderInstanceMutex());
+    base::AutoLock locker(HolderInstanceLock());
     if (thread_holder_instance_)
       return;
     thread_holder_instance_ = new WorkletThreadHolder<DerivedWorkletThread>;
@@ -36,7 +38,7 @@
 
   static void ClearInstance() {
     DCHECK(IsMainThread());
-    MutexLocker locker(HolderInstanceMutex());
+    base::AutoLock locker(HolderInstanceLock());
     if (thread_holder_instance_) {
       thread_holder_instance_->ShutdownAndWait();
       delete thread_holder_instance_;
@@ -50,9 +52,9 @@
   WorkletThreadHolder() = default;
   ~WorkletThreadHolder() = default;
 
-  static Mutex& HolderInstanceMutex() {
-    DEFINE_THREAD_SAFE_STATIC_LOCAL(Mutex, holder_mutex, ());
-    return holder_mutex;
+  static base::Lock& HolderInstanceLock() {
+    DEFINE_THREAD_SAFE_STATIC_LOCAL(base::Lock, holder_lock, ());
+    return holder_lock;
   }
 
   void Initialize(std::unique_ptr<WorkerBackingThread> backing_thread) {
@@ -64,7 +66,7 @@
   }
 
   void InitializeOnWorkletThread() {
-    MutexLocker locker(HolderInstanceMutex());
+    base::AutoLock locker(HolderInstanceLock());
     thread_->InitializeOnBackingThread(
         WorkerBackingThreadStartupData::CreateDefault());
   }
@@ -92,8 +94,10 @@
 
 template <class DerivedWorkletThread>
 WorkletThreadHolder<DerivedWorkletThread>*
-    WorkletThreadHolder<DerivedWorkletThread>::thread_holder_instance_ =
-        nullptr;
+    WorkletThreadHolder<DerivedWorkletThread>::thread_holder_instance_
+        GUARDED_BY(
+            WorkletThreadHolder<DerivedWorkletThread>::HolderInstanceLock()) =
+            nullptr;
 
 }  // namespace blink
 
diff --git a/third_party/blink/renderer/modules/hid/hid.cc b/third_party/blink/renderer/modules/hid/hid.cc
index 8e76d142..44739634 100644
--- a/third_party/blink/renderer/modules/hid/hid.cc
+++ b/third_party/blink/renderer/modules/hid/hid.cc
@@ -15,9 +15,9 @@
 #include "third_party/blink/renderer/core/dom/document.h"
 #include "third_party/blink/renderer/core/dom/dom_exception.h"
 #include "third_party/blink/renderer/core/execution_context/execution_context.h"
+#include "third_party/blink/renderer/core/execution_context/navigator_base.h"
 #include "third_party/blink/renderer/core/frame/local_dom_window.h"
 #include "third_party/blink/renderer/core/frame/local_frame.h"
-#include "third_party/blink/renderer/core/frame/navigator.h"
 #include "third_party/blink/renderer/modules/event_target_modules.h"
 #include "third_party/blink/renderer/modules/hid/hid_connection_event.h"
 #include "third_party/blink/renderer/modules/hid/hid_device.h"
@@ -35,12 +35,12 @@
 // requirements for them to be served are met. Returns true if any conditions
 // fail to be met, generating an appropriate exception as well. Otherwise,
 // returns false to indicate the call should be allowed.
-bool ShouldBlockHidServiceCall(LocalDOMWindow* window,
+bool ShouldBlockHidServiceCall(ExecutionContext* context,
                                ExceptionState& exception_state) {
-  if (!window) {
+  if (!context) {
     exception_state.ThrowDOMException(DOMExceptionCode::kNotSupportedError,
                                       kContextGone);
-  } else if (!window->IsFeatureEnabled(
+  } else if (!context->IsFeatureEnabled(
                  mojom::blink::PermissionsPolicyFeature::kHid,
                  ReportOptions::kReportOnFailure)) {
     exception_state.ThrowSecurityError(kFeaturePolicyBlocked);
@@ -60,11 +60,8 @@
 
 const char HID::kSupplementName[] = "HID";
 
-HID* HID::hid(Navigator& navigator) {
-  if (!navigator.DomWindow())
-    return nullptr;
-
-  HID* hid = Supplement<Navigator>::From<HID>(navigator);
+HID* HID::hid(NavigatorBase& navigator) {
+  HID* hid = Supplement<NavigatorBase>::From<HID>(navigator);
   if (!hid) {
     hid = MakeGarbageCollected<HID>(navigator);
     ProvideTo(navigator, hid);
@@ -72,14 +69,17 @@
   return hid;
 }
 
-HID::HID(Navigator& navigator)
+HID::HID(NavigatorBase& navigator)
     : ExecutionContextLifecycleObserver(navigator.GetExecutionContext()),
-      Supplement<Navigator>(navigator),
-      service_(navigator.DomWindow()),
-      feature_handle_for_scheduler_(
-          navigator.DomWindow()->GetScheduler()->RegisterFeature(
-              SchedulingPolicy::Feature::kWebHID,
-              {SchedulingPolicy::DisableBackForwardCache()})) {}
+      Supplement<NavigatorBase>(navigator),
+      service_(navigator.GetExecutionContext()) {
+  auto* context = GetExecutionContext();
+  if (context) {
+    feature_handle_for_scheduler_ = context->GetScheduler()->RegisterFeature(
+        SchedulingPolicy::Feature::kWebHID,
+        {SchedulingPolicy::DisableBackForwardCache()});
+  }
+}
 
 HID::~HID() {
   DCHECK(get_devices_promises_.IsEmpty());
@@ -87,7 +87,7 @@
 }
 
 ExecutionContext* HID::GetExecutionContext() const {
-  return GetSupplementable()->DomWindow();
+  return GetSupplementable()->GetExecutionContext();
 }
 
 const AtomicString& HID::InterfaceName() const {
@@ -145,8 +145,7 @@
 
 ScriptPromise HID::getDevices(ScriptState* script_state,
                               ExceptionState& exception_state) {
-  if (ShouldBlockHidServiceCall(GetSupplementable()->DomWindow(),
-                                exception_state)) {
+  if (ShouldBlockHidServiceCall(GetExecutionContext(), exception_state)) {
     return ScriptPromise();
   }
 
@@ -162,13 +161,20 @@
 ScriptPromise HID::requestDevice(ScriptState* script_state,
                                  const HIDDeviceRequestOptions* options,
                                  ExceptionState& exception_state) {
-  if (ShouldBlockHidServiceCall(GetSupplementable()->DomWindow(),
-                                exception_state)) {
+  // requestDevice requires a window to satisfy the user activation requirement
+  // and to show a chooser dialog.
+  const auto* window = GetSupplementable()->DomWindow();
+  if (!window) {
+    exception_state.ThrowDOMException(DOMExceptionCode::kNotSupportedError,
+                                      kContextGone);
     return ScriptPromise();
   }
 
-  if (!LocalFrame::HasTransientUserActivation(
-          GetSupplementable()->DomWindow()->GetFrame())) {
+  if (ShouldBlockHidServiceCall(GetExecutionContext(), exception_state)) {
+    return ScriptPromise();
+  }
+
+  if (!LocalFrame::HasTransientUserActivation(window->GetFrame())) {
     exception_state.ThrowSecurityError(
         "Must be handling a user gesture to show a permission request.");
     return ScriptPromise();
@@ -359,7 +365,7 @@
   visitor->Trace(device_cache_);
   EventTargetWithInlineData::Trace(visitor);
   ExecutionContextLifecycleObserver::Trace(visitor);
-  Supplement<Navigator>::Trace(visitor);
+  Supplement<NavigatorBase>::Trace(visitor);
 }
 
 }  // namespace blink
diff --git a/third_party/blink/renderer/modules/hid/hid.h b/third_party/blink/renderer/modules/hid/hid.h
index 4888dd3..ebc7955b 100644
--- a/third_party/blink/renderer/modules/hid/hid.h
+++ b/third_party/blink/renderer/modules/hid/hid.h
@@ -27,13 +27,13 @@
 class ExecutionContext;
 class HIDDeviceFilter;
 class HIDDeviceRequestOptions;
-class Navigator;
+class NavigatorBase;
 class ScriptPromiseResolver;
 class ScriptState;
 
 class MODULES_EXPORT HID : public EventTargetWithInlineData,
                            public ExecutionContextLifecycleObserver,
-                           public Supplement<Navigator>,
+                           public Supplement<NavigatorBase>,
                            public device::mojom::blink::HidManagerClient,
                            public HIDDevice::ServiceInterface {
   DEFINE_WRAPPERTYPEINFO();
@@ -42,9 +42,9 @@
   static const char kSupplementName[];
 
   // Web-exposed getter for navigator.hid
-  static HID* hid(Navigator&);
+  static HID* hid(NavigatorBase&);
 
-  explicit HID(Navigator&);
+  explicit HID(NavigatorBase&);
   ~HID() override;
 
   // EventTarget:
@@ -117,7 +117,7 @@
   HeapHashSet<Member<ScriptPromiseResolver>> get_devices_promises_;
   HeapHashSet<Member<ScriptPromiseResolver>> request_device_promises_;
   HeapHashMap<String, WeakMember<HIDDevice>> device_cache_;
-  FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle
+  absl::optional<FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle>
       feature_handle_for_scheduler_;
 };
 
diff --git a/third_party/blink/renderer/modules/hid/hid.idl b/third_party/blink/renderer/modules/hid/hid.idl
index ea8de74..18e338a2 100644
--- a/third_party/blink/renderer/modules/hid/hid.idl
+++ b/third_party/blink/renderer/modules/hid/hid.idl
@@ -7,7 +7,8 @@
 // https://wicg.github.io/webhid/index.html#enumeration
 
 [
-    Exposed(Window WebHID),
+    Exposed(ServiceWorker WebHIDOnServiceWorkers,
+            Window WebHID),
     SecureContext
 ] interface HID : EventTarget {
     attribute EventHandler onconnect;
diff --git a/third_party/blink/renderer/modules/hid/hid_connection_event.idl b/third_party/blink/renderer/modules/hid/hid_connection_event.idl
index c61dbe2..0a9cab2c 100644
--- a/third_party/blink/renderer/modules/hid/hid_connection_event.idl
+++ b/third_party/blink/renderer/modules/hid/hid_connection_event.idl
@@ -6,7 +6,8 @@
 // https://wicg.github.io/webhid/index.html#events
 
 [
-    Exposed(Window WebHID),
+    Exposed(ServiceWorker WebHIDOnServiceWorkers,
+            Window WebHID),
     SecureContext
 ] interface HIDConnectionEvent : Event {
     constructor(DOMString type, HIDConnectionEventInit eventInitDict);
diff --git a/third_party/blink/renderer/modules/hid/hid_device.idl b/third_party/blink/renderer/modules/hid/hid_device.idl
index 4e66622..7ced73f9 100644
--- a/third_party/blink/renderer/modules/hid/hid_device.idl
+++ b/third_party/blink/renderer/modules/hid/hid_device.idl
@@ -9,7 +9,8 @@
 
 [
     ActiveScriptWrappable,
-    Exposed(Window WebHID),
+    Exposed(ServiceWorker WebHIDOnServiceWorkers,
+            Window WebHID),
     SecureContext
 ] interface HIDDevice : EventTarget {
     attribute EventHandler oninputreport;
diff --git a/third_party/blink/renderer/modules/hid/hid_input_report_event.idl b/third_party/blink/renderer/modules/hid/hid_input_report_event.idl
index 615a014..b5c37b9 100644
--- a/third_party/blink/renderer/modules/hid/hid_input_report_event.idl
+++ b/third_party/blink/renderer/modules/hid/hid_input_report_event.idl
@@ -6,7 +6,8 @@
 // https://wicg.github.io/webhid/index.html#events
 
 [
-    Exposed(Window WebHID),
+    Exposed(ServiceWorker WebHIDOnServiceWorkers,
+            Window WebHID),
     SecureContext
 ] interface HIDInputReportEvent : Event {
     [SameObject] readonly attribute HIDDevice device;
diff --git a/third_party/blink/renderer/modules/hid/worker_navigator_hid.idl b/third_party/blink/renderer/modules/hid/worker_navigator_hid.idl
new file mode 100644
index 0000000..66515836
--- /dev/null
+++ b/third_party/blink/renderer/modules/hid/worker_navigator_hid.idl
@@ -0,0 +1,14 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// https://wicg.github.io/webhid/index.html#enumeration
+
+[
+    Exposed(ServiceWorker WebHIDOnServiceWorkers),
+    ImplementedAs=HID,
+    RuntimeEnabled=WebHID,
+    SecureContext
+] partial interface WorkerNavigator {
+    [SameObject] readonly attribute HID hid;
+};
diff --git a/third_party/blink/renderer/modules/mediasource/handle_attachment_provider.cc b/third_party/blink/renderer/modules/mediasource/handle_attachment_provider.cc
index 9cfcccb..4b4f549a 100644
--- a/third_party/blink/renderer/modules/mediasource/handle_attachment_provider.cc
+++ b/third_party/blink/renderer/modules/mediasource/handle_attachment_provider.cc
@@ -5,6 +5,7 @@
 #include "third_party/blink/renderer/modules/mediasource/handle_attachment_provider.h"
 
 #include "base/logging.h"
+#include "base/synchronization/lock.h"
 #include "third_party/blink/renderer/core/html/media/media_source_attachment.h"
 #include "third_party/blink/renderer/platform/wtf/forward.h"
 #include "third_party/blink/renderer/platform/wtf/thread_safe_ref_counted.h"
@@ -25,7 +26,7 @@
 
 scoped_refptr<MediaSourceAttachment>
 HandleAttachmentProvider::TakeAttachment() {
-  MutexLocker lock(attachment_lock_);
+  base::AutoLock locker(attachment_lock_);
 
   DVLOG(1) << __func__ << " this=" << this << ", attachment_=" << attachment_;
   return std::move(attachment_);
diff --git a/third_party/blink/renderer/modules/mediasource/handle_attachment_provider.h b/third_party/blink/renderer/modules/mediasource/handle_attachment_provider.h
index f82dd78..5d07bc6 100644
--- a/third_party/blink/renderer/modules/mediasource/handle_attachment_provider.h
+++ b/third_party/blink/renderer/modules/mediasource/handle_attachment_provider.h
@@ -5,11 +5,11 @@
 #ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIASOURCE_HANDLE_ATTACHMENT_PROVIDER_H_
 #define THIRD_PARTY_BLINK_RENDERER_MODULES_MEDIASOURCE_HANDLE_ATTACHMENT_PROVIDER_H_
 
+#include "base/synchronization/lock.h"
 #include "base/thread_annotations.h"
 #include "third_party/blink/renderer/core/html/media/media_source_attachment.h"
 #include "third_party/blink/renderer/platform/wtf/forward.h"
 #include "third_party/blink/renderer/platform/wtf/thread_safe_ref_counted.h"
-#include "third_party/blink/renderer/platform/wtf/threading_primitives.h"
 
 namespace blink {
 
@@ -43,7 +43,7 @@
       LOCKS_EXCLUDED(attachment_lock_);
 
  private:
-  Mutex attachment_lock_;
+  base::Lock attachment_lock_;
   scoped_refptr<MediaSourceAttachment> attachment_ GUARDED_BY(attachment_lock_);
 };
 
diff --git a/third_party/blink/renderer/platform/exported/platform.cc b/third_party/blink/renderer/platform/exported/platform.cc
index 2823bfa..073c554d 100644
--- a/third_party/blink/renderer/platform/exported/platform.cc
+++ b/third_party/blink/renderer/platform/exported/platform.cc
@@ -61,6 +61,7 @@
 #include "third_party/blink/renderer/platform/instrumentation/partition_alloc_memory_dump_provider.h"
 #include "third_party/blink/renderer/platform/instrumentation/tracing/memory_cache_dump_provider.h"
 #include "third_party/blink/renderer/platform/language.h"
+#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
 #include "third_party/blink/renderer/platform/scheduler/common/simple_thread_scheduler.h"
 #include "third_party/blink/renderer/platform/scheduler/public/post_cross_thread_task.h"
 #include "third_party/blink/renderer/platform/scheduler/public/thread.h"
@@ -68,6 +69,7 @@
 #include "third_party/blink/renderer/platform/wtf/allocator/allocator.h"
 #include "third_party/blink/renderer/platform/wtf/cross_thread_functional.h"
 #include "third_party/blink/renderer/platform/wtf/hash_map.h"
+#include "third_party/skia/include/core/SkGraphics.h"
 #include "third_party/webrtc/api/rtp_parameters.h"
 #include "third_party/webrtc/p2p/base/port_allocator.h"
 
@@ -256,6 +258,9 @@
       CanvasMemoryDumpProvider::Instance(), "Canvas",
       base::ThreadTaskRunnerHandle::Get());
 
+  SkGraphics::SetVariableColrV1EnabledFunc(
+      RuntimeEnabledFeatures::VariableCOLRV1Enabled);
+
   // Use a delayed idle task as this is low priority work that should stop when
   // the main thread is not doing any work.
   WTF::Partitions::StartPeriodicReclaim(
diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.cc b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
index 17ab6d16..5d4a505 100644
--- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
+++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
@@ -673,4 +673,8 @@
   RuntimeEnabledFeatures::SetEventPathEnabled(enable);
 }
 
+void WebRuntimeFeatures::EnableWebHIDOnServiceWorkers(bool enable) {
+  RuntimeEnabledFeatures::SetWebHIDOnServiceWorkersEnabled(enable);
+}
+
 }  // namespace blink
diff --git a/third_party/blink/renderer/platform/image-decoders/avif/avif_image_decoder_test.cc b/third_party/blink/renderer/platform/image-decoders/avif/avif_image_decoder_test.cc
index b4e6dc3..669205d 100644
--- a/third_party/blink/renderer/platform/image-decoders/avif/avif_image_decoder_test.cc
+++ b/third_party/blink/renderer/platform/image-decoders/avif/avif_image_decoder_test.cc
@@ -1006,6 +1006,14 @@
   EXPECT_TRUE(decoder->Failed());
 }
 
+TEST(StaticAVIFTests, UnsupportedTransferFunctionInColrProperty) {
+  std::unique_ptr<ImageDecoder> decoder = CreateAVIFDecoder();
+  decoder->SetData(
+      ReadFile("/images/resources/avif/red-unsupported-transfer.avif"), true);
+  EXPECT_FALSE(decoder->IsSizeAvailable());
+  EXPECT_TRUE(decoder->Failed());
+}
+
 using StaticAVIFColorTests = ::testing::TestWithParam<StaticColorCheckParam>;
 
 INSTANTIATE_TEST_SUITE_P(Parameterized,
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
index 8ba8819..098795b 100644
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -2485,6 +2485,9 @@
       name: "V8IdleTasks",
     },
     {
+      name: "VariableCOLRV1",
+    },
+    {
       // Whether a video element should automatically play fullscreen unless
       // 'playsinline' is set.
       name: "VideoAutoFullscreen",
@@ -2710,6 +2713,11 @@
       status: "stable",
     },
     {
+      // It is only enabled in extension environment for now.
+      name: "WebHIDOnServiceWorkers",
+      depends_on: ["WebHID"],
+    },
+    {
       name: "WebNFC",
       status: {"Android": "stable", "default": "test"},
     },
diff --git a/third_party/blink/renderer/platform/wtf/threading_primitives.h b/third_party/blink/renderer/platform/wtf/threading_primitives.h
index ed2db4e5..e3d1ed2 100644
--- a/third_party/blink/renderer/platform/wtf/threading_primitives.h
+++ b/third_party/blink/renderer/platform/wtf/threading_primitives.h
@@ -48,25 +48,6 @@
 
 namespace WTF {
 
-// Note: Prefer base::Lock to WTF::Mutex. The implementation is the same, this
-// will be removed. crbug.com/1290281.
-class LOCKABLE WTF_EXPORT Mutex {
- public:
-  Mutex() = default;
-  bool TryLock() EXCLUSIVE_TRYLOCK_FUNCTION(true) { return lock_.Try(); }
-
-  // Overridden solely for the purpose of annotating them.
-  // The compiler is expected to optimize the calls away.
-  void lock() EXCLUSIVE_LOCK_FUNCTION() { lock_.Acquire(); }
-  void unlock() UNLOCK_FUNCTION() { lock_.Release(); }
-  void AssertAcquired() const ASSERT_EXCLUSIVE_LOCK() {
-    lock_.AssertAcquired();
-  }
-
- private:
-  base::Lock lock_;
-};
-
 // RecursiveMutex is deprecated AND WILL BE REMOVED.
 // https://crbug.com/856641
 class LOCKABLE WTF_EXPORT RecursiveMutex {
@@ -103,25 +84,8 @@
   FRIEND_TEST_ALL_PREFIXES(RecursiveMutexTest, LockUnlockThreads);
 };
 
-class SCOPED_LOCKABLE MutexLocker final {
-  STACK_ALLOCATED();
-
- public:
-  MutexLocker(Mutex& mutex) EXCLUSIVE_LOCK_FUNCTION(mutex) : mutex_(mutex) {
-    mutex_.lock();
-  }
-  MutexLocker(const MutexLocker&) = delete;
-  MutexLocker& operator=(const MutexLocker&) = delete;
-  ~MutexLocker() UNLOCK_FUNCTION() { mutex_.unlock(); }
-
- private:
-  Mutex& mutex_;
-};
-
 }  // namespace WTF
 
-using WTF::Mutex;
-using WTF::MutexLocker;
 using WTF::RecursiveMutex;
 
 #endif  // THIRD_PARTY_BLINK_RENDERER_PLATFORM_WTF_THREADING_PRIMITIVES_H_
diff --git a/third_party/blink/tools/blinkpy/web_tests/models/test_run_results.py b/third_party/blink/tools/blinkpy/web_tests/models/test_run_results.py
index 9d0de6b7..2b310974 100644
--- a/third_party/blink/tools/blinkpy/web_tests/models/test_run_results.py
+++ b/third_party/blink/tools/blinkpy/web_tests/models/test_run_results.py
@@ -339,16 +339,9 @@
                 test_dict.update(
                     _interpret_test_failures(retry_result.failures))
 
-        # crbug/1328703: 'full_results.json' has become too large to upload to
-        # the test results server, so we exclude some artifacts that are not
-        # necessary for rebaselining. These artifacts are still uploaded to
-        # ResultDB.
-        skipped_artifacts = {'command', 'stderr'}
         for test_result, _ in merged_results:
             for artifact_name, artifacts in \
-                    test_result.artifacts.artifacts.items():
-                if artifact_name in skipped_artifacts:
-                    continue
+                test_result.artifacts.artifacts.items():
                 artifact_dict = test_dict.setdefault('artifacts', {})
                 artifact_dict.setdefault(artifact_name, []).extend(artifacts)
 
diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/web_tests/TestExpectations
index e23d976..fd6f3db 100644
--- a/third_party/blink/web_tests/TestExpectations
+++ b/third_party/blink/web_tests/TestExpectations
@@ -2582,7 +2582,7 @@
 
 crbug.com/624430 [ Win10.20h2 ] virtual/text-antialias/font-features/caps-casemapping.html [ Failure ]
 
-crbug.com/399507 virtual/threaded/http/tests/devtools/tracing/timeline-paint/layer-tree.js [ Skip ]
+crbug.com/399507 virtual/threaded/http/tests/devtools/tracing/timeline-paint/layer-tree.js [ Failure Pass Timeout ]
 
 # These tests have test harness errors and PASS lines that have a
 # non-deterministic order.
@@ -3360,8 +3360,13 @@
 crbug.com/626703 [ Win ] virtual/partitioned-cookies/http/tests/inspector-protocol/network/disabled-cache-navigation.js [ Failure ]
 
 # ====== New tests from wpt-importer added here ======
-crbug.com/626703 [ Mac12 ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/registered-property-value-011.https.html [ Failure ]
-crbug.com/626703 [ Mac12 ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/registered-property-interpolation-001.https.html [ Failure ]
+crbug.com/626703 [ Win11 ] virtual/conversions-debug-mode/wpt_internal/attribution-reporting/source-registration.sub.https.html?method=a [ Timeout ]
+crbug.com/626703 [ Win11 ] virtual/conversions-debug-mode/wpt_internal/attribution-reporting/source-registration.sub.https.html?method=fetch&eligible=event-source [ Timeout ]
+crbug.com/626703 [ Win11 ] virtual/conversions-debug-mode/wpt_internal/attribution-reporting/source-registration.sub.https.html?method=script&eligible [ Timeout ]
+crbug.com/626703 [ Mac11 ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/parse-input-arguments-003.https.html [ Failure ]
+crbug.com/626703 [ Mac11 ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/registered-property-interpolation-002.https.html [ Failure ]
+crbug.com/626703 [ Mac12 ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/registered-property-interpolation-002.https.html [ Failure ]
+crbug.com/626703 [ Mac11 ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/registered-property-value-004.https.html [ Failure ]
 crbug.com/626703 external/wpt/css/css-text/hyphens/hyphenate-character-005.html [ Failure ]
 crbug.com/626703 [ Win10.20h2 ] wpt_internal/geolocation-api/watchPosition-page-visibility.https.html [ Timeout ]
 crbug.com/626703 [ Win11 ] virtual/conversions-debug-mode/wpt_internal/attribution-reporting/debug-key-test.sub.https.html?include=source [ Timeout ]
@@ -4158,7 +4163,7 @@
 # [css-animations]
 crbug.com/816956 [ Win ] external/wpt/css/css-animations/KeyframeEffect-getKeyframes.tentative.html [ Failure ]
 
-crbug.com/664450 http/tests/devtools/console/console-on-animation-worklet.js [ Skip ]
+crbug.com/664450 http/tests/devtools/console/console-on-animation-worklet.js [ Failure Pass Timeout ]
 
 # [css-transitions]
 crbug.com/1289685 external/wpt/css/css-transitions/properties-value-inherit-001.html [ Failure Pass ]
@@ -4388,7 +4393,7 @@
 crbug.com/757165 [ Win ] fast/spatial-navigation/snav-two-elements-one-line.html [ Crash Failure Pass Timeout ]
 crbug.com/757165 [ Win ] fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction.html [ Crash Failure Pass Timeout ]
 crbug.com/757165 [ Win ] fast/spatial-navigation/snav-z-index.html [ Crash Failure Pass Timeout ]
-crbug.com/757165 [ Win ] http/tests/devtools/sources/ui-source-code-metadata.js [ Skip ]
+crbug.com/757165 [ Win ] http/tests/devtools/sources/ui-source-code-metadata.js [ Failure Pass Timeout ]
 crbug.com/757165 [ Win ] http/tests/misc/client-hints-accept-meta-preloader.html [ Skip ]
 crbug.com/757165 [ Win ] paint/invalidation/filters/filter-repaint-accelerated-child-with-filter-child.html [ Skip ]
 crbug.com/757165 [ Win ] paint/invalidation/filters/filter-repaint-on-accelerated-layer.html [ Skip ]
@@ -4687,7 +4692,7 @@
 crbug.com/912793 crbug.com/899087 virtual/android/fullscreen/full-screen-iframe-allowed-video.html [ Crash Failure Pass Timeout ]
 
 # Sheriff 2018-12-07
-crbug.com/912821 http/tests/devtools/tracing/user-timing.js [ Skip ]
+crbug.com/912821 http/tests/devtools/tracing/user-timing.js [ Failure Pass Timeout ]
 
 # Sheriff 2018-12-13
 crbug.com/910452 media/controls/buttons-after-reset.html [ Failure Pass ]
@@ -5573,6 +5578,8 @@
 http/tests/workers/shared-worker-importScripts.html [ Skip ]
 http/tests/workers/worker-importScripts.html [ Skip ]
 
+crbug.com/1341227 [ Mac ] http/tests/workers/worker-invalid-context.html [ Skip ]
+
 # Temporarily disabled to unblock https://crrev.com/c/2979697
 crbug.com/1222114 http/tests/devtools/console/console-dir.js [ Failure Pass ]
 crbug.com/1222114 http/tests/devtools/console/console-format.js [ Failure Pass ]
@@ -5615,7 +5622,9 @@
 crbug.com/1180227 [ Linux ] virtual/feature-policy-permissions/external/wpt/mediacapture-streams/MediaStream-default-feature-policy.https.html [ Failure Pass ]
 crbug.com/1180479 [ Mac ] virtual/threaded-prefer-compositing/external/wpt/css/cssom-view/scrollIntoView-smooth.html [ Failure Pass Timeout ]
 
-crbug.com/1180274 crbug.com/1046784 http/tests/inspector-protocol/network/navigate-iframe-out2in.js [ Failure Pass ]
+crbug.com/1180274 crbug.com/1046784 [ Win ] http/tests/inspector-protocol/network/navigate-iframe-out2in.js [ Failure Pass ]
+crbug.com/1180274 crbug.com/1046784 [ Linux ] http/tests/inspector-protocol/network/navigate-iframe-out2in.js [ Failure Pass ]
+crbug.com/1341227 [ Mac ] http/tests/inspector-protocol/network/navigate-iframe-out2in.js [ Skip ]
 
 # Sheriff 2021-02-21
 crbug.com/1180491 [ Linux ] external/wpt/storage-access-api/storageAccess.testdriver.sub.html [ Failure Pass ]
@@ -5651,8 +5660,8 @@
 crbug.com/1072022 http/tests/security/frameNavigation/xss-ALLOWED-parent-navigation-change.html [ Pass Timeout ]
 
 # Sheriff 2021-03-19
-crbug.com/1189976 http/tests/devtools/sources/debugger-breakpoints/dom-breakpoints.js [ Skip ]
-crbug.com/1189976 http/tests/devtools/sources/debugger-breakpoints/dom-breakpoints-editing-dom-from-inspector.js [ Skip ]
+crbug.com/1189976 http/tests/devtools/sources/debugger-breakpoints/dom-breakpoints.js [ Failure Pass Timeout ]
+crbug.com/1189976 http/tests/devtools/sources/debugger-breakpoints/dom-breakpoints-editing-dom-from-inspector.js [ Failure Pass Timeout ]
 crbug.com/1190176 [ Linux ] fast/peerconnection/RTCPeerConnection-addMultipleTransceivers.html [ Crash Failure Pass ]
 
 crbug.com/1176039 [ Mac ] virtual/stable/media/stable/video-object-fit-stable.html [ Failure Pass ]
@@ -5837,8 +5846,8 @@
 crbug.com/1199701 http/tests/devtools/console/console-big-array.js [ Skip ]
 
 # Sheriff 2021-11-15
-crbug.com/1270362 http/tests/devtools/sources/debugger-ui/debugger-inline-values.js [ Skip ]
-crbug.com/1270362 http/tests/devtools/sources/debugger/debug-inlined-scripts-fragment-id.js [ Skip ]
+crbug.com/1270362 http/tests/devtools/sources/debugger-ui/debugger-inline-values.js [ Failure Pass Timeout ]
+crbug.com/1270362 http/tests/devtools/sources/debugger/debug-inlined-scripts-fragment-id.js [ Failure Pass Timeout ]
 
 # The wpt_flags=h2 variants of these tests fail, but the other variants pass. We
 # can't handle this difference with -expected.txt files, so we have to list them
@@ -6043,14 +6052,14 @@
 crbug.com/1228959 [ Linux ] virtual/scroll-unification/fast/scroll-snap/snaps-after-wheel-scrolling-single-tick.html [ Failure Pass ]
 
 # A number of http/tests/inspector-protocol/network tests are flaky.
-crbug.com/1228246 http/tests/inspector-protocol/network/disable-interception-midway.js [ Crash Failure Pass Skip Timeout ]
+crbug.com/1228246 http/tests/inspector-protocol/network/disable-interception-midway.js [ Failure Pass Timeout ]
 crbug.com/1196027 http/tests/inspector-protocol/network/request-interception.js [ Failure Pass ]
-crbug.com/1228246 http/tests/inspector-protocol/network/request-interception-frame-id.js [ Crash Failure Pass Skip Timeout ]
-crbug.com/1228246 http/tests/inspector-protocol/network/request-interception-patterns.js [ Crash Failure Pass Skip Timeout ]
-crbug.com/1228246 http/tests/inspector-protocol/network/request-response-interception-disable-between.js [ Crash Failure Pass Skip Timeout ]
-crbug.com/1228246 http/tests/inspector-protocol/network/same-site-issue-warn-cookie-lax-subresource-context-downgrade.js [ Crash Failure Pass Skip Timeout ]
-crbug.com/1228246 http/tests/inspector-protocol/network/same-site-issue-warn-cookie-strict-subresource-context-downgrade.js [ Crash Failure Pass Skip Timeout ]
-crbug.com/1228246 http/tests/inspector-protocol/network/webbundle.js [ Crash Failure Pass Skip Timeout ]
+crbug.com/1228246 http/tests/inspector-protocol/network/request-interception-frame-id.js [ Failure Pass Timeout ]
+crbug.com/1228246 http/tests/inspector-protocol/network/request-interception-patterns.js [ Failure Pass Timeout ]
+crbug.com/1228246 http/tests/inspector-protocol/network/request-response-interception-disable-between.js [ Failure Pass Timeout ]
+crbug.com/1228246 http/tests/inspector-protocol/network/same-site-issue-warn-cookie-lax-subresource-context-downgrade.js [ Failure Pass Timeout ]
+crbug.com/1228246 http/tests/inspector-protocol/network/same-site-issue-warn-cookie-strict-subresource-context-downgrade.js [ Failure Pass Timeout ]
+crbug.com/1228246 http/tests/inspector-protocol/network/webbundle.js [ Failure Pass Timeout ]
 
 # linux_layout_tests_layout_ng_disabled needs its own baselines.
 crbug.com/1231699 [ Linux ] fast/borders/border-inner-bleed.html [ Failure Pass ]
@@ -6062,12 +6071,12 @@
 crbug.com/1231699 [ Linux ] virtual/text-antialias/color-emoji.html [ Failure Pass ]
 
 # Other devtools flaky tests outside of http/tests/inspector-protocol/network.
-crbug.com/1228261 http/tests/devtools/console/console-context-selector.js [ Crash Failure Pass Timeout ]
-crbug.com/1228261 http/tests/inspector-protocol/browser-grant-permissions.js [ Crash Failure Pass Skip Timeout ]
-crbug.com/1228261 http/tests/inspector-protocol/network-fetch-content-with-error-status-code.js [ Crash Failure Pass Skip Timeout ]
-crbug.com/1228261 http/tests/inspector-protocol/fetch/request-paused-network-id-cors.js [ Crash Failure Pass Skip Timeout ]
-crbug.com/1228261 http/tests/inspector-protocol/service-worker/network-extrainfo-subresource.js [ Crash Failure Pass Skip Timeout ]
-crbug.com/1228261 http/tests/inspector-protocol/service-worker/network-get-request-body-blob.js [ Crash Failure Pass Skip Timeout ]
+crbug.com/1228261 http/tests/devtools/console/console-context-selector.js [ Failure Pass Timeout ]
+crbug.com/1228261 http/tests/inspector-protocol/browser-grant-permissions.js [ Failure Pass Timeout ]
+crbug.com/1228261 http/tests/inspector-protocol/network-fetch-content-with-error-status-code.js [ Failure Pass Timeout ]
+crbug.com/1228261 http/tests/inspector-protocol/fetch/request-paused-network-id-cors.js [ Failure Pass Timeout ]
+crbug.com/1228261 http/tests/inspector-protocol/service-worker/network-extrainfo-subresource.js [ Failure Pass Timeout ]
+crbug.com/1228261 http/tests/inspector-protocol/service-worker/network-get-request-body-blob.js [ Failure Pass Timeout ]
 
 # Flakes that might be caused or aggravated by PlzServiceWorker
 crbug.com/996511 external/wpt/service-workers/cache-storage/window/cache-abort.https.html [ Crash Failure Pass ]
@@ -6339,7 +6348,7 @@
 # Sheriff 2021-09-16
 crbug.com/1250457 [ Mac ] virtual/scroll-unification/plugins/plugin-map-data-to-src.html [ Failure ]
 crbug.com/1250457 [ Mac ] storage/websql/open-database-set-empty-version.html [ Timeout ]
-crbug.com/1250457 [ Mac ] virtual/portals/http/tests/devtools/portals/portals-console.js [ Skip Timeout ]
+crbug.com/1250457 [ Mac ] virtual/portals/http/tests/devtools/portals/portals-console.js [ Failure Pass Timeout ]
 crbug.com/1250457 [ Mac ] virtual/prefer_compositing_to_lcd_text/scrollbars/custom-scrollbar-inactive-pseudo.html [ Timeout ]
 crbug.com/1250457 [ Mac ] virtual/scroll-unification/fast/events/space-scroll-textinput-canceled.html [ Timeout ]
 
@@ -6432,7 +6441,7 @@
 crbug.com/1255221 http/tests/devtools/elements/styles-4/svg-style.js [ Failure Pass ]
 
 # Skip devtools test hitting an unexpected tracing infrastructure exception 2021-10-04
-crbug.com/1255679 http/tests/devtools/service-workers/service-workers-wasm-test.js [ Skip ]
+crbug.com/1255679 http/tests/devtools/service-workers/service-workers-wasm-test.js [ Failure Pass Timeout ]
 
 # Sheriff 2021-10-05
 crbug.com/1256755 http/tests/xmlhttprequest/cross-origin-unsupported-url.html [ Failure Pass ]
@@ -6504,8 +6513,8 @@
 crbug.com/1197465 virtual/scroll-unification/fast/events/mouse-cursor-no-mousemove.html [ Skip ]
 
 # Sheriff 2021-11-22
-crbug.com/1272352 virtual/threaded/http/tests/devtools/isolated-code-cache/same-origin-test.js [ Skip ]
-crbug.com/1272352 virtual/threaded/http/tests/devtools/isolated-code-cache/stale-revalidation-test.js [ Skip ]
+crbug.com/1272352 virtual/threaded/http/tests/devtools/isolated-code-cache/same-origin-test.js [ Failure Pass Timeout ]
+crbug.com/1272352 virtual/threaded/http/tests/devtools/isolated-code-cache/stale-revalidation-test.js [ Failure Pass Timeout ]
 crbug.com/1272376 virtual/scroll-unification/plugins/plugin-document-back-forward.html [ Failure Pass ]
 crbug.com/1272380 http/tests/devtools/bindings/bindings-multiple-frames.js [ Failure Pass ]
 
@@ -6673,6 +6682,8 @@
 crbug.com/1250666 crbug.com/1286944 [ Mac ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/valid-image-before-load.https.html [ Failure Pass Timeout ]
 crbug.com/1250666 crbug.com/1286944 [ Mac ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/valid-image-after-load.https.html [ Failure Pass Timeout ]
 crbug.com/1286944 [ Mac10.15 ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/registered-property-interpolation-009.https.html [ Failure ]
+crbug.com/1286944 [ Mac12 ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/registered-property-value-011.https.html [ Failure Pass ]
+crbug.com/1286944 [ Mac12 ] virtual/off-main-thread-css-paint/external/wpt/css/css-paint-api/registered-property-interpolation-001.https.html [ Failure Pass ]
 
 # Temporarily disabled to unblock https://crrev.com/c/3657449
 crbug.com/1183990 http/tests/devtools/bindings/bindings-frame-attach-detach.js [ Failure Pass ]
@@ -6890,7 +6901,7 @@
 # Sheriff 2022-04-05
 crbug.com/1203491 [ Linux ] fast/events/touch/gesture/touch-gesture-scroll-listbox.html [ Failure Pass ]
 crbug.com/1203491 [ Win ] fast/events/touch/gesture/touch-gesture-scroll-listbox.html [ Failure Pass ]
-crbug.com/1313282 inspector-protocol/input/dispatchMouseEvent.js [ Skip ]
+crbug.com/1313282 inspector-protocol/input/dispatchMouseEvent.js [ Failure Pass Timeout ]
 crbug.com/1095540 [ Mac ] virtual/compositor-threaded-percent-based-scrolling/fast/scrolling/resize-corner-tracking-touch.html [ Skip ]
 crbug.com/1254163 [ Mac10.13 ] ietestcenter/css3/bordersbackgrounds/background-attachment-local-scrolling.htm [ Failure ]
 crbug.com/1313396 [ Linux ] external/wpt/dom/events/Event-dispatch-on-disabled-elements.html [ Failure Pass ]
@@ -7073,9 +7084,6 @@
 # Manual test fails when run under automation due to lack of pop-up blocking. https://github.com/web-platform-tests/wpt/issues/3867
 crbug.com/1337125 external/wpt/window-placement/fullscreen-companion-window-manual.tentative.https.html [ Failure ]
 
-# Temporarily disable test to merge DevTools top layer support
-crbug.com/1313690 http/tests/devtools/elements/iframe-load-event.js [ Skip ]
-
 # Temporarily disable test to merge 'reveal' button change to adorner
 crbug.com/1066772 http/tests/devtools/elements/shadow/shadow-slot-assignment.js [ Skip ]
 
@@ -7117,7 +7125,7 @@
 crbug.com/1339293 [ Linux ] virtual/threaded/external/wpt/requestidlecallback/deadline-max-rAF-dynamic.html [ Failure Pass ]
 crbug.com/webrtc/14228 external/wpt/webrtc/protocol/h264-profile-levels.https.html [ Failure Pass ]
 
-virtual/threaded/external/wpt/scroll-animations/scroll-timelines/set-current-time-before-play.html [ Skip ]
+[ Debug ] external/wpt/scroll-animations/scroll-timelines/set-current-time-before-play.html [ Skip ]
 
 external/wpt/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html [ Skip ]
 
@@ -7131,3 +7139,5 @@
 crbug.com/1340781 virtual/android/fullscreen/full-screen-table-section.html [ Skip ]
 crbug.com/1340812 fast/forms/color-scheme/calendar-picker/date-picker-appearance-highlight.html [ Skip ]
 crbug.com/1104580 virtual/unsafe_webgpu/regress/regress-1104580.html [ Skip ]
+
+crbug.com/1327867 http/tests/inspector-protocol/network/initiator-minified.js [ Failure Pass ]
diff --git a/third_party/blink/web_tests/android/ChromeWPTOverrideExpectations b/third_party/blink/web_tests/android/ChromeWPTOverrideExpectations
index 4405c99..d4dcfee 100644
--- a/third_party/blink/web_tests/android/ChromeWPTOverrideExpectations
+++ b/third_party/blink/web_tests/android/ChromeWPTOverrideExpectations
@@ -754,7 +754,6 @@
 crbug.com/1050754 external/wpt/fetch/api/request/request-cache-reload.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-consume.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-init-002.any.sharedworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/request/request-init-stream.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-keepalive.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/response/response-cancel-stream.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/response/response-consume-stream.any.sharedworker.html [ Failure ]
diff --git a/third_party/blink/web_tests/android/WebLayerWPTOverrideExpectations b/third_party/blink/web_tests/android/WebLayerWPTOverrideExpectations
index 5542a8f..417c578 100644
--- a/third_party/blink/web_tests/android/WebLayerWPTOverrideExpectations
+++ b/third_party/blink/web_tests/android/WebLayerWPTOverrideExpectations
@@ -848,10 +848,6 @@
 crbug.com/1050754 external/wpt/fetch/api/basic/request-headers-nonascii.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/basic/request-headers.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/basic/request-referrer.any.sharedworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/basic/request-upload.h2.any.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/basic/request-upload.h2.any.serviceworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/basic/request-upload.h2.any.sharedworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/basic/request-upload.h2.any.worker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/basic/scheme-about.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/basic/scheme-data.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/basic/scheme-others.sub.any.sharedworker.html [ Failure ]
@@ -895,7 +891,6 @@
 crbug.com/1050754 external/wpt/fetch/api/request/request-cache-reload.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-consume.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-init-002.any.sharedworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/request/request-init-stream.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-keepalive.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/response/response-body-read-task-handling.html [ Failure Pass ]
 crbug.com/1050754 external/wpt/fetch/api/response/response-cancel-stream.any.sharedworker.html [ Failure ]
diff --git a/third_party/blink/web_tests/android/WebviewWPTExpectations b/third_party/blink/web_tests/android/WebviewWPTExpectations
index 707ab39..f887afe0 100644
--- a/third_party/blink/web_tests/android/WebviewWPTExpectations
+++ b/third_party/blink/web_tests/android/WebviewWPTExpectations
@@ -2168,9 +2168,6 @@
 crbug.com/1050754 external/wpt/fetch/api/basic/request-headers-nonascii.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/basic/request-headers.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/basic/request-referrer.any.sharedworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/basic/request-upload.any.html [ Failure Pass ]
-crbug.com/1050754 external/wpt/fetch/api/basic/request-upload.any.sharedworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/basic/request-upload.any.worker.html [ Failure Pass ]
 crbug.com/1050754 external/wpt/fetch/api/basic/scheme-about.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/basic/scheme-data.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/basic/scheme-others.sub.any.sharedworker.html [ Failure ]
@@ -2231,10 +2228,6 @@
 crbug.com/1050754 external/wpt/fetch/api/request/request-consume.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-disturbed.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-init-002.any.sharedworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/request/request-init-stream.any.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/request/request-init-stream.any.serviceworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/request/request-init-stream.any.sharedworker.html [ Failure ]
-crbug.com/1050754 external/wpt/fetch/api/request/request-init-stream.any.worker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-keepalive.any.sharedworker.html [ Failure ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-reset-attributes.https.html [ Failure Pass ]
 crbug.com/1050754 external/wpt/fetch/api/request/request-structure.any.sharedworker.html [ Failure ]
diff --git a/third_party/blink/web_tests/external/Version b/third_party/blink/web_tests/external/Version
index aabada20..ffbafd5c 100644
--- a/third_party/blink/web_tests/external/Version
+++ b/third_party/blink/web_tests/external/Version
@@ -1 +1 @@
-Version: 6ac81d105d601a47ab9f89d6b9985f91a4c9ad8a
+Version: 38decee65c87189195d3b29da81fd1e0c4d9fb72
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 493d177..e024f22 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
@@ -298788,7 +298788,7 @@
     },
     "include": {
      "editor-test-utils.js": [
-      "abf89d7e9edb9526a8efb1609c44e9741852d04d",
+      "4a9981a9c5f4bcc1274994aeabbaaebf933134b6",
       []
      ],
      "implementation.js": [
@@ -334143,7 +334143,7 @@
        []
       ],
       "fixtures_bidi.py": [
-       "3bcebb95f4b5be91054219dd669274d3c8a3ff2a",
+       "8fe169d242835172a6b9126780224e71bdaddad4",
        []
       ],
       "fixtures_http.py": [
@@ -406576,6 +406576,16 @@
        {}
       ]
      ],
+     "cloning-attributes-at-splitting-element.tentative.html": [
+      "3c0b1c9344efc4097f55f8fc0e51d16457d576c1",
+      [
+       null,
+       {
+        "testdriver": true,
+        "timeout": "long"
+       }
+      ]
+     ],
      "delete.html": [
       "b9bd1437e3721f1353a9df6bde155f2f2b8ae95a",
       [
@@ -406804,6 +406814,23 @@
        }
       ]
      ],
+     "keeping-attributes-at-joining-elements.tentative.html": [
+      "99a0dab56ab43d8f9e96b7b6d9bc3a55f2d36210",
+      [
+       "editing/other/keeping-attributes-at-joining-elements.tentative.html?method=backspace",
+       {
+        "testdriver": true,
+        "timeout": "long"
+       }
+      ],
+      [
+       "editing/other/keeping-attributes-at-joining-elements.tentative.html?method=forwarddelete",
+       {
+        "testdriver": true,
+        "timeout": "long"
+       }
+      ]
+     ],
      "legacy-edit-command.html": [
       "81ff89d81bd9037e2ffb5d2929951ad862e19bed",
       [
@@ -406920,7 +406947,7 @@
       ]
      ],
      "selectall-without-focus.html": [
-      "0db01014c103cd1750fca52d36a9b471edc6d4ee",
+      "f75e930907f1d69cbefd095b545c98784ef2220b",
       [
        null,
        {}
@@ -423276,7 +423303,7 @@
        ]
       ],
       "request-upload.any.js": [
-       "24f7c5b432caac58117dbeda5844ba5d3d99bc0e",
+       "9168aa11541f1c64b3a3ff901ee255253aa283fd",
        [
         "fetch/api/basic/request-upload.any.html",
         {
@@ -423371,7 +423398,7 @@
        ]
       ],
       "request-upload.h2.any.js": [
-       "355a331c9d630cdcae3f7fb7b197f08c10c12bc5",
+       "70d11eca76694ba2c184773b751a547da0ff2d66",
        [
         "fetch/api/basic/request-upload.h2.any.html",
         {
@@ -427984,7 +428011,7 @@
        ]
       ],
       "request-init-stream.any.js": [
-       "8c50c4929e75dacb61a3a74054a169ae2346bbd8",
+       "ac78a253f7d0df96f81f1b7d0de174c5cdb1b226",
        [
         "fetch/api/request/request-init-stream.any.html",
         {
diff --git a/third_party/blink/web_tests/external/wpt/editing/include/editor-test-utils.js b/third_party/blink/web_tests/external/wpt/editing/include/editor-test-utils.js
index abf89d7..4a9981a 100644
--- a/third_party/blink/web_tests/external/wpt/editing/include/editor-test-utils.js
+++ b/third_party/blink/web_tests/external/wpt/editing/include/editor-test-utils.js
@@ -75,6 +75,11 @@
     return this.sendKey(kEnd, modifier);
   }
 
+  sendEnterKey(modifier) {
+    const kEnter = "\uE007";
+    return this.sendKey(kEnter, modifier);
+  }
+
   sendSelectAllShortcutKey() {
     return this.sendKey(
       "a",
diff --git a/third_party/blink/web_tests/external/wpt/editing/other/cloning-attributes-at-splitting-element.tentative.html b/third_party/blink/web_tests/external/wpt/editing/other/cloning-attributes-at-splitting-element.tentative.html
new file mode 100644
index 0000000..3c0b1c9
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/editing/other/cloning-attributes-at-splitting-element.tentative.html
@@ -0,0 +1,522 @@
+<!doctype html>
+<meta chareset="utf-8">
+<meta name="timeout" content="long">
+<title>Cloning attributes at splitting an element in contenteditable</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="../include/editor-test-utils.js"></script>
+<div contenteditable></div>
+<script>
+"use strict";
+
+document.execCommand("defaultParagraphSeparator", false, "div");
+const utils =
+  new EditorTestUtils(document.querySelector("div[contenteditable]"));
+
+// DO NOT USE multi-line comment in this file, then, you can comment out
+// unnecessary tests when you need to attach the browser with a debugger.
+
+// When an element is being split, all attributes except id attribute should be
+// cloned to the new element.
+promise_test(async t => {
+  utils.setupEditingHost(`<div id="splittee">abc[]def</div>`);
+  const splittee = document.getElementById("splittee");
+  await utils.sendEnterKey();
+  test(() => {
+    assert_equals(
+      document.getElementById("splittee"),
+      splittee,
+      `The element instance returned by Document.getElementById shouldn't be changed after splitting the element (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      document.querySelectorAll("[id=splittee]").length,
+      1,
+      `The new element created by splitting an element shouldn't have same id attribute value (${t.name})`
+    );
+  });
+}, "Splitting <div id=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<div class="splittee">abc[]def</div>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("div");
+  const rightNode = utils.editingHost.querySelector("div + div");
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "splittee",
+      `The left element should keep having the class attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "splittee",
+      `The right element should keep having the class attribute (${t.name})`
+    );
+  });
+}, "Splitting <div class=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<div data-foo="1" data-bar="2">abc[]def</div>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("div");
+  const rightNode = utils.editingHost.querySelector("div + div");
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "1",
+      `The left element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      leftNode.getAttribute("data-bar"),
+      "2",
+      `The left element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-foo"),
+      "1",
+      `The right element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "2",
+      `The right element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+}, "Splitting <div data-foo=\"1\" data-bar=\"2\">");
+
+// Same tests for list items since browsers may use different path to handle
+// splitting a list item.
+promise_test(async t => {
+  utils.setupEditingHost(`<ul><li id="splittee">abc[]def</li></ul>`);
+  const splittee = document.getElementById("splittee");
+  await utils.sendEnterKey();
+  test(() => {
+    assert_equals(
+      document.getElementById("splittee"),
+      splittee,
+      `The element instance returned by Document.getElementById shouldn't be changed after splitting the element (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      document.querySelectorAll("[id=splittee]").length,
+      1,
+      `The new element created by splitting an element shouldn't have same id attribute value (${t.name})`
+    );
+  });
+}, "Splitting <li id=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<ul><li class="splittee">abc[]def</li></ul>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("li");
+  const rightNode = utils.editingHost.querySelector("li + li");
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "splittee",
+      `The left element should keep having the class attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "splittee",
+      `The right element should keep having the class attribute (${t.name})`
+    );
+  });
+}, "Splitting <li class=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<ul><li data-foo="1" data-bar="2">abc[]def</li></ul>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("li");
+  const rightNode = utils.editingHost.querySelector("li + li");
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "1",
+      `The left element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      leftNode.getAttribute("data-bar"),
+      "2",
+      `The left element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-foo"),
+      "1",
+      `The right element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "2",
+      `The right element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+}, "Splitting <li data-foo=\"1\" data-bar=\"2\">");
+
+// Same tests for heading since browsers may use different path to handle
+// splitting a heading element.
+promise_test(async t => {
+  utils.setupEditingHost(`<h3 id="p">abc[]def</h3>`);
+  const splittee = document.getElementById("splittee");
+  await utils.sendEnterKey();
+  test(() => {
+    assert_equals(
+      document.getElementById("splittee"),
+      splittee,
+      `The element instance returned by Document.getElementById shouldn't be changed after splitting the element (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      document.querySelectorAll("[id=p]").length,
+      1,
+      `The new element created by splitting an element shouldn't have same id attribute value (${t.name})`
+    );
+  });
+}, "Splitting <h3 id=\"p\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<h3 class="splittee">abc[]def</h3>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("h3");
+  const rightNode = leftNode.nextSibling;
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "splittee",
+      `The left element should keep having the class attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "splittee",
+      `The right element should keep having the class attribute (${t.name})`
+    );
+  });
+}, "Splitting <h3 class=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<h3 data-foo="1" data-bar="2">abc[]def</h3>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("h3");
+  const rightNode = leftNode.nextSibling;
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "1",
+      `The left element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      leftNode.getAttribute("data-bar"),
+      "2",
+      `The left element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-foo"),
+      "1",
+      `The right element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "2",
+      `The right element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+}, "Splitting <h3 data-foo=\"1\" data-bar=\"2\">");
+
+// Same tests for <dt> since browsers may use different path to handle
+// splitting a <dt>.
+promise_test(async t => {
+  utils.setupEditingHost(`<dl><dt id="splittee">abc[]def</dt></dl>`);
+  const splittee = document.getElementById("splittee");
+  await utils.sendEnterKey();
+  test(() => {
+    assert_equals(
+      document.getElementById("splittee"),
+      splittee,
+      `The element instance returned by Document.getElementById shouldn't be changed after splitting the element (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      document.querySelectorAll("[id=splittee]").length,
+      1,
+      `The new element created by splitting an element shouldn't have same id attribute value (${t.name})`
+    );
+  });
+}, "Splitting <dt id=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<dl><dt class="splittee">abc[]def</dt></dl>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("dt");
+  const rightNode = leftNode.nextSibling;
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "splittee",
+      `The left element should keep having the class attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "splittee",
+      `The right element should keep having the class attribute (${t.name})`
+    );
+  });
+}, "Splitting <dt class=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<dl><dt data-foo="1" data-bar="2">abc[]def</dt></dl>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("dt");
+  const rightNode = leftNode.nextSibling;
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "1",
+      `The left element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      leftNode.getAttribute("data-bar"),
+      "2",
+      `The left element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-foo"),
+      "1",
+      `The right element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "2",
+      `The right element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+}, "Splitting <dt data-foo=\"1\" data-bar=\"2\">");
+
+// Same tests for <dd> since browsers may use different path to handle
+// splitting a <dd>.
+promise_test(async t => {
+  utils.setupEditingHost(`<dl><dd id="splittee">abc[]def</dd></dl>`);
+  const splittee = document.getElementById("splittee");
+  await utils.sendEnterKey();
+  test(() => {
+    assert_equals(
+      document.getElementById("splittee"),
+      splittee,
+      `The element instance returned by Document.getElementById shouldn't be changed after splitting the element (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      document.querySelectorAll("[id=splittee]").length,
+      1,
+      `The new element created by splitting an element shouldn't have same id attribute value (${t.name})`
+    );
+  });
+}, "Splitting <dd id=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<dl><dd class="splittee">abc[]def</dd></dl>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("dd");
+  const rightNode = leftNode.nextSibling;
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "splittee",
+      `The left element should keep having the class attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "splittee",
+      `The right element should keep having the class attribute (${t.name})`
+    );
+  });
+}, "Splitting <dd class=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<dl><dd data-foo="1" data-bar="2">abc[]def</dd></dl>`);
+  await utils.sendEnterKey();
+  const leftNode = utils.editingHost.querySelector("dd");
+  const rightNode = leftNode.nextSibling;
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "1",
+      `The left element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      leftNode.getAttribute("data-bar"),
+      "2",
+      `The left element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-foo"),
+      "1",
+      `The right element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "2",
+      `The right element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+}, "Splitting <dd data-foo=\"1\" data-bar=\"2\">");
+
+// Same tests for inline elements.
+promise_test(async t => {
+  utils.setupEditingHost(`<div id="splittee-parent"><span id="splittee">abc[]def</span></div>`);
+  const splittee = document.getElementById("splittee");
+  const splitteeParent = document.getElementById("splittee-parent");
+  await utils.sendEnterKey();
+  test(() => {
+    assert_equals(
+      document.getElementById("splittee"),
+      splittee,
+      `The element instance returned by Document.getElementById shouldn't be changed after splitting the element (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      document.getElementById("splittee-parent"),
+      splitteeParent,
+      `The element instance returned by Document.getElementById shouldn't be changed after splitting the element (splittee-parent) (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      document.querySelectorAll("[id=splittee]").length,
+      1,
+      `The new element created by splitting an element shouldn't have same id attribute value (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      document.querySelectorAll("[id=splittee-parent]").length,
+      1,
+      `The new element created by splitting an element shouldn't have same id attribute value (splittee-parent) (${t.name})`
+    );
+  });
+}, "Splitting <div id=\"splittee-parent\"> and <span id=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<div class="splittee-parent"><span class="splittee">abc[]def</span></div>`);
+  await utils.sendEnterKey();
+  const leftParent = utils.editingHost.querySelector("div");
+  const leftNode = leftParent.querySelector("span");
+  const rightParent = utils.editingHost.querySelector("div + div");
+  const rightNode = rightParent.querySelector("span");
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "splittee",
+      `The left element should keep having the class attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      leftParent.getAttribute("class"),
+      "splittee-parent",
+      `The left element should keep having the class attribute (splittee-parent) (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "splittee",
+      `The right element should keep having the class attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightParent.getAttribute("class"),
+      "splittee-parent",
+      `The right element should keep having the class attribute (splittee-parent) (${t.name})`
+    );
+  });
+}, "Splitting <div class=\"splittee-parent\"> and <span class=\"splittee\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(`<div data-foo="1" data-bar="2"><span data-foo="3" data-bar="4">abc[]def</span></div>`);
+  await utils.sendEnterKey();
+  const leftParent = utils.editingHost.querySelector("div");
+  const leftNode = leftParent.querySelector("span");
+  const rightParent = utils.editingHost.querySelector("div + div");
+  const rightNode = rightParent.querySelector("span");
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "3",
+      `The left element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      leftNode.getAttribute("data-bar"),
+      "4",
+      `The left element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      leftParent.getAttribute("data-foo"),
+      "1",
+      `The left element should keep having the data-foo attribute (splittee-parent) (${t.name})`
+    );
+    assert_equals(
+      leftParent.getAttribute("data-bar"),
+      "2",
+      `The left element should keep having the data-bar attribute (splittee-parent) (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-foo"),
+      "3",
+      `The right element should keep having the data-foo attribute (${t.name})`
+    );
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "4",
+      `The right element should keep having the data-bar attribute (${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightParent.getAttribute("data-foo"),
+      "1",
+      `The right element should keep having the data-foo attribute (splittee-parent) (${t.name})`
+    );
+    assert_equals(
+      rightParent.getAttribute("data-bar"),
+      "2",
+      `The right element should keep having the data-bar attribute (splittee-parent) (${t.name})`
+    );
+  });
+}, "Splitting <div data-foo=\"1\" data-bar=\"2\"> and <span data-foo=\"3\" data-bar=\"4\">");
+
+</script>
diff --git a/third_party/blink/web_tests/external/wpt/editing/other/keeping-attributes-at-joining-elements.tentative.html b/third_party/blink/web_tests/external/wpt/editing/other/keeping-attributes-at-joining-elements.tentative.html
new file mode 100644
index 0000000..99a0dab
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/editing/other/keeping-attributes-at-joining-elements.tentative.html
@@ -0,0 +1,1167 @@
+<!doctype html>
+<meta chareset="utf-8">
+<meta name="timeout" content="long">
+<meta name="variant" content="?method=backspace">
+<meta name="variant" content="?method=forwarddelete">
+<title>Not merging attributes at joining elements in contenteditable</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="../include/editor-test-utils.js"></script>
+</style>
+<div contenteditable></div>
+<script>
+"use strict";
+
+const testingBackspace =
+  new URLSearchParams(document.location.search).get("method") == "backspace";
+const caretForBackSpace = testingBackspace ? "[]" : "";
+const caretForForwardDelete = testingBackspace ? "" : "[]";
+document.execCommand("defaultParagraphSeparator", false, "div");
+const utils =
+  new EditorTestUtils(document.querySelector("div[contenteditable]"));
+
+// DO NOT USE multi-line comment in this file, then, you can comment out
+// unnecessary tests when you need to attach the browser with a debugger.
+
+// At joining 2 elements, the attributes shouldn't be merged, and from point of
+// view of JS/DOM, both element kept after the join and element deleted from the
+// DOM tree should have attributes as-is.
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<div id="left">abc${caretForForwardDelete}</div><div id="right">${caretForBackSpace}def</div>`
+  );
+  const leftNode = document.getElementById("left");
+  const rightNode = document.getElementById("right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("id"),
+      "left",
+      `The left node should keep having id=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("id"),
+      "right",
+      `The right node should keep having id=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <div id=\"left\"> and <div id=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<div class="left">abc${caretForForwardDelete}</div><div class="right">${caretForBackSpace}def</div>`
+  );
+  const leftNode = utils.editingHost.querySelector(".left");
+  const rightNode = utils.editingHost.querySelector(".right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <div class=\"left\"> and <div class=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<div style="font-size:0.8rem">abc${caretForForwardDelete}</div><div style="font-weight:bold">${caretForBackSpace}def</div>`
+  );
+  const leftNode = utils.editingHost.querySelector("div[style]");
+  const rightNode = leftNode.nextSibling;
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  // style attribute values shouldn't be touched in this but case, but it's
+  // okay if the values are not merged.
+  test(() => {
+    assert_true(
+      leftNode.getAttribute("style").includes("font-size"),
+      `The left node should keep having style attribute containing font-size (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      leftNode.getAttribute("style").includes("font-weight"),
+      `The left node should have font-weight in its style attribute (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  test(() => {
+    assert_true(
+      rightNode.getAttribute("style").includes("font-weight"),
+      `The right node should keep having style attribute containing font-size (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      rightNode.getAttribute("style").includes("font-style"),
+      `The right node should have font-size in its style attribute (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <div style=\"font-size:0.8rem\"> and <div style=\"font-weight:bold\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<div data-foo="left">abc${caretForForwardDelete}</div><div data-bar="right">${caretForBackSpace}def</div>`
+  );
+  const leftNode = utils.editingHost.querySelector("[data-foo=left]");
+  const rightNode = utils.editingHost.querySelector("[data-bar=right]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      leftNode.hasAttribute("data-bar"),
+      `The left node shouldn't have data-bar attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      rightNode.hasAttribute("data-foo"),
+      `The right node shouldn't have data-foo attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <div data-foo=\"left\"> and <div data-bar=\"right\">");
+
+// Same tests for list-item elements because they may be handled in a different
+// path.
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<ul><li id="left">abc${caretForForwardDelete}</li><li id="right">${caretForBackSpace}def</li></ul>`
+  );
+  const leftNode = document.getElementById("left");
+  const rightNode = document.getElementById("right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("id"),
+      "left",
+      `The left node should keep having id=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("id"),
+      "right",
+      `The right node should keep having id=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <li id=\"left\"> and <li id=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<ul><li class="left">abc${caretForForwardDelete}</li><li class="right">${caretForBackSpace}def</li></ul>`
+  );
+  const leftNode = utils.editingHost.querySelector(".left");
+  const rightNode = utils.editingHost.querySelector(".right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <li class=\"left\"> and <li class=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<ul><li style="font-size:0.8rem">abc${caretForForwardDelete}</li><li style="font-weight:bold">${caretForBackSpace}def</li></ul>`
+  );
+  const leftNode = utils.editingHost.querySelector("li[style]");
+  const rightNode = leftNode.nextSibling;
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  // style attribute values shouldn't be touched in this but case, but it's
+  // okay if the values are not merged.
+  test(() => {
+    assert_true(
+      leftNode.getAttribute("style").includes("font-size"),
+      `The left node should keep having style attribute containing font-size (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      leftNode.getAttribute("style").includes("font-weight"),
+      `The left node should have font-weight in its style attribute (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  test(() => {
+    assert_true(
+      rightNode.getAttribute("style").includes("font-weight"),
+      `The right node should keep having style attribute containing font-size (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      rightNode.getAttribute("style").includes("font-style"),
+      `The right node should have font-size in its style attribute (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <li style=\"font-size:0.8rem\"> and <li style=\"font-weight:bold\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<ul><li data-foo="left">abc${caretForForwardDelete}</li><li data-bar="right">${caretForBackSpace}def</li></ul>`
+  );
+  const leftNode = utils.editingHost.querySelector("[data-foo=left]");
+  const rightNode = utils.editingHost.querySelector("[data-bar=right]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      leftNode.hasAttribute("data-bar"),
+      `The left node shouldn't have data-bar attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      rightNode.hasAttribute("data-foo"),
+      `The right node shouldn't have data-foo attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <li data-foo=\"left\"> and <li data-bar=\"right\">");
+
+// Same tests for <dt> elements because they may be handled in a different
+// path.
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dt id="left">abc${caretForForwardDelete}</dt><dt id="right">${caretForBackSpace}def</dt></dl>`
+  );
+  const leftNode = document.getElementById("left");
+  const rightNode = document.getElementById("right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("id"),
+      "left",
+      `The left node should keep having id=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("id"),
+      "right",
+      `The right node should keep having id=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dt id=\"left\"> and <dt id=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dt class="left">abc${caretForForwardDelete}</dt><dt class="right">${caretForBackSpace}def</dt></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector(".left");
+  const rightNode = utils.editingHost.querySelector(".right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dt class=\"left\"> and <dt class=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dt style="font-size:0.8rem">abc${caretForForwardDelete}</dt><dt style="font-weight:bold">${caretForBackSpace}def</dt></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector("dt[style]");
+  const rightNode = leftNode.nextSibling;
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  // style attribute values shouldn't be touched in this but case, but it's
+  // okay if the values are not merged.
+  test(() => {
+    assert_true(
+      leftNode.getAttribute("style").includes("font-size"),
+      `The left node should keep having style attribute containing font-size (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      leftNode.getAttribute("style").includes("font-weight"),
+      `The left node should have font-weight in its style attribute (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  test(() => {
+    assert_true(
+      rightNode.getAttribute("style").includes("font-weight"),
+      `The right node should keep having style attribute containing font-size (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      rightNode.getAttribute("style").includes("font-style"),
+      `The right node should have font-size in its style attribute (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dt style=\"font-size:0.8rem\"> and <dt style=\"font-weight:bold\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dt data-foo="left">abc${caretForForwardDelete}</dt><dt data-bar="right">${caretForBackSpace}def</dt></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector("[data-foo=left]");
+  const rightNode = utils.editingHost.querySelector("[data-bar=right]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      leftNode.hasAttribute("data-bar"),
+      `The left node shouldn't have data-bar attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      rightNode.hasAttribute("data-foo"),
+      `The right node shouldn't have data-foo attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dt data-foo=\"left\"> and <dt data-bar=\"right\">");
+
+// Same tests for <dd> elements because they may be handled in a different
+// path.
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dd id="left">abc${caretForForwardDelete}</dd><dd id="right">${caretForBackSpace}def</dd></dl>`
+  );
+  const leftNode = document.getElementById("left");
+  const rightNode = document.getElementById("right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("id"),
+      "left",
+      `The left node should keep having id=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("id"),
+      "right",
+      `The right node should keep having id=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dd id=\"left\"> and <dd id=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dd class="left">abc${caretForForwardDelete}</dd><dd class="right">${caretForBackSpace}def</dd></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector(".left");
+  const rightNode = utils.editingHost.querySelector(".right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dd class=\"left\"> and <dd class=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dd style="font-size:0.8rem">abc${caretForForwardDelete}</dd><dd style="font-weight:bold">${caretForBackSpace}def</dd></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector("dd[style]");
+  const rightNode = leftNode.nextSibling;
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  // style attribute values shouldn't be touched in this but case, but it's
+  // okay if the values are not merged.
+  test(() => {
+    assert_true(
+      leftNode.getAttribute("style").includes("font-size"),
+      `The left node should keep having style attribute containing font-size (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      leftNode.getAttribute("style").includes("font-weight"),
+      `The left node should have font-weight in its style attribute (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  test(() => {
+    assert_true(
+      rightNode.getAttribute("style").includes("font-weight"),
+      `The right node should keep having style attribute containing font-size (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      rightNode.getAttribute("style").includes("font-style"),
+      `The right node should have font-size in its style attribute (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dd style=\"font-size:0.8rem\"> and <dd style=\"font-weight:bold\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dd data-foo="left">abc${caretForForwardDelete}</dd><dd data-bar="right">${caretForBackSpace}def</dd></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector("[data-foo=left]");
+  const rightNode = utils.editingHost.querySelector("[data-bar=right]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      leftNode.hasAttribute("data-bar"),
+      `The left node shouldn't have data-bar attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      rightNode.hasAttribute("data-foo"),
+      `The right node shouldn't have data-foo attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dd data-foo=\"left\"> and <dd data-bar=\"right\">");
+
+// Same tests for <dt> and <dd> because they may be handled in a different
+// path.
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dt id="left">abc${caretForForwardDelete}</dt><dd id="right">${caretForBackSpace}def</dd></dl>`
+  );
+  const leftNode = document.getElementById("left");
+  const rightNode = document.getElementById("right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("id"),
+      "left",
+      `The left node should keep having id=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("id"),
+      "right",
+      `The right node should keep having id=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dt id=\"left\"> and <dd id=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dt class="left">abc${caretForForwardDelete}</dt><dd class="right">${caretForBackSpace}def</dd></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector(".left");
+  const rightNode = utils.editingHost.querySelector(".right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dt class=\"left\"> and <dd class=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dt style="font-size:0.8rem">abc${caretForForwardDelete}</dt><dd style="font-weight:bold">${caretForBackSpace}def</dd></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector("dt[style]");
+  const rightNode = utils.editingHost.querySelector("dd[style]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  // style attribute values shouldn't be touched in this but case, but it's
+  // okay if the values are not merged.
+  test(() => {
+    assert_true(
+      leftNode.getAttribute("style").includes("font-size"),
+      `The left node should keep having style attribute containing font-size (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      leftNode.getAttribute("style").includes("font-weight"),
+      `The left node should have font-weight in its style attribute (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  test(() => {
+    assert_true(
+      rightNode.getAttribute("style").includes("font-weight"),
+      `The right node should keep having style attribute containing font-size (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      rightNode.getAttribute("style").includes("font-style"),
+      `The right node should have font-size in its style attribute (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dt style=\"font-size:0.8rem\"> and <dd style=\"font-weight:bold\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dt data-foo="left">abc${caretForForwardDelete}</dt><dd data-bar="right">${caretForBackSpace}def</dd></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector("[data-foo=left]");
+  const rightNode = utils.editingHost.querySelector("[data-bar=right]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      leftNode.hasAttribute("data-bar"),
+      `The left node shouldn't have data-bar attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      rightNode.hasAttribute("data-foo"),
+      `The right node shouldn't have data-foo attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dt data-foo=\"left\"> and <dd data-bar=\"right\">");
+
+// Same tests for <dd> and <dt> because they may be handled in a different
+// path.
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dd id="left">abc${caretForForwardDelete}</dd><dt id="right">${caretForBackSpace}def</dt></dl>`
+  );
+  const leftNode = document.getElementById("left");
+  const rightNode = document.getElementById("right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("id"),
+      "left",
+      `The left node should keep having id=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("id"),
+      "right",
+      `The right node should keep having id=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dd id=\"left\"> and <dt id=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dd class="left">abc${caretForForwardDelete}</dd><dt class="right">${caretForBackSpace}def</dt></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector(".left");
+  const rightNode = utils.editingHost.querySelector(".right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dd class=\"left\"> and <dt class=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dd style="font-size:0.8rem">abc${caretForForwardDelete}</dd><dt style="font-weight:bold">${caretForBackSpace}def</dt></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector("dd[style]");
+  const rightNode = utils.editingHost.querySelector("dt[style]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  // style attribute values shouldn't be touched in this but case, but it's
+  // okay if the values are not merged.
+  test(() => {
+    assert_true(
+      leftNode.getAttribute("style").includes("font-size"),
+      `The left node should keep having style attribute containing font-size (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      leftNode.getAttribute("style").includes("font-weight"),
+      `The left node should have font-weight in its style attribute (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  test(() => {
+    assert_true(
+      rightNode.getAttribute("style").includes("font-weight"),
+      `The right node should keep having style attribute containing font-size (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      rightNode.getAttribute("style").includes("font-style"),
+      `The right node should have font-size in its style attribute (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dd style=\"font-size:0.8rem\"> and <dt style=\"font-weight:bold\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<dl><dd data-foo="left">abc${caretForForwardDelete}</dd><dt data-bar="right">${caretForBackSpace}def</dt></dl>`
+  );
+  const leftNode = utils.editingHost.querySelector("[data-foo=left]");
+  const rightNode = utils.editingHost.querySelector("[data-bar=right]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      leftNode.hasAttribute("data-bar"),
+      `The left node shouldn't have data-bar attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      rightNode.hasAttribute("data-foo"),
+      `The right node shouldn't have data-foo attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <dd data-foo=\"left\"> and <dt data-bar=\"right\">");
+
+// Same tests for <h3> and <div> because they may be handled in a different
+// path.
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<h3 id="left">abc${caretForForwardDelete}</h3><div id="right">${caretForBackSpace}def</div>`
+  );
+  const leftNode = document.getElementById("left");
+  const rightNode = document.getElementById("right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("id"),
+      "left",
+      `The left node should keep having id=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("id"),
+      "right",
+      `The right node should keep having id=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <h3 id=\"left\"> and <div id=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<h3 class="left">abc${caretForForwardDelete}</h3><div class="right">${caretForBackSpace}def</div>`
+  );
+  const leftNode = utils.editingHost.querySelector(".left");
+  const rightNode = utils.editingHost.querySelector(".right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <h3 class=\"left\"> and <div class=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<h3 style="font-size:0.8rem">abc${caretForForwardDelete}</h3><div style="font-weight:bold">${caretForBackSpace}def</div>`
+  );
+  const leftNode = utils.editingHost.querySelector("h3[style]");
+  const rightNode = utils.editingHost.querySelector("div[style]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  // style attribute values shouldn't be touched in this but case, but it's
+  // okay if the values are not merged.
+  test(() => {
+    assert_true(
+      leftNode.getAttribute("style").includes("font-size"),
+      `The left node should keep having style attribute containing font-size (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      leftNode.getAttribute("style").includes("font-weight"),
+      `The left node should have font-weight in its style attribute (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  test(() => {
+    assert_true(
+      rightNode.getAttribute("style").includes("font-weight"),
+      `The right node should keep having style attribute containing font-size (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      rightNode.getAttribute("style").includes("font-style"),
+      `The right node should have font-size in its style attribute (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <h3 style=\"font-size:0.8rem\"> and <div style=\"font-weight:bold\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<h3 data-foo="left">abc${caretForForwardDelete}</h3><div data-bar="right">${caretForBackSpace}def</div>`
+  );
+  const leftNode = utils.editingHost.querySelector("[data-foo=left]");
+  const rightNode = utils.editingHost.querySelector("[data-bar=right]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      leftNode.hasAttribute("data-bar"),
+      `The left node shouldn't have data-bar attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      rightNode.hasAttribute("data-foo"),
+      `The right node shouldn't have data-foo attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <h3 data-foo=\"left\"> and <div data-bar=\"right\">");
+
+// Same tests for <div> and <h3> because they may be handled in a different
+// path.
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<div id="left">abc${caretForForwardDelete}</div><h3 id="right">${caretForBackSpace}def</h3>`
+  );
+  const leftNode = document.getElementById("left");
+  const rightNode = document.getElementById("right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("id"),
+      "left",
+      `The left node should keep having id=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("id"),
+      "right",
+      `The right node should keep having id=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <div id=\"left\"> and <h3 id=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<div class="left">abc${caretForForwardDelete}</div><h3 class="right">${caretForBackSpace}def</h3>`
+  );
+  const leftNode = utils.editingHost.querySelector(".left");
+  const rightNode = utils.editingHost.querySelector(".right");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("class"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("class"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <div class=\"left\"> and <h3 class=\"right\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<div style="font-size:0.8rem">abc${caretForForwardDelete}</div><h3 style="font-weight:bold">${caretForBackSpace}def</h3>`
+  );
+  const leftNode = utils.editingHost.querySelector("div[style]");
+  const rightNode = utils.editingHost.querySelector("h3[style]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  // style attribute values shouldn't be touched in this but case, but it's
+  // okay if the values are not merged.
+  test(() => {
+    assert_true(
+      leftNode.getAttribute("style").includes("font-size"),
+      `The left node should keep having style attribute containing font-size (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      leftNode.getAttribute("style").includes("font-weight"),
+      `The left node should have font-weight in its style attribute (style="${leftNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  test(() => {
+    assert_true(
+      rightNode.getAttribute("style").includes("font-weight"),
+      `The right node should keep having style attribute containing font-size (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+    assert_false(
+      rightNode.getAttribute("style").includes("font-style"),
+      `The right node should have font-size in its style attribute (style="${rightNode.getAttribute("style")}", ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <div style=\"font-size:0.8rem\"> and <h3 style=\"font-weight:bold\">");
+
+promise_test(async t => {
+  utils.setupEditingHost(
+    `<div data-foo="left">abc${caretForForwardDelete}</div><h3 data-bar="right">${caretForBackSpace}def</h3>`
+  );
+  const leftNode = utils.editingHost.querySelector("[data-foo=left]");
+  const rightNode = utils.editingHost.querySelector("[data-bar=right]");
+
+  await (testingBackspace ? utils.sendBackspaceKey() : utils.sendDeleteKey());
+
+  test(() => {
+    assert_equals(
+      leftNode.getAttribute("data-foo"),
+      "left",
+      `The left node should keep having class=left (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      leftNode.hasAttribute("data-bar"),
+      `The left node shouldn't have data-bar attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_equals(
+      rightNode.getAttribute("data-bar"),
+      "right",
+      `The right node should keep having class=right (isConnected=${rightNode.isConnected}, ${t.name})`
+    );
+  });
+  test(() => {
+    assert_false(
+      rightNode.hasAttribute("data-foo"),
+      `The right node shouldn't have data-foo attribute (isConnected=${leftNode.isConnected}, ${t.name})`
+    );
+  });
+  assert_equals(
+    leftNode.isConnected ^ rightNode.isConnected,
+    1,
+    `One should stay in the document and the other should be disconnected (${utils.editingHost.innerHTML}, ${t.name})`
+  );
+}, "Joining <div data-foo=\"left\"> and <h3 data-bar=\"right\">");
+
+
+</script>
diff --git a/third_party/blink/web_tests/external/wpt/editing/other/selectall-without-focus.html b/third_party/blink/web_tests/external/wpt/editing/other/selectall-without-focus.html
index 0db01014..f75e930 100644
--- a/third_party/blink/web_tests/external/wpt/editing/other/selectall-without-focus.html
+++ b/third_party/blink/web_tests/external/wpt/editing/other/selectall-without-focus.html
@@ -11,6 +11,10 @@
   test(() => {
     document.head.remove();
     document.execCommand("selectAll");
+    assert_false(
+      getSelection().isCollapsed,
+      'Selection should not be collapsed after calling document.execCommand("selectAll")'
+    );
     const rangeText = getSelection().toString();
     assert_true(
       rangeText.includes("preceding text"),
diff --git a/third_party/blink/web_tests/external/wpt/fetch/api/basic/request-upload.any.js b/third_party/blink/web_tests/external/wpt/fetch/api/basic/request-upload.any.js
index 24f7c5b..9168aa1 100644
--- a/third_party/blink/web_tests/external/wpt/fetch/api/basic/request-upload.any.js
+++ b/third_party/blink/web_tests/external/wpt/fetch/api/basic/request-upload.any.js
@@ -9,6 +9,7 @@
     const body = createBody();
     if (body) {
       requestInit["body"] = body;
+      requestInit.duplex = "half";
     }
     return fetch(url, requestInit).then(function(resp) {
       return resp.text().then((text)=> {
diff --git a/third_party/blink/web_tests/external/wpt/fetch/api/basic/request-upload.h2.any.js b/third_party/blink/web_tests/external/wpt/fetch/api/basic/request-upload.h2.any.js
index 355a331c..70d11ec 100644
--- a/third_party/blink/web_tests/external/wpt/fetch/api/basic/request-upload.h2.any.js
+++ b/third_party/blink/web_tests/external/wpt/fetch/api/basic/request-upload.h2.any.js
@@ -9,6 +9,7 @@
     const body = createBody();
     if (body) {
       requestInit["body"] = body;
+      requestInit.duplex = "half";
     }
     const resp = await fetch(url, requestInit);
     const text = await resp.text();
diff --git a/third_party/blink/web_tests/external/wpt/fetch/api/request/request-init-stream.any.js b/third_party/blink/web_tests/external/wpt/fetch/api/request/request-init-stream.any.js
index 8c50c49..ac78a253 100644
--- a/third_party/blink/web_tests/external/wpt/fetch/api/request/request-init-stream.any.js
+++ b/third_party/blink/web_tests/external/wpt/fetch/api/request/request-init-stream.any.js
@@ -2,56 +2,146 @@
 
 "use strict";
 
+const duplex = "half";
+const method = "POST";
+
 test(() => {
-  const stream = new ReadableStream();
-  const request = new Request("...", { method:"POST", body: stream });
-  assert_equals(request.body, stream);
+  const body = new ReadableStream();
+  const request = new Request("...", { method, body, duplex });
+  assert_equals(request.body, body);
 }, "Constructing a Request with a stream holds the original object.");
 
-async function assert_request(test, input, init) {
-  assert_throws_js(TypeError, () => new Request(input, init), "new Request()");
-  await promise_rejects_js(test, TypeError, fetch(input, init), "fetch()");
-}
-
-promise_test(async (t) => {
-  const stream = new ReadableStream();
-  stream.getReader();
-  await assert_request(t, "...", { method:"POST", body: stream });
+test((t) => {
+  const body = new ReadableStream();
+  body.getReader();
+  assert_throws_js(TypeError,
+                   () => new Request("...", { method, body, duplex }));
 }, "Constructing a Request with a stream on which getReader() is called");
 
-promise_test(async (t) => {
-  const stream = new ReadableStream();
-  stream.getReader().read();
-  await assert_request(t, "...", { method:"POST", body: stream });
+test((t) => {
+  const body = new ReadableStream();
+  body.getReader().read();
+  assert_throws_js(TypeError,
+                   () => new Request("...", { method, body, duplex }));
 }, "Constructing a Request with a stream on which read() is called");
 
 promise_test(async (t) => {
-  const stream = new ReadableStream({ pull: c => c.enqueue(new Uint8Array()) }),
-        reader = stream.getReader();
+  const body = new ReadableStream({ pull: c => c.enqueue(new Uint8Array()) });
+  const reader = body.getReader();
   await reader.read();
   reader.releaseLock();
-  await assert_request(t, "...", { method:"POST", body: stream });
+  assert_throws_js(TypeError,
+                   () => new Request("...", { method, body, duplex }));
 }, "Constructing a Request with a stream on which read() and releaseLock() are called");
 
-promise_test(async (t) => {
+test((t) => {
   const request = new Request("...", { method: "POST", body: "..." });
   request.body.getReader();
-  await assert_request(t, request);
-  assert_class_string(new Request(request, { body: "..." }), "Request");
+  assert_throws_js(TypeError, () => new Request(request));
+  // This doesn't throw.
+  new Request(request, { body: "..." });
 }, "Constructing a Request with a Request on which body.getReader() is called");
 
-promise_test(async (t) => {
+test((t) => {
   const request = new Request("...", { method: "POST", body: "..." });
   request.body.getReader().read();
-  await assert_request(t, request);
-  assert_class_string(new Request(request, { body: "..." }), "Request");
+  assert_throws_js(TypeError, () => new Request(request));
+  // This doesn't throw.
+  new Request(request, { body: "..." });
 }, "Constructing a Request with a Request on which body.getReader().read() is called");
 
-promise_test(async (t) => {
-  const request = new Request("...", { method: "POST", body: "..." }),
-        reader = request.body.getReader();
+promsie_test((t) => {
+  const request = new Request("...", { method: "POST", body: "..." });
+  const reader = request.body.getReader();
   await reader.read();
   reader.releaseLock();
-  await assert_request(t, request);
-  assert_class_string(new Request(request, { body: "..." }), "Request");
+  assert_throws_js(TypeError, () => new Request(request));
+  // This doesn't throw.
+  new Request(request, { body: "..." });
 }, "Constructing a Request with a Request on which read() and releaseLock() are called");
+
+test((t) => {
+  new Request("...", { method, body: null });
+}, "It is OK to omit .duplex when the body is null.");
+
+test((t) => {
+  new Request("...", { method, body: "..." });
+}, "It is OK to omit .duplex when the body is a string.");
+
+test((t) => {
+  new Request("...", { method, body: new Uint8Array(3) });
+}, "It is OK to omit .duplex when the body is a Uint8Array.");
+
+test((t) => {
+  new Request("...", { method, body: new Blob([]) });
+}, "It is OK to omit .duplex when the body is a Blob.");
+
+test((t) => {
+  const body = new ReadableStream();
+  assert_throws_js(TypeError,
+                   () => new Request("...", { method, body }));
+}, "It is error to omit .duplex when the body is a ReadableStream.");
+
+test((t) => {
+  new Request("...", { method, body: null, duplex: "half" });
+}, "It is OK to set .duplex = 'half' when the body is null.");
+
+test((t) => {
+  new Request("...", { method, body: "...", duplex: "half" });
+}, "It is OK to set .duplex = 'half' when the body is a string.");
+
+test((t) => {
+  new Request("...", { method, body: new Uint8Array(3), duplex: "half" });
+}, "It is OK to set .duplex = 'half' when the body is a Uint8Array.");
+
+test((t) => {
+  new Request("...", { method, body: new Blob([]), duplex: "half" });
+}, "It is OK to set .duplex = 'half' when the body is a Blob.");
+
+test((t) => {
+  const body = new ReadableStream();
+  new Request("...", { method, body, duplex: "half" });
+}, "It is OK to set .duplex = 'half' when the body is a ReadableStream.");
+
+test((t) => {
+  const body = null;
+  const duplex = "full";
+  assert_throws_js(TypeError,
+                   () => new Request("...", { method, body, duplex }));
+}, "It is error to set .duplex = 'full' when the body is null.");
+
+test((t) => {
+  const body = "...";
+  const duplex = "full";
+  assert_throws_js(TypeError,
+                   () => new Request("...", { method, body, duplex }));
+}, "It is error to set .duplex = 'full' when the body is a string.");
+
+test((t) => {
+  const body = new Uint8Array(3);
+  const duplex = "full";
+  assert_throws_js(TypeError,
+                   () => new Request("...", { method, body, duplex }));
+}, "It is error to set .duplex = 'full' when the body is a Uint8Array.");
+
+test((t) => {
+  const body = new Blob([]);
+  const duplex = "full";
+  assert_throws_js(TypeError,
+                   () => new Request("...", { method, body, duplex }));
+}, "It is error to set .duplex = 'full' when the body is a Blob.");
+
+test((t) => {
+  const body = new ReadableStream();
+  const duplex = "full";
+  assert_throws_js(TypeError,
+                   () => new Request("...", { method, body, duplex }));
+}, "It is error to set .duplex = 'full' when the body is a ReadableStream.");
+
+test((t) => {
+  const body = new ReadableStream();
+  const duplex = "half";
+  const req1 = new Request("...", { method, body, duplex });
+  const req2 = new Request(req1);
+}, "It is OK to omit duplex when init.body is not given and input.body is given.");
+
diff --git a/third_party/blink/web_tests/external/wpt/webdriver/tests/support/fixtures_bidi.py b/third_party/blink/web_tests/external/wpt/webdriver/tests/support/fixtures_bidi.py
index 3bcebb9..8fe169d 100644
--- a/third_party/blink/web_tests/external/wpt/webdriver/tests/support/fixtures_bidi.py
+++ b/third_party/blink/web_tests/external/wpt/webdriver/tests/support/fixtures_bidi.py
@@ -6,20 +6,12 @@
 
 
 @pytest.fixture
-async def new_tab(bidi_session, current_session):
-    # Open and focus a new tab to run the test in a foreground tab.
-    context_id = current_session.new_window(type_hint="tab")
-    initial_window = current_session.window_handle
-    current_session.window_handle = context_id
-
-    # Retrieve the browsing context info for the new tab
-    contexts = await bidi_session.browsing_context.get_tree(root=context_id, max_depth=0)
-    yield contexts[0]
-
-    # Restore the focus and current window for the WebDriver session before
-    # closing the tab.
-    current_session.window_handle = initial_window
-    await bidi_session.browsing_context.close(context=contexts[0]["context"])
+async def new_tab(bidi_session):
+    """Open and focus a new tab to run the test in a foreground tab."""
+    new_tab = await bidi_session.browsing_context.create(type_hint='tab')
+    yield new_tab
+    # Close the tab.
+    await bidi_session.browsing_context.close(context=new_tab["context"])
 
 
 @pytest.fixture
diff --git a/third_party/blink/web_tests/flag-specific/disable-layout-ng/external/wpt/editing/other/cloning-attributes-at-splitting-element.tentative-expected.txt b/third_party/blink/web_tests/flag-specific/disable-layout-ng/external/wpt/editing/other/cloning-attributes-at-splitting-element.tentative-expected.txt
new file mode 100644
index 0000000..06a59a1
--- /dev/null
+++ b/third_party/blink/web_tests/flag-specific/disable-layout-ng/external/wpt/editing/other/cloning-attributes-at-splitting-element.tentative-expected.txt
@@ -0,0 +1,21 @@
+This is a testharness.js-based test.
+FAIL Splitting <div id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <li id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <li class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <li data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <h3 id="p"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <h3 class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <h3 data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dt id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dt class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dt data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dd id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dd class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dd data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div id="splittee-parent"> and <span id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div class="splittee-parent"> and <span class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div data-foo="1" data-bar="2"> and <span data-foo="3" data-bar="4"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/external/wpt/fetch/api/request/request-init-stream.any.sharedworker-expected.txt b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/external/wpt/fetch/api/request/request-init-stream.any.sharedworker-expected.txt
new file mode 100644
index 0000000..79949e23
--- /dev/null
+++ b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/external/wpt/fetch/api/request/request-init-stream.any.sharedworker-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+Harness Error. harness_status.status = 1 , harness_status.message = Uncaught SyntaxError: await is only valid in async functions and the top level bodies of modules
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/http/tests/inspector-protocol/network/initiator-minified.js b/third_party/blink/web_tests/http/tests/inspector-protocol/network/initiator-minified.js
index 444f96b..20de8f44 100644
--- a/third_party/blink/web_tests/http/tests/inspector-protocol/network/initiator-minified.js
+++ b/third_party/blink/web_tests/http/tests/inspector-protocol/network/initiator-minified.js
@@ -1,7 +1,7 @@
 (async function(testRunner) {
   const {page, session, dp} = await testRunner.startBlank(
     `Tests that the initiator position is correct even when that initiator is minified.`);
-
+  testRunner.startDumpingProtocolMessages();
   window.onerror = (msg) => testRunner.log('onerror: ' + msg);
   window.onunhandledrejection = (e) => testRunner.log('onunhandledrejection: ' + e.reason);
   let errorForLog = new Error();
diff --git a/third_party/blink/web_tests/images/resources/avif/README.md b/third_party/blink/web_tests/images/resources/avif/README.md
index ac31db1d..bcbdde32 100644
--- a/third_party/blink/web_tests/images/resources/avif/README.md
+++ b/third_party/blink/web_tests/images/resources/avif/README.md
@@ -123,4 +123,12 @@
 cavif ../../../fast/box-shadow/resources/green-alpha.png -o green-no-alpha-ispe.avif
 ```
 
+### red-unsupported-transfer.avif
+The 'colr' property in this file has an unsupported transfer function (11) in
+'nclx'. This is generated from red.png with the appropriate avifenc command
+line:
+```
+avifenc -r f -d 8 -y 420 -s 0 --nclx 1/11/1 red.png red-unsupported-transfer.avif
+```
+
 ### TODO(crbug.com/960620): Figure out how the rest of files were generated.
diff --git a/third_party/blink/web_tests/images/resources/avif/red-unsupported-transfer.avif b/third_party/blink/web_tests/images/resources/avif/red-unsupported-transfer.avif
new file mode 100644
index 0000000..45a8790
--- /dev/null
+++ b/third_party/blink/web_tests/images/resources/avif/red-unsupported-transfer.avif
Binary files differ
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/cloning-attributes-at-splitting-element.tentative-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/cloning-attributes-at-splitting-element.tentative-expected.txt
new file mode 100644
index 0000000..06a59a1
--- /dev/null
+++ b/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/cloning-attributes-at-splitting-element.tentative-expected.txt
@@ -0,0 +1,21 @@
+This is a testharness.js-based test.
+FAIL Splitting <div id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <li id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <li class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <li data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <h3 id="p"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <h3 class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <h3 data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dt id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dt class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dt data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dd id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dd class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <dd data-foo="1" data-bar="2"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div id="splittee-parent"> and <span id="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div class="splittee-parent"> and <span class="splittee"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Splitting <div data-foo="1" data-bar="2"> and <span data-foo="3" data-bar="4"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/keeping-attributes-at-joining-elements.tentative_method=backspace-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/keeping-attributes-at-joining-elements.tentative_method=backspace-expected.txt
new file mode 100644
index 0000000..a68367d
--- /dev/null
+++ b/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/keeping-attributes-at-joining-elements.tentative_method=backspace-expected.txt
@@ -0,0 +1,35 @@
+This is a testharness.js-based test.
+FAIL Joining <div id="left"> and <div id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div class="left"> and <div class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div style="font-size:0.8rem"> and <div style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div data-foo="left"> and <div data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <li id="left"> and <li id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <li class="left"> and <li class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <li style="font-size:0.8rem"> and <li style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <li data-foo="left"> and <li data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt id="left"> and <dt id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt class="left"> and <dt class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt style="font-size:0.8rem"> and <dt style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt data-foo="left"> and <dt data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd id="left"> and <dd id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd class="left"> and <dd class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd style="font-size:0.8rem"> and <dd style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd data-foo="left"> and <dd data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt id="left"> and <dd id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt class="left"> and <dd class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt style="font-size:0.8rem"> and <dd style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt data-foo="left"> and <dd data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd id="left"> and <dt id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd class="left"> and <dt class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd style="font-size:0.8rem"> and <dt style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd data-foo="left"> and <dt data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <h3 id="left"> and <div id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <h3 class="left"> and <div class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <h3 style="font-size:0.8rem"> and <div style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <h3 data-foo="left"> and <div data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div id="left"> and <h3 id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div class="left"> and <h3 class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div style="font-size:0.8rem"> and <h3 style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div data-foo="left"> and <h3 data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/keeping-attributes-at-joining-elements.tentative_method=forwarddelete-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/keeping-attributes-at-joining-elements.tentative_method=forwarddelete-expected.txt
new file mode 100644
index 0000000..a68367d
--- /dev/null
+++ b/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/keeping-attributes-at-joining-elements.tentative_method=forwarddelete-expected.txt
@@ -0,0 +1,35 @@
+This is a testharness.js-based test.
+FAIL Joining <div id="left"> and <div id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div class="left"> and <div class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div style="font-size:0.8rem"> and <div style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div data-foo="left"> and <div data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <li id="left"> and <li id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <li class="left"> and <li class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <li style="font-size:0.8rem"> and <li style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <li data-foo="left"> and <li data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt id="left"> and <dt id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt class="left"> and <dt class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt style="font-size:0.8rem"> and <dt style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt data-foo="left"> and <dt data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd id="left"> and <dd id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd class="left"> and <dd class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd style="font-size:0.8rem"> and <dd style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd data-foo="left"> and <dd data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt id="left"> and <dd id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt class="left"> and <dd class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt style="font-size:0.8rem"> and <dd style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dt data-foo="left"> and <dd data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd id="left"> and <dt id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd class="left"> and <dt class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd style="font-size:0.8rem"> and <dt style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <dd data-foo="left"> and <dt data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <h3 id="left"> and <div id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <h3 class="left"> and <div class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <h3 style="font-size:0.8rem"> and <div style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <h3 data-foo="left"> and <div data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div id="left"> and <h3 id="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div class="left"> and <h3 class="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div style="font-size:0.8rem"> and <h3 style="font-weight:bold"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+FAIL Joining <div data-foo="left"> and <h3 data-bar="right"> promise_test: Unhandled rejection with value: object "Error: we do not support keydown and keyup actions, please use test_driver.send_keys"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/selectall-without-focus-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/selectall-without-focus-expected.txt
index 7f598c26..b4c1aa9 100644
--- a/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/selectall-without-focus-expected.txt
+++ b/third_party/blink/web_tests/platform/generic/external/wpt/editing/other/selectall-without-focus-expected.txt
@@ -1,4 +1,4 @@
 This is a testharness.js-based test.
-FAIL execCommand('selectAll') should select all content in the document even if the document body ends with editable content assert_true: Selection should contain the preceding text of the editing host expected true got false
+FAIL execCommand('selectAll') should select all content in the document even if the document body ends with editable content assert_false: Selection should not be collapsed after calling document.execCommand("selectAll") expected false got true
 Harness: the test ran to completion.
 
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any-expected.txt
new file mode 100644
index 0000000..79949e23
--- /dev/null
+++ b/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+Harness Error. harness_status.status = 1 , harness_status.message = Uncaught SyntaxError: await is only valid in async functions and the top level bodies of modules
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any.serviceworker-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any.serviceworker-expected.txt
new file mode 100644
index 0000000..83aaeca
--- /dev/null
+++ b/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any.serviceworker-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+Harness Error. harness_status.status = 1 , harness_status.message = Unhandled rejection: Failed to register a ServiceWorker for scope ('https://web-platform.test:8444/fetch/api/request/does/not/exist') with script ('https://web-platform.test:8444/fetch/api/request/request-init-stream.any.worker.js'): ServiceWorker script evaluation failed
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any.sharedworker-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any.sharedworker-expected.txt
new file mode 100644
index 0000000..79949e23
--- /dev/null
+++ b/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any.sharedworker-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+Harness Error. harness_status.status = 1 , harness_status.message = Uncaught SyntaxError: await is only valid in async functions and the top level bodies of modules
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any.worker-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any.worker-expected.txt
new file mode 100644
index 0000000..79949e23
--- /dev/null
+++ b/third_party/blink/web_tests/platform/generic/external/wpt/fetch/api/request/request-init-stream.any.worker-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+Harness Error. harness_status.status = 1 , harness_status.message = Uncaught SyntaxError: await is only valid in async functions and the top level bodies of modules
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/platform/generic/http/tests/devtools/elements/iframe-load-event-expected.txt b/third_party/blink/web_tests/platform/generic/http/tests/devtools/elements/iframe-load-event-expected.txt
index f907cb9..f338ff6 100644
--- a/third_party/blink/web_tests/platform/generic/http/tests/devtools/elements/iframe-load-event-expected.txt
+++ b/third_party/blink/web_tests/platform/generic/http/tests/devtools/elements/iframe-load-event-expected.txt
@@ -14,6 +14,7 @@
                       <head></head>
                     - <body>
                           <div id="iframe-2-element"></div>
+                          #top-layer
                       </body>
                   </html>
           </iframe>
diff --git a/third_party/blink/web_tests/platform/generic/virtual/plz-dedicated-worker/external/wpt/fetch/api/request/request-init-stream.any.serviceworker-expected.txt b/third_party/blink/web_tests/platform/generic/virtual/plz-dedicated-worker/external/wpt/fetch/api/request/request-init-stream.any.serviceworker-expected.txt
new file mode 100644
index 0000000..83aaeca
--- /dev/null
+++ b/third_party/blink/web_tests/platform/generic/virtual/plz-dedicated-worker/external/wpt/fetch/api/request/request-init-stream.any.serviceworker-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+Harness Error. harness_status.status = 1 , harness_status.message = Unhandled rejection: Failed to register a ServiceWorker for scope ('https://web-platform.test:8444/fetch/api/request/does/not/exist') with script ('https://web-platform.test:8444/fetch/api/request/request-init-stream.any.worker.js'): ServiceWorker script evaluation failed
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/platform/mac-mac11/external/wpt/resource-timing/nested-context-navigations-object-expected.txt b/third_party/blink/web_tests/platform/mac-mac11/external/wpt/resource-timing/nested-context-navigations-object-expected.txt
new file mode 100644
index 0000000..d79a79c8
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac11/external/wpt/resource-timing/nested-context-navigations-object-expected.txt
@@ -0,0 +1,12 @@
+This is a testharness.js-based test.
+FAIL Test that object navigations are not observable by the parent, even after history navigations by the parent promise_test: Unhandled rejection with value: "FAIL - first document not exposed. navigated_back is undefined"
+PASS Test that crossorigin object navigations are not observable by the parent, even after history navigations by the parent
+PASS Test that cross-site object navigations are not observable by the parent, even after history navigations by the parent
+PASS Test that object navigations are not observable by the parent
+PASS Test that crossorigin object navigations are not observable by the parent
+PASS Test that cross-site object navigations are not observable by the parent
+PASS Test that object refreshes are not observable by the parent
+PASS Test that crossorigin object refreshes are not observable by the parent
+PASS Test that cross-site object refreshes are not observable by the parent
+Harness: the test ran to completion.
+
diff --git a/third_party/freetype/README.chromium b/third_party/freetype/README.chromium
index 3f1c7d5f..e6d9520 100644
--- a/third_party/freetype/README.chromium
+++ b/third_party/freetype/README.chromium
@@ -1,7 +1,7 @@
 Name: FreeType
 URL: http://www.freetype.org/
-Version: VER-2-12-1-36-g2db58e061
-Revision: 2db58e061ecc0d738a41d13ed8908e967bd0014c
+Version: VER-2-12-1-41-gbec4ef415
+Revision: bec4ef415ef07ad1fa9542978136d9863dd7a6d0
 CPEPrefix: cpe:/a:freetype:freetype:2.11.1
 License: Custom license "inspired by the BSD, Artistic, and IJG (Independent
          JPEG Group) licenses"
diff --git a/third_party/protobuf/patches/0031-workaround-cfi-unrelated-cast.patch b/third_party/protobuf/patches/0031-workaround-cfi-unrelated-cast.patch
index 9f7f337..8d9aaa4 100644
--- a/third_party/protobuf/patches/0031-workaround-cfi-unrelated-cast.patch
+++ b/third_party/protobuf/patches/0031-workaround-cfi-unrelated-cast.patch
@@ -40,7 +40,7 @@
 +#if __has_attribute(no_sanitize)
 +#define PROTOBUF_NO_SANITIZE(...) __attribute__((no_sanitize(__VA_ARGS__)))
 +#else
-+#define PROTOBUF_NO_SANITIZE
++#define PROTOBUF_NO_SANITIZE(...)
 +#endif
 +
  // ThreadSafeArenaz is turned off completely in opensource builds.
diff --git a/third_party/protobuf/src/google/protobuf/port_def.inc b/third_party/protobuf/src/google/protobuf/port_def.inc
index 684b700..c0b76ff 100644
--- a/third_party/protobuf/src/google/protobuf/port_def.inc
+++ b/third_party/protobuf/src/google/protobuf/port_def.inc
@@ -767,7 +767,7 @@
 #if __has_attribute(no_sanitize)
 #define PROTOBUF_NO_SANITIZE(...) __attribute__((no_sanitize(__VA_ARGS__)))
 #else
-#define PROTOBUF_NO_SANITIZE
+#define PROTOBUF_NO_SANITIZE(...)
 #endif
 
 // ThreadSafeArenaz is turned off completely in opensource builds.
diff --git a/tools/crates/gnrt/crates.rs b/tools/crates/gnrt/crates.rs
index 6712a45..1237695 100644
--- a/tools/crates/gnrt/crates.rs
+++ b/tools/crates/gnrt/crates.rs
@@ -181,10 +181,11 @@
 }
 
 /// Traverse vendored third-party crates and collect the set of names and
-/// epochs. The returned list is in unspecified order.
+/// epochs. Each `ThirdPartyCrate` entry is paired with the package metadata
+/// from its manifest. The returned list is in unspecified order.
 pub fn collect_third_party_crates<P: AsRef<Path>>(
     crates_path: P,
-) -> io::Result<Vec<ThirdPartyCrate>> {
+) -> io::Result<Vec<(ThirdPartyCrate, manifest::CargoPackage)>> {
     let mut crates = Vec::new();
 
     for crate_dir in fs::read_dir(crates_path)? {
@@ -238,9 +239,9 @@
                 },
             };
             let manifest: manifest::CargoManifest = toml::de::from_str(&manifest_contents).unwrap();
-            let package_name = manifest.package.name;
+            let package_name = manifest.package.name.clone();
 
-            crates.push(ThirdPartyCrate { name: package_name, epoch });
+            crates.push((ThirdPartyCrate { name: package_name, epoch }, manifest.package));
         }
     }
 
diff --git a/tools/crates/gnrt/main.rs b/tools/crates/gnrt/main.rs
index a50a38a..2ba4da7 100644
--- a/tools/crates/gnrt/main.rs
+++ b/tools/crates/gnrt/main.rs
@@ -32,12 +32,12 @@
     // `cargo metadata`'s dependency resolution to ensure we have all the crates
     // we need. We sort `crates` for a stable ordering of [patch] sections.
     let mut crates = crates::collect_third_party_crates(paths.third_party.clone()).unwrap();
-    crates.sort();
+    crates.sort_unstable_by(|a, b| a.0.cmp(&b.0));
 
     // Generate a fake Cargo.toml for dependency resolution.
     let cargo_manifest = generate_fake_cargo_toml(
         third_party_manifest,
-        crates.iter().map(|c| {
+        crates.iter().map(|(c, _)| {
             let crate_path = paths.third_party.join(c.crate_path()).canonicalize().unwrap();
             manifest::PatchSpecification {
                 package_name: c.name.clone(),
@@ -76,7 +76,7 @@
     let dependencies = deps::collect_dependencies(&command.exec().unwrap());
 
     // Compare cargo's dependency resolution with the crates we have on disk.
-    let present_crates: HashSet<&ThirdPartyCrate> = crates.iter().collect();
+    let present_crates: HashSet<&ThirdPartyCrate> = crates.iter().map(|(c, _)| c).collect();
     let mut unused_crates: HashSet<&ThirdPartyCrate> = present_crates.clone();
     let mut missing_deps: Vec<&deps::ThirdPartyDep> = Vec::new();
     for dep in dependencies.iter() {
diff --git a/tools/crates/gnrt/manifest.rs b/tools/crates/gnrt/manifest.rs
index bc39f10..de69599 100644
--- a/tools/crates/gnrt/manifest.rs
+++ b/tools/crates/gnrt/manifest.rs
@@ -115,16 +115,20 @@
     pub patches: BTreeMap<String, CargoPatchSet>,
 }
 
-#[derive(Clone, Debug, Deserialize, Serialize)]
+#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
 #[serde(rename_all = "kebab-case")]
 pub struct CargoPackage {
     pub name: String,
     pub version: Version,
+    #[serde(default, skip_serializing_if = "Vec::is_empty")]
+    pub authors: Vec<String>,
     #[serde(default)]
     pub edition: Edition,
+    #[serde(default, skip_serializing_if = "Option::is_none")]
+    pub description: Option<String>,
 }
 
-#[derive(Clone, Debug, Deserialize, Serialize)]
+#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
 #[serde(transparent)]
 pub struct Edition(pub String);
 
@@ -190,7 +194,9 @@
     let package = CargoPackage {
         name: "chromium".to_string(),
         version: Version::new(0, 1, 0),
+        authors: Vec::new(),
         edition: Default::default(),
+        description: None,
     };
 
     CargoManifest {
diff --git a/tools/crates/gnrt/manifest_unittest.rs b/tools/crates/gnrt/manifest_unittest.rs
index 45b2fa2c..5aa59f0 100644
--- a/tools/crates/gnrt/manifest_unittest.rs
+++ b/tools/crates/gnrt/manifest_unittest.rs
@@ -101,7 +101,9 @@
         package: CargoPackage {
             name: "chromium".to_string(),
             version: Version::new(0, 1, 0),
+            authors: Vec::new(),
             edition: Default::default(),
+            description: None,
         },
         workspace: None,
         dependency_spec: DependencySpec {
@@ -137,3 +139,28 @@
 "
     )
 }
+
+#[gtest(ManifestTest, PackageManifest)]
+fn test() {
+    let manifest: CargoManifest = toml::de::from_str(concat!(
+        "[package]
+name = \"foo\"
+version = \"1.2.3\"
+authors = [\"alice@foo.com\", \"bob@foo.com\"]
+edition = \"2021\"
+description = \"A library to foo the bars\"
+"
+    ))
+    .unwrap();
+
+    expect_eq!(
+        manifest.package,
+        CargoPackage {
+            name: "foo".to_string(),
+            version: Version::new(1, 2, 3),
+            authors: vec!["alice@foo.com".to_string(), "bob@foo.com".to_string()],
+            edition: Edition("2021".to_string()),
+            description: Some("A library to foo the bars".to_string()),
+        }
+    )
+}
diff --git a/tools/metrics/histograms/enums.xml b/tools/metrics/histograms/enums.xml
index d5eec97..65baed32 100644
--- a/tools/metrics/histograms/enums.xml
+++ b/tools/metrics/histograms/enums.xml
@@ -55206,6 +55206,7 @@
       label="HappinessTrackingSurveysForDesktopPrivacySandbox:enabled"/>
   <int value="-2033225430" label="NTPMostLikelyFaviconsFromServer:disabled"/>
   <int value="-2033136855" label="MessagesForAndroidPasswords:disabled"/>
+  <int value="-2032940137" label="VariableCOLRV1:enabled"/>
   <int value="-2032013236"
       label="AutofillEnforceDelaysInStrikeDatabase:disabled"/>
   <int value="-2030255112" label="Bruschetta:disabled"/>
@@ -55822,6 +55823,8 @@
       label="RTCDisallowPlanBOutsideDeprecationTrial:disabled"/>
   <int value="-1641384018" label="SideSearchClearCacheWhenClosed:enabled"/>
   <int value="-1640944841" label="HardwareSecureDecryption:disabled"/>
+  <int value="-1639631778"
+      label="EnableWebHidOnExtensionServiceWorker:enabled"/>
   <int value="-1639534120" label="VaapiVp9kSVCHWEncoding:enabled"/>
   <int value="-1639050182" label="NavigationPredictorRendererWarmup:enabled"/>
   <int value="-1638815914" label="enable-experimental-productivity-features"/>
@@ -56193,6 +56196,8 @@
   <int value="-1420848224" label="WebViewForceDarkModeMatchTheme:enabled"/>
   <int value="-1420542268" label="AutofillEnableAccountWalletStorage:disabled"/>
   <int value="-1420478723" label="EapGtcWifiAuthentication:enabled"/>
+  <int value="-1419908365"
+      label="EnableWebHidOnExtensionServiceWorker:disabled"/>
   <int value="-1419788257" label="enable-experimental-hotwording"/>
   <int value="-1419449681" label="PermissionChipRequestTypeSensitive:enabled"/>
   <int value="-1418200801" label="LauncherLacrosIntegration:enabled"/>
@@ -57322,6 +57327,7 @@
   <int value="-711991950" label="SiteExplorationUi:enabled"/>
   <int value="-711890895" label="enable-website-settings-manager"/>
   <int value="-711422585" label="kSignInProfileCreationEnterprise:disabled"/>
+  <int value="-710519788" label="VariableCOLRV1:disabled"/>
   <int value="-709058455" label="ui-slow-animations"/>
   <int value="-707407907" label="ScanAppMediaLink:enabled"/>
   <int value="-706733351" label="enable-floating-virtual-keyboard:enabled"/>
@@ -73804,6 +73810,7 @@
   <int value="6" label="Show password"/>
   <int value="7" label="Mute password"/>
   <int value="8" label="Unmute password"/>
+  <int value="9" label="Change password automatically"/>
 </enum>
 
 <enum name="PasswordCheckReferrer">
@@ -96706,16 +96713,6 @@
   </int>
 </enum>
 
-<enum name="V8CagedMemoryAllocationOutcome">
-  <int value="0" label="kSuccess">Allocation succeeded inside the cage.</int>
-  <int value="1" label="kOutsideCage">
-    Allocation failed inside the cage but succeeded outside of it.
-  </int>
-  <int value="2" label="kFailure">
-    Allocation failed inside and outside of the cage.
-  </int>
-</enum>
-
 <enum name="V8CodeCacheRejectReason">
   <int value="1" label="MAGIC_NUMBER_MISMATCH">
     Reject due to magic number mismatch
diff --git a/tools/metrics/histograms/metadata/v8/histograms.xml b/tools/metrics/histograms/metadata/v8/histograms.xml
index 2a48369b..79bffe02 100644
--- a/tools/metrics/histograms/metadata/v8/histograms.xml
+++ b/tools/metrics/histograms/metadata/v8/histograms.xml
@@ -41,17 +41,6 @@
   <summary>Array buffer sizes for which V8 failed to allocate memory.</summary>
 </histogram>
 
-<histogram name="V8.CagedMemoryAllocationOutcome"
-    enum="V8CagedMemoryAllocationOutcome" expires_after="2022-12-04">
-  <owner>saelo@chromium.org</owner>
-  <owner>ishell@chromium.org</owner>
-  <summary>
-    The outcome of attempts to allocate memory pages inside the virtual memory
-    cage. Recorded at each allocation attempt, such as when allocating WASM
-    memory buffers, but only if the virtual memory cage is active.
-  </summary>
-</histogram>
-
 <histogram name="V8.CodeCacheRejectReason" enum="V8CodeCacheRejectReason"
     expires_after="M77">
   <owner>yangguo@chromium.org</owner>
diff --git a/tools/perf/core/perfetto_binary_roller/binary_deps.json b/tools/perf/core/perfetto_binary_roller/binary_deps.json
index 002e9d9..bfc2a159f 100644
--- a/tools/perf/core/perfetto_binary_roller/binary_deps.json
+++ b/tools/perf/core/perfetto_binary_roller/binary_deps.json
@@ -5,24 +5,24 @@
             "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/linux_arm64/49b4b5dcbc312d8d2c3751cf29238b8efeb4e494/trace_processor_shell"
         },
         "win": {
-            "hash": "f60387aa15d5811d6ed7e87be7f219d6bad07cac",
-            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/win/7bcfdf24e8e973d85a646811ddd6751e8dc8f543/trace_processor_shell.exe"
+            "hash": "4d710b8a4c4e9507a55721551e1fa3f80eb4f61f",
+            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/win/3a4f21146fc825313f1dfe81638477f9d3d433cd/trace_processor_shell.exe"
         },
         "linux_arm": {
             "hash": "58893933be305d3bfe0a72ebebcacde2ac3ca893",
             "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/linux_arm/49b4b5dcbc312d8d2c3751cf29238b8efeb4e494/trace_processor_shell"
         },
         "mac": {
-            "hash": "eddbde66f639857ce165158791dcda39985da64d",
-            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/mac/7bcfdf24e8e973d85a646811ddd6751e8dc8f543/trace_processor_shell"
+            "hash": "247c890ff8ac22d4bb4b2a1597b95fc57ab05461",
+            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/mac/659ec76603a48c1c95c35ad4843314cd735a5216/trace_processor_shell"
         },
         "mac_arm64": {
             "hash": "e1ad4861384b06d911a65f035317914b8cc975c6",
             "full_remote_path": "perfetto-luci-artifacts/v25.0/mac-arm64/trace_processor_shell"
         },
         "linux": {
-            "hash": "009194c96975079693b010e48a8604f18eeb7a5a",
-            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/linux/7bcfdf24e8e973d85a646811ddd6751e8dc8f543/trace_processor_shell"
+            "hash": "095289b461ad5dca4860e9c3cb728a060be94d34",
+            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/linux/3a4f21146fc825313f1dfe81638477f9d3d433cd/trace_processor_shell"
         }
     },
     "power_profile.sql": {
diff --git a/ui/chromeos/translations/ui_chromeos_strings_as.xtb b/ui/chromeos/translations/ui_chromeos_strings_as.xtb
index a65933f..0c2cf2e 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_as.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_as.xtb
@@ -769,6 +769,7 @@
 <translation id="7663224033570512922">হিন্দী</translation>
 <translation id="7693909743393669729">এটা ড্ৰাইভ ফৰ্মেট কৰা কাৰ্যই ড্ৰাইভটোত ষ্ট'ৰ কৰি ৰখা সকলো ডেটা মচিব আৰু দৃশ্যমান নহ'ব পৰা বিভাজনসমূহকে ধৰি পূৰ্বৰে পৰা থকা সকলো বিভাজন আঁতৰাব। এই কাৰ্যটো আনডু কৰিব নোৱাৰি।</translation>
 <translation id="7695430100978772476"><ph name="DRIVE_NAME" /> ফৰ্মেট কৰিব পৰা নগ’ল</translation>
+<translation id="76959938259365003">ট্ৰেশ্ব খালী কৰিব পৰা নগ’ল।</translation>
 <translation id="770015031906360009">গ্ৰীক</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" />ৰ প্ৰতিলিপি কৰা হ’ল।</translation>
 <translation id="7711920809702896782">প্ৰতিচ্ছবিৰ তথ্য</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_be.xtb b/ui/chromeos/translations/ui_chromeos_strings_be.xtb
index 7d3e3252..46d2e78e 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_be.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_be.xtb
@@ -769,6 +769,7 @@
 <translation id="7663224033570512922">Хіндзі</translation>
 <translation id="7693909743393669729">Фармаціраванне дыска прывядзе да сцірання ўсіх захаваных на ім даных і выдалення ўсіх наяўных раздзелаў, у тым ліку нябачных. Гэта дзеянне немагчыма адрабіць.</translation>
 <translation id="7695430100978772476">Не ўдалося адфармаціраваць дыск "<ph name="DRIVE_NAME" />"</translation>
+<translation id="76959938259365003">Не ўдалося ачысціць сметніцу.</translation>
 <translation id="770015031906360009">Грэчаская</translation>
 <translation id="7705251383879779343">Элемент "<ph name="FILE_NAME" />" скапіраваны.</translation>
 <translation id="7711920809702896782">Звесткі пра відарыс</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_bg.xtb b/ui/chromeos/translations/ui_chromeos_strings_bg.xtb
index 8d83a85e..c770be2 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_bg.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_bg.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">Хинди</translation>
 <translation id="7693909743393669729">При форматирането на устройство ще бъдат изтрити всички съхранявани на него данни и всички негови дялове, включително тези, които не са видими. Това действие не може да бъде отменено.</translation>
 <translation id="7695430100978772476">Устройството „<ph name="DRIVE_NAME" />“ не бе форматирано</translation>
+<translation id="76959938259365003">Кошчето не бе изпразнено.</translation>
 <translation id="770015031906360009">гръцки</translation>
 <translation id="7705251383879779343">Копирахте „<ph name="FILE_NAME" />“.</translation>
 <translation id="7711920809702896782">Информация за изображението</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ca.xtb b/ui/chromeos/translations/ui_chromeos_strings_ca.xtb
index 394e578..76383ca 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_ca.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_ca.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">Hindi</translation>
 <translation id="7693909743393669729">En formatar una unitat, se n'esborren totes les dades que s'hi hagin emmagatzemat i se'n suprimeixen totes les particions existents, incloses algunes que potser no es veuen. Aquesta acció no es pot desfer.</translation>
 <translation id="7695430100978772476">No s'ha pogut formatar <ph name="DRIVE_NAME" /></translation>
+<translation id="76959938259365003">No s'ha pogut buidar la paperera.</translation>
 <translation id="770015031906360009">Grec</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> s'ha copiat.</translation>
 <translation id="7711920809702896782">Informació de la imatge</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_es-419.xtb b/ui/chromeos/translations/ui_chromeos_strings_es-419.xtb
index bf9c464..cd9b1da3 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_es-419.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_es-419.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">Hindi</translation>
 <translation id="7693909743393669729">Si formateas una unidad, se borrarán todos los datos almacenados allí y se eliminarán todas las particiones existentes, incluidas las que no están visibles. No se puede deshacer esta acción.</translation>
 <translation id="7695430100978772476">No se pudo formatear <ph name="DRIVE_NAME" /></translation>
+<translation id="76959938259365003">No se pudo vaciar la papelera.</translation>
 <translation id="770015031906360009">Griego</translation>
 <translation id="7705251383879779343">Se copió <ph name="FILE_NAME" />.</translation>
 <translation id="7711920809702896782">Información de la imagen</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_fa.xtb b/ui/chromeos/translations/ui_chromeos_strings_fa.xtb
index c938d07..22ad7d1 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_fa.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_fa.xtb
@@ -281,7 +281,7 @@
 <translation id="3466147780910026086">در حال اسکن دستگاه رسانه شما...</translation>
 <translation id="3468522857997926824">‏<ph name="FILE_COUNT" /> عکس در <ph name="BEGIN_LINK" />Google Drive<ph name="END_LINK" /> پشتیبان گرفته شدند</translation>
 <translation id="3475447146579922140">‏صفحه‌گسترده Google</translation>
-<translation id="3479552764303398839">اکنون نه</translation>
+<translation id="3479552764303398839">حالا نه</translation>
 <translation id="3486821258960016770">مغولی</translation>
 <translation id="3495304270784461826"><ph name="COUNT" /> خطا.</translation>
 <translation id="3509680540198371098">شبکه <ph name="NETWORK_INDEX" /> از <ph name="NETWORK_COUNT" />، <ph name="NETWORK_NAME" />، <ph name="SECURITY_STATUS" />، <ph name="CONNECTION_STATUS" />، قدرت سیگنال <ph name="SIGNAL_STRENGTH" />٪، جزئیات</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_fi.xtb b/ui/chromeos/translations/ui_chromeos_strings_fi.xtb
index 91d2fa1..60a46824 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_fi.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_fi.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">hindi</translation>
 <translation id="7693909743393669729">Aseman alustaminen poistaa kaiken sille tallennetun datan sekä kaikki osiot, myös näkymättömät sellaiset. Tätä toimintoa ei voi kumota.</translation>
 <translation id="7695430100978772476">Ei voitu alustaa: <ph name="DRIVE_NAME" /></translation>
+<translation id="76959938259365003">Roskakorin tyhjentäminen epäonnistui.</translation>
 <translation id="770015031906360009">kreikka</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> kopioitu.</translation>
 <translation id="7711920809702896782">Kuvan tiedot</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_fr-CA.xtb b/ui/chromeos/translations/ui_chromeos_strings_fr-CA.xtb
index 4da45b09..ed83a2d4 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_fr-CA.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_fr-CA.xtb
@@ -772,6 +772,7 @@
 <translation id="7663224033570512922">Hindi</translation>
 <translation id="7693909743393669729">Le formatage d'un disque entraîne la suppression de toutes les données qu'il contient et de toutes ses partitions, y compris les partitions invisibles. Cette action est irréversible.</translation>
 <translation id="7695430100978772476">Impossible de formater <ph name="DRIVE_NAME" /></translation>
+<translation id="76959938259365003">Impossible de vider la corbeille.</translation>
 <translation id="770015031906360009">Grec</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> copié.</translation>
 <translation id="7711920809702896782">Renseignements sur le fichier image</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_fr.xtb b/ui/chromeos/translations/ui_chromeos_strings_fr.xtb
index 3df35b3..0d03dd6 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_fr.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_fr.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">Hindi</translation>
 <translation id="7693909743393669729">Le formatage d'un disque entraîne la suppression de toutes les données qu'il contient et de toutes ses partitions, y compris les partitions invisibles. Cette action est irréversible.</translation>
 <translation id="7695430100978772476">Impossible de formater <ph name="DRIVE_NAME" /></translation>
+<translation id="76959938259365003">Échec du vidage de la corbeille.</translation>
 <translation id="770015031906360009">Grec</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> copié.</translation>
 <translation id="7711920809702896782">Informations sur les fichiers image</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_hi.xtb b/ui/chromeos/translations/ui_chromeos_strings_hi.xtb
index 58d29aa..abc700f7 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_hi.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_hi.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">हिन्दी</translation>
 <translation id="7693909743393669729">ड्राइव को फ़ॉर्मैट करने से, उस पर सेव सभी डेटा मिट जाएगा और सारे मौजूदा पार्टीशन हट जाएंगे. इनमें वे पार्टीशन भी शामिल होंगे जो शायद दिख न रहे हों. मिटने के बाद यह सब वापस नहीं पाया जा सकता.</translation>
 <translation id="7695430100978772476"><ph name="DRIVE_NAME" /> को फ़ॉर्मैट नहीं किया जा सका</translation>
+<translation id="76959938259365003">ट्रैश खाली नहीं किया जा सका.</translation>
 <translation id="770015031906360009">ग्रीक</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> को कॉपी किया गया.</translation>
 <translation id="7711920809702896782">इमेज की जानकारी</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_hy.xtb b/ui/chromeos/translations/ui_chromeos_strings_hy.xtb
index bffef391..17b8c4f 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_hy.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_hy.xtb
@@ -770,6 +770,7 @@
 <translation id="7663224033570512922">հինդի</translation>
 <translation id="7693909743393669729">Եթե կրիչը ֆորմատավորեք, դրա վրա պահված բոլոր տվյալներն ու բաժինները (այդ թվում՝ անտեսանելի) կջնջվեն։ Գործողությունը հնարավոր չէ հետարկել։</translation>
 <translation id="7695430100978772476">Չհաջողվեց ձևաչափել «<ph name="DRIVE_NAME" />» կրիչը</translation>
+<translation id="76959938259365003">Չհաջողվեց դատարկել աղբարկղը։</translation>
 <translation id="770015031906360009">Հունական</translation>
 <translation id="7705251383879779343">Պատճենվեց <ph name="FILE_NAME" /> տարր։</translation>
 <translation id="7711920809702896782">Տեղեկություններ պատկերի մասին</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_iw.xtb b/ui/chromeos/translations/ui_chromeos_strings_iw.xtb
index cfa4d5c2..e2cd25ca 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_iw.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_iw.xtb
@@ -772,6 +772,7 @@
 <translation id="7663224033570512922">הינדית</translation>
 <translation id="7693909743393669729">פירמוט של התקן אחסון ימחק את כל הנתונים המאוחסנים בו ויסיר את כל המחיצות הקיימות, כולל מחיצות שאינן גלויות. לא ניתן לבטל פעולה זו.</translation>
 <translation id="7695430100978772476">לא ניתן לפרמט את <ph name="DRIVE_NAME" /></translation>
+<translation id="76959938259365003">ריקון האשפה נכשל.</translation>
 <translation id="770015031906360009">יוונית</translation>
 <translation id="7705251383879779343">ההעתקה של <ph name="FILE_NAME" /> הסתיימה.</translation>
 <translation id="7711920809702896782">פרטי התמונה</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_kk.xtb b/ui/chromeos/translations/ui_chromeos_strings_kk.xtb
index f999c5d..d6e092d 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_kk.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_kk.xtb
@@ -341,6 +341,7 @@
 <translation id="3971140002794351170">Мобильдік профильді жүктеп алу, <ph name="NETWORK_INDEX" />/<ph name="NETWORK_COUNT" /> желі, <ph name="NETWORK_PROVIDER_NAME" /> провайдерінің <ph name="NETWORK_NAME" /> желісі</translation>
 <translation id="3973925058222872294">Ағылшын (БK)</translation>
 <translation id="3975895378829046965">Бенгал (фонетикалық)</translation>
+<translation id="3991446849494482687">Құрылғыдағы SIM картасын құлыптау параметрі де өшіріледі.</translation>
 <translation id="4002066346123236978">Тақырып</translation>
 <translation id="4017788180641807848">Ағылшын (АҚШ), Workman пернетақтасымен</translation>
 <translation id="4040753847560036377">PUK коды дұрыс емес.</translation>
@@ -769,6 +770,7 @@
 <translation id="7663224033570512922">Хинди</translation>
 <translation id="7693909743393669729">Дискіні форматтасаңыз, онда сақталған деректердің барлығы өшіп қалады және қолданыстағы бөлімдердің барлығы (оның ішінде көрінбейтін бөлімдер) жойылып кетеді. Бұл әрекетті кері қайтару мүмкін емес.</translation>
 <translation id="7695430100978772476"><ph name="DRIVE_NAME" /> форматталмады.</translation>
+<translation id="76959938259365003">Себетті босату мүмкін болмады.</translation>
 <translation id="770015031906360009">грек</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> көшірілді.</translation>
 <translation id="7711920809702896782">Сурет ақпараты</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ky.xtb b/ui/chromeos/translations/ui_chromeos_strings_ky.xtb
index 0cefac4..f150c17 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_ky.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_ky.xtb
@@ -770,6 +770,7 @@
 <translation id="7663224033570512922">Хиндиче</translation>
 <translation id="7693909743393669729">Дискти форматтасаңыз, анда сакталган бардык маалымат тазаланып, көзгө көрүнбөгөн бөлүмдөрдөн бери өчүрүлөт. Бул аракетти артка кайтаруу мүмкүн эмес.</translation>
 <translation id="7695430100978772476"><ph name="DRIVE_NAME" /> форматталган жок</translation>
+<translation id="76959938259365003">Таштанды бошотулган жок.</translation>
 <translation id="770015031906360009">Грекче</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> көчүрүлдү.</translation>
 <translation id="7711920809702896782">Сүрөт тууралуу маалымат</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_lv.xtb b/ui/chromeos/translations/ui_chromeos_strings_lv.xtb
index 8549382..e1557a8 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_lv.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_lv.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">Hindi</translation>
 <translation id="7693909743393669729">Formatējot disku, tiks dzēsti visi tajā glabātie dati un tiks noņemti visi esošie nodalījumi, tostarp tie, kas nav redzami. Šo darbību nevar atsaukt.</translation>
 <translation id="7695430100978772476">Nevarēja formatēt disku “<ph name="DRIVE_NAME" />”.</translation>
+<translation id="76959938259365003">Neizdevās iztukšot atkritni.</translation>
 <translation id="770015031906360009">Grieķu valoda</translation>
 <translation id="7705251383879779343">Nokopēts vienums: <ph name="FILE_NAME" />.</translation>
 <translation id="7711920809702896782">Attēla informācija</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_mr.xtb b/ui/chromeos/translations/ui_chromeos_strings_mr.xtb
index 614e6d0..bdc4026b 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_mr.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_mr.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">हिंदी</translation>
 <translation id="7693909743393669729">ड्राइव्ह फॉरमॅट केल्याने त्यावर स्टोअर केलेला सर्व डेटा मिटवला जाईल आणि दृश्यमान नसू शकणार्‍या पार्टिशनसह, सध्याची सर्व पार्टिशन काढून टाकली जातील. ही कृती पहिल्यासारखी केली जाऊ शकत नाही.</translation>
 <translation id="7695430100978772476"><ph name="DRIVE_NAME" /> फॉरमॅट करता आली नाही</translation>
+<translation id="76959938259365003">ट्रॅश रिकामा करता आला नाही.</translation>
 <translation id="770015031906360009">ग्रीक</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> कॉपी केला.</translation>
 <translation id="7711920809702896782">इमेज माहिती</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ru.xtb b/ui/chromeos/translations/ui_chromeos_strings_ru.xtb
index d2bcf6d..06df577 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_ru.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_ru.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">Хинди</translation>
 <translation id="7693909743393669729">При форматировании диска все хранящиеся на нем данные и созданные разделы (включая скрытые) будут удалены. Это действие нельзя отменить.</translation>
 <translation id="7695430100978772476">Не удалось отформатировать внешнее хранилище "<ph name="DRIVE_NAME" />".</translation>
+<translation id="76959938259365003">Не удалось очистить корзину.</translation>
 <translation id="770015031906360009">Греческий</translation>
 <translation id="7705251383879779343">Скопировано: <ph name="FILE_NAME" />.</translation>
 <translation id="7711920809702896782">Информация об изображении</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_si.xtb b/ui/chromeos/translations/ui_chromeos_strings_si.xtb
index de8390b..4c01a52c 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_si.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_si.xtb
@@ -770,6 +770,7 @@
 <translation id="7663224033570512922">හින්දි</translation>
 <translation id="7693909743393669729">ධාවකයක් හැඩ ගැන්වීම එහි ගබඩා කර ඇති සියලු දත්ත මකනු ඇති අතර දෘශ්‍යමාන නොවිය හැකි කොටස් ඇතුළුව දැනට පවතින සියලු කොටස් ඉවත් කරනු ඇත. මෙම ක්‍රියාව පසුගමනය කළ නොහැකිය.</translation>
 <translation id="7695430100978772476"><ph name="DRIVE_NAME" /> හැඩතල ගැන්විය නොහැකි විය</translation>
+<translation id="76959938259365003">කුණු කූඩය හිස් කිරීමට අසමත් විය.</translation>
 <translation id="770015031906360009">ග්‍රීක</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> පිටපත් කරන ලදි.</translation>
 <translation id="7711920809702896782">රූප තතු</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_sq.xtb b/ui/chromeos/translations/ui_chromeos_strings_sq.xtb
index 4320b7f..1156e98 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_sq.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_sq.xtb
@@ -770,6 +770,7 @@
 <translation id="7663224033570512922">Hindisht</translation>
 <translation id="7693909743393669729">Formatimi i një disku do të spastrojë të gjitha të dhënat e ruajtura në të dhe do të heqë të gjitha ndarjet ekzistuese, duke përfshirë ndarjet që mund të mos jenë të dukshme. Ky veprim nuk mund të zhbëhet.</translation>
 <translation id="7695430100978772476"><ph name="DRIVE_NAME" /> nuk mund të formatohej</translation>
+<translation id="76959938259365003">Boshatisja e koshit dështoi.</translation>
 <translation id="770015031906360009">Greqisht</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> është kopjuar.</translation>
 <translation id="7711920809702896782">Informacionet e imazhit</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_sv.xtb b/ui/chromeos/translations/ui_chromeos_strings_sv.xtb
index 462781f4..dda68f4 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_sv.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_sv.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">hindi</translation>
 <translation id="7693909743393669729">Om du formaterar en enhet raderas all data på den och alla partitioner tas bort, även sådana som inte visas. Det går inte att ångra åtgärden.</translation>
 <translation id="7695430100978772476">Det gick inte att formatera <ph name="DRIVE_NAME" /></translation>
+<translation id="76959938259365003">Det gick inte att tömma papperskorgen.</translation>
 <translation id="770015031906360009">grekiska</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> har kopierats.</translation>
 <translation id="7711920809702896782">Bildinformation</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_sw.xtb b/ui/chromeos/translations/ui_chromeos_strings_sw.xtb
index 6ccc685..4ebd819 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_sw.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_sw.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">Kihindi</translation>
 <translation id="7693909743393669729">Hatua ya kuweka upya muundo wa hifadhi ya USB itafuta data yote iliyomo na iondoe sehemu zote zilizopo, ikiwa ni pamoja na sehemu ambazo hazionekani. Kitendo hiki hakiwezi kutenduliwa.</translation>
 <translation id="7695430100978772476">Imeshindwa kubadilisha muundo <ph name="DRIVE_NAME" /></translation>
+<translation id="76959938259365003">Imeshindwa kufuta data iliyopo kwenye tupio.</translation>
 <translation id="770015031906360009">Kigiriki</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> imenakiliwa.</translation>
 <translation id="7711920809702896782">Maelezo ya picha</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ta.xtb b/ui/chromeos/translations/ui_chromeos_strings_ta.xtb
index b6fcafa3..4f6f99139 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_ta.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_ta.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">இந்தி</translation>
 <translation id="7693909743393669729">டிரைவை ஃபார்மேட் செய்தால் அதிலுள்ள தரவுகள் அனைத்தும் அழிக்கப்படும். அத்துடன் காட்டப்படாத பார்ட்டிஷன்கள் உட்பட அதிலுள்ள அனைத்துப் பார்ட்டிஷன்களும் அகற்றப்படும். இதைச் செயல்தவிர்க்க முடியாது.</translation>
 <translation id="7695430100978772476"><ph name="DRIVE_NAME" /> ஐ ஃபார்மேட் செய்ய முடியவில்லை</translation>
+<translation id="76959938259365003">நீக்கியவை ஃபோல்டரில் உள்ளவற்றை அழிக்க முடியவில்லை.</translation>
 <translation id="770015031906360009">கிரேக்கம்</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> நகலெடுக்கப்பட்டது.</translation>
 <translation id="7711920809702896782">படத் தகவல்</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_tr.xtb b/ui/chromeos/translations/ui_chromeos_strings_tr.xtb
index a7f5cf4..2c1fd53 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_tr.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_tr.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">Hintçe</translation>
 <translation id="7693909743393669729">Bir sürücünün biçimlendirilmesi sürücüde depolanan tüm verileri siler ve görünür olmayan bölümler de dahil olmak üzere tüm mevcut bölümleri kaldırır. Bu işlem geri alınamaz.</translation>
 <translation id="7695430100978772476"><ph name="DRIVE_NAME" /> biçimlendirilemedi</translation>
+<translation id="76959938259365003">Çöp kutusu boşaltılamadı.</translation>
 <translation id="770015031906360009">Yunanca</translation>
 <translation id="7705251383879779343"><ph name="FILE_NAME" /> dosyası kopyalandı.</translation>
 <translation id="7711920809702896782">Resim bilgileri</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_zh-CN.xtb b/ui/chromeos/translations/ui_chromeos_strings_zh-CN.xtb
index f602ffa2..8c9e927 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_zh-CN.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_zh-CN.xtb
@@ -766,6 +766,7 @@
 <translation id="7663224033570512922">印地语</translation>
 <translation id="7693909743393669729">将 U 盘格式化会清空其中存储的所有数据,并会移除所有现有分区(包括未必可见的分区)。此操作无法撤消。</translation>
 <translation id="7695430100978772476">无法将“<ph name="DRIVE_NAME" />”格式化</translation>
+<translation id="76959938259365003">未能清空回收站。</translation>
 <translation id="770015031906360009">希腊语</translation>
 <translation id="7705251383879779343">已复制 <ph name="FILE_NAME" />。</translation>
 <translation id="7711920809702896782">图片信息</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_zh-HK.xtb b/ui/chromeos/translations/ui_chromeos_strings_zh-HK.xtb
index e014a882..b0b2616 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_zh-HK.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_zh-HK.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">印度文</translation>
 <translation id="7693909743393669729">將硬碟格式化會清除其中儲存的所有資料,並移除所有的現有分割區,包括隱藏的分割區。此操作無法復原。</translation>
 <translation id="7695430100978772476">無法格式化「<ph name="DRIVE_NAME" />」</translation>
+<translation id="76959938259365003">無法清空垃圾桶。</translation>
 <translation id="770015031906360009">希臘文</translation>
 <translation id="7705251383879779343">已複製 <ph name="FILE_NAME" />。</translation>
 <translation id="7711920809702896782">圖片資料</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_zh-TW.xtb b/ui/chromeos/translations/ui_chromeos_strings_zh-TW.xtb
index 0246ddb6..7145b4c 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_zh-TW.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_zh-TW.xtb
@@ -771,6 +771,7 @@
 <translation id="7663224033570512922">北印度文</translation>
 <translation id="7693909743393669729">將硬碟格式化會清除其中儲存的所有資料,並移除所有的現有分割區,包括未顯示的分割區。這項操作無法復原。</translation>
 <translation id="7695430100978772476">無法格式化 <ph name="DRIVE_NAME" /></translation>
+<translation id="76959938259365003">無法清空垃圾桶。</translation>
 <translation id="770015031906360009">希臘文</translation>
 <translation id="7705251383879779343">已複製 <ph name="FILE_NAME" />。</translation>
 <translation id="7711920809702896782">圖片資訊</translation>
diff --git a/ui/color/color_id.h b/ui/color/color_id.h
index d515ca4..5a6bf2bf 100644
--- a/ui/color/color_id.h
+++ b/ui/color/color_id.h
@@ -210,8 +210,10 @@
   \
   E_CPONLY(kColorAshSystemUIBorderColor1) \
   E_CPONLY(kColorAshSystemUIBorderColor2) \
+  E_CPONLY(kColorAshSystemUIBorderColor3) \
   E_CPONLY(kColorAshSystemUIHighlightColor1) \
   E_CPONLY(kColorAshSystemUIHighlightColor2) \
+  E_CPONLY(kColorAshSystemUIHighlightColor3) \
   \
   /* TODO(crbug/1319917): Remove these when dark light mode is launched. */ \
   E_CPONLY(kColorAshSystemUILightBorderColor1) \
diff --git a/ui/events/event.h b/ui/events/event.h
index 6214399..ed2c6f8a 100644
--- a/ui/events/event.h
+++ b/ui/events/event.h
@@ -316,7 +316,9 @@
   // Neither Event copy constructor nor the assignment operator copies
   // `target_`, as `target_` should be explicitly set so the setter will be
   // responsible for tracking it.
-  raw_ptr<EventTarget> target_ = nullptr;
+  //
+  // TODO(crbug.com/1298696): Breaks events_unittests.
+  raw_ptr<EventTarget, DegradeToNoOpWhenMTE> target_ = nullptr;
   EventPhase phase_ = EP_PREDISPATCH;
   EventResult result_ = ER_UNHANDLED;
 
diff --git a/ui/events/event_target.h b/ui/events/event_target.h
index d18f029..0eb43fa 100644
--- a/ui/events/event_target.h
+++ b/ui/events/event_target.h
@@ -130,7 +130,8 @@
 
   EventHandlerPriorityList pre_target_list_;
   EventHandlerList post_target_list_;
-  raw_ptr<EventHandler> target_handler_ = nullptr;
+  // TODO(crbug.com/1298696): Breaks content_unittests.
+  raw_ptr<EventHandler, DegradeToNoOpWhenMTE> target_handler_ = nullptr;
 };
 
 }  // namespace ui
diff --git a/ui/gl/gl_image_io_surface.mm b/ui/gl/gl_image_io_surface.mm
index aff5e32..85e68d17 100644
--- a/ui/gl/gl_image_io_surface.mm
+++ b/ui/gl/gl_image_io_surface.mm
@@ -431,6 +431,8 @@
         base::trace_event::MemoryAllocatorDump::kNameSize,
         base::trace_event::MemoryAllocatorDump::kUnitsBytes,
         static_cast<uint64_t>(size_bytes));
+    anonymous_dump->AddScalar("width", "pixels", size_.width());
+    anonymous_dump->AddScalar("height", "pixels", size_.height());
   }
 }
 
diff --git a/ui/views/BUILD.gn b/ui/views/BUILD.gn
index 8c9ea38..eb5ef4b66 100644
--- a/ui/views/BUILD.gn
+++ b/ui/views/BUILD.gn
@@ -555,14 +555,18 @@
   ]
 
   if (is_chromeos_ash) {
-    public += [ "highlight_border.h" ]
-    sources += [ "highlight_border.cc" ]
     deps += [
       "//ash/constants",
       "//ui/base/ime/ash",
     ]
   }
 
+  if (is_chromeos) {
+    public += [ "highlight_border.h" ]
+    sources += [ "highlight_border.cc" ]
+    deps += [ "//chromeos/constants" ]
+  }
+
   if (is_linux || is_chromeos || is_fuchsia) {
     public += [ "color_chooser/color_chooser_view.h" ]
     sources += [ "color_chooser/color_chooser_view.cc" ]
diff --git a/ui/views/DEPS b/ui/views/DEPS
index e751e98..82f0dba 100644
--- a/ui/views/DEPS
+++ b/ui/views/DEPS
@@ -1,6 +1,7 @@
 include_rules = [
   "+ash/constants",
   "+cc/paint",
+  "+chromeos/constants",
   "+components/crash/core/common/crash_key.h",
   "+components/remote_cocoa",
   "+components/url_formatter",
diff --git a/ui/views/highlight_border.cc b/ui/views/highlight_border.cc
index cd9845c..1cb34f6 100644
--- a/ui/views/highlight_border.cc
+++ b/ui/views/highlight_border.cc
@@ -4,7 +4,7 @@
 
 #include "ui/views/highlight_border.h"
 
-#include "ash/constants/ash_features.h"
+#include "chromeos/constants/chromeos_features.h"
 #include "ui/color/color_id.h"
 #include "ui/color/color_provider.h"
 #include "ui/gfx/canvas.h"
@@ -71,14 +71,24 @@
     // TODO(crbug/1319917): These light color values are used here since we want
     // to use light colors when dark/light mode feature is not enabled. This
     // should be removed after dark light mode is launched.
-    DCHECK(!ash::features::IsDarkLightModeEnabled());
+    DCHECK(!chromeos::features::IsDarkLightModeEnabled());
+    // `kHighlightBorder3` can only be used when the dark light mode is enabled.
+    DCHECK(type != HighlightBorder::Type::kHighlightBorder3);
     highlight_color_id = type == HighlightBorder::Type::kHighlightBorder1
                              ? ui::kColorAshSystemUILightHighlightColor1
                              : ui::kColorAshSystemUILightHighlightColor2;
   } else {
-    highlight_color_id = type == HighlightBorder::Type::kHighlightBorder1
-                             ? ui::kColorAshSystemUIHighlightColor1
-                             : ui::kColorAshSystemUIHighlightColor2;
+    switch (type) {
+      case HighlightBorder::Type::kHighlightBorder1:
+        highlight_color_id = ui::kColorAshSystemUIHighlightColor1;
+        break;
+      case HighlightBorder::Type::kHighlightBorder2:
+        highlight_color_id = ui::kColorAshSystemUIHighlightColor2;
+        break;
+      case HighlightBorder::Type::kHighlightBorder3:
+        highlight_color_id = ui::kColorAshSystemUIHighlightColor3;
+        break;
+    }
   }
 
   // `view` should be embedded in a Widget to use color provider.
@@ -95,14 +105,24 @@
     // TODO(crbug/1319917): These light color values are used here since we want
     // to use light colors when dark/light mode feature is not enabled. This
     // should be removed after dark light mode is launched.
-    DCHECK(!ash::features::IsDarkLightModeEnabled());
+    DCHECK(!chromeos::features::IsDarkLightModeEnabled());
+    // `kHighlightBorder3` can only be used when the dark light mode is enabled.
+    DCHECK(type != HighlightBorder::Type::kHighlightBorder3);
     border_color_id = type == HighlightBorder::Type::kHighlightBorder1
                           ? ui::kColorAshSystemUILightBorderColor1
                           : ui::kColorAshSystemUILightBorderColor2;
   } else {
-    border_color_id = type == HighlightBorder::Type::kHighlightBorder1
-                          ? ui::kColorAshSystemUIBorderColor1
-                          : ui::kColorAshSystemUIBorderColor2;
+    switch (type) {
+      case HighlightBorder::Type::kHighlightBorder1:
+        border_color_id = ui::kColorAshSystemUIBorderColor1;
+        break;
+      case HighlightBorder::Type::kHighlightBorder2:
+        border_color_id = ui::kColorAshSystemUIBorderColor2;
+        break;
+      case HighlightBorder::Type::kHighlightBorder3:
+        border_color_id = ui::kColorAshSystemUIBorderColor3;
+        break;
+    }
   }
 
   // `view` should be embedded in a Widget to use color provider.
diff --git a/ui/views/highlight_border.h b/ui/views/highlight_border.h
index a8a2ff9c..dd151d8 100644
--- a/ui/views/highlight_border.h
+++ b/ui/views/highlight_border.h
@@ -29,6 +29,12 @@
     // A less contrast highlight border for components that float above a
     // shield.
     kHighlightBorder2,
+    // Has same inner border color as `kHighlightBorder1`. The outer color is
+    // same in dark and light mode with low opacity. This type is mainly used
+    // with `HighlightBorderLayerOverlay` whose outer border is outside the
+    // window contents. For more information, refer to the comment of
+    // `HighlightBorderOverlay`.
+    kHighlightBorder3,
   };
 
   // The type of insets created by this highlight border. The insets shrink the
diff --git a/weblayer/browser/android/javatests/skew/expectations.txt b/weblayer/browser/android/javatests/skew/expectations.txt
index 3afaaf2..5c69edd9 100644
--- a/weblayer/browser/android/javatests/skew/expectations.txt
+++ b/weblayer/browser/android/javatests/skew/expectations.txt
@@ -11,6 +11,10 @@
 # results: [ Skip ]
 # conflicts_allowed: True
 
+# Test is flaky, with the particular flake signaled in the bug below but the underlying cause likely
+# being crbug.com/1277901.
+crbug.com/1329813 [ all ] org.chromium.weblayer.test.ExternalNavigationTest#testNonHandledExternalIntentWithFallbackUrlThatLaunchesIntentAfterRedirectBlocksFallbackIntent [ Skip ]
+
 # No real changes to weblayer APIs, changes should only affect chrome-internal behavior around
 # navigation which the test depends on.
 crbug.com/1196803 [ client_lte_91 ] org.chromium.weblayer.test.ExternalNavigationTest#testExternalIntentWithNoRedirectInBrowserStartupInIncognitoBlockedWhenBackgroundLaunchesAllowedAndUserForbids [ Skip ]