diff --git a/DEPS b/DEPS
index eba0acf..3352542e 100644
--- a/DEPS
+++ b/DEPS
@@ -228,11 +228,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': 'abe39f5cb932e1d230c37335bbd66088820de5b6',
+  'skia_revision': '7b2af606d352d83c8a0058050007bcd8d55c6fd3',
   # 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': '3b51863bc25492549a8bf96ff67ce481b1a3337b',
+  'v8_revision': 'a1f172ed2e60ae56a6e9b4921116b819f8a25b2b',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling swarming_client
   # and whatever else without interference from each other.
@@ -240,7 +240,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling ANGLE
   # and whatever else without interference from each other.
-  'angle_revision': '1fb846cbed194e990c76bd475987665c37009c1a',
+  'angle_revision': 'd20afde45f071e0d45c4730f94a7a6361fc4d5ce',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling SwiftShader
   # and whatever else without interference from each other.
@@ -248,7 +248,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling PDFium
   # and whatever else without interference from each other.
-  'pdfium_revision': 'fb6dd8b4064ecf0b5bf592395795ea23afcbea11',
+  'pdfium_revision': 'dad7aa4efcf3cef860f31c74fd97a653df34a856',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling BoringSSL
   # and whatever else without interference from each other.
@@ -767,7 +767,7 @@
     'packages': [
       {
           'package': 'chromium/third_party/androidx',
-          'version': 'wapweqY3T9FEHpjaWRsHugloyn-WT9pGg45FvDUjXwUC',
+          'version': 'v5A41FDtUTUgWmjkgJS42X4yMcKx2zbPp8fWod32rhsC',
       },
     ],
     'condition': 'checkout_android',
@@ -1582,7 +1582,7 @@
   'src/third_party/usrsctp/usrsctplib':
     Var('chromium_git') + '/external/github.com/sctplab/usrsctp' + '@' + '978003f36a3bc1e9fdeafae26dbfe825684b0a25',
 
-  'src/third_party/vulkan-deps': '{chromium_git}/vulkan-deps@89745c68aa1236038af3a7a35b3995b3eeeed896',
+  'src/third_party/vulkan-deps': '{chromium_git}/vulkan-deps@510c98092bc097dfc2a1d8a52e35cfb030306c76',
 
   'src/third_party/vulkan_memory_allocator':
     Var('chromium_git') + '/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git' + '@' + 'f67d7fa397e83060b76a1ec53579116a0bbdff7a',
@@ -1621,7 +1621,7 @@
     Var('chromium_git') + '/external/github.com/gpuweb/cts.git' + '@' + '45b9cd139f6ea2b9c2f88a1497d4709c3d7c3600',
 
   'src/third_party/webrtc':
-    Var('webrtc_git') + '/src.git' + '@' + 'a7d32e3dcb4c86223c951643e4ae2159dcbfa8fb',
+    Var('webrtc_git') + '/src.git' + '@' + '10ee27e80f895d40822df3b0eb66b4608084acdd',
 
   'src/third_party/libgifcodec':
      Var('skia_git') + '/libgifcodec' + '@'+  Var('libgifcodec_revision'),
@@ -1690,7 +1690,7 @@
     'packages': [
       {
         'package': 'chromeos_internal/apps/eche_app/app',
-        'version': 'QuzeLNEamGD028n2M7BQJniXb9qezhbHgg3mlp2-vhsC',
+        'version': 'htPR_kO2znY3E3AQNg-ztIjKRQ2dPIr8USTIr3IPvo0C',
       },
     ],
     'condition': 'checkout_chromeos and checkout_src_internal',
@@ -1701,7 +1701,7 @@
     'packages': [
       {
         'package': 'chromeos_internal/apps/help_app/app',
-        'version': 'YyjGhweE5AdSF1jeiAS5q2BNI_nCL6TXyAl0_n0yC3cC',
+        'version': 'aACLDf9mcaiQBfbDGiRZqpUOo11i3viW_dm8BI3c62cC',
       },
     ],
     'condition': 'checkout_chromeos and checkout_src_internal',
diff --git a/ash/assistant/assistant_controller_impl.cc b/ash/assistant/assistant_controller_impl.cc
index 6a9175f8..f3d988d6 100644
--- a/ash/assistant/assistant_controller_impl.cc
+++ b/ash/assistant/assistant_controller_impl.cc
@@ -10,11 +10,14 @@
 #include "ash/accessibility/accessibility_controller_impl.h"
 #include "ash/assistant/util/deep_link_util.h"
 #include "ash/capture_mode/capture_mode_controller.h"
+#include "ash/constants/ash_features.h"
 #include "ash/public/cpp/android_intent_helper.h"
 #include "ash/public/cpp/new_window_delegate.h"
+#include "ash/public/cpp/style/scoped_light_mode_as_default.h"
 #include "ash/public/mojom/assistant_volume_control.mojom.h"
 #include "ash/session/session_controller_impl.h"
 #include "ash/shell.h"
+#include "ash/style/ash_color_provider.h"
 #include "base/bind.h"
 #include "base/memory/scoped_refptr.h"
 #include "chromeos/services/assistant/public/cpp/assistant_prefs.h"
@@ -37,6 +40,8 @@
   // provide an opportunity to turn on/off A11Y features.
   Shell::Get()->accessibility_controller()->AddObserver(this);
 
+  color_mode_observer_.Observe(AshColorProvider::Get());
+
   NotifyConstructed();
 }
 
@@ -74,6 +79,9 @@
 
   OnAccessibilityStatusChanged();
 
+  ScopedLightModeAsDefault scoped_light_mode_as_default;
+  OnColorModeChanged(AshColorProvider::Get()->IsDarkModeEnabled());
+
   if (assistant) {
     for (AssistantControllerObserver& observer : observers_)
       observer.OnAssistantReady();
@@ -269,6 +277,13 @@
       Shell::Get()->accessibility_controller()->spoken_feedback().enabled());
 }
 
+void AssistantControllerImpl::OnColorModeChanged(bool dark_mode_enabled) {
+  if (!assistant_)
+    return;
+
+  assistant_->OnColorModeChanged(dark_mode_enabled);
+}
+
 bool AssistantControllerImpl::IsAssistantReady() const {
   return !!assistant_;
 }
diff --git a/ash/assistant/assistant_controller_impl.h b/ash/assistant/assistant_controller_impl.h
index 3467df83..1bdc4f5 100644
--- a/ash/assistant/assistant_controller_impl.h
+++ b/ash/assistant/assistant_controller_impl.h
@@ -28,10 +28,13 @@
 #include "ash/public/cpp/assistant/controller/assistant_controller.h"
 #include "ash/public/cpp/assistant/controller/assistant_controller_observer.h"
 #include "ash/public/cpp/image_downloader.h"
+#include "ash/public/cpp/style/color_mode_observer.h"
 #include "ash/public/mojom/assistant_volume_control.mojom.h"
+#include "ash/style/ash_color_provider.h"
 #include "base/macros.h"
 #include "base/memory/weak_ptr.h"
 #include "base/observer_list.h"
+#include "base/scoped_observation.h"
 #include "chromeos/services/assistant/public/cpp/assistant_service.h"
 #include "components/prefs/pref_service.h"
 #include "mojo/public/cpp/bindings/pending_receiver.h"
@@ -52,7 +55,8 @@
       public mojom::AssistantVolumeControl,
       public CrasAudioHandler::AudioObserver,
       public AccessibilityObserver,
-      public AssistantInterfaceBinder {
+      public AssistantInterfaceBinder,
+      public ColorModeObserver {
  public:
   AssistantControllerImpl();
   ~AssistantControllerImpl() override;
@@ -98,6 +102,9 @@
   // AccessibilityObserver:
   void OnAccessibilityStatusChanged() override;
 
+  // ColorModeObserver:
+  void OnColorModeChanged(bool dark_mode_enabled) override;
+
   AssistantAlarmTimerControllerImpl* alarm_timer_controller() {
     return &assistant_alarm_timer_controller_;
   }
@@ -146,6 +153,8 @@
       assistant_volume_control_receiver_{this};
   mojo::RemoteSet<mojom::VolumeObserver> volume_observers_;
 
+  // |assistant_| can be nullptr if libassistant creation is not yet completed,
+  // i.e. it cannot take a request.
   chromeos::assistant::Assistant* assistant_ = nullptr;
 
   // Assistant sub-controllers.
@@ -162,6 +171,9 @@
 
   AssistantViewDelegateImpl view_delegate_{this};
 
+  base::ScopedObservation<AshColorProvider, ColorModeObserver>
+      color_mode_observer_{this};
+
   base::WeakPtrFactory<AssistantControllerImpl> weak_factory_{this};
 
   DISALLOW_COPY_AND_ASSIGN(AssistantControllerImpl);
diff --git a/ash/assistant/assistant_controller_impl_unittest.cc b/ash/assistant/assistant_controller_impl_unittest.cc
index eecc120..6bafe71 100644
--- a/ash/assistant/assistant_controller_impl_unittest.cc
+++ b/ash/assistant/assistant_controller_impl_unittest.cc
@@ -9,10 +9,18 @@
 #include <string>
 
 #include "ash/assistant/test/assistant_ash_test_base.h"
+#include "ash/assistant/test/test_assistant_service.h"
 #include "ash/assistant/util/deep_link_util.h"
+#include "ash/constants/ash_features.h"
+#include "ash/constants/ash_pref_names.h"
 #include "ash/public/cpp/assistant/controller/assistant_controller_observer.h"
 #include "ash/public/cpp/test/test_new_window_delegate.h"
+#include "ash/session/session_controller_impl.h"
+#include "ash/shell.h"
+#include "ash/style/ash_color_provider.h"
 #include "base/scoped_observation.h"
+#include "base/test/scoped_feature_list.h"
+#include "chromeos/services/assistant/public/cpp/assistant_service.h"
 #include "testing/gmock/include/gmock/gmock.h"
 
 namespace ash {
@@ -97,10 +105,17 @@
   const AssistantUiModel* ui_model() {
     return AssistantUiController::Get()->GetModel();
   }
+  TestAssistantService* test_assistant_service() {
+    return &test_assistant_service_;
+  }
 
  private:
   MockNewWindowDelegate* new_window_delegate_;
   std::unique_ptr<TestNewWindowDelegateProvider> delegate_provider_;
+
+  // AssistantService must outlive AssistantController as destructor can
+  // reference AssistantService.
+  TestAssistantService test_assistant_service_;
 };
 
 }  // namespace
@@ -215,4 +230,40 @@
   ui_model()->RemoveObserver(&ui_model_observer_mock);
 }
 
+// Make sure that AssistantControllerImpl sets dark mode = false even if the
+// flag is off. SettingsController won't set options if dark mode bit is not
+// set.
+TEST_F(AssistantControllerImplTest, ColorModeIsSetWhenAssistantIsReadyFlagOff) {
+  ASSERT_FALSE(features::IsDarkLightModeEnabled());
+
+  controller()->SetAssistant(test_assistant_service());
+
+  ASSERT_TRUE(test_assistant_service()->dark_mode_enabled().has_value());
+  EXPECT_FALSE(test_assistant_service()->dark_mode_enabled().value());
+}
+
+TEST_F(AssistantControllerImplTest, ColorModeIsUpdated) {
+  base::test::ScopedFeatureList feature_list;
+  feature_list.InitAndEnableFeature(features::kDarkLightMode);
+
+  ASSERT_TRUE(features::IsDarkLightModeEnabled());
+
+  // AshColorProvider::IsDarkModeEnabled reports it's in dark mode if active
+  // pref service is not set.
+  AshColorProvider::Get()->OnActiveUserPrefServiceChanged(
+      Shell::Get()->session_controller()->GetPrimaryUserPrefService());
+  ASSERT_FALSE(AshColorProvider::Get()->IsDarkModeEnabled());
+
+  controller()->SetAssistant(test_assistant_service());
+
+  ASSERT_TRUE(test_assistant_service()->dark_mode_enabled().has_value());
+  EXPECT_FALSE(test_assistant_service()->dark_mode_enabled().value());
+
+  Shell::Get()->session_controller()->GetPrimaryUserPrefService()->SetBoolean(
+      prefs::kDarkModeEnabled, true);
+
+  ASSERT_TRUE(test_assistant_service()->dark_mode_enabled().has_value());
+  EXPECT_TRUE(test_assistant_service()->dark_mode_enabled().value());
+}
+
 }  // namespace ash
diff --git a/ash/assistant/test/test_assistant_service.cc b/ash/assistant/test/test_assistant_service.cc
index 922d6eb..334d8952 100644
--- a/ash/assistant/test/test_assistant_service.cc
+++ b/ash/assistant/test/test_assistant_service.cc
@@ -266,6 +266,10 @@
 void TestAssistantService::OnAccessibilityStatusChanged(
     bool spoken_feedback_enabled) {}
 
+void TestAssistantService::OnColorModeChanged(bool dark_mode_enabled) {
+  dark_mode_enabled_ = dark_mode_enabled;
+}
+
 void TestAssistantService::SendAssistantFeedback(
     const chromeos::assistant::AssistantFeedback& feedback) {}
 
diff --git a/ash/assistant/test/test_assistant_service.h b/ash/assistant/test/test_assistant_service.h
index f364399..1dff7dcb 100644
--- a/ash/assistant/test/test_assistant_service.h
+++ b/ash/assistant/test/test_assistant_service.h
@@ -105,6 +105,7 @@
   void DismissNotification(
       const chromeos::assistant::AssistantNotification& notification) override;
   void OnAccessibilityStatusChanged(bool spoken_feedback_enabled) override;
+  void OnColorModeChanged(bool dark_mode_enabled) override;
   void SendAssistantFeedback(
       const chromeos::assistant::AssistantFeedback& feedback) override;
   void AddTimeToTimer(const std::string& id, base::TimeDelta duration) override;
@@ -112,6 +113,8 @@
   void RemoveAlarmOrTimer(const std::string& id) override;
   void ResumeTimer(const std::string& id) override;
 
+  absl::optional<bool> dark_mode_enabled() { return dark_mode_enabled_; }
+
  private:
   void StartInteraction(
       chromeos::assistant::AssistantInteractionType type,
@@ -124,6 +127,8 @@
   std::unique_ptr<CurrentInteractionSubscriber> current_interaction_subscriber_;
   std::unique_ptr<InteractionResponse> interaction_response_;
 
+  absl::optional<bool> dark_mode_enabled_;
+
   base::ObserverList<chromeos::assistant::AssistantInteractionSubscriber>
       interaction_subscribers_;
   bool running_active_interaction_ = false;
diff --git a/ash/constants/ash_features.cc b/ash/constants/ash_features.cc
index c17a8e17..ae72b3f 100644
--- a/ash/constants/ash_features.cc
+++ b/ash/constants/ash_features.cc
@@ -1022,6 +1022,11 @@
                                          base::FEATURE_ENABLED_BY_DEFAULT};
 
 // Enables or disables using the system input engine for physical typing in
+// Korean.
+const base::Feature kSystemKoreanPhysicalTyping{
+    "SystemKoreanPhysicalTyping", base::FEATURE_DISABLED_BY_DEFAULT};
+
+// Enables or disables using the system input engine for physical typing in
 // languages based on latin script.
 const base::Feature kSystemLatinPhysicalTyping{
     "SystemLatinPhysicalTyping", base::FEATURE_ENABLED_BY_DEFAULT};
@@ -1580,6 +1585,11 @@
   return base::FeatureList::IsEnabled(kStylusBatteryStatus);
 }
 
+bool IsSystemKoreanPhysicalTypingEnabled() {
+  return base::FeatureList::IsEnabled(kImeMojoDecoder) &&
+         base::FeatureList::IsEnabled(kSystemKoreanPhysicalTyping);
+}
+
 bool IsSystemLatinPhysicalTypingEnabled() {
   return base::FeatureList::IsEnabled(kImeMojoDecoder) &&
          base::FeatureList::IsEnabled(kSystemLatinPhysicalTyping);
diff --git a/ash/constants/ash_features.h b/ash/constants/ash_features.h
index 2819ed2..b3da7c1b0 100644
--- a/ash/constants/ash_features.h
+++ b/ash/constants/ash_features.h
@@ -386,6 +386,8 @@
 COMPONENT_EXPORT(ASH_CONSTANTS)
 extern const base::Feature kSyncSettingsCategorization;
 COMPONENT_EXPORT(ASH_CONSTANTS)
+extern const base::Feature kSystemKoreanPhysicalTyping;
+COMPONENT_EXPORT(ASH_CONSTANTS)
 extern const base::Feature kSystemLatinPhysicalTyping;
 COMPONENT_EXPORT(ASH_CONSTANTS)
 extern const base::Feature kSystemProxyForSystemServices;
@@ -545,6 +547,7 @@
 COMPONENT_EXPORT(ASH_CONSTANTS) bool IsSyncSettingsCategorizationEnabled();
 COMPONENT_EXPORT(ASH_CONSTANTS) bool IsSyncConsentOptionalEnabled();
 COMPONENT_EXPORT(ASH_CONSTANTS) bool IsStylusBatteryStatusEnabled();
+COMPONENT_EXPORT(ASH_CONSTANTS) bool IsSystemKoreanPhysicalTypingEnabled();
 COMPONENT_EXPORT(ASH_CONSTANTS) bool IsSystemLatinPhysicalTypingEnabled();
 COMPONENT_EXPORT(ASH_CONSTANTS) bool IsTabClusterUIEnabled();
 COMPONENT_EXPORT(ASH_CONSTANTS) bool IsTrilinearFilteringEnabled();
diff --git a/ash/shortcut_viewer/strings/shortcut_viewer_strings_te.xtb b/ash/shortcut_viewer/strings/shortcut_viewer_strings_te.xtb
index b43d230..0123441 100644
--- a/ash/shortcut_viewer/strings/shortcut_viewer_strings_te.xtb
+++ b/ash/shortcut_viewer/strings/shortcut_viewer_strings_te.xtb
@@ -4,7 +4,7 @@
 <translation id="1036550831858290950">మీ ప్రస్తుత ట్యాబ్‌ను బుక్‌మార్క్‌గా సేవ్ చేయండి</translation>
 <translation id="104962181688258143">ఫైల్స్ యాప్‌ను తెరవండి</translation>
 <translation id="1122869341872663659"><ph name="QUERY" /> కోసం <ph name="N" /> ఫలితాలను చూపుతోంది</translation>
-<translation id="1195667586424773550">ట్యాబ్ యొక్క చిరునామా బార్‌లోకి లింక్‌ను లాగండి</translation>
+<translation id="1195667586424773550">ట్యాబ్ యొక్క అడ్రస్‌ బార్‌లోకి లింక్‌ను లాగండి</translation>
 <translation id="1251638888133819822">పూర్తి స్క్రీన్ మాగ్నిఫైయర్‌ను ఆన్ లేదా ఆఫ్ చేస్తుంది</translation>
 <translation id="1290373024480130896"><ph name="MODIFIER1" /><ph name="SEPARATOR1" /><ph name="MODIFIER2" /><ph name="SEPARATOR2" /><ph name="MODIFIER3" /><ph name="SEPARATOR3" /><ph name="KEY" /></translation>
 <translation id="1293699935367580298">Esc</translation>
@@ -23,7 +23,7 @@
 <translation id="168356808214100546"><ph name="ALT" />ను నొక్కి, పట్టుకుని, మీరు తెరవాలనుకుంటున్న విండో వచ్చే వరకు <ph name="TAB" />ను నొక్కండి, ఆపై వదిలివేయండి.</translation>
 <translation id="169515659049020177">Shift</translation>
 <translation id="1732295673545939435"><ph name="MODIFIER1" /><ph name="SEPARATOR1" /><ph name="MODIFIER2" /><ph name="SEPARATOR2" /><ph name="KEY" /></translation>
-<translation id="1733525068429116555">చిరునామా బార్‌లో మీరు నమోదు చేసే దానికి www. మరియు .com జోడించి, ఆపై పేజీని తెరవండి</translation>
+<translation id="1733525068429116555">అడ్రస్‌ బార్‌లో మీరు నమోదు చేసే దానికి www. మరియు .com జోడించి, ఆపై పేజీని తెరవండి</translation>
 <translation id="1768987374400973299">స్క్రీన్‌షాట్ తీయండి/రికార్డింగ్‌ను చేయండి</translation>
 <translation id="1872219238824176091">ప్రస్తుతం ఉన్న డెస్క్‌ను తీసివేస్తుంది</translation>
 <translation id="1920446759863417809"><ph name="SHIFT1" /><ph name="SEPARATOR1" /><ph name="ALT" /><ph name="SEPARATOR2" /><ph name="L" />, ఆపై <ph name="SHIFT2" /><ph name="SEPARATOR3" /><ph name="TAB" /> లేదా <ph name="LEFT" /></translation>
@@ -55,7 +55,7 @@
 <translation id="2574014812750545982">పేజీలోని జూమ్ స్థాయిని రీసెట్ చేస్తుంది</translation>
 <translation id="2685170433750953446"><ph name="SHIFT" /><ph name="SEPARATOR1" /><ph name="ALT" /><ph name="SEPARATOR2" /><ph name="L" />, ఆపై <ph name="TAB" /> లేదా <ph name="RIGHT" /></translation>
 <translation id="2750942583782703988">మీ ప్రస్తుత పేజీని మళ్లీ లోడ్ చేయండి</translation>
-<translation id="2764005613199379871">శోధన చిరునామా బార్‌పై దృష్టి ఉంచండి</translation>
+<translation id="2764005613199379871">శోధన అడ్రస్‌ బార్‌పై దృష్టి ఉంచండి</translation>
 <translation id="2774822903829597107">కొత్త డెస్క్‌ను సృష్టిస్తుంది</translation>
 <translation id="2789868185375229787">పేజీలో దూరంగా జూమ్ చేయండి</translation>
 <translation id="2804480015716812239"><ph name="ALT" />ను నొక్కి, లింక్‌ను క్లిక్ చేయండి</translation>
@@ -68,7 +68,7 @@
 <translation id="3084301071537457911">మీ అరలో ఉన్న తర్వాతి అంశాన్ని హైలైట్ చేయండి</translation>
 <translation id="309173601632226815">మీ అరలో లాంచర్ బటన్‌ను హైలైట్ చేయండి</translation>
 <translation id="3126026824346185272">Ctrl</translation>
-<translation id="3140353188828248647">ఫోకస్ చిరునామా బార్</translation>
+<translation id="3140353188828248647">ఫోకస్ అడ్రస్‌ బార్</translation>
 <translation id="3256109297135787951">మీ అరలోని ఒక అంశానికి ఉన్న హైలైట్‌ను తీసివేయండి</translation>
 <translation id="3288816184963444640">ప్రస్తుత విండోను మూసివేయండి</translation>
 <translation id="3407560819924487926">కార్య నిర్వాహకుడిని తెరవండి</translation>
@@ -98,7 +98,7 @@
 <translation id="4092538597492297615">ఎంచుకున్న కంటెంట్‌ను క్లిప్‌బోర్డ్‌కు కాపీ చేయండి</translation>
 <translation id="4101772068965291327">హోమ్ పేజీని తెరువు</translation>
 <translation id="4123108089450197101">లింక్‌ను బుక్‌మార్క్ లాగా సేవ్ చేయండి</translation>
-<translation id="4141203561740478845">చిరునామా బార్ ఉన్న అడ్డు వరుసను హైలైట్ చేయండి</translation>
+<translation id="4141203561740478845">అడ్రస్‌ బార్ ఉన్న అడ్డు వరుసను హైలైట్ చేయండి</translation>
 <translation id="4148761611071495477"><ph name="CTRL" /><ph name="SEPARATOR" /><ph name="G" /> లేదా <ph name="ENTER" /></translation>
 <translation id="4240486403425279990">స్థూలదృష్టి మోడ్</translation>
 <translation id="4382340674111381977">మునుపటి పేజీకి తిరిగి వెళ్లండి</translation>
@@ -173,7 +173,7 @@
 <translation id="7025325401470358758">తరువాత పేన్</translation>
 <translation id="7076878155205969899">ధ్వనిని మ్యూట్ చేస్తుంది</translation>
 <translation id="7077383985738259936">బుక్‌మార్క్‌ల బార్‌పై దృష్టి ఉంచండి లేదా దానిని హైలైట్ చేయండి (చూపబడినట్లయితే)</translation>
-<translation id="7237562915163138771">అడ్ర‌స్‌ బార్‌లో వెబ్ చిరునామాను టైప్ చేసి, <ph name="ALT" /><ph name="SEPARATOR" /><ph name="ENTER" />ను నొక్కండి</translation>
+<translation id="7237562915163138771">అడ్ర‌స్‌ బార్‌లో వెబ్ అడ్రస్‌ను టైప్ చేసి, <ph name="ALT" /><ph name="SEPARATOR" /><ph name="ENTER" />ను నొక్కండి</translation>
 <translation id="7254764037241667478">పరికరాన్ని నిద్రావస్థలో ఉంచండి (తాత్కాలికంగా నిలిపివేయండి)</translation>
 <translation id="7422707470576323858">తర్వాత అందుబాటులో ఉన్న ఇన్‌పుట్ విధానానికి మారండి</translation>
 <translation id="743754632698445141">యాప్‌ను అన్‌పిన్ చేయండి</translation>
@@ -208,8 +208,8 @@
 <translation id="8881584919399569791">యాక్టివ్ విండోను ఎడమవైపు డెస్క్‌కు తరలిస్తుంది</translation>
 <translation id="88986195241502842">దిగువ పేజీకి వెళుతుంది</translation>
 <translation id="8924883688469390268">మునుపటి వినియోగదారుకు మారండి</translation>
-<translation id="8977648847395357314">చిరునామా బార్‌‍లోని కంటెంట్‌ను ఎంచుకోండి</translation>
-<translation id="8982190978301344584">అందుబాటులో ఉన్న IMEల జాబితాను ప్రదర్శించే మెనూను చూపండి</translation>
+<translation id="8977648847395357314">అడ్రస్‌ బార్‌‍లోని కంటెంట్‌ను ఎంచుకోండి</translation>
+<translation id="8982190978301344584">అందుబాటులో ఉన్న IMEల లిస్ట్‌ను ప్రదర్శించే మెనూను చూపండి</translation>
 <translation id="8990356943438003669"><ph name="ALT" /><ph name="SEPARATOR" /> 1 నుండి 8</translation>
 <translation id="9005984960510803406">Crosh విండోను తెరవండి</translation>
 <translation id="9041599225465145264">క్లిప్‌బోర్డ్ నుండి కంటెంట్‌ను అతికించండి</translation>
diff --git a/ash/strings/ash_strings_en-GB.xtb b/ash/strings/ash_strings_en-GB.xtb
index a384631..7d23293 100644
--- a/ash/strings/ash_strings_en-GB.xtb
+++ b/ash/strings/ash_strings_en-GB.xtb
@@ -93,6 +93,7 @@
 <translation id="1615402009686901181">Administrator policy disables screen capture when confidential content is visible</translation>
 <translation id="1632985212731562677">Switch access can be disabled in Settings &gt; Accessibility.</translation>
 <translation id="1654477262762802994">Start a voice query</translation>
+<translation id="1655967159878494613"><ph name="QUERY_TEXT" />; <ph name="RESULT_TEXT" />; press Search plus Space to see the result in Assistant.</translation>
 <translation id="1667964833127753507">The neutral colour mode does not use wallpaper extracted colours, replacing them by a set of neutrally toned light or dark hues.</translation>
 <translation id="1677472565718498478"><ph name="TIME" /> left</translation>
 <translation id="1677507110654891115"><ph name="FEATURE_NAME" /> is not connected.</translation>
@@ -140,6 +141,7 @@
 <translation id="2016340657076538683">Type a message</translation>
 <translation id="2018630726571919839">Tell me a joke</translation>
 <translation id="2021864487439853900">Click to unlock</translation>
+<translation id="2023558322300866873">You can stop packet capture at any time</translation>
 <translation id="2047639699071423250">Add key idea</translation>
 <translation id="2049240716062114887">Desk name was changed to <ph name="DESK_NAME" /></translation>
 <translation id="2050339315714019657">Portrait</translation>
@@ -542,6 +544,7 @@
 <translation id="5083553833479578423">Unlock more Assistant features.</translation>
 <translation id="5136175204352732067">Different keyboard connected</translation>
 <translation id="5155897006997040331">Reading speed</translation>
+<translation id="5166918508782100047">Quick Answers settings</translation>
 <translation id="5168181903108465623">Cast devices available</translation>
 <translation id="5170568018924773124">Show in folder</translation>
 <translation id="5176318573511391780">Record partial screen</translation>
@@ -796,6 +799,7 @@
 <translation id="7302889331339392448">Live Caption is off.</translation>
 <translation id="7303365578352795231">Answering on another device.</translation>
 <translation id="7305884605064981971">EDGE</translation>
+<translation id="7343581795491695942"><ph name="QUERY_TEXT" />; <ph name="RESULT_TEXT" />; press Search plus Space to see the result in Google Search.</translation>
 <translation id="7346909386216857016">OK, got it</translation>
 <translation id="7348093485538360975">On-Screen Keyboard</translation>
 <translation id="735745346212279324">VPN disconnected</translation>
diff --git a/ash/strings/ash_strings_fr-CA.xtb b/ash/strings/ash_strings_fr-CA.xtb
index 88b9fc9a..31aa91f 100644
--- a/ash/strings/ash_strings_fr-CA.xtb
+++ b/ash/strings/ash_strings_fr-CA.xtb
@@ -243,6 +243,7 @@
 <translation id="2946119680249604491">Ajouter une connexion</translation>
 <translation id="2961963223658824723">Un problème est survenu. Réessayez dans quelques secondes.</translation>
 <translation id="2963773877003373896">mod3</translation>
+<translation id="296762781903199866">Impossible de télécharger les fichiers vocaux en <ph name="LANGUAGE" /></translation>
 <translation id="2970920913501714344">Installer des applications, des extensions et des thèmes</translation>
 <translation id="2977598380246111477">Prochain numéro</translation>
 <translation id="2992327365391326550">Le bouton du microphone de l'appareil est désactivé.</translation>
@@ -484,6 +485,7 @@
 <translation id="4696813013609194136">Déverrouiller l'appareil avec le code parental</translation>
 <translation id="4702647871202761252">L'écran de confidentialité est désactivé</translation>
 <translation id="4705716602320768426">Classer le commentaire</translation>
+<translation id="4706121060329443414">Une tentative de téléchargement aura lieu ultérieurement. Le fichier vocal sera maintenant envoyé à Google aux fin de traitement.</translation>
 <translation id="4731797938093519117">Accès parental</translation>
 <translation id="4734965478015604180">Horizontal</translation>
 <translation id="4735498845456076464">Le raccourci-clavier <ph name="LAUNCHER_KEY_NAME" />+Chiffre a été modifié. Pour utiliser les touches de fonction, appuyez sur la touche <ph name="LAUNCHER_KEY_NAME" /> ainsi que sur une touche de la rangée du haut.</translation>
@@ -589,6 +591,7 @@
 <translation id="5600837773213129531">Appuyez sur Ctrl + Alt + Z pour désactiver la rétroaction vocale.</translation>
 <translation id="5601503069213153581">NIP</translation>
 <translation id="5619862035903135339">La politique définie par l'administrateur désactive les captures d'écran</translation>
+<translation id="5620281292257375798">Pour usage interne seulement</translation>
 <translation id="5625955975703555628">LTE+</translation>
 <translation id="5648021990716966815">Prise du microphone</translation>
 <translation id="5649768706273821470">Écouter</translation>
@@ -657,6 +660,7 @@
 <translation id="6073451960410192870">Arrêter l'enregistrement</translation>
 <translation id="607652042414456612">Votre ordinateur est visible pour les appareils Bluetooth situés à proximité sous le nom « <ph name="NAME" /> » et a comme adresse <ph name="ADDRESS" />.</translation>
 <translation id="6094290315941448991">La politique définie par l'administrateur désactive l'enregistrement de l'écran lorsque du contenu confidentiel est visible</translation>
+<translation id="6114505516289286752">Fichiers vocaux en <ph name="LANGUAGE" /> téléchargés</translation>
 <translation id="6119360623251949462"><ph name="CHARGING_STATE" />. <ph name="BATTERY_SAVER_STATE" /></translation>
 <translation id="612734058257491180">L'Assistant Google n'est pas accessible dans une session d'invité.</translation>
 <translation id="6137566720514957455">Ouvrir la boîte de dialogue de retrait pour <ph name="USER_EMAIL_ADDRESS" /></translation>
@@ -738,6 +742,7 @@
 <translation id="6816797338148849397">Des renseignements concernant votre sélection sont accessibles. Servez-vous de la touche de flèche vers le haut pour y accéder.</translation>
 <translation id="6818242057446442178">Déplacer un mot vers l'arrière</translation>
 <translation id="6820676911989879663">Prenez une pause!</translation>
+<translation id="6836499262298959512">Fichier dangereux</translation>
 <translation id="6837064795450991317">Masquer deskbar</translation>
 <translation id="6850010208275816200">L'application actuelle s'affiche en plein écran. Si l'application vous demande votre mot de passe, quittez d'abord le mode plein écran.</translation>
 <translation id="6852052252232534364">Cliquer pour activer</translation>
@@ -878,6 +883,7 @@
 <translation id="7901405293566323524">Phone Hub</translation>
 <translation id="7902625623987030061">Touchez le capteur d'empreintes digitales</translation>
 <translation id="7904094684485781019">L'administrateur de ce compte a désactivé la connexion multicompte.</translation>
+<translation id="7930731167419639574">La langue suivante est maintenant traitée localement et la fonctionnalité Dictée fonctionne hors ligne</translation>
 <translation id="7933084174919150729">L'Assistant Google n'est offert que pour le profil principal.</translation>
 <translation id="79341161159229895">Compte géré par <ph name="FIRST_PARENT_EMAIL" /> et <ph name="SECOND_PARENT_EMAIL" /></translation>
 <translation id="793716872548410480">Appuyez sur <ph name="SHORTCUT_KEY_NAME" />+V pour afficher le contenu du presse-papiers. Les cinq derniers éléments que vous avez copiés sont enregistrés dans le presse-papiers.</translation>
diff --git a/ash/strings/ash_strings_iw.xtb b/ash/strings/ash_strings_iw.xtb
index 4ac36e7..b35aec5 100644
--- a/ash/strings/ash_strings_iw.xtb
+++ b/ash/strings/ash_strings_iw.xtb
@@ -243,6 +243,7 @@
 <translation id="2946119680249604491">הוספת חיבור</translation>
 <translation id="2961963223658824723">משהו השתבש. אפשר לנסות שוב בעוד כמה שניות.</translation>
 <translation id="2963773877003373896">mod3</translation>
+<translation id="296762781903199866">לא ניתן היה להוריד את קובצי הדיבור של <ph name="LANGUAGE" /></translation>
 <translation id="2970920913501714344">התקנת אפליקציות, תוספים ועיצובים</translation>
 <translation id="2977598380246111477">המספר הבא</translation>
 <translation id="2992327365391326550">לחצן המיקרופן של המכשיר כבוי.</translation>
@@ -484,6 +485,7 @@
 <translation id="4696813013609194136">ביטול נעילת המכשיר באמצעות קוד הורה</translation>
 <translation id="4702647871202761252">מסך הפרטיות כבוי</translation>
 <translation id="4705716602320768426">מילוי משוב</translation>
+<translation id="4706121060329443414">‏יתבצע ניסיון הורדה מאוחר יותר. בינתיים, דיבור יישלח אל Google לעיבוד.</translation>
 <translation id="4731797938093519117">גישת הורים</translation>
 <translation id="4734965478015604180">אופקי</translation>
 <translation id="4735498845456076464">מקשי הקיצור <ph name="LAUNCHER_KEY_NAME" /> + ספרה הוחלפו. כדי לדמות את הפעולה של מקשי הפונקציה, יש להקיש על המקש <ph name="LAUNCHER_KEY_NAME" /> + מקש כלשהו בשורה העליונה של המקלדת.</translation>
@@ -589,6 +591,7 @@
 <translation id="5600837773213129531">‏יש להקיש על Ctrl ‏+ Alt ‏+ Z כדי להשבית את המשוב הקולי.</translation>
 <translation id="5601503069213153581">קוד אימות</translation>
 <translation id="5619862035903135339">לפי המדיניות של מנהל המערכת, צילום המסך מושבת</translation>
+<translation id="5620281292257375798">פנימי בלבד</translation>
 <translation id="5625955975703555628">+LTE</translation>
 <translation id="5648021990716966815">שקע מיקרופון</translation>
 <translation id="5649768706273821470">האזנה</translation>
@@ -657,6 +660,7 @@
 <translation id="6073451960410192870">הפסקת צילום הסרטון</translation>
 <translation id="607652042414456612">‏מכשירי Bluetooth קרובים יכולים לאתר את המחשב שלך, והוא יופיע כ-"<ph name="NAME" />" עם הכתובת <ph name="ADDRESS" /></translation>
 <translation id="6094290315941448991">בהתאם למדיניות מנהל המערכת, הקלטת המסך מושבתת כשמוצג תוכן סודי</translation>
+<translation id="6114505516289286752">הורדת קובצי הדיבור של <ph name="LANGUAGE" /> הסתיימה</translation>
 <translation id="6119360623251949462"><ph name="CHARGING_STATE" />. <ph name="BATTERY_SAVER_STATE" /></translation>
 <translation id="612734058257491180">‏Google Assistant לא זמינה בגלישה כאורח.</translation>
 <translation id="6137566720514957455">פתיחת תיבת דו-דיח להסרה של <ph name="USER_EMAIL_ADDRESS" /></translation>
@@ -738,6 +742,7 @@
 <translation id="6816797338148849397">יש מידע בקשר לבחירה שלך. כדי לגשת אליו, יש להקיש על מקש החץ למעלה.</translation>
 <translation id="6818242057446442178">מילה אחת אחורה</translation>
 <translation id="6820676911989879663">הגיע הזמן להפסקה</translation>
+<translation id="6836499262298959512">קובץ מסוכן</translation>
 <translation id="6837064795450991317">הסתרת הסרגל של שולחנות העבודה הווירטואליים</translation>
 <translation id="6850010208275816200">האפליקציה הנוכחית מוצגת במסך מלא. אם התבקשת להזין סיסמה, עליך קודם לצאת ממסך מלא.</translation>
 <translation id="6852052252232534364">תופעל בלחיצה</translation>
@@ -880,6 +885,7 @@
 <translation id="7901405293566323524">מרכז טלפוני</translation>
 <translation id="7902625623987030061">יש לגעת בחיישן טביעות האצבע</translation>
 <translation id="7904094684485781019">מנהל החשבון הזה אסר על כניסה עם מספר חשבונות.</translation>
+<translation id="7930731167419639574">העיבוד של דיבור נעשה עכשיו באופן מקומי ותכונת ההכתבה פועלת אופליין.</translation>
 <translation id="7933084174919150729">‏Google Assistant זמינה רק לפרופיל ראשי.</translation>
 <translation id="79341161159229895">החשבון מנוהל על-ידי <ph name="FIRST_PARENT_EMAIL" /> ועל-ידי <ph name="SECOND_PARENT_EMAIL" /></translation>
 <translation id="793716872548410480">‏לצפייה בלוח העריכה, יש ללחוץ על <ph name="SHORTCUT_KEY_NAME" /> + V. בלוח העריכה שמורים חמשת הפריטים האחרונים שהעתקת.</translation>
diff --git a/ash/strings/ash_strings_si.xtb b/ash/strings/ash_strings_si.xtb
index 5d94d02..3c1832b 100644
--- a/ash/strings/ash_strings_si.xtb
+++ b/ash/strings/ash_strings_si.xtb
@@ -93,6 +93,7 @@
 <translation id="1615402009686901181">රහසිගත අන්තර්ගතය දෘශ්‍යමාන විට පරිපාලක ප්‍රතිපත්තිය තිර ග්‍රහණය අබල කරයි</translation>
 <translation id="1632985212731562677">ප්‍රවේශය මාරු කිරීම සැකසීම් &gt; ප්‍රවේශ්‍යතාව තුළ අබල කළ හැක.</translation>
 <translation id="1654477262762802994">හඬ විමසුමක් අරඹන්න</translation>
+<translation id="1655967159878494613"><ph name="QUERY_TEXT" />; <ph name="RESULT_TEXT" />; සහායක තුළ ප්‍රතිඵලය බැලීමට සෙවීම සහ ඉඩ යතුර ඔබන්න.</translation>
 <translation id="1667964833127753507">උදාසීන වර්ණ ප්‍රකාරය වෝල්පේපරය නිස්සාරණය කළ වර්ණ, උදාසීන තානය සහිත ආලෝක හෝ අඳුරු වර්ණ කට්ටලයක් මගින් ප්‍රතිස්ථාපනය කරමින්, භාවිත නොකරයි.</translation>
 <translation id="1677472565718498478"><ph name="TIME" /> ඉතිරිය</translation>
 <translation id="1677507110654891115"><ph name="FEATURE_NAME" /> සම්බන්ධ නැත.</translation>
@@ -140,6 +141,7 @@
 <translation id="2016340657076538683">පණිවිඩයක් ටයිප් කරන්න</translation>
 <translation id="2018630726571919839">මට විහිළුවක් කියන්න</translation>
 <translation id="2021864487439853900">අගුලු හැරීමට ක්ලික් කරන්න</translation>
+<translation id="2023558322300866873">ඔබට ඕනෑම වේලාවක පැකට් ග්‍රහණය නැවැත්විය හැකිය</translation>
 <translation id="2047639699071423250">මූලික අදහසක් එක් කරන්න</translation>
 <translation id="2049240716062114887">ඩෙස්ක් නම <ph name="DESK_NAME" /> ලෙස වෙනස් කරන ලදි</translation>
 <translation id="2050339315714019657">සිරස්</translation>
@@ -542,6 +544,7 @@
 <translation id="5083553833479578423">තව සහායක අංග අගුලු හරින්න</translation>
 <translation id="5136175204352732067">වෙනස් යතුරු පුවරුවක් සම්බන්ධ කර ඇත</translation>
 <translation id="5155897006997040331">කියවීමේ වේගය</translation>
+<translation id="5166918508782100047">ඉක්මන් පිළිතුරු සැකසීම්</translation>
 <translation id="5168181903108465623">විකාශ උපාංග ලබා ගත හැකිය</translation>
 <translation id="5170568018924773124">ෆෝල්ඩරයේ පෙන්වන්න</translation>
 <translation id="5176318573511391780">අර්ධ තිරය පටිගත කරන්න</translation>
@@ -796,6 +799,7 @@
 <translation id="7302889331339392448">සජීවී සිරස්තල ක්‍රියාවිරහිතයි.</translation>
 <translation id="7303365578352795231">වෙනත් උපාංගයක් මත පිළිතුරු ලබා දෙයි.</translation>
 <translation id="7305884605064981971">EDGE</translation>
+<translation id="7343581795491695942"><ph name="QUERY_TEXT" />; <ph name="RESULT_TEXT" />; Google සෙවීම තුළ ප්‍රතිඵලය බැලීමට සෙවීම සහ ඉඩ යතුර ඔබන්න.</translation>
 <translation id="7346909386216857016">හරි, තේරුම් ගත්තා!</translation>
 <translation id="7348093485538360975">තිරය-මත යතුරු පුවරුව</translation>
 <translation id="735745346212279324">VPN විසන්ධි විය</translation>
diff --git a/ash/strings/ash_strings_te.xtb b/ash/strings/ash_strings_te.xtb
index 832af71..eadbdaf 100644
--- a/ash/strings/ash_strings_te.xtb
+++ b/ash/strings/ash_strings_te.xtb
@@ -88,7 +88,7 @@
 <translation id="1550523713251050646">మరిన్ని ఎంపికల కోసం క్లిక్ చేయండి</translation>
 <translation id="1555130319947370107">నీలం</translation>
 <translation id="1570871743947603115">బ్లూటూత్‌ను టోగుల్ చేయండి. <ph name="STATE_TEXT" /></translation>
-<translation id="1589090746204042747">ఈ సెషన్‌లో మీ మొత్తం కార్యకలాపాన్ని యాక్సెస్ చేయండి</translation>
+<translation id="1589090746204042747">ఈ సెషన్‌లో మీ మొత్తం యాక్టివిటీని యాక్సెస్ చేయండి</translation>
 <translation id="1611993646327628135">ఆన్</translation>
 <translation id="1615402009686901181">గోప్యమైన కంటెంట్ కనిపించినప్పుడు, అడ్మినిస్ట్రేటర్ పాలసీ స్క్రీన్ క్యాప్చర్‌ను డిజేబుల్ చేస్తుంది</translation>
 <translation id="1632985212731562677">సెట్టింగ్‌లు &gt; యాక్సెసిబిలిటీలో స్విచ్ యాక్సెస్‌ను డిజేబుల్ చేయవచ్చు.</translation>
@@ -97,7 +97,7 @@
 <translation id="1677472565718498478"><ph name="TIME" /> మిగిలి ఉంది</translation>
 <translation id="1677507110654891115"><ph name="FEATURE_NAME" /> కనెక్ట్ కాలేదు.</translation>
 <translation id="1698080062160024910"><ph name="TOTAL_TIME" /> టైమర్ · <ph name="LABEL" /></translation>
-<translation id="1698760176351776263">IPv6 చిరునామా: <ph name="ADDRESS" /></translation>
+<translation id="1698760176351776263">IPv6 అడ్రస్‌: <ph name="ADDRESS" /></translation>
 <translation id="1708345662127501511">డెస్క్: <ph name="DESK_NAME" /></translation>
 <translation id="1709762881904163296">నెట్‌వర్క్ సెట్టింగ్‌లు</translation>
 <translation id="1719094688023114093">లైవ్ క్యాప్షన్ ఆన్ చేయబడింది.</translation>
@@ -272,7 +272,7 @@
 <translation id="315116470104423982">మొబైల్ డేటా</translation>
 <translation id="3151786313568798007">దృగ్విన్యాసం</translation>
 <translation id="3153444934357957346">బహుళ సైన్-ఇన్‌లో గరిష్టంగా <ph name="MULTI_PROFILE_USER_LIMIT" /> ఖాతాలు మాత్రమే ఉండవచ్చు.</translation>
-<translation id="3154351730702813399">పరికర నిర్వాహకుడు మీ బ్రౌజింగ్ కార్యకలాపాన్ని పర్యవేక్షించవచ్చు.</translation>
+<translation id="3154351730702813399">పరికర నిర్వాహకుడు మీ బ్రౌజింగ్ యాక్టివిటీని పర్యవేక్షించవచ్చు.</translation>
 <translation id="3181441307743005334">రీస్టార్ట్ చేయడానికి కొంత సమయం పట్టవచ్చు</translation>
 <translation id="3202010236269062730">{NUM_DEVICES,plural, =1{పరికరానికి కనెక్ట్ చేయబడింది}other{# పరికరాలకు కనెక్ట్ చేయబడింది}}</translation>
 <translation id="320207200541803018">టైమర్‌ని సెట్ చేయండి</translation>
@@ -656,7 +656,7 @@
 <translation id="6059276912018042191">ఇటీవలి Chrome ట్యాబ్‌లు</translation>
 <translation id="6062360702481658777">మీరు <ph name="LOGOUT_TIME_LEFT" />లో ఆటోమేటిక్‌గా సైన్ అవుట్ చేయబడతారు.</translation>
 <translation id="6073451960410192870">రికార్డ్ చేయడం ఆపివేయి</translation>
-<translation id="607652042414456612">మీ కంప్యూటర్ సమీప బ్లూటూత్ పరికరాల్లో కనుగొనబడుతుంది మరియు చిరునామా <ph name="ADDRESS" />తో "<ph name="NAME" />" లాగా కనిపిస్తుంది</translation>
+<translation id="607652042414456612">మీ కంప్యూటర్ సమీప బ్లూటూత్ పరికరాల్లో కనుగొనబడుతుంది మరియు అడ్రస్‌ <ph name="ADDRESS" />తో "<ph name="NAME" />" లాగా కనిపిస్తుంది</translation>
 <translation id="6094290315941448991">గోప్యమైన కంటెంట్ కనిపించినప్పుడు, అడ్మినిస్ట్రేటర్ పాలసీ స్క్రీన్ రికార్డింగ్‌ను డిజేబుల్ చేస్తుంది</translation>
 <translation id="6119360623251949462"><ph name="CHARGING_STATE" />. <ph name="BATTERY_SAVER_STATE" /></translation>
 <translation id="612734058257491180">అతిథి సెషన్‌లో Google అసిస్టెంట్ పని చేయదు.</translation>
@@ -826,7 +826,7 @@
 <translation id="7509246181739783082">మీ గుర్తింపును వెరిఫై చేయండి</translation>
 <translation id="7513622367902644023">స్క్రీన్‌షాట్ మోడ్ ఎంచుకోబడింది</translation>
 <translation id="7526573455193969409">నెట్‌వ‌ర్క్‌పై ప‌ర్య‌వేక్ష‌ణ ఉండ‌వ‌చ్చు</translation>
-<translation id="7536035074519304529">IP చిరునామా: <ph name="ADDRESS" /></translation>
+<translation id="7536035074519304529">IP అడ్రస్‌: <ph name="ADDRESS" /></translation>
 <translation id="7548434653388805669">నిద్రపోయే సమయం</translation>
 <translation id="7551643184018910560">అరకు పిన్ చేయండి</translation>
 <translation id="7561982940498449837">మెనూను మూసివేయి</translation>
@@ -968,7 +968,7 @@
 <translation id="8653151467777939995">నోటిఫికేషన్ సెట్టింగ్‌లను చూపుతుంది. నోటిఫికేషన్‌లు ఆన్ చేయబడి ఉన్నాయి</translation>
 <translation id="8660331759611631213">71 వర్గమూలం</translation>
 <translation id="8663756353922886599"><ph name="CONNECTION_STATUS" />, సిగ్నల్ సామర్థ్యం <ph name="SIGNAL_STRENGTH" /></translation>
-<translation id="8664753092453405566">నెట్‌వర్క్ జాబితాను చూపుతుంది. <ph name="STATE_TEXT" /></translation>
+<translation id="8664753092453405566">నెట్‌వర్క్ లిస్ట్‌ను చూపుతుంది. <ph name="STATE_TEXT" /></translation>
 <translation id="8668052347555487755">రంగు మోడ్</translation>
 <translation id="8673028979667498656">270°</translation>
 <translation id="8676770494376880701">తక్కువ-పవర్ గల ఛార్జర్ కనెక్ట్ చేయబడింది</translation>
diff --git a/ash/strings/ash_strings_uz.xtb b/ash/strings/ash_strings_uz.xtb
index 7525ca4..89ce1ed 100644
--- a/ash/strings/ash_strings_uz.xtb
+++ b/ash/strings/ash_strings_uz.xtb
@@ -93,6 +93,7 @@
 <translation id="1615402009686901181">Maxfiy axborotlar koʻrinib turganda administrator ekranni tasvirga olishni taqiqlagan</translation>
 <translation id="1632985212731562677">Switch Access funksiyasini Sozlamalar &gt; Maxsus imkoniyatlar orqali faolsizlantirish mumkin.</translation>
 <translation id="1654477262762802994">Ovozli qidiruvni boshlash</translation>
+<translation id="1655967159878494613"><ph name="QUERY_TEXT" />; <ph name="RESULT_TEXT" />; Natijalarni Assistentda chiqarish uchun Qidiruv + Boʻshliq tugmalarini bosing.</translation>
 <translation id="1667964833127753507">Neytral ranglar rejimida fon uchun yorqin yoki xira tusdagi toʻplam koʻrinishidagi ixtiyoriy ranglar ishlatiladi.</translation>
 <translation id="1677472565718498478"><ph name="TIME" /> qoldi</translation>
 <translation id="1677507110654891115"><ph name="FEATURE_NAME" /> ulanmadi.</translation>
@@ -140,6 +141,7 @@
 <translation id="2016340657076538683">Xabar yozing</translation>
 <translation id="2018630726571919839">Bitta latifa aytib ber</translation>
 <translation id="2021864487439853900">Ochish uchun bosing</translation>
+<translation id="2023558322300866873">Tarmoq paketlarini olish jarayonini istalgan vaqtda toʻxtatish mumkin</translation>
 <translation id="2047639699071423250">Asosiy gʻoyani kiritish</translation>
 <translation id="2049240716062114887">Ish stoli nomi yangilandi: <ph name="DESK_NAME" /></translation>
 <translation id="2050339315714019657">Bo‘yiga</translation>
@@ -542,6 +544,7 @@
 <translation id="5083553833479578423">Assistentning boshqa imkoniyatlarini oching.</translation>
 <translation id="5136175204352732067">Boshqa klaviatura ulandi</translation>
 <translation id="5155897006997040331">Oʻqish tezligi</translation>
+<translation id="5166918508782100047">Tezkor javoblar sozlamalari</translation>
 <translation id="5168181903108465623">Translatsiya qurilmalari mavjud</translation>
 <translation id="5170568018924773124">&amp;Jildda ko‘rsatish</translation>
 <translation id="5176318573511391780">Ekran qismini yozib olish</translation>
@@ -796,6 +799,7 @@
 <translation id="7302889331339392448">Jonli izoh yoqilmagan.</translation>
 <translation id="7303365578352795231">Boshqa qurilmada javob berilmoqda</translation>
 <translation id="7305884605064981971">EDGE</translation>
+<translation id="7343581795491695942"><ph name="QUERY_TEXT" />; <ph name="RESULT_TEXT" />; Natijalarni Google Qidiruvida chiqarish uchun Qidiruv + Boʻshliq tugmalarini bosing.</translation>
 <translation id="7346909386216857016">OK</translation>
 <translation id="7348093485538360975">Ekran klaviaturasi</translation>
 <translation id="735745346212279324">VPN aloqasi uzildi</translation>
diff --git a/base/memory/raw_ptr.h b/base/memory/raw_ptr.h
index f220035..bc3c280 100644
--- a/base/memory/raw_ptr.h
+++ b/base/memory/raw_ptr.h
@@ -92,7 +92,7 @@
 #if BUILDFLAG(USE_BACKUP_REF_PTR)
 
 #if DCHECK_IS_ON() || BUILDFLAG(ENABLE_BACKUP_REF_PTR_SLOW_CHECKS)
-void CheckThatAddressIsntWithinFirstPartitionPage(void* ptr);
+BASE_EXPORT void CheckThatAddressIsntWithinFirstPartitionPage(void* ptr);
 #endif
 
 struct BackupRefPtrImpl {
diff --git a/base/memory/raw_ptr_unittest.cc b/base/memory/raw_ptr_unittest.cc
index 607989d..7b1b3ae 100644
--- a/base/memory/raw_ptr_unittest.cc
+++ b/base/memory/raw_ptr_unittest.cc
@@ -823,10 +823,10 @@
   PartitionAllocator<ThreadSafe> allocator;
   allocator.init(kOpts);
 
-  void* raw_ptr = allocator.root()->Alloc(16, "");
-  allocator.root()->Free(raw_ptr);
+  void* ptr = allocator.root()->Alloc(16, "");
+  allocator.root()->Free(ptr);
 
-  raw_ptr<void>* wrapped_ptr = reinterpret_cast<raw_ptr<void>*>(&raw_ptr);
+  raw_ptr<void>* wrapped_ptr = reinterpret_cast<raw_ptr<void>*>(&ptr);
   // The reference count cookie check should detect that the allocation has
   // been already freed.
   EXPECT_DEATH_IF_SUPPORTED(*wrapped_ptr = nullptr, "");
diff --git a/chrome/VERSION b/chrome/VERSION
index a87762a..a16e641b4 100644
--- a/chrome/VERSION
+++ b/chrome/VERSION
@@ -1,4 +1,4 @@
 MAJOR=95
 MINOR=0
-BUILD=4608
+BUILD=4610
 PATCH=0
diff --git a/chrome/android/features/keyboard_accessory/internal/java/strings/translations/android_keyboard_accessory_strings_te.xtb b/chrome/android/features/keyboard_accessory/internal/java/strings/translations/android_keyboard_accessory_strings_te.xtb
index e1dae06..8079fcc 100644
--- a/chrome/android/features/keyboard_accessory/internal/java/strings/translations/android_keyboard_accessory_strings_te.xtb
+++ b/chrome/android/features/keyboard_accessory/internal/java/strings/translations/android_keyboard_accessory_strings_te.xtb
@@ -3,21 +3,21 @@
 <translationbundle lang="te">
 <translation id="1383876407941801731">సెర్చ్</translation>
 <translation id="1566281227936819866">సేవ్ చేసిన చెల్లింపు పద్ధతులను చూపుతోంది</translation>
-<translation id="1717486229951421299">'టచ్ చేసి నింపాల్సిన ఆధారాల జాబితా' సగం ఎత్తులో తెరవబడింది.</translation>
-<translation id="207576718733492531">'టచ్ చేసి నింపాల్సిన ఆధారాల జాబితా' మూసివేయబడింది.</translation>
+<translation id="1717486229951421299">'టచ్ చేసి నింపాల్సిన ఆధారాల లిస్ట్‌' సగం ఎత్తులో తెరవబడింది.</translation>
+<translation id="207576718733492531">'టచ్ చేసి నింపాల్సిన ఆధారాల లిస్ట్‌' మూసివేయబడింది.</translation>
 <translation id="2610239185026711824">పాస్‌వర్డ్‌ని సూచించు</translation>
 <translation id="2803478378562657435">సేవ్ చేసిన పాస్‌వర్డ్‌లు మరియు పాస్‌వర్డ్ ఎంపికలను చూపిస్తోంది</translation>
 <translation id="2903493209154104877">అడ్రస్‌లు</translation>
-<translation id="3399357656427473483">'ట‌చ్ చేసి నింపాల్సిన ఆధారాల జాబితా'.</translation>
+<translation id="3399357656427473483">'ట‌చ్ చేసి నింపాల్సిన ఆధారాల లిస్ట్‌'.</translation>
 <translation id="4660011489602794167">కీబోర్డ్‌ను చూపు</translation>
 <translation id="4694050069269396220">మీకు <ph name="ORIGIN" /> మీద నమ్మకం ఉంటే, ఇదివరకే సేవ్ చేసిన మీ పాస్‌వర్డ్‌ను మీరు మరొక సైట్‌కు ఉపయోగించవచ్చు.</translation>
 <translation id="5016175294846053194">కీబోర్డ్ పైభాగాన స్వీయ పూరణ సూచనలు అందుబాటులో ఉన్నాయి</translation>
-<translation id="5088366526685584589">సేవ్ చేసిన చిరునామాలను చూపుతోంది</translation>
-<translation id="5441504010984421144">'ట‌చ్ చేసి నింపాల్సిన ఆధారాల జాబితా' పూర్తి ఎత్తులో తెరవబడింది.</translation>
+<translation id="5088366526685584589">సేవ్ చేసిన అడ్రస్‌లను చూపుతోంది</translation>
+<translation id="5441504010984421144">'ట‌చ్ చేసి నింపాల్సిన ఆధారాల లిస్ట్‌' పూర్తి ఎత్తులో తెరవబడింది.</translation>
 <translation id="6393156038355142111">శక్తివంతమైన పాస్‌వర్డ్‌ని సూచించు</translation>
 <translation id="6558703547256592471">ప్రతి సైట్‌కు ఒక విభిన్నమైన పాస్‌వర్డ్‌ను ఉపయోగించడానికి ట్రై చేయండి.</translation>
 <translation id="7029809446516969842">పాస్‌వర్డ్‌లు</translation>
-<translation id="7299100402441711551">చిరునామాలను చూపుతుంది</translation>
+<translation id="7299100402441711551">అడ్రస్‌లను చూపుతుంది</translation>
 <translation id="7494879913343971937">పాస్‌వర్డ్‌లను చూపుతుంది</translation>
 <translation id="7594473730623999723">మరిన్ని సూచనలను చూడటం కోసం స్వైప్ చేయండి</translation>
 <translation id="7992095260806105436">Chrome ఆటోఫిల్ సూచనను ఉపయోగించండి</translation>
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java
index 94ef8af..15bdcb0 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java
@@ -191,6 +191,13 @@
                 && !CachedFeatureFlags.isEnabled(ChromeFeatureList.ELASTIC_OVERSCROLL)) {
             setTheme(R.style.ThemeOverlay_DisableOverscroll);
         }
+
+        // We apply an extra theme overlay to override some of the dynamic colors. For example,
+        // android:textColorHighlight is overridden by dynamic colors, preventing us from specifying
+        // the alpha for the selected text highlight. In this case, the overridden colors should
+        // still use dynamic colors, as in the android:textColorHighlight example where we use a
+        // color state list that depends on colorPrimary.
+        setTheme(R.style.ThemeOverlay_DynamicColorOverrides);
     }
 
     /**
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadMessageUiControllerTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadMessageUiControllerTest.java
index d604a32..31bfbcb3 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadMessageUiControllerTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadMessageUiControllerTest.java
@@ -55,8 +55,7 @@
     private static final String MESSAGE_DOWNLOAD_SCHEDULED_WIFI = "1 download scheduled";
     private static final String MESSAGE_TWO_DOWNLOAD_SCHEDULED = "2 downloads scheduled";
 
-    private static final String DESCRIPTION_DOWNLOADING =
-            "You can see the download status in your notifications";
+    private static final String DESCRIPTION_DOWNLOADING = "See notification for download status";
     private static final String DESCRIPTION_DOWNLOAD_COMPLETE = "(0.01 KB)\nexample.com";
     private static final String DESCRIPTION_DOWNLOAD_SCHEDULED =
             "Download will start when on Wi-Fi";
diff --git a/chrome/app/BUILD.gn b/chrome/app/BUILD.gn
index 84b98d0..762296d0 100644
--- a/chrome/app/BUILD.gn
+++ b/chrome/app/BUILD.gn
@@ -225,8 +225,14 @@
     visibility = [ ":*" ]
   }
 
+  if (is_chrome_branded) {
+    _fuchsia_package_name = "google_chrome"
+  } else {
+    _fuchsia_package_name = "chromium"
+  }
+
   fuchsia_package("chrome_pkg") {
-    package_name = "chrome"
+    package_name = _fuchsia_package_name
     deps = [
       ":chrome_component",
       ":chrome_component_v1",
@@ -235,6 +241,6 @@
 
   fuchsia_package_runner("chrome_fuchsia") {
     package = ":chrome_pkg"
-    package_name_override = "chrome"
+    package_name_override = _fuchsia_package_name
   }
 }
diff --git a/chrome/app/resources/chromium_strings_en-GB.xtb b/chrome/app/resources/chromium_strings_en-GB.xtb
index 17ff943..15270bb 100644
--- a/chrome/app/resources/chromium_strings_en-GB.xtb
+++ b/chrome/app/resources/chromium_strings_en-GB.xtb
@@ -16,6 +16,7 @@
 <translation id="1524282610922162960">Share a Chromium tab</translation>
 <translation id="1553461853655228091">Chromium needs permission to access your camera to create a 3D map of your surroundings</translation>
 <translation id="1607715478322902680">{COUNT,plural, =0{Your administrator requires that you relaunch Chromium to apply an update}=1{Your administrator requires that you relaunch Chromium to apply an update. Your Incognito window won't reopen.}other{Your administrator requires that you relaunch Chromium to apply an update. Your # Incognito windows won't reopen.}}</translation>
+<translation id="1667812772085710766">When you close Chromium, it automatically clears cookies and site data from the pages that you visited</translation>
 <translation id="1708666629004767631">There's a new, safer version of Chromium available.</translation>
 <translation id="1774152462503052664">Let Chromium run in the background</translation>
 <translation id="1779356040007214683">To make Chromium safer, we disabled some extensions that aren't listed in the <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> and may have been added without your knowledge.</translation>
diff --git a/chrome/app/resources/chromium_strings_fr-CA.xtb b/chrome/app/resources/chromium_strings_fr-CA.xtb
index 250175b..0d7fee9 100644
--- a/chrome/app/resources/chromium_strings_fr-CA.xtb
+++ b/chrome/app/resources/chromium_strings_fr-CA.xtb
@@ -256,6 +256,7 @@
 <translation id="7937630085815544518">Vous étiez connecté à Chromium en tant que <ph name="USER_EMAIL_ADDRESS" />. Veuillez utiliser le même compte pour vous reconnecter.</translation>
 <translation id="7975919845073681630">Cette installation de Chromium est secondaire. Celui-ci ne peut donc pas servir de navigateur par défaut.</translation>
 <translation id="8013436988911883588">Lorsque Chromium y aura accès, les sites Web pourront vous demander l'accès.</translation>
+<translation id="8045118833343856403">Les comptes suivants ne sont connectés à aucun profil Chromium. Si vous voulez utiliser un compte dans un autre profil, retirer d'abord ce profil.</translation>
 <translation id="81770708095080097">Chromium a bloqué ce fichier, car il est dangereux.</translation>
 <translation id="8248265253516264921">Si une image n'est pas accompagnée d'une description utile, Chromium essaiera de vous en proposer une. Pour créer des descriptions, les images sont envoyées à Google. Vous pouvez désactiver cette option dans les paramètres à tout moment.</translation>
 <translation id="8266560134891435528">Chromium ne peut pas vérifier vos mots de passe parce que vous n'êtes pas connecté.</translation>
diff --git a/chrome/app/resources/chromium_strings_iw.xtb b/chrome/app/resources/chromium_strings_iw.xtb
index 212d847..9c46f2a 100644
--- a/chrome/app/resources/chromium_strings_iw.xtb
+++ b/chrome/app/resources/chromium_strings_iw.xtb
@@ -254,6 +254,7 @@
 <translation id="7937630085815544518">‏נכנסת ל-Chromium כ-<ph name="USER_EMAIL_ADDRESS" />. יש להשתמש באותו חשבון כדי להיכנס שוב.</translation>
 <translation id="7975919845073681630">‏זוהי התקנה משנית של Chromium, ולא ניתן להפוך אותו לדפדפן ברירת המחדל שלך.</translation>
 <translation id="8013436988911883588">‏אחרי מתן גישה ל-Chromium, אתרים יוכלו לבקש ממך גישה.</translation>
+<translation id="8045118833343856403">‏החשבונות הבאים לא נכנסו לאף פרופיל Chromium. אם ברצונך להשתמש בחשבון בפרופיל אחר, תחילה עליך להסיר את אותו פרופיל.</translation>
 <translation id="81770708095080097">‏Chromium‏ חסם את הקובץ הזה כי הוא מסוכן.</translation>
 <translation id="8248265253516264921">‏אם אין לתמונה תיאור מועיל, Chromium ינסה לספק לך תיאור. כדי ליצור תיאורים, התמונות נשלחות אל Google. אפשר להשבית את האפשרות הזו בכל זמן דרך ההגדרות.</translation>
 <translation id="8266560134891435528">‏Chromium לא יכול לבדוק את הסיסמאות שלך כי לא נכנסת לחשבון</translation>
diff --git a/chrome/app/resources/chromium_strings_si.xtb b/chrome/app/resources/chromium_strings_si.xtb
index 3590635..debf03a 100644
--- a/chrome/app/resources/chromium_strings_si.xtb
+++ b/chrome/app/resources/chromium_strings_si.xtb
@@ -16,6 +16,7 @@
 <translation id="1524282610922162960">Chromium පටිත්තක් බෙදා ගන්න</translation>
 <translation id="1553461853655228091">Chromium හට ඔබේ වටපිටාවේ ත්‍රිමාන සිතියමක් සෑදීමට ඔබේ කැමරාවට ප්‍රවේශ වීමට අවසර අවශ්‍යයි</translation>
 <translation id="1607715478322902680">{COUNT,plural, =0{යාවත්කාලීනයක් යෙදීමට ඔබ Chromium නැවත ආරම්භ කිරීම පරිපාලකයාට අවශ්‍ය වේ}=1{යාවත්කාලීනයක් යෙදීමට ඔබ Chromium නැවත ආරම්භ කිරීම පරිපාලකයාට අවශ්‍ය වේ. ඔබේ අප්‍රසිද්ධ කවුළුව යළි විවෘත නොවෙයි.}one{යාවත්කාලීනයක් යෙදීමට ඔබ Chromium නැවත ආරම්භ කිරීම පරිපාලකයාට අවශ්‍ය වේ. ඔබේ අප්‍රසිද්ධ කවුළු # යළි විවෘත නොවෙයි.}other{යාවත්කාලීනයක් යෙදීමට ඔබ Chromium නැවත ආරම්භ කිරීම පරිපාලකයාට අවශ්‍ය වේ. ඔබේ අප්‍රසිද්ධ කවුළු # යළි විවෘත නොවෙයි.}}</translation>
+<translation id="1667812772085710766">ඔබ Chromium වසන විට, එය ඔබ පිවිසි පිටුවලින් ස්වයංක්‍රියව කුකි සහ අඩවි දත්ත හිස් කරයි</translation>
 <translation id="1708666629004767631">Google Chromium හි නව, වඩා ආරක්ෂිත සංස්කරණයක් පවතී.</translation>
 <translation id="1774152462503052664">පසුබිමේ Chromium ධාවනය වීමට ඉඩ දෙන්න</translation>
 <translation id="1779356040007214683">Chromium වඩාත් ආරක්ෂිත කිරීම සඳහා, අප විසින් <ph name="IDS_EXTENSION_WEB_STORE_TITLE" /> ලැයිස්තුගත කළ නොමැති හා ඔබේ දැනුමෙන් තොරව එක්කළ ඇතැම් දිගු අක්‍රීය කර ඇත.</translation>
diff --git a/chrome/app/resources/chromium_strings_te.xtb b/chrome/app/resources/chromium_strings_te.xtb
index e6c1783..a07eabf 100644
--- a/chrome/app/resources/chromium_strings_te.xtb
+++ b/chrome/app/resources/chromium_strings_te.xtb
@@ -16,7 +16,7 @@
 <translation id="1607715478322902680">{COUNT,plural, =0{అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromiumను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు}=1{అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromiumను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు. మీ అజ్ఞాత విండో మళ్లీ తెరవబడదు.}other{అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromiumను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు. మీ # అజ్ఞాత విండోలు మళ్లీ తెరవబడవు.}}</translation>
 <translation id="1708666629004767631">Chromium యొక్క కొత్త సురక్షితమైన వెర్షన్ అందుబాటులో ఉంది.</translation>
 <translation id="1774152462503052664">నేపథ్యంలో Chromiumని అమలు చేయడానికి అనుమతించు</translation>
-<translation id="1779356040007214683">Chromiumను సురక్షితం చేయడానికి, మేము <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో జాబితా చేయబడని మరియు మీకు తెలియకుండానే జోడించబడిన కొన్ని పొడిగింపులను నిలిపివేసాము.</translation>
+<translation id="1779356040007214683">Chromiumను సురక్షితం చేయడానికి, మేము <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో లిస్ట్‌ చేయబడని మరియు మీకు తెలియకుండానే జోడించబడిన కొన్ని ఎక్స్‌టెన్షన్‌లను నిలిపివేసాము.</translation>
 <translation id="1808667845054772817">Chromiumను మళ్లీ ఇన్‌స్టాల్ చేయి</translation>
 <translation id="185970820835152459">మీరు సైన్ ఇన్ చేసిన Google ఖాతాలను మీరు మేనేజ్ చేయవచ్చు. Chromium బ్రౌజర్, Play స్టోర్, Gmail, ఇంకా మరిన్నింటి కోసం మీ Google ఖాతాలు ఉపయోగించబడతాయి. ఫ్యామిలీ మెంబర్ వంటి వారి కోసం మీరు ఖాతాను జోడించాలనుకుంటే, బదులుగా కొత్త వ్యక్తిని మీ <ph name="DEVICE_TYPE" />కు జోడించండి. <ph name="LINK_BEGIN" />మరింత తెలుసుకోండి<ph name="LINK_END" /></translation>
 <translation id="1881322772814446296">మీరు నిర్వహించబడే ఖాతాతో సైన్ ఇన్ చేస్తున్నారు. దీని నిర్వాహకునికి మీ Chromium ప్రొఫైల్‌పై నియంత్రణను అందిస్తున్నారు. మీ యాప్‌లు, బుక్‌మార్క్‌లు, చరిత్ర, పాస్‌వర్డ్‌లు, ఇతర సెట్టింగ్‌ల వంటి మీ Chromium డేటా శాశ్వతంగా <ph name="USER_NAME" />కు అనుబంధించబడుతుంది. మీరు Google ఖాతాల డ్యాష్‌బోర్డ్ ద్వారా ఈ డేటాను తొలగించవచ్చు. కానీ ఈ డేటాను మరో ఖాతాతో అనుబంధించలేరు. మీరు ప్రస్తుతం ఉన్న మీ Chromium డేటాను వేరుగా ఉంచడానికి ఐచ్ఛికంగా కొత్త ప్రొఫైల్‌ను సృష్టించవచ్చు. <ph name="LEARN_MORE" /></translation>
@@ -31,8 +31,8 @@
 <translation id="2241627712206172106">మీరు కంప్యూటర్‌ను షేర్‌ చేస్తే, స్నేహితులు, కుటుంబ సభ్యులు విడివిడిగా బ్రౌజ్ చేయవచ్చు. Chromiumను వారికి నచ్చిన రీతిలో సెటప్ చేసుకోవచ్చు.</translation>
 <translation id="2294245788148774212">ఆప్షనల్: విశ్లేషణ మరియు వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపడం ద్వారా Chromium OS ఫీచర్‌లు మరియు పనితీరును మెరుగుపరచడంలో సహాయపడండి.</translation>
 <translation id="2343156876103232566">ఇక్కడి నుండి మీ Android ఫోన్‌కు నంబర్‌ను పంపడానికి, రెండు పరికరాలలోని Chromiumకు సైన్ ఇన్ చేయండి.</translation>
-<translation id="2347108572062610441">ఈ పొడిగింపు మీరు Chromiumని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
-<translation id="2396765026452590966"><ph name="EXTENSION_NAME" /> పొడిగింపు మీరు Chromiumని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
+<translation id="2347108572062610441">ఈ ఎక్స్‌టెన్షన్‌ మీరు Chromiumని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
+<translation id="2396765026452590966"><ph name="EXTENSION_NAME" /> ఎక్స్‌టెన్షన్‌ మీరు Chromiumని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
 <translation id="2483889755041906834">Chromiumలో</translation>
 <translation id="2485422356828889247">అన్ఇన్‌స్టాల్ చేయి</translation>
 <translation id="2535480412977113886">మీ ఖాతా సైన్-ఇన్ వివరాల గడువు ముగిసినందున Chromium OS మీ డేటాను సింక్ చేయలేకపోయింది.</translation>
@@ -86,7 +86,7 @@
 <translation id="3685209450716071127">Chromium మీ పాస్‌వర్డ్‌లను చెక్ చేయలేకపోయింది. మీ ఇంటర్నెట్ కనెక్షన్ సరిచూసుకుని, తర్వాత ట్రై చేయండి.</translation>
 <translation id="370962675267501463">{COUNT,plural, =0{ఈ అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromiumను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు}=1{ఈ అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromiumను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు. మీ అజ్ఞాత విండో మళ్లీ తెరవబడదు.}other{ఈ అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromiumను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు. మీ # అజ్ఞాత విండోలు మళ్లీ తెరవబడవు.}}</translation>
 <translation id="3713809861844741608">కొత్త Chromium &amp;ట్యాబ్‌లో లింక్‌ని తెరువు</translation>
-<translation id="3728336900324680424">చిరునామా బార్‌లో సూచనలు చేయడానికి Chromium మీ డిస్క్‌ను యాక్సెస్ చేస్తుంది</translation>
+<translation id="3728336900324680424">అడ్రస్‌ బార్‌లో సూచనలు చేయడానికి Chromium మీ డిస్క్‌ను యాక్సెస్ చేస్తుంది</translation>
 <translation id="378917192836375108">Chromium వెబ్‌లో ఫోన్ నంబర్ క్లిక్ చేయడానికి మరియు Skypeతో కాల్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది!</translation>
 <translation id="3848258323044014972"><ph name="PAGE_TITLE" /> - Chromium</translation>
 <translation id="388648406173476553">Chromiumను అనుకూలీకరించండి మరియు నియంత్రించండి. మీరు గమనించాల్సిన విషయం ఒకటి ఉంది - వివరాల కోసం క్లిక్ చేయండి.</translation>
@@ -96,7 +96,7 @@
 <translation id="4036079820698952681"><ph name="BEGIN_LINK" />ప్రస్తుత సెట్టింగ్‌లను<ph name="END_LINK" /> నివేదించడం ద్వారా Chromiumను మెరుగుపరచడంలో సహాయపడండి</translation>
 <translation id="4050175100176540509">ముఖ్యమైన భద్రతా మెరుగుదలలు మరియు కొత్త ఫీచర్‌లు తాజా వెర్షన్‌లో అందుబాటులో ఉన్నాయి.</translation>
 <translation id="419998258129752635"><ph name="PAGE_TITLE" /> - నెట్‌వర్క్ సైన్ ఇన్ - Chromium</translation>
-<translation id="421369550622382712">Chromium కోసం గొప్ప యాప్‌లు, ఆటలు, పొడిగింపులు మరియు థీమ్‌లను కనుగొనండి.</translation>
+<translation id="421369550622382712">Chromium కోసం గొప్ప యాప్‌లు, ఆటలు, ఎక్స్‌టెన్షన్‌లు మరియు థీమ్‌లను కనుగొనండి.</translation>
 <translation id="4216212958613226427">Chromium UI ప్రదర్శించడం కోసం ఈ భాష ఉపయోగించబడింది</translation>
 <translation id="4230135487732243613">మీ Chromium డేటాను ఈ ఖాతాకు జోడించాలా?</translation>
 <translation id="4264410486868823224"><ph name="MANAGER" /> కోసం ఈ పరికరాన్ని ఉపయోగించడానికి ముందు కింది సర్వీస్ నియమాలను మీరు చదివి, అంగీకరించాలి. ఈ నియమాలు Google Chromium OS నియమాలను విస్తరింపజేయవు, సవరించవు లేదా పరిమితం చేయవు.</translation>
@@ -280,7 +280,7 @@
 <translation id="8941642502866065432">Chromiumని అప్‌డేట్ చేయడం సాధ్యం కాదు</translation>
 <translation id="8974095189086268230">అదనపు <ph name="BEGIN_LINK_CROS_OSS" />ఓపెన్ సోర్స్ సాఫ్ట్‌వేర్<ph name="END_LINK_CROS_OSS" />పై Chromium OS ఎంతగానో ఆధారపడుతుంది.</translation>
 <translation id="8986207147630327271">మీరు ఈ బ్రౌజర్‌కు వర్క్ ప్రొఫైల్‌ను జోడిస్తున్నారు, ఇంకా మీ అడ్మినిస్ట్రేటర్‌కు వర్క్ ప్రొఫైల్‌పై కంట్రోల్ ఇస్తున్నారు.</translation>
-<translation id="9019929317751753759">Chromiumని సురక్షితం చేయడానికి, మేము క్రింది పొడిగింపుని నిలిపివేసాము, ఇది <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో జాబితా చేయబడలేదు మరియు మీకు తెలియకుండా జోడించబడి ఉండవచ్చు.</translation>
+<translation id="9019929317751753759">Chromiumని సురక్షితం చేయడానికి, మేము క్రింది ఎక్స్‌టెన్షన్‌ను నిలిపివేసాము, ఇది <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో లిస్ట్‌ చేయబడలేదు మరియు మీకు తెలియకుండా జోడించబడి ఉండవచ్చు.</translation>
 <translation id="9089354809943900324">Chromium కాలం చెల్లినది</translation>
 <translation id="9093206154853821181">{0,plural, =1{ఒక గంటలో Chromium తిరిగి ప్రారంభించబడుతుంది}other{# గంటల్లో Chromium తిరిగి ప్రారంభించబడుతుంది}}</translation>
 <translation id="91086099826398415">కొత్త Chromium &amp;ట్యాబ్‌లో లింక్‌ని తెరువు</translation>
diff --git a/chrome/app/resources/chromium_strings_uz.xtb b/chrome/app/resources/chromium_strings_uz.xtb
index f9913918..c343cb13 100644
--- a/chrome/app/resources/chromium_strings_uz.xtb
+++ b/chrome/app/resources/chromium_strings_uz.xtb
@@ -14,6 +14,7 @@
 <translation id="1524282610922162960">Chromium sahifasini namoyish qilish</translation>
 <translation id="1553461853655228091">Chromium atrofingiz 3D xaritasini yaratishi uchun unga kamera ruxsati zarur</translation>
 <translation id="1607715478322902680">{COUNT,plural, =0{Administrator yangilishlarni oʻrnatish uchun Chromium brauzerini qayta ishga tushirishni talab qilmoqda}=1{Administrator yangilishlarni oʻrnatish uchun Chromium brauzerini qayta ishga tushirishni talab qilmoqda Inkognito oynalar qayta ochilmaydi.}other{Administrator yangilishlarni oʻrnatish uchun Chromium brauzerini qayta ishga tushirishni talab qilmoqda # ta inkognito oyna qayta ochilmaydi.}}</translation>
+<translation id="1667812772085710766">Chromium yopilganda siz ochgan sahifalarning cookie fayllari va sayt maʼlumotlari avtomatik tozalanadi</translation>
 <translation id="1708666629004767631">Chromium brauzerining yangi, yanada xavfsiz versiyasi chiqdi.</translation>
 <translation id="1774152462503052664">Chromium fonda ishlashiga ruxsat</translation>
 <translation id="1779356040007214683">Ma’lumotlaringiz xavfsizligini ta’minlash maqsadida ayrim kengaytmalarni o‘chirib qo‘ydik, chunki <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />‘da ular haqida hech qanday ma’lumot yo‘q (ya’ni, ular sizning ruxsatingizsiz o‘rnatilgan bo‘lishi mumkin).</translation>
diff --git a/chrome/app/resources/generated_resources_en-GB.xtb b/chrome/app/resources/generated_resources_en-GB.xtb
index 0391dabf..186db24 100644
--- a/chrome/app/resources/generated_resources_en-GB.xtb
+++ b/chrome/app/resources/generated_resources_en-GB.xtb
@@ -2214,6 +2214,7 @@
 <translation id="3305661444342691068">Open PDF in Preview</translation>
 <translation id="3308116878371095290">This page was prevented from setting cookies.</translation>
 <translation id="3308134619352333507">Hide Button</translation>
+<translation id="3308681281309926497">Sites that you visit can still remember your information until you close Chrome</translation>
 <translation id="3308738399950580893">ads</translation>
 <translation id="3308852433423051161">Loading Google Assistant...</translation>
 <translation id="3309330461362844500">Certificate profile ID</translation>
@@ -2767,6 +2768,7 @@
 <translation id="3873423927483480833">Show PINs</translation>
 <translation id="3873915545594852654">A problem with ARC++ occurred.</translation>
 <translation id="3874164307099183178">Turn on Google Assistant</translation>
+<translation id="3875815154304214043"><ph name="APP_NAME" /> is set to open in a new browser tab. Supported links will also open in the browser. <ph name="BEGIN_LINK_LEARN_MORE" />Learn more<ph name="END_LINK_LEARN_MORE" /></translation>
 <translation id="3877075909000773256">Nearby Share settings for <ph name="USER_NAME" />'s device, sharing under the account <ph name="USER_EMAIL" />.</translation>
 <translation id="3879748587602334249">Download manager</translation>
 <translation id="3882165008614329320">Existing video from camera or file</translation>
@@ -3915,6 +3917,7 @@
 <translation id="5157635116769074044">Pin this Page to Start Screen...</translation>
 <translation id="5159094275429367735">Set up Crostini</translation>
 <translation id="5159419673777902220">Your parent has disabled extension permissions</translation>
+<translation id="5159643365935452998">Review automatic data clearing</translation>
 <translation id="5160634252433617617">Physical keyboard</translation>
 <translation id="5160857336552977725">Sign in to your <ph name="DEVICE_TYPE" /></translation>
 <translation id="5161251470972801814">USB devices from <ph name="VENDOR_NAME" /></translation>
@@ -4478,6 +4481,7 @@
 <translation id="5790651917470750848">Port forward already exists</translation>
 <translation id="5792728279623964091">Please tap your power button</translation>
 <translation id="5793339252089865437">If you download the update over your mobile network, it could result in overage charges.</translation>
+<translation id="5794034487966529952">Desk <ph name="DESK_TITLE" /> has <ph name="NUM_BROWSERS" /> browser windows open</translation>
 <translation id="5794414402486823030">Always open with system viewer</translation>
 <translation id="5794700615121138172">Linux shared folders</translation>
 <translation id="5794786537412027208">Quit all Chrome Apps</translation>
diff --git a/chrome/app/resources/generated_resources_fr-CA.xtb b/chrome/app/resources/generated_resources_fr-CA.xtb
index 432c65f..5237ccb8 100644
--- a/chrome/app/resources/generated_resources_fr-CA.xtb
+++ b/chrome/app/resources/generated_resources_fr-CA.xtb
@@ -159,6 +159,7 @@
 <translation id="1165039591588034296">Erreur</translation>
 <translation id="1166212789817575481">Fermer les onglets à la droite</translation>
 <translation id="1166583374608765787">Revoir la mise à jour du nom</translation>
+<translation id="1166596238782048887">Le tableau <ph name="TAB_TITLE" /> appartient au bureau <ph name="DESK_TITLE" /></translation>
 <translation id="1168020859489941584">Ouverture dans <ph name="TIME_REMAINING" />...</translation>
 <translation id="1170288591054440704">Demander une autorisation quand un site veut utiliser des polices installées sur votre appareil</translation>
 <translation id="1171135284592304528">Mettre en surbrillance l'élément sélectionné par le clavier lorsqu'il est modifié</translation>
@@ -618,6 +619,7 @@
 <translation id="1640235262200048077"><ph name="IME_NAME" /> ne fonctionne pas encore avec les applications Linux</translation>
 <translation id="1640283014264083726">PKCS n° 1 MD4 avec chiffrement RSA</translation>
 <translation id="1641113438599504367">Navigation sécurisée</translation>
+<translation id="1642492862748815878">Connecté à l'appareil <ph name="DEVICE" /> et à <ph name="NUMBER_OF_DEVICES" /> autres appareils Bluetooth</translation>
 <translation id="1642494467033190216">Vous devez supprimer la protection de la racine et redémarrer l’appareil avant d’activer d’autres fonctionnalités de débogage.</translation>
 <translation id="1643072738649235303">Signature X9.62 ECDSA avec SHA-1</translation>
 <translation id="1643921258693943800">Pour utiliser le partage à proximité, activez le Bluetooth et le Wi-Fi</translation>
@@ -1822,6 +1824,7 @@
 <translation id="2885378588091291677">Moniteur d'activité</translation>
 <translation id="2885729872133513017">Un problème est survenu lors du décodage de la réponse du serveur.</translation>
 <translation id="2886771036282400576">• <ph name="PERMISSION" /></translation>
+<translation id="288734198558082692"><ph name="DEVICE" /> et <ph name="NUMBER_OF_DEVICES" /> autres</translation>
 <translation id="2889064240420137087">Ouvrir le lien avec...</translation>
 <translation id="2891922230654533301">Utiliser cet appareil pour vous connecter à <ph name="APP_NAME" />?</translation>
 <translation id="2893168226686371498">Navigateur par défaut</translation>
@@ -2757,6 +2760,7 @@
 <translation id="3884152383786131369">Le contenu Web offert en plusieurs langues utilisera la première langue prise en charge de cette liste. Ces préférences sont synchronisées avec les paramètres de votre navigateur. <ph name="BEGIN_LINK_LEARN_MORE" />En savoir plus<ph name="END_LINK_LEARN_MORE" /></translation>
 <translation id="3885112598747515383">C'est votre administrateur qui gère les mises à jour</translation>
 <translation id="3886446263141354045">Votre demande d'accès à ce site a été envoyée à <ph name="NAME" /></translation>
+<translation id="3887022758415973389">Afficher la liste des appareils</translation>
 <translation id="3888053818972567950">Connexion <ph name="WEB_DRIVE" /></translation>
 <translation id="3888550877729210209">Prendre des notes avec <ph name="LOCK_SCREEN_APP_NAME" /></translation>
 <translation id="3888586133700543064">Ces données nous aident à mieux comprendre le problème que vous éprouvez avec votre Assistant. Elles sont stockées pendant 90 jours, et l'accès est limité aux équipes d'ingénierie et de rétroaction appropriées.</translation>
@@ -3467,6 +3471,7 @@
 <translation id="4662373422909645029">Aucun chiffre dans le pseudo</translation>
 <translation id="4662788913887017617">Partagez ce favori avec votre iPhone</translation>
 <translation id="4663373278480897665">La caméra est autorisée</translation>
+<translation id="4664289193573249666">Gérer la fonctionnalité DNS sécurisé dans les paramètres de Chrome OS</translation>
 <translation id="4664482161435122549">Erreur d'exportation de fichiers PKCS n° 12</translation>
 <translation id="4665014895760275686">Fabricant</translation>
 <translation id="4665446389743427678">Toutes les données stockées par <ph name="SITE" /> seront supprimées.</translation>
@@ -5999,6 +6004,7 @@
 <translation id="7478623944308207463">Vos applications et vos paramètres seront synchronisés sur tous les appareils Chrome OS sur lesquels vous êtes connecté avec votre compte Google. Pour voir les options de synchronisation du navigateur, accédez aux <ph name="LINK_BEGIN" />paramètres de Chrome<ph name="LINK_END" />.</translation>
 <translation id="7478658909253570368">Ne pas autoriser les sites à se connecter à des ports série</translation>
 <translation id="7479221278376295180">Aperçu de l'utilisation de la mémoire</translation>
+<translation id="747981547666531654">Connecté aux appareils Bluetooth <ph name="FIRST_DEVICE" /> et <ph name="SECOND_DEVICE" /></translation>
 <translation id="7481312909269577407">Suivant</translation>
 <translation id="7481358317100446445">Prêt</translation>
 <translation id="748138892655239008">Contraintes de base du certificat</translation>
@@ -6051,6 +6057,7 @@
 <translation id="7531771599742723865">Appareil en cours d'utilisation</translation>
 <translation id="7531779363494549572">Accédez à Paramètres &gt; Applications et notifications &gt; Notifications.</translation>
 <translation id="7532009420053991888"><ph name="LINUX_APP_NAME" /> ne répond pas. Sélectionnez « Forcer la fermeture » pour fermer l'application.</translation>
+<translation id="7535730537657706072">Pour effacer l'historique de navigation privée de votre appareil, fermez tous les onglets de navigation privée</translation>
 <translation id="7535791657097741517">Activer le thème clair</translation>
 <translation id="7537451260744431038">Les sites ne peuvent pas utiliser de témoins pour améliorer votre expérience de navigation, par exemple en vous permettant de rester connecté ou en mémorisant des articles de votre panier d'achats</translation>
 <translation id="753769905878158714">Dans la barre d'adresse, entrez le mot clé pour le site Web que vous voulez trouver. Pour continuer, utilisez un raccourci-clavier.</translation>
@@ -6667,6 +6674,7 @@
 <translation id="8138217203226449454">Vouliez-vous remplacer votre moteur de recherche?</translation>
 <translation id="8138997515734480534">État de <ph name="VM_NAME" /></translation>
 <translation id="8139447493436036221">Fichiers Google Disque</translation>
+<translation id="8140070492745508800"><ph name="FIRST_DEVICE" />, <ph name="SECOND_DEVICE" /></translation>
 <translation id="8141584439523427891">Ouverture dans un navigateur secondaire en cours…</translation>
 <translation id="8141725884565838206">Gérer les mots de passe</translation>
 <translation id="814204052173971714">{COUNT,plural, =1{une vidéo}one{# vidéo}other{# vidéos}}</translation>
@@ -7382,6 +7390,7 @@
 <translation id="8909782404367982052">Clquez et déplacez pour rechercher des images avec Lentille Google</translation>
 <translation id="8909833622202089127">Le site effectue le suivi de votre position</translation>
 <translation id="8910222113987937043">Les modifications apportées à vos favoris, à votre historique, à vos mots de passe et autres paramètres ne seront plus synchronisés avec votre compte Google. Cependant, vos données existantes resteront stockées dans votre compte Google et peuvent être gérées sur <ph name="BEGIN_LINK" />Google Dashboard<ph name="END_LINK" />.</translation>
+<translation id="8910987510378294980">Masquer la liste des appareils</translation>
 <translation id="8912362522468806198">Compte Google</translation>
 <translation id="8912793549644936705">Étirer</translation>
 <translation id="8912810933860534797">Activer l'analyse automatique</translation>
@@ -7499,6 +7508,7 @@
 <translation id="9033765790910064284">Continuer quand même</translation>
 <translation id="9033857511263905942">C&amp;oller</translation>
 <translation id="903480517321259405">Entrez le NIP de nouveau</translation>
+<translation id="9037054491984310631">Connecté à l'appareil Bluetooth <ph name="DEVICE" /></translation>
 <translation id="9037640663275993951">L'appareil n'est pas autorisé</translation>
 <translation id="9037818663270399707">Votre connexion n'est pas privée pour tout le trafic réseau</translation>
 <translation id="9037965129289936994">Afficher la version d'origine</translation>
@@ -7579,6 +7589,7 @@
 <translation id="9112786533191410418">Le fichier <ph name="FILE_NAME" /> pourrait être dangereux. Vous voulez l'envoyer à Google pour se faire analyser?</translation>
 <translation id="9112987648460918699">Rechercher...</translation>
 <translation id="9113240369465613386">Pages impaires uniquement</translation>
+<translation id="9113469270512809735">Basculez entre les éléments récemment fermés</translation>
 <translation id="9114663181201435112">Connectez-vous facilement</translation>
 <translation id="9115675100829699941">&amp;Favoris</translation>
 <translation id="9116465289595958864">Dernière modification</translation>
diff --git a/chrome/app/resources/generated_resources_iw.xtb b/chrome/app/resources/generated_resources_iw.xtb
index e12cba3..fc4ea7c 100644
--- a/chrome/app/resources/generated_resources_iw.xtb
+++ b/chrome/app/resources/generated_resources_iw.xtb
@@ -161,6 +161,7 @@
 <translation id="1165039591588034296">שגיאה</translation>
 <translation id="1166212789817575481">סגירת הכרטיסיות משמאל</translation>
 <translation id="1166583374608765787">בדיקת עדכון השם</translation>
+<translation id="1166596238782048887">הכרטיסייה <ph name="TAB_TITLE" /> שייכת לשולחן העבודה הווירטואלי <ph name="DESK_TITLE" /></translation>
 <translation id="1168020859489941584">הפתיחה תתבצע בעוד <ph name="TIME_REMAINING" />...</translation>
 <translation id="1170288591054440704">תוצג שאלה כשאתר ירצה להשתמש בגופנים שמותקנים במכשיר</translation>
 <translation id="1171135284592304528">הדגשת האובייקט עם מיקוד המקלדת כשהוא משתנה</translation>
@@ -619,6 +620,7 @@
 <translation id="1640235262200048077">‏עורך שיטות הקלט (IME) <ph name="IME_NAME" /> עדיין לא עובד באפליקציות Linux</translation>
 <translation id="1640283014264083726">‏PKCS #1 MD4 עם הצפנת RSA</translation>
 <translation id="1641113438599504367">גלישה בטוחה</translation>
+<translation id="1642492862748815878">‏קיים חיבור אל <ph name="DEVICE" /> ול-<ph name="NUMBER_OF_DEVICES" /> מכשירי Bluetooth נוספים</translation>
 <translation id="1642494467033190216">‏הסרה של הגנת rootfs והפעלה מחדש נדרשות לפני שמפעילים תכונות אחרות של ניפוי באגים.</translation>
 <translation id="1643072738649235303">‏חתימת X9.62 ECDSA עם SHA-1</translation>
 <translation id="1643921258693943800">‏כדי להשתמש באפשרות 'שיתוף בקרבת מקום', יש להפעיל את Bluetooth ו-Wi-Fi</translation>
@@ -1835,6 +1837,7 @@
 <translation id="2885378588091291677">מנהל המשימות</translation>
 <translation id="2885729872133513017">התרחשה בעיה במהלך פענוח תגובת השרת.</translation>
 <translation id="2886771036282400576">• <ph name="PERMISSION" /></translation>
+<translation id="288734198558082692"><ph name="DEVICE" /> ו-<ph name="NUMBER_OF_DEVICES" /> נוספים</translation>
 <translation id="2889064240420137087">פתיחת קישור באמצעות...</translation>
 <translation id="2891922230654533301">להשתמש במכשיר שלך כדי להיכנס לחשבון באתר <ph name="APP_NAME" />?</translation>
 <translation id="2893168226686371498">דפדפן ברירת מחדל</translation>
@@ -2770,6 +2773,7 @@
 <translation id="3884152383786131369">תוכן אינטרנט שזמין במספר שפות יוצג בשפה הנתמכת הראשונה ברשימה הזו. ההעדפות האלה מסונכרנות עם הגדרות הדפדפן. <ph name="BEGIN_LINK_LEARN_MORE" />מידע נוסף<ph name="END_LINK_LEARN_MORE" /></translation>
 <translation id="3885112598747515383">העדכונים מנוהלים על ידי מנהל המערכת</translation>
 <translation id="3886446263141354045">הבקשה שלך לגשת לאתר הזה נשלחה אל <ph name="NAME" /></translation>
+<translation id="3887022758415973389">הצגה של רשימת המכשירים</translation>
 <translation id="3888053818972567950">חיבור אל <ph name="WEB_DRIVE" /></translation>
 <translation id="3888550877729210209">כתיבת הערות בעזרת <ph name="LOCK_SCREEN_APP_NAME" /></translation>
 <translation id="3888586133700543064">‏המידע הזה עוזר לנו להבין בצורה טובה יותר את הבעיה שלך ב-Assistant. הוא נשמר לתקופה של עד 90 ימים והגישה אליו מוגבלת: רק צוותי ההנדסה והמשוב המתאימים רשאים לגשת אליו.</translation>
@@ -3481,6 +3485,7 @@
 <translation id="4662373422909645029">אין לכלול מספרים בכינוי</translation>
 <translation id="4662788913887017617">‏שיתוף הסימנייה באמצעות ה-iPhone</translation>
 <translation id="4663373278480897665">ניתן להשתמש במצלמה בדף זה</translation>
+<translation id="4664289193573249666">‏ניהול DNS מאובטח בהגדרות Chrome OS</translation>
 <translation id="4664482161435122549">‏שגיאת ייצוא של PKCS #12</translation>
 <translation id="4665014895760275686">יצרן</translation>
 <translation id="4665446389743427678">כל הנתונים שמאוחסנים על ידי <ph name="SITE" /> יימחקו.</translation>
@@ -6013,6 +6018,7 @@
 <translation id="7478623944308207463">‏האפליקציות וההגדרות שלך יסתנכרנו בין כל מכשירי Chrome OS שאליהם נכנסת עם חשבון Google שלך. כדי לראות את אפשרויות סנכרון הדפדפן, יש לעבור אל <ph name="LINK_BEGIN" />הגדרות Chrome<ph name="LINK_END" />.</translation>
 <translation id="7478658909253570368">אין לאפשר לאתרים להתחבר ליציאות טוריות</translation>
 <translation id="7479221278376295180">סקירה כללית של השימוש בשטח אחסון</translation>
+<translation id="747981547666531654">‏יש חיבור למכשירי Bluetooth בשם <ph name="FIRST_DEVICE" /> ו-<ph name="SECOND_DEVICE" /></translation>
 <translation id="7481312909269577407">קדימה</translation>
 <translation id="7481358317100446445">מוכן</translation>
 <translation id="748138892655239008">מגבלות בסיסיות של אישור </translation>
@@ -6065,6 +6071,7 @@
 <translation id="7531771599742723865">המכשיר נמצא בשימוש</translation>
 <translation id="7531779363494549572">עוברים אל 'הגדרות' &gt; 'אפליקציות והודעות' &gt; 'הודעות'.</translation>
 <translation id="7532009420053991888">האפליקציה <ph name="LINUX_APP_NAME" /> לא מגיבה. כדי לסגור את האפליקציה, יש לבחור באפשרות "אילוץ סגירה".</translation>
+<translation id="7535730537657706072">כדי למחוק את היסטוריית הגלישה במצב אנונימי מהמכשיר, סוגרים את כל הכרטיסיות של המצב האנונימי.</translation>
 <translation id="7535791657097741517">הפעלת העיצוב הבהיר</translation>
 <translation id="7537451260744431038">‏אתרים לא יכולים להשתמש בקובצי cookie כדי לשפר את חוויית הגלישה – למשל, כדי למנוע ניתוק שלך מהחשבון או כדי לזכור את הפריטים שהוספת לעגלת הקניות</translation>
 <translation id="753769905878158714">בסרגל הכתובות, יש להזין את מילת המפתח של האתר שברצונך לחפש. לאחר מכן, יש להשתמש במקש הקיצור כדי להמשיך.</translation>
@@ -6683,6 +6690,7 @@
 <translation id="8138217203226449454">האם התכוונת לשנות את ספק החיפוש שלך?</translation>
 <translation id="8138997515734480534">הסטטוס של <ph name="VM_NAME" /></translation>
 <translation id="8139447493436036221">‏קבצים ב-Google Drive</translation>
+<translation id="8140070492745508800"><ph name="FIRST_DEVICE" />, <ph name="SECOND_DEVICE" /></translation>
 <translation id="8141584439523427891">נפתח עכשיו בדפדפן חלופי</translation>
 <translation id="8141725884565838206">ניהול הסיסמאות שלך</translation>
 <translation id="814204052173971714">{COUNT,plural, =1{סרטון}two{# סרטונים}many{# סרטונים}other{# סרטונים}}</translation>
@@ -7399,6 +7407,7 @@
 <translation id="8909782404367982052">‏גוררים כדי לחפש תמונות באמצעות Google Lens</translation>
 <translation id="8909833622202089127">האתר עוקב אחרי המיקום שלך</translation>
 <translation id="8910222113987937043">‏שינויים בסימניות, בהיסטוריה, בסיסמאות ובהגדרות אחרות לא יסונכרנו עוד עם חשבון Google שלך. עם זאת, הנתונים הקיימים עדיין יישארו בחשבון Google וניתן לנהל אותם ב<ph name="BEGIN_LINK" />מרכז השליטה של Google<ph name="END_LINK" />.</translation>
+<translation id="8910987510378294980">הסתרת רשימת המכשירים</translation>
 <translation id="8912362522468806198">‏חשבון Google</translation>
 <translation id="8912793549644936705">מתח</translation>
 <translation id="8912810933860534797">הפעלת סריקה אוטומטית</translation>
@@ -7516,6 +7525,7 @@
 <translation id="9033765790910064284">אני רוצה להמשיך בכל זאת</translation>
 <translation id="9033857511263905942">&amp;הדבקה</translation>
 <translation id="903480517321259405">יש להקליד שוב את קוד האימות</translation>
+<translation id="9037054491984310631">‏יש חיבור אל מכשיר Bluetooth בשם <ph name="DEVICE" /></translation>
 <translation id="9037640663275993951">המכשיר לא מורשה</translation>
 <translation id="9037818663270399707">החיבור שלך אינו פרטי בכל התנועה ברשת</translation>
 <translation id="9037965129289936994">הצגת מקור</translation>
@@ -7596,6 +7606,7 @@
 <translation id="9112786533191410418">‏הקובץ <ph name="FILE_NAME" /> עלול להיות מסוכן. לשלוח אל Google לצורך סריקה?</translation>
 <translation id="9112987648460918699">חיפוש...</translation>
 <translation id="9113240369465613386">רק דפים עם מספרים אי-זוגיים</translation>
+<translation id="9113469270512809735">החלפת מצב של הצגת פריטים שנסגרו לאחרונה</translation>
 <translation id="9114663181201435112">כניסה בקלות</translation>
 <translation id="9115675100829699941">&amp;סימניות</translation>
 <translation id="9116465289595958864">שינוי אחרון</translation>
diff --git a/chrome/app/resources/generated_resources_si.xtb b/chrome/app/resources/generated_resources_si.xtb
index a4a7dfb36..cf7eb1e 100644
--- a/chrome/app/resources/generated_resources_si.xtb
+++ b/chrome/app/resources/generated_resources_si.xtb
@@ -2202,6 +2202,7 @@
 <translation id="3305661444342691068">පෙර දැක්මේ PDF විවෘත කරන්න</translation>
 <translation id="3308116878371095290">මෙම පිටුව කුකි පිහිටුවීමෙන් වළක්වන ලදී.</translation>
 <translation id="3308134619352333507">බොත්තම සඟවන්න</translation>
+<translation id="3308681281309926497">ඔබ Chrome වසන තුරු ඔබ පිවිසෙන අඩවිවලට ඔබගේ තොරතුරු මතක තබා ගත හැකිය</translation>
 <translation id="3308738399950580893">වෙළඳ දැන්වීම්</translation>
 <translation id="3308852433423051161">Google සහායක පූරණය කරමින්...</translation>
 <translation id="3309330461362844500">සහතික පැතිකඩ ID</translation>
@@ -2756,6 +2757,7 @@
 <translation id="3873423927483480833">රහස් අංක පෙන්වන්න</translation>
 <translation id="3873915545594852654">ARC++ සමඟ ගැටලුවක් ඇති විය.</translation>
 <translation id="3874164307099183178">Google සහකරු සක්‍රීය කරන්න</translation>
+<translation id="3875815154304214043"><ph name="APP_NAME" /> නව බ්‍රව්සර ටැබයක විවෘත කිරීමට සකසා ඇති අතර, සහාය දක්වන සබැඳි බ්‍රව්සරයේද විවෘත වනු ඇත. <ph name="BEGIN_LINK_LEARN_MORE" />තව දැන ගන්න<ph name="END_LINK_LEARN_MORE" /></translation>
 <translation id="3877075909000773256"><ph name="USER_NAME" />ගේ උපාංගය සඳහා ළඟ බෙදා ගැනීමේ සැකසීම්, <ph name="USER_EMAIL" /> යටතේ බෙදා ගනිමින්.</translation>
 <translation id="3879748587602334249">බාගැනීමේ කළමනාකරු</translation>
 <translation id="3882165008614329320">කැමරාවෙන් හෝ ගොනුවෙන් පවතින වීඩියෝව</translation>
@@ -3903,6 +3905,7 @@
 <translation id="5157635116769074044">මෙම පිටුව ආරම්භක තිරයට අමුණන්න...</translation>
 <translation id="5159094275429367735">Crostini පිහිටුවන්න</translation>
 <translation id="5159419673777902220">ඔබේ මාපියන් විසින් දිගු අවසර අබල කර ඇත</translation>
+<translation id="5159643365935452998">ස්වයංක්‍රිය දත්ත හිස් කිරීම සමාලෝචනය කරන්න</translation>
 <translation id="5160634252433617617">භෞතික යතුරු පුවරුව</translation>
 <translation id="5160857336552977725">ඔබේ <ph name="DEVICE_TYPE" /> වෙත පුරන්න</translation>
 <translation id="5161251470972801814"><ph name="VENDOR_NAME" /> වෙතින් USB උපාංග</translation>
@@ -4467,6 +4470,7 @@
 <translation id="5790651917470750848">පෝර්ට් ඉදිරියට ගෙන යාම දැනටමත් පවතී</translation>
 <translation id="5792728279623964091">ඔබේ බල බොත්තමට තට්ටු කරන්න</translation>
 <translation id="5793339252089865437">ඔබ ඔබේ ජංගම ජාලය හරහා යාවත්කාලීන බාගන්නේ නම්, එයින් වැඩිපුර ගාස්තු ප්‍රතිඵල විය හැක.</translation>
+<translation id="5794034487966529952"><ph name="DESK_TITLE" /> මේසයෙහි බ්‍රවුසර කවුළු <ph name="NUM_BROWSERS" />ක් විවෘත කර ඇත</translation>
 <translation id="5794414402486823030">සෑම විටම පද්ධති දර්ශකය සමග විවෘත කරන්න</translation>
 <translation id="5794700615121138172">ලිනක්ස් බෙදාගත් ෆෝල්ඩර</translation>
 <translation id="5794786537412027208">සියලු Chrome යෙදුම්වලින් ඉවත් වන්න</translation>
diff --git a/chrome/app/resources/generated_resources_te.xtb b/chrome/app/resources/generated_resources_te.xtb
index fd84cd6..4d17525 100644
--- a/chrome/app/resources/generated_resources_te.xtb
+++ b/chrome/app/resources/generated_resources_te.xtb
@@ -169,7 +169,7 @@
 <translation id="1173894706177603556">పేరుమార్చు</translation>
 <translation id="1174073918202301297">షార్ట్‌కట్ జోడించబడింది</translation>
 <translation id="1174366174291287894">Chrome మీకు మరొక విధంగా చెప్తే తప్ప మీ కనెక్షన్ ఎల్లప్పుడూ సురక్షితంగానే ఉంటుంది</translation>
-<translation id="117445914942805388">మీ అన్ని సమకాలీకరించబడుతున్న పరికరాలతో సహా, మీ Google ఖాతా నుండి బ్రౌజింగ్ డేటాను తీసివేయడానికి, <ph name="BEGIN_LINK" />సమకాలీకరణ సెట్టింగ్‌లను సందర్శించండి<ph name="END_LINK" />.</translation>
+<translation id="117445914942805388">మీ అన్ని సమకాలీకరించబడుతున్న పరికరాలతో సహా, మీ Google ఖాతా నుండి బ్రౌజింగ్ డేటాను తీసివేయడానికి, <ph name="BEGIN_LINK" />సింక్‌ సెట్టింగ్‌లను సందర్శించండి<ph name="END_LINK" />.</translation>
 <translation id="1175364870820465910">&amp;ముద్రించు...</translation>
 <translation id="1176471985365269981">మీ పరికరంలోని ఫైళ్లు లేదా ఫోల్డర్‌లను ఎడిట్ చేయడానికి అనుమతించబడలేదు</translation>
 <translation id="1177863135347784049">అనుకూల</translation>
@@ -200,7 +200,7 @@
 <translation id="120368089816228251">సంగీత స్వరం</translation>
 <translation id="1203942045716040624">షేర్ చేయబడిన వర్కర్: <ph name="SCRIPT_URL" /></translation>
 <translation id="1211769675100312947">షార్ట్‌కట్‌లు మీ సందర్శనల ఆధారంగా నిర్వహించబడతాయి</translation>
-<translation id="1213254615020057352">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపడం ద్వారా మీ చిన్నారి Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది మీ చిన్నారిని గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ సెట్టింగ్‌ను యజమాని సెట్ చేశారు. ఈ పరికరానికి సంబంధించిన విశ్లేషణ, వినియోగ డేటాను Googleకు పంపేలా యజమాని ఎంచుకోవచ్చు. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
+<translation id="1213254615020057352">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపడం ద్వారా మీ చిన్నారి Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది మీ చిన్నారిని గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ సెట్టింగ్‌ను యజమాని సెట్ చేశారు. ఈ పరికరానికి సంబంధించిన విశ్లేషణ, వినియోగ డేటాను Googleకు పంపేలా యజమాని ఎంచుకోవచ్చు. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
 <translation id="121384500095351701">ఈ ఫైల్‌ను సురక్షితంగా డౌన్‌లోడ్ చేయడం సాధ్యం కాదు</translation>
 <translation id="1215411991991485844">కొత్త బ్యాక్‌గ్రౌండ్‌ యాప్ జోడించబడింది</translation>
 <translation id="1216542092748365687">వేలిముద్రను తీసివేయండి</translation>
@@ -215,12 +215,12 @@
 <translation id="1221825588892235038">ఎంపిక మాత్రమే</translation>
 <translation id="1223484782328004593"><ph name="APP_NAME" />కు లైసెన్స్ అవసరం</translation>
 <translation id="1223853788495130632">మీ నిర్వాహకుడు ఈ సెట్టింగ్‌కు ఒక ప్రత్యేక విలువను సిఫార్సు చేస్తున్నారు.</translation>
-<translation id="1225177025209879837">అభ్యర్థనను ప్రాసెస్ చేస్తోంది...</translation>
+<translation id="1225177025209879837">రిక్వెస్ట్‌ను ప్రాసెస్ చేస్తోంది...</translation>
 <translation id="1227507814927581609">"<ph name="DEVICE_NAME" />"కు కనెక్ట్ చేస్తున్నప్పుడు ప్రామాణీకరణ విఫలమైంది.</translation>
 <translation id="1230417814058465809">స్టాండర్డ్ రక్షణ ఆన్‌లో ఉంది. మరింత భద్రత కోసం, మెరుగైన రక్షణను ఉపయోగించండి.</translation>
-<translation id="1231733316453485619">సమకాలీకరణను ఆన్ చేయాలా?</translation>
+<translation id="1231733316453485619">సింక్‌ను ఆన్ చేయాలా?</translation>
 <translation id="1232569758102978740">శీర్షికలేనిది</translation>
-<translation id="1233497634904001272">అభ్యర్థనను పూర్తి చేయడానికి మీ సెక్యూరిటీ కీని మళ్లీ తాకండి.</translation>
+<translation id="1233497634904001272">రిక్వెస్ట్‌ను పూర్తి చేయడానికి మీ సెక్యూరిటీ కీని మళ్లీ తాకండి.</translation>
 <translation id="1233721473400465416">లొకేల్</translation>
 <translation id="1234736487471201993">ఈ ఇమేజ్ కోసం QR కోడ్‌ను క్రియేట్ చేయండి</translation>
 <translation id="1234808891666923653">సర్వీస్ వర్కర్‌లు</translation>
@@ -249,9 +249,9 @@
 <translation id="1260451001046713751"><ph name="HOST" /> నుండి ఎల్లప్పుడూ పాప్-అప్‌లు మరియు మళ్ళింపులను అనుమతించు</translation>
 <translation id="1261380933454402672">మధ్యస్థం</translation>
 <translation id="126156426083987769">డెమో మోడ్ పరికర లైసెన్స్‌లకు సంబంధించి ఒక సమస్య ఏర్పడింది.</translation>
-<translation id="1263231323834454256">పఠన జాబితా</translation>
+<translation id="1263231323834454256">పఠన లిస్ట్‌</translation>
 <translation id="1263490604593716556"><ph name="FIRST_PARENT_EMAIL" />, <ph name="SECOND_PARENT_EMAIL" /> ద్వారా ఖాతా నిర్వహించబడుతోంది. ఈ పరికరంలోని ప్రాథమిక ఖాతా నుండి సైన్ అవుట్ చేయడానికి, మీ స్క్రీన్‌పై సమయాన్ని క్లిక్ చేయండి. అది కనిపించే మెనూలో, "సైన్ అవుట్" క్లిక్ చేయండి.</translation>
-<translation id="1263733306853729545">అభ్యర్థి జాబితాను పేజీ చేయడానికి <ph name="MINUS" />, <ph name="EQUAL" /> కీలను ఉపయోగించండి</translation>
+<translation id="1263733306853729545">అభ్యర్థి లిస్ట్‌ను పేజీ చేయడానికి <ph name="MINUS" />, <ph name="EQUAL" /> కీలను ఉపయోగించండి</translation>
 <translation id="126387934568812801">ఈ స్క్రీన్‌షాట్‌ను, తెరిచి ఉన్న ట్యాబ్‌ల శీర్షికలను చేర్చడం</translation>
 <translation id="1264337193001759725">నెట్‌వర్క్ UI లాగ్‌లను చూడటానికి, ఈ లింక్‌ను చూడండి: <ph name="DEVICE_LOG_LINK" /></translation>
 <translation id="126710816202626562">అనువాద భాష:</translation>
@@ -296,7 +296,7 @@
 <translation id="1313660246522271310">తెరిచిన ట్యాబ్‌లతో సహా, అన్ని సైట్‌ల నుండి మీరు సైన్ అవుట్ చేయబడతారు</translation>
 <translation id="1313705515580255288">మీ బుక్‌మార్క్‌లు, చరిత్ర, ఇతర సెట్టింగ్‌లు మీ Google ఖాతాకు సింక్ చేయ‌బ‌డ‌తాయి.</translation>
 <translation id="1316136264406804862">శోధిస్తోంది...</translation>
-<translation id="1316495628809031177">సమకాలీకరణ పాజ్ చేయబడింది</translation>
+<translation id="1316495628809031177">సింక్‌ పాజ్ చేయబడింది</translation>
 <translation id="1317637799698924700">మీ డాకింగ్ స్టేషన్, USB టైప్-సి అనుకూలత మోడ్‌లో ఆపరేట్ చేయబడుతుంది.</translation>
 <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> సబ్‌పేజీ 'వెనుకకు' బటన్</translation>
 <translation id="1322046419516468189">మీ <ph name="SAVED_PASSWORDS_STORE" />లో సేవ్ చేసిన పాస్‌వర్డ్‌లను చూడండి మరియు నిర్వహించండి</translation>
@@ -343,7 +343,7 @@
 <translation id="1373176046406139583">మీ స్క్రీన్ అన్‌లాక్ చేసి ఉన్నప్పుడు, మీతో ఎవరు షేర్ చేయవచ్చనే విషయాన్ని, పరికరం విజిబిలిటీ కంట్రోల్ చేస్తుంది. <ph name="LINK_BEGIN" />మరింత తెలుసుకోండి<ph name="LINK_END" /></translation>
 <translation id="1374844444528092021">"<ph name="NETWORK_NAME" />" నెట్‌వర్క్‌కు అవసరమైన ప్రమాణపత్రం ఇన్‌స్టాల్ చేయబడలేదు లేదా చెల్లదు. దయచేసి క్రొత్త ప్రమాణపత్రాన్ని పొందండి మరియు మళ్లీ కనెక్ట్ చేయడాన్ని ప్రయత్నించండి.</translation>
 <translation id="1375321115329958930">సేవ్ చేసిన పాస్‌వర్డ్‌లు</translation>
-<translation id="137651782282853227">సేవ్ చేసిన చిరునామాలు ఇక్కడ కనిపిస్తాయి</translation>
+<translation id="137651782282853227">సేవ్ చేసిన అడ్రస్‌లు ఇక్కడ కనిపిస్తాయి</translation>
 <translation id="1376771218494401509">పేరు &amp;విండో...</translation>
 <translation id="1377600615067678409">ప్రస్తుతానికి దాటవేయి</translation>
 <translation id="1378613616312864539"><ph name="NAME" /> ఈ సెట్టింగ్‌ని నియంత్రిస్తున్నారు</translation>
@@ -435,7 +435,7 @@
 <translation id="1464044141348608623">మీరు మీ పరికరాన్ని యాక్టివ్‌గా ఉపయోగించే సమయాలను తెలుసుకోవడానికి సైట్‌లను అనుమతించకండి</translation>
 <translation id="1464258312790801189">మీ ఖాతాలు</translation>
 <translation id="1464781208867302907">పరికర ప్రాధాన్యతల కోసం, సెట్టింగ్‌లకు వెళ్లండి.</translation>
-<translation id="1465176863081977902">ఆడియో చిరునామాను కా&amp;పీ చేయండి</translation>
+<translation id="1465176863081977902">ఆడియో అడ్రస్‌ను కా&amp;పీ చేయండి</translation>
 <translation id="1465827627707997754">పిజ్జా ముక్క</translation>
 <translation id="1468571364034902819">ఈ ప్రొఫైల్‌ను ఉపయోగించలేరు</translation>
 <translation id="1470084204649225129">{NUM_TABS,plural, =1{ట్యాబ్‌ను కొత్త గ్రూప్‌నకు జోడించు}other{ట్యాబ్‌లను కొత్త గ్రూప్‌నకు జోడించు}}</translation>
@@ -582,7 +582,7 @@
 <translation id="1614511179807650956">మీరు మీకు అనుమతించిన మొబైల్ డేటాను పూర్తిగా ఉపయోగించి ఉండవచ్చు. మరింత డేటాను కొనుగోలు చేయడానికి <ph name="NAME" /> యాక్టివేషన్ పోర్టల్‌ను సందర్శించండి</translation>
 <translation id="161460670679785907">మీ ఫోన్‌ను గుర్తించడం సాధ్యపడలేదు</translation>
 <translation id="1615402009686901181">గోప్యమైన కంటెంట్ కనిపించినప్పుడు, అడ్మినిస్ట్రేటర్ పాలసీ స్క్రీన్ క్యాప్చర్‌ను డిజేబుల్ చేస్తుంది</translation>
-<translation id="1616206807336925449">ఈ పొడిగింపుకు ప్రత్యేక అనుమతులు ఏవీ అవసరం లేదు.</translation>
+<translation id="1616206807336925449">ఈ ఎక్స్‌టెన్షన్‌కు ప్రత్యేక అనుమతులు ఏవీ అవసరం లేదు.</translation>
 <translation id="1616298854599875024">ఇది షేర్ చేసిన మాడ్యూల్ కానందున ఎక్స్‌టెన్షన్ "<ph name="IMPORT_NAME" />"ను దిగుమతి చేయడం సాధ్యపడలేదు</translation>
 <translation id="1617765145568323981">{NUM_FILES,plural, =0{మీ సంస్థకు చెందిన భద్రతా పాలసీలతో ఈ డేటాను తనిఖీ చేస్తోంది...}=1{మీ సంస్థకు చెందిన భద్రతా పాలసీలతో ఈ ఫైల్‌ను తనిఖీ చేస్తోంది...}other{మీ సంస్థకు చెందిన భద్రతా పాలసీలతో ఈ ఫైల్స్‌ను తనిఖీ చేస్తోంది...}}</translation>
 <translation id="1618102204889321535"><ph name="CURRENT_CHARACTER_COUNT" />/<ph name="MAX_CHARACTER_COUNT" /></translation>
@@ -660,13 +660,13 @@
 <translation id="1682867089915960590">క్యారెట్ బ్రౌజింగ్‌ను ఆన్ చేయాలా?</translation>
 <translation id="1684279041537802716">ముదురు రంగు</translation>
 <translation id="1686550358074589746">'పదం పూర్తయ్యేదాకా వేలిని తీసివేయకుండా టైప్ చేయడం'ను ఎనేబుల్ చేయండి</translation>
-<translation id="168715261339224929">మీ బుక్‌మార్క్‌లను మీ అన్ని పరికరాలలోనూ పొందాలంటే, సమకాలీకరణను ఆన్ చేయండి.</translation>
+<translation id="168715261339224929">మీ బుక్‌మార్క్‌లను మీ అన్ని పరికరాలలోనూ పొందాలంటే, సింక్‌ను ఆన్ చేయండి.</translation>
 <translation id="1688867105868176567">సైట్ డేటాని క్లియర్ చేయాలా?</translation>
 <translation id="1688935057616748272">అక్షరాన్ని టైప్ చేయండి</translation>
 <translation id="168991973552362966">సమీపంలోని ప్రింటర్‌ను జోడించండి</translation>
 <translation id="1689945336726856614">&amp;URLను కాపీ చేయండి</translation>
 <translation id="1692115862433274081">మరో ఖాతాను ఉపయోగించు</translation>
-<translation id="1692118695553449118">సమకాలీకరణ ఆన్‌లో ఉంది</translation>
+<translation id="1692118695553449118">సింక్‌ ఆన్‌లో ఉంది</translation>
 <translation id="1692210323591458290">ముదురు వంగ రంగు</translation>
 <translation id="169675691788639886">పరికరానికి SSH సర్వర్ కాన్ఫిగ‌ర్ చేయబడింది. గోప్యమైన ఖాతాలతో సైన్ ఇన్ చేయవద్దు.</translation>
 <translation id="1697150536837697295">కళ</translation>
@@ -707,9 +707,9 @@
 <translation id="1727662110063605623"><ph name="USB_DEVICE_NAME" />ను Parallels Desktop లేదా Linuxకు కనెక్ట్ చేయడానికి సెట్టింగ్‌లను తెరవండి</translation>
 <translation id="1729533290416704613">ఓమ్నిబాక్స్ నుండి వెతికేటప్పుడు చూపబడే పేజీని కూడా ఇది నియంత్రిస్తుంది.</translation>
 <translation id="1730917990259790240"><ph name="BEGIN_PARAGRAPH1" />యాప్‌లను తీసివేయడానికి, సెట్టింగ్‌లు &gt; Google Play స్టోర్ &gt; Android ప్రాధాన్యతలను నిర్వహించు &gt; యాప్‌లు లేదా అప్లికేషన్ మేనేజర్‌కి వెళ్లండి. ఆ తర్వాత, మీరు అన్ఇన్‌స్టాల్ చేయాలనుకుంటున్న యాప్‌ని నొక్కండి (మీరు యాప్‌ని కనుగొనడం కోసం ఎడమ లేదా కుడి వైపునకు స్వైప్ చేయాల్సి రావచ్చు). ఆపై, అన్ఇన్‌స్టాల్ చేయి లేదా నిలిపివేయి ఎంపికను నొక్కండి.<ph name="END_PARAGRAPH1" /></translation>
-<translation id="1731911755844941020">అభ్యర్థనను పంపుతోంది...</translation>
+<translation id="1731911755844941020">రిక్వెస్ట్‌ను పంపుతోంది...</translation>
 <translation id="1733064249834771892">ఫాంట్‌లు</translation>
-<translation id="1733383495376208985">సింక్ చేసిన డేటాను మీ స్వంత <ph name="BEGIN_LINK" />సింక్ రహస్య పదబంధం<ph name="END_LINK" />తో ఎన్‌క్రిప్ట్ చేయండి. Google Payకు చెందిన చెల్లింపు పద్ధతులు, చిరునామాలు ఇందులో ఉండవు.</translation>
+<translation id="1733383495376208985">సింక్ చేసిన డేటాను మీ స్వంత <ph name="BEGIN_LINK" />సింక్ రహస్య పదబంధం<ph name="END_LINK" />తో ఎన్‌క్రిప్ట్ చేయండి. Google Payకు చెందిన చెల్లింపు పద్ధతులు, అడ్రస్‌లు ఇందులో ఉండవు.</translation>
 <translation id="1734212868489994726">లేత నీలి రంగు</translation>
 <translation id="1734230530703461088">సమయ పరిమితి లోపల ఎక్స్‌టెన్షన్‌లను లోడ్ చేయడంలో విఫలమైంది. దయచేసి మీ అడ్మినిస్ట్రేటర్‌ను సంప్రదించండి.</translation>
 <translation id="1734824808160898225"><ph name="PRODUCT_NAME" /> తనకు తాను అప్‌డేట్ అవుతూ ఉండటం సాధ్యం కాకపోవచ్చు</translation>
@@ -764,7 +764,7 @@
 <translation id="1781291988450150470">ప్రస్తుత పిన్‌</translation>
 <translation id="1781398670452016618">ఇప్పుడే మీరు Wi-Fiకి కనెక్ట్ అయ్యి, అప్‌డేట్‌ను డౌన్‌లోడ్‌ చేయాలని <ph name="DOMAIN" /> తెలియజేస్తోంది.</translation>
 <translation id="1781502536226964113">కొత్త‌ ట్యాబ్ పేజీని తెరువు</translation>
-<translation id="1781771911845953849">ఖాతాలు మరియు సమకాలీకరణ</translation>
+<translation id="1781771911845953849">ఖాతాలు మరియు సింక్‌</translation>
 <translation id="1781979858217752599">విండో ఆడియోను షేర్ చేయండి</translation>
 <translation id="1782101999402987960">మీ అడ్మినిస్ట్రేటర్ ద్వారా అప్‌డేట్‌లు బ్లాక్ చేయబడ్డాయి</translation>
 <translation id="1782196717298160133">మీ ఫోన్‌ను కనుగొంటోంది</translation>
@@ -778,7 +778,7 @@
 <translation id="1794791083288629568">ఈ సమస్యను పరిష్కరించడంలో మాకు సహాయం చేయడానికి అభిప్రాయాన్ని పంపుతుంది.</translation>
 <translation id="1795214765651529549">క్లాసిక్‌ను ఉపయోగించు</translation>
 <translation id="1796588414813960292">సౌండ్ అవసరం అయ్యే ఫీచర్‌లు పని చేయవు</translation>
-<translation id="1799071797295057738">"<ph name="EXTENSION_NAME" />" పొడిగింపు ఆటోమేటిక్‌గా నిలిపివేయబడింది.</translation>
+<translation id="1799071797295057738">"<ph name="EXTENSION_NAME" />" ఎక్స్‌టెన్షన్‌ ఆటోమేటిక్‌గా నిలిపివేయబడింది.</translation>
 <translation id="1801418420130173017">ముదురు రంగు రూపాన్ని డిజేబుల్ చేయండి</translation>
 <translation id="1802624026913571222">కవర్ మూసి ఉన్నప్పుడు స్లీప్ స్థితికి వెళ్లు</translation>
 <translation id="1802687198411089702">పేజీ ప్రతిస్పందించడం లేదు. మీరు దాని కోసం వేచి ఉండవచ్చు లేదా మూసివేయవచ్చు.</translation>
@@ -908,7 +908,7 @@
 <translation id="1923468477587371721">మీరు విడిగా ప్రోడక్ట్ భాషను మార్చితే తప్ప, Gmail, Drive, ఇంకా YouTube వంటి Google సైట్‌లు మీ Google ఖాతా భాషను ఉపయోగిస్తాయి</translation>
 <translation id="192494336144674234">దీనితో తెరువు</translation>
 <translation id="1925017091976104802">అతికించడానికి <ph name="MODIFIER_KEY_DESCRIPTION" />ను నొక్కండి</translation>
-<translation id="1925021887439448749">అనుకూల వెబ్ చిరునామాను నమోదు చేయండి</translation>
+<translation id="1925021887439448749">అనుకూల వెబ్ అడ్రస్‌ను నమోదు చేయండి</translation>
 <translation id="1925124445985510535">భద్రతా తనిఖీ <ph name="TIME" />కు రన్ చేయబడింది</translation>
 <translation id="1926339101652878330">ఈ సెట్టింగ్‌లను ఎంటర్‌ప్రైజ్ విధానం నియంత్రిస్తుంది. మరింత సమాచారం కోసం, దయచేసి మీ నిర్వాహకుడిని సంప్రదించండి.</translation>
 <translation id="1927632033341042996">వేలు <ph name="NEW_FINGER_NUMBER" /></translation>
@@ -990,7 +990,7 @@
 <translation id="2018352199541442911">క్షమించండి, ఈ సమయంలో మీ బాహ్య నిల్వ పరికరానికి మద్దతు లేదు.</translation>
 <translation id="2018615379714355980">PC వైర్ ద్వారా, అలాగే Chromecast Wi-Fi ద్వారా కనెక్ట్ చేసి ఉన్నాయి</translation>
 <translation id="2019718679933488176">కొత్త ట్యాబ్‌లో ఆడియోను &amp;తెరవండి</translation>
-<translation id="2020183425253392403">నెట్‌వర్క్ చిరునామా సెట్టింగ్‌లను చూపు</translation>
+<translation id="2020183425253392403">నెట్‌వర్క్ అడ్రస్‌ సెట్టింగ్‌లను చూపు</translation>
 <translation id="2020225359413970060">ఫైల్‌ను స్కాన్ చేయి</translation>
 <translation id="2023167225947895179">PIN సులభంగా ఊహించగలిగేలా ఉండవచ్చు</translation>
 <translation id="202352106777823113">డౌన్‌లోడ్‌కు చాలా సమయం పడుతుంది మరియు నెట్‌వర్క్ ద్వారా నిలిపివేయబడింది.</translation>
@@ -1082,7 +1082,7 @@
 <translation id="2116619964159595185">తక్కువ శక్తి గల బీకాన్, ఆరోగ్యం లేదా ఫిట్‌నెస్ ట్రాకర్, లేదా స్మార్ట్ లైట్ బల్బ్‌లను సెటప్ చేయడం లేదా సింక్ చేయడం వంటి ఫీచర్‌ల కోసం సైట్‌లు సాధారణంగా బ్లూటూత్ పరికరాలకు కనెక్ట్ అవుతాయి</translation>
 <translation id="2119349053129246860"><ph name="APP" />లో తెరువు</translation>
 <translation id="2119461801241504254">సురక్షిత బ్రౌజింగ్ ఆన్‌లో ఉంది, హానికరమైన సైట్‌లు, డౌన్‌లోడ్‌ల నుండి మిమ్మల్ని రక్షిస్తోంది</translation>
-<translation id="2120297377148151361">కార్యకలాపం మరియు పరస్పర చర్యలు</translation>
+<translation id="2120297377148151361">యాక్టివిటీ మరియు పరస్పర చర్యలు</translation>
 <translation id="2120639962942052471">'<ph name="PERMISSION" />'ను బ్లాక్ చేశారు</translation>
 <translation id="2121055421682309734">{COUNT,plural, =0{కుక్కీలు బ్లాక్ చేయబడ్డాయి}=1{కుక్కీలు బ్లాక్ చేయబడ్డాయి, 1 మినహాయింపు}other{కుక్కీలు బ్లాక్ చేయబడ్డాయి, {COUNT} మినహాయింపులు}}</translation>
 <translation id="2121825465123208577">పరిమాణం మార్చు</translation>
@@ -1144,7 +1144,7 @@
 <translation id="2169062631698640254">ఏదేమైనా సైన్ ఇన్ చేయి</translation>
 <translation id="2170054054876170358">మీ ఫోన్ సమీపంలోనే ఉండి, అలాగే బ్లూటూత్, Wi-Fi ఆన్ చేయబడి ఉందని నిర్ధారించుకోండి.</translation>
 <translation id="2173302385160625112">మీ ఇంటర్నెట్ కనెక్షన్‌ను తనిఖీ చేయండి</translation>
-<translation id="2173801458090845390">ఈ పరికరానికి అభ్యర్థన IDని జోడించండి</translation>
+<translation id="2173801458090845390">ఈ పరికరానికి రిక్వెస్ట్‌ IDని జోడించండి</translation>
 <translation id="2174948148799307353"><ph name="PARENT_EMAIL" /> ద్వారా ఖాతా నిర్వహించబడుతోంది. ఈ పరికరంలోని ప్రాథమిక ఖాతా నుండి సైన్ అవుట్ చేయడానికి, మీ స్క్రీన్‌పై సమయాన్ని క్లిక్ చేయండి. అది కనిపించే మెనూలో, "సైన్ అవుట్" క్లిక్ చేయండి.</translation>
 <translation id="2175607476662778685">త్వరిత ప్రారంభ బార్</translation>
 <translation id="217576141146192373">ప్రింటర్‌ను జోడించడం సాధ్యపడలేదు. దయచేసి మీ ప్రింటర్ కాన్ఫిగరేషన్ తనిఖీ చేసుకుని, ఆపై మళ్లీ ప్రయత్నించండి.</translation>
@@ -1158,7 +1158,7 @@
 <translation id="2186711480981247270">మరో పరికరం నుండి పేజీ షేర్ చేయబడింది</translation>
 <translation id="2187675480456493911">మీ ఖాతాలోని ఇతర పరికరాలతో సింక్ చేయబడింది. ఇతర యూజర్‌ల చేత మార్చబడిన సెట్టింగ్‌లు సింక్ చేయబడవు. <ph name="LINK_BEGIN" />మరింత తెలుసుకోండి<ph name="LINK_END" /></translation>
 <translation id="2187895286714876935">సర్వర్ ప్రమాణపత్రం దిగుమతి లోపం</translation>
-<translation id="2187906491731510095">పొడిగింపులు నవీకరించబడ్డాయి</translation>
+<translation id="2187906491731510095">ఎక్స్‌టెన్షన్‌లు నవీకరించబడ్డాయి</translation>
 <translation id="2188881192257509750"><ph name="APPLICATION" />ని తెరువు</translation>
 <translation id="2189787291884708275">ట్యాబ్ ఆడియోను షేర్ చేయండి</translation>
 <translation id="2190069059097339078">WiFi క్రెడెన్షియల్స్ గెట్టర్</translation>
@@ -1174,7 +1174,7 @@
 <translation id="2199719347983604670">Chrome సింక్ నుండి డేటా</translation>
 <translation id="2200094388063410062">ఇమెయిల్</translation>
 <translation id="2200356397587687044">కొనసాగడానికి Chromeకి అనుమతి అవసరం</translation>
-<translation id="2202898655984161076">ముద్రణలను జాబితా చెయ్యడంలో సమస్య ఉంది. <ph name="CLOUD_PRINT_NAME" />తో మీ ముద్రణలలో కొన్ని విజయవంతంగా నమోదు చెయ్యబడకపోయి ఉండవచ్చు.</translation>
+<translation id="2202898655984161076">ముద్రణలను లిస్ట్‌ చెయ్యడంలో సమస్య ఉంది. <ph name="CLOUD_PRINT_NAME" />తో మీ ముద్రణలలో కొన్ని విజయవంతంగా నమోదు చెయ్యబడకపోయి ఉండవచ్చు.</translation>
 <translation id="2203088913459920044">పేరులో అక్షరాలు, నంబర్‌లు, ప్రత్యేక అక్షరాలను ఉపయోగించవచ్చు</translation>
 <translation id="2204034823255629767">మీరు టైప్ చేసేదాన్ని చదవడం మరియు మార్చడం</translation>
 <translation id="220858061631308971">దయచేసి ఈ PIN కోడ్‌ను "<ph name="DEVICE_NAME" />"లో నమోదు చేయండి:</translation>
@@ -1324,7 +1324,7 @@
 <translation id="2348729153658512593"><ph name="WINDOW_TITLE" /> - అనుమతి కోసం రిక్వెస్ట్ చేశారు, ప్రతిస్పందించడానికి Ctrl + Forwardను నొక్కండి</translation>
 <translation id="234889437187286781">డేటాను లోడ్ చేయడంలో ఎర్రర్ ఏర్పడింది</translation>
 <translation id="2349610121459545414">మీ లొకేషన్‌ను యాక్సెస్ చేయడానికి ఈ సైట్‌కు అనుమతిని కొనసాగించు</translation>
-<translation id="2349896577940037438">మీ అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. మీరు account.google.comలో మీ డేటాను చూడవచ్చు, దానిని తొలగించవచ్చు, మీ ఖాతా సెట్టింగ్‌లను మార్చవచ్చు.</translation>
+<translation id="2349896577940037438">మీ అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. మీరు account.google.comలో మీ డేటాను చూడవచ్చు, దానిని తొలగించవచ్చు, మీ ఖాతా సెట్టింగ్‌లను మార్చవచ్చు.</translation>
 <translation id="2350133097354918058">మళ్లీ లోడ్ చేయబడింది</translation>
 <translation id="2350182423316644347">అప్లికేషన్‌ను ప్రారంభిస్తోంది...</translation>
 <translation id="2350796302381711542"><ph name="REPLACED_HANDLER_TITLE" />కి బదులుగా అన్ని <ph name="PROTOCOL" /> లింక్‌లను తెరవడానికి <ph name="HANDLER_HOSTNAME" />ను అనుమతించాలా?</translation>
@@ -1400,7 +1400,7 @@
 <translation id="2435457462613246316">పాస్‌వర్డ్‌ను చూపించు</translation>
 <translation id="2436186046335138073">అన్ని <ph name="PROTOCOL" /> లింక్‌లను తెరవడానికి <ph name="HANDLER_HOSTNAME" />ను అనుమతించాలా?</translation>
 <translation id="2440604414813129000">&amp;సోర్స్‌ను చూడండి</translation>
-<translation id="244231003699905658">చిరునామా చెల్లదు. దయచేసి చిరునామాను తనిఖీ చేసి, ఆపై మళ్లీ ప్రయత్నించండి.</translation>
+<translation id="244231003699905658">అడ్రస్‌ చెల్లదు. దయచేసి అడ్రస్‌ను తనిఖీ చేసి, ఆపై మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="2442916515643169563">వచన నీడ</translation>
 <translation id="2443487764245141020">ఐడెంటిఫయర్‌‌ను ఉపయోగించి సైట్‌లు మీ పరికరాన్ని గుర్తించాల్సిన అవసరం కూడా ఉంది</translation>
 <translation id="2445081178310039857">ఎక్స్‌టెన్ష‌న్‌ మూలం డైరెక్టరీ అవసరం.</translation>
@@ -1433,7 +1433,7 @@
 <translation id="2469259292033957819">మీ వద్ద సేవ్ చేసిన ప్రింటర్‌లు ఏవీ లేవు.</translation>
 <translation id="2469375675106140201">స్పెల్ చెక్‌ను అనుకూలంగా మార్చు</translation>
 <translation id="247051149076336810">ఫైల్ షేర్ URL</translation>
-<translation id="2470702053775288986">మద్దతు లేని పొడిగింపులు నిలిపివేయబడ్డాయి</translation>
+<translation id="2470702053775288986">మద్దతు లేని ఎక్స్‌టెన్షన్‌లు నిలిపివేయబడ్డాయి</translation>
 <translation id="2471469610750100598">నలుపు (ఆటోమేటిక్ సెట్టింగ్)</translation>
 <translation id="2471506181342525583">లొకేషన్ యాక్సెస్ అనుమతించబడింది</translation>
 <translation id="2473195200299095979">ఈ పేజీని అనువదించండి</translation>
@@ -1452,7 +1452,7 @@
 <translation id="2487268545026948104">మీ డేటాను పునరుద్ధరించడానికి, ఇంటర్నెట్‌కు కనెక్ట్ అవండి</translation>
 <translation id="2489829450872380594">తర్వాతసారి, ఈ <ph name="DEVICE_TYPE" />‌ను కొత్త ఫోన్ అన్‌లాక్ చేస్తుంది. మీరు సెట్టింగ్‌లలో స్మార్ట్ లాక్‌ను ఆఫ్ చేయవచ్చు.</translation>
 <translation id="2489918096470125693">&amp;ఫోల్డర్‌ను జోడించు...</translation>
-<translation id="2490481887078769936">జాబితా నుండి '<ph name="FILE_NAME" />' తీసివేయబడింది</translation>
+<translation id="2490481887078769936">లిస్ట్‌ నుండి '<ph name="FILE_NAME" />' తీసివేయబడింది</translation>
 <translation id="249113932447298600">క్షమించండి, ఈ సమయంలో <ph name="DEVICE_LABEL" /> పరికరానికి మద్దతు లేదు.</translation>
 <translation id="2492461744635776704">సర్టిఫికెట్ సైనింగ్ రిక్వెస్ట్‌ను సిద్ధం చేస్తోంది</translation>
 <translation id="2493126929778606526">ఆటోమేటిక్‌గా ఎంపిక చేసిన మీ ఉత్తమ ఫోటోలు</translation>
@@ -1506,7 +1506,7 @@
 <translation id="2537927931785713436">వర్చువల్ మెషిన్ ఇమేజ్‌ను తనిఖీ చేస్తోంది</translation>
 <translation id="2538084450874617176"><ph name="DEVICE_TYPE" />ను ఎవరు ఉపయోగిస్తున్నారు?</translation>
 <translation id="2538361623464451692">సింక్ నిలిపివేయబడింది</translation>
-<translation id="2540449034743108469">ఎక్స్‌టెన్షన్ కార్యకలాపాలను వినడానికి "ప్రారంభించు" నొక్కండి</translation>
+<translation id="2540449034743108469">ఎక్స్‌టెన్షన్ యాక్టివిటీలను వినడానికి "ప్రారంభించు" నొక్కండి</translation>
 <translation id="2540651571961486573">ఏదో తప్పు జరిగింది. ఎర్రర్ కోడ్: <ph name="ERROR_CODE" />.</translation>
 <translation id="2541002089857695151">పూర్తిస్క్రీన్ ప్రసారాన్ని ఆప్టిమైజ్ చేయాలా?</translation>
 <translation id="2541706104884128042">కొత్త నిద్ర సమయం సెట్ చేయబడింది</translation>
@@ -1557,7 +1557,7 @@
 <translation id="2606454609872547359">వద్దు, ChromeVox లేకుండా కొనసాగించు</translation>
 <translation id="2606568927909309675">ఇంగ్లీష్ ఆడియో, వీడియో కోసం క్యాప్షన్‌లను ఆటోమేటిక్‌గా క్రియేట్ చేస్తుంది. ఆడియో, క్యాప్షన్‌లు ఎప్పటికీ మీ పరికరంలోనే ఉంటాయి.</translation>
 <translation id="2607101320794533334">విషయం పబ్లిక్ కీ సమాచారం</translation>
-<translation id="2609896558069604090">సత్వరమార్గాలను క్రియేట్ చేయండి...</translation>
+<translation id="2609896558069604090">షార్ట్‌కట్‌లను క్రియేట్ చేయండి...</translation>
 <translation id="2609980095400624569">కనెక్షన్‌ను ఏర్పాటు చేయడం సాధ్యపడలేదు</translation>
 <translation id="2610157865375787051">నిద్రావస్థ</translation>
 <translation id="2610260699262139870">&amp;సాధారణ పరిమాణం</translation>
@@ -1601,7 +1601,7 @@
 <translation id="2653659639078652383">సమర్పించు</translation>
 <translation id="265390580714150011">ఫీల్డ్ విలువ</translation>
 <translation id="2654166010170466751">చెల్లింపు హ్యాండ్లర్‌లను ఇన్‌స్టాల్ చేయడానికి సైట్‌లను అనుమతించండి</translation>
-<translation id="2654553774144920065">ప్రింట్ అభ్యర్థన</translation>
+<translation id="2654553774144920065">ప్రింట్ రిక్వెస్ట్‌</translation>
 <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />పరికరాన్ని బట్టి ఫీచర్‌లు మారతాయి</translation>
 <translation id="2659971421398561408">Crostini డిస్క్ పరిమాణం మార్పు</translation>
 <translation id="2660779039299703961">ఈవెంట్</translation>
@@ -1628,7 +1628,7 @@
 <translation id="2681124317993121768">గెస్ట్ ప్రొఫైల్‌లు సపోర్ట్ చేయవు</translation>
 <translation id="2682498795777673382">మీ తల్లి/తండ్రి నుండి అప్‌డేట్</translation>
 <translation id="2683638487103917598">ఫోల్డర్ క్రమబద్ధీకరించబడింది</translation>
-<translation id="2684004000387153598">కొనసాగించడానికి, సరే క్లిక్ చేసి, ఆపై మీ ఇమెయిల్ చిరునామా కోసం కొత్త ప్రొఫైల్‌ను రూపొందించడానికి వ్యక్తిని జోడించు క్లిక్ చేయండి.</translation>
+<translation id="2684004000387153598">కొనసాగించడానికి, సరే క్లిక్ చేసి, ఆపై మీ ఇమెయిల్ అడ్రస్‌ కోసం కొత్త ప్రొఫైల్‌ను రూపొందించడానికి వ్యక్తిని జోడించు క్లిక్ చేయండి.</translation>
 <translation id="2687403674020088961">అన్ని కుక్కీలను బ్లాక్ చేయండి (సిఫార్సు చేయడం లేదు)</translation>
 <translation id="2687407218262674387">Google సేవా నిబంధనలు</translation>
 <translation id="2688196195245426394">పరికరం సర్వర్‌తో నమోదు అవుతున్నప్పుడు లోపం: <ph name="CLIENT_ERROR" />.</translation>
@@ -1639,7 +1639,7 @@
 <translation id="2699911226086014512"><ph name="RETRIES" /> కోడ్‌తో పిన్ ఆపరేషన్ విఫలమైంది.</translation>
 <translation id="2701330563083355633"><ph name="DEVICE_NAME" /> నుండి షేర్ చేయబడింది</translation>
 <translation id="2701737434167469065"><ph name="EMAIL" />కు సైన్ ఇన్ చేయండి</translation>
-<translation id="2702801445560668637">పఠనా జాబితా</translation>
+<translation id="2702801445560668637">పఠనా లిస్ట్‌</translation>
 <translation id="270358213449696159">Google Chrome OS నిబంధనల కంటెంట్‌లు</translation>
 <translation id="270414148003105978">మొబైల్ నెట్‌వర్క్‌లు</translation>
 <translation id="2704184184447774363">Microsoft Document Signing</translation>
@@ -1766,7 +1766,7 @@
 <translation id="2812049959647166806">Thunderboltలో మద్దతు లేదు</translation>
 <translation id="2812989263793994277">ఏ చిత్రాలనూ చూపించవద్దు</translation>
 <translation id="2813094189969465044">తల్లిదండ్రుల నియంత్రణలు</translation>
-<translation id="281390819046738856">అభ్యర్థనకు సంతకం అందించడం సాధ్యపడలేదు.</translation>
+<translation id="281390819046738856">రిక్వెస్ట్‌కు సంతకం అందించడం సాధ్యపడలేదు.</translation>
 <translation id="2814489978934728345">ఈ పేజిని లోడ్ చెయ్యడం ఆపు</translation>
 <translation id="281504910091592009">మీ <ph name="BEGIN_LINK" />Google ఖాతా<ph name="END_LINK" />లో సేవ్ చేసిన పాస్‌వర్డ్‌లను చూడండి, మేనేజ్ చేయండి</translation>
 <translation id="2815693974042551705">బుక్‌మార్క్ ఫోల్డర్</translation>
@@ -1860,7 +1860,7 @@
 <translation id="2911433807131383493">ChromeVox ట్యుటోరియల్‌ను తెరవండి</translation>
 <translation id="2912247081180973411">విండోలను మూసివేయి</translation>
 <translation id="2913331724188855103">కుక్కీ డేటాను సేవ్ చేయడానికి, చదవడానికి సైట్‌లను అనుమతిస్తుంది (సిఫార్సు చేయబడింది)</translation>
-<translation id="2915102088417824677">కార్యకలాపం లాగ్‌ని చూడండి</translation>
+<translation id="2915102088417824677">యాక్టివిటీ లాగ్‌ని చూడండి</translation>
 <translation id="2915873080513663243">ఆటోమేటిక్ స్కాన్</translation>
 <translation id="2916073183900451334">ఫారమ్ ఫీల్డ్‌ల లాగా వెబ్‌పేజీ హైలైట్‌ల లింక్‌లపై ట్యాబ్‌ను నొక్కడం</translation>
 <translation id="2916745397441987255">ఎక్స్‌టెన్షన్‌లను వెతకండి</translation>
@@ -1891,7 +1891,7 @@
 <translation id="2942279350258725020">Android Messages</translation>
 <translation id="2942560570858569904">వేచి ఉంది...</translation>
 <translation id="2942581856830209953">ఈ పేజీని అనుకూలీకరించండి</translation>
-<translation id="2944060181911631861">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను Googleకి ఆటోమేటిక్‌గా పంపడం ద్వారా మీ Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation>
+<translation id="2944060181911631861">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను Googleకి ఆటోమేటిక్‌గా పంపడం ద్వారా మీ Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation>
 <translation id="2946119680249604491">కనెక్షన్‌ని జోడించండి</translation>
 <translation id="2946640296642327832">Bluetoothని ప్రారంభించు</translation>
 <translation id="2947605845283690091">వెబ్ బ్రౌజింగ్ వేగంగా ఉండాలి. ఇప్పుడే <ph name="BEGIN_LINK" />మీ ఎక్స్‌టెన్షన్‌లను తనిఖీ చేయడానికి<ph name="END_LINK" /> సమయం తీసుకోండి.</translation>
@@ -1902,12 +1902,12 @@
 <translation id="2953019166882260872">మీ ఫోన్‌ను కేబుల్‌తో కనెక్ట్ చేయండి</translation>
 <translation id="2956070239128776395">విభాగం సమూహంలో ఉంది: <ph name="ERROR_LINE" /></translation>
 <translation id="2957117904572187936">మీ పరికరంలోని ఫైళ్లు లేదా ఫోల్డర్‌లను సవరించడానికి ఏ సైట్‌లనూ అనుమతించవద్దు</translation>
-<translation id="2958721676848865875">ప్యాక్ పొడిగింపు హెచ్చరిక</translation>
+<translation id="2958721676848865875">ప్యాక్ ఎక్స్‌టెన్షన్‌ హెచ్చరిక</translation>
 <translation id="2959127025785722291">ఏదో తప్పు జరిగింది. స్కానింగ్ పూర్తి కాలేకపోయింది. దయచేసి మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="2959842337402130152">నిల్వ స్థలం లేని కారణంగా పునరుద్ధరించడం సాధ్యపడలేదు. పరికరంలో <ph name="SPACE_REQUIRED" /> స్థలం ఖాళీ చేసి, ఆపై మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="2960208947600937804">Linuxను కాన్ఫిగర్ చేస్తున్నప్పుడు ఎర్రర్ ఏర్పడింది. మీ అడ్మినిస్ట్రేటర్‌ను కాంటాక్ట్ చేయండి.</translation>
 <translation id="296026337010986570">పూర్తయింది! హానికరమైన సాఫ్ట్‌వేర్ తీసివేయబడింది. ఎక్స్‌టెన్షన్‌లను తిరిగి ఆన్ చేయడానికి, &lt;a href="chrome://extensions"&gt;ఎక్స్‌టెన్షన్‌లు&lt;/a&gt; సందర్శించండి.</translation>
-<translation id="2961090598421146107"><ph name="CERTIFICATE_NAME" /> (పొడిగింపు అందించినది)</translation>
+<translation id="2961090598421146107"><ph name="CERTIFICATE_NAME" /> (ఎక్స్‌టెన్షన్‌ అందించినది)</translation>
 <translation id="2961210776189273067">టైటిల్</translation>
 <translation id="2961695502793809356">ముందుకు వెళ్ళడానికి క్లిక్ చేయండి. చరిత్రను చూడటానికి నొక్కి ఉంచండి</translation>
 <translation id="2962131322798295505">వాల్‌పేపర్ పికర్</translation>
@@ -1923,7 +1923,7 @@
 <translation id="2979639724566107830">కొత్త విండోలో తెరువు</translation>
 <translation id="2981113813906970160">పెద్ద మౌస్ కర్సర్‌ను చూపు</translation>
 <translation id="2981474224638493138">ట్యాబ్/డెస్క్‌టాప్ ప్రొజెక్షన్ క్వాలిటీ</translation>
-<translation id="2985348301114641460">"<ph name="EXTENSION_NAME" />"ను ఇన్‌స్టాల్ చేయడానికి మీ అడ్మినిస్ట్రేటర్‌కు అభ్యర్థన పంపాలా?</translation>
+<translation id="2985348301114641460">"<ph name="EXTENSION_NAME" />"ను ఇన్‌స్టాల్ చేయడానికి మీ అడ్మినిస్ట్రేటర్‌కు రిక్వెస్ట్‌ పంపాలా?</translation>
 <translation id="2987620471460279764">ఇతర పరికరం నుండి షేర్ చేయబడిన వచనం</translation>
 <translation id="2988018669686457659">స్పేర్ రెండరర్</translation>
 <translation id="2989123969927553766">మౌస్ స్క్రోల్ యాక్సిలరేషన్</translation>
@@ -1934,7 +1934,7 @@
 <translation id="2990583317361835189">మోషన్ సెన్సార్‌లను ఉపయోగించడానికి సైట్‌లను అనుమతించకండి</translation>
 <translation id="2992931425024192067">మొత్తం నోటిఫికేషన్ కంటెంట్‌ను చూపు</translation>
 <translation id="2993517869960930405">యాప్‌ సమాచారం</translation>
-<translation id="2996286169319737844">మీ సమకాలీకరణ రహస్య పదబంధంతో డేటా ఎన్‌క్రిప్ట్ చేయబడింది. Google Payకి చెందిన చెల్లింపు పద్ధతులు మరియు చిరునామాలు ఇందులో ఉండవు.</translation>
+<translation id="2996286169319737844">మీ సింక్‌ రహస్య పదబంధంతో డేటా ఎన్‌క్రిప్ట్ చేయబడింది. Google Payకి చెందిన చెల్లింపు పద్ధతులు మరియు అడ్రస్‌లు ఇందులో ఉండవు.</translation>
 <translation id="2996722619877761919">పొడవైన అంచులో తిప్పు</translation>
 <translation id="2996932914629936323">సింక్ చేయబడిన అన్ని పరికరాల నుండి హిస్టరీని క్లియర్ చేస్తుంది</translation>
 <translation id="3000378525979847272"><ph name="PERMISSION_1" />, <ph name="PERMISSION_2" /> అనుమతించబడ్డాయి</translation>
@@ -2070,7 +2070,7 @@
 <translation id="313963229645891001">డౌన్‌లోడ్ చేస్తోంది, <ph name="STATUS" /></translation>
 <translation id="3139925690611372679">డిఫాల్ట్ పసుపు రంగు అవతార్</translation>
 <translation id="3141318088920353606">వింటోంది...</translation>
-<translation id="3141917231319778873">దీనిలో నిర్దిష్ట అభ్యర్థనకి మద్దతు లేదు: "<ph name="DEVICE_NAME" />".</translation>
+<translation id="3141917231319778873">దీనిలో నిర్దిష్ట రిక్వెస్ట్‌కు మద్దతు లేదు: "<ph name="DEVICE_NAME" />".</translation>
 <translation id="3142562627629111859">కొత్త గ్రూప్</translation>
 <translation id="3143515551205905069">సింక్‌ను రద్దు చేయి</translation>
 <translation id="3143754809889689516">ప్రారంభం నుండి ప్లే చేయి</translation>
@@ -2083,9 +2083,9 @@
 <translation id="3151562827395986343">చరిత్ర, కుక్కీలు, కాష్ మొదలైన వాటిని తీసివేస్తుంది</translation>
 <translation id="3151616662954589507">సెల్ఫీ కెమెరా</translation>
 <translation id="3151786313568798007">దృగ్విన్యాసం</translation>
-<translation id="3154351730702813399">పరికర నిర్వాహకుడు మీ బ్రౌజింగ్ కార్యకలాపాన్ని పర్యవేక్షించవచ్చు.</translation>
+<translation id="3154351730702813399">పరికర నిర్వాహకుడు మీ బ్రౌజింగ్ యాక్టివిటీని పర్యవేక్షించవచ్చు.</translation>
 <translation id="3154429428035006212">నెలకు పైగా ఆఫ్‌లైన్‌లో ఉంది</translation>
-<translation id="3157387275655328056">పఠన జాబితాకు జోడించు</translation>
+<translation id="3157387275655328056">పఠన లిస్ట్‌కు జోడించు</translation>
 <translation id="3157931365184549694">పునరుద్ధరించు</translation>
 <translation id="3158033540161634471">మీ వేలిముద్రను సెటప్ చేయండి</translation>
 <translation id="3158770568048368350">ఇది మీ మొబైల్ నెట్‌వర్క్ కొంతసేపు డిస్‌కనెక్ట్ కావడానికి కారణం కావచ్చు</translation>
@@ -2202,7 +2202,7 @@
 <translation id="32991397311664836">పరికరాలు</translation>
 <translation id="33022249435934718">GDI నిర్వహించేవి</translation>
 <translation id="3302388252085547855">సర్దుబాటును ఎంటర్ చేయండి...</translation>
-<translation id="3303260552072730022">పొడిగింపు పూర్తి స్క్రీన్‌ని ట్రిగ్గర్ చేసింది.</translation>
+<translation id="3303260552072730022">ఎక్స్‌టెన్షన్‌ పూర్తి స్క్రీన్‌ని ట్రిగ్గర్ చేసింది.</translation>
 <translation id="3303818374450886607">కాపీలు</translation>
 <translation id="3303855915957856445">ఆ సెర్చ్ కోసం ఫలితాలు ఏవీ దొరకలేదు</translation>
 <translation id="3304212451103136496"><ph name="DISCOUNT_AMOUNT" /> తగ్గింపు</translation>
@@ -2240,10 +2240,10 @@
 <translation id="3341699307020049241">పిన్ తప్పు. మీకు <ph name="RETRIES" /> ప్రయత్నాలు మిగిలి ఉన్నాయి.</translation>
 <translation id="3341703758641437857">ఫైల్ URLలకు ప్రాప్తిని అనుమతించు</translation>
 <translation id="3342361181740736773">"<ph name="TRIGGERING_EXTENSION_NAME" />" ఈ ఎక్స్‌టెన్షన్‌ని తీసివేయాలనుకుంటోంది.</translation>
-<translation id="3345135638360864351">ఈ సైట్‌ను యాక్సెస్ చేయడానికి మీరు చేసిన అభ్యర్థన <ph name="NAME" />కు పంపబడలేదు. దయచేసి మళ్లీ ప్రయత్నించండి.</translation>
+<translation id="3345135638360864351">ఈ సైట్‌ను యాక్సెస్ చేయడానికి మీరు చేసిన రిక్వెస్ట్‌ <ph name="NAME" />కు పంపబడలేదు. దయచేసి మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="3345634917232014253">ఒక క్షణం క్రితం భద్రతా తనిఖీ చేయబడింది</translation>
 <translation id="3345886924813989455">మద్దతు గల బ్రౌజర్ కనుగొనబడలేదు</translation>
-<translation id="3347086966102161372">చిత్రం చిరునామాను కా&amp;పీ చేయి</translation>
+<translation id="3347086966102161372">చిత్రం అడ్రస్‌ను కా&amp;పీ చేయి</translation>
 <translation id="3348038390189153836">తొలగించగల పరికరం కనుగొనబడింది</translation>
 <translation id="3348131053948466246">సూచించిన ఎమోజి. నావిగేట్ చేయడానికి పైకి లేదా కిందకి నొక్కండి, జొప్పించడానికి 'Enter' నొక్కండి.</translation>
 <translation id="3349933790966648062">మెమరీ ఫుట్‌ప్రింట్</translation>
@@ -2260,7 +2260,7 @@
 <translation id="3370260763947406229">ఆటోమేటిక్ కరెక్షన్</translation>
 <translation id="3371140690572404006">USB-C పరికరం (కుడివైపు ముందు పోర్ట్)</translation>
 <translation id="337286756654493126">మీరు అప్లికేషన్‌లో తెరిచే ఫోల్డర్‌లను చదవండి</translation>
-<translation id="3378572629723696641">ఈ పొడిగింపు పాడై ఉండవచ్చు.</translation>
+<translation id="3378572629723696641">ఈ ఎక్స్‌టెన్షన్‌ పాడై ఉండవచ్చు.</translation>
 <translation id="337920581046691015"><ph name="PRODUCT_NAME" /> వ్యవస్థాపించబడుతుంది.</translation>
 <translation id="337995611229308295">సర్వర్‌తో కనెక్ట్ చేయడం సాధ్యపడలేదు. దయచేసి మీ నెట్‌వర్క్ కనెక్షన్‌ను చెక్ చేసి, మళ్లీ ట్రై చేయండి. మీకు ఇంకా సమస్య ఉంటే, మీ Chromebookను రీస్టార్ట్ చేయడానికి ట్రై చేయండి.</translation>
 <translation id="3380365263193509176">తెలియని ఎర్రర్</translation>
@@ -2322,7 +2322,7 @@
 <translation id="3432762828853624962">షేర్డ్ వర్కర్స్</translation>
 <translation id="3433621910545056227">అయ్యో!  పరికరం ఇన్‌స్టాలేషన్-సమయ లక్షణాల లాక్‌ను ఏర్పాటు చేయడంలో సిస్టమ్ విఫలమైంది.</translation>
 <translation id="3434107140712555581"><ph name="BATTERY_PERCENTAGE" />%</translation>
-<translation id="3434272557872943250">మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు. ఈ సెట్టింగ్‌ల గురించి, వాటిని ఎలా సర్దుబాటు చేయాలనే దాని గురించి families.google.comలో మరింత తెలుసుకోండి.</translation>
+<translation id="3434272557872943250">మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు. ఈ సెట్టింగ్‌ల గురించి, వాటిని ఎలా సర్దుబాటు చేయాలనే దాని గురించి families.google.comలో మరింత తెలుసుకోండి.</translation>
 <translation id="3435541101098866721">క్రొత్త ఫోన్‌ని జోడించండి</translation>
 <translation id="3435688026795609344">"<ph name="EXTENSION_NAME" />" మీ <ph name="CODE_TYPE" />ని అభ్యర్థిస్తోంది</translation>
 <translation id="3435738964857648380">భద్రత</translation>
@@ -2373,12 +2373,12 @@
 <translation id="3474218480460386727">కొత్త పదాలకు 99 అక్షరాలు లేదా తక్కువ ఉపయోగించండి</translation>
 <translation id="3475843873335999118">క్షమించండి, మీ వేలిముద్ర ఇప్పటికీ గుర్తించబడలేదు. దయచేసి మీ పాస్‌వర్డ్‌ను నమోదు చేయండి.</translation>
 <translation id="3475986680293081450">కీలు మ్యాచ్ కాలేదు. <ph name="RESPONSE" /> కోసం ఏదైనా కీని నొక్కండి.</translation>
-<translation id="3476303763173086583">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపడం ద్వారా మీ చిన్నారి Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది మీ చిన్నారి గురించి గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ <ph name="BEGIN_LINK1" />సెట్టింగ్‌<ph name="END_LINK1" />ని యజమాని అమలు చేశారు. ఈ పరికరానికి సంబంధించిన విశ్లేషణ, వినియోగ డేటాను Googleకి పంపేలా యజమాని ఎంచుకోవచ్చు. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
+<translation id="3476303763173086583">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపడం ద్వారా మీ చిన్నారి Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది మీ చిన్నారి గురించి గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ <ph name="BEGIN_LINK1" />సెట్టింగ్‌<ph name="END_LINK1" />ని యజమాని అమలు చేశారు. ఈ పరికరానికి సంబంధించిన విశ్లేషణ, వినియోగ డేటాను Googleకి పంపేలా యజమాని ఎంచుకోవచ్చు. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
 <translation id="347670947055184738">అయ్యో! మీ పరికరానికి సంబంధించిన విధానాన్ని పొందడంలో సిస్టమ్ విఫలమైంది.</translation>
 <translation id="347785443197175480">మీ కెమెరా మరియు మైక్రోఫోన్‌ను యాక్సెస్ చేయడానికి <ph name="HOST" />ను అనుమతించడాన్ని కొనసాగించండి</translation>
 <translation id="3478813605045578676">ఇన్‌స్టాలేషన్ తర్వాత మాత్రమే ఎన్‌రోల్‌మెంట్ జరుగుతుంది. ఈ పరికరాన్ని మేనేజ్ చేయడానికి, మొదట CloudReadyని ఇన్‌స్టాల్ చేయండి.</translation>
 <translation id="3479552764303398839">ఇప్పుడు కాదు</translation>
-<translation id="3479685872808224578">ప్రింట్ సర్వర్‌ని కనుగొనలేకపోయింది. దయచేసి చిరునామాను తనిఖీ చేసి, ఆపై మళ్లీ ప్రయత్నించండి.</translation>
+<translation id="3479685872808224578">ప్రింట్ సర్వర్‌ని కనుగొనలేకపోయింది. దయచేసి అడ్రస్‌ను తనిఖీ చేసి, ఆపై మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="3480612136143976912">లైవ్ క్యాప్షన్ కోసం క్యాప్షన్ సైజ్‌ను, స్టయిల్‌ను అనుకూలంగా మార్చండి. ఈ సెట్టింగ్‌ను కొన్ని యాప్‌లు, సైట్‌లు కూడా ఉపయోగిస్తాయి.</translation>
 <translation id="3480827850068960424"><ph name="NUM" /> ట్యాబ్‌లు కనుగొనబడ్డాయి</translation>
 <translation id="3481268647794498892"><ph name="COUNTDOWN_SECONDS" /> క్షణాలలో <ph name="ALTERNATIVE_BROWSER_NAME" />లో తెరవబోతోంది</translation>
@@ -2420,7 +2420,7 @@
 <translation id="3519938335881974273">...లాగా పేజీని సేవ్ చేయి</translation>
 <translation id="3521606918211282604">డిస్క్ పరిమాణాన్ని మార్చండి</translation>
 <translation id="3522088408596898827">డిస్క్ స్పేస్ చాలా తక్కువగా ఉంది. డిస్క్ స్పేస్‌ను ఖాళీ చేసి, మళ్లీ ట్రై చేయండి.</translation>
-<translation id="3524965460886318643">కార్యకలాపాలను ఎగుమతి చేయి</translation>
+<translation id="3524965460886318643">యాక్టివిటీలను ఎగుమతి చేయి</translation>
 <translation id="3526034519184079374">సైట్ డేటాని చదవడం లేదా మార్చడం సాధ్యం కాదు</translation>
 <translation id="3527085408025491307">ఫోల్డర్</translation>
 <translation id="3528498924003805721">షార్ట్‌కట్ లక్ష్యాలు</translation>
@@ -2466,7 +2466,7 @@
 <translation id="3575121482199441727">ఈ సైట్‌కు అనుమతించు</translation>
 <translation id="3576324189521867626">విజయవంతంగా ఇన్‌స్టాల్ చేయబడింది</translation>
 <translation id="3578594933904494462">ఈ ట్యాబ్ యొక్క కంటెంట్ భాగస్వామ్యం చేయబడుతోంది.</translation>
-<translation id="3581605050355435601">ఆటో కాన్ఫిగర్ IP చిరునామా</translation>
+<translation id="3581605050355435601">ఆటో కాన్ఫిగర్ IP అడ్రస్‌</translation>
 <translation id="3582057310199111521">మోసపూరిత సైట్‌లో ఎంటర్ చేయబడింది, డేటా ఉల్లంఘనలో కనుగొనబడింది</translation>
 <translation id="3584169441612580296">మీ కంప్యూటర్‌లోని ఫోటోలు, సంగీతం మరియు ఇతర మీడియాను చదవడం మరియు మార్చడం</translation>
 <translation id="3586806079541226322">ఈ ఫైల్‌ను తెరవడం కుదరదు</translation>
@@ -2483,7 +2483,7 @@
 <translation id="3596414637720633074">అజ్ఞాతంలో థర్డ్-పార్టీ కుక్కీలను బ్లాక్ చేయి</translation>
 <translation id="3599221874935822507">పైకి ఉన్నట్లుగా</translation>
 <translation id="3599863153486145794">సైన్ ఇన్ చేసిన అన్ని పరికరాల నుండి చరిత్రను తొలగిస్తుంది. మీ Google ఖాతా <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />లో ఇతర రూపాల్లో ఉన్న బ్రౌజింగ్ చరిత్రను కలిగి ఉండవచ్చు.</translation>
-<translation id="3600051066689725006">వెబ్ అభ్యర్థన సమాచారం</translation>
+<translation id="3600051066689725006">వెబ్ రిక్వెస్ట్‌ సమాచారం</translation>
 <translation id="3600792891314830896">ధ్వనిని ప్లే చేసే సైట్‌లను మ్యూట్ చేస్తుంది</translation>
 <translation id="360180734785106144">కొత్త ఫీచర్‌లు అందుబాటులోకి వస్తే వాటిని అందించడం</translation>
 <translation id="3602290021589620013">ప్రివ్యూ</translation>
@@ -2552,14 +2552,14 @@
 <translation id="3672681487849735243">ఫ్యాక్టరీ ఎర్రర్ గుర్తించబడింది</translation>
 <translation id="367645871420407123">మీరు రూట్ పాస్‌వర్డ్‌ను డిఫాల్ట్ పరీక్ష చిత్ర విలువకు సెట్ చేయాలనుకుంటే ఖాళీగా వదిలిపెట్టండి</translation>
 <translation id="3677106374019847299">అనుకూల ప్రొవైడర్‌ను ఎంటర్ చేయండి</translation>
-<translation id="3677911431265050325">మొబైల్ సైట్‌ను అభ్యర్థించండి</translation>
+<translation id="3677911431265050325">మొబైల్ సైట్‌ను రిక్వెస్ట్ చేయండి</translation>
 <translation id="3677959414150797585">యాప్‌లు, వెబ్‌పేజీలు, మరిన్ని ఇందులో ఉంటాయి. మీరు డేటా వినియోగాన్ని షేర్ చేయడాన్ని ఎంచుకుంటే మాత్రమే సూచనలు మెరుగుపరచడానికి గణాంకాలను పంపుతుంది.</translation>
-<translation id="3678156199662914018">పొడిగింపు: <ph name="EXTENSION_NAME" /></translation>
+<translation id="3678156199662914018">ఎక్స్‌టెన్షన్‌: <ph name="EXTENSION_NAME" /></translation>
 <translation id="3678188444105291936">మీరు ఈ విండోలో వీక్షించే పేజీలు బ్రౌజింగ్ హిస్టరీలో కనిపించవు, మీరు సైన్ అవుట్ చేసిన తర్వాత కంప్యూటర్‌లో అవి కుక్కీల వంటి ఇతర ట్రేస్‌లను వదలవు. మీరు డౌన్‌లోడ్ చేసే ఫైళ్లు, అలాగే క్రియేట్ చేసే బుక్‌మార్క్‌లు భద్రపరచబడవు.</translation>
 <translation id="3680683624079082902">టెక్ట్స్-టు-స్పీచ్ వాయిస్</translation>
 <translation id="3681311097828166361">మీ అభిప్రాయం తెలియజేసినందుకు ధన్యవాదాలు. మీరు ప్రస్తుతం ఆఫ్‌లైన్‌లో ఉన్నారు, మీ రిపోర్ట్‌ తర్వాత పంపబడుతుంది.</translation>
 <translation id="3682824389861648626">కదలిక థ్రెషోల్డ్</translation>
-<translation id="3683524264665795342"><ph name="APP_NAME" /> స్క్రీన్ షేరింగ్ అభ్యర్థన</translation>
+<translation id="3683524264665795342"><ph name="APP_NAME" /> స్క్రీన్ షేరింగ్ రిక్వెస్ట్‌</translation>
 <translation id="3685598397738512288">Linux USB ప్రాధాన్యతలు</translation>
 <translation id="368789413795732264">ఫైల్‌ను వ్రాయడానికి ప్రయత్నించడంలో ఎర్రర్ జరిగింది: <ph name="ERROR_TEXT" />.</translation>
 <translation id="3688507211863392146">మీరు అప్లికేషన్‌లో తెరిచే ఫైళ్లు మరియు ఫోల్డర్‌లలో వ్రాయండి</translation>
@@ -2575,8 +2575,8 @@
 <translation id="369489984217678710">పాస్‌వర్డ్‌లు మరియు ఇతర సైన్-ఇన్ డేటా</translation>
 <translation id="369522892592566391">{NUM_FILES,plural, =0{భద్రతా తనిఖీలు పూర్తయ్యాయి. మీ డేటా అప్‌లోడ్ చేయబడుతుంది.}=1{భద్రతా తనిఖీలు పూర్తయ్యాయి. మీ ఫైల్ అప్‌లోడ్ చేయబడుతుంది.}other{భద్రతా తనిఖీలు పూర్తయ్యాయి. మీ ఫైల్స్ అప్‌లోడ్ చేయబడతాయి.}}</translation>
 <translation id="3696576298374669274">సర్వీస్ లాగ్‌లను చూపించండి</translation>
-<translation id="3699624789011381381">ఇమెయిల్ చిరునామా</translation>
-<translation id="3699920817649120894">సమకాలీకరణ మరియు వ్యక్తిగతీకరణను ఆఫ్ చేయాలా?</translation>
+<translation id="3699624789011381381">ఇమెయిల్ అడ్రస్‌</translation>
+<translation id="3699920817649120894">సింక్‌ మరియు వ్యక్తిగతీకరణను ఆఫ్ చేయాలా?</translation>
 <translation id="3700888195348409686">ప్రదర్శించబడుతోంది (<ph name="PAGE_ORIGIN" />)</translation>
 <translation id="3700993174159313525">మీ కెమెరా పొజిషన్‌ను ట్రాక్ చేయడానికి సైట్‌లను అనుమతించకండి</translation>
 <translation id="3702500414347826004">మీ ప్రారంభ పేజీలు <ph name="URL" />ని చేర్చేలా మార్చబడ్డాయి.</translation>
@@ -2607,7 +2607,7 @@
 <translation id="372722114124766626">ఒకసారి మాత్రమే</translation>
 <translation id="3727473233247516571">వెనుకకు-ముందుకు కాష్ సబ్‌ఫ్రేమ్: <ph name="BACK_FORWARD_CACHE_PAGE_URL" /></translation>
 <translation id="3728188878314831180">మీ ఫోన్ నుండి మిర్రర్ నోటిఫికేషన్‌లు</translation>
-<translation id="3728681439294129328">నెట్‌వర్క్ చిరునామాను కాన్ఫిగర్ చేయడం</translation>
+<translation id="3728681439294129328">నెట్‌వర్క్ అడ్రస్‌ను కాన్ఫిగర్ చేయడం</translation>
 <translation id="3729303374699765035">ఏదైనా ఒక సైట్ సమీపంలోని బ్లూటూత్ పరికరాలను కనుగొనాలనుకున్నప్పుడు అనుమతి అడుగుతుంది</translation>
 <translation id="3729506734996624908">అనుమతించబడిన సైట్‌లు</translation>
 <translation id="3730076362938942381">స్టైలస్ వ్రాత యాప్</translation>
@@ -2626,7 +2626,7 @@
 <translation id="3744111561329211289">బ్యాక్‌గ్రౌండ్ సింక్</translation>
 <translation id="3747077776423672805">యాప్‌లను తీసివేయడం కోసం, సెట్టింగ్‌లు &gt; Google Play స్టోర్ &gt; Android ప్రాధాన్యతలను నిర్వహించు &gt; యాప్‌లు లేదా అప్లికేషన్ మేనేజర్‌లోకి వెళ్లండి. ఆపై, మీరు అన్ఇన్‌స్టాల్ చేయాలనుకుంటున్న యాప్‌ని నొక్కండి (మీరు యాప్‌ని కనుగొనడం కోసం ఎడమ లేదా కుడి వైపునకు స్వైప్ చేయాల్సి రావచ్చు). ఆపై, అన్ఇన్‌స్టాల్ చేయి లేదా నిలిపివేయిని ఎంచుకోండి.</translation>
 <translation id="3747220812138541072">మీరు టైప్ చేస్తున్నప్పుడు కనిపించే ఇన్‌లైన్ వ్రాత సూచనలను చూడండి</translation>
-<translation id="3748706263662799310">ఒక బగ్‌ను నివేదించండి</translation>
+<translation id="3748706263662799310">ఒక బగ్‌ను రిపోర్ట్ చేయండి</translation>
 <translation id="3752253558646317685">వేలిముద్రను సేవ్ చేయడానికి మీ చిన్నారి వారి వేలును పైకి ఎత్తుతూ ఉండేలా చేయండి</translation>
 <translation id="3752582316358263300">సరే...</translation>
 <translation id="3753033997400164841">ఒకసారి సేవ్ చేయండి. ప్రతి చోటా ఉపయోగించండి</translation>
@@ -2654,7 +2654,7 @@
 <translation id="3776508619697147021">అనేక ఫైళ్లను ఆటోమేటిక్‌గా డౌన్‌లోడ్ చేయడానికి సైట్‌లు అడగవచ్చు</translation>
 <translation id="3776796446459804932">ఈ ఎక్స్‌టెన్ష‌న్‌ Chrome వెబ్ స్టోర్ విధానాన్ని ఉల్లంఘిస్తోంది.</translation>
 <translation id="3777483481409781352">సెల్యులార్ పరికరాన్ని యాక్టివేట్ చేయలేకపోయింది</translation>
-<translation id="3777806571986431400">పొడిగింపు ప్రారంభించబడింది</translation>
+<translation id="3777806571986431400">ఎక్స్‌టెన్షన్‌ ప్రారంభించబడింది</translation>
 <translation id="3778152852029592020">డౌన్‌లోడ్ చేయడం రద్దు చేయబడింది.</translation>
 <translation id="3778208826288864398">చాలా ఎక్కువ సార్లు తప్పు పిన్‌ను నమోదు చేసినందున సెక్యూరిటీ కీ లాక్ చేయబడింది. మీరు సెక్యూరిటీ కీని రీసెట్ చేయాలి.</translation>
 <translation id="3778740492972734840">డెవలపర్ ఉపకరణాలు</translation>
@@ -2663,7 +2663,7 @@
 <translation id="3782795641773236652">ఇప్పటికీ ఎలాంటి స్విచ్ లేదా కీ కేటాయించబడలేదు</translation>
 <translation id="378312418865624974">ఈ కంప్యూటర్ యొక్క ప్రత్యేక ఐడెంటిఫైయర్‌ని చదవడం</translation>
 <translation id="3784372983762739446">బ్లూటూత్ పరికరాలు</translation>
-<translation id="3784472333786002075">వెబ్‌సైట్‌లు రూపొందించిన ఫైళ్లను కుక్కీలు అంటారు. కుక్కీలు రెండు రకాలు ఉంటాయి: మీరు సందర్శించే సైట్‌లు రూపొందించిన కుక్కీలను మొదటి పక్షం కుక్కీలు అంటారు. చిరునామా బార్‌లో ఈ సైట్ చూపించబడుతుంది. ఇతర సైట్‌లు రూపొందించిన కుక్కీలను మూడవ పక్ష కుక్కీలు అంటారు. మీరు సందర్శించే వెబ్‌సైట్‌లో మీరు చూసే ప్రకటనలు లేదా చిత్రాల వంటి, కొంత కంటెంట్‌ను ఈ సైట్‌లు స్వంతంగా కలిగి ఉంటాయి.</translation>
+<translation id="3784472333786002075">వెబ్‌సైట్‌లు రూపొందించిన ఫైళ్లను కుక్కీలు అంటారు. కుక్కీలు రెండు రకాలు ఉంటాయి: మీరు సందర్శించే సైట్‌లు రూపొందించిన కుక్కీలను మొదటి పక్షం కుక్కీలు అంటారు. అడ్రస్‌ బార్‌లో ఈ సైట్ చూపించబడుతుంది. ఇతర సైట్‌లు రూపొందించిన కుక్కీలను మూడవ పక్ష కుక్కీలు అంటారు. మీరు సందర్శించే వెబ్‌సైట్‌లో మీరు చూసే ప్రకటనలు లేదా చిత్రాల వంటి, కొంత కంటెంట్‌ను ఈ సైట్‌లు స్వంతంగా కలిగి ఉంటాయి.</translation>
 <translation id="3785308913036335955">యాప్‌ల షార్ట్‌కట్‌ను చూపు</translation>
 <translation id="3785727820640310185">ఈ సైట్ కోసం సేవ్ చేసిన పాస్‌వర్డ్‌లు</translation>
 <translation id="3788301286821743879">కియోస్క్ యాప్‌ను ప్రారంభించడం సాధ్యపడలేదు.</translation>
@@ -2721,7 +2721,7 @@
 <translation id="3834775135533257713"><ph name="TO_INSTALL_APP_NAME" /> యాప్ "<ph name="INSTALLED_APP_NAME" />"కి వైరుధ్యంగా ఉన్నందున దాన్ని జోడించలేరు.</translation>
 <translation id="3835233591525155343">మీ పరికర వినియోగం</translation>
 <translation id="3835522725882634757">అరెరె! ఈ సర్వర్ పంపిస్తున్న <ph name="PRODUCT_NAME" /> డేటా అర్థంకాలేదు. దయచేసి <ph name="BEGIN_LINK" />బగ్‌ను నివేదించి<ph name="END_LINK" />, <ph name="BEGIN2_LINK" />ప్రత్యేక జాబితా<ph name="END2_LINK" />ను కలిగి ఉండండి.</translation>
-<translation id="383669374481694771">ఈ పరికరం, దీనిని ఉపయోగించే పద్ధతి (బ్యాటరీ స్థాయి, సిస్టమ్, యాప్ కార్యకలాపం, ఎర్రర్‌లు లాంటివి) గురించి ఇది సాధారణ సమాచారం. ఈ డేటా Androidను మెరుగుపరచడం కోసం ఉపయోగించబడుతుంది. కొంత ఏకీకృత సమాచారం కూడా Google యాప్‌లు, Android డెవలపర్‌ల లాంటి భాగస్వాముల యాప్‌లు, ఉత్పత్తులను మెరుగుపరచడంలో సహాయపడుతుంది.</translation>
+<translation id="383669374481694771">ఈ పరికరం, దీనిని ఉపయోగించే పద్ధతి (బ్యాటరీ స్థాయి, సిస్టమ్, యాప్ యాక్టివిటీ, ఎర్రర్‌లు లాంటివి) గురించి ఇది సాధారణ సమాచారం. ఈ డేటా Androidను మెరుగుపరచడం కోసం ఉపయోగించబడుతుంది. కొంత ఏకీకృత సమాచారం కూడా Google యాప్‌లు, Android డెవలపర్‌ల లాంటి భాగస్వాముల యాప్‌లు, ఉత్పత్తులను మెరుగుపరచడంలో సహాయపడుతుంది.</translation>
 <translation id="3838085852053358637">ఎక్స్‌టెన్షన్‌ను లోడ్ చేయడం విఫలమైంది</translation>
 <translation id="3838486795898716504">మరిన్ని <ph name="PAGE_TITLE" /></translation>
 <translation id="383891835335927981">సైట్‌లు ఏవీ దగ్గరకు లేదా దూరానికి జూమ్ చేయబడలేదు</translation>
@@ -2739,7 +2739,7 @@
 <translation id="3854599674806204102">ఒక ఎంపికను ఎంచుకోండి</translation>
 <translation id="3854967233147778866">ఇతర భాషలలోకి వెబ్‌సైట్‌లను అనువదించడాన్ని ఆఫర్ చేస్తుంది</translation>
 <translation id="3854976556788175030">అవుట్‌పుట్ ట్రే నిండిపోయింది</translation>
-<translation id="3855441664322950881">ప్యాక్ పొడిగింపు</translation>
+<translation id="3855441664322950881">ప్యాక్ ఎక్స్‌టెన్షన్‌</translation>
 <translation id="3855676282923585394">బుక్‌మార్క్‌లు మరియు సెట్టింగ్‌లను దిగుమతి చేయి...</translation>
 <translation id="3856096718352044181">దయచేసి ఇది చెల్లుబాటు అయ్యే ప్రొవైడర్ అని వెరిఫై చేయండి లేదా తర్వాత మళ్లీ ట్రై చేయండి</translation>
 <translation id="3856800405688283469">సమయ మండలిని ఎంచుకోండి</translation>
@@ -2759,7 +2759,7 @@
 <translation id="3871350334636688135">24 గంటల తర్వాత, మీరు మీ పరికరాన్ని పునఃప్రారంభిస్తే మీ స్థానిక డేటాను తొలగించే వన్-టైమ్ అప్‌డేట్‌ను మీ నిర్వాహకుడు అమలు చేస్తారు. మీకు అవసరమైన ఏ స్థానిక డేటాను అయినా 24 గంటలలోపు cloud storageలో సేవ్ చేసుకోండి.</translation>
 <translation id="3872220884670338524">మరిన్ని చర్యలు, <ph name="DOMAIN" />లో <ph name="USERNAME" /> కోసం సేవ్ చేయబడిన ఖాతా</translation>
 <translation id="3872991219937722530">డిస్క్ స్థలాన్ని ఖాళీ చేయండి, లేదంటే పరికరం ఇక స్పందించదు.</translation>
-<translation id="3873315167136380065">దీన్ని ఆన్ చేయడానికి, మీ సమకాలీకరణ రహస్య పదబంధాన్ని తీసివేయడానికి <ph name="BEGIN_LINK" />సమకాలీకరణను రీసెట్ చేయండి<ph name="END_LINK" /></translation>
+<translation id="3873315167136380065">దీన్ని ఆన్ చేయడానికి, మీ సింక్‌ రహస్య పదబంధాన్ని తీసివేయడానికి <ph name="BEGIN_LINK" />సింక్‌ను రీసెట్ చేయండి<ph name="END_LINK" /></translation>
 <translation id="3873423927483480833">పిన్‌లను చూపుతుంది</translation>
 <translation id="3873915545594852654">ARC++కి సంబంధించి ఒక సమస్య సంభవించింది.</translation>
 <translation id="3874164307099183178">Google Assistantను ఆన్ చేయండి</translation>
@@ -2768,7 +2768,7 @@
 <translation id="3882165008614329320">కెమెరా లేదా ఫైల్‌లో ఇప్పటికే ఉన్న వీడియో</translation>
 <translation id="3884152383786131369">అనేక భాషలలో అందుబాటులో ఉన్న వెబ్ కంటెంట్, ఈ లిస్ట్‌లోని మొదటి సపోర్ట్ చేసే భాషను ఉపయోగిస్తుంది. ఈ ప్రాధాన్యతలు మీ బ్రౌజర్ సెట్టింగ్‌లతో సింక్ చేయబడతాయి. <ph name="BEGIN_LINK_LEARN_MORE" />మరింత తెలుసుకోండి<ph name="END_LINK_LEARN_MORE" /></translation>
 <translation id="3885112598747515383">అప్‌డేట్‌లను మీ అడ్మినిస్ట్రేటర్ మేనేజ్ చేస్తారు</translation>
-<translation id="3886446263141354045">మీరు ఈ సైట్‌ను యాక్సెస్ చేయడానికి చేసిన అభ్యర్థన <ph name="NAME" />కు పంపబడింది</translation>
+<translation id="3886446263141354045">మీరు ఈ సైట్‌ను యాక్సెస్ చేయడానికి చేసిన రిక్వెస్ట్‌ <ph name="NAME" />కు పంపబడింది</translation>
 <translation id="3888053818972567950"><ph name="WEB_DRIVE" /> కనెక్షన్</translation>
 <translation id="3888550877729210209"><ph name="LOCK_SCREEN_APP_NAME" />తో గమనికలు రూపొందిస్తున్నారు</translation>
 <translation id="3888586133700543064">మీ Assistant సమస్యను మెరుగ్గా అర్థం చేసుకోవడంలో ఈ సమాచారం మాకు సహాయపడుతుంది. ఇది 90 రోజుల పాటు స్టోర్ చేయబడుతుంది, అలాగే తగిన ఇంజినీరింగ్, ఫీడ్‌బ్యాక్ టీమ్‌లు మాత్రమే దీనిని యాక్సెస్ చేయగలవు.</translation>
@@ -2872,7 +2872,7 @@
 <translation id="3976108569178263973">అందుబాటులో ఉన్న ప్రింటర్లు లేవు.</translation>
 <translation id="397703832102027365">పూర్తి చేస్తోంది...</translation>
 <translation id="3977886311744775419">ఈ రకమైన నెట్‌వర్క్‌లో ఆటోమేటిక్ అప్‌డేట్‌లు డౌన్‌లోడ్ చేయబడవు, కానీ మీరు మాన్యువల్‌గా అప్‌డేట్‌లను తనిఖీ చేయవచ్చు.</translation>
-<translation id="3979395879372752341">క్రొత్త పొడిగింపు జోడించబడింది (<ph name="EXTENSION_NAME" />)</translation>
+<translation id="3979395879372752341">క్రొత్త ఎక్స్‌టెన్షన్‌ జోడించబడింది (<ph name="EXTENSION_NAME" />)</translation>
 <translation id="3979748722126423326"><ph name="NETWORKDEVICE" />ను ప్రారంభించు</translation>
 <translation id="3981058120448670012">సమీపంలోని పరికరాలకు <ph name="REMAINING_TIME" /> పాటు <ph name="DEVICE_NAME" />గా కనిపిస్తుంది...</translation>
 <translation id="3981760180856053153">చెల్లని సేవ్ రకం ఎంటర్ చేయబడింది.</translation>
@@ -2961,11 +2961,11 @@
 <translation id="4084835346725913160"><ph name="TAB_NAME" />ని మూసివేయి</translation>
 <translation id="4085270836953633510">ఏదైనా ఒక సైట్, సీరియల్ పోర్ట్‌లను యాక్సెస్ చేయాలని భావించినప్పుడు అనుమతి అడగాలి</translation>
 <translation id="4085298594534903246">ఈ పేజీపై JavaScript నిరోధించబడింది.</translation>
-<translation id="4087089424473531098">పొడిగింపు సృష్టించబడింది:
+<translation id="4087089424473531098">ఎక్స్‌టెన్షన్‌ సృష్టించబడింది:
 
 <ph name="EXTENSION_FILE" /></translation>
 <translation id="408721682677442104">MIDI డివైజ్‌ల పూర్తి కంట్రోల్ తిరస్కరించబడింది</translation>
-<translation id="4089235344645910861">సెట్టింగ్ సేవ్ చేయబడింది. సమకాలీకరణ ప్రారంభించబడింది.</translation>
+<translation id="4089235344645910861">సెట్టింగ్ సేవ్ చేయబడింది. సింక్‌ ప్రారంభించబడింది.</translation>
 <translation id="4090103403438682346">ధృవీకృత యాక్సెస్‌ను ప్రారంభించండి</translation>
 <translation id="4090947011087001172"><ph name="SITE" /> యొక్క సైట్ అనుమతులను రీసెట్ చేయాలా?</translation>
 <translation id="4093865285251893588">ప్రొఫైల్ ఇమేజ్</translation>
@@ -3060,7 +3060,7 @@
 <translation id="4209464433672152343">ముద్రించడం కోసం పత్రాలను సిద్ధం చేయడానికి అవి <ph name="BEGIN_LINK_HELP" />Googleకు పంపబడతాయి<ph name="END_LINK_HELP" />. <ph name="BEGIN_LINK_DASHBOARD" />Google క్లౌడ్ ప్రింట్‌ డాష్‌బోర్డ్<ph name="END_LINK_DASHBOARD" />లో మీ ప్రింటర్‌లు, ప్రింటర్ చరిత్రను చూడండి. ఎడిట్ చేయండి. నిర్వహించండి.</translation>
 <translation id="4210048056321123003">వర్చువల్ మెషిన్‌ను డౌన్‌లోడ్ చేస్తోంది</translation>
 <translation id="421182450098841253"> &amp;బుక్‌మార్క్‌ల బార్‌ను చూపు</translation>
-<translation id="4211851069413100178">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను Googleకి ఆటోమేటిక్‌గా పంపడం ద్వారా మీ Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ <ph name="BEGIN_LINK1" />సెట్టింగ్‌<ph name="END_LINK1" />ని యజమాని అమలు చేశారు. ఈ పరికరానికి సంబంధించిన విశ్లేషణ, వినియోగ డేటాను Googleకి పంపేలా యజమాని ఎంచుకోవచ్చు. మీ అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
+<translation id="4211851069413100178">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను Googleకి ఆటోమేటిక్‌గా పంపడం ద్వారా మీ Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ <ph name="BEGIN_LINK1" />సెట్టింగ్‌<ph name="END_LINK1" />ని యజమాని అమలు చేశారు. ఈ పరికరానికి సంబంధించిన విశ్లేషణ, వినియోగ డేటాను Googleకి పంపేలా యజమాని ఎంచుకోవచ్చు. మీ అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
 <translation id="42126664696688958">ఎగుమతి చేయి</translation>
 <translation id="42137655013211669">సర్వర్ ఈ వనరుకు యాక్సెస్‌ను నిషేధించింది.</translation>
 <translation id="4217571870635786043">డిక్టేషన్</translation>
@@ -3177,7 +3177,7 @@
 <translation id="4354344420232759511">మీరు సందర్శించే సైట్‌లు ఇక్కడ చూపబడతాయి</translation>
 <translation id="435527878592612277">మీ ఫోటోని ఎంచుకోండి</translation>
 <translation id="4358313196493694334">క్లిక్ స్థానాన్ని స్థిరీకరిస్తుంది</translation>
-<translation id="4359408040881008151">ఆధారిత పొడిగింపు(లు) కారణంగా ఇన్‌స్టాల్ చేయబడింది.</translation>
+<translation id="4359408040881008151">ఆధారిత ఎక్స్‌టెన్షన్‌(లు) కారణంగా ఇన్‌స్టాల్ చేయబడింది.</translation>
 <translation id="4359717112757026264">నగర చిత్రాలు</translation>
 <translation id="4360237979279036412">గడువుకు ముందే ఈ <ph name="DEVICE_TYPE" />ను అప్‌డేట్ చేయమని <ph name="MANAGER" /> మిమ్మల్ని కోరుతోంది.</translation>
 <translation id="4361142739114356624">ఈ క్లయింట్ స‌ర్టిఫికెట్‌ ప్రైవేట్ కీ లేదు లేదా చెల్లదు</translation>
@@ -3197,7 +3197,7 @@
 <translation id="4377363674125277448">సర్వర్ ప్రమాణపత్రంతో సమస్య ఏర్పడింది.</translation>
 <translation id="4378154925671717803">ఫోన్</translation>
 <translation id="4378551569595875038">కనెక్టింగ్...</translation>
-<translation id="4378556263712303865">పరికరం అభ్యర్థన</translation>
+<translation id="4378556263712303865">పరికరం రిక్వెస్ట్‌</translation>
 <translation id="4379281552162875326">"<ph name="APP_NAME" />"ను అన్‌ఇన్‌స్టాల్ చేయాలా?</translation>
 <translation id="4380648069038809855">పూర్తి స్క్రీన్‌లోకి ప్రవేశించారు</translation>
 <translation id="4382131447572146376">{COUNT,plural, =0{<ph name="EMAIL" />}=1{<ph name="EMAIL" />, +మరో 1 ఖాతా ఉంది}other{<ph name="EMAIL" />, +మరో <ph name="EXTRA_ACCOUNTS" /> ఖాతాలు ఉన్నాయి}}</translation>
@@ -3231,7 +3231,7 @@
 <translation id="4411578466613447185">కోడ్ సైనర్</translation>
 <translation id="4412698727486357573">సహాయ కేంద్రం</translation>
 <translation id="4413088271097062326">మీరు ఏ యాప్‌ను ఉపయోగించాలనుకుంటున్నారు?</translation>
-<translation id="44141919652824029">మీ జోడించబడిన USB పరికరాల జాబితాని పొందడానికి "<ph name="APP_NAME" />"ని అనుమతించాలా?</translation>
+<translation id="44141919652824029">మీ జోడించబడిన USB పరికరాల లిస్ట్‌ను పొందడానికి "<ph name="APP_NAME" />"ని అనుమతించాలా?</translation>
 <translation id="4414232939543644979">కొత్త &amp;అజ్ఞాత విండో</translation>
 <translation id="4414515549596849729">కుక్కీలు, సైట్ డేటా</translation>
 <translation id="4415213869328311284">మీ <ph name="DEVICE_TYPE" />ను ఉపయోగించడం ప్రారంభించడానికి మీరు సిద్ధంగా ఉన్నారు.</translation>
@@ -3318,7 +3318,7 @@
 <translation id="4507128560633489176">డేటా క్లియర్ చేయబడింది.</translation>
 <translation id="4508765956121923607">&amp;మూలాన్ని చూడండి</translation>
 <translation id="4510195992002502722">ఫీడ్‌బ్యాక్‌ను పంపడం విఫలమైంది. మళ్లీ ట్రై చేస్తోంది...</translation>
-<translation id="4510479820467554003">తల్లి/తండ్రి ఖాతా జాబితా</translation>
+<translation id="4510479820467554003">తల్లి/తండ్రి ఖాతా లిస్ట్‌</translation>
 <translation id="4510614391273086606">Linux ఫైళ్లు మరియు యాప్‌లు వాటి బ్యాకప్ స్థితికి పునరుద్ధరించబడుతున్నాయి.</translation>
 <translation id="451102079304155829">కార్ట్‌లు</translation>
 <translation id="4513872120116766993">సూచనాత్మక వ్రాత</translation>
@@ -3411,7 +3411,7 @@
 <translation id="4590324241397107707">డేటాబేస్ నిల్వ</translation>
 <translation id="4592891116925567110">స్టైలస్ డ్రాయింగ్ యాప్</translation>
 <translation id="4593021220803146968"><ph name="URL" />కు &amp;వెళ్ళండి</translation>
-<translation id="4595560905247879544">యాప్‌లు మరియు పొడిగింపులను నిర్వాహకుడు (<ph name="CUSTODIAN_NAME" />) మాత్రమే సవరించగలరు.</translation>
+<translation id="4595560905247879544">యాప్‌లు మరియు ఎక్స్‌టెన్షన్‌లను నిర్వాహకుడు (<ph name="CUSTODIAN_NAME" />) మాత్రమే సవరించగలరు.</translation>
 <translation id="4596295440756783523">మీకు ఫైల్‌లో ఈ సర్వర్‌లను గుర్తించే ప్రమాణపత్రాలు ఉన్నాయి</translation>
 <translation id="4598556348158889687">నిల్వ నిర్వహణ</translation>
 <translation id="4598776695426288251">బహుళ పరికరాల ద్వారా Wi-Fi అందుబాటులో ఉంది</translation>
@@ -3432,7 +3432,7 @@
 <translation id="4617270414136722281">ఎక్స్‌టెన్షన్ ఆప్షన్‌లు</translation>
 <translation id="4619564267100705184">ఇది మీరే అని వెరిఫై చేయండి</translation>
 <translation id="4619615317237390068">ఇతర పరికరాల్లోని ట్యాబ్‌లు</translation>
-<translation id="4620809267248568679">ఈ సెట్టింగ్ పొడిగింపు ద్వారా అమలు చేయబడింది.</translation>
+<translation id="4620809267248568679">ఈ సెట్టింగ్ ఎక్స్‌టెన్షన్‌ ద్వారా అమలు చేయబడింది.</translation>
 <translation id="4623167406982293031">ఖాతాను వెరిఫై చేయండి</translation>
 <translation id="4623189117674524348">ఈ పరికరం కోసం API యాక్సెస్ అధికారం మంజూరు చేయడంలో సిస్టమ్ విఫలమైంది.</translation>
 <translation id="4624054169152573743">రంగు రూపం</translation>
@@ -3573,7 +3573,7 @@
 <translation id="4791000909649665275"><ph name="NUMBER" /> ఫోటో</translation>
 <translation id="4791037424585594169">(UDP)</translation>
 <translation id="4792290259143007505">ట్రాక్‌పాయింట్ యాక్సిలరేషన్‌ను ఎనేబుల్ చేయండి</translation>
-<translation id="4792711294155034829">&amp;ఒక సమస్యను నివేదించండి...</translation>
+<translation id="4792711294155034829">&amp;ఒక సమస్యను రిపోర్ట్ చేయండి...</translation>
 <translation id="4794810983896241342">అప్‌డేట్‌లను <ph name="BEGIN_LINK" />మీ అడ్మినిస్ట్రేటర్<ph name="END_LINK" /> మేనేజ్ చేస్తారు</translation>
 <translation id="479536056609751218">వెబ్‌పేజీ, HTML మాత్రమే</translation>
 <translation id="4796142525425001238">ఎల్లప్పుడూ రీస్టోర్ చేయండి</translation>
@@ -3635,7 +3635,7 @@
 <translation id="4854317507773910281">ఆమోదం కోసం తల్లి/తండ్రి ఖాతాను ఎంచుకోండి</translation>
 <translation id="485480310608090163">మరిన్ని సెట్టింగ్‌లు మరియు అనుమతులు</translation>
 <translation id="4856478137399998590">మీ మొబైల్ డేటా సేవ యాక్టివేట్ చేయబడింది, ఉపయోగించడానికి సిద్ధంగా ఉంది</translation>
-<translation id="4858792381671956233">ఈ సైట్‌ను సందర్శించడానికి అనుమతించమని కోరుతూ మీ తల్లిదండ్రులకు అభ్యర్థన పంపారు</translation>
+<translation id="4858792381671956233">ఈ సైట్‌ను సందర్శించడానికి అనుమతించమని కోరుతూ మీ తల్లిదండ్రులకు రిక్వెస్ట్‌ పంపారు</translation>
 <translation id="4858913220355269194">ఫ్రిట్జ్</translation>
 <translation id="4862642413395066333">OCSP ప్రతిస్పందనలను సైన్ చేస్తోంది</translation>
 <translation id="4863769717153320198"><ph name="WIDTH" /> x <ph name="HEIGHT" /> ఉన్నట్టుంది (డిఫాల్ట్)</translation>
@@ -3696,7 +3696,7 @@
 <translation id="4916542008280060967"><ph name="FILE_NAME" />ను ఎడిట్ చేయడానికి సైట్‌ను అనుమతించాలనుకుంటున్నారా?</translation>
 <translation id="491691592645955587">సురక్షితమైన బ్రౌజర్‌కు మారండి</translation>
 <translation id="4917385247580444890">బలమైన</translation>
-<translation id="4918021164741308375"><ph name="ORIGIN" /> "<ph name="EXTENSION_NAME" />" పొడిగింపుతో కమ్యూనికేట్ చేయాలనుకుంటోంది</translation>
+<translation id="4918021164741308375"><ph name="ORIGIN" /> "<ph name="EXTENSION_NAME" />" ఎక్స్‌టెన్షన్‌తో కమ్యూనికేట్ చేయాలనుకుంటోంది</translation>
 <translation id="4918086044614829423">ఆమోదించు</translation>
 <translation id="4921290200821452703">తల్లితండ్రుల కోసం పాఠశాల ఖాతా సమాచారం</translation>
 <translation id="4921348630401250116">టెక్స్ట్-టు-స్పీచ్</translation>
@@ -3724,7 +3724,7 @@
 <translation id="4940448324259979830">ఈ ఖాతా <ph name="PROFILE_NAME" /> ద్వారా మేనేజ్ చేయబడుతుంది</translation>
 <translation id="4940845626435830013">డిస్క్ పరిమాణాన్ని రిజర్వ్ చేయండి</translation>
 <translation id="4941074198479265146">మ్యూజిక్‌ను క్రియేట్, ఎడిట్ చేయడం వంటి ఫీచర్‌ల కోసం సాధారణంగా సైట్‌లు MIDI పరికరాలకు కనెక్ట్ అవుతాయి</translation>
-<translation id="4941246025622441835">పరికరాన్ని బిజినెస్ నిర్వహణ కోసం నమోదు చేసేటప్పుడు ఈ పరికర అభ్యర్థనను ఉపయోగించండి:</translation>
+<translation id="4941246025622441835">పరికరాన్ని బిజినెస్ నిర్వహణ కోసం నమోదు చేసేటప్పుడు ఈ పరికర రిక్వెస్ట్‌ను ఉపయోగించండి:</translation>
 <translation id="4941627891654116707">ఫాంట్ పరిమాణం</translation>
 <translation id="494286511941020793">ప్రాక్సీ కన్ఫిగరేషన్ సహాయం</translation>
 <translation id="4943368462779413526">ఫుట్‌బాల్</translation>
@@ -3777,7 +3777,7 @@
 <translation id="5006218871145547804">Crostini Android యాప్ ADB</translation>
 <translation id="5007392906805964215">సమీక్షించు</translation>
 <translation id="50080882645628821">ప్రొఫైల్‌ను తీసివేయండి</translation>
-<translation id="5008936837313706385">కార్యకలాపం పేరు</translation>
+<translation id="5008936837313706385">యాక్టివిటీ పేరు</translation>
 <translation id="5009463889040999939">ప్రొఫైల్ పేరు మార్చుతోంది. దీనికి కొన్ని నిమిషాలు పట్టవచ్చు.</translation>
 <translation id="5010043101506446253">ప్రమాణపత్ర అధికారం</translation>
 <translation id="5015344424288992913">ప్రాక్సీని పరిష్కరిస్తోంది...</translation>
@@ -3785,7 +3785,7 @@
 <translation id="5017643436812738274">టెక్స్ట్ కర్సర్‌తో మీరు పేజీలను నావిగేట్ చేయవచ్చు. ఆఫ్ చేయడానికి Ctrl+Search+7ను నొక్కండి.</translation>
 <translation id="5017828934289857214">నాకు తర్వాత గుర్తు చేయి</translation>
 <translation id="5018207570537526145">ఎక్స్‌టెన్ష‌న్‌ వెబ్‌సైట్‌ను తెరవండి</translation>
-<translation id="5018526990965779848">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను Googleకు ఆటోమేటిక్‌గా పంపడం ద్వారా మీ Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
+<translation id="5018526990965779848">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను Googleకు ఆటోమేటిక్‌గా పంపడం ద్వారా మీ Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
 <translation id="5021750053540820849">ఇంకా అప్‌డేట్ చేయలేదు</translation>
 <translation id="5026492829171796515">Google ఖాతాను జోడించడానికి సైన్ ఇన్ చేయండి</translation>
 <translation id="5026806129670917316">Wi‑Fiని ఆన్ చేయండి</translation>
@@ -3873,14 +3873,14 @@
 <translation id="5115338116365931134">SSO</translation>
 <translation id="5116628073786783676">ఆడియోని ఇలా సే&amp;వ్ చేయి...</translation>
 <translation id="5117139026559873716">మీ <ph name="DEVICE_TYPE" /> నుండి మీ ఫోన్‌ను డిస్‌కనెక్ట్ చేయండి. అవి ఇకపై ఆటోమేటిక్‌గా కనెక్ట్ కావు.</translation>
-<translation id="5117930984404104619">సందర్శించిన URLలతో సహా ఇతర పొడిగింపుల యొక్క ప్రవర్తనను పర్యవేక్షించండి</translation>
+<translation id="5117930984404104619">సందర్శించిన URLలతో సహా ఇతర ఎక్స్‌టెన్షన్‌ల యొక్క ప్రవర్తనను పర్యవేక్షించండి</translation>
 <translation id="5119173345047096771">Mozilla Firefox</translation>
 <translation id="5121130586824819730">మీ హార్డ్ డిస్క్ నిండింది. దయచేసి మరొక స్థానానికి సేవ్ చేయండి లేదా హార్డ్ డిస్క్‌లోని నిల్వను ఖాళీ చేయండి.</translation>
 <translation id="5123433949759960244">బాస్కెట్‌బాల్</translation>
 <translation id="5125751979347152379">చెల్లని URL.</translation>
 <translation id="5126611267288187364">మార్పులను చూడండి</translation>
 <translation id="5127620150973591153">సురక్షిత కనెక్షన్ ID: <ph name="TOKEN" /></translation>
-<translation id="5127805178023152808">సమకాలీకరణ ఆఫ్‌లో ఉంది</translation>
+<translation id="5127805178023152808">సింక్‌ ఆఫ్‌లో ఉంది</translation>
 <translation id="5127881134400491887">నెట్‌వర్క్ కనెక్షన్‌లను నిర్వహించండి</translation>
 <translation id="512903556749061217">జోడించబడింది</translation>
 <translation id="5130080518784460891">Eten</translation>
@@ -3897,7 +3897,7 @@
 <translation id="5143374789336132547">"<ph name="EXTENSION_NAME" />" ఎక్స్‌టెన్ష‌న్‌, మీరు హోమ్ బటన్‌ను క్లిక్ చేసినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
 <translation id="5143612243342258355">ఈ ఫైల్ హానికరమైనది</translation>
 <translation id="5143712164865402236">పూర్తి స్క్రీన్‌ను ఎంటర్ చేయండి</translation>
-<translation id="514575469079499857">స్థానాన్ని (డిఫాల్ట్) గుర్తించడానికి మీ IP చిరునామాను ఉపయోగించండి</translation>
+<translation id="514575469079499857">స్థానాన్ని (డిఫాల్ట్) గుర్తించడానికి మీ IP అడ్రస్‌ను ఉపయోగించండి</translation>
 <translation id="5147103632304200977">HID పరికరాలను సైట్ యాక్సెస్ చేయాలనుకున్నప్పుడు అడుగు (సిఫార్సు చేయబడింది)</translation>
 <translation id="5148277445782867161">మీ పరికరం లొకేషన్‌ను అంచనా వేయడంలో సహాయపడటానికి Wi-Fi, మొబైల్ నెట్‌వర్క్‌లు, సెన్సార్‌ల లాంటి సోర్సులను Google లొకేషన్ సర్వీస్ ఉపయోగిస్తుంది.</translation>
 <translation id="5150070631291639005">గోప్యతా సెట్టింగ్‌లు</translation>
@@ -3942,7 +3942,7 @@
 <translation id="5193988420012215838">మీ క్లిప్‌బోర్డ్‌కు కోడ్ కాపీ చేయబడింది</translation>
 <translation id="5194256020863090856">ఇది అజ్ఞాత విండోలను మాత్రమే ప్రభావితం చేస్తుంది</translation>
 <translation id="5197255632782567636">ఇంటర్నెట్</translation>
-<translation id="5198430103906431024">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ డేటాను, పరికరం డేటాను, దానితో పాటు యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపుతోంది. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
+<translation id="5198430103906431024">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ డేటాను, పరికరం డేటాను, దానితో పాటు యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపుతోంది. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
 <translation id="5199729219167945352">ప్రయోగాలు</translation>
 <translation id="5203920255089865054">{NUM_EXTENSIONS,plural, =1{ఎక్స్‌టెన్షన్‌ను చూడటానికి క్లిక్ చేయండి}other{ఈ ఎక్స్‌టెన్షన్‌లను చూడటానికి క్లిక్ చేయండి}}</translation>
 <translation id="5204673965307125349">దయచేసి పరికరాన్ని పవర్‌వాష్ చేసి, మళ్లీ ప్రయత్నించండి.</translation>
@@ -3971,7 +3971,7 @@
 <translation id="5225463052809312700">కెమెరాను ఆన్ చేయి</translation>
 <translation id="5227679487546032910">డిఫాల్ట్ నీలం ఆకుపచ్చ రంగు అవతార్</translation>
 <translation id="5227902338748591677">ముదురు రంగు రూపం షెడ్యూల్</translation>
-<translation id="5228579091201413441">సమకాలీకరణను ప్రారంభించండి</translation>
+<translation id="5228579091201413441">సింక్‌ను ప్రారంభించండి</translation>
 <translation id="5230516054153933099">విండో</translation>
 <translation id="5233019165164992427">NaCl డీబగ్ పోర్ట్</translation>
 <translation id="5233231016133573565">ప్రాసెస్ ID</translation>
@@ -4019,7 +4019,7 @@
 <translation id="5280243692621919988">మీరు అన్ని బ్రౌజర్ విండోలను మూసివేసేటప్పుడు కుక్కీ‌లు, సైట్ డేటాను క్లియర్ చేయండి</translation>
 <translation id="5280426389926346830">షార్ట్‌కట్‌ను సృష్టించాలా?</translation>
 <translation id="528208740344463258">Android యాప్‌లను డౌన్‌లోడ్ చేసి, ఉపయోగించడం కోసం, ముందుగా మీరు ఈ అవసరమైన అప్‌డేట్‌ను ఇన్‌స్టాల్ చేయాలి. మీ <ph name="DEVICE_TYPE" /> అప్‌డేట్ అవుతున్న సమయంలో, మీరు దీనిని ఉపయోగించలేరు. ఇన్‌స్టాల్ చేయడం పూర్తయిన తర్వాత, మీ <ph name="DEVICE_TYPE" /> పునఃప్రారంభించబడుతుంది.</translation>
-<translation id="5282733140964383898">"ట్రాక్ చేయవద్దు" ప్రారంభించడం వ‌ల్ల‌ మీ బ్రౌజింగ్ ట్రాఫిక్‌తో ఒక అభ్యర్థన చేర్చబడుతుంది. ఆ అభ్యర్థనకు వెబ్‌సైట్ ప్రతిస్పందించిందా లేదా మరియు అభ్యర్థన ఎలా ప‌రిగ‌ణించ‌బ‌డింది అనే వాటిపై ఏ ప్రభావం అయినా ఆధారపడి ఉంటుంది. ఉదాహరణకు, కొన్ని వెబ్‌సైట్‌లు ఈ అభ్యర్థనకు ప్రతిస్పందనగా మీరు సందర్శించిన ఇతర వెబ్‌సైట్‌ల ఆధారంగా కాకుండా ఇతర ప్రకటనలను మీకు చూపుతాయి. అనేక వెబ్‌సైట్‌లు అప్పటికీ మీ బ్రౌజింగ్ డేటాను సేకరించి ఉపయోగిస్తాయి - ఉదాహరణకు భద్రతను మెరుగుపరిచే, వారి వెబ్‌సైట్‌ల్లో కంటెంట్, సేవలు, ప్రకటనలు మరియు సిఫార్సులను అందించే మరియు నివేదన గణాంకాలను రూపొందించే ఉద్దేశాలతో ఆ డేటాను ఉపయోగిస్తాయి. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
+<translation id="5282733140964383898">"ట్రాక్ చేయవద్దు" ప్రారంభించడం వ‌ల్ల‌ మీ బ్రౌజింగ్ ట్రాఫిక్‌తో ఒక రిక్వెస్ట్‌ చేర్చబడుతుంది. ఆ రిక్వెస్ట్‌కు వెబ్‌సైట్ ప్రతిస్పందించిందా లేదా మరియు రిక్వెస్ట్‌ ఎలా ప‌రిగ‌ణించ‌బ‌డింది అనే వాటిపై ఏ ప్రభావం అయినా ఆధారపడి ఉంటుంది. ఉదాహరణకు, కొన్ని వెబ్‌సైట్‌లు ఈ రిక్వెస్ట్‌కు ప్రతిస్పందనగా మీరు సందర్శించిన ఇతర వెబ్‌సైట్‌ల ఆధారంగా కాకుండా ఇతర ప్రకటనలను మీకు చూపుతాయి. అనేక వెబ్‌సైట్‌లు అప్పటికీ మీ బ్రౌజింగ్ డేటాను సేకరించి ఉపయోగిస్తాయి - ఉదాహరణకు భద్రతను మెరుగుపరిచే, వారి వెబ్‌సైట్‌ల్లో కంటెంట్, సేవలు, ప్రకటనలు మరియు సిఫార్సులను అందించే మరియు నివేదన గణాంకాలను రూపొందించే ఉద్దేశాలతో ఆ డేటాను ఉపయోగిస్తాయి. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
 <translation id="5283677936944177147">అయ్యో!  పరికర మోడల్ లేదా క్రమ సంఖ్యను గుర్తించడంలో సిస్టమ్ విఫలమైంది.</translation>
 <translation id="5284445933715251131">డౌన్‌లోడ్‌ చేయడాన్ని కొనసాగించు</translation>
 <translation id="5285635972691565180">ప్రదర్శన <ph name="DISPLAY_ID" /></translation>
@@ -4069,7 +4069,7 @@
 <translation id="5331975486040154427">USB-C పరికరం (ఎడమవైపు వెనుక పోర్ట్)</translation>
 <translation id="5334142896108694079">స్క్రిప్ట్ క్యాష్</translation>
 <translation id="5336126339807372270">USB పరికరాలను యాక్సెస్ చేయడానికి ఏ సైట్‌లను అనుమతించవద్దు</translation>
-<translation id="5336688142483283574">మీ చరిత్ర, <ph name="SEARCH_ENGINE" /> కార్యకలాపం నుండి కూడా ఈ పేజీ తీసివేయబడుతుంది.</translation>
+<translation id="5336688142483283574">మీ చరిత్ర, <ph name="SEARCH_ENGINE" /> యాక్టివిటీ నుండి కూడా ఈ పేజీ తీసివేయబడుతుంది.</translation>
 <translation id="5337771866151525739">మూడవ పక్షం ద్వారా ఇన్‌స్టాల్ చేయబడింది.</translation>
 <translation id="5337926771328966926">ప్రస్తుత పరికరం యొక్క పేరు <ph name="DEVICE_NAME" /></translation>
 <translation id="5338338064218053691">అజ్ఞాత విండోను ఉపయోగించి మీరు ప్రైవేట్‌గా బ్రౌజ్ చేయవచ్చు</translation>
@@ -4153,7 +4153,7 @@
 <translation id="5436492226391861498">ప్రాక్సీ టనెల్ కోసం వేచి ఉంది...</translation>
 <translation id="5436510242972373446"><ph name="SITE_NAME" /> వెతుకు:</translation>
 <translation id="5439680044267106777">స్కిప్ చేసి, కొత్త ప్రొఫైల్‌ను సెటప్ చేయండి</translation>
-<translation id="544083962418256601">సత్వరమార్గాలను సృష్టించు...</translation>
+<translation id="544083962418256601">షార్ట్‌కట్‌లను సృష్టించు...</translation>
 <translation id="5442228125690314719">డిస్క్ ఇమేజ్‌ను సృష్టించడంలో ఎర్రర్ ఏర్పడింది. దయచేసి మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="5442550868130618860">స్వీయ-అప్‌డేట్‌ని ఆన్ చేయి</translation>
 <translation id="5445400788035474247">10x</translation>
@@ -4241,7 +4241,7 @@
 <translation id="5518584115117143805">ఇమెయిల్ గుప్తీకరణ సర్టిఫికెట్</translation>
 <translation id="5519195206574732858">LTE</translation>
 <translation id="5521078259930077036">మీరు ఆశిస్తున్న హోమ్ పేజీ ఇదేనా?</translation>
-<translation id="5522156646677899028">ఈ పొడిగింపు తీవ్రమైన భద్రతా భేద్యతలను కలిగి ఉంది.</translation>
+<translation id="5522156646677899028">ఈ ఎక్స్‌టెన్షన్‌ తీవ్రమైన భద్రతా భేద్యతలను కలిగి ఉంది.</translation>
 <translation id="5523149538118225875">{NUM_EXTENSIONS,plural, =1{మీ నిర్వాహకుడి ద్వారా ఒక ఎక్స్‌టెన్షన్ ఇన్‌స్టాల్ చేయబడింది}other{మీ నిర్వాహకుడి ద్వారా # ఎక్స్‌టెన్షన్‌లు ఇన్‌స్టాల్ చేయబడ్డాయి}}</translation>
 <translation id="5523558474028191231">పేరులో అక్షరాలు, నంబర్‌లు, ప్రత్యేక అక్షరాలను ఉపయోగించవచ్చు, అలాగే తప్పనిసరిగా <ph name="MAX_CHARACTER_COUNT" /> అక్షరాలు లేదా అంతకంటే తక్కువ ఉండాలి</translation>
 <translation id="5526701598901867718">అన్ని (అసురక్షితం)</translation>
@@ -4286,7 +4286,7 @@
 <translation id="5571832155627049070">మీ ప్రొఫైల్‌ను తగినట్టుగా మార్చుకోండి</translation>
 <translation id="5572851009514199876">దయచేసి Chromeను ప్రారంభించి, దానికి సైన్ ఇన్ చేయండి, అప్పుడు ఈ సైట్‌ను యాక్సెస్ చేయడానికి మీకు అనుమతి ఉందో లేదో Chrome తనిఖీ చేయగలదు.</translation>
 <translation id="5575473780076478375">అజ్ఞాత ఎక్స్‌టెన్‌షన్: <ph name="EXTENSION_NAME" /></translation>
-<translation id="5575528586625653441">డెమో నమోదు అభ్యర్థనకు సంబంధించి ఒక సమస్య ఏర్పడింది.</translation>
+<translation id="5575528586625653441">డెమో నమోదు రిక్వెస్ట్‌కు సంబంధించి ఒక సమస్య ఏర్పడింది.</translation>
 <translation id="557722062034137776">మీ పరికరాన్ని రీసెట్ చేయడం వలన మీ Google ఖాతాలపై లేదా ఈ ఖాతాలకు సింక్ చేయ‌బ‌డిన‌ ఏదైనా డేటాపై ఎటువంటి ప్రభావం ఉండదు. అయితే, మీ పరికరంలో స్థానికంగా సేవ్ చేయబడిన అన్ని ఫైళ్లు తొలగించబడతాయి.</translation>
 <translation id="5578059481725149024">ఆటోమేటిక్ సైన్-ఇన్</translation>
 <translation id="558170650521898289">Microsoft Windows హార్డ్‌వేర్ డ్రైవర్ ధృవీకరణ</translation>
@@ -4307,7 +4307,7 @@
 <translation id="5588033542900357244">(<ph name="RATING_COUNT" />)</translation>
 <translation id="558918721941304263">యాప్‌లను లోడ్ చేస్తోంది...</translation>
 <translation id="5592595402373377407">ఇంకా తగినంత డేటా అందుబాటులో లేదు.</translation>
-<translation id="5595485650161345191">చిరునామాను సవరించు</translation>
+<translation id="5595485650161345191">అడ్రస్‌ను సవరించు</translation>
 <translation id="5596627076506792578">మరిన్ని ఎంపికలు</translation>
 <translation id="5600706100022181951"><ph name="UPDATE_SIZE_MB" /> MB మొబైల్ డేటాను ఉపయోగించి అప్‌డేట్‌ డౌన్‌లోడ్ చేయబడుతుంది. మీరు కొనసాగాలని అనుకుంటున్నారా?</translation>
 <translation id="5601503069213153581">PIN</translation>
@@ -4373,7 +4373,7 @@
 <translation id="5671641761787789573">చిత్రాలు బ్లాక్ చేయబడ్డాయి</translation>
 <translation id="5671658447180261823"><ph name="SUGGESTION_NAME" /> సూచనను తీసివేయండి</translation>
 <translation id="567587836466137939">ఈ పరికరం <ph name="MONTH_AND_YEAR" /> వరకు ఆటోమేటిక్ సాఫ్ట్‌వేర్, భద్రతాపరమైన అప్‌డేట్‌లను పొందుతుంది. <ph name="LINK_BEGIN" />మరింత తెలుసుకోండి<ph name="LINK_END" /></translation>
-<translation id="567643736130151854">అన్ని పరికరాలలో మీ బుక్‌మార్క్‌లు, పాస్‌వర్డ్‌లు మరియు మరిన్నింటిని పొందడం కోసం సైన్ ఇన్ చేసి, సమకాలీకరణను ఆన్ చేయండి</translation>
+<translation id="567643736130151854">అన్ని పరికరాలలో మీ బుక్‌మార్క్‌లు, పాస్‌వర్డ్‌లు మరియు మరిన్నింటిని పొందడం కోసం సైన్ ఇన్ చేసి, సింక్‌ను ఆన్ చేయండి</translation>
 <translation id="567740581294087470">మీరు ఏ రకమైన ఫీడ్‌బ్యాక్‌ను అందిస్తున్నారు?</translation>
 <translation id="5677503058916217575">పేజీ భాష:</translation>
 <translation id="5677928146339483299">బ్లాక్ చేయబడింది</translation>
@@ -4489,7 +4489,7 @@
 <translation id="5810809306422959727">తల్లిదండ్రుల నియంత్రణల కోసం ఈ ఖాతాకు అర్హత లేదు</translation>
 <translation id="581120508026692647">వెబ్‌సైట్ నోటిఫికేషన్‌ల కోసం, <ph name="LINK_BEGIN" />Chrome సెట్టింగ్‌ల<ph name="LINK_END" />కు వెళ్లండి</translation>
 <translation id="5812674658566766066">అన్నీ విస్తరించు</translation>
-<translation id="5815645614496570556">X.400 చిరునామా</translation>
+<translation id="5815645614496570556">X.400 అడ్రస్‌</translation>
 <translation id="5816434091619127343">అభ్యర్ధించిన ప్రింటర్ మార్పులు ప్రింటర్‌ను నిరుపయోగంగా చేస్తాయి.</translation>
 <translation id="5817069030404929329">ఈ పరికరం నుండి మీ Google ఖాతాకు పాస్‌వర్డ్‌లను తరలించాలా?</translation>
 <translation id="5817918615728894473">జత చేయి</translation>
@@ -4504,7 +4504,7 @@
 <translation id="5830720307094128296">&amp;లాగా పేజీని సేవ్ చేయి...</translation>
 <translation id="5832813618714645810">ప్రొఫైల్‌లు</translation>
 <translation id="583281660410589416">తెలియని</translation>
-<translation id="5833397272224757657">మీరు సందర్శించే సైట్‌లలోని కంటెంట్‌ను, దీనితో పాటు బ్రౌజర్ కార్యకలాపం అలాగే పరస్పర చర్యలను మీ అభిరుచికి తగిన విధంగా సెట్ చేయడంలో ఉపయోగిస్తుంది</translation>
+<translation id="5833397272224757657">మీరు సందర్శించే సైట్‌లలోని కంటెంట్‌ను, దీనితో పాటు బ్రౌజర్ యాక్టివిటీ అలాగే పరస్పర చర్యలను మీ అభిరుచికి తగిన విధంగా సెట్ చేయడంలో ఉపయోగిస్తుంది</translation>
 <translation id="5833726373896279253">ఈ సెట్టింగ్‌లు మీ యజమాని ద్వారా మాత్రమే సవరించబడతాయి:</translation>
 <translation id="5834581999798853053">సుమారు <ph name="TIME" /> నిమిషాలు మిగిలి ఉన్నాయి</translation>
 <translation id="5835486486592033703"><ph name="WINDOW_TITLE" /> - కెమెరా లేదా మైక్రోఫోన్ రికార్డ్ చేస్తోంది</translation>
@@ -4542,7 +4542,7 @@
 <translation id="5865508026715185451"><ph name="APP_NAME" /> త్వరలో పాజ్ అవుతుంది</translation>
 <translation id="586567932979200359">మీరు <ph name="PRODUCT_NAME" /> డిస్క్ ఇమేజ్ నుండి దాన్ని అమలు చేస్తున్నారు. మీ కంప్యూటర్‌లో దీన్ని ఇన్‌స్టాల్ చేయడం వలన డిస్క్ ఇమేజ్ లేకుండా దాన్ని అమలు చేయడానికి మీరు అనుమతించబడతారు. ఇది తాజాగా ఉంటుందని హామీ పొందుతారు.</translation>
 <translation id="5865733239029070421">వినియోగ గణాంకాలను, క్రాష్ రిపోర్ట్‌లను ఆటోమేటిక్‌గా Googleకు పంపుతుంది</translation>
-<translation id="5867841422488265304">వెతకండి లేదా వెబ్ చిరునామా టైప్ చేయండి</translation>
+<translation id="5867841422488265304">వెతకండి లేదా వెబ్ అడ్రస్‌ టైప్ చేయండి</translation>
 <translation id="5869029295770560994">సరే, అర్థమైంది</translation>
 <translation id="5869522115854928033">సేవ్  చేసిన పాస్‌వర్డ్‌లు</translation>
 <translation id="5870086504539785141">యాక్సెస్‌ మెనూను మూసివేయండి</translation>
@@ -4646,7 +4646,7 @@
 <translation id="5979156418378918004">{NUM_EXTENSIONS,plural, =1{మీరు హానికరమైనది అయ్యే అవకాశం ఉన్న 1 ఎక్స్‌టెన్షన్‌ను తిరిగి ఆన్ చేశారు}other{మీరు హానికరమైనవి అయ్యే అవకాశం ఉన్న {NUM_EXTENSIONS} ఎక్స్‌టెన్షన్‌లను తిరిగి ఆన్ చేశారు}}</translation>
 <translation id="5979353814339191480">ఈ ఆప్షన్ డేటా ప్లాన్ లేదా మొబైల్ నెట్‌వర్క్ డాంగిల్ కలిగిన, లేదా పోర్టబుల్ హాట్‌స్పాట్‌కు టెథరింగ్ చేస్తున్న Chromebookలకు వర్తిస్తుంది</translation>
 <translation id="5979421442488174909"><ph name="LANGUAGE" />కు &amp;అనువదించు</translation>
-<translation id="5979469435153841984">పేజీలను బుక్‌మార్క్ చేయాలంటే, చిరునామా బార్‌లో ఉన్న నక్షత్రాన్ని క్లిక్ చేయండి</translation>
+<translation id="5979469435153841984">పేజీలను బుక్‌మార్క్ చేయాలంటే, అడ్రస్‌ బార్‌లో ఉన్న నక్షత్రాన్ని క్లిక్ చేయండి</translation>
 <translation id="5983831175889857946">రివ్యూ పూర్తయింది!</translation>
 <translation id="5984222099446776634">ఇటీవల సందర్శించినవి</translation>
 <translation id="5985458664595100876">URL ఫార్మాట్ చెల్లదు. మద్దతు ఉన్న ఫార్మాట్‌లు \\server\share మరియు smb://server/share.</translation>
@@ -4780,7 +4780,7 @@
 <translation id="6122831415929794347">సురక్షిత బ్రౌజింగ్‌ను ఆఫ్ చేయాలా?</translation>
 <translation id="6122875415561139701">దీనిలో వ్రాసే చర్యకు అనుమతి లేదు: "<ph name="DEVICE_NAME" />".</translation>
 <translation id="6124213551517593835">దీనివలన <ph name="SITE_GROUP_NAME" /> స్టోర్ చేసిన మొత్తం డేటా, కుక్కీలు అలాగే దాని పరిధిలోకి వచ్చే ఏదైనా సైట్‌లు తొలగిపోయే ప్రమాదం వుంది</translation>
-<translation id="6124650939968185064">క్రింది పొడిగింపులు ఈ పొడిగింపుపై ఆధారపడి ఉంటాయి:</translation>
+<translation id="6124650939968185064">క్రింది ఎక్స్‌టెన్షన్‌లు ఈ పొడిగింపుపై ఆధారపడి ఉంటాయి:</translation>
 <translation id="6124698108608891449">ఈ సైట్‌కు మరిన్ని అనుమతులు అవసరం.</translation>
 <translation id="6125479973208104919">దురదృష్టవశాత్తూ, మీరు మీ ఖాతాను ఈ <ph name="DEVICE_TYPE" />కి మళ్లీ జోడించాలి.</translation>
 <translation id="6126601353087978360">దయచేసి మీ ఫీడ్‌బ్యాక్‌ను ఇక్కడ ఎంటర్ చేయండి:</translation>
@@ -4897,7 +4897,7 @@
 <translation id="625369703868467034">నెట్‌వర్క్ హెల్త్</translation>
 <translation id="6254503684448816922">కీ రాజీ</translation>
 <translation id="6254892857036829079">అద్భుతంగా ఉంది</translation>
-<translation id="6257602895346497974">సమకాలీకరణను ఆన్ చేయి...</translation>
+<translation id="6257602895346497974">సింక్‌ను ఆన్ చేయి...</translation>
 <translation id="625895209797312329">సైట్‌లు మీ పరికరంలో ఇన్‌స్టాల్ చేసిన ఫాంట్‌లు ఉపయోగించనివ్వకుండా బ్లాక్ చేయండి</translation>
 <translation id="6259104249628300056">మీ స్థానిక నెట్‌వర్క్‌లో పరికరాలను కనుగొనండి</translation>
 <translation id="6262371516389954471">మీ బ్యాకప్‌లు Googleకు అప్‌లోడ్ చేయబడతాయి, మీ Google ఖాతా పాస్‌వర్డ్‌ను ఉపయోగించి ఎన్‌క్రిప్ట్ చేయబడతాయి.</translation>
@@ -4962,7 +4962,7 @@
 <translation id="6317369057005134371">అప్లికేషన్ విండో కోసం వేచి ఉంది...</translation>
 <translation id="6318125393809743217">పాలసీ కాన్ఫిగరేషన్‌లతో కూడిన policies.json ఫైల్‌ను కలిగి ఉంది.</translation>
 <translation id="6318407754858604988">డౌన్‌లోడ్ ప్రారంభించబడింది</translation>
-<translation id="6318944945640833942">ప్రింటర్‌ను గుర్తించలేకపోయింది. దయచేసి ప్రింటర్ చిరునామాను మళ్లీ నమోదు చేయండి.</translation>
+<translation id="6318944945640833942">ప్రింటర్‌ను గుర్తించలేకపోయింది. దయచేసి ప్రింటర్ అడ్రస్‌ను మళ్లీ నమోదు చేయండి.</translation>
 <translation id="6319081871916332821"><ph name="LANGUAGE" /> పరికరంలోనే ప్రాసెస్ చేయబడుతుంది, ఆఫ్‌లైన్‌లో పని చేస్తుంది.</translation>
 <translation id="6321407676395378991">స్క్రీన్ సేవర్ ఆన్ చేయి</translation>
 <translation id="6322370287306604163">వేలిముద్ర సహాయంతో మరింత వేగంగా అన్‌లాక్ చేయండి</translation>
@@ -4986,7 +4986,7 @@
 <translation id="6341850831632289108">మీ భౌతిక స్థానాన్ని గుర్తించండి</translation>
 <translation id="6342069812937806050">ఇప్పుడే</translation>
 <translation id="6343003829431264373">సరి సంఖ్య పేజీలు మాత్రమే</translation>
-<translation id="6344170822609224263">నెట్‌వర్క్ కనెక్షన్‌ల జాబితాను యాక్సెస్ చేయండి</translation>
+<translation id="6344170822609224263">నెట్‌వర్క్ కనెక్షన్‌ల లిస్ట్‌ను యాక్సెస్ చేయండి</translation>
 <translation id="6344576354370880196">సేవ్ చేయబడిన ప్రింటర్‌లు</translation>
 <translation id="6345418402353744910">మీ నెట్‌వర్క్‌ను అడ్మిన్ కాన్ఫిగర్ చేయడానికి, ప్రాక్సీ <ph name="PROXY" /> కోసం మీ యూజర్‌నేమ్, పాస్‌వర్డ్ అవసరం</translation>
 <translation id="6345878117466430440">చదివినట్లుగా గుర్తించు</translation>
@@ -4998,7 +4998,7 @@
 <translation id="6358884629796491903">డ్రాగన్</translation>
 <translation id="6359706544163531585">లేత రంగు రూపాన్ని డిజేబుల్ చేయండి</translation>
 <translation id="6361850914223837199">ఎర్రర్ వివరాలు:</translation>
-<translation id="6362853299801475928">&amp;ఒక సమస్యను నివేదించండి...</translation>
+<translation id="6362853299801475928">&amp;ఒక సమస్యను రిపోర్ట్ చేయండి...</translation>
 <translation id="6363990818884053551">సింక్‌ను ప్రారంభించడానికి, అది మీరేనని వెరిఫై చేయండి</translation>
 <translation id="6365069501305898914">Facebook</translation>
 <translation id="6365411474437319296">కుటుంబ సభ్యులు మరియు స్నేహితులను జోడించండి</translation>
@@ -5034,10 +5034,10 @@
 <translation id="6410328738210026208">ఛానెల్ మరియు పవర్‌వాష్‌ను మార్చు</translation>
 <translation id="6410390304316730527">ప్రమాదకరమైన సాఫ్ట్‌వేర్ ఇన్‌స్టాల్ చేసే విధంగా లేదా మీ పాస్‌వర్డ్‌లు, ఫోన్ నంబర్‌లు లేదా క్రెడిట్ కార్డ్‌ల వంటి మీ వ్యక్తిగత సమాచారాన్ని బహిర్గతం చేసే విధంగా మిమ్మల్ని మాయ చేసే హ్యాకర్‌ల నుండి మిమ్మల్ని సురక్షిత బ్రౌజింగ్ రక్షిస్తుంది. మీరు దీన్ని ఆఫ్ చేస్తే, అపరిచిత లేదా విశ్వసనీయం కాని సైట్‌లను బ్రౌజ్ చేసినప్పుడు జాగ్రత్త వహించండి.</translation>
 <translation id="6410668567036790476">శోధన ఇంజిన్‌ను జోడించండి</translation>
-<translation id="6412673304250309937">Chromeలో స్టోర్ చేసిన సురక్షితం కాని సైట్‌ల జాబితాతో కూడిన URLలను చెక్ చేస్తుంది. ఏదైనా సైట్ మీ పాస్‌వర్డ్‌ను దొంగిలించే ప్రయత్నం చేసినా, లేదంటే ఏదైనా హానికరమైన ఫైల్‌ను మీరు డౌన్‌లోడ్ చేసినా, సదరు URLలను, ఆయా పేజీల కంటెంట్‌లోని కొన్ని భాగాలను కూడా Chrome, 'సురక్షిత బ్రౌజింగ్'కు పంపవచ్చు.</translation>
+<translation id="6412673304250309937">Chromeలో స్టోర్ చేసిన సురక్షితం కాని సైట్‌ల లిస్ట్‌తో కూడిన URLలను చెక్ చేస్తుంది. ఏదైనా సైట్ మీ పాస్‌వర్డ్‌ను దొంగిలించే ప్రయత్నం చేసినా, లేదంటే ఏదైనా హానికరమైన ఫైల్‌ను మీరు డౌన్‌లోడ్ చేసినా, సదరు URLలను, ఆయా పేజీల కంటెంట్‌లోని కొన్ని భాగాలను కూడా Chrome, 'సురక్షిత బ్రౌజింగ్'కు పంపవచ్చు.</translation>
 <translation id="641469293210305670">అప్‌డేట్‌లు, యాప్‌లు ఇన్‌స్టాల్ చేయండి</translation>
 <translation id="6414878884710400018">సిస్టమ్ ప్రాధాన్యతలను తెరవండి</translation>
-<translation id="6414888972213066896">మీరు ఈ సైట్‌ను సందర్శించడానికి అనుమతించమని కోరుతూ మీ తల్లి/తండ్రికి అభ్యర్థన పంపారు</translation>
+<translation id="6414888972213066896">మీరు ఈ సైట్‌ను సందర్శించడానికి అనుమతించమని కోరుతూ మీ తల్లి/తండ్రికి రిక్వెస్ట్‌ పంపారు</translation>
 <translation id="6415900369006735853">మీ ఫోన్ ద్వారా ఇంటర్నెట్‌కు కనెక్ట్ అవ్వండి</translation>
 <translation id="6416743254476733475">మీ కంప్యూటర్‌లో అనుమతించండి లేదా బ్లాక్ చేయండి.</translation>
 <translation id="6417265370957905582">Google Assistant</translation>
@@ -5066,7 +5066,7 @@
 <translation id="6444070574980481588">తేదీ మరియు సమయాన్ని సెట్ చేయండి</translation>
 <translation id="6444909401984215022"><ph name="WINDOW_TITLE" /> - బ్లూటూత్ స్కాన్ యాక్టివ్‌గా ఉంది</translation>
 <translation id="6445450263907939268">మీరు ఈ మార్పులు అవసరం లేదని భావిస్తే, మీ మునుపటి సెట్టింగ్‌లను పునరుద్ధరించవచ్చు.</translation>
-<translation id="6446213738085045933">డెస్క్‌టాప్ సత్వరమార్గాన్ని సృష్టించు</translation>
+<translation id="6446213738085045933">డెస్క్‌టాప్ షార్ట్‌కట్‌ను సృష్టించు</translation>
 <translation id="6447210166804596538">అత్యంత ముఖ్యమైన గోప్యత, సెక్యూరిటీ కంట్రోల్స్‌ను ఒకే చోట రివ్యూ చేయండి</translation>
 <translation id="6447842834002726250">కుక్కీలు</translation>
 <translation id="6450876761651513209">మీ గోప్యతా-సంబంధిత సెట్టింగ్‌లను మార్చండి</translation>
@@ -5209,7 +5209,7 @@
 <translation id="6594011207075825276">సీరియల్ పరికరాలను కనుగొంటోంది...</translation>
 <translation id="6595187330192059106">MIDI డివైజ్‌లపై పూర్తి కంట్రోల్ లేకుండా <ph name="HOST" />ను ఎల్లప్పుడూ బ్లాక్ చేయండి.</translation>
 <translation id="6596325263575161958">ఎన్‌క్రిప్షన్ ఎంపికలు</translation>
-<translation id="6596816719288285829">IP చిరునామా</translation>
+<translation id="6596816719288285829">IP అడ్రస్‌</translation>
 <translation id="6597017209724497268">నమూనాలు</translation>
 <translation id="6597148444736186483">ఈ పరికరంలోని ప్రాధమిక ఖాతా నుండి సైన్ అవుట్ చేయడానికి, మీ స్క్రీన్‌పై సమయాన్ని క్లిక్ చేయండి. అది కనిపించే మెనూలో, "సైన్ అవుట్" క్లిక్ చేయండి.</translation>
 <translation id="6601395831301182804">Chrome OSకు బిల్ట్-ఇన్ స్క్రీన్ రీడర్ అయిన ChromeVoxను యాక్టివేట్ చేసుకోవాలనుకుంటున్నారా? యాక్టివేట్ చేసుకోవాలనుకుంటే, స్పేస్ బార్‌ను నొక్కండి.</translation>
@@ -5263,7 +5263,7 @@
 <translation id="6655190889273724601">డెవలపర్ మోడ్</translation>
 <translation id="6655458902729017087">ఖాతాలను దాచు</translation>
 <translation id="6657585470893396449">పాస్‌వర్డ్</translation>
-<translation id="6659213950629089752">ఈ పేజీ "<ph name="NAME" />" పొడిగింపు ద్వారా జూమ్ చేయబడింది</translation>
+<translation id="6659213950629089752">ఈ పేజీ "<ph name="NAME" />" ఎక్స్‌టెన్షన్‌ ద్వారా జూమ్ చేయబడింది</translation>
 <translation id="6659594942844771486">ట్యాబ్</translation>
 <translation id="6660413144148052430">లొకేషన్</translation>
 <translation id="666099631117081440">ప్రింట్ సర్వర్‌లు</translation>
@@ -5325,11 +5325,11 @@
 <translation id="6725206449694821596">ఇంటర్నెట్ ముద్రణ ప్రోటోకాల్ (IPP)</translation>
 <translation id="6725970970008349185">ప్రతి పేజీకి ప్రదర్శించడానికి అభ్యర్థుల సంఖ్య</translation>
 <translation id="672609503628871915">కొత్తగా ఏమి ఉన్నాయో చూడండి</translation>
-<translation id="67269783048918309">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ, అలాగే పరికర, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపుతుంది. ఇది మీ చిన్నారి గురించి గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ <ph name="BEGIN_LINK1" />సెట్టింగ్‌<ph name="END_LINK1" />ని యజమాని అమలు చేశారు. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
+<translation id="67269783048918309">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ, అలాగే పరికర, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపుతుంది. ఇది మీ చిన్నారి గురించి గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ <ph name="BEGIN_LINK1" />సెట్టింగ్‌<ph name="END_LINK1" />ని యజమాని అమలు చేశారు. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
 <translation id="6727969043791803658">కనెక్ట్ చేయబడింది, <ph name="BATTERY_PERCENTAGE" />% బ్యాటరీ ఉంది</translation>
 <translation id="6732087373923685049">కెమెరా</translation>
 <translation id="6735304988756581115">కుక్కీలు మరియు ఇతర సైట్ డేటాను చూపించు...</translation>
-<translation id="6736243959894955139">చిరునామా</translation>
+<translation id="6736243959894955139">అడ్రస్‌</translation>
 <translation id="6737663862851963468">Kerberos టిక్కెట్‌ను తీసివేయండి</translation>
 <translation id="6739923123728562974">డెస్క్‌టాప్ షార్ట్‌క‌ట్‌ను చూపు</translation>
 <translation id="6740234557573873150"><ph name="FILE_NAME" /> పాజ్ చేయబడింది</translation>
@@ -5341,7 +5341,7 @@
 <translation id="674632704103926902">నొక్కి లాగడాన్ని ప్రారంభించు</translation>
 <translation id="6748054820659621153">Google Lens సహాయంతో మీ స్క్రీన్‌ను సెర్చ్ చేయండి</translation>
 <translation id="6748465660675848252">మీరు కొనసాగించవచ్చు, కానీ మీ సమకాలీకరించిన డేటా మరియు సెట్టింగ్‌లు మాత్రమే పునరుద్ధరించబడతాయి. మొత్తం స్థానిక డేటాని కోల్పోవడం జరుగుతుంది.</translation>
-<translation id="6749006854028927059">వివిధ సైట్‌లలో మీ బ్రౌజింగ్ కార్యకలాపాన్ని చూడటానికి సైట్‌లు మీ కుక్కీలను ఉపయోగించలేవు, ఉదాహరణకు, యాడ్స్ వ్యక్తిగతీకరించడం. కొన్ని సైట్‌లలోని ఫీచర్‌లు సరిగ్గా పని చేయకపోవచ్చు.</translation>
+<translation id="6749006854028927059">వివిధ సైట్‌లలో మీ బ్రౌజింగ్ యాక్టివిటీని చూడటానికి సైట్‌లు మీ కుక్కీలను ఉపయోగించలేవు, ఉదాహరణకు, యాడ్స్ వ్యక్తిగతీకరించడం. కొన్ని సైట్‌లలోని ఫీచర్‌లు సరిగ్గా పని చేయకపోవచ్చు.</translation>
 <translation id="6750757184909117990">సెల్యులార్‌ను డిజేబుల్ చేయడం</translation>
 <translation id="6750946710563435348">వేరొక యూజర్‌నేమ్‌ను ఉపయోగించండి</translation>
 <translation id="6751344591405861699"><ph name="WINDOW_TITLE" /> (అజ్ఞాతంగా)</translation>
@@ -5370,7 +5370,7 @@
 <translation id="6787097042755590313">ఇతర ట్యాబ్</translation>
 <translation id="6787631759192429908">ఫైళ్ళను తెరవాలా?</translation>
 <translation id="6787839852456839824">కీబోర్డ్ షార్ట్‌కట్‌లు</translation>
-<translation id="6788210894632713004">ప్యాక్ చేయని పొడిగింపు</translation>
+<translation id="6788210894632713004">ప్యాక్ చేయని ఎక్స్‌టెన్షన్‌</translation>
 <translation id="6789592661892473991">అడ్డంగా విభజించు</translation>
 <translation id="678982761784843853">సురక్షితమైన కంటెంట్ IDలు</translation>
 <translation id="6790428901817661496">ప్లే చేయి</translation>
@@ -5415,7 +5415,7 @@
 <translation id="6820143000046097424">సీరియల్ పోర్ట్‌లు</translation>
 <translation id="682123305478866682">డెస్క్‌టాప్‌ను ప్రసారం చేయండి</translation>
 <translation id="6823174134746916417">టచ్‌ప్యాడ్ క్లిక్-కోసం-ట్యాప్ చేయండి</translation>
-<translation id="6824564591481349393">&amp;ఇమెయిల్ చిరునామాను కాపీ చేయండి</translation>
+<translation id="6824564591481349393">&amp;ఇమెయిల్ అడ్రస్‌ను కాపీ చేయండి</translation>
 <translation id="6824584962142919697">&amp;మూలకాలను పర్యవేక్షించు</translation>
 <translation id="6825184156888454064">పేరు ద్వారా వ‌ర్గీక‌రించు</translation>
 <translation id="6826872289184051766">USB ద్వారా ధృవీకరించు</translation>
@@ -5446,7 +5446,7 @@
 <translation id="6848388270925200958">ఇప్పుడు, కేవలం ఈ పరికరంలో మాత్రమే ఉపయోగించగల కొన్ని కార్డ్‌లు మీ వద్ద ఉన్నాయి</translation>
 <translation id="6848716236260083778">వేలిముద్రను సెటప్ చేయడానికి, మీ చిన్నారి చేత వేలిముద్ర సెన్సార్‌పై తాకించండి. మీ చిన్నారి వేలిముద్ర సురక్షితంగా స్టోర్ చేయబడుతుంది, ఎప్పటికీ ఈ <ph name="DEVICE_TYPE" />‌లోనే ఉంటుంది.</translation>
 <translation id="6850286078059909152">వచన రంగు</translation>
-<translation id="6851181413209322061">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ డేటాను, పరికరం డేటాను, దానితో పాటు యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపుతోంది. ఇది మీ చిన్నారిని గుర్తించడానికి ఉపయోగించబడదు. ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ సెట్టింగ్‌ను యజమాని సెట్ చేశారు. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ కార్యకలాపాన్ని ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ కావచ్చు.</translation>
+<translation id="6851181413209322061">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ డేటాను, పరికరం డేటాను, దానితో పాటు యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపుతోంది. ఇది మీ చిన్నారిని గుర్తించడానికి ఉపయోగించబడదు. ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ సెట్టింగ్‌ను యజమాని సెట్ చేశారు. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ యాక్టివిటీని ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ కావచ్చు.</translation>
 <translation id="6851497530878285708">యాప్ ప్రారంభించబడింది</translation>
 <translation id="6853388645642883916">అప్‌డేటర్ నిద్రావస్థలో ఉంది</translation>
 <translation id="68541483639528434">ఇతర ట్యాబ్‌లను మూసివేయి</translation>
@@ -5489,7 +5489,7 @@
 <translation id="6902336033320348843">విభాగానికి మద్దతు లేదు: <ph name="ERROR_LINE" /></translation>
 <translation id="6902837902700739466">పరికరాన్ని డొమైన్‌కు చేర్చండి</translation>
 <translation id="6903590427234129279">అన్నింటినీ (<ph name="URL_COUNT" />) తెరవండి</translation>
-<translation id="6903907808598579934">సమకాలీకరణను ఆన్ చేయి</translation>
+<translation id="6903907808598579934">సింక్‌ను ఆన్ చేయి</translation>
 <translation id="6904344821472985372">ఫైల్ యాక్సెస్‌ను ఉపసంహరించు</translation>
 <translation id="6904655473976120856">నిష్క్రమించడానికి యాప్ బటన్ నొక్కండి</translation>
 <translation id="6909422577741440844">ఈ పరికరం నుండి అందుకోవాలని అనుకుంటున్నారా?</translation>
@@ -5499,10 +5499,10 @@
 <translation id="6912007319859991306">సెల్యూలార్ SIM పిన్</translation>
 <translation id="691289340230098384">క్యాప్షన్ ప్రాధాన్యతలు</translation>
 <translation id="6914783257214138813">ఎగుమతి చేయబడిన ఫైల్‌ను చూడగల ఎవరికైనా మీ పాస్‌వర్డ్‌లు కనిపిస్తాయి.</translation>
-<translation id="6916590542764765824">పొడిగింపులను నిర్వహించండి</translation>
+<translation id="6916590542764765824">ఎక్స్‌టెన్షన్‌లను నిర్వహించండి</translation>
 <translation id="6919868320029503575">బలహీనమైన పాస్‌వర్డ్‌లు</translation>
 <translation id="6920989436227028121">సాధారణ టాబ్‌ లాగా తెరువు</translation>
-<translation id="6921104647315081813">కార్యకలాపాలను తీసివేయి</translation>
+<translation id="6921104647315081813">యాక్టివిటీలను తీసివేయి</translation>
 <translation id="692114467174262153"><ph name="ALTERNATIVE_BROWSER_NAME" />ను తెరవలేకపోయింది</translation>
 <translation id="6922128026973287222">Google డేటా సేవర్‌ను ఉపయోగించి డేటాను ఆదా చేయండి. వేగంగా బ్రౌజ్ చేయండి. మరింత తెలుసుకోవడానికి క్లిక్ చేయండి.</translation>
 <translation id="6922745772873733498">ముద్రించడానికి పిన్‌ను నమోదు చేయండి</translation>
@@ -5542,7 +5542,7 @@
 <translation id="6965648386495488594">పోర్ట్</translation>
 <translation id="6965978654500191972">పరికరం</translation>
 <translation id="6967430741871315905">పరికరం అనుమతించబడుతుందో లేదో చెక్ చేయడం సాధ్యపడలేదు</translation>
-<translation id="696780070563539690">వివిధ సైట్‌లలో మీ బ్రౌజింగ్ కార్యకలాపాన్ని చూడటానికి సైట్‌లు మీ కుక్కీలను ఉపయోగించలేవు, ఉదాహరణకు, యాడ్‌లను వ్యక్తిగతీకరించడానికి</translation>
+<translation id="696780070563539690">వివిధ సైట్‌లలో మీ బ్రౌజింగ్ యాక్టివిటీని చూడటానికి సైట్‌లు మీ కుక్కీలను ఉపయోగించలేవు, ఉదాహరణకు, యాడ్‌లను వ్యక్తిగతీకరించడానికి</translation>
 <translation id="6968288415730398122">స్క్రీన్ లాక్‌ను కాన్ఫిగర్ చేయడానికి మీ పాస్‌వర్డ్‌ను నమోదు చేయండి</translation>
 <translation id="6969047215179982698">సమీప షేరింగ్‌ను ఆఫ్ చేయండి</translation>
 <translation id="6970480684834282392">ప్రారంభ రకం</translation>
@@ -5577,7 +5577,7 @@
 <translation id="6993050154661569036">Chrome బ్రౌజర్‌ను అప్‌డేట్ చేస్తోంది</translation>
 <translation id="6994069045767983299">రంగుల మధ్య బేధం ఎక్కువగా ఉండే మోడ్</translation>
 <translation id="6995899638241819463">మీరు ఉపయోగించే పాస్‌వర్డ్‌లు, ఏదైనా డేటా ఉల్లంఘనలో బహిర్గతమైతే మిమ్మల్ని హెచ్చరిస్తుంది</translation>
-<translation id="6997642619627518301"><ph name="NAME_PH" /> - కార్యకలాపం లాగ్</translation>
+<translation id="6997642619627518301"><ph name="NAME_PH" /> - యాక్టివిటీ లాగ్</translation>
 <translation id="6997707937646349884">మీ పరికరాలలో:</translation>
 <translation id="6998793565256476099">వీడియో మీటింగ్‌ కోసం పరికరాన్ని నమోదు చేయండి</translation>
 <translation id="6999956497249459195">కొత్త గ్రూప్</translation>
@@ -5644,7 +5644,7 @@
 <translation id="7058024590501568315">దాచబడిన నెట్‌వర్క్</translation>
 <translation id="7059858479264779982">స్వీయ-ప్రారంభానికి సెట్ చేయి</translation>
 <translation id="7062222374113411376">డేటాను పంపడం మరియు స్వీకరించడం పూర్తి చేయడానికి ఇటీవల మూసివేసిన సైట్‌లను అనుమతించు (సిఫార్సు చేయబడింది)</translation>
-<translation id="7063129466199351735">సత్వరమార్గాలను ప్రాసెస్ చేస్తోంది...</translation>
+<translation id="7063129466199351735">షార్ట్‌కట్‌లను ప్రాసెస్ చేస్తోంది...</translation>
 <translation id="7063311912041006059">ప్రశ్న యొక్క ప్రదేశంలో <ph name="SPECIAL_SYMBOL" />తో URL</translation>
 <translation id="706342288220489463">సహాయం చేయడానికి మీ Assistantను మీ స్క్రీన్‌పై సమాచారాన్ని ఉపయోగించనివ్వండి</translation>
 <translation id="7064734931812204395">Linux కంటైనర్ కాన్ఫిగర్ అవుతోంది. దీనికి 30 నిమిషాల వరకు పట్టవచ్చు.</translation>
@@ -5664,7 +5664,7 @@
 <translation id="7076293881109082629">సైన్ ఇన్ చేస్తోంది</translation>
 <translation id="7077829361966535409">సైన్ ఇన్ పేజీ ప్రస్తుత ప్రాక్సీ సెట్టింగ్‌లను ఉపయోగించి లోడ్ కావడంలో విఫలమైంది. దయచేసి <ph name="GAIA_RELOAD_LINK_START" />మళ్లీ సైన్ ఇన్ చేయడానికి ప్రయత్నించండి<ph name="GAIA_RELOAD_LINK_END" /> లేదా విభిన్న <ph name="PROXY_SETTINGS_LINK_START" />ప్రాక్సీ సెట్టింగ్‌ల<ph name="PROXY_SETTINGS_LINK_END" />ను ఉపయోగించండి.</translation>
 <translation id="7078120482318506217">అన్ని నెట్‌వర్క్‌లు</translation>
-<translation id="708060913198414444">ఆడియో చిరునామాను కా&amp;పీ చేయి</translation>
+<translation id="708060913198414444">ఆడియో అడ్రస్‌ను కా&amp;పీ చేయి</translation>
 <translation id="7085389578340536476">ఆడియోను రికార్డ్ చేయడానికి Chromeను అనుమతించాలా?</translation>
 <translation id="7086672505018440886">ఆర్కైవ్‌లో Chrome లాగ్ ఫైళ్లను చేర్చండి.</translation>
 <translation id="7088434364990739311">అప్‌డేట్‌ తనిఖీ ప్రారంభం విఫలమైంది (ఎర్ర‌ర్‌ కోడ్ <ph name="ERROR" />).</translation>
@@ -5677,7 +5677,7 @@
 <translation id="7098447629416471489">సేవ్ చేసిన ఇతర శోధన ఇంజిన్‌లు ఇక్కడ కనిపిస్తాయి</translation>
 <translation id="7099337801055912064">పెద్ద PPDని లోడ్ చేయడం సాధ్యం కాదు. గరిష్ట పరిమాణం 250 kB.</translation>
 <translation id="7102687220333134671">ఆటోమేటిక్‌ అప్‌డేట్‌లు ఆన్ చేయబడ్డాయి</translation>
-<translation id="7102832101143475489">అభ్యర్థన సమయం ముగిసింది</translation>
+<translation id="7102832101143475489">రిక్వెస్ట్‌ సమయం ముగిసింది</translation>
 <translation id="710640343305609397">నెట్‌వర్క్ సెట్టింగ్‌లను తెరవండి</translation>
 <translation id="7108338896283013870">దాచిపెట్టు</translation>
 <translation id="7108668606237948702">ఎంటర్</translation>
@@ -5686,14 +5686,14 @@
 <translation id="7110644433780444336">{NUM_TABS,plural, =1{ట్యాబ్‌ను గ్రూప్‌నకు జోడించు}other{ట్యాబ్‌లను గ్రూప్‌నకు జోడించు}}</translation>
 <translation id="7111822978084196600">ఈ విండోకు పేరు పెట్టండి</translation>
 <translation id="7113102733263608554"><ph name="ITEM_COUNT_ONE" /> ఐటెమ్</translation>
-<translation id="7113502843173351041">మీ ఇమెయిల్ చిరునామాను తెలియపరచడానికి అనుమతి</translation>
+<translation id="7113502843173351041">మీ ఇమెయిల్ అడ్రస్‌ను తెలియపరచడానికి అనుమతి</translation>
 <translation id="7114054701490058191">పాస్‌‌వర్డ్‌లు సరిపోలలేదు</translation>
 <translation id="7114648273807173152">మీ Google ఖాతాకు సైన్ ఇన్ చేయడం కోసం Smart Lockని ఉపయోగించడానికి, సెట్టింగ్‌లు &gt; కనెక్ట్ చేసిన పరికరాలు &gt; మీ ఫోన్ &gt; Smart Lockకు వెళ్లండి.</translation>
 <translation id="7115361495406486998">అందుబాటులో కాంటాక్ట్‌లు ఏవీ లేవు</translation>
 <translation id="7117228822971127758">దయచేసి తర్వాత మళ్లీ ప్రయత్నించండి</translation>
 <translation id="7117247127439884114">మళ్ళీ సైన్ ఇన్ చేయండి...</translation>
 <translation id="711840821796638741">నిర్వహించబడే బుక్‌మార్క్‌లను చూపు</translation>
-<translation id="711902386174337313">మీ సైన్-ఇన్ చేసిన పరికరాల యొక్క జాబితాను చదవడం</translation>
+<translation id="711902386174337313">మీ సైన్-ఇన్ చేసిన పరికరాల యొక్క లిస్ట్‌ను చదవడం</translation>
 <translation id="711985611146095797">మీరు సైన్ ఇన్ చేసిన Google ఖాతాలను మేనేజ్ చేయడానికి ఈ పేజీ మిమ్మల్ని అనుమతిస్తుంది. <ph name="LINK_BEGIN" />మరింత తెలుసుకోండి<ph name="LINK_END" /></translation>
 <translation id="7120762240626567834">VPN కనెక్ట్ చేయకపోతే Chrome బ్రౌజర్, Android ట్రాఫిక్ బ్లాక్ చేయబడతాయి</translation>
 <translation id="7120865473764644444">సింక్ సర్వర్‌కు కనెక్ట్ చేయడం సాధ్యపడలేదు. మళ్లీ ప్రయత్నిస్తోంది...</translation>
@@ -5703,7 +5703,7 @@
 <translation id="7123360114020465152">ఇకపై మద్దతు లేదు</translation>
 <translation id="7125148293026877011">Crostiniని తొలగించండి</translation>
 <translation id="7127980134843952133">డౌన్‌లోడ్ హిస్టరీ</translation>
-<translation id="7128151990937044829">నోటిఫికేషన్‌లను బ్లాక్ చేసినప్పుడు చిరునామా బార్‌లో సూచికను చూపించు</translation>
+<translation id="7128151990937044829">నోటిఫికేషన్‌లను బ్లాక్ చేసినప్పుడు అడ్రస్‌ బార్‌లో సూచికను చూపించు</translation>
 <translation id="7131040479572660648"><ph name="WEBSITE_1" />, <ph name="WEBSITE_2" /> మరియు <ph name="WEBSITE_3" />లోని మీ డేటాను చదవండి</translation>
 <translation id="713122686776214250">పే&amp;జీని జోడించండి...</translation>
 <translation id="7133578150266914903">మీ నిర్వాహకుడు మీ పరికరాన్ని ఉపసంహరిస్తున్నారు (<ph name="PROGRESS_PERCENT" />)</translation>
@@ -5758,7 +5758,7 @@
 <translation id="7203150201908454328">విస్తరించబడింది</translation>
 <translation id="7206693748120342859"><ph name="PLUGIN_NAME" />ని డౌన్‌లోడ్ చేస్తోంది...</translation>
 <translation id="720715819012336933">{NUM_PAGES,plural, =1{పేజీ నుండి నిష్క్రమించు}other{పేజీల నుండి నిష్క్రమించు}}</translation>
-<translation id="7207457272187520234">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ డేటాను, పరికరం డేటాను, దానితో పాటు యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపుతోంది. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ సెట్టింగ్‌ను యజమాని సెట్ చేశారు. మీ అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
+<translation id="7207457272187520234">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ డేటాను, పరికరం డేటాను, దానితో పాటు యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపుతోంది. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ సెట్టింగ్‌ను యజమాని సెట్ చేశారు. మీ అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
 <translation id="7207631048330366454">యాప్‌లను వెతకండి</translation>
 <translation id="7210499381659830293">ఎక్స్‌టెన్షన్ ప్రింటర్‌లు</translation>
 <translation id="7211783048245131419">ఇప్పటికీ ఎలాంటి స్విచ్ కేటాయించబడలేదు</translation>
@@ -5772,7 +5772,7 @@
 <translation id="722099540765702221">ఛార్జ్ చేసుకునే సోర్స్</translation>
 <translation id="7221869452894271364">ఈ పేజీని మళ్లీ లోడ్ చేయి</translation>
 <translation id="7222204278952406003">మీ డిఫాల్ట్ బ్రౌజర్‌గా Chrome సెట్ చేయబడింది</translation>
-<translation id="7222232353993864120">ఇమెయిల్ చిరునామా</translation>
+<translation id="7222232353993864120">ఇమెయిల్ అడ్రస్‌</translation>
 <translation id="7225179976675429563">నెట్‌వర్క్ రకం లేదు</translation>
 <translation id="7228479291753472782">వెబ్‌సైట్‌లు భౌగోళికస్థానం, మైక్రోఫోన్, కెమెరా మొదలైనటువంటి లక్షణాలను ఉపయోగించవచ్చా లేదా అనేది పేర్కొనే సెట్టింగ్‌లను ఎడిట్ చేయండి</translation>
 <translation id="7228523857728654909">స్క్రీన్ లాక్ మరియు సైన్ ఇన్</translation>
@@ -5780,7 +5780,7 @@
 <translation id="7230787553283372882">మీ వచన పరిమాణాన్ని అనుకూలీకరించండి</translation>
 <translation id="7232750842195536390">పేరు మార్చడం విఫలమైంది</translation>
 <translation id="7234010996000898150">Linux పునరుద్ధరణను రద్దు చేస్తోంది</translation>
-<translation id="7235716375204803342">కార్యకలాపాలను పొందుతోంది...</translation>
+<translation id="7235716375204803342">యాక్టివిటీలను పొందుతోంది...</translation>
 <translation id="7235737137505019098">ఏ ఇతర ఖాతాల కోసం మీ సెక్యూరిటీ కీలో తగినంత స్థలం లేదు.</translation>
 <translation id="7235873936132740888">మీరు మీ ఇమెయిల్ క్లయింట్‌లో కొత్త మెసేజ్‌ను క్రియేట్ చేయడం లేదా మీ ఆన్‌లైన్ క్యాలెండర్‌కు కొత్త ఈవెంట్‌లను జోడించడం వంటి కొన్ని రకాల లింక్‌లపై క్లిక్ చేసినప్పుడు సైట్‌లు ప్రత్యేక టాస్క్‌లను హ్యాండిల్ చేయగలవు</translation>
 <translation id="7238640585329759787">ఎనేబుల్ చేసినప్పుడు, సైట్‌లు వారి కంటెంట్, అలాగే సర్వీస్‌లను అందించడం కోసం, ఇక్కడ చూపిన గోప్యతా-సంరక్షణ పద్ధతులను ఉపయోగించవచ్చు. వీటిలో క్రాస్-సైట్ ట్రాకింగ్ ప్రత్యామ్నాయాలు కలిగి ఉంటాయి. కాలానుగుణంగా మరిన్ని ట్రయల్‌లు జోడించబడవచ్చు.</translation>
@@ -5972,7 +5972,7 @@
 <translation id="7436921188514130341">అయ్యో! పేరు మారుస్తున్నప్పుడు ఎర్రర్ ఏర్పడింది.</translation>
 <translation id="7438495332316988804">లాంచర్‌లో "Chrome" అని టైప్ చేయడం ద్వారా స్టాండర్డ్ బ్రౌజర్‌ను కనుగొనవచ్చు.</translation>
 <translation id="7439519621174723623">కొనసాగించడానికి, పరికరం పేరును జోడించండి</translation>
-<translation id="7441736921018636843">ఈ సెట్టింగ్‌ని మార్చడానికి, మీ సమకాలీకరణ రహస్య పదబంధాన్ని తీసివేయడానికి <ph name="BEGIN_LINK" />సమకాలీకరణను రీసెట్ చేయండి<ph name="END_LINK" /></translation>
+<translation id="7441736921018636843">ఈ సెట్టింగ్‌ని మార్చడానికి, మీ సింక్‌ రహస్య పదబంధాన్ని తీసివేయడానికి <ph name="BEGIN_LINK" />సింక్‌ను రీసెట్ చేయండి<ph name="END_LINK" /></translation>
 <translation id="7441830548568730290">ఇతర వినియోగదారులు</translation>
 <translation id="744341768939279100">కొత్త ప్రొఫైల్‌ను సృష్టించు</translation>
 <translation id="744366959743242014">డేటా లోడ్ అవుతోంది, దీనికి కొన్ని సెకన్లు పట్టవచ్చు.</translation>
@@ -6129,7 +6129,7 @@
 <translation id="7602173054665172958">ప్రింట్ మేనేజ్‌మెంట్</translation>
 <translation id="7603785829538808504">దిగువున లిస్ట్ చేయబడిన సైట్‌లు అనుకూల సెట్టింగ్‌ను ఫాలో అవుతాయి</translation>
 <translation id="7604942372593434070">మీ బ్రౌజింగ్ కార్యాచరణను యాక్సెస్ చేయండి</translation>
-<translation id="7605594153474022051">సమకాలీకరణ పని చేయడం లేదు</translation>
+<translation id="7605594153474022051">సింక్‌ పని చేయడం లేదు</translation>
 <translation id="7606992457248886637">అధికారాలు</translation>
 <translation id="7607002721634913082">పాజ్ చెయ్యబడింది</translation>
 <translation id="7608810328871051088">Android ప్రాధాన్యతలు</translation>
@@ -6175,7 +6175,7 @@
 <translation id="7645176681409127223"><ph name="USER_NAME" /> (యజమాని)</translation>
 <translation id="7645681574855902035">Linux బ్యాకప్‍ను రద్దు చేస్తోంది</translation>
 <translation id="7646772052135772216">పాస్‌వర్డ్ సింక్ పనిచేయడం లేదు</translation>
-<translation id="7647403192093989392">ఇటీవలి కార్యకలాపాలు లేవు</translation>
+<translation id="7647403192093989392">ఇటీవలి యాక్టివిటీలు లేవు</translation>
 <translation id="7649070708921625228">సహాయం</translation>
 <translation id="7650178491875594325">స్థానిక డేటాను రీస్టోర్ చేయండి</translation>
 <translation id="7650511557061837441">"<ph name="EXTENSION_NAME" />"ని "<ph name="TRIGGERING_EXTENSION_NAME" />" తీసివేయాలనుకుంటోంది.</translation>
@@ -6215,7 +6215,7 @@
 <translation id="7681095912841365527">సైట్ బ్లూటూత్‌ను ఉపయోగించవచ్చు</translation>
 <translation id="7681597159868843240">వర్చువల్ రియాలిటీ లేదా ఫిట్‌నెస్ ట్రాకింగ్ వంటి ఫీచర్‌ల కోసం సాధారణంగా సైట్‌లు పరికర మోషన్ సెన్సార్‌లను ఉపయోగించుకుంటాయి</translation>
 <translation id="7683164815270164555">వెబ్ యాప్ ఫైళ్ల రకాలను తెరవాల్సినప్పుడు అనుమతి అడగాలి</translation>
-<translation id="7683373461016844951">కొనసాగించాలంటే, సరే క్లిక్ చేసి, ఆపై మీ <ph name="DOMAIN" /> ఇమెయిల్ చిరునామా కోసం కొత్త ప్రొఫైల్‌ను సృష్టించడానికి వ్యక్తిని జోడించు క్లిక్ చేయండి.</translation>
+<translation id="7683373461016844951">కొనసాగించాలంటే, సరే క్లిక్ చేసి, ఆపై మీ <ph name="DOMAIN" /> ఇమెయిల్ అడ్రస్‌ కోసం కొత్త ప్రొఫైల్‌ను సృష్టించడానికి వ్యక్తిని జోడించు క్లిక్ చేయండి.</translation>
 <translation id="7684212569183643648">మీ నిర్వాహకుడు ఇన్‌స్టాల్ చేశారు</translation>
 <translation id="7684559058815332124">క్యాప్టివ్ పోర్టల్ లాగిన్ పేజీని సందర్శించండి</translation>
 <translation id="7684718995427157417">మీ యాప్‌లను సృష్టించి, పరీక్షించడానికి Android డీబగ్ బ్రిడ్జ్ (ADB)ను ప్రారంభించండి. ఈ చర్య వలన Google ద్వారా ధృవీకరించబడని Android యాప్‌ల ఇన్‌స్టాలేషన్ అనుమతించబడుతుందని, దీనిని నిలిపివేయడానికి ఫ్యాక్టరీ రీసెట్ చేయాల్సి ఉంటుందని గుర్తుంచుకోండి.</translation>
@@ -6223,7 +6223,7 @@
 <translation id="7685087414635069102">పిన్ అవసరం</translation>
 <translation id="7686938547853266130"><ph name="FRIENDLY_NAME" /> (<ph name="DEVICE_PATH" />)</translation>
 <translation id="7690294790491645610">కొత్త పాస్‌వర్డ్‌ను నిర్ధారించండి</translation>
-<translation id="7690378713476594306">జాబితా నుండి ఎంచుకోండి</translation>
+<translation id="7690378713476594306">లిస్ట్‌ నుండి ఎంచుకోండి</translation>
 <translation id="7690853182226561458">&amp;ఫోల్డర్‌ను జోడించు...</translation>
 <translation id="7691073721729883399">కియోస్క్ యాప్ కోసం క్రిప్టోహోమ్ మౌంట్ చేయబడలేదు.</translation>
 <translation id="7691077781194517083">ఈ సెక్యూరిటీ కీని రీసెట్ చేయలేకపోయింది. ఎర్రర్ <ph name="ERROR_CODE" />.</translation>
@@ -6234,7 +6234,7 @@
 <translation id="7701040980221191251">ఏదీ లేదు</translation>
 <translation id="7701869757853594372">వినియోగదారు నిర్వహించేవి</translation>
 <translation id="7701928712056789451">ఈ అంశాలు ప్రమాదకరం కావచ్చు</translation>
-<translation id="7702574632857388784">జాబితా నుంచి <ph name="FILE_NAME" />ని తొలగించు</translation>
+<translation id="7702574632857388784">లిస్ట్‌ నుంచి <ph name="FILE_NAME" />ని తొలగించు</translation>
 <translation id="7702907602086592255">డొమైన్</translation>
 <translation id="7704305437604973648">విధి</translation>
 <translation id="7704317875155739195">ఆటో-ఫిల్ సెర్చ్‌లు, URLలు</translation>
@@ -6288,7 +6288,7 @@
 <translation id="7758143121000533418">Family Link</translation>
 <translation id="7758450972308449809">మీ ప్రదర్శన సరిహద్దులను సర్దుబాటు చేయండి</translation>
 <translation id="7760004034676677601">మీరు ఆశిస్తున్న ప్రారంభ పేజీ ఇదేనా?</translation>
-<translation id="7764225426217299476">చిరునామాను జోడించు</translation>
+<translation id="7764225426217299476">అడ్రస్‌ను జోడించు</translation>
 <translation id="7764256770584298012"><ph name="DOWNLOAD_DOMAIN" /> నుండి <ph name="DOWNLOAD_RECEIVED" /></translation>
 <translation id="7765158879357617694">తరలించు</translation>
 <translation id="7765507180157272835">బ్లూటూత్, Wi-Fi అవసరం</translation>
@@ -6348,8 +6348,8 @@
 <translation id="7815680994978050279">ప్రమాదకరమైన డౌన్‌లోడ్ బ్లాక్ చేయబడింది</translation>
 <translation id="7817361223956157679">స్క్రీన్‌పై కీబోర్డ్ ఇంకా Linux యాప్‌లలో పనిచేయడం లేదు</translation>
 <translation id="7818135753970109980">క్రొత్త థీమ్ జోడించబడింది (<ph name="EXTENSION_NAME" />)</translation>
-<translation id="7819992334107904369">Chrome సమకాలీకరణ</translation>
-<translation id="782057141565633384">వీడియో చిరునామాను కా&amp;పీ చేయండి</translation>
+<translation id="7819992334107904369">Chrome సింక్‌</translation>
+<translation id="782057141565633384">వీడియో అడ్రస్‌ను కా&amp;పీ చేయండి</translation>
 <translation id="7822187537422052256">మీరు ఈ అడ్రస్‌ను ఖచ్చితంగా తీసివేయాలనుకుంటున్నారా?</translation>
 <translation id="7824864914877854148">ఒక ఎర్రర్ కారణంగా బ్యాకప్ చేయడం పూర్తి కాలేదు</translation>
 <translation id="782590969421016895">ప్రస్తుత పేజీలను ఉపయోగించండి</translation>
@@ -6490,14 +6490,14 @@
 <translation id="7945031593909029181">"<ph name="CHROME_EXTENSION_NAME" />" దీనికి కనెక్ట్ చేయాలనుకుంటోంది</translation>
 <translation id="7946586320617670168">మూలం తప్పనిసరిగా సురక్షితంగా ఉండాలి</translation>
 <translation id="794676567536738329">అనుమతులు నిర్ధారించండి</translation>
-<translation id="7947962633355574091">వీడియో చిరునామాను కా&amp;పీ చేయండి</translation>
+<translation id="7947962633355574091">వీడియో అడ్రస్‌ను కా&amp;పీ చేయండి</translation>
 <translation id="7949924743070109245"><ph name="FILE_NAME" />లో గోప్యమైన లేదా హానికరమైన డేటా ఉంది. మీ అడ్మినిస్ట్రేటర్ "<ph name="CUSTOM_MESSAGE" />" అని అన్నారు.</translation>
 <translation id="7951265006188088697">Google Payలో వాడే పేమెంట్ ఆప్షన్‌లను జోడించడానికి లేదా మేనేజ్ చేయడానికి, మీ <ph name="BEGIN_LINK" />Google ఖాతా<ph name="END_LINK" />ను సందర్శించండి</translation>
 <translation id="7952708427581814389">మీ క్లిప్‌బోర్డ్‌లోని టెక్స్ట్, ఇమేజ్‌లను చూడటానికి సైట్‌లు అడగగలవు</translation>
 <translation id="795282463722894016">పునరుద్ధరణ పూర్తయింది</translation>
 <translation id="7952904276017482715">ఆశించిన ID "<ph name="EXPECTED_ID" />", కానీ ఉన్న ID "<ph name="NEW_ID" />"</translation>
 <translation id="7953669802889559161">ఇన్‌పుట్‌లు</translation>
-<translation id="7953955868932471628">సత్వరమార్గాలను నిర్వహించండి</translation>
+<translation id="7953955868932471628">షార్ట్‌కట్‌లను నిర్వహించండి</translation>
 <translation id="7956373551960864128">మీరు సేవ్ చేసిన ప్రింటర్‌లు</translation>
 <translation id="7957074856830851026">పరికరం క్రమ సంఖ్య లేదా అస్సెట్ ID వంటి పరికర సమాచారాన్ని చూడండి</translation>
 <translation id="7957615753207896812">కీబోర్డ్ పరికర సెట్టింగ్‌లను తెరవండి</translation>
@@ -6505,8 +6505,8 @@
 <translation id="7961015016161918242">ఎప్పుడూ లేదు</translation>
 <translation id="7963001036288347286">టచ్‌ప్యాడ్ యాక్సిలరేషన్</translation>
 <translation id="7963608432878156675">ఇతర పరికరాల బ్లూటూత్, నెట్‌వర్క్ కనెక్షన్‌లలో ఈ పేరు కనిపిస్తుంది</translation>
-<translation id="7963826112438303517">మీ వాయిస్ నమూనాను సృష్టించడానికి, అప్‌డేట్ చేయడానికి మీ అసిస్టెంట్ ఈ రికార్డింగ్‌లను, మీ ప్రసంగ అభ్యర్థనలను ఉపయోగిస్తుంది, ఈ వాయిస్ నమూనా మీరు Voice Match ఆన్ చేసిన పరికరాలలో మాత్రమే నిల్వ చేయబడుతుంది. అసిస్టెంట్ సెట్టింగ్‌లలో వాయిస్ కార్యకలాపం చూడండి లేదా దానికి తిరిగి శిక్షణను ఇవ్వండి.</translation>
-<translation id="7966241909927244760">చిత్రం చిరునామాను కా&amp;పీ చేయండి</translation>
+<translation id="7963826112438303517">మీ వాయిస్ నమూనాను సృష్టించడానికి, అప్‌డేట్ చేయడానికి మీ అసిస్టెంట్ ఈ రికార్డింగ్‌లను, మీ ప్రసంగ రిక్వెస్ట్‌లను ఉపయోగిస్తుంది, ఈ వాయిస్ నమూనా మీరు Voice Match ఆన్ చేసిన పరికరాలలో మాత్రమే నిల్వ చేయబడుతుంది. అసిస్టెంట్ సెట్టింగ్‌లలో వాయిస్ యాక్టివిటీ చూడండి లేదా దానికి తిరిగి శిక్షణను ఇవ్వండి.</translation>
+<translation id="7966241909927244760">చిత్రం అడ్రస్‌ను కా&amp;పీ చేయండి</translation>
 <translation id="7966571622054096916">{COUNT,plural, =1{బుక్‌మార్క్ లిస్ట్‌లో 1 ఐటెమ్ ఉంది}other{బుక్‌మార్క్ లిస్ట్‌లో {COUNT} ఐటెమ్‌లు ఉన్నాయి}}</translation>
 <translation id="7968072247663421402">ప్రొవైడర్ ఆప్షన్‌లు</translation>
 <translation id="7968742106503422125">మీరు కాపీ చేసి, అతికించే డేటాను చదవడం మరియు సవరించడం</translation>
@@ -6539,7 +6539,7 @@
 <translation id="7997826902155442747">ప్రాసెస్ ప్రాధాన్యత</translation>
 <translation id="7999229196265990314">ఈ క్రింది ఫైళ్ళను సృష్టించింది:
 
-పొడిగింపు: <ph name="EXTENSION_FILE" />కీ ఫైల్: <ph name="KEY_FILE" />మీ కీ ఫైల్‌ను ఒక సురక్షితమైన స్థలంలో ఉంచండి. మీ పొడిగింపు యొక్క క్రొత్త సంస్కరణను సృష్టించడానికి మీకు ఇది అవసరం అవుతుంది.</translation>
+ఎక్స్‌టెన్షన్‌: <ph name="EXTENSION_FILE" />కీ ఫైల్: <ph name="KEY_FILE" />మీ కీ ఫైల్‌ను ఒక సురక్షితమైన స్థలంలో ఉంచండి. మీ ఎక్స్‌టెన్షన్‌ యొక్క క్రొత్త సంస్కరణను సృష్టించడానికి మీకు ఇది అవసరం అవుతుంది.</translation>
 <translation id="8002274832045662704">అధునాతన ప్రింటర్ కాన్ఫిగరేషన్</translation>
 <translation id="8002670234429879764">ఇకపై <ph name="PRINTER_NAME" /> అందుబాటులో ఉండదు</translation>
 <translation id="8004582292198964060">బ్రౌజర్</translation>
@@ -6593,7 +6593,7 @@
 <translation id="8053278772142718589">PKCS #12 ఫైళ్ళు</translation>
 <translation id="8053390638574070785">ఈ పేజీని మళ్లీ లోడ్ చేయి</translation>
 <translation id="8054517699425078995">ఈ రకమైన ఫైల్ మీ పరికరానికి హాని కలిగించవచ్చు. ఏది ఏమైనా <ph name="FILE_NAME" />ను ఉంచాలని అనుకుంటున్నారా?</translation>
-<translation id="8054563304616131773">దయచేసి చెల్లుబాటు అయ్యే ఇమెయిల్ చిరునామాను నమోదు చేయండి</translation>
+<translation id="8054563304616131773">దయచేసి చెల్లుబాటు అయ్యే ఇమెయిల్ అడ్రస్‌ను నమోదు చేయండి</translation>
 <translation id="8054883179223321715">నిర్దిష్ట వీడియో సైట్‌ల కోసం అందుబాటులో ఉంది</translation>
 <translation id="8054921503121346576">USB కీబోర్డ్ కనెక్ట్ చేయబడింది</translation>
 <translation id="8058655154417507695">గడువు ముగింపు సంవత్సరం</translation>
@@ -6627,7 +6627,7 @@
 <translation id="8086442853986205778"><ph name="PRINTER_NAME" />ను సెటప్ చేయండి</translation>
 <translation id="80866457114322936">{NUM_FILES,plural, =1{ఈ ఫైల్ ఎన్‌క్రిప్ట్ చేయబడింది. డీక్రిప్ట్ చేయమని ఫైల్ యజమానిని అడగండి.}other{ఈ ఫైల్స్‌లో కొన్ని ఎన్‌క్రిప్ట్ చేయబడ్డాయి. డీక్రిప్ట్ చేయమని వాటి యజమానిని అడగండి.}}</translation>
 <translation id="808894953321890993">పాస్‌వర్డ్‌ను మార్చు</translation>
-<translation id="8090234456044969073">మీరు అత్యంత తరచుగా సందర్శించిన వెబ్‌సైట్‌ల జాబితాను చదవడానికి అనుమతి</translation>
+<translation id="8090234456044969073">మీరు అత్యంత తరచుగా సందర్శించిన వెబ్‌సైట్‌ల లిస్ట్‌ను చదవడానికి అనుమతి</translation>
 <translation id="8093359998839330381"><ph name="PLUGIN_NAME" /> ప్రతిస్పందించడం లేదు</translation>
 <translation id="8095105960962832018"><ph name="BEGIN_PARAGRAPH1" />Google డిస్క్‌కి బ్యాకప్ చేయండి. ఏ సమయంలో అయినా సులభంగా మీ డేటాని పునరుద్ధరించండి లేదా పరికరాన్ని మార్చండి. మీ బ్యాకప్‌లో యాప్ డేటా ఉంటుంది.<ph name="END_PARAGRAPH1" />
     <ph name="BEGIN_PARAGRAPH2" />మీ బ్యాకప్‌లు Googleకి అప్‌లోడ్ చేయబడతాయి మరియు మీ Google ఖాతా పాస్‌వర్డ్‌ని ఉపయోగించి ఎన్‌క్రిప్ట్ చేయబడతాయి.<ph name="END_PARAGRAPH2" />
@@ -6656,7 +6656,7 @@
 <translation id="8115139559594092084">మీ Google Drive నుండి</translation>
 <translation id="8116972784401310538">&amp;బుక్‌మార్క్ నిర్వాహకుడు</translation>
 <translation id="8117752106453549166">Linuxను మీ అడ్మినిస్ట్రేటర్ కాన్ఫిగర్ చేశారు. కాన్ఫిగరేషన్‌కు కొన్ని నిమిషాలు పడుతుంది.</translation>
-<translation id="8118362518458010043">Chrome నిలిపివేసింది. ఈ పొడిగింపు సురక్షితం కాకపోవచ్చు.</translation>
+<translation id="8118362518458010043">Chrome నిలిపివేసింది. ఈ ఎక్స్‌టెన్షన్‌ సురక్షితం కాకపోవచ్చు.</translation>
 <translation id="8118488170956489476">మీ సంస్థ మీ <ph name="BEGIN_LINK" />బ్రౌజర్‌ని నిర్వహిస్తోంది<ph name="END_LINK" /></translation>
 <translation id="8118515372935001629">డిస్‌ప్లే రిఫ్రెష్ రేటు</translation>
 <translation id="8118860139461251237">మీ డౌన్‌లోడ్‌లను నిర్వహించండి</translation>
@@ -6672,7 +6672,7 @@
 <translation id="8133676275609324831">&amp;ఫోల్డర్‌లో చూపించు</translation>
 <translation id="8135557862853121765"><ph name="NUM_KILOBYTES" />K</translation>
 <translation id="8136269678443988272">మీరు నమోదు చేసిన పిన్‌లు సరిపోలలేదు</translation>
-<translation id="8137559199583651773">పొడిగింపులను నిర్వహించండి</translation>
+<translation id="8137559199583651773">ఎక్స్‌టెన్షన్‌లను నిర్వహించండి</translation>
 <translation id="8138082791834443598">ఐచ్ఛికం — ఈ పరికరంతో అనుబంధించడానికి కొత్త సమాచారం నమోదు చేయండి లేదా ఇప్పటికే ఉన్న సమాచారాన్ని అప్‌డేట్ చేయండి.</translation>
 <translation id="8138217203226449454">మీరు మీ సెర్చ్ ప్రొవైడర్‌ను మార్చాలనుకున్నారా?</translation>
 <translation id="8138997515734480534"><ph name="VM_NAME" /> స్టేటస్</translation>
@@ -6729,7 +6729,7 @@
 <translation id="8189306097519446565">స్కూల్ ఖాతాలు</translation>
 <translation id="8189750580333936930">గోప్యతా పరిరక్షణ టెక్నాలజీల సెట్</translation>
 <translation id="8190193592390505034"><ph name="PROVIDER_NAME" />కు కనెక్ట్ చేస్తోంది</translation>
-<translation id="8191230140820435481">మీ యాప్‌లను, పొడిగింపులను మరియు థీమ్‌లను నిర్వహించండి</translation>
+<translation id="8191230140820435481">మీ యాప్‌లను, ఎక్స్‌టెన్షన్‌లను మరియు థీమ్‌లను నిర్వహించండి</translation>
 <translation id="819137301779081601">కేటాయింపును ప్రారంభించడానికి, కొత్త స్విచ్‌ను నొక్కండి
 కేటాయింపును తీసివేయడానికి, కేటాయించబడిన స్విచ్‌ను నొక్కండి</translation>
 <translation id="8192944472786724289"><ph name="APP_NAME" /> మీ స్క్రీన్ కంటెంట్‌లను షేర్ చేయాలనుకుంటుంది.</translation>
@@ -6791,7 +6791,7 @@
 <translation id="8257950718085972371">కెమెరా యాక్సెస్‌ను బ్లాక్ చేయడాన్ని కొనసాగించు</translation>
 <translation id="8259239505248583312">ప్రారంభించు</translation>
 <translation id="8260864402787962391">మౌస్</translation>
-<translation id="8261378640211443080">ఈ పొడిగింపు <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో జాబితా చేయబడలేదు మరియు మీకు తెలియకుండానే జోడించబడి ఉండవచ్చు.</translation>
+<translation id="8261378640211443080">ఈ ఎక్స్‌టెన్షన్‌ <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో లిస్ట్‌ చేయబడలేదు మరియు మీకు తెలియకుండానే జోడించబడి ఉండవచ్చు.</translation>
 <translation id="8261506727792406068">తొలగించు</translation>
 <translation id="8263336784344783289">ఈ సమూహానికి పేరు పెట్టండి</translation>
 <translation id="8263744495942430914"><ph name="FULLSCREEN_ORIGIN" /> మీ మౌస్ కర్సర్‌ను నిలిపివేసింది.</translation>
@@ -6821,7 +6821,7 @@
 <translation id="8284279544186306258">అన్ని <ph name="WEBSITE_1" /> వెబ్‌సైట్‌లు</translation>
 <translation id="8284326494547611709">క్యాప్షన్‌లు</translation>
 <translation id="8286036467436129157">సైన్ ఇన్ చేయండి</translation>
-<translation id="8287902281644548111">API కాల్/URL ద్వారా శోధించండి</translation>
+<translation id="8287902281644548111">API కాల్/URL ద్వారా వెతకండి</translation>
 <translation id="8288032458496410887"><ph name="APP" />ని అన్‌ఇన్‌స్టాల్ చేయి...</translation>
 <translation id="8289128870594824098">డిస్క్ పరిమాణం</translation>
 <translation id="8293206222192510085">బుక్‌మార్క్‌లను జోడించు</translation>
@@ -6896,7 +6896,7 @@
 <translation id="8379156816349755485">సైన్ ఇన్ చేసిన తర్వాత, ప్రత్యేకమైన ప్రామాణీకరణ టోకెన్ స్టోర్ చేయబడుతుంది, ఇంకా అది భవిష్యత్తులో అర్హత ఉన్న డౌన్‌లోడ్‌ల కోసం ఉపయోగించబడుతుంది.</translation>
 <translation id="8379878387931047019">ఈ వెబ్‌సైట్ అభ్యర్థించిన భద్రతా కీ రకానికి ఈ పరికరం మద్దతు ఇవ్వదు</translation>
 <translation id="8379991678458444070">ఈ పేజీని బుక్‌మార్క్ చేయడం ద్వారా ఇక్కడికి క్షణాల్లో తిరిగి రండి</translation>
-<translation id="8382913212082956454">&amp;ఇమెయిల్ చిరునామాను కాపీ చేయండి</translation>
+<translation id="8382913212082956454">&amp;ఇమెయిల్ అడ్రస్‌ను కాపీ చేయండి</translation>
 <translation id="8386091599636877289">విధానం కనుగొనబడలేదు.</translation>
 <translation id="8387361103813440603">మీ లొకేషన్‌ను చూడటానికి అనుమతించబడలేదు</translation>
 <translation id="8388770971141403598">ద్వితీయ ప్రొఫైల్‌లు సపోర్ట్ చేయవు</translation>
@@ -7058,7 +7058,7 @@
 <translation id="8591783563402255548">1 సెకను</translation>
 <translation id="8592141010104017453">నోటిఫికేషన్‌లను అస్సలు చూపవద్దు</translation>
 <translation id="859246725979739260">మీ లొకేషన్‌ను యాక్సెస్ చేయనివ్వకుండా ఈ సైట్ బ్లాక్ చేయబడింది.</translation>
-<translation id="8593121833493516339">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపడం ద్వారా మీ చిన్నారి Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది మీ చిన్నారి గురించి గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ కార్యకలాపాన్ని ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ కావచ్చు. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation>
+<translation id="8593121833493516339">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపడం ద్వారా మీ చిన్నారి Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది మీ చిన్నారి గురించి గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ యాక్టివిటీని ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ కావచ్చు. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation>
 <translation id="8594908476761052472">వీడియోను క్యాప్చర్ చేయి</translation>
 <translation id="8596540852772265699">అనుకూల ఫైళ్ళు</translation>
 <translation id="8597845839771543242">లక్షణ ఆకృతి:</translation>
@@ -7092,7 +7092,7 @@
 <translation id="8627795981664801467">సురక్షిత కనెక్షన్‌ల మాత్రమే</translation>
 <translation id="8630338733867813168">ఛార్జింగ్‌లో ఉన్నప్పుడు స్లీప్ మోడ్‌లో ఉండాలి</translation>
 <translation id="8631032106121706562">పూరేకులు</translation>
-<translation id="863109444997383731">మీకు నోటిఫికేషన్‌లను చూపడం అడగలేని విధంగా సైట్‌లు బ్లాక్ చేయబడతాయి. ఒకవేళ సైట్ గనుక నోటిఫికేషన్‌లను అభ్యర్థిస్తే, చిరునామా బార్‌లో బ్లాక్ చేసినట్లుగా సూచిక కనిపిస్తుంది.</translation>
+<translation id="863109444997383731">మీకు నోటిఫికేషన్‌లను చూపడం అడగలేని విధంగా సైట్‌లు బ్లాక్ చేయబడతాయి. ఒకవేళ సైట్ గనుక నోటిఫికేషన్‌లను అభ్యర్థిస్తే, అడ్రస్‌ బార్‌లో బ్లాక్ చేసినట్లుగా సూచిక కనిపిస్తుంది.</translation>
 <translation id="8633025649649592204">ఇటీవలి యాక్టివిటీ</translation>
 <translation id="8635628933471165173">మళ్ళీ లోడ్ అవుతోంది...</translation>
 <translation id="8636284842992792762">ఎక్స్‌టెన్షన్‌లను ప్రారంభిస్తోంది...</translation>
@@ -7100,7 +7100,7 @@
 <translation id="8637542770513281060">మీ కంప్యూటర్‌లో ఒక సురక్షిత మాడ్యూల్ ఉంది, Chrome OSలో అనేక కీలకమైన భద్రతా ఫీచర్‌లను అమలు చేయడానికి ఇది ఉపయోగించబడుతుంది. Chromebook సహాయ కేంద్రంలో దీని గురించి మరింత తెలుసుకోండి, ఇక్కడికి వెళ్లండి: https://support.google.com/chromebook/?p=sm</translation>
 <translation id="8637688295594795546">సిస్టమ్ అప్‌డేట్‌ అందుబాటులో ఉంది. డౌన్‌లోడ్ చేయ‌డానికి సిద్ధం చేస్తోంది...</translation>
 <translation id="8639047128869322042">హానికరమైన సాఫ్ట్‌వేర్‌ కోసం తనిఖీ చేస్తోంది...</translation>
-<translation id="8639635302972078117">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ డేటాను, పరికరం డేటాను, దానితో పాటు యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపుతోంది. ఇది మీ చిన్నారిని గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
+<translation id="8639635302972078117">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ డేటాను, పరికరం డేటాను, దానితో పాటు యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపుతోంది. ఇది మీ చిన్నారిని గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
 <translation id="8642900771896232685">2 సెకన్లు</translation>
 <translation id="8642947597466641025">టెక్స్ట్‌ని పెద్దదిగా చేయి</translation>
 <translation id="8643443571868262066"><ph name="FILE_NAME" /> ప్రమాదకరమైనది కావచ్చు. స్కాన్ చేయడానికి Google అధునాతన రక్షణకు పంపాలా?</translation>
@@ -7111,7 +7111,7 @@
 <translation id="8646209145740351125">సింక్‌ను డిజేబుల్ చేయండి</translation>
 <translation id="864637694230589560">సైట్‌లు సాధారణంగా, తాజా వార్తలు లేదా చాట్ మెసేజ్‌ల గురించి మీకు తెలియజేయడానికి నోటిఫికేషన్‌లను పంపుతాయి</translation>
 <translation id="8647385344110255847">మీ అనుమతితో, యాప్‌లను ఇన్‌స్టాల్ చేయడానికి మీ చిన్నారి Google Playను ఉపయోగించవచ్చు</translation>
-<translation id="8647834505253004544">వెబ్ చిరునామా చెల్లదు</translation>
+<translation id="8647834505253004544">వెబ్ అడ్రస్‌ చెల్లదు</translation>
 <translation id="8648252583955599667"><ph name="GET_HELP_LINK" /> లేదా <ph name="RE_SCAN_LINK" /></translation>
 <translation id="8648408795949963811">రాత్రి కాంతి రంగు ఉష్ణోగ్రత</translation>
 <translation id="8648544143274677280"><ph name="SITE_NAME" /> వీటిని చేయాలనుకుంటోంది: <ph name="FIRST_PERMISSION" />, <ph name="SECOND_PERMISSION" />, మరిన్ని</translation>
@@ -7141,7 +7141,7 @@
 <translation id="8669284339312441707">తీక్షణమైనది</translation>
 <translation id="8670537393737592796">ఇక్కడికి త్వరగా తిరిగి రావడానికి, ఇన్‌స్టాల్ బటన్‌ను క్లిక్ చేయడం ద్వారా <ph name="APP_NAME" />ను ఇన్‌స్టాల్ చేయండి</translation>
 <translation id="867085395664725367">తాత్కాలిక సర్వర్ ఎర్రర్ ఏర్పడింది.</translation>
-<translation id="8673026256276578048">వెబ్‌లో శోధించండి...</translation>
+<translation id="8673026256276578048">వెబ్‌లో వెతకండి...</translation>
 <translation id="8673383193459449849">సర్వర్ సమస్య</translation>
 <translation id="8676152597179121671">{COUNT,plural, =1{వీడియో}other{# వీడియోలు}}</translation>
 <translation id="8676313779986170923">ఫీడ్‌బ్యాక్ పంపినందుకు ధన్యవాదాలు.</translation>
@@ -7184,11 +7184,11 @@
 <translation id="8716931980467311658">ఈ <ph name="DEVICE_TYPE" /> నుండి మీ Linux ఫైళ్ల ఫోల్డర్‌లోని అన్ని Linux అప్లికేషన్‌లు మరియు డేటాను తొలగించాలా?</translation>
 <translation id="8717864919010420084">లింక్‌ని కాపీ చేయి</translation>
 <translation id="8718994464069323380">టచ్ స్క్రీన్ గుర్తించబడింది</translation>
-<translation id="8719472795285728850">ఎక్స్‌టెన్షన్ కార్యకలాపాల కోసం వింటోంది...</translation>
+<translation id="8719472795285728850">ఎక్స్‌టెన్షన్ యాక్టివిటీల కోసం వింటోంది...</translation>
 <translation id="8719653885894320876"><ph name="PLUGIN_NAME" /> డౌన్‌లోడ్ విఫలమైంది</translation>
 <translation id="8720200012906404956">మొబైల్ నెట్‌వర్క్‌ కోసం చూస్తోంది. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
 <translation id="8720816553731218127">ఇన్‌స్టాలేషన్-సమయాల లక్షణాలు ప్రారంభిస్తుండగా సమయం మించిపోయింది.</translation>
-<translation id="8722912030556880711">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ, అలాగే పరికర, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపుతుంది. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
+<translation id="8722912030556880711">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ, అలాగే పరికర, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపుతుంది. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
 <translation id="8724405322205516354">మీకు ఈ చిహ్నం కనిపించినప్పుడు, గుర్తింపు లేదా కొనుగోళ్ల ఆమోదం కోసం మీ వేలిముద్రను ఉపయోగించండి.</translation>
 <translation id="8724409975248965964">వేలిముద్ర జోడించబడింది</translation>
 <translation id="8724859055372736596">ఫోల్డర్‌లో &amp;చూపించు</translation>
@@ -7214,7 +7214,7 @@
 <translation id="8737916108453753541">బ్రౌజింగ్ ప్రవర్తనను అర్థం చేసుకోవడానికి URLలు Googleతో షేర్ చేయబడతాయి</translation>
 <translation id="8740247629089392745">మీరు ఈ Chromebookను <ph name="SUPERVISED_USER_NAME" />కు ఇవ్వవచ్చు. సెటప్ దాదాపు పూర్తయింది, మరిన్ని విషయాలను తెలుసుకునే సమయం ఆసన్నమైంది.</translation>
 <translation id="8741944563400125534">స్విచ్ యాక్సెస్ సెటప్ గైడ్</translation>
-<translation id="8742998548129056176">మీ పరికరం గురించి, మీరు దానిని ఉపయోగించే పద్ధతి గురించి (బ్యాటరీ స్థాయి, సిస్టమ్, యాప్‌ల కార్యకలాపం, ఎర్రర్‌ల లాంటివి) తెలియజేసే సాధారణ సమాచారం. Androidను మెరుగుపరచడం కోసం ఈ డేటా ఉపయోగించబడుతుంది. కొంత ఏకీకృత సమాచారం- Google యాప్‌లు, Android డెవలపర్‌ల వంటి భాగస్వాముల యాప్‌లను, ఉత్పత్తులను మెరుగుపరచడంలో సహాయపడుతుంది.</translation>
+<translation id="8742998548129056176">మీ పరికరం గురించి, మీరు దానిని ఉపయోగించే పద్ధతి గురించి (బ్యాటరీ స్థాయి, సిస్టమ్, యాప్‌ల యాక్టివిటీ, ఎర్రర్‌ల లాంటివి) తెలియజేసే సాధారణ సమాచారం. Androidను మెరుగుపరచడం కోసం ఈ డేటా ఉపయోగించబడుతుంది. కొంత ఏకీకృత సమాచారం- Google యాప్‌లు, Android డెవలపర్‌ల వంటి భాగస్వాముల యాప్‌లను, ఉత్పత్తులను మెరుగుపరచడంలో సహాయపడుతుంది.</translation>
 <translation id="8746654918629346731">మీరు "<ph name="EXTENSION_NAME" />"ను ఇప్పటికే అభ్యర్థించారు</translation>
 <translation id="874689135111202667">{0,plural, =1{ఈ సైట్‌కు ఒక ఫైల్‌ను అప్‌లోడ్ చేయాలా?}other{ఈ సైట్‌కు # ఫైళ్లను అప్‌లోడ్ చేయాలా?}}</translation>
 <translation id="8749805710397399240">మీ స్క్రీన్‌ను ప్రసారం చేయడం సాధ్యపడలేదు. సిస్టమ్ ప్రాధాన్యతలలో ఉన్న 'స్క్రీన్ రికార్డింగ్' అనుమతిని చెక్ చేయండి.</translation>
@@ -7272,7 +7272,7 @@
 <translation id="880004380809002950">ఫైళ్ల రకాలను తెరవనీయకుండా వెబ్ యాప్‌లను బ్లాక్ చేయండి</translation>
 <translation id="8803953437405899238">ఒక క్లిక్‌తో కొత్త ట్యాబ్‌ను తెరవండి</translation>
 <translation id="8804999695258552249">{NUM_TABS,plural, =1{ట్యాబ్‌ను మరొక విండోకు తరలించండి}other{ట్యాబ్‌లను మరొక విండోకు తరలించండి}}</translation>
-<translation id="8805140816472474147">సమకాలీకరణను ప్రారంభించడం కోసం సమకాలీకరణ సెట్టింగ్‌లను నిర్ధారించండి.</translation>
+<translation id="8805140816472474147">సింక్‌ను ప్రారంభించడం కోసం సింక్‌ సెట్టింగ్‌లను నిర్ధారించండి.</translation>
 <translation id="8806680466228877631"><ph name="SHORTCUT" /> ఉపయోగించి అనుకోకుండా మూసివేసిన ట్యాబ్‌లను తిరిగి తెరవవచ్చు</translation>
 <translation id="8807632654848257479">స్థిరత్వం</translation>
 <translation id="8808478386290700967">వెబ్ స్టోర్</translation>
@@ -7292,7 +7292,7 @@
 <translation id="8818152010000655963">వాల్‌పేపర్</translation>
 <translation id="8818958672113348984">ఫోన్ ద్వారా ధృవీకరించు</translation>
 <translation id="8820817407110198400">Bookmarks</translation>
-<translation id="8821045908425223359">IP చిరునామాను ఆటోమేటిక్‌గా కాన్ఫిగర్ చేయి</translation>
+<translation id="8821045908425223359">IP అడ్రస్‌ను ఆటోమేటిక్‌గా కాన్ఫిగర్ చేయి</translation>
 <translation id="8821268776955756404"><ph name="APP_NAME" /> ఉపయోగించడానికి సిద్ధంగా ఉంది.</translation>
 <translation id="882204272221080310">అదనపు భద్రత కోసం ఫర్మ్‌వేర్‌ను అప్‌డేట్ చేయండి.</translation>
 <translation id="8823514049557262177">లింక్ వచ&amp;నం కాపీ చేయి</translation>
@@ -7375,7 +7375,7 @@
 <translation id="8893801527741465188">అన్ఇన్‌స్టాల్ పూర్తయింది</translation>
 <translation id="8893928184421379330">క్షమించండి, పరికరం <ph name="DEVICE_LABEL" /> గుర్తించబడలేదు.</translation>
 <translation id="8894761918470382415">పెరిఫెరల్స్ కోసం డేటా యాక్సెస్ రక్షణ</translation>
-<translation id="8895454554629927345">బుక్‌మార్క్‌ జాబితా</translation>
+<translation id="8895454554629927345">బుక్‌మార్క్‌ లిస్ట్‌</translation>
 <translation id="8898786835233784856">తదుపరి టాబ్‌ను ఎంచుకో</translation>
 <translation id="8898822736010347272">కొత్త థ్రెట్స్‌ను గుర్తించడంలో, వెబ్‌లోని అందరు యూజర్‌లను రక్షించడంలో సహాయపడేందుకు మీరు సందర్శించే కొన్ని పేజీల URLలను, కొంత సిస్టమ్ సమాచారాన్ని, కొంత పేజీ కంటెంట్‌ను Googleకు పంపుతుంది.</translation>
 <translation id="8899851313684471736">కొత్త &amp;విండోలో లింక్‌ను తెరువు</translation>
@@ -7405,7 +7405,7 @@
 <translation id="8929696694736010839">ప్రస్తుత అజ్ఞాత సెషన్‌కు మాత్రమే</translation>
 <translation id="8930351635855238750">పేజీ తిరిగి లోడ్ అయిన తర్వాత కొత్త కుక్కీ సెట్టింగ్‌లు ప్రభావం చూపుతాయి</translation>
 <translation id="8930622219860340959">వైర్‌లెస్</translation>
-<translation id="8931076093143205651">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను Googleకు ఆటోమేటిక్‌గా పంపడం ద్వారా మీ Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ సెట్టింగ్‌ను యజమాని సెట్ చేశారు. ఈ పరికరానికి సంబంధించిన విశ్లేషణ, వినియోగ డేటాను Googleకు పంపేలా యజమాని ఎంచుకోవచ్చు. మీ అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
+<translation id="8931076093143205651">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను Googleకు ఆటోమేటిక్‌గా పంపడం ద్వారా మీ Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ సెట్టింగ్‌ను యజమాని సెట్ చేశారు. ఈ పరికరానికి సంబంధించిన విశ్లేషణ, వినియోగ డేటాను Googleకు పంపేలా యజమాని ఎంచుకోవచ్చు. మీ అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
 <translation id="8931475688782629595">మీరు సింక్ చేసిన డేటాను మేనేజ్ చేయండి</translation>
 <translation id="8932654652795262306">తక్షణ టెధరింగ్ వివరాలు</translation>
 <translation id="8932894639908691771">యాక్సెస్ ఎంపికలను మార్చు</translation>
@@ -7438,7 +7438,7 @@
 <translation id="89667524227025535">పరికర కెమెరాను ఉపయోగించి QR కోడ్‌ను స్కాన్ చేయండి లేదా మీ క్యారియర్ అందించిన యాక్టివేషన్ కోడ్‌ను ఎంటర్ చేయండి</translation>
 <translation id="8966809848145604011">ఇతర ప్రొఫైల్‌లు</translation>
 <translation id="8966870118594285808">ట్యాబ్‌ను మీరు పొరపాటున మూసివేసినట్లయితే మళ్లీ తెరవగలరు</translation>
-<translation id="8967427617812342790">పఠనా జాబితాకు జోడించు</translation>
+<translation id="8967427617812342790">పఠనా లిస్ట్‌కు జోడించు</translation>
 <translation id="8967866634928501045">చూపడం కోసం Alt Shift A నొక్కండి</translation>
 <translation id="8968766641738584599">కార్డ్‌ని సేవ్ చేయండి</translation>
 <translation id="89720367119469899">ఎస్కేప్</translation>
@@ -7518,7 +7518,7 @@
 <translation id="9042893549633094279">గోప్యత, సెక్యూరిటీ</translation>
 <translation id="904451693890288097">దయచేసి "<ph name="DEVICE_NAME" />" కోసం రహస్య కీని నమోదు చేయండి:</translation>
 <translation id="9044646465488564462">నెట్‌వర్క్‌కు కనెక్ట్ చేయడంలో విఫలమైంది: <ph name="DETAILS" /></translation>
-<translation id="9045430190527754450">మీరు సంప్రదించడానికి ప్రయత్నిస్తున్న పేజీ యొక్క వెబ్ చిరునామాను Googleకు పంపుతుంది</translation>
+<translation id="9045430190527754450">మీరు సంప్రదించడానికి ప్రయత్నిస్తున్న పేజీ యొక్క వెబ్ అడ్రస్‌ను Googleకు పంపుతుంది</translation>
 <translation id="9048745018038487540">అన్ని ఫాంట్‌లను ఎంచుకోండి</translation>
 <translation id="9050666287014529139">రహస్య పదబంధం</translation>
 <translation id="9052208328806230490">మీరు <ph name="EMAIL" /> ఖాతాను ఉపయోగించి <ph name="CLOUD_PRINT_NAME" />తో మీ ప్రింట‌ర్‌ల‌ను నమోదు చేశారు</translation>
@@ -7646,9 +7646,9 @@
 <translation id="9170848237812810038">&amp;అన్డు</translation>
 <translation id="9170884462774788842">మీ కంప్యూటర్‌లోని మరో ప్రోగ్రామ్ జోడించిన థీమ్ కారణంగా Chrome పని చేసే విధానం మారవచ్చు.</translation>
 <translation id="917350715406657904"><ph name="APP_NAME" /> కోసం మీ తల్లి/తండ్రి సెట్ చేసిన సమయ పరిమితిని మీరు చేరుకున్నారు. మీరు రేపు దానిని <ph name="TIME_LIMIT" /> సమయం ఉపయోగించవచ్చు.</translation>
-<translation id="9174401638287877180">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపడం ద్వారా మీ చిన్నారి Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది మీ చిన్నారిని గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
+<translation id="9174401638287877180">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. సమస్య విశ్లేషణ, పరికరం, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకు పంపడం ద్వారా మీ చిన్నారి Android అనుభవాన్ని మెరుగుపరచడంలో సహాయపడండి. ఇది మీ చిన్నారిని గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత ఏకీకృత డేటా కూడా Google యాప్‌లకు, Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు.</translation>
 <translation id="917510707618656279">బ్లూటూత్ పరికరాలను సైట్ యాక్సెస్ చేయాలన్నప్పుడు అనుమతి అడగాలి</translation>
-<translation id="9176476835295860688">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ, అలాగే పరికర, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపుతుంది.  ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ <ph name="BEGIN_LINK1" />సెట్టింగ్‌<ph name="END_LINK1" />ని యజమాని అమలు చేశారు. మీ అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
+<translation id="9176476835295860688">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ, అలాగే పరికర, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపుతుంది.  ఇది సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. ఈ <ph name="BEGIN_LINK1" />సెట్టింగ్‌<ph name="END_LINK1" />ని యజమాని అమలు చేశారు. మీ అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
 <translation id="9176611096776448349"><ph name="WINDOW_TITLE" /> - బ్లూటూత్ పరికరం కనెక్ట్ చేయబడింది</translation>
 <translation id="9179524979050048593">సైన్ ఇన్ స్క్రీన్ యూజర్‌నేమ్</translation>
 <translation id="9180281769944411366">ఈ ప్రాసెస్‌కు కొన్ని నిమిషాలు పట్టవచ్చు. Linux కంటైనర్ ప్రారంభం అవుతోంది.</translation>
@@ -7657,7 +7657,7 @@
 <translation id="918352324374649435">{COUNT,plural, =1{యాప్}other{# యాప్‌లు}}</translation>
 <translation id="9185567408827209876">హాంగుల్ మోడ్‌లో సూచిత పదాలను చూపండి</translation>
 <translation id="9186963452600581158">చిన్నారి Google ఖాతాతో సైన్ ఇన్ చేయండి</translation>
-<translation id="9188732951356337132">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ, అలాగే పరికర, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపుతుంది. ఇది మీ చిన్నారి గురించి గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ కార్యకలాపం సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
+<translation id="9188732951356337132">వినియోగం &amp; విశ్లేషణల డేటాను పంపండి. ఈ పరికరం ప్రస్తుతం సమస్య విశ్లేషణ, అలాగే పరికర, యాప్ వినియోగ డేటాను ఆటోమేటిక్‌గా Googleకి పంపుతుంది. ఇది మీ చిన్నారి గురించి గుర్తించడానికి ఉపయోగించబడదు, ఇది కేవలం సిస్టమ్, యాప్ స్థిరత్వానికి, అలాగే ఇతర మెరుగుదలలకు సహాయపడుతుంది. కొంత సముదాయ డేటా కూడా Google యాప్‌లకు, అలాగే Android డెవలపర్‌ల లాంటి భాగస్వాములకు సహాయపడుతుంది. మీ చిన్నారి కోసం అదనపు వెబ్ &amp; యాప్ యాక్టివిటీ సెట్టింగ్‌ను ఆన్ చేసినట్లయితే, ఈ డేటా వారి Google ఖాతాలో సేవ్ చేయబడవచ్చు. <ph name="BEGIN_LINK2" />మరింత తెలుసుకోండి<ph name="END_LINK2" /></translation>
 <translation id="9198090666959937775">మీ Android ఫోన్‌ను సెక్యూరిటీ కీగా ఉపయోగించండి</translation>
 <translation id="9200339982498053969"><ph name="ORIGIN" />, <ph name="FOLDERNAME" />‌లోని ఫైళ్లను ఎడిట్ చేయగలదు</translation>
 <translation id="920045321358709304"><ph name="SEARCH_ENGINE" />ని వెతుకు</translation>
@@ -7689,14 +7689,14 @@
 <translation id="93343527085570547">చట్టపరమైన కారణాలతో కంటెంట్ మార్పులను అభ్యర్ధించడానికి <ph name="BEGIN_LINK1" />చట్టపరమైన అంశాల సహాయ పేజీ<ph name="END_LINK1" />కు వెళ్లండి. కొంత ఖాతా మరియు సిస్టమ్ సమాచారం Googleకి పంపబడవచ్చు. సాంకేతిక సమస్యల పరిష్కారానికి మరియు మా సేవలను మెరుగుపరచడానికి మీరు మాకు ఇచ్చిన సమాచారాన్ని మా <ph name="BEGIN_LINK2" />గోప్యతా విధానం<ph name="END_LINK2" /> మరియు <ph name="BEGIN_LINK3" />సేవా నిబంధనలు<ph name="END_LINK3" />కు లోబడి మేము ఉపయోగిస్తాము.</translation>
 <translation id="93393615658292258">పాస్‌వర్డ్ మాత్రమే</translation>
 <translation id="934244546219308557">ఈ సమూహానికి పేరు పెట్టండి</translation>
-<translation id="934503638756687833">అవసరమైతే ఇక్కడ జాబితా చేయబడని అంశాలను కూడా తీసివేయవచ్చు. Chrome గోప్యత విధాన పత్రంలో &lt;a href="<ph name="URL" />"&gt;అవాంఛిత సాఫ్ట్‌వేర్ రక్షణ&lt;/a&gt; గురించి మరింత తెలుసుకోండి.</translation>
+<translation id="934503638756687833">అవసరమైతే ఇక్కడ లిస్ట్‌ చేయబడని అంశాలను కూడా తీసివేయవచ్చు. Chrome గోప్యత విధాన పత్రంలో &lt;a href="<ph name="URL" />"&gt;అవాంఛిత సాఫ్ట్‌వేర్ రక్షణ&lt;/a&gt; గురించి మరింత తెలుసుకోండి.</translation>
 <translation id="93480724622239549">బగ్ లేదా ఎర్రర్</translation>
 <translation id="935490618240037774">మీ బుక్‌మార్క్‌లు, చరిత్ర, పాస్‌వర్డ్‌లు, ఇతర సెట్టింగ్‌లు మీ Google ఖాతాకు సింక్ చేయ‌బడతాయి. కాబ‌ట్టి మీరు వీటిని మీ అన్ని పరికరాల్లో ఉపయోగించవచ్చు.</translation>
 <translation id="935854577147268200">Smart Lock ఫోన్ మారింది. Smart Lockను అప్‌డేట్ చేయడానికి మీ పాస్‌వర్డ్‌ను నమోదు చేయండి. తదుపరిసారి, మీ ఫోన్ మీ <ph name="DEVICE_TYPE" />‌ను అన్‌లాక్ చేస్తుంది. మీరు సెట్టింగ్‌లలో Smart Lockను ఆఫ్ చేయవచ్చు</translation>
 <translation id="93610034168535821">సైట్‌లు ఉపయోగించిన మొత్తం నిల్వ:</translation>
 <translation id="936646668635477464">కెమెరా &amp; మైక్రోఫోన్</translation>
 <translation id="936801553271523408">సిస్టమ్ విశ్లేషణ డేటా</translation>
-<translation id="93766956588638423">పొడిగింపును సరి చేయి</translation>
+<translation id="93766956588638423">ఎక్స్‌టెన్షన్‌ను సరి చేయి</translation>
 <translation id="938568644810664664">"Ok Google, ఇది ఏ పాట?" లేదా "Ok Google, నా స్క్రీన్‌పై ఏముంది?" అని అడిగి చూడండి</translation>
 <translation id="939252827960237676">స్క్రీన్‌షాట్‌ను సేవ్ చేయడంలో విఫలమైంది</translation>
 <translation id="939598580284253335">రహస్య పదబంధాన్ని నమోదు చేయండి</translation>
diff --git a/chrome/app/resources/generated_resources_uz.xtb b/chrome/app/resources/generated_resources_uz.xtb
index a00643e..a2b7b2d 100644
--- a/chrome/app/resources/generated_resources_uz.xtb
+++ b/chrome/app/resources/generated_resources_uz.xtb
@@ -2201,6 +2201,7 @@
 <translation id="3305661444342691068">PDF‘ning oldindan ko‘rinishini ochish</translation>
 <translation id="3308116878371095290">Cookie faylini saqlab olish urinishi bloklandi.</translation>
 <translation id="3308134619352333507">Tugmani yashirish</translation>
+<translation id="3308681281309926497">Siz ochgan saytlar maʼlumotlaringizni Chrome yopilmaguncha esda saqlaydi</translation>
 <translation id="3308738399950580893">reklamalar</translation>
 <translation id="3308852433423051161">Google Assistent yuklanmoqda...</translation>
 <translation id="3309330461362844500">Sertifikat profili identifikatori</translation>
@@ -2754,6 +2755,7 @@
 <translation id="3873423927483480833">PIN kodlar berkitilmasin</translation>
 <translation id="3873915545594852654">ARC++ ishga tushmadi.</translation>
 <translation id="3874164307099183178">Google Assistentni yoqish</translation>
+<translation id="3875815154304214043">Brauzer yangi varaqlari <ph name="APP_NAME" /> ilovasida ochiladi, tegishli havolalar ham brauzerda ochiladi. <ph name="BEGIN_LINK_LEARN_MORE" />Batafsil<ph name="END_LINK_LEARN_MORE" /></translation>
 <translation id="3877075909000773256"><ph name="USER_NAME" /> qurilmasi uchun Nearby Share sozlamalari <ph name="USER_EMAIL" /> hisobi ostida yuboriladi.</translation>
 <translation id="3879748587602334249">Yuklanmalar menejeri</translation>
 <translation id="3882165008614329320">Kamera yoki galereyadan olingan video</translation>
@@ -3902,6 +3904,7 @@
 <translation id="5157635116769074044">Ushbu sahifani bosh ekranga qadab qo‘yish...</translation>
 <translation id="5159094275429367735">Crostini taʼminotini sozlash</translation>
 <translation id="5159419673777902220">Ota-onangiz bu kengaytma ruxsatlarini olib tashlagan</translation>
+<translation id="5159643365935452998">Maʼlumotlarning avtomatik tozalanishini tekshirish</translation>
 <translation id="5160634252433617617">Tashqi klaviatura</translation>
 <translation id="5160857336552977725"><ph name="DEVICE_TYPE" /> hisobingizga kiring</translation>
 <translation id="5161251470972801814"><ph name="VENDOR_NAME" /> ishlab chiqargan USB qurilmalar</translation>
@@ -4465,6 +4468,7 @@
 <translation id="5790651917470750848">Port allaqachon uzatilmoqda</translation>
 <translation id="5792728279623964091">Quvvat tugmasini bosing</translation>
 <translation id="5793339252089865437">Yangilanishlarni mobil tarmoq orqali amalga oshirsangiz, ancha pulingiz ketib qoladi.</translation>
+<translation id="5794034487966529952"><ph name="DESK_TITLE" /> ish stolida <ph name="NUM_BROWSERS" /> ta brauzer oynasi ochilgan</translation>
 <translation id="5794414402486823030">Doim tizimdagi birlamchi ko‘rish dasturida ochish</translation>
 <translation id="5794700615121138172">Linux umumiy jildlari</translation>
 <translation id="5794786537412027208">Barcha Chrome ilovalarini yopish</translation>
diff --git a/chrome/app/resources/google_chrome_strings_en-GB.xtb b/chrome/app/resources/google_chrome_strings_en-GB.xtb
index 1cf8c7cf..1589b2b 100644
--- a/chrome/app/resources/google_chrome_strings_en-GB.xtb
+++ b/chrome/app/resources/google_chrome_strings_en-GB.xtb
@@ -72,6 +72,7 @@
 <translation id="2429317896000329049">Google Chrome could not sync your data because Sync is not available for your domain.</translation>
 <translation id="2467438592969358367">Google Chrome wants to export your passwords. Type your Windows password to allow this.</translation>
 <translation id="2485422356828889247">Uninstall</translation>
+<translation id="2518751521812750372">When you close Chrome, it automatically clears cookies and site data from the pages that you visited</translation>
 <translation id="2534507159460261402">Google Pay (copied to Chrome)</translation>
 <translation id="2574930892358684005"><ph name="EXISTING_USER" /> is already signed in to this Chrome profile. To keep your browsing separate, Chrome can create your own profile for you.</translation>
 <translation id="2580411288591421699">Cannot install the same Google Chrome version that is currently running. Please close Google Chrome and try again.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_fr-CA.xtb b/chrome/app/resources/google_chrome_strings_fr-CA.xtb
index 0820171..0177312 100644
--- a/chrome/app/resources/google_chrome_strings_fr-CA.xtb
+++ b/chrome/app/resources/google_chrome_strings_fr-CA.xtb
@@ -276,6 +276,7 @@
 <translation id="8008534537613507642">Réinstaller Chrome</translation>
 <translation id="8013993649590906847">Si une image n'est pas accompagnée d'une description utile, Chrome essaiera de vous en proposer une. Pour créer des descriptions, les images sont envoyées à Google.</translation>
 <translation id="8129812357326543296">À propos de &amp;Google Chrome</translation>
+<translation id="822971176939352383">Les comptes suivants ne sont connectés à aucun profil Chrome. Si vous voulez utiliser un compte dans un autre profil, retirer d'abord ce profil.</translation>
 <translation id="8255190535488645436">Google Chrome utilise votre caméra et votre microphone.</translation>
 <translation id="8286862437124483331">Google Chrome tente d'afficher les mots de passe. Pour autoriser cette action, entrez votre mot de passe Windows.</translation>
 <translation id="828798499196665338">Ton parent a désactivé le paramètre « Autorisations pour les sites, les applications et les extensions » dans Chrome. L'activation de ce <ph name="EXTENSION_TYPE_PARAMETER" /> n'est pas autorisée.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_iw.xtb b/chrome/app/resources/google_chrome_strings_iw.xtb
index 3bcf064..196630021 100644
--- a/chrome/app/resources/google_chrome_strings_iw.xtb
+++ b/chrome/app/resources/google_chrome_strings_iw.xtb
@@ -270,6 +270,7 @@
 <translation id="8008534537613507642">‏התקנת Chrome מחדש</translation>
 <translation id="8013993649590906847">‏אם אין לתמונה תיאור מועיל, Chrome ינסה לספק לך תיאור. כדי ליצור תיאורים, התמונות נשלחות אל Google.</translation>
 <translation id="8129812357326543296">‏מידע על Google Chrome&amp;</translation>
+<translation id="822971176939352383">‏החשבונות הבאים לא נכנסו לאף פרופיל Chrome. אם ברצונך להשתמש בחשבון בפרופיל אחר, תחילה עליך להסיר את אותו פרופיל.</translation>
 <translation id="8255190535488645436">‏Google Chrome משתמש במצלמה ובמיקרופון שלך.</translation>
 <translation id="8286862437124483331">‏Google Chrome מנסה להציג סיסמאות. יש להקליד את הסיסמה שלך ל-Windows כדי לאפשר זאת.</translation>
 <translation id="828798499196665338">‏אחד מההורים השבית ב-Chrome את ההגדרה "הרשאות לאתרים, אפליקציות ותוספים". לא ניתן להפעיל את <ph name="EXTENSION_TYPE_PARAMETER" />.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_si.xtb b/chrome/app/resources/google_chrome_strings_si.xtb
index b48b3c2..88f9b5e 100644
--- a/chrome/app/resources/google_chrome_strings_si.xtb
+++ b/chrome/app/resources/google_chrome_strings_si.xtb
@@ -72,6 +72,7 @@
 <translation id="2429317896000329049">ඔබේ වසම සඳහා සම්මුහු නොපවතින බැවින් Google Chrome හට ඔබේ දත්ත සම්මුහු කළ නොහැකි විය.</translation>
 <translation id="2467438592969358367">Google Chrome හට ඔබගේ මුරපද නිර්යාත කිරීමට අවශ්‍යය. මේ සඳහා අවසර දීමට ඔබගේ Windows මුරපදය ටයිප් කරන්න.</translation>
 <translation id="2485422356828889247">අස්ථාපනය</translation>
+<translation id="2518751521812750372">ඔබ Chrome වසන විට, එය ඔබ පිවිසි පිටුවලින් ස්වයංක්‍රියව කුකි සහ අඩවි දත්ත හිස් කරයි</translation>
 <translation id="2534507159460261402">Google Pay (Chrome වෙත පිටපත් කෙරිණි)</translation>
 <translation id="2574930892358684005"><ph name="EXISTING_USER" /> දැනටමත් මෙම Chrome පැතිකඩට පුරා ඇත. ඔබගේ බ්‍රවුස් කිරීම වෙනම තබා ගැනීමට, Chrome හට ඔබ සඳහා ඔබගේම පැතිකඩක් තැනිය හැකිය.</translation>
 <translation id="2580411288591421699">දැන් ඇති Google Chrome සංස්කරණයම ස්ථාපනය කළ නොහැක. Google Chrome වසා නැවත උත්සාහ කරන්න.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_te.xtb b/chrome/app/resources/google_chrome_strings_te.xtb
index 581ab64..d557d86 100644
--- a/chrome/app/resources/google_chrome_strings_te.xtb
+++ b/chrome/app/resources/google_chrome_strings_te.xtb
@@ -25,7 +25,7 @@
 <translation id="1587223624401073077">Google Chrome మీ కెమెరాను ఉపయోగిస్తోంది.</translation>
 <translation id="1587325591171447154"><ph name="FILE_NAME" /> హానికరం, కావున Chrome దాన్ని బ్లాక్ చేసింది.</translation>
 <translation id="1597911401261118146">డేటా ఉల్లంఘనల నుండి, ఇతర భద్రతా సమస్యల నుండి మీ పాస్‌వర్డ్‌లు సురక్షితంగా ఉన్నాయో లేదో చెక్ చేయడానికి, <ph name="BEGIN_LINK" />Chromeకు సైన్ ఇన్ చేయండి<ph name="END_LINK" />.</translation>
-<translation id="1619887657840448962">Chromeని సురక్షితం చేయడానికి, మేము క్రింది పొడిగింపుని నిలిపివేసాము, ఇది <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో జాబితా చేయబడలేదు మరియు మీకు తెలియకుండా జోడించబడి ఉండవచ్చు.</translation>
+<translation id="1619887657840448962">Chromeని సురక్షితం చేయడానికి, మేము క్రింది ఎక్స్‌టెన్షన్‌ను నిలిపివేసాము, ఇది <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో లిస్ట్‌ చేయబడలేదు మరియు మీకు తెలియకుండా జోడించబడి ఉండవచ్చు.</translation>
 <translation id="1628000112320670027">Chrome గురించి సహాయం పొందండి</translation>
 <translation id="1674870198290878346">Chrome అజ్ఞా&amp;త విండోలో లింక్‌ను తెరువు</translation>
 <translation id="1682634494516646069">Google Chrome దీని డేటా డైరెక్టరీని చదవలేదు మరియు దీనిలో రాయ‌లేదు: <ph name="USER_DATA_DIRECTORY" /></translation>
@@ -77,7 +77,7 @@
 <translation id="2644798301485385923">Chrome OS సిస్టమ్</translation>
 <translation id="2652691236519827073">కొత్త Chrome &amp;ట్యాబ్‌లో లింక్‌ను తెరువు</translation>
 <translation id="2665296953892887393">Googleకు క్రాష్ రిపోర్ట్‌లను, <ph name="UMA_LINK" />ను పంపడం ద్వారా Google Chromeను మెరుగుపరచడంలో సహాయపడండి</translation>
-<translation id="2689103672227170538">ఈ పొడిగింపు మీరు Chromeని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
+<translation id="2689103672227170538">ఈ ఎక్స్‌టెన్షన్‌ మీరు Chromeని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
 <translation id="2742320827292110288">హెచ్చరిక: Google Chrome మీ బ్రౌజింగ్ హిస్టరీని రికార్డ్ చేయకుండా ఎక్స్‌టెన్ష‌న్‌లను నివారించలేదు. ఈ ఎక్స్‌టెన్షన్‌ను అజ్ఞాత మోడ్‌లో డిజేబుల్ చేయడానికి, ఈ ఆప్షన్‌ను రద్దు చేయండి.</translation>
 <translation id="2765403129283291972">ఈ సైట్ కోసం మీ మైక్రోఫోన్‌ను యాక్సెస్ చేయడానికి Chromeకు అనుమతి అవసరం</translation>
 <translation id="2770231113462710648">డిఫాల్ట్ బ్రౌజర్‌ను దీనికి మార్చు:</translation>
@@ -118,7 +118,7 @@
 <translation id="3596080736082218006">{COUNT,plural, =0{అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromeను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు}=1{అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromeను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు. మీ అజ్ఞాత విండో మళ్లీ తెరవబడదు.}other{అప్‌డేట్‌ను వర్తింపజేయడం కోసం మీరు Chromeను పునఃప్రారంభించాలని మీ నిర్వాహకుడు కోరుతున్నారు. మీ # అజ్ఞాత విండోలు మళ్లీ తెరవబడవు.}}</translation>
 <translation id="3622797965165704966">ఇప్పుడు మీ Google ఖాతాతో, షేర్ చేయ‌బ‌డిన కంప్యూటర్‌ల‌లో Chromeను సులభంగా ఉపయోగించవచ్చు.</translation>
 <translation id="3718181793972440140">ఇది ఈ పరికరం నుండి 1 అంశాన్ని తొలగిస్తుంది. మీ డేటాను తర్వాత తిరిగి పొందడానికి, Chromeకు <ph name="USER_EMAIL" /> లాగా సైన్ ఇన్ చేయండి.</translation>
-<translation id="3735758079232443276"><ph name="EXTENSION_NAME" /> పొడిగింపు మీరు Chromeని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
+<translation id="3735758079232443276"><ph name="EXTENSION_NAME" /> ఎక్స్‌టెన్షన్‌ మీరు Chromeని ప్రారంభించినప్పుడు చూపబడే పేజీని మార్చింది.</translation>
 <translation id="3779473566290487688">భవిష్యత్తు Google Chrome అప్‌డేట్‌లను పొందడానికి, మీకు OS X 10.11 లేదా ఆ తర్వాత వచ్చిన ఏదైనా వెర్షన్ అవసరం అవుతుంది. ఈ కంప్యూటర్ OS X 10.10ను ఉపయోగిస్తోంది.</translation>
 <translation id="3780814664026482060">Chrome - <ph name="PAGE_TITLE" /></translation>
 <translation id="3835168907083856002">ఇది <ph name="USER_EMAIL_ADDRESS" />కు కొత్త Chrome ప్రొఫైల్‌ను క్రియేట్ చేస్తుంది</translation>
@@ -154,7 +154,7 @@
 <translation id="4571503333518166079">Chrome నోటిఫికేషన్ సెట్టింగ్‌లలోకి వెళ్లు</translation>
 <translation id="459622048091363950">ఓసారి Chromeకి యాక్సెస్ లభించాక, ఆపై వెబ్‌సైట్‌లకు ఏమైనా యాక్సెస్‌ కావాలంటే అవి మిమ్మల్ని అడగవచ్చు.</translation>
 <translation id="4600710005438004015">Chromeను తాజా వెర్షన్‌కు అప్‌డేట్ చేయడం సాధ్యం కాలేదు, కాబట్టి మీరు కొత్త ఫీచర్‌లు మరియు భద్రతా పరిష్కారాలను పొందలేరు.</translation>
-<translation id="4633000520311261472">Chromeను సురక్షితం చేయడానికి, మేము <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో జాబితా చేయబడని మరియు మీకు తెలియకుండానే జోడించబడిన కొన్ని పొడిగింపులను నిలిపివేసాము.</translation>
+<translation id="4633000520311261472">Chromeను సురక్షితం చేయడానికి, మేము <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో లిస్ట్‌ చేయబడని మరియు మీకు తెలియకుండానే జోడించబడిన కొన్ని ఎక్స్‌టెన్షన్‌లను నిలిపివేసాము.</translation>
 <translation id="4666328473657283332">మీ అన్ని పరికరాలలో మీ Chrome సంబంధిత అంశాలను యాక్సెస్ చేయడానికి, సైన్ ఇన్ చేయడం ద్వారా సింక్‌ను ఆన్ చేయండి.</translation>
 <translation id="4728575227883772061">పేర్కొనబడని ఎర్రర్ కారణంగా ఇన్‌స్టాలేషన్ విఫలమైంది. ప్రస్తుతం Google Chrome అమలు అవుతున్నట్లయితే, దయచేసి దానిని మూసివేసి, మళ్ళీ ప్రయత్నించండి.</translation>
 <translation id="4754614261631455953">Google Chrome కెనరీ (mDNS-In)</translation>
@@ -167,7 +167,7 @@
 <translation id="4970761609246024540">Chrome ప్రొఫైల్‌లకు స్వాగతం</translation>
 <translation id="4990567037958725628">Google Chrome కేనరీ</translation>
 <translation id="5062123544085870375">Chrome OSను మళ్లీ ప్రారంభించండి</translation>
-<translation id="5132929315877954718">Google Chrome కోసం గొప్ప యాప్‌లు, ఆటలు, పొడిగింపులు మరియు థీమ్‌లను కనుగొనండి.</translation>
+<translation id="5132929315877954718">Google Chrome కోసం గొప్ప యాప్‌లు, ఆటలు, ఎక్స్‌టెన్షన్‌లు మరియు థీమ్‌లను కనుగొనండి.</translation>
 <translation id="5139423532931106058">మీ Chrome ప్రొఫైల్‌ను అనుకూలంగా మార్చండి</translation>
 <translation id="5163087008893166964">Chromeకు స్వాగతం; కొత్త బ్రౌజర్ విండో తెరవబడింది</translation>
 <translation id="5170938038195470297">మీ ప్రొఫైల్‌ను ఉపయోగించడం సాధ్యపడదు, ఎందుకంటే ఇది ఒక కొత్త Google Chrome వెర్షన్ నుండి తీసుకోబడింది. కొన్ని ఫీచర్‌లు అందుబాటులో ఉండకపోవచ్చు. దయచేసి వేరొక ప్రొఫైల్ డైరెక్టరీని పేర్కొనండి లేదా Chrome కొత్త వెర్షన్‌ను ఉపయోగించండి.</translation>
diff --git a/chrome/app/resources/google_chrome_strings_uz.xtb b/chrome/app/resources/google_chrome_strings_uz.xtb
index 2dbf2f2..1cc2ca9 100644
--- a/chrome/app/resources/google_chrome_strings_uz.xtb
+++ b/chrome/app/resources/google_chrome_strings_uz.xtb
@@ -70,6 +70,7 @@
 <translation id="2429317896000329049">Google Chrome domeningizda Sync xizmati yo‘qligi sababli ma’lumotlaringizni sinxronlay olmadi.</translation>
 <translation id="2467438592969358367">Google Chrome parollaringizni eksport qilmoqchi. Ruxsat berish uchun Windows platformasidagi parolingizni kiriting.</translation>
 <translation id="2485422356828889247">O‘chirib tashlash</translation>
+<translation id="2518751521812750372">Chrome yopilganda siz ochgan sahifalarning cookie fayllari va sayt maʼlumotlari avtomatik tozalanadi</translation>
 <translation id="2534507159460261402">Google Pay (Chrome brauzeriga nusxalandi)</translation>
 <translation id="2574930892358684005"><ph name="EXISTING_USER" /> allaqachon ushbu Chrome profiliga kirgan. Internetni alohida kezish uchun Chrome siz uchun alohida profil yaratadi.</translation>
 <translation id="2580411288591421699">Hozir ishlab turgan versiyadagi Google Chrome brauzerini o‘rnatib bo‘lmaydi. Google Chrome brauzeringizni yoping va qaytadan urinib ko‘ring.</translation>
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index a8aa999..5fc775f 100644
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -4821,6 +4821,17 @@
     ]
   }
 
+  if (is_chromeos) {
+    sources += [
+      "apps/app_service/browser_app_instance.cc",
+      "apps/app_service/browser_app_instance.h",
+      "apps/app_service/browser_app_instance_observer.cc",
+      "apps/app_service/browser_app_instance_observer.h",
+      "apps/app_service/browser_app_instance_tracker.cc",
+      "apps/app_service/browser_app_instance_tracker.h",
+    ]
+  }
+
   if (is_chromeos_ash || enable_extensions || is_android) {
     sources += [
       "metrics/cached_metrics_profile.cc",
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index b73a23d..ba9b1022c 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -2374,6 +2374,13 @@
     {"Default", "", ""},
     {"Enable", media::switches::kForceControlFaceAe, "enable"},
     {"Disable", media::switches::kForceControlFaceAe, "disable"}};
+
+const FeatureEntry::Choice kHdrNetOverrideChoices[] = {
+    {"Default", "", ""},
+    {"Force enabled", media::switches::kHdrNetOverride,
+     media::switches::kHdrNetForceEnabled},
+    {"Force disabled", media::switches::kHdrNetOverride,
+     media::switches::kHdrNetForceDisabled}};
 #endif
 
 #if BUILDFLAG(IS_CHROMEOS_ASH)
@@ -3957,6 +3964,10 @@
      flag_descriptions::kCrosOnDeviceGrammarCheckName,
      flag_descriptions::kCrosOnDeviceGrammarCheckDescription, kOsCrOS,
      FEATURE_VALUE_TYPE(chromeos::features::kOnDeviceGrammarCheck)},
+    {"enable-cros-system-korean-physical-typing",
+     flag_descriptions::kSystemKoreanPhysicalTypingName,
+     flag_descriptions::kSystemKoreanPhysicalTypingDescription, kOsCrOS,
+     FEATURE_VALUE_TYPE(chromeos::features::kSystemKoreanPhysicalTyping)},
     {"enable-cros-system-latin-physical-typing",
      flag_descriptions::kSystemLatinPhysicalTypingName,
      flag_descriptions::kSystemLatinPhysicalTypingDescription, kOsCrOS,
@@ -4134,6 +4145,9 @@
     {"force-control-face-ae", flag_descriptions::kForceControlFaceAeName,
      flag_descriptions::kForceControlFaceAeDescription, kOsCrOS,
      MULTI_VALUE_TYPE(kForceControlFaceAeChoices)},
+    {"hdrnet-override", flag_descriptions::kHdrNetOverrideName,
+     flag_descriptions::kHdrNetOverrideDescription, kOsCrOS,
+     MULTI_VALUE_TYPE(kHdrNetOverrideChoices)},
     {"crostini-gpu-support", flag_descriptions::kCrostiniGpuSupportName,
      flag_descriptions::kCrostiniGpuSupportDescription, kOsCrOS,
      FEATURE_VALUE_TYPE(chromeos::features::kCrostiniGpuSupport)},
diff --git a/chrome/browser/apps/app_service/browser_app_instance.cc b/chrome/browser/apps/app_service/browser_app_instance.cc
new file mode 100644
index 0000000..d0391e2
--- /dev/null
+++ b/chrome/browser/apps/app_service/browser_app_instance.cc
@@ -0,0 +1,11 @@
+// Copyright 2021 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/apps/app_service/browser_app_instance.h"
+
+namespace apps {
+
+BrowserAppInstance::~BrowserAppInstance() = default;
+
+}  // namespace apps
diff --git a/chrome/browser/apps/app_service/browser_app_instance.h b/chrome/browser/apps/app_service/browser_app_instance.h
new file mode 100644
index 0000000..8205503
--- /dev/null
+++ b/chrome/browser/apps/app_service/browser_app_instance.h
@@ -0,0 +1,43 @@
+// Copyright 2021 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_APPS_APP_SERVICE_BROWSER_APP_INSTANCE_H_
+#define CHROME_BROWSER_APPS_APP_SERVICE_BROWSER_APP_INSTANCE_H_
+
+#include <string>
+
+#include "base/types/id_type.h"
+
+class Browser;
+
+namespace content {
+class WebContents;
+}
+
+namespace apps {
+
+struct WebContentsIdTypeMarker {};
+
+typedef base::IdTypeU32<WebContentsIdTypeMarker> WebContentsId;
+
+// An instance of a browser-based app. Can represent either of:
+// - apps running inside Browser->WebContents,
+// - actual browser instances (a single browser window). In this case `contents`
+//   will be null and app ID will be set to |extension_misc::kChromeAppId|.
+struct BrowserAppInstance {
+  ~BrowserAppInstance();
+  BrowserAppInstance(const BrowserAppInstance&) = delete;
+  BrowserAppInstance& operator=(const BrowserAppInstance&) = delete;
+
+  std::string app_id;
+  Browser* browser;
+  content::WebContents* web_contents;
+  WebContentsId web_contents_id;
+  bool visible;
+  bool active;
+};
+
+}  // namespace apps
+
+#endif  // CHROME_BROWSER_APPS_APP_SERVICE_BROWSER_APP_INSTANCE_H_
diff --git a/chrome/browser/apps/app_service/browser_app_instance_observer.cc b/chrome/browser/apps/app_service/browser_app_instance_observer.cc
new file mode 100644
index 0000000..f85436d
--- /dev/null
+++ b/chrome/browser/apps/app_service/browser_app_instance_observer.cc
@@ -0,0 +1,16 @@
+// Copyright 2021 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/apps/app_service/browser_app_instance_observer.h"
+
+namespace apps {
+
+void BrowserAppInstanceObserver::OnBrowserAppAdded(
+    const BrowserAppInstance& instance) {}
+void BrowserAppInstanceObserver::OnBrowserAppUpdated(
+    const BrowserAppInstance& instance) {}
+void BrowserAppInstanceObserver::OnBrowserAppRemoved(
+    const BrowserAppInstance& instance) {}
+
+}  // namespace apps
diff --git a/chrome/browser/apps/app_service/browser_app_instance_observer.h b/chrome/browser/apps/app_service/browser_app_instance_observer.h
new file mode 100644
index 0000000..2075223
--- /dev/null
+++ b/chrome/browser/apps/app_service/browser_app_instance_observer.h
@@ -0,0 +1,31 @@
+// Copyright 2021 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_APPS_APP_SERVICE_BROWSER_APP_INSTANCE_OBSERVER_H_
+#define CHROME_BROWSER_APPS_APP_SERVICE_BROWSER_APP_INSTANCE_OBSERVER_H_
+
+namespace apps {
+
+struct BrowserAppInstance;
+
+// Observer interface to listen to |BrowserAppInstanceTracker| events.
+class BrowserAppInstanceObserver {
+ public:
+  virtual ~BrowserAppInstanceObserver() = default;
+
+  // Called when a new app instance is started: a tab or a window is open, a tab
+  // navigates to a URL with an app.
+  virtual void OnBrowserAppAdded(const BrowserAppInstance& instance);
+  // Called when the app's window, app's tab, or a window containing the app's
+  // tab changes properties (visibility, active state), or a tab gets moved
+  // between browsers.
+  virtual void OnBrowserAppUpdated(const BrowserAppInstance& instance);
+  // Called when an app instance is stopped: a tab or window is closed, a new
+  // windowed app is open, a tab navigates to a URL with an app.
+  virtual void OnBrowserAppRemoved(const BrowserAppInstance& instance);
+};
+
+}  // namespace apps
+
+#endif  // CHROME_BROWSER_APPS_APP_SERVICE_BROWSER_APP_INSTANCE_OBSERVER_H_
diff --git a/chrome/browser/ui/ash/shelf/browser_apps_tracker.cc b/chrome/browser/apps/app_service/browser_app_instance_tracker.cc
similarity index 75%
rename from chrome/browser/ui/ash/shelf/browser_apps_tracker.cc
rename to chrome/browser/apps/app_service/browser_app_instance_tracker.cc
index 9b05a5a..6d04e37 100644
--- a/chrome/browser/ui/ash/shelf/browser_apps_tracker.cc
+++ b/chrome/browser/apps/app_service/browser_app_instance_tracker.cc
@@ -2,13 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/ui/ash/shelf/browser_apps_tracker.h"
+#include "chrome/browser/apps/app_service/browser_app_instance_tracker.h"
 
 #include <memory>
 #include <utility>
 
 #include "base/containers/contains.h"
 #include "base/macros.h"
+#include "chrome/browser/apps/app_service/browser_app_instance_observer.h"
 #include "chrome/browser/apps/app_service/web_contents_app_id_utils.h"
 #include "chrome/browser/extensions/tab_helper.h"
 #include "chrome/browser/ui/browser.h"
@@ -16,8 +17,8 @@
 #include "chrome/browser/ui/browser_list.h"
 #include "chrome/browser/ui/browser_window.h"
 #include "chrome/browser/ui/tabs/tab_strip_model.h"
-#include "chrome/browser/ui/views/frame/browser_view.h"
 #include "chrome/browser/web_applications/web_app_tab_helper.h"
+#include "components/services/app_service/public/cpp/types_util.h"
 #include "content/public/browser/navigation_controller.h"
 #include "content/public/browser/navigation_handle.h"
 #include "content/public/browser/web_contents.h"
@@ -27,6 +28,8 @@
 #include "extensions/common/constants.h"
 #include "extensions/common/extension.h"
 
+namespace apps {
+
 namespace {
 
 Browser* GetBrowserWithTabStripModel(TabStripModel* tab_strip_model) {
@@ -37,6 +40,16 @@
   return nullptr;
 }
 
+Browser* GetBrowserWithAuraWindow(aura::Window* aura_window) {
+  for (auto* browser : *BrowserList::GetInstance()) {
+    BrowserWindow* window = browser->window();
+    if (window && window->GetNativeWindow() == aura_window) {
+      return browser;
+    }
+  }
+  return nullptr;
+}
+
 std::string GetAppId(content::WebContents* contents) {
   return apps::GetInstanceAppIdForWebContents(contents).value_or("");
 }
@@ -61,13 +74,13 @@
 
 }  // namespace
 
-// Helper class to notify BrowserAppsTracker when WebContents navigation
+// Helper class to notify BrowserAppInstanceTracker when WebContents navigation
 // finishes.
-class BrowserAppsTracker::WebContentsObserver
+class BrowserAppInstanceTracker::WebContentsObserver
     : public content::WebContentsObserver {
  public:
   explicit WebContentsObserver(content::WebContents* contents,
-                               BrowserAppsTracker* owner)
+                               BrowserAppInstanceTracker* owner)
       : content::WebContentsObserver(contents), owner_(owner) {}
   WebContentsObserver(const WebContentsObserver&) = delete;
   WebContentsObserver& operator=(const WebContentsObserver&) = delete;
@@ -83,28 +96,29 @@
   }
 
  private:
-  BrowserAppsTracker* owner_;
+  BrowserAppInstanceTracker* owner_;
 };
 
-const base::Feature BrowserAppsTracker::kEnabled{
+const base::Feature BrowserAppInstanceTracker::kEnabled{
     "EnableBrowserAppsTracker", base::FEATURE_DISABLED_BY_DEFAULT};
 
-BrowserAppsTracker::BrowserAppsTracker(
+BrowserAppInstanceTracker::BrowserAppInstanceTracker(
     apps::AppRegistryCache& app_registry_cache)
     : apps::AppRegistryCache::Observer(&app_registry_cache),
       browser_tab_strip_tracker_(this, nullptr) {
   BrowserList::GetInstance()->AddObserver(this);
 }
 
-BrowserAppsTracker::~BrowserAppsTracker() {
+BrowserAppInstanceTracker::~BrowserAppInstanceTracker() {
   BrowserList::GetInstance()->RemoveObserver(this);
 }
 
-void BrowserAppsTracker::Initialize() {
+void BrowserAppInstanceTracker::Initialize() {
   browser_tab_strip_tracker_.Init();
 }
 
-std::set<const BrowserAppInstance*> BrowserAppsTracker::GetAppInstancesByAppId(
+std::set<const BrowserAppInstance*>
+BrowserAppInstanceTracker::GetAppInstancesByAppId(
     const std::string& app_id) const {
   std::set<const BrowserAppInstance*> result;
   for (const auto& pair : app_instances_) {
@@ -122,7 +136,7 @@
   return result;
 }
 
-bool BrowserAppsTracker::IsAppRunning(const std::string& app_id) const {
+bool BrowserAppInstanceTracker::IsAppRunning(const std::string& app_id) const {
   for (const auto& pair : app_instances_) {
     const auto& app_instance = pair.second;
     if (app_instance->app_id == app_id) {
@@ -138,13 +152,14 @@
   return false;
 }
 
-const BrowserAppInstance* BrowserAppsTracker::GetAppInstance(
+const BrowserAppInstance* BrowserAppInstanceTracker::GetAppInstance(
     content::WebContents* contents) const {
   auto it = app_instances_.find(contents);
   return it == app_instances_.end() ? nullptr : it->second.get();
 }
 
-const BrowserAppInstance* BrowserAppsTracker::GetAppInstanceByWebContentsId(
+const BrowserAppInstance*
+BrowserAppInstanceTracker::GetAppInstanceByWebContentsId(
     WebContentsId web_contents_id) const {
   for (const auto& pair : app_instances_) {
     const auto& app_instance = pair.second;
@@ -155,13 +170,13 @@
   return nullptr;
 }
 
-const BrowserAppInstance* BrowserAppsTracker::GetChromeInstance(
+const BrowserAppInstance* BrowserAppInstanceTracker::GetChromeInstance(
     Browser* browser) const {
   auto it = chrome_instances_.find(browser);
   return it == chrome_instances_.end() ? nullptr : it->second.get();
 }
 
-void BrowserAppsTracker::OnTabStripModelChanged(
+void BrowserAppInstanceTracker::OnTabStripModelChanged(
     TabStripModel* tab_strip_model,
     const TabStripModelChange& change,
     const TabStripSelectionChange& selection) {
@@ -187,26 +202,29 @@
   }
 }
 
-void BrowserAppsTracker::OnWindowVisibilityChanged(aura::Window* window,
-                                                   bool visible) {
+void BrowserAppInstanceTracker::OnWindowVisibilityChanged(aura::Window* window,
+                                                          bool visible) {
   DCHECK(window);
   if (!IsWindowTracked(window)) {
     return;
   }
-  if (auto* browser_view = BrowserView::GetBrowserViewForNativeWindow(window)) {
-    OnBrowserWindowUpdated(browser_view->browser());
+  if (Browser* browser = GetBrowserWithAuraWindow(window)) {
+    OnBrowserWindowUpdated(browser);
   }
 }
 
-void BrowserAppsTracker::OnBrowserSetLastActive(Browser* browser) {
+void BrowserAppInstanceTracker::OnBrowserSetLastActive(Browser* browser) {
   OnBrowserWindowUpdated(browser);
 }
 
-void BrowserAppsTracker::OnBrowserNoLongerActive(Browser* browser) {
+void BrowserAppInstanceTracker::OnBrowserNoLongerActive(Browser* browser) {
   OnBrowserWindowUpdated(browser);
 }
 
-void BrowserAppsTracker::OnAppUpdate(const apps::AppUpdate& update) {
+void BrowserAppInstanceTracker::OnAppUpdate(const apps::AppUpdate& update) {
+  if (!apps_util::AppTypeUsesWebContents(update.AppType())) {
+    return;
+  }
   // Sync app instances for existing tabs.
   for (auto* browser : *BrowserList::GetInstance()) {
     if (!IsBrowserTracked(browser)) {
@@ -220,12 +238,12 @@
   }
 }
 
-void BrowserAppsTracker::OnAppRegistryCacheWillBeDestroyed(
+void BrowserAppInstanceTracker::OnAppRegistryCacheWillBeDestroyed(
     apps::AppRegistryCache* cache) {
   Observe(nullptr);
 }
 
-void BrowserAppsTracker::OnTabStripModelChangeInsert(
+void BrowserAppInstanceTracker::OnTabStripModelChangeInsert(
     Browser* browser,
     const TabStripModelChange::Insert& insert,
     const TabStripSelectionChange& selection) {
@@ -237,7 +255,8 @@
     return;
   }
   // First tab attached.
-  if (browser->tab_strip_model()->count() == insert.contents.size()) {
+  if (browser->tab_strip_model()->count() ==
+      static_cast<int>(insert.contents.size())) {
     OnBrowserFirstTabAttached(browser);
   }
   for (const auto& inserted_tab : insert.contents) {
@@ -253,15 +272,15 @@
 #endif
     if (tab_is_new) {
       webcontents_to_observer_map_[contents] =
-          std::make_unique<BrowserAppsTracker::WebContentsObserver>(contents,
-                                                                    this);
+          std::make_unique<BrowserAppInstanceTracker::WebContentsObserver>(
+              contents, this);
       OnTabCreated(browser, contents);
     }
     OnTabAttached(browser, contents);
   }
 }
 
-void BrowserAppsTracker::OnTabStripModelChangeRemove(
+void BrowserAppInstanceTracker::OnTabStripModelChangeRemove(
     Browser* browser,
     const TabStripModelChange::Remove& remove,
     const TabStripSelectionChange& selection) {
@@ -310,7 +329,7 @@
   }
 }
 
-void BrowserAppsTracker::OnTabStripModelChangeReplace(
+void BrowserAppInstanceTracker::OnTabStripModelChangeReplace(
     Browser* browser,
     const TabStripModelChange::Replace& replace) {
   // Simulate closing the old tab and opening a new tab.
@@ -319,7 +338,7 @@
   OnTabAttached(browser, replace.new_contents);
 }
 
-void BrowserAppsTracker::OnTabStripModelChangeSelection(
+void BrowserAppInstanceTracker::OnTabStripModelChangeSelection(
     Browser* browser,
     const TabStripSelectionChange& selection) {
   if (!selection.active_tab_changed()) {
@@ -333,7 +352,7 @@
   }
 }
 
-void BrowserAppsTracker::OnBrowserFirstTabAttached(Browser* browser) {
+void BrowserAppInstanceTracker::OnBrowserFirstTabAttached(Browser* browser) {
   tracked_browsers_.insert(browser);
   BrowserWindow* window = browser->window();
   DCHECK(window && window->GetNativeWindow());
@@ -343,7 +362,7 @@
   }
 }
 
-void BrowserAppsTracker::OnBrowserLastTabDetached(Browser* browser) {
+void BrowserAppInstanceTracker::OnBrowserLastTabDetached(Browser* browser) {
   BrowserWindow* window = browser->window();
   DCHECK(window && window->GetNativeWindow());
   browser_window_observations_.RemoveObservation(window->GetNativeWindow());
@@ -351,16 +370,16 @@
   tracked_browsers_.erase(browser);
 }
 
-void BrowserAppsTracker::OnTabCreated(Browser* browser,
-                                      content::WebContents* contents) {
+void BrowserAppInstanceTracker::OnTabCreated(Browser* browser,
+                                             content::WebContents* contents) {
   std::string app_id = GetAppId(contents);
   if (!app_id.empty()) {
     CreateAppInstance(std::move(app_id), browser, contents);
   }
 }
 
-void BrowserAppsTracker::OnTabAttached(Browser* browser,
-                                       content::WebContents* contents) {
+void BrowserAppInstanceTracker::OnTabAttached(Browser* browser,
+                                              content::WebContents* contents) {
   auto it = app_instances_.find(contents);
   if (it != app_instances_.end()) {
     auto& app_instance = it->second;
@@ -368,8 +387,8 @@
   }
 }
 
-void BrowserAppsTracker::OnTabUpdated(Browser* browser,
-                                      content::WebContents* contents) {
+void BrowserAppInstanceTracker::OnTabUpdated(Browser* browser,
+                                             content::WebContents* contents) {
   std::string new_app_id = GetAppId(contents);
   auto it = app_instances_.find(contents);
   if (it != app_instances_.end()) {
@@ -393,12 +412,12 @@
   }
 }
 
-void BrowserAppsTracker::OnTabClosing(Browser* browser,
-                                      content::WebContents* contents) {
+void BrowserAppInstanceTracker::OnTabClosing(Browser* browser,
+                                             content::WebContents* contents) {
   RemoveAppInstanceIfExists(contents);
 }
 
-void BrowserAppsTracker::OnTabNavigationFinished(
+void BrowserAppInstanceTracker::OnTabNavigationFinished(
     content::WebContents* contents) {
   Browser* browser = chrome::FindBrowserWithWebContents(contents);
   if (browser) {
@@ -406,7 +425,7 @@
   }
 }
 
-void BrowserAppsTracker::OnBrowserWindowUpdated(Browser* browser) {
+void BrowserAppInstanceTracker::OnBrowserWindowUpdated(Browser* browser) {
   // We only want to send window events for the browsers we track to avoid
   // sending window events before a "browser added" event.
   if (!IsBrowserTracked(browser)) {
@@ -424,54 +443,56 @@
   }
 }
 
-void BrowserAppsTracker::CreateAppInstance(std::string app_id,
-                                           Browser* browser,
-                                           content::WebContents* contents) {
+void BrowserAppInstanceTracker::CreateAppInstance(
+    std::string app_id,
+    Browser* browser,
+    content::WebContents* contents) {
   CreateInstance(app_instances_, contents,
                  base::WrapUnique(new BrowserAppInstance{
                      std::move(app_id),
                      browser,
                      contents,
-                     ++last_web_contents_id_,
+                     web_contents_id_generator_.GenerateNextId(),
                      IsAppVisible(browser, contents),
                      IsAppActive(browser, contents),
                  }));
 }
 
-void BrowserAppsTracker::MaybeUpdateAppInstance(BrowserAppInstance& instance,
-                                                Browser* browser) {
+void BrowserAppInstanceTracker::MaybeUpdateAppInstance(
+    BrowserAppInstance& instance,
+    Browser* browser) {
   MaybeUpdateInstance(instance, browser);
 }
 
-void BrowserAppsTracker::RemoveAppInstanceIfExists(
+void BrowserAppInstanceTracker::RemoveAppInstanceIfExists(
     content::WebContents* contents) {
   RemoveInstanceIfExists(app_instances_, contents);
 }
 
-void BrowserAppsTracker::CreateChromeInstance(Browser* browser) {
+void BrowserAppInstanceTracker::CreateChromeInstance(Browser* browser) {
   CreateInstance(chrome_instances_, browser,
                  base::WrapUnique(new BrowserAppInstance{
                      extension_misc::kChromeAppId,
                      browser,
                      nullptr /* contents */,
-                     0 /* web_contents_id */,
+                     WebContentsId(0),
                      IsBrowserVisible(browser),
                      IsBrowserActive(browser),
                  }));
 }
 
-void BrowserAppsTracker::MaybeUpdateChromeInstance(
+void BrowserAppInstanceTracker::MaybeUpdateChromeInstance(
     BrowserAppInstance& instance) {
   // Browser does not change for Chrome instances.
   MaybeUpdateInstance(instance, instance.browser);
 }
 
-void BrowserAppsTracker::RemoveChromeInstanceIfExists(Browser* browser) {
+void BrowserAppInstanceTracker::RemoveChromeInstanceIfExists(Browser* browser) {
   RemoveInstanceIfExists(chrome_instances_, browser);
 }
 
 template <typename KeyT>
-void BrowserAppsTracker::CreateInstance(
+void BrowserAppInstanceTracker::CreateInstance(
     std::map<KeyT, std::unique_ptr<BrowserAppInstance>>& instances,
     const KeyT& key,
     std::unique_ptr<BrowserAppInstance> instance_ptr) {
@@ -483,8 +504,9 @@
   }
 }
 
-void BrowserAppsTracker::MaybeUpdateInstance(BrowserAppInstance& instance,
-                                             Browser* browser) {
+void BrowserAppInstanceTracker::MaybeUpdateInstance(
+    BrowserAppInstance& instance,
+    Browser* browser) {
   DCHECK(browser);
   bool visible;
   bool active;
@@ -508,16 +530,16 @@
   }
 }
 
-bool BrowserAppsTracker::IsBrowserTracked(Browser* browser) const {
+bool BrowserAppInstanceTracker::IsBrowserTracked(Browser* browser) const {
   return base::Contains(tracked_browsers_, browser);
 }
 
-bool BrowserAppsTracker::IsWindowTracked(aura::Window* window) const {
+bool BrowserAppInstanceTracker::IsWindowTracked(aura::Window* window) const {
   return browser_window_observations_.IsObservingSource(window);
 }
 
 template <typename KeyT>
-void BrowserAppsTracker::RemoveInstanceIfExists(
+void BrowserAppInstanceTracker::RemoveInstanceIfExists(
     std::map<KeyT, std::unique_ptr<BrowserAppInstance>>& instances,
     const KeyT& key) {
   auto it = instances.find(key);
@@ -530,3 +552,5 @@
     observer.OnBrowserAppRemoved(*app_instance);
   }
 }
+
+}  // namespace apps
diff --git a/chrome/browser/ui/ash/shelf/browser_apps_tracker.h b/chrome/browser/apps/app_service/browser_app_instance_tracker.h
similarity index 80%
rename from chrome/browser/ui/ash/shelf/browser_apps_tracker.h
rename to chrome/browser/apps/app_service/browser_app_instance_tracker.h
index 543affc..776a461 100644
--- a/chrome/browser/ui/ash/shelf/browser_apps_tracker.h
+++ b/chrome/browser/apps/app_service/browser_app_instance_tracker.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef CHROME_BROWSER_UI_ASH_SHELF_BROWSER_APPS_TRACKER_H_
-#define CHROME_BROWSER_UI_ASH_SHELF_BROWSER_APPS_TRACKER_H_
+#ifndef CHROME_BROWSER_APPS_APP_SERVICE_BROWSER_APP_INSTANCE_TRACKER_H_
+#define CHROME_BROWSER_APPS_APP_SERVICE_BROWSER_APP_INSTANCE_TRACKER_H_
 
 #include <map>
 #include <memory>
@@ -13,8 +13,8 @@
 #include "base/feature_list.h"
 #include "base/observer_list.h"
 #include "base/scoped_multi_source_observation.h"
+#include "chrome/browser/apps/app_service/browser_app_instance.h"
 #include "chrome/browser/profiles/profile.h"
-#include "chrome/browser/ui/ash/shelf/browser_app_status_observer.h"
 #include "chrome/browser/ui/browser.h"
 #include "chrome/browser/ui/browser_list_observer.h"
 #include "chrome/browser/ui/browser_tab_strip_tracker.h"
@@ -26,24 +26,30 @@
 
 class Browser;
 
-// BrowserAppsTracker monitors changes to Browsers, TabStripModels and browsers'
-// native windows to maintain a list of running apps and notify its registered
-// observers of any changes:
+namespace apps {
+
+class BrowserAppInstanceObserver;
+
+// BrowserAppInstanceTracker monitors changes to Browsers, TabStripModels and
+// browsers' native windows to maintain a list of running apps and notify its
+// registered observers of any changes:
 // - apps running in WebContents (web apps, hosted apps, V1 packaged apps)
 // - browser instances (registered with app ID |extension_misc::kChromeAppId|).
-class BrowserAppsTracker : public TabStripModelObserver,
-                           public aura::WindowObserver,
-                           public apps::AppRegistryCache::Observer,
-                           public BrowserListObserver {
+class BrowserAppInstanceTracker : public TabStripModelObserver,
+                                  public aura::WindowObserver,
+                                  public apps::AppRegistryCache::Observer,
+                                  public BrowserListObserver {
  public:
   static const base::Feature kEnabled;
 
-  explicit BrowserAppsTracker(apps::AppRegistryCache& app_registry_cache);
-  ~BrowserAppsTracker() override;
-  BrowserAppsTracker(const BrowserAppsTracker&) = delete;
-  BrowserAppsTracker& operator=(const BrowserAppsTracker&) = delete;
+  explicit BrowserAppInstanceTracker(
+      apps::AppRegistryCache& app_registry_cache);
+  ~BrowserAppInstanceTracker() override;
+  BrowserAppInstanceTracker(const BrowserAppInstanceTracker&) = delete;
+  BrowserAppInstanceTracker& operator=(const BrowserAppInstanceTracker&) =
+      delete;
 
-  // Causes BrowserAppStatusObserver events to fire for all existing browsers.
+  // Causes BrowserAppInstanceObserver events to fire for all existing browsers.
   void Initialize();
 
   // Get all instances by app ID. Returns a set of unowned pointers.
@@ -64,11 +70,11 @@
   // Get Chrome instance running in |browser|. Returns null if not found.
   const BrowserAppInstance* GetChromeInstance(Browser* browser) const;
 
-  void AddObserver(BrowserAppStatusObserver* observer) {
+  void AddObserver(BrowserAppInstanceObserver* observer) {
     observers_.AddObserver(observer);
   }
 
-  void RemoveObserver(BrowserAppStatusObserver* observer) {
+  void RemoveObserver(BrowserAppInstanceObserver* observer) {
     observers_.RemoveObserver(observer);
   }
 
@@ -114,7 +120,7 @@
   void OnTabUpdated(Browser* browser, content::WebContents* contents);
   void OnTabClosing(Browser* browser, content::WebContents* contents);
 
-  // Called by |BrowserAppsTracker::WebContentsObserver|.
+  // Called by |BrowserAppInstanceTracker::WebContentsObserver|.
   void OnTabNavigationFinished(content::WebContents* contents);
 
   // Called on browser window changes. Sends update events for all open tabs.
@@ -189,9 +195,11 @@
   // A map of Chrome browser windows.
   std::map<Browser*, std::unique_ptr<BrowserAppInstance>> chrome_instances_;
 
-  base::ObserverList<BrowserAppStatusObserver, true>::Unchecked observers_;
+  base::ObserverList<BrowserAppInstanceObserver, true>::Unchecked observers_;
 
-  WebContentsId last_web_contents_id_{0};
+  WebContentsId::Generator web_contents_id_generator_;
 };
 
-#endif  // CHROME_BROWSER_UI_ASH_SHELF_BROWSER_APPS_TRACKER_H_
+}  // namespace apps
+
+#endif  // CHROME_BROWSER_APPS_APP_SERVICE_BROWSER_APP_INSTANCE_TRACKER_H_
diff --git a/chrome/browser/ui/ash/shelf/browser_apps_tracker_browsertest.cc b/chrome/browser/apps/app_service/browser_app_instance_tracker_browsertest.cc
similarity index 91%
rename from chrome/browser/ui/ash/shelf/browser_apps_tracker_browsertest.cc
rename to chrome/browser/apps/app_service/browser_app_instance_tracker_browsertest.cc
index a4a6a36..3bbdee8 100644
--- a/chrome/browser/ui/ash/shelf/browser_apps_tracker_browsertest.cc
+++ b/chrome/browser/apps/app_service/browser_app_instance_tracker_browsertest.cc
@@ -2,12 +2,11 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "ash/shell.h"
 #include "chrome/browser/apps/app_service/app_service_proxy.h"
 #include "chrome/browser/apps/app_service/app_service_proxy_factory.h"
+#include "chrome/browser/apps/app_service/browser_app_instance_observer.h"
+#include "chrome/browser/apps/app_service/browser_app_instance_tracker.h"
 #include "chrome/browser/profiles/profile_manager.h"
-#include "chrome/browser/ui/ash/shelf/browser_app_status_observer.h"
-#include "chrome/browser/ui/ash/shelf/browser_apps_tracker.h"
 #include "chrome/browser/ui/browser.h"
 #include "chrome/browser/ui/browser_finder.h"
 #include "chrome/browser/ui/browser_navigator.h"
@@ -37,18 +36,18 @@
 
 struct TestInstance {
   static TestInstance Create(const std::string name,
-                             const BrowserAppInstance& instance) {
+                             const apps::BrowserAppInstance& instance) {
     return {
         name,
         instance.app_id,
         instance.browser,
         instance.web_contents,
-        instance.web_contents_id,
+        instance.web_contents_id.value(),
         instance.visible,
         instance.active,
     };
   }
-  static TestInstance Create(const BrowserAppInstance* instance) {
+  static TestInstance Create(const apps::BrowserAppInstance* instance) {
     if (instance) {
       return Create("snapshot", *instance);
     }
@@ -94,24 +93,25 @@
   return os << ")";
 }
 
-class Recorder : public BrowserAppStatusObserver {
+class Recorder : public apps::BrowserAppInstanceObserver {
  public:
-  explicit Recorder(BrowserAppsTracker* tracker) : tracker_(tracker) {
+  explicit Recorder(apps::BrowserAppInstanceTracker* tracker)
+      : tracker_(tracker) {
     DCHECK(tracker);
     tracker_->AddObserver(this);
   }
 
   ~Recorder() override { tracker_->RemoveObserver(this); }
 
-  void OnBrowserAppAdded(const BrowserAppInstance& instance) override {
+  void OnBrowserAppAdded(const apps::BrowserAppInstance& instance) override {
     calls_.push_back(TestInstance::Create("added", instance));
   }
 
-  void OnBrowserAppUpdated(const BrowserAppInstance& instance) override {
+  void OnBrowserAppUpdated(const apps::BrowserAppInstance& instance) override {
     calls_.push_back(TestInstance::Create("updated", instance));
   }
 
-  void OnBrowserAppRemoved(const BrowserAppInstance& instance) override {
+  void OnBrowserAppRemoved(const apps::BrowserAppInstance& instance) override {
     calls_.push_back(TestInstance::Create("removed", instance));
   }
 
@@ -130,13 +130,13 @@
     return {};
   }
 
-  BrowserAppsTracker* tracker_;
+  apps::BrowserAppInstanceTracker* tracker_;
   std::vector<TestInstance> calls_;
 };
 
 }  // namespace
 
-class BrowserAppsTrackerTest : public InProcessBrowserTest {
+class BrowserAppInstanceTrackerTest : public InProcessBrowserTest {
  protected:
   Browser* CreateBrowser() {
     Profile* profile = ProfileManager::GetPrimaryUserProfile();
@@ -215,7 +215,8 @@
     Profile* profile = ProfileManager::GetPrimaryUserProfile();
     apps::AppServiceProxyChromeOs* proxy =
         apps::AppServiceProxyFactory::GetForProfile(profile);
-    tracker_ = std::make_unique<BrowserAppsTracker>(proxy->AppRegistryCache());
+    tracker_ = std::make_unique<apps::BrowserAppInstanceTracker>(
+        proxy->AppRegistryCache());
     tracker_->Initialize();
 
     ASSERT_EQ(kAppAId, InstallWebApp("https://a.example.org"));
@@ -233,10 +234,10 @@
   }
 
  protected:
-  std::unique_ptr<BrowserAppsTracker> tracker_;
+  std::unique_ptr<apps::BrowserAppInstanceTracker> tracker_;
 };
 
-IN_PROC_BROWSER_TEST_F(BrowserAppsTrackerTest, InsertAndCloseTabs) {
+IN_PROC_BROWSER_TEST_F(BrowserAppInstanceTrackerTest, InsertAndCloseTabs) {
   Browser* browser = nullptr;
   content::WebContents* tab_app1 = nullptr;
   content::WebContents* tab_app2 = nullptr;
@@ -320,7 +321,7 @@
   }
 }
 
-IN_PROC_BROWSER_TEST_F(BrowserAppsTrackerTest, ForegroundTabNavigate) {
+IN_PROC_BROWSER_TEST_F(BrowserAppInstanceTrackerTest, ForegroundTabNavigate) {
   // Setup: one foreground tab with no app.
   auto* browser = CreateBrowser();
   auto* tab = InsertForegroundTab(browser, "https://c.example.org");
@@ -393,7 +394,7 @@
   }
 }
 
-IN_PROC_BROWSER_TEST_F(BrowserAppsTrackerTest, WindowedWebApp) {
+IN_PROC_BROWSER_TEST_F(BrowserAppInstanceTrackerTest, WindowedWebApp) {
   Browser* browser = nullptr;
   content::WebContents* tab = nullptr;
 
@@ -421,7 +422,7 @@
   }
 }
 
-IN_PROC_BROWSER_TEST_F(BrowserAppsTrackerTest, SwitchTabs) {
+IN_PROC_BROWSER_TEST_F(BrowserAppInstanceTrackerTest, SwitchTabs) {
   // Setup: one foreground tab and one background tab.
   auto* browser = CreateBrowser();
   auto* tab0 = InsertForegroundTab(browser, "https://a.example.org");
@@ -463,7 +464,7 @@
   }
 }
 
-IN_PROC_BROWSER_TEST_F(BrowserAppsTrackerTest, WindowVisibility) {
+IN_PROC_BROWSER_TEST_F(BrowserAppInstanceTrackerTest, WindowVisibility) {
   // Setup: one foreground tab and one background tab.
   auto* browser = CreateBrowser();
   auto* bg_tab = InsertForegroundTab(browser, "https://a.example.org");
@@ -499,7 +500,7 @@
   }
 }
 
-IN_PROC_BROWSER_TEST_F(BrowserAppsTrackerTest, WindowActivation) {
+IN_PROC_BROWSER_TEST_F(BrowserAppInstanceTrackerTest, WindowActivation) {
   // Setup: two browsers with two tabs each.
   auto* browser1 = CreateBrowser();
   InsertForegroundTab(browser1, "https://a.example.org");
@@ -547,7 +548,7 @@
   }
 }
 
-IN_PROC_BROWSER_TEST_F(BrowserAppsTrackerTest, TabDrag) {
+IN_PROC_BROWSER_TEST_F(BrowserAppInstanceTrackerTest, TabDrag) {
   // Setup: two browsers: one with two, another with three tabs.
   auto* browser1 = CreateBrowser();
   InsertForegroundTab(browser1, "https://a.example.org");
@@ -599,7 +600,7 @@
   });
 }
 
-IN_PROC_BROWSER_TEST_F(BrowserAppsTrackerTest, Accessors) {
+IN_PROC_BROWSER_TEST_F(BrowserAppInstanceTrackerTest, Accessors) {
   // Setup: two regular browsers, and one app window browser.
   auto* browser1 = CreateBrowser();
   auto* b1_tab1 = InsertForegroundTab(browser1, "https://a.example.org");
@@ -654,22 +655,24 @@
                           kActive}));
 
   EXPECT_EQ(tracker_->GetAppInstancesByAppId(kAppAId),
-            std::set<const BrowserAppInstance*>{b1_tab1_app});
+            std::set<const apps::BrowserAppInstance*>{b1_tab1_app});
   EXPECT_EQ(tracker_->GetAppInstancesByAppId(kAppBId),
-            (std::set<const BrowserAppInstance*>{b1_tab3_app, b2_tab2_app,
-                                                 b3_tab1_app}));
+            (std::set<const apps::BrowserAppInstance*>{b1_tab3_app, b2_tab2_app,
+                                                       b3_tab1_app}));
   EXPECT_EQ(tracker_->GetAppInstancesByAppId(kChromeAppId),
-            (std::set<const BrowserAppInstance*>{b1_app, b2_app}));
+            (std::set<const apps::BrowserAppInstance*>{b1_app, b2_app}));
 
   EXPECT_TRUE(tracker_->IsAppRunning(kAppAId));
   EXPECT_TRUE(tracker_->IsAppRunning(kAppBId));
   EXPECT_TRUE(tracker_->IsAppRunning(kChromeAppId));
   EXPECT_FALSE(tracker_->IsAppRunning("non-existent-app"));
 
-  EXPECT_EQ(TestInstance::Create(tracker_->GetAppInstanceByWebContentsId(1)),
+  EXPECT_EQ(TestInstance::Create(tracker_->GetAppInstanceByWebContentsId(
+                apps::WebContentsId(1))),
             (TestInstance{"snapshot", kAppAId, browser1, b1_tab1, 1, kVisible,
                           kInactive}));
-  EXPECT_EQ(TestInstance::Create(tracker_->GetAppInstanceByWebContentsId(10)),
+  EXPECT_EQ(TestInstance::Create(tracker_->GetAppInstanceByWebContentsId(
+                apps::WebContentsId(10))),
             TestInstance{});
 
   // App A is closed, B and Chrome are still running.
@@ -694,7 +697,7 @@
   EXPECT_FALSE(tracker_->IsAppRunning(kChromeAppId));
 }
 
-IN_PROC_BROWSER_TEST_F(BrowserAppsTrackerTest, AppInstall) {
+IN_PROC_BROWSER_TEST_F(BrowserAppInstanceTrackerTest, AppInstall) {
   auto* browser1 = CreateBrowser();
   auto* tab1 = InsertForegroundTab(browser1, "https://c.example.org");
   InsertForegroundTab(browser1, "https://d.example.org");
diff --git a/chrome/browser/apps/app_service/webapk/webapk_policy_browsertest.cc b/chrome/browser/apps/app_service/webapk/webapk_policy_browsertest.cc
index a2926b7..d9a8cbb 100644
--- a/chrome/browser/apps/app_service/webapk/webapk_policy_browsertest.cc
+++ b/chrome/browser/apps/app_service/webapk/webapk_policy_browsertest.cc
@@ -6,6 +6,7 @@
 
 #include "ash/constants/ash_features.h"
 #include "base/bind.h"
+#include "base/test/bind.h"
 #include "base/test/scoped_feature_list.h"
 #include "chrome/browser/apps/app_service/webapk/webapk_prefs.h"
 #include "chrome/browser/apps/app_service/webapk/webapk_test_server.h"
@@ -21,6 +22,7 @@
 #include "components/arc/test/arc_util_test_support.h"
 #include "components/arc/test/fake_webapk_instance.h"
 #include "components/policy/policy_constants.h"
+#include "components/prefs/pref_change_registrar.h"
 #include "content/public/test/browser_test.h"
 #include "testing/gmock/include/gmock/gmock-matchers.h"
 #include "third_party/abseil-cpp/absl/types/optional.h"
@@ -85,18 +87,22 @@
 // When there's no policy set, installing a Web App should install a WebAPK.
 // This test also acts as an integration test for the WebAPK installation
 // process.
-// This test is flaky on ChromeOS. https://crbug.com/1237976
-#if defined(OS_CHROMEOS)
-#define MAYBE_DefaultInstallWebApk DISABLED_DefaultInstallWebApk
-#else
-#define MAYBE_DefaultInstallWebApk DefaultInstallWebApk
-#endif
-IN_PROC_BROWSER_TEST_F(WebApkPolicyBrowserTest, MAYBE_DefaultInstallWebApk) {
+IN_PROC_BROWSER_TEST_F(WebApkPolicyBrowserTest, DefaultInstallWebApk) {
   const GURL app_url =
       embedded_test_server()->GetURL("/web_share_target/charts.html");
+
+  PrefChangeRegistrar pref_registrar;
+  pref_registrar.Init(browser()->profile()->GetPrefs());
+
+  // Wait for the pref to be set, which is the last stage of WebAPK
+  // installation.
+  base::RunLoop run_loop;
+  pref_registrar.Add(apps::webapk_prefs::kGeneratedWebApksPref,
+                     base::BindLambdaForTesting([&]() { run_loop.Quit(); }));
+
   const web_app::AppId app_id =
       web_app::InstallWebAppFromManifest(browser(), app_url);
-  base::RunLoop().RunUntilIdle();
+  run_loop.Run();
 
   ASSERT_TRUE(received_webapk_request());
   ASSERT_THAT(apps::webapk_prefs::GetWebApkAppIds(browser()->profile()),
@@ -116,6 +122,10 @@
       embedded_test_server()->GetURL("/web_share_target/charts.html");
   const web_app::AppId app_id =
       web_app::InstallWebAppFromManifest(browser(), app_url);
+
+  // Given that we are testing the absence of any WebAPK, we can't wait for
+  // anything to show up in Prefs. Instead, run until idle and assume this is
+  // enough time for installation to (not) trigger.
   base::RunLoop().RunUntilIdle();
 
   ASSERT_FALSE(received_webapk_request());
diff --git a/chrome/browser/apps/app_service/webapk/webapk_prefs.cc b/chrome/browser/apps/app_service/webapk/webapk_prefs.cc
index 2ca86f9..fd76fe87 100644
--- a/chrome/browser/apps/app_service/webapk/webapk_prefs.cc
+++ b/chrome/browser/apps/app_service/webapk/webapk_prefs.cc
@@ -26,7 +26,7 @@
 //  },
 //  ...
 // }
-constexpr char kGeneratedWebApksPref[] = "generated_webapks";
+
 constexpr char kPackageNameKey[] = "package_name";
 constexpr char kUpdateNeededKey[] = "update_needed";
 
@@ -35,6 +35,7 @@
 namespace apps {
 namespace webapk_prefs {
 
+const char kGeneratedWebApksPref[] = "generated_webapks";
 const char kGeneratedWebApksEnabled[] = "generated_webapks_enabled";
 
 void RegisterProfilePrefs(PrefRegistrySimple* registry) {
diff --git a/chrome/browser/apps/app_service/webapk/webapk_prefs.h b/chrome/browser/apps/app_service/webapk/webapk_prefs.h
index 059b362..01fb4af 100644
--- a/chrome/browser/apps/app_service/webapk/webapk_prefs.h
+++ b/chrome/browser/apps/app_service/webapk/webapk_prefs.h
@@ -16,6 +16,7 @@
 namespace apps {
 namespace webapk_prefs {
 
+extern const char kGeneratedWebApksPref[];
 // Name of the pref for whether the Generated WebAPKs feature is enabled,
 // controlled by the "ArcAppToWebAppSharingEnabled" policy.
 extern const char kGeneratedWebApksEnabled[];
diff --git a/chrome/browser/ash/borealis/borealis_context.cc b/chrome/browser/ash/borealis/borealis_context.cc
index 5b6a610..09478e0 100644
--- a/chrome/browser/ash/borealis/borealis_context.cc
+++ b/chrome/browser/ash/borealis/borealis_context.cc
@@ -57,7 +57,7 @@
     : public BorealisWindowManager::AppWindowLifetimeObserver {
  public:
   explicit BorealisLifetimeObserver(Profile* profile)
-      : profile_(profile), observation_{this} {
+      : profile_(profile), observation_(this), weak_factory_(this) {
     observation_.Observe(
         &BorealisService::GetForProfile(profile_)->WindowManager());
   }
@@ -82,19 +82,11 @@
                      aura::Window* last_window) override {
     // Launch post-game survey.
     // TODO(b/188745351): Remove this once it's no longer wanted.
-    GURL url = FeedbackFormUrl(
+    FeedbackFormUrl(
         guest_os::GuestOsRegistryServiceFactory::GetForProfile(profile_),
-        app_id, base::UTF16ToUTF8(last_window->GetTitle()));
-    if (url.is_valid()) {
-      // Unretained is safe here since we transitively own the
-      // ScopedDelayedCallback's weak factory.
-      app_delayers_.emplace(
-          app_id,
-          std::make_unique<ScopedDelayedCallback>(
-              base::BindOnce(&BorealisLifetimeObserver::OnDelayComplete,
-                             base::Unretained(this), std::move(url), app_id),
-              base::TimeDelta::FromSeconds(5)));
-    }
+        app_id, base::UTF16ToUTF8(last_window->GetTitle()),
+        base::BindOnce(&BorealisLifetimeObserver::OnFeedbackUrlGenerated,
+                       weak_factory_.GetWeakPtr(), app_id));
   }
 
   void OnWindowManagerDeleted(BorealisWindowManager* window_manager) override {
@@ -103,6 +95,17 @@
   }
 
  private:
+  void OnFeedbackUrlGenerated(std::string app_id, GURL url) {
+    if (url.is_valid()) {
+      app_delayers_.emplace(
+          app_id, std::make_unique<ScopedDelayedCallback>(
+                      base::BindOnce(&BorealisLifetimeObserver::OnDelayComplete,
+                                     weak_factory_.GetWeakPtr(), std::move(url),
+                                     app_id),
+                      base::TimeDelta::FromSeconds(5)));
+    }
+  }
+
   void OnDelayComplete(GURL gurl, std::string app_id) {
     app_delayers_.erase(app_id);
     ash::NewWindowDelegate::GetInstance()->NewTabWithUrl(
@@ -115,6 +118,8 @@
       observation_;
   base::flat_map<std::string, std::unique_ptr<ScopedDelayedCallback>>
       app_delayers_;
+
+  base::WeakPtrFactory<BorealisLifetimeObserver> weak_factory_;
 };
 
 // Borealis' main app extensively relies on self-activation, and it does not
diff --git a/chrome/browser/ash/borealis/borealis_util.cc b/chrome/browser/ash/borealis/borealis_util.cc
index 2681ef6..e5257f9 100644
--- a/chrome/browser/ash/borealis/borealis_util.cc
+++ b/chrome/browser/ash/borealis/borealis_util.cc
@@ -6,6 +6,8 @@
 
 #include "base/strings/stringprintf.h"
 #include "base/system/sys_info.h"
+#include "base/task/task_traits.h"
+#include "base/task/thread_pool.h"
 #include "chrome/browser/ash/guest_os/guest_os_registry_service.h"
 #include "components/crx_file/id_util.h"
 #include "net/base/url_util.h"
@@ -52,23 +54,8 @@
   }
 }
 
-GURL FeedbackFormUrl(const guest_os::GuestOsRegistryService* registry_service,
-                     const std::string& app_id,
-                     const std::string& window_title) {
-  // Exclude windows that aren't games.
-  if (app_id.find(kNonGameWindowPrefix) != std::string::npos ||
-      app_id == kBorealisMainAppId) {
-    return GURL();
-  }
-
-  std::string hash = crx_file::id_util::GenerateId(app_id);
-  if (hash == kNonGameIdHash1 || hash == kNonGameIdHash2 ||
-      hash == kNonGameIdHash3) {
-    return GURL();
-  }
-
-  GURL url(kFeedbackUrl);
-  url = net::AppendQueryParameter(url, kAppNameKey, window_title);
+namespace {
+GURL GetSysInfoForUrlAsync(GURL url) {
   url = net::AppendQueryParameter(url, kBoardKey,
                                   base::SysInfo::HardwareModelName());
   url = net::AppendQueryParameter(
@@ -80,6 +67,31 @@
   url = net::AppendQueryParameter(url, kPlatformVersionKey,
                                   base::SysInfo::OperatingSystemVersion());
 
+  return url;
+}
+}  // namespace
+
+void FeedbackFormUrl(const guest_os::GuestOsRegistryService* registry_service,
+                     const std::string& app_id,
+                     const std::string& window_title,
+                     base::OnceCallback<void(GURL)> url_callback) {
+  // Exclude windows that aren't games.
+  if (app_id.find(kNonGameWindowPrefix) != std::string::npos ||
+      app_id == kBorealisMainAppId) {
+    std::move(url_callback).Run(GURL());
+    return;
+  }
+
+  std::string hash = crx_file::id_util::GenerateId(app_id);
+  if (hash == kNonGameIdHash1 || hash == kNonGameIdHash2 ||
+      hash == kNonGameIdHash3) {
+    std::move(url_callback).Run(GURL());
+    return;
+  }
+
+  GURL url(kFeedbackUrl);
+  url = net::AppendQueryParameter(url, kAppNameKey, window_title);
+
   // Attempt to get the Borealis app ID.
   // TODO(b/173977876): Implement this in a more reliable way.
   absl::optional<guest_os::GuestOsRegistryService::Registration> registration =
@@ -92,7 +104,9 @@
     }
   }
 
-  return url;
+  base::ThreadPool::PostTaskAndReplyWithResult(
+      FROM_HERE, base::MayBlock(), base::BindOnce(&GetSysInfoForUrlAsync, url),
+      std::move(url_callback));
 }
 
 }  // namespace borealis
diff --git a/chrome/browser/ash/borealis/borealis_util.h b/chrome/browser/ash/borealis/borealis_util.h
index 282f6fc..16a77a4 100644
--- a/chrome/browser/ash/borealis/borealis_util.h
+++ b/chrome/browser/ash/borealis/borealis_util.h
@@ -7,6 +7,7 @@
 
 #include <string>
 
+#include "base/callback_forward.h"
 #include "third_party/abseil-cpp/absl/types/optional.h"
 #include "ui/views/widget/widget.h"
 
@@ -42,11 +43,13 @@
 // Closes the splash screen (borealis_splash_screen_view).
 void CloseBorealisSplashScreenView();
 
-// Returns a URL for a feedback form with prefilled app/device info, or an
-// invalid URL if we don't want to collect feedback for the given |app_id|.
-GURL FeedbackFormUrl(const guest_os::GuestOsRegistryService* registry_service,
+// Creates a URL for a feedback form with prefilled app/device info, or an
+// invalid URL if we don't want to collect feedback for the given |app_id|. Will
+// invoke |url_callback| when the url is ready.
+void FeedbackFormUrl(const guest_os::GuestOsRegistryService* registry_service,
                      const std::string& app_id,
-                     const std::string& window_title);
+                     const std::string& window_title,
+                     base::OnceCallback<void(GURL)> url_callback);
 
 }  // namespace borealis
 
diff --git a/chrome/browser/ash/borealis/borealis_util_unittest.cc b/chrome/browser/ash/borealis/borealis_util_unittest.cc
index 4750b35..076e2b0 100644
--- a/chrome/browser/ash/borealis/borealis_util_unittest.cc
+++ b/chrome/browser/ash/borealis/borealis_util_unittest.cc
@@ -4,7 +4,9 @@
 
 #include "chrome/browser/ash/borealis/borealis_util.h"
 
+#include "base/run_loop.h"
 #include "base/strings/utf_string_conversions.h"
+#include "base/test/bind.h"
 #include "chrome/browser/ash/guest_os/guest_os_registry_service.h"
 #include "chrome/test/base/testing_profile.h"
 #include "content/public/test/browser_task_environment.h"
@@ -17,6 +19,21 @@
 
 class BorealisUtilTest : public testing::Test {
  protected:
+  GURL GetFeedbackFormUrl(
+      const guest_os::GuestOsRegistryService* registry_service,
+      const std::string& app_id,
+      const std::string& window_title) {
+    base::RunLoop run_loop;
+    GURL returned_url;
+    FeedbackFormUrl(registry_service, app_id, window_title,
+                    base::BindLambdaForTesting([&](GURL url) {
+                      returned_url = url;
+                      run_loop.Quit();
+                    }));
+    run_loop.Run();
+    return returned_url;
+  }
+
   content::BrowserTaskEnvironment task_environment_;
 };
 
@@ -32,9 +49,9 @@
   TestingProfile profile;
   guest_os::GuestOsRegistryService registry(&profile);
 
-  EXPECT_FALSE(FeedbackFormUrl(&registry,
-                               "borealisanon:org.chromium.borealis.xid.100",
-                               "CoolApp")
+  EXPECT_FALSE(GetFeedbackFormUrl(&registry,
+                                  "borealisanon:org.chromium.borealis.xid.100",
+                                  "CoolApp")
                    .is_valid());
 }
 
@@ -43,8 +60,8 @@
   guest_os::GuestOsRegistryService registry(&profile);
 
   EXPECT_THAT(
-      FeedbackFormUrl(&registry, "borealisanon:org.chromium.borealis.app",
-                      "CoolApp")
+      GetFeedbackFormUrl(&registry, "borealisanon:org.chromium.borealis.app",
+                         "CoolApp")
           .spec(),
       testing::HasSubstr("=CoolApp"));
 }
@@ -53,7 +70,7 @@
   TestingProfile profile;
   guest_os::GuestOsRegistryService registry(&profile);
 
-  GURL url = FeedbackFormUrl(
+  GURL url = GetFeedbackFormUrl(
       &registry, "borealisanon:org.chromium.borealis.app", "CoolApp");
 
   // Count the number of query parameters beginning with "entry"; these are
diff --git a/chrome/browser/ash/file_manager/file_manager_browsertest_base.cc b/chrome/browser/ash/file_manager/file_manager_browsertest_base.cc
index c9d5bac..7eb2001 100644
--- a/chrome/browser/ash/file_manager/file_manager_browsertest_base.cc
+++ b/chrome/browser/ash/file_manager/file_manager_browsertest_base.cc
@@ -166,10 +166,9 @@
 
   content::WebContents* web_contents() { return web_contents_; }
 
-  void OnDidFinishNavigation(
+  void NavigationOfInterestDidFinish(
       content::NavigationHandle* navigation_handle) override {
     web_contents_ = navigation_handle->GetWebContents();
-    content::TestNavigationObserver::OnDidFinishNavigation(navigation_handle);
   }
 
  private:
diff --git a/chrome/browser/ash/full_restore/full_restore_app_launch_handler.cc b/chrome/browser/ash/full_restore/full_restore_app_launch_handler.cc
index 31227af..bbb3ce5 100644
--- a/chrome/browser/ash/full_restore/full_restore_app_launch_handler.cc
+++ b/chrome/browser/ash/full_restore/full_restore_app_launch_handler.cc
@@ -23,6 +23,7 @@
 #include "chrome/browser/prefs/session_startup_pref.h"
 #include "chrome/browser/profiles/profile.h"
 #include "chrome/browser/sessions/session_restore.h"
+#include "chrome/browser/sessions/session_service_log.h"
 #include "chrome/common/chrome_switches.h"
 #include "components/full_restore/full_restore_read_handler.h"
 #include "components/full_restore/full_restore_save_handler.h"
@@ -36,6 +37,8 @@
 bool g_launch_browser_for_testing = false;
 
 constexpr char kRestoredAppLaunchHistogramPrefix[] = "Apps.RestoredAppLaunch";
+constexpr char kRestoreBrowserResultHistogramPrefix[] =
+    "Apps.RestoreBrowserResult";
 
 }  // namespace
 
@@ -230,6 +233,7 @@
       ::switches::kRestoreLastSession);
 
   UserSessionManager::GetInstance()->LaunchBrowser(profile_);
+  RecordLaunchBrowserResult();
 }
 
 void FullRestoreAppLaunchHandler::LaunchBrowserForFirstRunFullRestore() {
@@ -272,6 +276,31 @@
                                 app_type_name);
 }
 
+void FullRestoreAppLaunchHandler::RecordLaunchBrowserResult() {
+  RestoreTabResult result = RestoreTabResult::kNoTabs;
+
+  int window_count = 0;
+  int tab_count = 0;
+  std::list<SessionServiceEvent> events = GetSessionServiceEvents(profile_);
+  if (!events.empty()) {
+    auto it = events.back();
+    if (it.type == SessionServiceEventLogType::kRestore) {
+      window_count = it.data.restore.window_count;
+      tab_count = it.data.exit.tab_count;
+      if (tab_count > 0)
+        result = RestoreTabResult::kHasTabs;
+    } else {
+      result = RestoreTabResult::kError;
+      window_count = -1;
+      tab_count = -1;
+    }
+  }
+
+  VLOG(1) << "Browser is restored (windows=" << window_count
+          << " tabs=" << tab_count << ").";
+  base::UmaHistogramEnumeration(kRestoreBrowserResultHistogramPrefix, result);
+}
+
 void FullRestoreAppLaunchHandler::LogRestoreData() {
   if (!restore_data_ || restore_data_->app_id_to_launch_list().empty()) {
     VLOG(1) << "There is no restore data from " << profile_->GetPath();
diff --git a/chrome/browser/ash/full_restore/full_restore_app_launch_handler.h b/chrome/browser/ash/full_restore/full_restore_app_launch_handler.h
index c4965ef..f8f3c5f 100644
--- a/chrome/browser/ash/full_restore/full_restore_app_launch_handler.h
+++ b/chrome/browser/ash/full_restore/full_restore_app_launch_handler.h
@@ -22,6 +22,17 @@
 namespace ash {
 namespace full_restore {
 
+// This is used for logging, so do not remove or reorder existing entries.
+enum class RestoreTabResult {
+  kHasTabs = 0,
+  kNoTabs = 1,
+  kError = 2,
+
+  // Add any new values above this one, and update kMaxValue to the highest
+  // enumerator value.
+  kMaxValue = kError,
+};
+
 // The FullRestoreAppLaunchHandler class calls FullRestoreReadHandler to read
 // the full restore data from the full restore data file on a background task
 // runner, and restore apps and web pages based on the user preference or the
@@ -91,11 +102,13 @@
   // AppLaunchHandler:
   void RecordRestoredAppLaunch(apps::AppTypeName app_type_name) override;
 
-  // If the restore process finish, start the save timer.
-  void MaybeStartSaveTimer();
+  void RecordLaunchBrowserResult();
 
   void LogRestoreData();
 
+  // If the restore process finish, start the save timer.
+  void MaybeStartSaveTimer();
+
   bool should_restore_ = false;
 
   // Specifies whether it is the first time to run the full restore feature.
diff --git a/chrome/browser/ash/full_restore/full_restore_service.cc b/chrome/browser/ash/full_restore/full_restore_service.cc
index 502c9f8..d5b1787 100644
--- a/chrome/browser/ash/full_restore/full_restore_service.cc
+++ b/chrome/browser/ash/full_restore/full_restore_service.cc
@@ -183,7 +183,7 @@
 }
 
 void FullRestoreService::LaunchBrowserWhenReady() {
-  if (!g_restore_for_testing)
+  if (!g_restore_for_testing || !app_launch_handler_)
     return;
 
   app_launch_handler_->LaunchBrowserWhenReady(first_run_full_restore_);
@@ -268,6 +268,7 @@
                                  const content::NotificationSource& source,
                                  const content::NotificationDetails& details) {
   DCHECK_EQ(chrome::NOTIFICATION_APP_TERMINATING, type);
+  app_launch_handler_.reset();
   ::full_restore::FullRestoreSaveHandler::GetInstance()->SetShutDown();
 }
 
@@ -347,7 +348,8 @@
         user->GetAccountId(), true);
   }
 
-  app_launch_handler_->SetShouldRestore();
+  if (app_launch_handler_)
+    app_launch_handler_->SetShouldRestore();
 }
 
 void FullRestoreService::RecordRestoreAction(const std::string& notification_id,
@@ -374,7 +376,7 @@
 }
 
 bool FullRestoreService::ShouldShowNotification() {
-  return app_launch_handler_->HasRestoreData() &&
+  return app_launch_handler_ && app_launch_handler_->HasRestoreData() &&
          !::first_run::IsChromeFirstRun() && !close_notification_;
 }
 
diff --git a/chrome/browser/ash/input_method/native_input_method_engine.cc b/chrome/browser/ash/input_method/native_input_method_engine.cc
index e418d79..0ecd73dc 100644
--- a/chrome/browser/ash/input_method/native_input_method_engine.cc
+++ b/chrome/browser/ash/input_method/native_input_method_engine.cc
@@ -47,14 +47,27 @@
   return base::StartsWith(engine_id, "vkd_", base::CompareCase::SENSITIVE);
 }
 
-bool ShouldRouteToFstMojoEngine(const std::string& engine_id) {
+bool IsFstEngine(const std::string& engine_id) {
+  return base::StartsWith(engine_id, "xkb:", base::CompareCase::SENSITIVE);
+}
+
+bool IsKoreanEngine(const std::string& engine_id) {
+  return base::StartsWith(engine_id, "ko-", base::CompareCase::SENSITIVE);
+}
+
+bool ShouldRouteToNativeMojoEngine(const std::string& engine_id) {
   // To avoid handling tricky cases where the user types with both the virtual
   // and the physical keyboard, only run the native code path if the virtual
   // keyboard is disabled. Otherwise, just let the extension handle any physical
   // key events.
-  return features::IsSystemLatinPhysicalTypingEnabled() &&
-         base::StartsWith(engine_id, "xkb:", base::CompareCase::SENSITIVE) &&
-         !ChromeKeyboardControllerClient::Get()->GetKeyboardEnabled();
+  if (ChromeKeyboardControllerClient::Get()->GetKeyboardEnabled()) {
+    return false;
+  }
+
+  return (features::IsSystemKoreanPhysicalTypingEnabled() &&
+          IsKoreanEngine(engine_id)) ||
+         (features::IsSystemLatinPhysicalTypingEnabled() &&
+          IsFstEngine(engine_id));
 }
 
 bool IsPhysicalKeyboardAutocorrectEnabled(PrefService* prefs,
@@ -478,7 +491,7 @@
     const std::string& engine_id) {
   // TODO(b/181077907): Always launch the IME service and let IME service decide
   // whether it should shutdown or not.
-  if (ShouldRouteToFstMojoEngine(engine_id) &&
+  if (IsFstEngine(engine_id) && ShouldRouteToNativeMojoEngine(engine_id) &&
       !IsPhysicalKeyboardAutocorrectEnabled(prefs_, engine_id)) {
     remote_manager_.reset();
     input_method_.reset();
@@ -509,7 +522,7 @@
 
     // Notify the virtual keyboard extension that the IME has changed.
     ime_base_observer_->OnActivate(engine_id);
-  } else if (ShouldRouteToFstMojoEngine(engine_id)) {
+  } else if (ShouldRouteToNativeMojoEngine(engine_id)) {
     if (!remote_manager_.is_bound()) {
       auto* ime_manager = InputMethodManager::Get();
       ime_manager->ConnectInputEngineManager(
@@ -549,7 +562,7 @@
   if (grammar_manager_->IsOnDeviceGrammarEnabled()) {
     grammar_manager_->OnFocus(context_id, context.flags);
   }
-  if (ShouldRouteToFstMojoEngine(engine_id)) {
+  if (ShouldRouteToNativeMojoEngine(engine_id)) {
     if (input_method_.is_bound()) {
       input_method_->OnFocus(mojom::InputFieldInfo::New(
           TextInputTypeToMojoType(context.type),
@@ -567,7 +580,7 @@
   if (assistive_suggester_->IsAssistiveFeatureEnabled())
     assistive_suggester_->OnBlur();
 
-  if (ShouldRouteToFstMojoEngine(engine_id)) {
+  if (ShouldRouteToNativeMojoEngine(engine_id)) {
     if (input_method_.is_bound()) {
       input_method_->OnBlur();
     }
@@ -597,7 +610,7 @@
   }
 
   if (ShouldRouteToRuleBasedEngine(engine_id) ||
-      ShouldRouteToFstMojoEngine(engine_id)) {
+      ShouldRouteToNativeMojoEngine(engine_id)) {
     if (input_method_.is_bound()) {
       // CharacterComposer only takes KEY_PRESSED events.
       const bool filtered = event.type() == ui::ET_KEY_PRESSED &&
@@ -643,7 +656,7 @@
 
 void NativeInputMethodEngine::ImeObserver::OnReset(
     const std::string& engine_id) {
-  if (ShouldRouteToFstMojoEngine(engine_id) ||
+  if (ShouldRouteToNativeMojoEngine(engine_id) ||
       ShouldRouteToRuleBasedEngine(engine_id)) {
     if (input_method_.is_bound()) {
       input_method_->OnCompositionCanceledBySystem();
@@ -684,7 +697,7 @@
   if (grammar_manager_->IsOnDeviceGrammarEnabled()) {
     grammar_manager_->OnSurroundingTextChanged(text, cursor_pos, anchor_pos);
   }
-  if (ShouldRouteToFstMojoEngine(engine_id)) {
+  if (ShouldRouteToNativeMojoEngine(engine_id)) {
     if (input_method_.is_bound()) {
       std::vector<size_t> selection_indices = {static_cast<size_t>(anchor_pos),
                                                static_cast<size_t>(cursor_pos)};
@@ -881,7 +894,7 @@
 }
 
 void NativeInputMethodEngine::OnInputMethodOptionsChanged() {
-  if (ShouldRouteToFstMojoEngine(GetActiveComponentId())) {
+  if (ShouldRouteToNativeMojoEngine(GetActiveComponentId())) {
     Enable(GetActiveComponentId());
   } else {
     InputMethodEngine::OnInputMethodOptionsChanged();
diff --git a/chrome/browser/ash/system_extensions/BUILD.gn b/chrome/browser/ash/system_extensions/BUILD.gn
index 2151d0f..fc958a2 100644
--- a/chrome/browser/ash/system_extensions/BUILD.gn
+++ b/chrome/browser/ash/system_extensions/BUILD.gn
@@ -26,6 +26,7 @@
     "system_extensions_provider_factory.h",
     "system_extensions_sandboxed_unpacker.cc",
     "system_extensions_sandboxed_unpacker.h",
+    "system_extensions_status_or.h",
     "system_extensions_ui.cc",
     "system_extensions_ui.h",
     "system_extensions_web_ui_config_map.cc",
diff --git a/chrome/browser/ash/system_extensions/system_extension.cc b/chrome/browser/ash/system_extensions/system_extension.cc
index 7c632fa..1577ce5 100644
--- a/chrome/browser/ash/system_extensions/system_extension.cc
+++ b/chrome/browser/ash/system_extensions/system_extension.cc
@@ -9,6 +9,8 @@
 
 SystemExtension::SystemExtension() = default;
 
+SystemExtension::SystemExtension(SystemExtension&&) = default;
+
 SystemExtension::~SystemExtension() = default;
 
 // static
diff --git a/chrome/browser/ash/system_extensions/system_extension.h b/chrome/browser/ash/system_extensions/system_extension.h
index 92c750a..cbaf50b 100644
--- a/chrome/browser/ash/system_extensions/system_extension.h
+++ b/chrome/browser/ash/system_extensions/system_extension.h
@@ -23,6 +23,7 @@
   SystemExtension();
   ~SystemExtension();
   SystemExtension(const SystemExtension&) = delete;
+  SystemExtension(SystemExtension&&);
   SystemExtension& operator=(const SystemExtension&) = delete;
   SystemExtension& operator=(SystemExtension&&) = default;
 
diff --git a/chrome/browser/ash/system_extensions/system_extensions_install_manager.cc b/chrome/browser/ash/system_extensions/system_extensions_install_manager.cc
index f8b2434..421f6f4 100644
--- a/chrome/browser/ash/system_extensions/system_extensions_install_manager.cc
+++ b/chrome/browser/ash/system_extensions/system_extensions_install_manager.cc
@@ -54,7 +54,7 @@
   const auto it = system_extensions_.find(id);
   if (it == system_extensions_.end())
     return nullptr;
-  return it->second.get();
+  return &it->second;
 }
 
 void SystemExtensionsInstallManager::InstallFromCommandLineIfNecessary() {
@@ -66,20 +66,18 @@
 }
 
 void SystemExtensionsInstallManager::OnGetSystemExtensionFromDir(
-    SystemExtensionsSandboxedUnpacker::Status status,
-    std::unique_ptr<SystemExtension> system_extension) {
-  if (status != SystemExtensionsSandboxedUnpacker::Status::kOk) {
+    StatusOrSystemExtension<SystemExtensionsSandboxedUnpacker::Status> result) {
+  if (!result.ok()) {
     LOG(ERROR) << "Failed to install extension from command line: "
-               << static_cast<int32_t>(status);
+               << static_cast<int32_t>(result.status());
     on_command_line_install_finished_.Signal();
     return;
   }
 
   // TODO(ortuno): Move resources from the specified directory into the user
   // profile.
-
   SystemExtensionsWebUIConfigMap::GetInstance().AddForSystemExtension(
-      *system_extension.get());
-  system_extensions_[{1, 2, 3, 4}] = std::move(system_extension);
+      result.system_extension());
+  system_extensions_[{1, 2, 3, 4}] = std::move(result).system_extension();
   on_command_line_install_finished_.Signal();
 }
diff --git a/chrome/browser/ash/system_extensions/system_extensions_install_manager.h b/chrome/browser/ash/system_extensions/system_extensions_install_manager.h
index ea7cdb1..00630507 100644
--- a/chrome/browser/ash/system_extensions/system_extensions_install_manager.h
+++ b/chrome/browser/ash/system_extensions/system_extensions_install_manager.h
@@ -32,16 +32,15 @@
  private:
   void InstallFromCommandLineIfNecessary();
   void OnGetSystemExtensionFromDir(
-      SystemExtensionsSandboxedUnpacker::Status status,
-      std::unique_ptr<SystemExtension> system_extension);
+      StatusOrSystemExtension<SystemExtensionsSandboxedUnpacker::Status>
+          result);
 
   base::OneShotEvent on_command_line_install_finished_;
 
   SystemExtensionsSandboxedUnpacker sandboxed_unpacker_;
 
   // TODO(ortuno): Move this to a Registrar or Database.
-  std::map<SystemExtensionId, std::unique_ptr<SystemExtension>>
-      system_extensions_;
+  std::map<SystemExtensionId, SystemExtension> system_extensions_;
 
   base::WeakPtrFactory<SystemExtensionsInstallManager> weak_ptr_factory_{this};
 };
diff --git a/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker.cc b/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker.cc
index 05cde52..b8790d8 100644
--- a/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker.cc
+++ b/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker.cc
@@ -64,88 +64,87 @@
     GetSystemExtensionFromStringCallback callback,
     data_decoder::DataDecoder::ValueOrError value_or_error) {
   if (value_or_error.error.has_value()) {
-    std::move(callback).Run(Status::kFailedJsonErrorParsingManifest, nullptr);
+    std::move(callback).Run(Status::kFailedJsonErrorParsingManifest);
     return;
   }
 
   base::Value& parsed_manifest = value_or_error.value.value();
 
-  auto system_extension = std::make_unique<SystemExtension>();
+  SystemExtension system_extension;
 
   // Parse mandatory fields.
 
   // Parse id.
   std::string* id_str = parsed_manifest.FindStringKey(kIdKey);
   if (!id_str) {
-    std::move(callback).Run(Status::kFailedIdMissing, nullptr);
+    std::move(callback).Run(Status::kFailedIdMissing);
     return;
   }
   absl::optional<SystemExtensionId> id = SystemExtension::StringToId(*id_str);
   if (!id.has_value()) {
-    std::move(callback).Run(Status::kFailedIdInvalid, nullptr);
+    std::move(callback).Run(Status::kFailedIdInvalid);
     return;
   }
-  system_extension->id = id.value();
+  system_extension.id = id.value();
 
   // Parse type.
   std::string* type_str = parsed_manifest.FindStringKey(kTypeKey);
   if (!type_str) {
-    std::move(callback).Run(Status::kFailedTypeMissing, nullptr);
+    std::move(callback).Run(Status::kFailedTypeMissing);
     return;
   }
   if (base::CompareCaseInsensitiveASCII("echo", *type_str) != 0) {
-    std::move(callback).Run(Status::kFailedTypeInvalid, nullptr);
+    std::move(callback).Run(Status::kFailedTypeInvalid);
     return;
   }
-  system_extension->type = SystemExtensionType::kEcho;
+  system_extension.type = SystemExtensionType::kEcho;
 
   // Parse base_url.
-  const GURL base_url = GetBaseURL(*id_str, system_extension->type);
+  const GURL base_url = GetBaseURL(*id_str, system_extension.type);
   // If both the type and id are valid, there is no possible way for the
   // base_url to be invalid.
   CHECK(base_url.is_valid());
-  system_extension->base_url = base_url;
+  system_extension.base_url = base_url;
 
   // Parse service_worker_url.
   std::string* service_worker_path =
       parsed_manifest.FindStringKey(kServiceWorkerUrlKey);
   if (!service_worker_path) {
-    std::move(callback).Run(Status::kFailedServiceWorkerUrlMissing, nullptr);
+    std::move(callback).Run(Status::kFailedServiceWorkerUrlMissing);
     return;
   }
   const GURL service_worker_url = base_url.Resolve(*service_worker_path);
   if (!service_worker_url.is_valid() || service_worker_url == base_url) {
-    std::move(callback).Run(Status::kFailedServiceWorkerUrlInvalid, nullptr);
+    std::move(callback).Run(Status::kFailedServiceWorkerUrlInvalid);
     return;
   }
   if (!url::IsSameOriginWith(base_url, service_worker_url)) {
-    std::move(callback).Run(Status::kFailedServiceWorkerUrlDifferentOrigin,
-                            nullptr);
+    std::move(callback).Run(Status::kFailedServiceWorkerUrlDifferentOrigin);
     return;
   }
-  system_extension->service_worker_url = service_worker_url;
+  system_extension.service_worker_url = service_worker_url;
 
   // Parse name.
   // TODO(ortuno): Decide a set of invalid characters and remove them/fail
   // installation.
   std::string* name = parsed_manifest.FindStringKey(kNameKey);
   if (!name) {
-    std::move(callback).Run(Status::kFailedNameMissing, nullptr);
+    std::move(callback).Run(Status::kFailedNameMissing);
     return;
   }
 
   if (name->empty()) {
-    std::move(callback).Run(Status::kFailedNameEmpty, nullptr);
+    std::move(callback).Run(Status::kFailedNameEmpty);
     return;
   }
-  system_extension->name = *name;
+  system_extension.name = *name;
 
   // Parse optional fields.
 
   // Parse short_name.
   std::string* short_name_str = parsed_manifest.FindStringKey(kShortNameKey);
   if (short_name_str && !short_name_str->empty()) {
-    system_extension->short_name = *short_name_str;
+    system_extension.short_name = *short_name_str;
   }
 
   // Parse companion_web_app_url.
@@ -154,12 +153,12 @@
     GURL companion_web_app_url(*companion_web_app_url_str);
     if (companion_web_app_url.is_valid() &&
         companion_web_app_url.SchemeIs(url::kHttpsScheme)) {
-      system_extension->companion_web_app_url = companion_web_app_url;
+      system_extension.companion_web_app_url = companion_web_app_url;
     } else {
       LOG(WARNING) << "Companion Web App URL is invalid: "
                    << companion_web_app_url;
     }
   }
 
-  std::move(callback).Run(Status::kOk, std::move(system_extension));
+  std::move(callback).Run(std::move(system_extension));
 }
diff --git a/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker.h b/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker.h
index 500d818..c216bed 100644
--- a/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker.h
+++ b/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker.h
@@ -7,9 +7,8 @@
 
 #include "base/callback_forward.h"
 #include "base/files/file_path.h"
-#include "chrome/browser/ash/system_extensions/system_extension.h"
+#include "chrome/browser/ash/system_extensions/system_extensions_status_or.h"
 #include "services/data_decoder/public/cpp/data_decoder.h"
-#include "third_party/abseil-cpp/absl/types/variant.h"
 
 class SystemExtensionsSandboxedUnpacker {
  public:
@@ -22,6 +21,8 @@
 
   enum class Status {
     kOk,
+    // This is used for the default constructor of `StatusOrSystemExtension`.
+    kUnknown,
     kFailedJsonErrorParsingManifest,
     kFailedIdMissing,
     kFailedIdInvalid,
@@ -36,7 +37,7 @@
 
   // Attempts to create a SystemExtension object from a manifest string.
   using GetSystemExtensionFromStringCallback =
-      base::OnceCallback<void(Status, std::unique_ptr<SystemExtension>)>;
+      base::OnceCallback<void(StatusOrSystemExtension<Status>)>;
   void GetSystemExtensionFromString(
       base::StringPiece system_extension_manifest_string,
       GetSystemExtensionFromStringCallback callback);
diff --git a/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker_unittest.cc b/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker_unittest.cc
index 1cc3e1c..f429269 100644
--- a/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker_unittest.cc
+++ b/chrome/browser/ash/system_extensions/system_extensions_sandboxed_unpacker_unittest.cc
@@ -9,6 +9,7 @@
 #include "base/files/scoped_temp_dir.h"
 #include "base/test/bind.h"
 #include "base/test/task_environment.h"
+#include "chrome/browser/ash/system_extensions/system_extensions_status_or.h"
 #include "services/data_decoder/public/cpp/test_support/in_process_data_decoder.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
@@ -18,25 +19,21 @@
 
 class SystemExtensionsSandboxedUnpackerTest : public testing::Test {
  public:
-  std::tuple<Status, std::unique_ptr<SystemExtension>>
-  GetSystemExtensionFromStringAndWait(base::StringPiece manifest) {
+  StatusOrSystemExtension<Status> GetSystemExtensionFromStringAndWait(
+      base::StringPiece manifest) {
     base::RunLoop run_loop;
-    Status status;
-    std::unique_ptr<SystemExtension> system_extension;
+    StatusOrSystemExtension<Status> status;
 
     // Create SystemExtension.
     SystemExtensionsSandboxedUnpacker unpacker;
     unpacker.GetSystemExtensionFromString(
-        manifest, base::BindLambdaForTesting(
-                      [&](Status returned_status,
-                          std::unique_ptr<SystemExtension> returned_extension) {
-                        status = returned_status;
-                        system_extension = std::move(returned_extension);
-                        run_loop.Quit();
-                      }));
+        manifest,
+        base::BindLambdaForTesting([&](StatusOrSystemExtension<Status> s) {
+          status = std::move(s);
+          run_loop.Quit();
+        }));
     run_loop.Run();
-
-    return {status, std::move(system_extension)};
+    return status;
   }
 
  private:
@@ -57,46 +54,35 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-  EXPECT_EQ(Status::kOk, status);
-  EXPECT_TRUE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_TRUE(result.ok());
+  auto system_extension = std::move(result).system_extension();
 
-  EXPECT_EQ(SystemExtensionId({1, 2, 3, 4}), system_extension->id);
-  EXPECT_EQ(SystemExtensionType::kEcho, system_extension->type);
+  EXPECT_EQ(SystemExtensionId({1, 2, 3, 4}), system_extension.id);
+  EXPECT_EQ(SystemExtensionType::kEcho, system_extension.type);
   EXPECT_EQ("chrome-untrusted://system-extension-echo-01020304/",
-            system_extension->base_url.spec());
+            system_extension.base_url.spec());
   EXPECT_EQ("chrome-untrusted://system-extension-echo-01020304/sw.js",
-            system_extension->service_worker_url.spec());
-  EXPECT_EQ("Long Test", system_extension->name);
-  ASSERT_TRUE(system_extension->short_name.has_value());
-  EXPECT_EQ("Test", system_extension->short_name);
-  ASSERT_TRUE(system_extension->companion_web_app_url.has_value());
+            system_extension.service_worker_url.spec());
+  EXPECT_EQ("Long Test", system_extension.name);
+  ASSERT_TRUE(system_extension.short_name.has_value());
+  EXPECT_EQ("Test", system_extension.short_name);
+  ASSERT_TRUE(system_extension.companion_web_app_url.has_value());
   EXPECT_EQ("https://test.example/",
-            system_extension->companion_web_app_url->spec());
+            system_extension.companion_web_app_url->spec());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_EmptyManifest) {
   static constexpr const char kSystemExtensionManifest[] = R"()";
   std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-  EXPECT_EQ(Status::kFailedJsonErrorParsingManifest, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedJsonErrorParsingManifest, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_EmptyManifest2) {
   static constexpr const char kSystemExtensionManifest[] = R"({})";
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedIdMissing, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedIdMissing, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_IdMissing) {
@@ -108,13 +94,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedIdMissing, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedIdMissing, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_IdInvalidTooShort) {
@@ -127,13 +108,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedIdInvalid, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedIdInvalid, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_IdInvalidTooLong) {
@@ -146,13 +122,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedIdInvalid, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedIdInvalid, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_IdInvalidCharacters) {
@@ -165,13 +136,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedIdInvalid, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedIdInvalid, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_TypeMissing) {
@@ -183,13 +149,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedTypeMissing, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedTypeMissing, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_TypeInvalid) {
@@ -202,13 +163,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedTypeInvalid, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedTypeInvalid, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_ServiceWorkerUrlMissing) {
@@ -220,13 +176,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedServiceWorkerUrlMissing, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedServiceWorkerUrlMissing, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_ServiceWorkerUrlInvalid) {
@@ -239,13 +190,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedServiceWorkerUrlInvalid, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedServiceWorkerUrlInvalid, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_ServiceWorkerUrlEmpty) {
@@ -258,13 +204,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedServiceWorkerUrlInvalid, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedServiceWorkerUrlInvalid, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest,
@@ -278,13 +219,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedServiceWorkerUrlDifferentOrigin, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedServiceWorkerUrlDifferentOrigin, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_NameMissing) {
@@ -296,13 +232,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedNameMissing, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedNameMissing, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Failure_NameEmpty) {
@@ -315,13 +246,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kFailedNameEmpty, status);
-  EXPECT_FALSE(system_extension.get());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_EQ(Status::kFailedNameEmpty, result.status());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Success_NoShortName) {
@@ -333,14 +259,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kOk, status);
-  ASSERT_TRUE(system_extension.get());
-  EXPECT_FALSE(system_extension->short_name.has_value());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_FALSE(result.system_extension().short_name.has_value());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Success_EmptyShortName) {
@@ -353,14 +273,8 @@
     "companion_web_app_url": "https://test.example/"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kOk, status);
-  ASSERT_TRUE(system_extension.get());
-  EXPECT_FALSE(system_extension->short_name.has_value());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_FALSE(result.system_extension().short_name.has_value());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest, Success_NoCompanionWebAppUrl) {
@@ -372,14 +286,8 @@
     "short_name": "Test"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kOk, status);
-  ASSERT_TRUE(system_extension.get());
-  EXPECT_FALSE(system_extension->companion_web_app_url.has_value());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_FALSE(result.system_extension().companion_web_app_url.has_value());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest,
@@ -393,14 +301,8 @@
     "companion_web_app_url": "foobar"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kOk, status);
-  ASSERT_TRUE(system_extension.get());
-  EXPECT_FALSE(system_extension->companion_web_app_url.has_value());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_FALSE(result.system_extension().companion_web_app_url.has_value());
 }
 
 TEST_F(SystemExtensionsSandboxedUnpackerTest,
@@ -414,12 +316,6 @@
     "companion_web_app_url": "http://test.example"
   })";
 
-  std::unique_ptr<SystemExtension> system_extension;
-  Status status;
-  std::tie(status, system_extension) =
-      GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
-
-  EXPECT_EQ(Status::kOk, status);
-  ASSERT_TRUE(system_extension.get());
-  EXPECT_FALSE(system_extension->companion_web_app_url.has_value());
+  auto result = GetSystemExtensionFromStringAndWait(kSystemExtensionManifest);
+  EXPECT_FALSE(result.system_extension().companion_web_app_url.has_value());
 }
diff --git a/chrome/browser/ash/system_extensions/system_extensions_status_or.h b/chrome/browser/ash/system_extensions/system_extensions_status_or.h
new file mode 100644
index 0000000..c9fd0de
--- /dev/null
+++ b/chrome/browser/ash/system_extensions/system_extensions_status_or.h
@@ -0,0 +1,63 @@
+// Copyright 2021 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_ASH_SYSTEM_EXTENSIONS_SYSTEM_EXTENSIONS_STATUS_OR_H_
+#define CHROME_BROWSER_ASH_SYSTEM_EXTENSIONS_SYSTEM_EXTENSIONS_STATUS_OR_H_
+
+#include "chrome/browser/ash/system_extensions/system_extension.h"
+
+// StatusOrSystemExtension is a union of an status enum class and a
+// SystemExtension. This class either holds an object in a usable state, or a
+// status code explaining why SystemExtension is not present. This class is
+// typically the return value of a function which may fail.
+//
+// An StatusOrSystemExtension can never hold an "OK" status (an `S::kOk` value);
+// instead, the presence of SystemExtension indicates success. Instead of
+// checking for a `kOk` value, use the `ok()` member function.
+template <typename S>
+class StatusOrSystemExtension {
+ public:
+  // Constructs a new `StatusOrSystemExtension` with an `S::kUnknown` status.
+  // This constructor is marked 'explicit' to prevent usages in return values
+  // such as 'return {};'.
+  explicit StatusOrSystemExtension() : status_(S::kUnknown) {}  // NOLINT
+
+  // All of these are implicit, so that one may just return Status or
+  // SystemExtension.
+  StatusOrSystemExtension(S status) : status_(status) {}     // NOLINT
+  StatusOrSystemExtension(SystemExtension system_extension)  // NOLINT
+      : status_(S::kOk), system_extension_(std::move(system_extension)) {}
+
+  StatusOrSystemExtension(StatusOrSystemExtension&&) = default;
+  StatusOrSystemExtension& operator=(StatusOrSystemExtension&&) = default;
+
+  ~StatusOrSystemExtension() = default;
+
+  bool ok() const { return status_ == S::kOk; }
+
+  // Returns the status code when the status is not kOk. Crashes if the
+  // status is kOk.
+  S status() {
+    CHECK(!ok());
+    return status_;
+  }
+
+  // Returns the SystemExtension if ok() is true. CHECKs otherwise.
+  const SystemExtension& system_extension() const& {
+    CHECK(ok());
+    return system_extension_;
+  }
+
+  // Returns the SystemExtension if ok() is true. CHECKs otherwise.
+  SystemExtension&& system_extension() && {
+    CHECK(ok());
+    return std::move(system_extension_);
+  }
+
+ private:
+  S status_;
+  SystemExtension system_extension_;
+};
+
+#endif  // CHROME_BROWSER_ASH_SYSTEM_EXTENSIONS_SYSTEM_EXTENSIONS_STATUS_OR_H_
diff --git a/chrome/browser/ash/system_logs/network_health_source.cc b/chrome/browser/ash/system_logs/network_health_source.cc
index 882d5995..06edfe1 100644
--- a/chrome/browser/ash/system_logs/network_health_source.cc
+++ b/chrome/browser/ash/system_logs/network_health_source.cc
@@ -125,6 +125,9 @@
     case RoutineProblems::Tag::ARC_DNS_RESOLUTION_PROBLEMS:
       problemsStr = ProblemsToStr(problems->get_arc_dns_resolution_problems());
       break;
+    case RoutineProblems::Tag::ARC_PING_PROBLEMS:
+      problemsStr = ProblemsToStr(problems->get_arc_ping_problems());
+      break;
   }
   return problemsStr;
 }
diff --git a/chrome/browser/chromeos/BUILD.gn b/chrome/browser/chromeos/BUILD.gn
index 3b00eb1..a8dcf13 100644
--- a/chrome/browser/chromeos/BUILD.gn
+++ b/chrome/browser/chromeos/BUILD.gn
@@ -2950,6 +2950,8 @@
     "net/network_diagnostics/arc_dns_resolution_routine.h",
     "net/network_diagnostics/arc_http_routine.cc",
     "net/network_diagnostics/arc_http_routine.h",
+    "net/network_diagnostics/arc_ping_routine.cc",
+    "net/network_diagnostics/arc_ping_routine.h",
     "net/network_diagnostics/captive_portal_routine.cc",
     "net/network_diagnostics/captive_portal_routine.h",
     "net/network_diagnostics/dns_latency_routine.cc",
@@ -4274,6 +4276,7 @@
     "net/client_cert_store_chromeos_unittest.cc",
     "net/network_diagnostics/arc_dns_resolution_routine_unittest.cc",
     "net/network_diagnostics/arc_http_routine_unittest.cc",
+    "net/network_diagnostics/arc_ping_routine_unittest.cc",
     "net/network_diagnostics/captive_portal_routine_unittest.cc",
     "net/network_diagnostics/dns_latency_routine_unittest.cc",
     "net/network_diagnostics/dns_resolution_routine_unittest.cc",
diff --git a/chrome/browser/chromeos/extensions/file_manager/system_notification_manager.cc b/chrome/browser/chromeos/extensions/file_manager/system_notification_manager.cc
index d275608..c250a00 100644
--- a/chrome/browser/chromeos/extensions/file_manager/system_notification_manager.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/system_notification_manager.cc
@@ -16,6 +16,8 @@
 #include "chrome/browser/ui/web_applications/system_web_app_ui_utils.h"
 #include "chrome/browser/ui/webui/settings/chromeos/constants/routes.mojom-forward.h"
 #include "chrome/grit/generated_resources.h"
+#include "components/arc/arc_prefs.h"
+#include "components/prefs/pref_service.h"
 #include "content/public/browser/browser_task_traits.h"
 #include "content/public/browser/browser_thread.h"
 #include "ui/base/l10n/l10n_util.h"
@@ -69,13 +71,11 @@
     const std::string& notification_id,
     const std::u16string& title,
     const std::u16string& message,
-    const base::RepeatingClosure& click_callback) {
+    const scoped_refptr<message_center::NotificationDelegate>& delegate) {
   return ash::CreateSystemNotification(
       message_center::NOTIFICATION_TYPE_SIMPLE, notification_id, title, message,
       std::u16string(), GURL(), message_center::NotifierId(),
-      message_center::RichNotificationData(),
-      new message_center::HandleNotificationClickDelegate(click_callback),
-      kNotificationGoogleIcon,
+      message_center::RichNotificationData(), delegate, kNotificationGoogleIcon,
       message_center::SystemNotificationWarningLevel::NORMAL);
 }
 
@@ -83,6 +83,17 @@
 SystemNotificationManager::CreateNotification(
     const std::string& notification_id,
     const std::u16string& title,
+    const std::u16string& message,
+    const base::RepeatingClosure& click_callback) {
+  return CreateNotification(
+      notification_id, title, message,
+      new message_center::HandleNotificationClickDelegate(click_callback));
+}
+
+std::unique_ptr<message_center::Notification>
+SystemNotificationManager::CreateNotification(
+    const std::string& notification_id,
+    const std::u16string& title,
     const std::u16string& message) {
   return CreateNotification(
       notification_id, title, message,
@@ -108,11 +119,7 @@
     const scoped_refptr<message_center::NotificationDelegate>& delegate) {
   std::u16string title = l10n_util::GetStringUTF16(title_id);
   std::u16string message = l10n_util::GetStringUTF16(message_id);
-  return ash::CreateSystemNotification(
-      message_center::NOTIFICATION_TYPE_SIMPLE, notification_id, title, message,
-      std::u16string(), GURL(), message_center::NotifierId(),
-      message_center::RichNotificationData(), delegate, kNotificationGoogleIcon,
-      message_center::SystemNotificationWarningLevel::NORMAL);
+  return CreateNotification(notification_id, title, message, delegate);
 }
 
 void SystemNotificationManager::HandleProgressClick(
@@ -464,6 +471,7 @@
 
 std::unique_ptr<message_center::Notification>
 SystemNotificationManager::MakeMountErrorNotification(
+    file_manager_private::MountCompletedEvent& event,
     const Volume& volume) {
   std::unique_ptr<message_center::Notification> notification;
   scoped_refptr<message_center::NotificationDelegate> delegate =
@@ -473,23 +481,51 @@
   auto device_mount_status =
       mount_status_.find(volume.storage_device_path().value());
   if (device_mount_status != mount_status_.end()) {
+    std::u16string title =
+        l10n_util::GetStringUTF16(IDS_REMOVABLE_DEVICE_DETECTION_TITLE);
+    std::u16string message;
     switch (device_mount_status->second) {
       case MOUNT_STATUS_ONLY_PARENT_ERROR:
       case MOUNT_STATUS_CHILD_ERROR:
-        notification = CreateNotification(
-            kDeviceFailNotificationId, IDS_REMOVABLE_DEVICE_DETECTION_TITLE,
-            IDS_DEVICE_UNSUPPORTED_DEFAULT_MESSAGE, delegate);
+        if (event.status ==
+            file_manager_private::
+                MOUNT_COMPLETED_STATUS_ERROR_UNSUPPORTED_FILESYSTEM) {
+          if (volume.drive_label().empty()) {
+            message = l10n_util::GetStringUTF16(
+                IDS_DEVICE_UNSUPPORTED_DEFAULT_MESSAGE);
+          } else {
+            message = l10n_util::GetStringFUTF16(
+                IDS_DEVICE_UNSUPPORTED_MESSAGE,
+                base::UTF8ToUTF16(volume.drive_label()));
+          }
+        } else {
+          if (volume.drive_label().empty()) {
+            message =
+                l10n_util::GetStringUTF16(IDS_DEVICE_UNKNOWN_DEFAULT_MESSAGE);
+          } else {
+            message = l10n_util::GetStringFUTF16(
+                IDS_DEVICE_UNKNOWN_MESSAGE,
+                base::UTF8ToUTF16(volume.drive_label()));
+          }
+        }
         break;
       case MOUNT_STATUS_MULTIPART_ERROR:
-        notification = CreateNotification(
-            kDeviceFailNotificationId, IDS_REMOVABLE_DEVICE_DETECTION_TITLE,
-            IDS_MULTIPART_DEVICE_UNSUPPORTED_DEFAULT_MESSAGE, delegate);
+        if (volume.drive_label().empty()) {
+          message = l10n_util::GetStringUTF16(
+              IDS_MULTIPART_DEVICE_UNSUPPORTED_DEFAULT_MESSAGE);
+        } else {
+          message = l10n_util::GetStringFUTF16(
+              IDS_MULTIPART_DEVICE_UNSUPPORTED_MESSAGE,
+              base::UTF8ToUTF16(volume.drive_label()));
+        }
         break;
       default:
         DLOG(WARNING) << "Unhandled mount status for "
                       << device_mount_status->second;
-        break;
+        return notification;
     }
+    notification =
+        CreateNotification(kDeviceFailNotificationId, title, message, delegate);
   }
   return notification;
 }
@@ -550,33 +586,60 @@
     const Volume& volume) {
   std::unique_ptr<message_center::Notification> notification;
   if (event.status == file_manager_private::MOUNT_COMPLETED_STATUS_SUCCESS) {
-    int message_id;
+    bool show_settings_button = false;
+    std::u16string title =
+        l10n_util::GetStringUTF16(IDS_REMOVABLE_DEVICE_DETECTION_TITLE);
+    std::u16string message;
     if (volume.is_read_only() && !volume.is_read_only_removable_device()) {
-      message_id = IDS_REMOVABLE_DEVICE_NAVIGATION_MESSAGE_READONLY_POLICY;
+      message = l10n_util::GetStringUTF16(
+          IDS_REMOVABLE_DEVICE_NAVIGATION_MESSAGE_READONLY_POLICY);
     } else {
-      message_id = IDS_REMOVABLE_DEVICE_NAVIGATION_MESSAGE;
+      const PrefService* const service = profile_->GetPrefs();
+      DCHECK(service);
+      bool arc_enabled = service->GetBoolean(arc::prefs::kArcEnabled);
+      bool arc_removable_media_access_enabled =
+          service->GetBoolean(arc::prefs::kArcHasAccessToRemovableMedia);
+      if (!arc_enabled) {
+        message =
+            l10n_util::GetStringUTF16(IDS_REMOVABLE_DEVICE_NAVIGATION_MESSAGE);
+      } else if (arc_removable_media_access_enabled) {
+        message = base::StrCat(
+            {l10n_util::GetStringUTF16(IDS_REMOVABLE_DEVICE_NAVIGATION_MESSAGE),
+             u" ",
+             l10n_util::GetStringUTF16(
+                 IDS_REMOVABLE_DEVICE_PLAY_STORE_APPS_HAVE_ACCESS_MESSAGE)});
+        show_settings_button = true;
+      } else {
+        message = base::StrCat(
+            {l10n_util::GetStringUTF16(IDS_REMOVABLE_DEVICE_NAVIGATION_MESSAGE),
+             u" ",
+             l10n_util::GetStringUTF16(
+                 IDS_REMOVABLE_DEVICE_ALLOW_PLAY_STORE_ACCESS_MESSAGE)});
+        show_settings_button = true;
+      }
     }
     scoped_refptr<message_center::NotificationDelegate> delegate =
         new message_center::HandleNotificationClickDelegate(base::BindRepeating(
             &SystemNotificationManager::HandleRemovableNotificationClick,
             weak_ptr_factory_.GetWeakPtr(), volume.mount_path().value()));
-    notification = CreateNotification(kRemovableNotificationId,
-                                      IDS_REMOVABLE_DEVICE_DETECTION_TITLE,
-                                      message_id, delegate);
+    notification =
+        CreateNotification(kRemovableNotificationId, title, message, delegate);
 
     std::vector<message_center::ButtonInfo> notification_buttons;
     notification_buttons.push_back(
         message_center::ButtonInfo(l10n_util::GetStringUTF16(
             IDS_REMOVABLE_DEVICE_NAVIGATION_BUTTON_LABEL)));
-    notification_buttons.push_back(
-        message_center::ButtonInfo(l10n_util::GetStringUTF16(
-            IDS_REMOVABLE_DEVICE_OPEN_SETTTINGS_BUTTON_LABEL)));
+    if (show_settings_button) {
+      notification_buttons.push_back(
+          message_center::ButtonInfo(l10n_util::GetStringUTF16(
+              IDS_REMOVABLE_DEVICE_OPEN_SETTTINGS_BUTTON_LABEL)));
+    }
     notification->set_buttons(notification_buttons);
   }
   if (volume.device_type() != chromeos::DEVICE_TYPE_UNKNOWN &&
       !volume.storage_device_path().empty()) {
     if (UpdateDeviceMountStatus(event, volume) != MOUNT_STATUS_SUCCESS) {
-      notification = MakeMountErrorNotification(volume);
+      notification = MakeMountErrorNotification(event, volume);
     }
   }
 
diff --git a/chrome/browser/chromeos/extensions/file_manager/system_notification_manager.h b/chrome/browser/chromeos/extensions/file_manager/system_notification_manager.h
index 36a346e..bec26c5 100644
--- a/chrome/browser/chromeos/extensions/file_manager/system_notification_manager.h
+++ b/chrome/browser/chromeos/extensions/file_manager/system_notification_manager.h
@@ -76,6 +76,15 @@
       const scoped_refptr<message_center::NotificationDelegate>& delegate);
 
   /**
+   *  Returns an instance of an 'ash' Notification with a bound click delegate.
+   */
+  std::unique_ptr<message_center::Notification> CreateNotification(
+      const std::string& notification_id,
+      const std::u16string& title,
+      const std::u16string& message,
+      const scoped_refptr<message_center::NotificationDelegate>& delegate);
+
+  /**
    *  Returns an instance of an 'ash' Notification.
    */
   std::unique_ptr<message_center::Notification> CreateNotification(
@@ -179,6 +188,7 @@
    * Makes a notification instance for mount errors.
    */
   std::unique_ptr<message_center::Notification> MakeMountErrorNotification(
+      file_manager_private::MountCompletedEvent& event,
       const Volume& volume);
 
   /**
diff --git a/chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine.cc b/chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine.cc
new file mode 100644
index 0000000..c0987396
--- /dev/null
+++ b/chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine.cc
@@ -0,0 +1,261 @@
+// Copyright 2021 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 <algorithm>
+#include <string>
+#include <utility>
+
+#include "base/bind.h"
+#include "chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine.h"
+#include "chrome/browser/chromeos/net/network_diagnostics/network_diagnostics_util.h"
+#include "chromeos/services/network_config/in_process_instance.h"
+#include "chromeos/services/network_config/public/cpp/cros_network_config_util.h"
+#include "components/arc/arc_service_manager.h"
+
+namespace chromeos {
+namespace network_diagnostics {
+
+namespace {
+
+using chromeos::network_config::mojom::CrosNetworkConfig;
+using chromeos::network_config::mojom::FilterType;
+using chromeos::network_config::mojom::NetworkFilter;
+using chromeos::network_config::mojom::NetworkStatePropertiesPtr;
+using chromeos::network_config::mojom::NetworkType;
+
+void GetNetworkConfigService(
+    mojo::PendingReceiver<CrosNetworkConfig> receiver) {
+  chromeos::network_config::BindToInProcessInstance(std::move(receiver));
+}
+
+// Requests taking longer than 1500 ms are problematic.
+constexpr int kProblemLatencyMs = 1500;
+
+// Timeout for GetManagedProperties.
+constexpr int kTimeoutGetManagedPropertiesSeconds = 180;
+
+}  // namespace
+
+ArcPingRoutine::ArcPingRoutine() {
+  set_verdict(mojom::RoutineVerdict::kNotRun);
+  GetNetworkConfigService(
+      remote_cros_network_config_.BindNewPipeAndPassReceiver());
+}
+
+ArcPingRoutine::~ArcPingRoutine() = default;
+
+mojom::RoutineType ArcPingRoutine::Type() {
+  return mojom::RoutineType::kArcPing;
+}
+
+void ArcPingRoutine::Run() {
+  FetchActiveNetworks();
+}
+
+void ArcPingRoutine::AnalyzeResultsAndExecuteCallback() {
+  if (unreachable_gateways_) {
+    set_verdict(mojom::RoutineVerdict::kProblem);
+    problems_.push_back(mojom::ArcPingProblem::kUnreachableGateway);
+  } else if (failed_to_get_arc_service_manager_) {
+    set_verdict(mojom::RoutineVerdict::kNotRun);
+    problems_.push_back(mojom::ArcPingProblem::kFailedToGetArcServiceManager);
+  } else if (failed_to_get_net_instance_service_for_ping_test_) {
+    set_verdict(mojom::RoutineVerdict::kNotRun);
+    problems_.push_back(
+        mojom::ArcPingProblem::kFailedToGetNetInstanceForPingTest);
+  } else if (get_managed_properties_timeout_failure_) {
+    set_verdict(mojom::RoutineVerdict::kNotRun);
+    problems_.push_back(
+        mojom::ArcPingProblem::kGetManagedPropertiesTimeoutFailure);
+  } else if (!pingable_default_network_) {
+    set_verdict(mojom::RoutineVerdict::kProblem);
+    problems_.push_back(mojom::ArcPingProblem::kFailedToPingDefaultNetwork);
+  } else if (default_network_latency_ > kProblemLatencyMs) {
+    set_verdict(mojom::RoutineVerdict::kProblem);
+    problems_.push_back(
+        mojom::ArcPingProblem::kDefaultNetworkAboveLatencyThreshold);
+  } else if (non_default_network_unsuccessful_) {
+    set_verdict(mojom::RoutineVerdict::kProblem);
+    problems_.push_back(
+        mojom::ArcPingProblem::kUnsuccessfulNonDefaultNetworksPings);
+  } else if (non_default_max_latency_ > kProblemLatencyMs) {
+    set_verdict(mojom::RoutineVerdict::kProblem);
+    problems_.push_back(
+        mojom::ArcPingProblem::kNonDefaultNetworksAboveLatencyThreshold);
+  } else {
+    set_verdict(mojom::RoutineVerdict::kNoProblem);
+  }
+  set_problems(mojom::RoutineProblems::NewArcPingProblems(problems_));
+  ExecuteCallback();
+}
+
+void ArcPingRoutine::FetchActiveNetworks() {
+  DCHECK(remote_cros_network_config_);
+  remote_cros_network_config_->GetNetworkStateList(
+      NetworkFilter::New(FilterType::kActive, NetworkType::kAll,
+                         network_config::mojom::kNoLimit),
+      base::BindOnce(&ArcPingRoutine::OnNetworkStateListReceived,
+                     weak_ptr_factory_.GetWeakPtr()));
+}
+
+void ArcPingRoutine::FetchManagedProperties(
+    const std::vector<std::string>& guids) {
+  DCHECK(remote_cros_network_config_);
+  guids_remaining_ = guids.size();
+
+  // Post delayed task to handle timeout error on GetManagedProperties.
+  base::ThreadTaskRunnerHandle::Get()->PostDelayedTask(
+      FROM_HERE,
+      base::BindOnce(&ArcPingRoutine::HandleTimeout,
+                     weak_ptr_factory_.GetWeakPtr()),
+      base::TimeDelta::FromSeconds(kTimeoutGetManagedPropertiesSeconds));
+
+  for (const std::string& guid : guids) {
+    remote_cros_network_config_->GetManagedProperties(
+        guid, base::BindOnce(&ArcPingRoutine::OnManagedPropertiesReceived,
+                             weak_ptr_factory_.GetWeakPtr()));
+  }
+}
+
+void ArcPingRoutine::PingGateways() {
+  arc::mojom::NetInstance* net_instance = GetNetInstance();
+  for (int i = 0; i < gateways_.size(); i++) {
+    net_instance->PingTest(
+        gateways_transport_names_[i], gateways_[i],
+        base::BindOnce(&ArcPingRoutine::OnRequestComplete,
+                       weak_ptr_factory_.GetWeakPtr(),
+                       gateways_[i] == default_network_gateway_));
+  }
+}
+
+void ArcPingRoutine::OnNetworkStateListReceived(
+    std::vector<NetworkStatePropertiesPtr> networks) {
+  bool connected = false;
+  std::vector<std::string> guids;
+  for (const auto& network : networks) {
+    if (!network_config::StateIsConnected(network->connection_state)) {
+      continue;
+    }
+    connected = true;
+    const std::string& guid = network->guid;
+    if (default_network_guid_.empty()) {
+      default_network_guid_ = guid;
+    }
+    guids.push_back(guid);
+  }
+  if (!connected || guids.empty()) {
+    // Since we are not connected at all, directly analyze the results.
+    AnalyzeResultsAndExecuteCallback();
+  } else {
+    FetchManagedProperties(guids);
+  }
+}
+
+void ArcPingRoutine::OnManagedPropertiesReceived(
+    ManagedPropertiesPtr managed_properties) {
+  DCHECK(guids_remaining_ > 0);
+  if (managed_properties && managed_properties->ip_configs.has_value() &&
+      managed_properties->ip_configs->size() != 0) {
+    for (const auto& ip_config : managed_properties->ip_configs.value()) {
+      if (ip_config->gateway.has_value()) {
+        const std::string& gateway = ip_config->gateway.value();
+        if (managed_properties->guid == default_network_guid_) {
+          default_network_gateway_ = gateway;
+        }
+        gateways_.push_back(gateway);
+        gateways_transport_names_.push_back(
+            GetTransportName(managed_properties->name->active_value));
+      }
+    }
+  }
+  guids_remaining_--;
+  if (guids_remaining_ == 0) {
+    weak_ptr_factory_.InvalidateWeakPtrs();
+    if (gateways_.size() == 0) {
+      // Since we cannot ping the gateway, directly analyze the results.
+      AnalyzeResultsAndExecuteCallback();
+    } else {
+      unreachable_gateways_ = false;
+      gateways_remaining_ = gateways_.size();
+      PingGateways();
+    }
+  }
+}
+
+void ArcPingRoutine::OnRequestComplete(
+    bool is_default_network_ping_result,
+    arc::mojom::ArcPingTestResultPtr result) {
+  DCHECK(gateways_remaining_ > 0);
+  if (!result->is_successful) {
+    if (!is_default_network_ping_result) {
+      non_default_network_unsuccessful_ = true;
+    }
+  } else {
+    if (is_default_network_ping_result) {
+      pingable_default_network_ = true;
+      default_network_latency_ = result->duration_ms;
+    } else {
+      non_default_max_latency_ =
+          std::max(non_default_max_latency_, result->duration_ms);
+    }
+  }
+
+  gateways_remaining_--;
+  if (gateways_remaining_ == 0) {
+    AnalyzeResultsAndExecuteCallback();
+  }
+}
+
+void ArcPingRoutine::HandleTimeout() {
+  // Destroy pending callbacks in case they end up being unexpectedly invoked
+  // after the timer expires.
+  weak_ptr_factory_.InvalidateWeakPtrs();
+  get_managed_properties_timeout_failure_ = true;
+  AnalyzeResultsAndExecuteCallback();
+}
+
+arc::mojom::NetInstance* ArcPingRoutine::GetNetInstance() {
+  // If |net_instance_| is not already set for testing purposes, get instance
+  // of NetInstance service.
+  if (net_instance_) {
+    return net_instance_;
+  }
+
+  // Call the singleton for ArcServiceManager and check if it is null.
+  auto* arc_service_manager = arc::ArcServiceManager::Get();
+  if (!arc_service_manager) {
+    failed_to_get_arc_service_manager_ = true;
+    AnalyzeResultsAndExecuteCallback();
+    return nullptr;
+  }
+
+  // Get an instance of the NetInstance service and check if it is null.
+  auto* arc_bridge_service = arc_service_manager->arc_bridge_service();
+  arc::mojom::NetInstance* net_instance =
+      ARC_GET_INSTANCE_FOR_METHOD(arc_bridge_service->net(), PingTest);
+  if (!net_instance) {
+    failed_to_get_net_instance_service_for_ping_test_ = true;
+    AnalyzeResultsAndExecuteCallback();
+    return nullptr;
+  }
+  return net_instance;
+}
+
+std::string ArcPingRoutine::GetTransportName(
+    const std::string& managed_properties_name) {
+  if (managed_properties_name == "wifi_guid") {
+    return "wifi";
+  } else if (managed_properties_name == "eth_guid") {
+    return "eth";
+  } else if (managed_properties_name == "cell_guid") {
+    return "cell";
+  } else if (managed_properties_name == "vpn_guid") {
+    return "vpn";
+  } else {
+    return "";
+  }
+}
+
+}  // namespace network_diagnostics
+}  // namespace chromeos
diff --git a/chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine.h b/chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine.h
new file mode 100644
index 0000000..fc9b38b7
--- /dev/null
+++ b/chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine.h
@@ -0,0 +1,110 @@
+// Copyright 2021 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_CHROMEOS_NET_NETWORK_DIAGNOSTICS_ARC_PING_ROUTINE_H_
+#define CHROME_BROWSER_CHROMEOS_NET_NETWORK_DIAGNOSTICS_ARC_PING_ROUTINE_H_
+
+#include <string>
+#include <vector>
+
+#include "base/memory/weak_ptr.h"
+#include "chrome/browser/chromeos/net/network_diagnostics/network_diagnostics_routine.h"
+#include "chromeos/services/network_config/public/mojom/cros_network_config.mojom.h"
+#include "components/arc/mojom/net.mojom.h"
+#include "components/arc/session/arc_bridge_service.h"
+#include "mojo/public/cpp/bindings/remote.h"
+
+namespace chromeos {
+namespace network_diagnostics {
+
+namespace {
+
+using chromeos::network_config::mojom::ManagedPropertiesPtr;
+
+}  // namespace
+
+// Performs ICMP echo requests from within ARC to a random set of addresses
+// and returns the result.
+class ArcPingRoutine : public NetworkDiagnosticsRoutine {
+ public:
+  using RunArcHttpCallback =
+      mojom::NetworkDiagnosticsRoutines::RunArcPingCallback;
+
+  ArcPingRoutine();
+  ArcPingRoutine(const ArcPingRoutine&) = delete;
+  ArcPingRoutine& operator=(const ArcPingRoutine&) = delete;
+  ~ArcPingRoutine() override;
+
+  // NetworkDiagnosticsRoutine:
+  mojom::RoutineType Type() override;
+  void Run() override;
+  void AnalyzeResultsAndExecuteCallback() override;
+
+  void set_net_instance_for_testing(arc::mojom::NetInstance* net_instance) {
+    net_instance_ = net_instance;
+  }
+
+ private:
+  // Get list of Network properties that are active.
+  void FetchActiveNetworks();
+
+  // Fetch the managed properties of each network given GUIDs.
+  void FetchManagedProperties(const std::vector<std::string>& guids);
+
+  // Call the PingTest API on each gateway.
+  void PingGateways();
+
+  // Gather the gateways from the managed properties of each network.
+  void OnManagedPropertiesReceived(
+      chromeos::network_config::mojom::ManagedPropertiesPtr managed_properties);
+
+  // Get the managed properties of each network given the network interface
+  // information.
+  void OnNetworkStateListReceived(
+      std::vector<chromeos::network_config::mojom::NetworkStatePropertiesPtr>
+          networks);
+
+  // Attempts the next ICMP echo request.
+  void AttemptNextRequest();
+
+  // Gets NetInstance service if it is not already set for testing
+  // purposes as |net_instance_|.
+  arc::mojom::NetInstance* GetNetInstance();
+
+  // Gets the transport name of the network that is acceptable by ARC
+  // from the ManagedProperties name.
+  std::string GetTransportName(const std::string& managed_properties_name);
+
+  // Processes the |result| of an PingTest API call.
+  void OnRequestComplete(bool is_default_network_ping_result,
+                         arc::mojom::ArcPingTestResultPtr result);
+
+  // Handles timeout for GetManagedProperties.
+  void HandleTimeout();
+
+  mojo::Remote<chromeos::network_config::mojom::CrosNetworkConfig>
+      remote_cros_network_config_;
+  std::vector<mojom::ArcPingProblem> problems_;
+  std::vector<std::string> gateways_;
+  std::vector<std::string> gateways_transport_names_;
+  bool get_managed_properties_timeout_failure_ = false;
+  bool unreachable_gateways_ = true;
+  bool non_default_network_unsuccessful_ = false;
+  bool pingable_default_network_ = false;
+  bool failed_to_get_arc_service_manager_ = false;
+  bool failed_to_get_net_instance_service_for_ping_test_ = false;
+  int64_t default_network_latency_ = 0;
+  int64_t non_default_max_latency_ = 0;
+  std::string default_network_guid_;
+  std::string default_network_gateway_;
+  int guids_remaining_ = 0;
+  int gateways_remaining_ = 0;
+  arc::mojom::NetInstance* net_instance_ = nullptr;
+  base::WeakPtrFactory<ArcPingRoutine> weak_ptr_factory_{this};
+};
+
+}  // namespace network_diagnostics
+}  // namespace chromeos
+
+#endif  //  CHROME_BROWSER_CHROMEOS_NET_NETWORK_DIAGNOSTICS_ARC_PING_ROUTINE_H_
diff --git a/chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine_unittest.cc b/chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine_unittest.cc
new file mode 100644
index 0000000..bf6a67c
--- /dev/null
+++ b/chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine_unittest.cc
@@ -0,0 +1,223 @@
+// Copyright 2021 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 "base/test/task_environment.h"
+#include "chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine.h"
+#include "chromeos/login/login_state/login_state.h"
+#include "chromeos/network/network_cert_loader.h"
+#include "chromeos/network/network_configuration_handler.h"
+#include "chromeos/network/network_profile_handler.h"
+#include "chromeos/network/onc/onc_utils.h"
+#include "chromeos/network/proxy/ui_proxy_config_service.h"
+#include "chromeos/network/system_token_cert_db_storage.h"
+#include "chromeos/services/network_config/public/cpp/cros_network_config_test_helper.h"
+#include "components/arc/test/fake_net_instance.h"
+#include "components/onc/onc_pref_names.h"
+#include "components/proxy_config/pref_proxy_config_tracker_impl.h"
+#include "components/sync_preferences/testing_pref_service_syncable.h"
+#include "content/public/test/browser_task_environment.h"
+#include "net/dns/public/dns_protocol.h"
+#include "testing/gtest/include/gtest/gtest.h"
+#include "third_party/cros_system_api/dbus/shill/dbus-constants.h"
+
+namespace chromeos {
+namespace network_diagnostics {
+
+namespace {
+
+const int kNoProblemDelayMs = 1000;
+const int kHighLatencyDelayMs = 1600;
+
+}  // namespace
+
+class ArcPingRoutineTest : public ::testing::Test {
+ public:
+  ArcPingRoutineTest() {
+    LoginState::Initialize();
+    SystemTokenCertDbStorage::Initialize();
+    NetworkCertLoader::Initialize();
+    InitializeManagedNetworkConfigurationHandler();
+    // Note that |cros_network_config_test_helper_| must be initialized before
+    // |arc_ping_routine_| is initialized in SetUpRoutine(). This
+    // is because |g_network_config_override| in
+    // OverrideInProcessInstanceForTesting() must be called before
+    // BindToInProcessInstance() is called. See
+    // chromeos/services/network_config/in_process_instance.cc for further
+    // details.
+    cros_network_config_test_helper().Initialize(
+        managed_network_configuration_handler_.get());
+
+    base::RunLoop().RunUntilIdle();
+  }
+
+  ArcPingRoutineTest(const ArcPingRoutineTest&) = delete;
+  ArcPingRoutineTest& operator=(const ArcPingRoutineTest&) = delete;
+
+  ~ArcPingRoutineTest() override {
+    NetworkCertLoader::Shutdown();
+    SystemTokenCertDbStorage::Shutdown();
+    LoginState::Shutdown();
+  }
+
+  void CompareResult(
+      mojom::RoutineVerdict expected_verdict,
+      const std::vector<mojom::ArcPingProblem>& expected_problems,
+      mojom::RoutineResultPtr result) {
+    EXPECT_EQ(expected_verdict, result->verdict);
+    EXPECT_EQ(expected_problems, result->problems->get_arc_ping_problems());
+    run_loop_.Quit();
+  }
+
+  network_config::CrosNetworkConfigTestHelper&
+  cros_network_config_test_helper() {
+    return cros_network_config_test_helper_;
+  }
+
+  chromeos::NetworkStateTestHelper& network_state_helper() {
+    return cros_network_config_test_helper_.network_state_helper();
+  }
+
+ protected:
+  void RunRoutine(mojom::RoutineVerdict expected_routine_verdict,
+                  const std::vector<mojom::ArcPingProblem>& expected_problems) {
+    arc_ping_routine_->RunRoutine(
+        base::BindOnce(&ArcPingRoutineTest::CompareResult, weak_ptr(),
+                       expected_routine_verdict, expected_problems));
+    run_loop_.Run();
+  }
+
+  void SetUpRoutine(arc::mojom::ArcPingTestResult result) {
+    // Set up the fake NetworkInstance service.
+    fake_net_instance_ = std::make_unique<arc::FakeNetInstance>();
+    fake_net_instance_->set_ping_test_result(result);
+
+    // Set up routine with fake NetworkInstance service.
+    arc_ping_routine_ = std::make_unique<ArcPingRoutine>();
+    arc_ping_routine_->set_net_instance_for_testing(fake_net_instance_.get());
+  }
+
+  void SetUpWiFi(const char* state) {
+    DCHECK(wifi_path_.empty());
+    // By default, NetworkStateTestHelper already adds a WiFi device, so, we
+    // do not need to add one here. All that remains to be done is configuring
+    // the WiFi service.
+    wifi_path_ = ConfigureService(
+        R"({"GUID": "wifi_guid", "Type": "wifi", "State": "idle"})");
+    SetServiceProperty(wifi_path_, shill::kStateProperty, base::Value(state));
+    base::RunLoop().RunUntilIdle();
+  }
+
+  void InitializeManagedNetworkConfigurationHandler() {
+    network_profile_handler_ = NetworkProfileHandler::InitializeForTesting();
+    network_configuration_handler_ =
+        base::WrapUnique<NetworkConfigurationHandler>(
+            NetworkConfigurationHandler::InitializeForTest(
+                network_state_helper().network_state_handler(),
+                cros_network_config_test_helper().network_device_handler()));
+
+    PrefProxyConfigTrackerImpl::RegisterProfilePrefs(user_prefs_.registry());
+    PrefProxyConfigTrackerImpl::RegisterPrefs(local_state_.registry());
+    ::onc::RegisterProfilePrefs(user_prefs_.registry());
+    ::onc::RegisterPrefs(local_state_.registry());
+
+    ui_proxy_config_service_ = std::make_unique<chromeos::UIProxyConfigService>(
+        &user_prefs_, &local_state_,
+        network_state_helper().network_state_handler(),
+        network_profile_handler_.get());
+
+    managed_network_configuration_handler_ =
+        ManagedNetworkConfigurationHandler::InitializeForTesting(
+            network_state_helper().network_state_handler(),
+            network_profile_handler_.get(),
+            cros_network_config_test_helper().network_device_handler(),
+            network_configuration_handler_.get(),
+            ui_proxy_config_service_.get());
+
+    managed_network_configuration_handler_->SetPolicy(
+        ::onc::ONC_SOURCE_DEVICE_POLICY,
+        /*userhash=*/std::string(),
+        /*network_configs_onc=*/base::ListValue(),
+        /*global_network_config=*/base::DictionaryValue());
+
+    base::RunLoop().RunUntilIdle();
+  }
+
+  base::WeakPtr<ArcPingRoutineTest> weak_ptr() {
+    return weak_factory_.GetWeakPtr();
+  }
+
+ private:
+  std::string ConfigureService(const std::string& shill_json_string) {
+    return network_state_helper().ConfigureService(shill_json_string);
+  }
+  void SetServiceProperty(const std::string& service_path,
+                          const std::string& key,
+                          const base::Value& value) {
+    network_state_helper().SetServiceProperty(service_path, key, value);
+  }
+
+  // Member order declaration done in a way so that members outlive those that
+  // are dependent on them.
+  content::BrowserTaskEnvironment task_environment_;
+  base::RunLoop run_loop_;
+  std::unique_ptr<ArcPingRoutine> arc_ping_routine_;
+  std::unique_ptr<arc::FakeNetInstance> fake_net_instance_;
+  network_config::CrosNetworkConfigTestHelper cros_network_config_test_helper_{
+      false};
+  std::unique_ptr<NetworkProfileHandler> network_profile_handler_;
+  std::unique_ptr<NetworkConfigurationHandler> network_configuration_handler_;
+  sync_preferences::TestingPrefServiceSyncable user_prefs_;
+  TestingPrefServiceSimple local_state_;
+  std::unique_ptr<UIProxyConfigService> ui_proxy_config_service_;
+  std::string wifi_path_;
+  std::unique_ptr<ManagedNetworkConfigurationHandler>
+      managed_network_configuration_handler_;
+  base::WeakPtrFactory<ArcPingRoutineTest> weak_factory_{this};
+};
+
+TEST_F(ArcPingRoutineTest, TestNoProblem) {
+  arc::mojom::ArcPingTestResult result;
+  result.is_successful = true;
+  result.duration_ms = kNoProblemDelayMs;
+
+  SetUpRoutine(result);
+  SetUpWiFi(shill::kStateOnline);
+  RunRoutine(mojom::RoutineVerdict::kNoProblem, {});
+}
+
+TEST_F(ArcPingRoutineTest, TestUnreachableGateway) {
+  arc::mojom::ArcPingTestResult result;
+  result.is_successful = false;
+
+  SetUpRoutine(result);
+  RunRoutine(mojom::RoutineVerdict::kProblem,
+             {mojom::ArcPingProblem::kUnreachableGateway});
+}
+
+TEST_F(ArcPingRoutineTest, TestFailedToPingDefaultGateway) {
+  arc::mojom::ArcPingTestResult result;
+  result.is_successful = false;
+
+  SetUpRoutine(result);
+  SetUpWiFi(shill::kStateOnline);
+  RunRoutine(mojom::RoutineVerdict::kProblem,
+             {mojom::ArcPingProblem::kFailedToPingDefaultNetwork});
+}
+
+TEST_F(ArcPingRoutineTest, TestHighLatencyToPingDefaultGateway) {
+  arc::mojom::ArcPingTestResult result;
+  result.is_successful = true;
+  result.duration_ms = kHighLatencyDelayMs;
+
+  SetUpRoutine(result);
+  SetUpWiFi(shill::kStateOnline);
+  RunRoutine(mojom::RoutineVerdict::kProblem,
+             {mojom::ArcPingProblem::kDefaultNetworkAboveLatencyThreshold});
+}
+
+}  // namespace network_diagnostics
+}  // namespace chromeos
diff --git a/chrome/browser/chromeos/net/network_diagnostics/network_diagnostics.cc b/chrome/browser/chromeos/net/network_diagnostics/network_diagnostics.cc
index 7501eee..e7a5e6a 100644
--- a/chrome/browser/chromeos/net/network_diagnostics/network_diagnostics.cc
+++ b/chrome/browser/chromeos/net/network_diagnostics/network_diagnostics.cc
@@ -10,6 +10,7 @@
 #include "base/bind.h"
 #include "chrome/browser/chromeos/net/network_diagnostics/arc_dns_resolution_routine.h"
 #include "chrome/browser/chromeos/net/network_diagnostics/arc_http_routine.h"
+#include "chrome/browser/chromeos/net/network_diagnostics/arc_ping_routine.h"
 #include "chrome/browser/chromeos/net/network_diagnostics/captive_portal_routine.h"
 #include "chrome/browser/chromeos/net/network_diagnostics/dns_latency_routine.h"
 #include "chrome/browser/chromeos/net/network_diagnostics/dns_resolution_routine.h"
@@ -264,6 +265,10 @@
 void NetworkDiagnostics::RunArcDnsResolution(
     RunArcDnsResolutionCallback callback) {
   auto routine = std::make_unique<ArcDnsResolutionRoutine>();
+}
+
+void NetworkDiagnostics::RunArcPing(RunArcPingCallback callback) {
+  auto routine = std::make_unique<ArcPingRoutine>();
   RunRoutine(std::move(routine), std::move(callback));
 }
 
diff --git a/chrome/browser/chromeos/net/network_diagnostics/network_diagnostics.h b/chrome/browser/chromeos/net/network_diagnostics/network_diagnostics.h
index d3149f8..c1c2444 100644
--- a/chrome/browser/chromeos/net/network_diagnostics/network_diagnostics.h
+++ b/chrome/browser/chromeos/net/network_diagnostics/network_diagnostics.h
@@ -62,6 +62,7 @@
                             RunVideoConferencingCallback callback) override;
   void RunArcHttp(RunArcHttpCallback callback) override;
   void RunArcDnsResolution(RunArcDnsResolutionCallback callback) override;
+  void RunArcPing(RunArcPingCallback callback) override;
   void GetResult(const mojom::RoutineType type,
                  GetResultCallback callback) override;
   void GetAllResults(GetAllResultsCallback callback) override;
diff --git a/chrome/browser/devtools/protocol/page_handler.cc b/chrome/browser/devtools/protocol/page_handler.cc
index 5822cc3..90679501a 100644
--- a/chrome/browser/devtools/protocol/page_handler.cc
+++ b/chrome/browser/devtools/protocol/page_handler.cc
@@ -10,26 +10,25 @@
 
 PageHandler::PageHandler(content::WebContents* web_contents,
                          protocol::UberDispatcher* dispatcher)
-    : content::WebContentsObserver(web_contents) {
-  DCHECK(web_contents);
+    : web_contents_(web_contents->GetWeakPtr()) {
   protocol::Page::Dispatcher::wire(dispatcher, this);
 }
 
 PageHandler::~PageHandler() {
-  ToggleAdBlocking(false /* enabled */);
+  ToggleAdBlocking(/* enabled= */ false);
 }
 
 void PageHandler::ToggleAdBlocking(bool enabled) {
-  if (!web_contents())
+  if (!web_contents_)
     return;
 
   // Create the DevtoolsInteractionTracker lazily (note that this call is a
   // no-op if the object was already created).
   subresource_filter::DevtoolsInteractionTracker::CreateForWebContents(
-      web_contents());
+      web_contents_.get());
 
   subresource_filter::DevtoolsInteractionTracker::FromWebContents(
-      web_contents())
+      web_contents_.get())
       ->ToggleForceActivation(enabled);
 }
 
@@ -59,8 +58,8 @@
     std::unique_ptr<GetInstallabilityErrorsCallback> callback) {
   auto errors = std::make_unique<protocol::Array<std::string>>();
   webapps::InstallableManager* manager =
-      web_contents()
-          ? webapps::InstallableManager::FromWebContents(web_contents())
+      web_contents_
+          ? webapps::InstallableManager::FromWebContents(web_contents_.get())
           : nullptr;
   if (!manager) {
     callback->sendFailure(
@@ -101,8 +100,8 @@
 void PageHandler::GetManifestIcons(
     std::unique_ptr<GetManifestIconsCallback> callback) {
   webapps::InstallableManager* manager =
-      web_contents()
-          ? webapps::InstallableManager::FromWebContents(web_contents())
+      web_contents_
+          ? webapps::InstallableManager::FromWebContents(web_contents_.get())
           : nullptr;
 
   if (!manager) {
diff --git a/chrome/browser/devtools/protocol/page_handler.h b/chrome/browser/devtools/protocol/page_handler.h
index a69b871..e5ddc3b 100644
--- a/chrome/browser/devtools/protocol/page_handler.h
+++ b/chrome/browser/devtools/protocol/page_handler.h
@@ -5,9 +5,9 @@
 #ifndef CHROME_BROWSER_DEVTOOLS_PROTOCOL_PAGE_HANDLER_H_
 #define CHROME_BROWSER_DEVTOOLS_PROTOCOL_PAGE_HANDLER_H_
 
+#include "base/memory/weak_ptr.h"
 #include "chrome/browser/devtools/protocol/forward.h"
 #include "chrome/browser/devtools/protocol/page.h"
-#include "content/public/browser/web_contents_observer.h"
 
 namespace content {
 struct InstallabilityError;
@@ -16,8 +16,7 @@
 
 class SkBitmap;
 
-class PageHandler : public protocol::Page::Backend,
-                    public content::WebContentsObserver {
+class PageHandler : public protocol::Page::Backend {
  public:
   PageHandler(content::WebContents* web_contents,
               protocol::UberDispatcher* dispatcher);
@@ -44,6 +43,7 @@
       std::unique_ptr<GetManifestIconsCallback> callback,
       const SkBitmap* primary_icon);
 
+  base::WeakPtr<content::WebContents> web_contents_;
   bool enabled_ = false;
 
   DISALLOW_COPY_AND_ASSIGN(PageHandler);
diff --git a/chrome/browser/extensions/api/file_system/OWNERS b/chrome/browser/extensions/api/file_system/OWNERS
index 64f6677..babd845 100644
--- a/chrome/browser/extensions/api/file_system/OWNERS
+++ b/chrome/browser/extensions/api/file_system/OWNERS
@@ -1,2 +1,2 @@
-benwells@chromium.org
 sammc@chromium.org
+file://ui/file_manager/OWNERS
diff --git a/chrome/browser/extensions/api/virtual_keyboard_private/chrome_virtual_keyboard_delegate.cc b/chrome/browser/extensions/api/virtual_keyboard_private/chrome_virtual_keyboard_delegate.cc
index 9458bff..8bd5ad3 100644
--- a/chrome/browser/extensions/api/virtual_keyboard_private/chrome_virtual_keyboard_delegate.cc
+++ b/chrome/browser/extensions/api/virtual_keyboard_private/chrome_virtual_keyboard_delegate.cc
@@ -554,6 +554,9 @@
       "assistiveAutoCorrect",
       base::FeatureList::IsEnabled(chromeos::features::kAssistAutoCorrect)));
   features.Append(GenerateFeatureFlag(
+      "systemkoreanphysicaltyping",
+      chromeos::features::IsSystemKoreanPhysicalTypingEnabled()));
+  features.Append(GenerateFeatureFlag(
       "systemlatinphysicaltyping",
       chromeos::features::IsSystemLatinPhysicalTypingEnabled()));
   features.Append(GenerateFeatureFlag(
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
index 0b64b20e6..ede25bbe 100644
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -1627,6 +1627,11 @@
     "expiry_milestone": 95
   },
   {
+    "name": "enable-cros-system-korean-physical-typing",
+    "owners": [ "shend", "essential-inputs-team@google.com" ],
+    "expiry_milestone": 97
+  },
+  {
     "name": "enable-cros-system-latin-physical-typing",
     "owners": [ "shend", "essential-inputs-team@google.com" ],
     "expiry_milestone": 95
@@ -3296,6 +3301,11 @@
     "expiry_milestone": 100
   },
   {
+    "name": "hdrnet-override",
+    "owners": [ "jcliang", "chromeos-canera-eng@google.com" ],
+    "expiry_milestone": 100
+  },
+  {
     "name": "heavy-ad-privacy-mitigations",
     "owners": [ "johnidel", "jkarlin" ],
     "expiry_milestone": 97
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
index c37e875b..8e9f622c 100644
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -4016,6 +4016,10 @@
 const char kForceControlFaceAeDescription[] =
     "Control this flag to force enable or disable face AE for camera";
 
+const char kHdrNetOverrideName[] = "HDRnet control override";
+const char kHdrNetOverrideDescription[] =
+    "Overrides the default to forcibly enable or disable the HDRnet feature";
+
 const char kCategoricalSearchName[] = "Launcher Categorical Search";
 const char kCategoricalSearchDescription[] =
     "Launcher search results grouped by categories";
@@ -4910,6 +4914,12 @@
     "OS settings UI to provide controls for OS data types. Requires "
     "#split-settings to be enabled.";
 
+const char kSystemKoreanPhysicalTypingName[] =
+    "Use system IME for Korean typing";
+const char kSystemKoreanPhysicalTypingDescription[] =
+    "Use the system input engine instead of the Chrome extension for physical "
+    "typing in Korean.";
+
 const char kSystemLatinPhysicalTypingName[] =
     "Use system IME for latin-script typing";
 const char kSystemLatinPhysicalTypingDescription[] =
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
index 2734a6c2..578b8d5 100644
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -2294,6 +2294,9 @@
 extern const char kForceControlFaceAeName[];
 extern const char kForceControlFaceAeDescription[];
 
+extern const char kHdrNetOverrideName[];
+extern const char kHdrNetOverrideDescription[];
+
 extern const char kCategoricalSearchName[];
 extern const char kCategoricalSearchDescription[];
 
@@ -2830,6 +2833,9 @@
 extern const char kSplitSettingsSyncName[];
 extern const char kSplitSettingsSyncDescription[];
 
+extern const char kSystemKoreanPhysicalTypingName[];
+extern const char kSystemKoreanPhysicalTypingDescription[];
+
 extern const char kSystemLatinPhysicalTypingName[];
 extern const char kSystemLatinPhysicalTypingDescription[];
 
diff --git a/chrome/browser/google/google_brand_code_map_chromeos.cc b/chrome/browser/google/google_brand_code_map_chromeos.cc
index 99005c0..2e26ea5 100644
--- a/chrome/browser/google/google_brand_code_map_chromeos.cc
+++ b/chrome/browser/google/google_brand_code_map_chromeos.cc
@@ -50,6 +50,7 @@
                      {"ADID", {"XDMY", "QHTP", "PBND"}},
                      {"AJIM", {"XQAQ", "WFLV", "AMBR"}},
                      {"ALRH", {"XDKE", "TDIH", "VLER"}},
+                     {"ANAE", {"IWTJ", "CISE", "SLJZ"}},
                      {"ANLW", {"MTZL", "LFDW", "IHRZ"}},
                      {"AOKF", {"ZKSY", "KRPA", "QAZL"}},
                      {"AOPA", {"TTBL", "HHHA", "SADO"}},
@@ -58,6 +59,7 @@
                      {"AOPD", {"PFAH", "NIUP", "MQIF"}},
                      {"AOPE", {"ZMYO", "BBQM", "UOUV"}},
                      {"APXY", {"JUFT", "VCUF", "TMSS"}},
+                     {"AQCO", {"TNLZ", "FHPA", "XFUO"}},
                      {"ARBI", {"GFHA", "FBQD", "WRQR"}},
                      {"ASCT", {"CTRF", "LBBD", "YBND"}},
                      {"ASUA", {"IEIT", "JAIV", "MURN"}},
@@ -78,6 +80,7 @@
                      {"BCOL", {"YJDV", "GSIC", "BAUL"}},
                      {"BDIW", {"UDUG", "TRYQ", "PWFV"}},
                      {"BKLL", {"DJXO", "KLUN", "DJNO"}},
+                     {"BLXA", {"VLID", "JNUQ", "IKRB"}},
                      {"BMNE", {"HLSA", "WXJQ", "TULR"}},
                      {"CBUY", {"POUW", "GHJY", "USXU"}},
                      {"CDYS", {"CJRA", "BIRA", "NFVP"}},
@@ -119,6 +122,7 @@
                      {"EUHF", {"RZPG", "FQYM", "IIBT"}},
                      {"EWFK", {"XAMW", "XCJY", "NWVP"}},
                      {"EXCQ", {"LAOZ", "QTVX", "ZCLW"}},
+                     {"EXEM", {"RIPQ", "SYMM", "GONB"}},
                      {"FBTP", {"XLDO", "TLOM", "FYMS"}},
                      {"FCPG", {"WITB", "FOXJ", "YJQZ"}},
                      {"FCVS", {"HOBX", "YMDN", "GKTP"}},
@@ -133,6 +137,7 @@
                      {"FSGY", {"PJQC", "RHZW", "POVI"}},
                      {"FWVK", {"MUTD", "GWKK", "SQSC"}},
                      {"FXEL", {"FVLL", "QOGS", "SVKH"}},
+                     {"FYSO", {"HFDH", "WNPK", "ZTIK"}},
                      {"GBWE", {"DKLE", "OUDI", "VWJC"}},
                      {"GBXM", {"ONLL", "YBJS", "SOVT"}},
                      {"GFMQ", {"DRLH", "HVWY", "OYYM"}},
@@ -144,6 +149,7 @@
                      {"GOKU", {"PRAG", "PQVF", "PIDI"}},
                      {"GVLR", {"HCKU", "VUNU", "FIRF"}},
                      {"GWDK", {"MQJZ", "WTMH", "ZOYJ"}},
+                     {"GXSC", {"MQSO", "FZZK", "QOBC"}},
                      {"GXYK", {"MLCI", "HWQK", "ERBL"}},
                      {"HDPY", {"JCUZ", "TMKK", "XMVQ"}},
                      {"HFAN", {"ZQNI", "RPSS", "VFHT"}},
@@ -165,6 +171,7 @@
                      {"HPZX", {"DNXN", "VHRG", "XTRZ"}},
                      {"HPZY", {"RAWP", "CNRC", "TPIA"}},
                      {"HPZZ", {"FJGP", "GMLT", "SZQX"}},
+                     {"HQLQ", {"PGTQ", "NSOB", "GIPH"}},
                      {"HRIZ", {"BJMA", "SKSL", "XBUU"}},
                      {"HTPV", {"LAEC", "NGRO", "BGEX"}},
                      {"HUIJ", {"EVJI", "RNMR", "JQZR"}},
@@ -221,8 +228,10 @@
                      {"LEAO", {"MKOE", "YJSI", "QQMN"}},
                      {"LEAP", {"AEZG", "JOYE", "JHWK"}},
                      {"LGAA", {"YOGJ", "UGWO", "DAMU"}},
+                     {"LGAB", {"EQRP", "DLUM", "GMAI"}},
                      {"LIYT", {"CMCZ", "YUAJ", "MFPX"}},
                      {"LKSP", {"JVAJ", "ZERV", "YAYV"}},
+                     {"LLJI", {"GCIS", "UIQV", "TKJS"}},
                      {"LOEA", {"YYMF", "ZFDK", "KYJQ"}},
                      {"LOEB", {"HPPW", "LGZO", "NZIZ"}},
                      {"LOEC", {"FHUN", "VOTY", "IGUT"}},
@@ -284,6 +293,7 @@
                      {"LULQ", {"DEHI", "QYXC", "KAGT"}},
                      {"LYFT", {"LMQF", "CYMI", "ZGEF"}},
                      {"LYLN", {"XXWY", "JEUV", "RSOC"}},
+                     {"LYVN", {"USOR", "ASKR", "LPGD"}},
                      {"MAII", {"EOHR", "XZOT", "VJJS"}},
                      {"MBLE", {"KOCV", "ZLFP", "HOVE"}},
                      {"MCDN", {"BAOV", "GLVV", "XHGO"}},
@@ -304,11 +314,12 @@
                      {"NISD", {"MISA", "YDPG", "NCLQ"}},
                      {"NMOG", {"UYQU", "ZWTV", "TQFQ"}},
                      {"NOMD", {"GZLV", "UNZR", "FVOP"}},
-                     {"NOMD", {"GZLV", "UNZR", "FVOP"}},
                      {"NPEC", {"BMGD", "YETH", "XAWJ"}},
                      {"NSXI", {"VYQS", "HGFQ", "SLFL"}},
                      {"NZRH", {"NOUG", "UDYG", "ZGAU"}},
+                     {"ODVK", {"VIOP", "MIHJ", "VXFY"}},
                      {"OFPE", {"YFOO", "UIGY", "PFGZ"}},
+                     {"OFPO", {"TSWQ", "EBUR", "JASZ"}},
                      {"OIFF", {"MLXE", "KFNX", "CRAQ"}},
                      {"OIXD", {"UNMJ", "EGQA", "GIAQ"}},
                      {"OKWC", {"RGFB", "UPFP", "HUVK"}},
@@ -328,6 +339,7 @@
                      {"QBJC", {"WAQG", "MSEN", "FQYE"}},
                      {"QBTA", {"UDQV", "UIZV", "SGMN"}},
                      {"QCDF", {"HOUC", "PKTP", "APSD"}},
+                     {"QGJP", {"SUJW", "VGYV", "DOGG"}},
                      {"QJHH", {"TIHM", "SOII", "SXVL"}},
                      {"QKTA", {"USGV", "UPMS", "ZVTZ"}},
                      {"QLDV", {"BJRT", "ZICU", "URBL"}},
@@ -347,6 +359,7 @@
                      {"RKRB", {"OPOY", "QMZZ", "FAGR"}},
                      {"RLGE", {"NTKV", "LOTA", "MJVG"}},
                      {"RNPH", {"TSIF", "ESCP", "GISR"}},
+                     {"RVKU", {"EVWH", "THXH", "GROS"}},
                      {"RVRM", {"MZJU", "IGXP", "DSJP"}},
                      {"RXGN", {"WHNA", "DWVK", "FRWP"}},
                      {"RYMB", {"ZITN", "TMGX", "HVCV"}},
@@ -368,6 +381,7 @@
                      {"SOCA", {"AJGR", "IYZW", "NPDX"}},
                      {"SSLV", {"IUFZ", "NTYF", "TWGJ"}},
                      {"SSVR", {"NZKV", "NGLW", "LDCH"}},
+                     {"STMU", {"HKNS", "OFBT", "RWDO"}},
                      {"SUCA", {"JSZT", "IBUF", "HMEZ"}},
                      {"SWLP", {"GLDC", "WZKJ", "GTXT"}},
                      {"TAAB", {"ZBMY", "NYDT", "CXYZ"}},
@@ -386,8 +400,10 @@
                      {"TVRZ", {"XWBR", "VSOG", "WGJH"}},
                      {"TXMN", {"WTVY", "GJTZ", "KMRI"}},
                      {"TZIV", {"XWTU", "JFLV", "JLEU"}},
+                     {"UBKE", {"CPTX", "EGAC", "MRXT"}},
                      {"UGAY", {"YDHM", "HVCY", "ILHO"}},
                      {"UMAU", {"FKAK", "JCTZ", "GDUU"}},
+                     {"UPPG", {"HYSS", "KHZT", "QQZJ"}},
                      {"UQDN", {"LWWF", "SCDS", "IKKY"}},
                      {"UQUC", {"YLQO", "IDZV", "PXQW"}},
                      {"URZD", {"QDAL", "YLWB", "XCCP"}},
@@ -412,11 +428,13 @@
                      {"WMPI", {"POXG", "VCJD", "WEGX"}},
                      {"WMVU", {"GMMR", "AVVS", "IMDF"}},
                      {"WNNA", {"ERXU", "TWMI", "ZOER"}},
+                     {"WPBT", {"VUKV", "DLTH", "CQBD"}},
                      {"WVRW", {"GJGN", "QQFA", "AGVP"}},
                      {"WXZG", {"IUGR", "JOEE", "PTHY"}},
                      {"XBWL", {"IQEI", "JEGU", "QSKW"}},
                      {"XFUX", {"UHAM", "NEHU", "SHMG"}},
                      {"XHVI", {"KVWL", "GQOJ", "JLLW"}},
+                     {"XIYN", {"ZZYC", "OJOW", "NTKR"}},
                      {"XLUK", {"ARRX", "SCBM", "TIWT"}},
                      {"XOGA", {"BIWO", "JPWZ", "YYDG"}},
                      {"XOKS", {"DEVR", "YKLR", "QYBF"}},
@@ -424,6 +442,7 @@
                      {"XVYQ", {"UAVB", "OEMI", "VQVK"}},
                      {"XWJE", {"KDZI", "IYPJ", "ERIM"}},
                      {"YAVR", {"DHAY", "KBWN", "BBPJ"}},
+                     {"YEGM", {"SEQF", "OXKW", "OFEF"}},
                      {"YFVF", {"NPWS", "PUZZ", "TTCZ"}},
                      {"YGHA", {"BMDT", "AUXW", "GYPE"}},
                      {"YHYU", {"CDLM", "QDXQ", "HPTE"}},
@@ -447,6 +466,7 @@
                      {"ZJLO", {"HLMS", "OHWG", "HMAL"}},
                      {"ZKJH", {"OBDQ", "OUAQ", "SPYY"}},
                      {"ZLBC", {"DJCJ", "HNGZ", "IRYZ"}},
+                     {"ZPIS", {"VXIY", "HUUG", "GHXQ"}},
                      {"ZSKM", {"JPEZ", "FTUS", "ZFUF"}},
                      {"ZSLY", {"TQED", "GKPV", "BHWH"}},
                      {"ZZAB", {"WVIK", "IUXK", "ZCIK"}},
diff --git a/chrome/browser/metrics/perf/profile_provider_unittest_main.cc b/chrome/browser/metrics/perf/profile_provider_unittest_main.cc
index efa7c1d..f9f0b0f 100644
--- a/chrome/browser/metrics/perf/profile_provider_unittest_main.cc
+++ b/chrome/browser/metrics/perf/profile_provider_unittest_main.cc
@@ -36,6 +36,17 @@
 // beyond the collection duration used.
 const base::TimeDelta kCollectionDoneTimeout = base::TimeDelta::FromSeconds(20);
 
+CollectionParams GetTestCollectionParams() {
+  CollectionParams test_params;
+  test_params.collection_duration = kCollectionDuration;
+  test_params.resume_from_suspend.sampling_factor = 1;
+  test_params.resume_from_suspend.max_collection_delay = kMaxCollectionDelay;
+  test_params.restore_session.sampling_factor = 1;
+  test_params.restore_session.max_collection_delay = kMaxCollectionDelay;
+  test_params.periodic_interval = kPeriodicCollectionInterval;
+  return test_params;
+}
+
 class TestPerfCollector : public PerfCollector {
  public:
   explicit TestPerfCollector(const CollectionParams& params) : PerfCollector() {
@@ -58,15 +69,9 @@
 // Allows access to some private methods for testing.
 class TestProfileProvider : public ProfileProvider {
  public:
-  TestProfileProvider() {
-    CollectionParams test_params;
-    test_params.collection_duration = kCollectionDuration;
-    test_params.resume_from_suspend.sampling_factor = 1;
-    test_params.resume_from_suspend.max_collection_delay = kMaxCollectionDelay;
-    test_params.restore_session.sampling_factor = 1;
-    test_params.restore_session.max_collection_delay = kMaxCollectionDelay;
-    test_params.periodic_interval = kPeriodicCollectionInterval;
+  TestProfileProvider() : TestProfileProvider(GetTestCollectionParams()) {}
 
+  explicit TestProfileProvider(const CollectionParams& test_params) {
     collectors_.clear();
     auto metric_provider = std::make_unique<TestMetricProvider>(
         std::make_unique<TestPerfCollector>(test_params), nullptr);
@@ -280,7 +285,6 @@
   AssertProfileData(SampledProfile::RESTORE_SESSION);
 }
 
-// Flaky on Chrome OS: crbug.com/1188498.
 TEST_F(ProfileProviderRealCollectionTest, OnJankStarted) {
   // Trigger a resume from suspend.
   profile_provider_->OnJankStarted();
@@ -291,16 +295,26 @@
   AssertProfileData(SampledProfile::JANKY_TASK);
 }
 
-// TODO(crbug.com/1177150) Re-enable test
-TEST_F(ProfileProviderRealCollectionTest, DISABLED_OnJankStopped) {
+TEST_F(ProfileProviderRealCollectionTest, OnJankStopped) {
+  // Override the default collection duration.
+  auto test_params_override = GetTestCollectionParams();
+  auto full_collection_duration = kCollectionDuration * 2;
+  test_params_override.collection_duration = full_collection_duration;
+
+  // Reinitialize |profile_provider_| with the override.
+  profile_provider_ =
+      std::make_unique<TestProfileProvider>(test_params_override);
+  profile_provider_->Init();
+
   profile_provider_->OnJankStarted();
 
   // Call ProfileProvider::OnJankStopped() halfway through the collection
   // duration.
   base::OneShotTimer stop_timer;
   base::RunLoop run_loop;
-  // The jank lasts for 0.75*(collection duration), which is 1.5 sec.
-  stop_timer.Start(FROM_HERE, kCollectionDuration * 3 / 4,
+  // The jank lasts for 0.75*(collection duration). We'd like to stop the
+  // collection before the full duration elapses.
+  stop_timer.Start(FROM_HERE, full_collection_duration * 3 / 4,
                    base::BindLambdaForTesting([&]() {
                      profile_provider_->OnJankStopped();
                      run_loop.Quit();
diff --git a/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android.cc b/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android.cc
index 3f99a88..f083e051 100644
--- a/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android.cc
+++ b/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android.cc
@@ -22,53 +22,82 @@
 const std::vector<GURL>
 OptimizationGuideTabUrlProviderAndroid::GetUrlsOfActiveTabs(
     const base::TimeDelta& duration_since_last_shown) {
-  std::vector<std::pair<GURL, absl::optional<base::TimeTicks>>>
-      urls_and_active_time;
-  for (const TabModel* tab_model : TabModelList::models()) {
+  std::vector<TabRepresentation> tabs;
+
+  const TabModelList::TabModelVector& tab_models = TabModelList::models();
+  for (size_t tab_model_idx = 0; tab_model_idx < tab_models.size();
+       tab_model_idx++) {
+    const TabModel* tab_model = tab_models[tab_model_idx];
     if (tab_model->GetProfile() != profile_)
       continue;
 
-    int tab_count = tab_model->GetTabCount();
-    for (int i = 0; i < tab_count; i++) {
-      content::WebContents* web_contents = tab_model->GetWebContentsAt(i);
+    size_t tab_count = static_cast<size_t>(tab_model->GetTabCount());
+    for (size_t tab_idx = 0; tab_idx < tab_count; tab_idx++) {
+      TabRepresentation tab;
+      tab.tab_model_index = tab_model_idx;
+      tab.tab_index = tab_idx;
+
+      content::WebContents* web_contents = tab_model->GetWebContentsAt(tab_idx);
       if (web_contents) {
         if ((base::TimeTicks::Now() - web_contents->GetLastActiveTime()) <
             duration_since_last_shown) {
-          urls_and_active_time.push_back(
-              std::make_pair(web_contents->GetLastCommittedURL(),
-                             web_contents->GetLastActiveTime()));
+          tab.url = web_contents->GetLastCommittedURL();
+          tab.last_active_time = web_contents->GetLastActiveTime();
+          tabs.push_back(tab);
         }
         continue;
       }
 
       // Fall back to the tab if there isn't a WebContents created for the tab.
-      TabAndroid* tab = tab_model->GetTabAt(i);
-      if (tab) {
+      TabAndroid* tab_android = tab_model->GetTabAt(tab_idx);
+      if (tab_android) {
         // Just push back the URL even though we have no idea if it was shown
         // before. TabAndroid does not expose the last active time.
-        urls_and_active_time.push_back(
-            std::make_pair(tab->GetURL(), absl::nullopt));
+        tab.url = tab_android->GetURL();
+        tabs.push_back(tab);
       }
     }
   }
-  // Sort by descending active time.
-  std::sort(urls_and_active_time.begin(), urls_and_active_time.end(),
-            [](const std::pair<GURL, absl::optional<base::TimeTicks>>& a,
-               const std::pair<GURL, absl::optional<base::TimeTicks>>& b) {
-              if (a.second && b.second)
-                return *a.second > *b.second;
-              // If b.second has a value, then put that in front. Otherwise,
-              // leave the same order.
-              return !b.second.has_value();
-            });
+  SortTabs(&tabs);
 
   std::vector<GURL> urls;
-  urls.reserve(urls_and_active_time.size());
-  for (const auto& url_and_active_time : urls_and_active_time) {
-    urls.emplace_back(url_and_active_time.first);
+  urls.reserve(tabs.size());
+  for (const auto& tab : tabs) {
+    urls.emplace_back(tab.url);
   }
   return urls;
 }
 
+void OptimizationGuideTabUrlProviderAndroid::SortTabs(
+    std::vector<TabRepresentation>* tabs) {
+  std::sort(tabs->begin(), tabs->end(),
+            [](const TabRepresentation& a, const TabRepresentation& b) {
+              // Attempt to sort by last active time if both are present.
+              if (a.last_active_time && b.last_active_time)
+                return *a.last_active_time > *b.last_active_time;
+
+              // If both are not present, sort by its position in the tab model
+              // list, assuming that the earlier it appears, the more likely it
+              // will get revisited.
+              if (!a.last_active_time && !b.last_active_time) {
+                return (a.tab_model_index != b.tab_model_index)
+                           ? (a.tab_model_index < b.tab_model_index)
+                           : (a.tab_index < b.tab_index);
+              }
+
+              // Otherwise, if one of the tabs has an active time, put that
+              // first.
+              return a.last_active_time.value_or(base::TimeTicks::Min()) >
+                     b.last_active_time.value_or(base::TimeTicks::Min());
+            });
+}
+
+OptimizationGuideTabUrlProviderAndroid::TabRepresentation::TabRepresentation() =
+    default;
+OptimizationGuideTabUrlProviderAndroid::TabRepresentation::
+    ~TabRepresentation() = default;
+OptimizationGuideTabUrlProviderAndroid::TabRepresentation::TabRepresentation(
+    const TabRepresentation&) = default;
+
 }  // namespace android
 }  // namespace optimization_guide
diff --git a/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android.h b/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android.h
index 1291bebd..996f9a2 100644
--- a/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android.h
+++ b/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android.h
@@ -6,6 +6,7 @@
 #define CHROME_BROWSER_OPTIMIZATION_GUIDE_ANDROID_OPTIMIZATION_GUIDE_TAB_URL_PROVIDER_ANDROID_H_
 
 #include "components/optimization_guide/core/tab_url_provider.h"
+#include "third_party/abseil-cpp/absl/types/optional.h"
 
 class Profile;
 
@@ -25,6 +26,31 @@
       const base::TimeDelta& duration_since_last_shown) override;
 
  private:
+  friend class OptimizationGuideTabUrlProviderAndroidTest;
+
+  struct TabRepresentation {
+    TabRepresentation();
+    ~TabRepresentation();
+    TabRepresentation(const TabRepresentation&);
+
+    // The URL displayed on the tab.
+    GURL url;
+
+    // The index of the tab model the tab is in.
+    size_t tab_model_index;
+    // The index of the tab within the tab model.
+    size_t tab_index;
+
+    // The time the tab was last active.
+    absl::optional<base::TimeTicks> last_active_time;
+  };
+
+  // Sorts |tabs|. Sorts by descending last active time (if present) and then by
+  // its position in the tab model.
+  //
+  // Exposed for testing purposes.
+  void SortTabs(std::vector<TabRepresentation>* tabs);
+
   // The profile associated with this tab URL provider.
   Profile* profile_;
 };
diff --git a/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android_unittest.cc b/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android_unittest.cc
index 83eb729..182a02f 100644
--- a/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android_unittest.cc
+++ b/chrome/browser/optimization_guide/android/optimization_guide_tab_url_provider_android_unittest.cc
@@ -16,6 +16,8 @@
 namespace android {
 namespace {
 
+using FakeTab = std::pair<GURL, absl::optional<base::TimeTicks>>;
+
 using ::testing::ElementsAre;
 
 // FakeTabModel that can be used for testing Android tab behavior.
@@ -59,6 +61,8 @@
   std::vector<content::WebContents*> web_contents_list_;
 };
 
+}  // namespace
+
 class OptimizationGuideTabUrlProviderAndroidTest
     : public ChromeRenderViewHostTestHarness {
  public:
@@ -80,6 +84,33 @@
     return tab_url_provider_.get();
   }
 
+  std::vector<GURL> GetSortedURLsForTabs(
+      const std::vector<std::vector<FakeTab>>& fake_tabs) {
+    std::vector<OptimizationGuideTabUrlProviderAndroid::TabRepresentation> tabs;
+    for (size_t tab_model_idx = 0; tab_model_idx < fake_tabs.size();
+         tab_model_idx++) {
+      for (size_t tab_idx = 0; tab_idx < fake_tabs[tab_model_idx].size();
+           tab_idx++) {
+        OptimizationGuideTabUrlProviderAndroid::TabRepresentation tab;
+        tab.tab_model_index = tab_model_idx;
+        tab.tab_index = tab_idx;
+        std::pair<GURL, absl::optional<base::TimeTicks>> fake_tab =
+            fake_tabs[tab_model_idx][tab_idx];
+        tab.url = fake_tab.first;
+        tab.last_active_time = fake_tab.second;
+        tabs.push_back(tab);
+      }
+    }
+    tab_url_provider_->SortTabs(&tabs);
+
+    std::vector<GURL> sorted_urls;
+    sorted_urls.reserve(tabs.size());
+    for (const auto& tab : tabs) {
+      sorted_urls.push_back(tab.url);
+    }
+    return sorted_urls;
+  }
+
  private:
   std::unique_ptr<OptimizationGuideTabUrlProviderAndroid> tab_url_provider_;
 };
@@ -138,6 +169,28 @@
                                 GURL("https://example.com/a")));
 }
 
-}  // namespace
+TEST_F(OptimizationGuideTabUrlProviderAndroidTest, SortsTabsCorrectly) {
+  std::vector<std::vector<FakeTab>> fake_tabs;
+  fake_tabs.push_back({
+      std::make_pair(GURL("https://example.com/third"),
+                     base::TimeTicks::Now() - base::TimeDelta::FromDays(3)),
+      std::make_pair(GURL("https://example.com/second"),
+                     base::TimeTicks::Now() - base::TimeDelta::FromDays(2)),
+      std::make_pair(GURL("https://example.com/0-2"), absl::nullopt),
+  });
+  fake_tabs.push_back({
+      std::make_pair(GURL("https://example.com/first"),
+                     base::TimeTicks::Now() - base::TimeDelta::FromDays(1)),
+      std::make_pair(GURL("https://example.com/1-1"), absl::nullopt),
+  });
+
+  EXPECT_THAT(GetSortedURLsForTabs(fake_tabs),
+              ElementsAre(GURL("https://example.com/first"),
+                          GURL("https://example.com/second"),
+                          GURL("https://example.com/third"),
+                          GURL("https://example.com/0-2"),
+                          GURL("https://example.com/1-1")));
+}
+
 }  // namespace android
 }  // namespace optimization_guide
diff --git a/chrome/browser/optimization_guide/page_content_annotations_service_browsertest.cc b/chrome/browser/optimization_guide/page_content_annotations_service_browsertest.cc
index db2f106..7923acd2 100644
--- a/chrome/browser/optimization_guide/page_content_annotations_service_browsertest.cc
+++ b/chrome/browser/optimization_guide/page_content_annotations_service_browsertest.cc
@@ -397,8 +397,14 @@
 };
 
 // Regression test for crbug/1204162.
+// Flaky on Win7 (32) Tests (https://crbug.com/1239996).
+#if defined(OS_WIN)
+#define MAYBE_ModelLoadsAndExecutes DISABLED_ModelLoadsAndExecutes
+#else
+#define MAYBE_ModelLoadsAndExecutes ModelLoadsAndExecutes
+#endif
 IN_PROC_BROWSER_TEST_F(PageContentAnnotationsServiceLoadEachExecutionTest,
-                       ModelLoadsAndExecutes) {
+                       MAYBE_ModelLoadsAndExecutes) {
   base::HistogramTester histogram_tester;
 
   GURL url(embedded_test_server()->GetURL("a.com", "/hello.html"));
diff --git a/chrome/browser/pdf/pdf_extension_test.cc b/chrome/browser/pdf/pdf_extension_test.cc
index 4ac4a6b..03cd9e03 100644
--- a/chrome/browser/pdf/pdf_extension_test.cc
+++ b/chrome/browser/pdf/pdf_extension_test.cc
@@ -1867,7 +1867,13 @@
   WebContents* guest_contents_;
 };
 
-IN_PROC_BROWSER_TEST_P(PDFExtensionLinkClickTest, CtrlLeft) {
+// Flaky on Mac11 test builders. (crbug.com/1239995)
+#if defined(OS_MAC)
+#define MAYBE_CtrlLeft DISABLED_CtrlLeft
+#else
+#define MAYBE_CtrlLeft CtrlLeft
+#endif
+IN_PROC_BROWSER_TEST_P(PDFExtensionLinkClickTest, MAYBE_CtrlLeft) {
   LoadTestLinkPdfGetGuestContents();
 
   WebContents* web_contents = GetActiveWebContents();
@@ -1939,7 +1945,13 @@
   EXPECT_EQ("http://www.example.com/", url.spec());
 }
 
-IN_PROC_BROWSER_TEST_P(PDFExtensionLinkClickTest, ShiftMiddle) {
+// Flaky on Mac11 test builders. (crbug.com/1239995)
+#if defined(OS_MAC)
+#define MAYBE_ShiftMiddle DISABLED_ShiftMiddle
+#else
+#define MAYBE_ShiftMiddle ShiftMiddle
+#endif
+IN_PROC_BROWSER_TEST_P(PDFExtensionLinkClickTest, MAYBE_ShiftMiddle) {
   LoadTestLinkPdfGetGuestContents();
 
   WebContents* web_contents = GetActiveWebContents();
diff --git a/chrome/browser/profiles/incognito_profile_containment_browsertest.cc b/chrome/browser/profiles/incognito_profile_containment_browsertest.cc
index b6f8fb5..a47a72c 100644
--- a/chrome/browser/profiles/incognito_profile_containment_browsertest.cc
+++ b/chrome/browser/profiles/incognito_profile_containment_browsertest.cc
@@ -30,7 +30,8 @@
 
 // List of file or directory prefixes that are known to be modified during an
 // Incognito session.
-// TODO(http://crbug.com/1234755): Audit why these files are changed.
+// TODO(http://crbug.com/1234755): Add audit message (or fix the issue) for all
+// paths that do not have a comment.
 constexpr std::array<const char*, 10> kAllowListPrefixesForAllPlatforms = {
     "/Default/data_reduction_proxy_leveldb",
     "/Default/Extension State",
@@ -48,7 +49,11 @@
 #elif defined(OS_WIN)
 constexpr std::array<const char*, 5> kAllowListPrefixesForPlatform = {
     "/Default/heavy_ad_intervention_opt_out.db", "/Default/Shortcuts",
-    "/Default/Top Sites", "/GrShaderCache/old_GPUCache", "/Last Browser"};
+    "/Default/Top Sites", "/GrShaderCache/old_GPUCache",
+
+    // This file only contains the path to the latest executable of Chrome,
+    // therefore it's safe to be written in Incognito.
+    "/Last Browser"};
 #elif defined(OS_CHROMEOS)
 constexpr std::array<const char*, 7> kAllowListPrefixesForPlatform = {
     "/test-user/.variations-list.txt",
@@ -200,12 +205,12 @@
 // Open a page in a separate session to ensure all files that are created
 // because of the regular profile start up are already created.
 IN_PROC_BROWSER_TEST_F(IncognitoProfileContainmentBrowserTest,
-                       PRE_SimplePageLoadDoesNotModifyProfileFolder) {
+                       PRE_StoringDataDoesNotModifyProfileFolder) {
   ui_test_utils::NavigateToURL(browser(),
                                embedded_test_server()->GetURL("/empty.html"));
 }
 
-// Test that Opening a simple page in Incognito does not modify regular profile
+// Test that calling several data storage APIs does not modify regular profile
 // directory.
 // If you are storing from a "regular" (non off-the-record) profile and your CL
 // breaks this test, please first check if it is intended to change profile
@@ -213,7 +218,7 @@
 // so, please add the file to the allow_list at the top and file a bug to follow
 // up.
 IN_PROC_BROWSER_TEST_F(IncognitoProfileContainmentBrowserTest,
-                       SimplePageLoadDoesNotModifyProfileFolder) {
+                       StoringDataDoesNotModifyProfileFolder) {
   // Take a snapshot of regular profile.
   Snapshot before_incognito;
   GetUserDirectorySnapshot(before_incognito, /*compute_file_hashes=*/true);
@@ -221,8 +226,22 @@
   // Run an Incognito session.
   Browser* browser = chrome::FindLastActive();
   EXPECT_TRUE(browser->profile()->IsOffTheRecord());
-  ui_test_utils::NavigateToURL(browser,
-                               embedded_test_server()->GetURL("/hello.html"));
+  ui_test_utils::NavigateToURL(
+      browser, embedded_test_server()->GetURL("/browsing_data/site_data.html"));
+
+  const std::vector<std::string> kStorageTypes{
+      "CacheStorage", "Cookie",        "FileSystem",    "IndexedDb",
+      "LocalStorage", "ServiceWorker", "SessionCookie", "WebSql"};
+
+  for (const std::string& type : kStorageTypes) {
+    bool data = false;
+    EXPECT_TRUE(content::ExecuteScriptAndExtractBool(
+        browser->tab_strip_model()->GetActiveWebContents(), "set" + type + "()",
+        &data));
+
+    ASSERT_TRUE(data) << "Couldn't create data for: " << type;
+  }
+
   CloseBrowserSynchronously(browser);
 
   // Take another snapshot of regular profile and ensure it is not changed.
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_te.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_te.xtb
index 2642b1e..664502f 100644
--- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_te.xtb
+++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_te.xtb
@@ -3,7 +3,7 @@
 <translationbundle lang="te">
 <translation id="1009046985747440431">నావిగేట్ చేయడం కోసం పైకి లేదా కిందికి బాణాన్ని నొక్కండి; యాక్టివేట్‌ చేయడం కోసం enter నొక్కండి</translation>
 <translation id="1011903154582639569">కీని కనుగొని, టైప్ చేయడానికి ఎత్తండి</translation>
-<translation id="1012173283529841972">జాబితా అంశం</translation>
+<translation id="1012173283529841972">లిస్ట్‌ అంశం</translation>
 <translation id="1013742170491673792">srched</translation>
 <translation id="1014370462248694370">రెండు వేళ్లతో కుడివైపునకు స్వైప్ చేయండి</translation>
 <translation id="1022586497894531524">మీరు ChromeVox ప్రసంగ రూప అభిప్రాయాన్ని మొదటిసారిగా ఉపయోగిస్తున్నారా? ఈ శీఘ్ర ట్యుటోరియల్ ChromeVoxను ప్రారంభించడం కోసం అవసరమైన ముఖ్యమైన వాటి గురించి వివరిస్తుంది.</translation>
@@ -16,7 +16,7 @@
 <translation id="1066085461259044485">అరణ్యపు ఆకుపచ్చ రంగు</translation>
 <translation id="1087148255821848488">ప్రస్తుత ప్రదర్శన శైలి ఇంటర్‌లీవ్</translation>
 <translation id="1087788677726983142">ఈవెంట్ ప్రసార ఫిల్టర్‌లను దాచు</translation>
-<translation id="1088402100970133699">మునుపటి జాబితా ఐటెమ్ లేదు</translation>
+<translation id="1088402100970133699">మునుపటి లిస్ట్‌ ఐటెమ్ లేదు</translation>
 <translation id="1120743664840974483">{"a": "ఆల్ఫా", "b": "బ్రావో", "c": "చార్లీ", "d": "డెల్టా", "e": "ఎకో", "f": "ఫాక్స్‌ట్రాట్", "g": "గోల్ఫ్", "h": "హోటల్", "i": "ఇండియా", "j": "జూలియట్","k": "కిలో", "l": "లీమా", "m": "మైక్", "n": "నవంబర్", "o": "ఆస్కార్","p": "పాపా", "q": "క్యూబెక్", "r": "రోమియో", "s": "సియెర్రా", "t": "ట్యాంగో", "u": "యూనిఫారమ్", "v": "విక్టర్", "w": "విస్కీ","x": "ఎక్స్‌రే", "y": "యాంకీ", "z": "జూలూ"}</translation>
 <translation id="1120938014254001895">రెండు వేళ్లతో పైకి స్వైప్ చేయండి</translation>
 <translation id="1126928665165112660">ఇటాలిక్ కాదు</translation>
@@ -35,7 +35,7 @@
 <translation id="1207086294218137981">తర్వాత స్థాయి 4 శీర్షిక లేదు</translation>
 <translation id="1212770441379271564">ఈ వాక్యం తర్వాత అందించిన కొన్ని షార్ట్‌కట్‌లు ChromeVox ఆదేశాలు కావు, అయినప్పటికీ Chrome నుండి అత్యధిక ప్రయోజనాలు పొందడంలో ఇవి చాలా ఉపయోగకరంగా ఉంటాయి.
 బటన్‌లు, లింక్‌ల లాంటి చర్య చేయదగిన అంశాలను ముందుకు నావిగేట్ చేయడానికి, 'Tab' కీని నొక్కండి. వెనుకకు నావిగేట్ చేయడానికి, 'Shift+Tab'ను నొక్కండి. 
-ఓమ్నిబాక్స్‌గా కూడా పిలువబడే Chrome బ్రౌజర్ చిరునామా బాక్స్‌లోకి ప్రవేశించడానికి, 'Control + L'ను నొక్కండి. 
+ఓమ్నిబాక్స్‌గా కూడా పిలువబడే Chrome బ్రౌజర్ అడ్రస్‌ బాక్స్‌లోకి ప్రవేశించడానికి, 'Control + L'ను నొక్కండి. 
 ఆటోమేటిక్‌గా కొత్త ట్యాబ్‍ను తెరిచి, దాని వద్దకు వెళ్లడానికి 'Control+T'ని నొక్కండి. మీ కర్సర్ ఓమ్నిబాక్స్‌లో ఉంటుంది. 
 ట్యాబ్‌ను మూసివేయడానికి, 'Control+W'ను నొక్కండి. 
 తెరిచిన ట్యాబ్‌లలో ముందుకు వెళ్లడానికి, 'Control+Tab'ను ఉపయోగించండి. 
@@ -94,7 +94,7 @@
 <translation id="1551572888042734032">వేసవి కాలం</translation>
 <translation id="1555130319947370107">నీలం</translation>
 <translation id="1559739829547075274">వెనుకకు నావిగేట్ చేయండి</translation>
-<translation id="1565432156062359693">తర్వాత జాబితా లేదు</translation>
+<translation id="1565432156062359693">తర్వాత లిస్ట్‌ లేదు</translation>
 <translation id="1571643229714746283">ChromeVox సిద్ధంగా ఉంది</translation>
 <translation id="1594072653727561613">mnu</translation>
 <translation id="1610130962244179598">6 చుక్కల బ్రెయిలీకి మార్చు</translation>
@@ -129,7 +129,7 @@
 <translation id="1781173782405573156">పాస్ థ్రూ కీ</translation>
 <translation id="1787176709638001873">పాస్‌వర్డ్ సవరణ వచనం</translation>
 <translation id="180203835522132923">Search + O, తర్వాత W</translation>
-<translation id="1810107444790159527">జాబితా పెట్టె</translation>
+<translation id="1810107444790159527">లిస్ట్‌ పెట్టె</translation>
 <translation id="1812527064848182527">ల్యాండ్‌స్కేప్‌లో ఉంది</translation>
 <translation id="1829244130665387512">పేజీలో కనుగొను</translation>
 <translation id="1834891354138622109">నిలువు వరుస</translation>
@@ -140,7 +140,7 @@
 <translation id="1876229593313240038">doc</translation>
 <translation id="1902396333223336119">సెల్</translation>
 <translation id="1903683160884433981">మధ్యస్థ వసంత ఆకుపచ్చ</translation>
-<translation id="1905379170753160525">శీర్షికల జాబితాను చూపండి</translation>
+<translation id="1905379170753160525">శీర్షికల లిస్ట్‌ను చూపండి</translation>
 <translation id="1913761808037590218">#ed</translation>
 <translation id="1914424852593176649"><ph name="FONT_SIZE" /> పరిమాణం</translation>
 <translation id="1914635379910604678"><ph name="DOT" /> కీల కలయిక</translation>
@@ -152,7 +152,7 @@
 <translation id="1988733631391393183">ChromeVox మెనూలలో బ్రెయిలీ ఆదేశాలను చూపు</translation>
 <translation id="2007545860310005685">{COUNT,plural, =1{ఎడమ కుండలీకరణ గుర్తు}other{# ఎడమ కుండలీకరణ గుర్తులు}}</translation>
 <translation id="2009187674653301682">సూపర్‌స్క్రిప్ట్ కాదు</translation>
-<translation id="2010555995361223825">ChromeVox మెనులు</translation>
+<translation id="2010555995361223825">ChromeVox మెనూలు</translation>
 <translation id="203030071582665758">మునుపటి స్థాయి 4 శీర్షిక లేదు</translation>
 <translation id="2045055672832940894">మునుపటి నియంత్రణ లేదు</translation>
 <translation id="2045606329038304310">ఫారమ్ ఫీల్డ్ కంట్రోల్</translation>
@@ -170,7 +170,7 @@
 <translation id="2152179395627233441">సాధన ప్రాంతాన్ని మూసివేయి</translation>
 <translation id="2163782704988363449">తప్పొప్పుల పట్టిక</translation>
 <translation id="2169714232367507776">ప్రస్తుత అంశంపై క్లిక్ చేయండి</translation>
-<translation id="2179452035581866348">మీకు ఆవశ్యకమైన మరియు అదనపు సమాచారాన్ని అందించడానికి ChromeVox ధ్వనులను ఉపయోగిస్తుంది. మీరు ప్రతి ధ్వనికి అర్థాన్ని తెలుసుకోవడం ద్వారా మరింత త్వరగా నావిగేట్ చేయడానికి ఈ ధ్వనులను ఉపయోగించవచ్చు. మీకు వీటి గురించి బాగా తెలిసిన తర్వాత, మీరు ప్రసంగంలో విశదీకృత వివరణలను ఆఫ్ చేసి, పేజీ గురించిన ఆవశ్యకమైన సమాచారం కోసం వాటిపై ఆధారపడవచ్చు. ధ్వనులు మరియు వాటి అర్థాలతో పూర్తి జాబితా ఇక్కడ అందించబడింది.</translation>
+<translation id="2179452035581866348">మీకు ఆవశ్యకమైన మరియు అదనపు సమాచారాన్ని అందించడానికి ChromeVox ధ్వనులను ఉపయోగిస్తుంది. మీరు ప్రతి ధ్వనికి అర్థాన్ని తెలుసుకోవడం ద్వారా మరింత త్వరగా నావిగేట్ చేయడానికి ఈ ధ్వనులను ఉపయోగించవచ్చు. మీకు వీటి గురించి బాగా తెలిసిన తర్వాత, మీరు ప్రసంగంలో విశదీకృత వివరణలను ఆఫ్ చేసి, పేజీ గురించిన ఆవశ్యకమైన సమాచారం కోసం వాటిపై ఆధారపడవచ్చు. ధ్వనులు మరియు వాటి అర్థాలతో పూర్తి లిస్ట్‌ ఇక్కడ అందించబడింది.</translation>
 <translation id="2183409941723714159">ట్యాబ్ నావిగేషన్</translation>
 <translation id="2188751878842439466">{COUNT,plural, =1{మూసిన కుండలీకరణ గుర్తు}other{# మూసిన కుండలీకరణ గుర్తులు}}</translation>
 <translation id="2197863150503783129">గుర్రపు జీను గోధుమ రంగు</translation>
@@ -204,7 +204,7 @@
 <translation id="2416512023405990736">ఎంచుకున్నట్లు గుర్తు పెట్టని చెక్‌బాక్స్‌</translation>
 <translation id="2417569100218200841">కంటెంట్ సమాచారం</translation>
 <translation id="2417948780551741035">ఎండ్‌నోట్‌లు</translation>
-<translation id="2419852971200420169">వివరణ జాబితా</translation>
+<translation id="2419852971200420169">వివరణ లిస్ట్‌</translation>
 <translation id="2422937916923936891">మెనూ అంశం చెక్‌ బాక్స్</translation>
 <translation id="2428534162001909979">ఆదేశ మెనూలు</translation>
 <translation id="242998846562331953">ఉపశీర్షిక</translation>
@@ -219,7 +219,7 @@
 <translation id="249330843868392562">వచనం నుండి ప్రసంగం సెట్టింగ్‌లను తెరువు</translation>
 <translation id="2497706219848005458">ఆకుపచ్చ పసుపు</translation>
 <translation id="2523609930580546572">ChromeVox ట్యుటోరియల్</translation>
-<translation id="2525706221823668172">Chromebook కీబోర్డ్ సత్వరమార్గాలు</translation>
+<translation id="2525706221823668172">Chromebook కీబోర్డ్ షార్ట్‌కట్‌లు</translation>
 <translation id="2553108862507765288">grammatical mistake</translation>
 <translation id="2556326187583116255">ప్రస్తుతం నడుస్తోన్న ఏ స్పీచ్‌ను అయినా ఆపేందుకు 2 వేళ్లతో ట్యాప్ చేయండి</translation>
 <translation id="2573256689920773241">ప్రాథమిక నావిగేషన్</translation>
@@ -325,7 +325,7 @@
 <translation id="3131002934070407451">సంఖ్యలను ఇలా చదవాలి:</translation>
 <translation id="3134461040845705080">rdonly</translation>
 <translation id="3137663468179739624">ఆలివ్ రంగు</translation>
-<translation id="3138767756593758860">మైలురాళ్ల జాబితాను చూపండి</translation>
+<translation id="3138767756593758860">మైలురాళ్ల లిస్ట్‌ను చూపండి</translation>
 <translation id="3143851963874289911">cll</translation>
 <translation id="3149472044574196936">తరువాత పంక్తి</translation>
 <translation id="3153024374267644603">ప్రసంగాన్ని ఆన్ చేయండి</translation>
@@ -370,7 +370,7 @@
 <translation id="338583716107319301">విభాగిని</translation>
 <translation id="3389259863310851658">మునుపటి ఫారమ్ ఫీల్డ్</translation>
 <translation id="3393605254399152980">మీరు తాకిన దానిని వినడం కోసం ఒక వేలితో లాగండి</translation>
-<translation id="3406283310380167331">ఫారమ్‌ల జాబితాను చూపండి</translation>
+<translation id="3406283310380167331">ఫారమ్‌ల లిస్ట్‌ను చూపండి</translation>
 <translation id="3414400929511680526">లేత లేజాయ నీలి రంగు</translation>
 <translation id="3418936350470374046">కింద సెల్ లేదు</translation>
 <translation id="3435494200763325275">ట్యాబ్ నావిగేషన్ కొనసాగించబడింది</translation>
@@ -380,7 +380,7 @@
 <translation id="3466530247399808663">చెల్లని కీ నొక్కారు</translation>
 <translation id="3468959318854349468">శీర్షిక లేదు</translation>
 <translation id="3469413619751135069">లేత ఆకుపచ్చ</translation>
-<translation id="3490765818161916458">జాబితా గ్రిడ్</translation>
+<translation id="3490765818161916458">లిస్ట్‌ గ్రిడ్</translation>
 <translation id="3492609944033322585">{COUNT,plural, =1{కుడి కుండలీకరణ గుర్తు}other{# కుడి కుండలీకరణ గుర్తులు}}</translation>
 <translation id="3494946239022273294">mnuitm</translation>
 <translation id="3497063866483065785">{COUNT,plural, =1{ప్రశ్నార్థక గుర్తు}other{# ప్రశ్నార్థక గుర్తులు}}</translation>
@@ -420,7 +420,7 @@
 <translation id="3777742246909257041">మంచు</translation>
 <translation id="3781428340399460090">ముదురు గులాబి రంగు</translation>
 <translation id="3783725005098956899">లాగ్‌ను చూపు</translation>
-<translation id="3801735343383419236">స్వీయపూర్తి జాబితా</translation>
+<translation id="3801735343383419236">స్వీయపూర్తి లిస్ట్‌</translation>
 <translation id="3806327402890551732">తర్వాతి లేదా మునుపటి ఐటెమ్‌కు వెళ్లండి</translation>
 <translation id="3810838688059735925">వీడియో</translation>
 <translation id="3813387282697781382">పగడం వంటి లేత ఎర్రని రంగు</translation>
@@ -480,7 +480,7 @@
 <translation id="42164919740161077">బూడిద నీలి రంగు</translation>
 <translation id="4217571870635786043">డిక్టేషన్</translation>
 <translation id="4218529045364428769">{COUNT,plural, =1{అడ్డగీత}other{# అడ్డగీతలు}}</translation>
-<translation id="4221012616705981690">మునుపటి జాబితా లేదు</translation>
+<translation id="4221012616705981690">మునుపటి లిస్ట్‌ లేదు</translation>
 <translation id="4225355998815256469">ఫారమ్ నియంత్రణలు</translation>
 <translation id="4230834257931120629">లేత మేఘవర్ణపు బూడిద రంగు</translation>
 <translation id="4231102694147661229">డెవలపర్ ఎంపికలను ప్రారంభించు</translation>
@@ -589,7 +589,7 @@
 <translation id="5042992464904238023">వెబ్ కంటెంట్</translation>
 <translation id="5045870649377683106">ఇప్పుడు, సరిగ్గా కంట్రోల్ కీ పైన ఉండే షిఫ్ట్ కీని కనుగొనండి. కొనసాగించడానికి, ఎడమ షిఫ్ట్ కీని నొక్కండి.</translation>
 <translation id="5050015258024679800">మునుపటి స్థాయి 4 శీర్షిక</translation>
-<translation id="5054047268577924192">మునుపటి జాబితా అంశం</translation>
+<translation id="5054047268577924192">మునుపటి లిస్ట్‌ అంశం</translation>
 <translation id="5085453135206054947">లేత ఊదా ఎరుపు</translation>
 <translation id="5087864757604726239">వెనుకకు</translation>
 <translation id="5102981729317424850">సాధనపట్టీ</translation>
@@ -644,7 +644,7 @@
 <translation id="5451268436205074266">చుక్కలు <ph name="DOT" /></translation>
 <translation id="5452267669091857717">తర్వాత స్థాయి 1 శీర్షిక లేదు</translation>
 <translation id="5455441614648621694">బహుమానపూర్వకం</translation>
-<translation id="5462510922370980473">పేజీ జాబితా</translation>
+<translation id="5462510922370980473">పేజీ లిస్ట్‌</translation>
 <translation id="5471768120198416576">హలో! నేను మీ వచనం నుండి ప్రసంగం వాయిస్‌ని.</translation>
 <translation id="5495517933067991341">ఆవశ్యకమైన కీలు: షిఫ్ట్</translation>
 <translation id="549602578321198708">పదం</translation>
@@ -656,7 +656,7 @@
 <translation id="5539820223028224601">లేత నీలి బూడిద రంగు</translation>
 <translation id="5549179427201066174">ధ్వని ఫీడ్‌బ్యాక్ (శబ్ద హెచ్చరికలు)ను ఆన్ లేదా ఆఫ్ చేస్తుంది</translation>
 <translation id="556042886152191864">బటన్</translation>
-<translation id="5561345396546889625">తరువాత జాబితా</translation>
+<translation id="5561345396546889625">తరువాత లిస్ట్‌</translation>
 <translation id="5562645715554321347">hdnggrp</translation>
 <translation id="5574412348552378458">ChromeVox తెలుసుకునే మోడ్</translation>
 <translation id="5582839680698949063">ప్రధాన మెనూ</translation>
@@ -680,7 +680,7 @@
 <translation id="5681643281275621376">def</translation>
 <translation id="5682113568322255809">మైలురాయి</translation>
 <translation id="5683155931978483559">మునుపటి చెక్‌బాక్స్</translation>
-<translation id="5684277895745049190">జాబితా</translation>
+<translation id="5684277895745049190">లిస్ట్‌</translation>
 <translation id="5703716265115423771">వాల్యూమ్ తగ్గిస్తుంది</translation>
 <translation id="5704453877234251104">ఆటోమేటిక్‌గా పూర్తి చేయడం కోసం పైకి లేదా కిందికి బాణాన్ని నొక్కండి</translation>
 <translation id="5712244464475377681">popbtn</translation>
@@ -700,7 +700,7 @@
 <translation id="5842625257683688671">తర్వాత గ్రాఫిక్ లేదు</translation>
 <translation id="5847883414085148048">అంకితం</translation>
 <translation id="5850707923114094062">వెనుకవైపుకు ప్యాన్ చేయండి</translation>
-<translation id="5851548754964597211">ట్యాబ్ జాబితా</translation>
+<translation id="5851548754964597211">ట్యాబ్ లిస్ట్‌</translation>
 <translation id="5866042630553435010">పాక్షికంగా తనిఖీ చేయబడింది</translation>
 <translation id="5866210856231860256">ఈ టాపిక్‌పై పాఠాలను బ్రౌజ్ చేయడానికి సెర్చ్ + కుడి వైపు బాణం, లేదా సెర్చ్ + ఎడమ వైపు బాణాన్ని నొక్కండి</translation>
 <translation id="5867591286054666064">ఈ ట్యుటోరియల్ జరుగుతున్నప్పుడు, ఏదైనా కీ పేరును వినడానికి దానిపై నొక్కండి.</translation>
@@ -759,7 +759,7 @@
 <translation id="6305702903308659374">ChromeVox మాట్లాడుతున్నప్పటికీ, సాధారణ వాల్యూమ్‌తో ప్లే చేయి</translation>
 <translation id="6307969636681130414">నొక్కబడింది</translation>
 <translation id="6315652249189065725">కీబోర్డ్ షార్ట్‌కట్‌ల మెనూను తెరుస్తుంది</translation>
-<translation id="6320690422100602757">తర్వాత జాబితా ఐటెమ్ లేదు</translation>
+<translation id="6320690422100602757">తర్వాత లిస్ట్‌ ఐటెమ్ లేదు</translation>
 <translation id="6322856989298155004">ధ్వనులు</translation>
 <translation id="6324551002951139333">వ్యాకరణ తప్పు కనుగొనబడింది</translation>
 <translation id="6325241889020214828"><ph name="TEXT" />ని కాపీ చేయండి.</translation>
@@ -833,7 +833,7 @@
 <translation id="6901540140423170855">తేదీ</translation>
 <translation id="6910211073230771657">తొలగించబడింది</translation>
 <translation id="6910969481785184048">ఆన్ చేయడం, ఆఫ్ చేయడం మరియు ఆపివేయడం</translation>
-<translation id="6919104639734799681">పట్టికల జాబితాను చూపండి</translation>
+<translation id="6919104639734799681">పట్టికల లిస్ట్‌ను చూపండి</translation>
 <translation id="6945221475159498467">ఎంచుకోండి</translation>
 <translation id="6949846980769640811">మధ్యస్థ నీలి ఆకుపచ్చ రంగు</translation>
 <translation id="6951482098621102657">తర్వాత స్థాయి 5 శీర్షిక లేదు</translation>
@@ -847,7 +847,7 @@
 <translation id="7005146664810010831">URL కనుగొనబడలేదు</translation>
 <translation id="7026338066939101231">తరుగుదల</translation>
 <translation id="7031651751836475482">lstitm</translation>
-<translation id="7037042857287298941">మునుపటి జాబితా</translation>
+<translation id="7037042857287298941">మునుపటి లిస్ట్‌</translation>
 <translation id="7039555289296502784">ఆలివ్ బూడిద రంగు</translation>
 <translation id="7041173719775863268">ఎంపికను ముగించండి</translation>
 <translation id="7043850226734279132">ముదురు ఖాకీ రంగు</translation>
@@ -897,7 +897,7 @@
 <translation id="7322442671176251901">తాకడం ద్వారా పరిశీలించడం</translation>
 <translation id="7344012264516629579">దాటవేసేందుకు వాడే కమాండ్‌లలో లింక్, బటన్ లేదా చెక్-బాక్స్ ద్వారా దాటవేత మొదలైన ఇతర అదనపు దాటవేత కమాండ్‌లు కూడా ఉంటాయి. సెర్చ్ + పీరియడ్‌ను నొక్కడం ద్వారా తెరుచుకునే ChromeVox మెనూలలో దాటవేసే కమాండ్‌ల పూర్తి లిస్ట్‌ను కనుగొనవచ్చు.</translation>
 <translation id="7356165926712028380">8 చుక్కల బ్రెయిలీకి మార్చు</translation>
-<translation id="7356610683936413584">వివరణ జాబితా వివరం</translation>
+<translation id="7356610683936413584">వివరణ లిస్ట్‌ వివరం</translation>
 <translation id="7370432716629432284">{COUNT,plural, =1{ఆంపర్సండ్ గుర్తు}other{# ఆంపర్సండ్ గుర్తులు}}</translation>
 <translation id="737396357417333429">clk</translation>
 <translation id="738899727977260036">మేఘ వర్ణపు నీలం రంగు</translation>
@@ -920,7 +920,7 @@
 <translation id="7505149250476994901">క్యాపిటల్ అక్షరాన్ని పలికే ముందు "క్యాపిటల్" అని అనండి</translation>
 <translation id="7533226154149229506">లేత బంగారం కడ్డీ పసుపు</translation>
 <translation id="7543255924852002459">లేబుల్‌ను విస్మరించండి</translation>
-<translation id="7552432549459840808">సహాయకరమైన Chrome సత్వరమార్గాలు</translation>
+<translation id="7552432549459840808">సహాయకరమైన Chrome షార్ట్‌కట్‌లు</translation>
 <translation id="7569983096843329377">నలుపు</translation>
 <translation id="7579911500627256166">చుక్క <ph name="DOT" /></translation>
 <translation id="7592060599656252486">కొన్ని</translation>
@@ -956,7 +956,7 @@
 <translation id="773906353055481349">సెల్ వారీగా నావిగేట్ చేయడం కోసం బాణం గుర్తు ఉన్న బటన్‌లతో పాటు శోధన+Ctrl+Alt నొక్కండి</translation>
 <translation id="7763537600611320912"><ph name="FILE_NAME" />ను డౌన్‌లోడ్ చేయడం ప్రారంభించబడింది</translation>
 <translation id="7768784765476638775">వినడానికి ఎంచుకోండి</translation>
-<translation id="7776293189010177726">ChromeVox మెనులను తెరుస్తుంది</translation>
+<translation id="7776293189010177726">ChromeVox మెనూలను తెరుస్తుంది</translation>
 <translation id="7799302833060027366">గణితాన్ని అన్వేషించడానికి పైకి, కిందకు, ఎడమకు లేదా కుడి చిహ్నాల కీలను నొక్కండి</translation>
 <translation id="7800558923657349506">ఉపసంహారం</translation>
 <translation id="7801768143868631306">సూచన: నావిగేట్ చేయడానికి ఒక వేలుతో ఎడమవైపుకు లేదా కుడివైపుకు స్వైప్ చేయండి.</translation>
@@ -1041,7 +1041,7 @@
 <translation id="8326783648485765113">పచ్చిక బయలు ఆకుపచ్చ</translation>
 <translation id="8345569862449483843">{COUNT,plural, =1{పౌండ్ గుర్తు}other{# పౌండ్ గుర్తులు}}</translation>
 <translation id="8378855320830505539">ప్రాంతం</translation>
-<translation id="8382679411218029383">స్వీయపూర్తి ఇన్‌లైన్ మరియు జాబితా</translation>
+<translation id="8382679411218029383">స్వీయపూర్తి ఇన్‌లైన్ మరియు లిస్ట్‌</translation>
 <translation id="8394908167088220973">మీడియా ప్లే/పాజ్</translation>
 <translation id="8428213095426709021">సెట్టింగ్‌లు</translation>
 <translation id="8428603554127842284">స్థాయి <ph name="DEPTH" /></translation>
@@ -1065,7 +1065,7 @@
 <translation id="8571096049907249734">బహు ఎంపి</translation>
 <translation id="858006550102277544">కామెంట్ చేయండి</translation>
 <translation id="8584721346566392021">h5</translation>
-<translation id="8587549812518406253">తరువాత జాబితా అంశం</translation>
+<translation id="8587549812518406253">తరువాత లిస్ట్‌ అంశం</translation>
 <translation id="8591343418134616947">మునుపటి స్థాయి 6 శీర్షిక లేదు</translation>
 <translation id="8603071050456974042">ChromeVox ప్యానెల్</translation>
 <translation id="8606621670302093223">తేదీ నియంత్రణ</translation>
@@ -1076,7 +1076,7 @@
 <translation id="8638532244051952400">ప్రస్తుత సెల్ అక్షాలను తెలియజేయండి</translation>
 <translation id="8640369214276455272">తెల్లని పొగ రంగు</translation>
 <translation id="8651481478098336970">వాల్యూమ్‌ను మ్యూట్ చేస్తుంది</translation>
-<translation id="8653646212587894517">లింక్‌ల జాబితాను చూపండి</translation>
+<translation id="8653646212587894517">లింక్‌ల లిస్ట్‌ను చూపండి</translation>
 <translation id="8656888282555543604">బ్రెయిలీ లాగింగ్‌ను ప్రారంభించు</translation>
 <translation id="8659501358298941449">డ్రాప్-డౌన్ లిస్ట్‌లు</translation>
 <translation id="8666733765751421568"><ph name="TYPE" /> ముగింపు</translation>
@@ -1086,7 +1086,7 @@
 <translation id="8697111817566059991">{COUNT,plural, =1{పైప్ గుర్తు}other{# నిలువు పైప్ గుర్తులు}}</translation>
 <translation id="8741370088760768424">సూచన: ప్రస్తుత ఐటెమ్‌ను యాక్టివేట్ చేయడానికి సెర్చ్ + స్పేస్‌ను నొక్కండి.</translation>
 <translation id="8743786158317878347">పట్టికల వంటి ఆకృతీకరించిన కంటెంట్‌లోకి ప్రవేశించండి</translation>
-<translation id="8747966237988593539">క్రమం చేసిన జాబితా</translation>
+<translation id="8747966237988593539">క్రమం చేసిన లిస్ట్‌</translation>
 <translation id="8749988712346667988">వెండి</translation>
 <translation id="875769700429317857"><ph name="FILE_NAME" />ను డౌన్‌లోడ్ చేయడం పూర్తయింది</translation>
 <translation id="8767968232364267681">తరువాత స్థాయి 4 శీర్షిక</translation>
diff --git a/chrome/browser/resources/chromeos/assistant_optin/assistant_value_prop.js b/chrome/browser/resources/chromeos/assistant_optin/assistant_value_prop.js
index 611b43e2..1b327cb4 100644
--- a/chrome/browser/resources/chromeos/assistant_optin/assistant_value_prop.js
+++ b/chrome/browser/resources/chromeos/assistant_optin/assistant_value_prop.js
@@ -354,11 +354,12 @@
       for (var j in zippy_data[i]) {
         var data = zippy_data[i][j];
         var zippy = document.createElement('setting-zippy');
+        let background = this.isMinorMode_ ? '#e8f0fe' /* gblue50 */ : 'white';
         zippy.setAttribute(
             'icon-src',
             'data:text/html;charset=utf-8,' +
-                encodeURIComponent(
-                    zippy.getWrappedIcon(data['iconUri'], data['title'])));
+                encodeURIComponent(zippy.getWrappedIcon(
+                    data['iconUri'], data['title'], background)));
         zippy.setAttribute('step', i);
         if (!this.newLayoutEnabled_) {
           zippy.setAttribute('hide-line', true);
diff --git a/chrome/browser/resources/chromeos/assistant_optin/setting_zippy.css b/chrome/browser/resources/chromeos/assistant_optin/setting_zippy.css
index 1c2f13819..ae91e26 100644
--- a/chrome/browser/resources/chromeos/assistant_optin/setting_zippy.css
+++ b/chrome/browser/resources/chromeos/assistant_optin/setting_zippy.css
@@ -71,5 +71,14 @@
 }
 
 #container[cardStyle] .icon {
+  background: var(--google-blue-50);
+  border-radius: 50%;
+  height: 40px;
+  margin-inline-end: 16px;
   margin-top: 4px;
+  min-width: 40px;
+}
+
+#container[cardStyle] .icon-view {
+  margin: 10px;
 }
diff --git a/chrome/browser/resources/chromeos/assistant_optin/setting_zippy.js b/chrome/browser/resources/chromeos/assistant_optin/setting_zippy.js
index 38109d43..068aa150 100644
--- a/chrome/browser/resources/chromeos/assistant_optin/setting_zippy.js
+++ b/chrome/browser/resources/chromeos/assistant_optin/setting_zippy.js
@@ -42,11 +42,13 @@
    *
    * @param {string} iconUri the icon uri to be wrapped.
    * @param {string} imageLabel the aria label of the image.
+   * @param {string} background the background color of the icon, default to
+   * white if unspecified.
    * @return {string} wrapped html snippet.
    *
    * @private
    */
-  getWrappedIcon(iconUri, imageLabel) {
+  getWrappedIcon(iconUri, imageLabel, background) {
     return String.raw`
     <html>
       <style>
@@ -54,6 +56,8 @@
           margin: 0;
         }
         #icon {
+          background: ` +
+        (background || 'white') + `;
           width: 20px;
           height: 20px;
           user-select: none;
diff --git a/chrome/browser/signin/dice_intercepted_session_startup_helper.cc b/chrome/browser/signin/dice_intercepted_session_startup_helper.cc
index b06c9a0..9b2393f 100644
--- a/chrome/browser/signin/dice_intercepted_session_startup_helper.cc
+++ b/chrome/browser/signin/dice_intercepted_session_startup_helper.cc
@@ -49,7 +49,8 @@
     : profile_(profile),
       use_multilogin_(is_new_profile),
       account_id_(account_id) {
-  Observe(tab_to_move);
+  if (tab_to_move)
+    web_contents_ = tab_to_move->GetWeakPtr();
 }
 
 DiceInterceptedSessionStartupHelper::~DiceInterceptedSessionStartupHelper() =
@@ -164,9 +165,9 @@
 
   GURL url_to_open = GURL(chrome::kChromeUINewTabURL);
   // If the intercepted web contents is still alive, close it now.
-  if (web_contents()) {
-    url_to_open = web_contents()->GetURL();
-    web_contents()->Close();
+  if (web_contents_) {
+    url_to_open = web_contents_->GetURL();
+    web_contents_->Close();
   }
 
   // Open a new browser.
diff --git a/chrome/browser/signin/dice_intercepted_session_startup_helper.h b/chrome/browser/signin/dice_intercepted_session_startup_helper.h
index cd4b4f2..04ce946 100644
--- a/chrome/browser/signin/dice_intercepted_session_startup_helper.h
+++ b/chrome/browser/signin/dice_intercepted_session_startup_helper.h
@@ -33,8 +33,7 @@
 // It is assumed that the account is already in the profile, but not necessarily
 // in the content area (cookies).
 class DiceInterceptedSessionStartupHelper
-    : public content::WebContentsObserver,
-      public signin::IdentityManager::Observer,
+    : public signin::IdentityManager::Observer,
       public AccountReconcilor::Observer {
  public:
   // |profile| is the new profile that was created after signin interception.
@@ -81,6 +80,7 @@
   void MoveTab();
 
   Profile* const profile_;
+  base::WeakPtr<content::WebContents> web_contents_;
   bool use_multilogin_;
   CoreAccountId account_id_;
   base::OnceClosure callback_;
diff --git a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_te.xtb b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_te.xtb
index 791a0994..c80febe 100644
--- a/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_te.xtb
+++ b/chrome/browser/touch_to_fill/android/internal/java/strings/translations/android_touch_to_fill_strings_te.xtb
@@ -1,12 +1,12 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="te">
-<translation id="1717486229951421299">'టచ్ చేసి నింపాల్సిన ఆధారాల జాబితా' సగం ఎత్తులో తెరవబడింది.</translation>
-<translation id="207576718733492531">'టచ్ చేసి నింపాల్సిన ఆధారాల జాబితా' మూసివేయబడింది.</translation>
+<translation id="1717486229951421299">'టచ్ చేసి నింపాల్సిన ఆధారాల లిస్ట్‌' సగం ఎత్తులో తెరవబడింది.</translation>
+<translation id="207576718733492531">'టచ్ చేసి నింపాల్సిన ఆధారాల లిస్ట్‌' మూసివేయబడింది.</translation>
 <translation id="2359808026110333948">కొనసాగించు</translation>
 <translation id="2410754283952462441">ఖాతాను ఎంచుకోండి</translation>
-<translation id="3399357656427473483">'ట‌చ్ చేసి నింపాల్సిన ఆధారాల జాబితా'.</translation>
-<translation id="5441504010984421144">'ట‌చ్ చేసి నింపాల్సిన ఆధారాల జాబితా' పూర్తి ఎత్తులో తెరవబడింది.</translation>
+<translation id="3399357656427473483">'ట‌చ్ చేసి నింపాల్సిన ఆధారాల లిస్ట్‌'.</translation>
+<translation id="5441504010984421144">'ట‌చ్ చేసి నింపాల్సిన ఆధారాల లిస్ట్‌' పూర్తి ఎత్తులో తెరవబడింది.</translation>
 <translation id="5624120631404540903">పాస్‌వర్డ్‌లను నిర్వహించండి</translation>
 <translation id="804577341878669140">ఖాతాతో కొనసాగించండి</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
index bab4fd8e..9e25fa9e8 100644
--- a/chrome/browser/ui/BUILD.gn
+++ b/chrome/browser/ui/BUILD.gn
@@ -2133,10 +2133,6 @@
       "ash/shelf/arc_playstore_shortcut_shelf_item_controller.h",
       "ash/shelf/arc_shelf_spinner_item_controller.cc",
       "ash/shelf/arc_shelf_spinner_item_controller.h",
-      "ash/shelf/browser_app_status_observer.cc",
-      "ash/shelf/browser_app_status_observer.h",
-      "ash/shelf/browser_apps_tracker.cc",
-      "ash/shelf/browser_apps_tracker.h",
       "ash/shelf/browser_shortcut_shelf_item_controller.cc",
       "ash/shelf/browser_shortcut_shelf_item_controller.h",
       "ash/shelf/browser_status_monitor.cc",
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
index c97c869..4b9f0a0 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
@@ -1133,6 +1133,8 @@
         sLastCachedIsLensOnOmniboxEnabled = Boolean.valueOf(isLensEnabled(LensEntryPoint.OMNIBOX));
         updateButtonVisibility();
         updateSearchEngineStatusIconShownState();
+        // Update the visuals to use correct incognito colors.
+        mUrlCoordinator.setIncognitoColorsEnabled(mLocationBarDataProvider.isIncognito());
     }
 
     @Override
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java
index ad25cbf..5c8765b 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java
@@ -123,6 +123,11 @@
         return mMediator.setUseDarkTextColors(useDarkColors);
     }
 
+    /** @see UrlBarMediator#setIncognitoColorsEnabled(boolean) */
+    public void setIncognitoColorsEnabled(boolean incognitoColorsEnabled) {
+        mMediator.setIncognitoColorsEnabled(incognitoColorsEnabled);
+    }
+
     /** @see UrlBarMediator#setAllowFocus(boolean) */
     public void setAllowFocus(boolean allowFocus) {
         mMediator.setAllowFocus(allowFocus);
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarMediator.java
index 6bd88f1..b1112ab 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarMediator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarMediator.java
@@ -235,6 +235,15 @@
     }
 
     /**
+     * Sets whether to use incognito colors.
+     *
+     * @param incognitoColorsEnabled Whether to use incognito colors.
+     */
+    public void setIncognitoColorsEnabled(boolean incognitoColorsEnabled) {
+        mModel.set(UrlBarProperties.INCOGNITO_COLORS_ENABLED, incognitoColorsEnabled);
+    }
+
+    /**
      * Sets whether the view allows user focus.
      */
     public void setAllowFocus(boolean allowFocus) {
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarProperties.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarProperties.java
index 6d08e16..b590acf8 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarProperties.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarProperties.java
@@ -127,12 +127,20 @@
     public static final WritableBooleanPropertyKey USE_DARK_TEXT_COLORS =
             new WritableBooleanPropertyKey();
 
+    /**
+     * Specifies whether incognito colors should be used in the view, meaning baseline dark theme
+     *  without dynamic colors.
+     */
+    public static final WritableBooleanPropertyKey INCOGNITO_COLORS_ENABLED =
+            new WritableBooleanPropertyKey();
+
     /** The delegate that provides Window capabilities to the view. */
     public static final WritableObjectPropertyKey<WindowDelegate> WINDOW_DELEGATE =
             new WritableObjectPropertyKey<>();
 
-    public static final PropertyKey[] ALL_KEYS = new PropertyKey[] {ACTION_MODE_CALLBACK,
-            ALLOW_FOCUS, AUTOCOMPLETE_TEXT, DELEGATE, FOCUS_CHANGE_CALLBACK, SHOW_CURSOR,
-            TEXT_CONTEXT_MENU_DELEGATE, TEXT_STATE, URL_DIRECTION_LISTENER,
-            URL_TEXT_CHANGE_LISTENER, TEXT_CHANGED_LISTENER, USE_DARK_TEXT_COLORS, WINDOW_DELEGATE};
+    public static final PropertyKey[] ALL_KEYS =
+            new PropertyKey[] {ACTION_MODE_CALLBACK, ALLOW_FOCUS, AUTOCOMPLETE_TEXT, DELEGATE,
+                    FOCUS_CHANGE_CALLBACK, SHOW_CURSOR, TEXT_CONTEXT_MENU_DELEGATE, TEXT_STATE,
+                    URL_DIRECTION_LISTENER, URL_TEXT_CHANGE_LISTENER, TEXT_CHANGED_LISTENER,
+                    USE_DARK_TEXT_COLORS, INCOGNITO_COLORS_ENABLED, WINDOW_DELEGATE};
 }
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java
index c7cf6cd..6925e9a7 100644
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java
@@ -11,8 +11,8 @@
 import android.view.ActionMode;
 
 import androidx.annotation.ColorInt;
+import androidx.annotation.ColorRes;
 
-import org.chromium.base.ApiCompatibilityUtils;
 import org.chromium.base.Callback;
 import org.chromium.chrome.browser.omnibox.UrlBarProperties.AutocompleteText;
 import org.chromium.chrome.browser.omnibox.UrlBarProperties.UrlBarTextState;
@@ -70,6 +70,8 @@
             }
         } else if (UrlBarProperties.USE_DARK_TEXT_COLORS.equals(propertyKey)) {
             updateTextColors(view, model.get(UrlBarProperties.USE_DARK_TEXT_COLORS));
+        } else if (UrlBarProperties.INCOGNITO_COLORS_ENABLED.equals(propertyKey)) {
+            updateHighlightColor(view, model.get(UrlBarProperties.INCOGNITO_COLORS_ENABLED));
         } else if (UrlBarProperties.URL_DIRECTION_LISTENER.equals(propertyKey)) {
             view.setUrlDirectionListener(model.get(UrlBarProperties.URL_DIRECTION_LISTENER));
         } else if (UrlBarProperties.URL_TEXT_CHANGE_LISTENER.equals(propertyKey)) {
@@ -82,6 +84,19 @@
     }
 
     private static void updateTextColors(UrlBar view, boolean useDarkTextColors) {
+        Resources resources = view.getResources();
+        @ColorRes
+        int textColorRes = useDarkTextColors ? R.color.default_text_color_dark
+                                             : R.color.default_text_color_light;
+        @ColorRes
+        int hintColorRes = useDarkTextColors ? R.color.locationbar_dark_hint_text
+                                             : R.color.locationbar_light_hint_text;
+
+        view.setTextColor(resources.getColor(textColorRes));
+        setHintTextColor(view, resources.getColor(hintColorRes));
+    }
+
+    private static void updateHighlightColor(UrlBar view, boolean useIncognitoColors) {
         @ColorInt
         int originalHighlightColor;
         Object highlightColorObj = view.getTag(R.id.highlight_color);
@@ -92,28 +107,13 @@
             originalHighlightColor = (Integer) highlightColorObj;
         }
 
-        Resources resources = view.getResources();
-        @ColorInt
-        int textColor;
-        @ColorInt
-        int hintColor;
-        @ColorInt
         int highlightColor;
-        if (useDarkTextColors) {
-            textColor = ApiCompatibilityUtils.getColor(resources, R.color.default_text_color_dark);
-            hintColor =
-                    ApiCompatibilityUtils.getColor(resources, R.color.locationbar_dark_hint_text);
-            highlightColor = originalHighlightColor;
+        if (useIncognitoColors) {
+            highlightColor = view.getResources().getColor(R.color.text_highlight_color_incognito);
         } else {
-            textColor = ApiCompatibilityUtils.getColor(resources, R.color.default_text_color_light);
-            hintColor =
-                    ApiCompatibilityUtils.getColor(resources, R.color.locationbar_light_hint_text);
-            highlightColor = ApiCompatibilityUtils.getColor(
-                    resources, R.color.highlight_color_on_light_text);
+            highlightColor = originalHighlightColor;
         }
 
-        view.setTextColor(textColor);
-        setHintTextColor(view, hintColor);
         view.setHighlightColor(highlightColor);
     }
 
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
index e626b2b442..9dabb866 100644
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -2031,7 +2031,7 @@
 
       <!-- Download progress message UI -->
       <message name="IDS_DOWNLOAD_MESSAGE_DOWNLOAD_IN_PROGRESS_DESCRIPTION" desc="Download message text describing that user can find about their download status from notifications.">
-        You can see the download status in your notifications
+        See notification for download status
       </message>
       <message name="IDS_DOWNLOAD_MESSAGE_DOWNLOAD_COMPLETE_DESCRIPTION" desc="Download message description text about downloaded file name and their size.">
         (<ph name="megabytes">%1$s<ex>100 MB</ex></ph>)\n<ph name="url">%2$s<ex>https://...example.com</ex></ph>
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MESSAGE_DOWNLOAD_IN_PROGRESS_DESCRIPTION.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MESSAGE_DOWNLOAD_IN_PROGRESS_DESCRIPTION.png.sha1
index 94a9732..14b28eb 100644
--- a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MESSAGE_DOWNLOAD_IN_PROGRESS_DESCRIPTION.png.sha1
+++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MESSAGE_DOWNLOAD_IN_PROGRESS_DESCRIPTION.png.sha1
@@ -1 +1 @@
-6c18810ecd01392a1a749d75490a1d2d619af5d1
\ No newline at end of file
+91eb732eaf8b1a84b3b377d73d90579aa633f639
\ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb
index 9264657..e13e011 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb
@@ -497,6 +497,7 @@
 <translation id="4108998448622696017">Detects and warns you about dangerous events when they happen.</translation>
 <translation id="4116038641877404294">Download pages to use them offline</translation>
 <translation id="4135200667068010335">List of devices with which to share a tab is closed.</translation>
+<translation id="4137746084635924146">Current device language</translation>
 <translation id="4141536112466364990">Learn Chrome</translation>
 <translation id="4149994727733219643">Simplified view for web pages</translation>
 <translation id="4165986682804962316">Site settings</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr-CA.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr-CA.xtb
index 0723c06..c19aec2 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr-CA.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr-CA.xtb
@@ -181,6 +181,7 @@
 <translation id="2158408438301413340">Chrome n'a pas pu vérifier tous les mots de passe</translation>
 <translation id="2169830938017475061">Maintenant</translation>
 <translation id="2172688499998841696">Les descriptions d'images sont désactivées</translation>
+<translation id="2172905120685242547">Fermer la fenêtre?</translation>
 <translation id="2175927920773552910">Code QR</translation>
 <translation id="218608176142494674">Partage</translation>
 <translation id="2195339740518523951">Profitez de la sécurité la plus robuste de Chrome</translation>
@@ -280,6 +281,7 @@
 <translation id="2779651927720337254">échec</translation>
 <translation id="2781151931089541271">Il reste 1 s</translation>
 <translation id="2788468313014644040">Numéro de groupe</translation>
+<translation id="2800066122460699237">L'onglet <ph name="TAB_TITLE" /> sera fermé</translation>
 <translation id="2801022321632964776">Mettez Chrome à jour pour en profiter dans votre propre langue</translation>
 <translation id="2805756323405976993">Applications</translation>
 <translation id="2806840421670364300">FLoC</translation>
@@ -288,6 +290,7 @@
 <translation id="2827278682606527653">Le menu de la carte du flux est ouvert à mi-hauteur</translation>
 <translation id="2830783625999891985">Le contenu du presse-papier est masqué</translation>
 <translation id="2839327205551510876">Désabonné de <ph name="SITE_NAME" /></translation>
+<translation id="2840810876587895427">{TAB_COUNT,plural, =1{<ph name="TAB_COUNT_ONE" /> onglet de navigation privée sera fermé}one{<ph name="TAB_COUNT_MANY" /> onglet de navigation privée sera fermé}other{<ph name="TAB_COUNT_MANY" /> onglets de navigation privée seront fermés}}</translation>
 <translation id="2841216154655874070">{NUM_DAYS,plural, =1{Dernière vérification : il y a 1 jour}one{Dernière vérification : il y a # jour}other{Dernière vérification : il y a # jours}}</translation>
 <translation id="2842985007712546952">Dossier parent</translation>
 <translation id="2856503607207334158">Échec de connexion</translation>
@@ -672,6 +675,7 @@
 <translation id="5222676887888702881">Déconnexion</translation>
 <translation id="5227554086496586518">Touchez pour afficher les résultats de recherche</translation>
 <translation id="5233638681132016545">Nouvel onglet</translation>
+<translation id="5235196193381275927">Un problème est survenu lors de la connexion</translation>
 <translation id="5246093389635966745">Modifier le raccourci de la barre d'outils</translation>
 <translation id="5250483651202458397">Capture d'écran. Touchez pour fermer.</translation>
 <translation id="5262378156578470238">Vous recevrez une notification lorsque le téléchargement débutera le <ph name="DATE" />.</translation>
@@ -895,6 +899,7 @@
 <translation id="6541983376925655882">{NUM_HOURS,plural, =1{Dernière vérification : il y a 1 heure}one{Dernière vérification : il y a # heure}other{Dernière vérification : il y a # heures}}</translation>
 <translation id="6545017243486555795">Effacer toutes les données</translation>
 <translation id="6546511553472444032">Le fichier peut être dangereux</translation>
+<translation id="6556542240154580383">{TAB_COUNT,plural, =1{<ph name="TAB_TITLE" /> et <ph name="TAB_COUNT_ONE" /> autre onglet seront fermés}one{<ph name="TAB_TITLE" /> et <ph name="TAB_COUNT_MANY" /> autre onglet seront fermés}other{<ph name="TAB_TITLE" /> et <ph name="TAB_COUNT_MANY" /> autres onglets seront fermés}}</translation>
 <translation id="6560414384669816528">Utiliser Sogou pour les recherches</translation>
 <translation id="656065428026159829">En voir plus</translation>
 <translation id="6565959834589222080">Le Wi-Fi est utilisé lorsque c'est possible</translation>
@@ -935,6 +940,7 @@
 <translation id="6767294960381293877">La liste d'appareils avec lesquels partager un onglet est ouverte à la mi-hauteur.</translation>
 <translation id="6783942555455976443">Enregistrer cette page pour plus tard et recevoir un rappel</translation>
 <translation id="6795633245022906657">Ouvrez rapidement un nouvel onglet. Pour modifier ce raccourci, accédez à Paramètres.</translation>
+<translation id="6802555630140434547">La fenêtre sera fermée</translation>
 <translation id="6811034713472274749">La page est prête pour consultation</translation>
 <translation id="6813446258015311409">Se connecter à Chrome, ouvert.</translation>
 <translation id="6817747507826986771">Partagez rapidement cette page. Pour modifier ce raccourci, maintenez le doigt sur celui-ci.</translation>
@@ -1162,6 +1168,7 @@
 <translation id="8109613176066109935">Pour synchroniser vos favoris sur tous vos appareils, activez la synchronisation</translation>
 <translation id="8110087112193408731">Afficher votre activité Chrome dans Bien-être numérique?</translation>
 <translation id="8127542551745560481">Modifier la page d'accueil</translation>
+<translation id="8130309322784422030">Vos données de connexion enregistrées peuvent être obsolètes</translation>
 <translation id="813082847718468539">Afficher l'information sur le site</translation>
 <translation id="8137558756159375272">La fonction Appuyer pour rechercher envoie des données de contexte (les mots sélectionnés et la page actuelle) à la recherche Google. Vous pouvez la désactiver dans les <ph name="BEGIN_LINK" />paramètres<ph name="END_LINK" />.</translation>
 <translation id="8153351135626613369">L'Assistant s'affiche lorsqu'il détecte qu'il peut vous aider sur des sites Web compatibles</translation>
@@ -1292,6 +1299,7 @@
 <translation id="8945143127965743188">Impossible de télécharger cette langue : <ph name="LANG" />. Réessayez plus tard.</translation>
 <translation id="8951232171465285730">Chrome vous a fait économiser <ph name="MEGABYTES" /> Mo</translation>
 <translation id="8965591936373831584">en attente</translation>
+<translation id="8968085728801125376">{TAB_COUNT,plural, =1{<ph name="INCOGNITO_TAB_COUNT" /> onglet de navigation privée et <ph name="TAB_COUNT_ONE" /> autre onglet seront fermés}one{<ph name="INCOGNITO_TAB_COUNT" /> onglet de navigation privée et <ph name="TAB_COUNT_MANY" /> autre onglet seront fermés}other{<ph name="INCOGNITO_TAB_COUNT" /> onglet de navigation privée et <ph name="TAB_COUNT_MANY" /> autres onglets seront fermés}}</translation>
 <translation id="8970887620466824814">Une erreur s'est produite.</translation>
 <translation id="8972098258593396643">Télécharger vers le dossier par défaut?</translation>
 <translation id="8987641763863173640">Gérez les paramètres d'aperçu de la vidéo</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_iw.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_iw.xtb
index 10ea58d..e70553cc 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_iw.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_iw.xtb
@@ -181,6 +181,7 @@
 <translation id="2158408438301413340">‏Chrome לא הצליח לבדוק את כל הסיסמאות</translation>
 <translation id="2169830938017475061">עכשיו</translation>
 <translation id="2172688499998841696">התכונה 'תיאורי תמונות' מושבתת</translation>
+<translation id="2172905120685242547">לסגור את החלון?</translation>
 <translation id="2175927920773552910">‏קוד QR</translation>
 <translation id="218608176142494674">שיתוף</translation>
 <translation id="2195339740518523951">‏רוצה ליהנות מהאבטחה החזקה ביותר של Chrome?</translation>
@@ -280,6 +281,7 @@
 <translation id="2779651927720337254">נכשל</translation>
 <translation id="2781151931089541271">נותרה שנייה אחת</translation>
 <translation id="2788468313014644040">מספר הקבוצה</translation>
+<translation id="2800066122460699237">הכרטיסייה <ph name="TAB_TITLE" /> תיסגר</translation>
 <translation id="2801022321632964776">‏עדכון לגרסה האחרונה של Chrome יאפשר לך לקרוא בשפה שלך</translation>
 <translation id="2805756323405976993">אפליקציות</translation>
 <translation id="2806840421670364300">FLoC</translation>
@@ -288,6 +290,7 @@
 <translation id="2827278682606527653">תפריט כרטיס הפיד נפתח בחצי מגובה המסך</translation>
 <translation id="2830783625999891985">התוכן שבלוח מוסתר</translation>
 <translation id="2839327205551510876">בוטל המעקב אחר <ph name="SITE_NAME" /></translation>
+<translation id="2840810876587895427">{TAB_COUNT,plural, =1{כרטיסיית מצב אנונימי אחת (<ph name="TAB_COUNT_ONE" />) תיסגר}two{<ph name="TAB_COUNT_MANY" /> כרטיסיות מצב אנונימי ייסגרו}many{<ph name="TAB_COUNT_MANY" /> כרטיסיות מצב אנונימי ייסגרו}other{<ph name="TAB_COUNT_MANY" /> כרטיסיות מצב אנונימי ייסגרו}}</translation>
 <translation id="2841216154655874070">{NUM_DAYS,plural, =1{התבצעה בדיקה לפני יום אחד}two{התבצעה בדיקה לפני יומיים}many{התבצעה בדיקה לפני # ימים}other{התבצעה בדיקה לפני # ימים}}</translation>
 <translation id="2842985007712546952">תיקיית אב</translation>
 <translation id="2856503607207334158">הכניסה נכשלה</translation>
@@ -672,6 +675,7 @@
 <translation id="5222676887888702881">יציאה</translation>
 <translation id="5227554086496586518">יש להקיש כדי להציג את תוצאות החיפוש</translation>
 <translation id="5233638681132016545">כרטיסייה חדשה</translation>
+<translation id="5235196193381275927">משהו השתבש במהלך הכניסה לחשבון</translation>
 <translation id="5246093389635966745">עריכת קיצור הדרך בסרגל הכלים</translation>
 <translation id="5250483651202458397">צילום מסך. אפשר להקיש כדי לסגור.</translation>
 <translation id="5262378156578470238">תוצג לך התראה כשההורדה הזו תתחיל בתאריך <ph name="DATE" />.</translation>
@@ -895,6 +899,7 @@
 <translation id="6541983376925655882">{NUM_HOURS,plural, =1{התבצעה בדיקה לפני שעה אחת}two{התבצעה בדיקה לפני שעתיים}many{התבצעה בדיקה לפני # שעות}other{התבצעה בדיקה לפני # שעות}}</translation>
 <translation id="6545017243486555795">ניקוי כל הנתונים</translation>
 <translation id="6546511553472444032">הקובץ עלול להזיק</translation>
+<translation id="6556542240154580383">{TAB_COUNT,plural, =1{הכרטיסייה <ph name="TAB_TITLE" /> וכרטיסייה אחת (<ph name="TAB_COUNT_ONE" />) נוספת ייסגרו}two{הכרטיסייה <ph name="TAB_TITLE" /> ו-<ph name="TAB_COUNT_MANY" /> כרטיסיות נוספות ייסגרו}many{הכרטיסייה <ph name="TAB_TITLE" /> ו-<ph name="TAB_COUNT_MANY" /> כרטיסיות נוספות ייסגרו}other{הכרטיסייה <ph name="TAB_TITLE" /> ו-<ph name="TAB_COUNT_MANY" /> כרטיסיות נוספות ייסגרו}}</translation>
 <translation id="6560414384669816528">‏שימוש ב-Sogou לחיפוש</translation>
 <translation id="656065428026159829">אפשרויות נוספות</translation>
 <translation id="6565959834589222080">‏המכשיר יתחבר לרשת Wi-Fi כאשר תהיה זמינה</translation>
@@ -935,6 +940,7 @@
 <translation id="6767294960381293877">רשימת המכשירים שאפשר לשתף איתם כרטיסייה נפתחה בחצי גובה המסך.</translation>
 <translation id="6783942555455976443">שמירת הדף לקריאה במועד מאוחר יותר והגדרת תזכורת</translation>
 <translation id="6795633245022906657">פתיחת כרטיסייה חדשה במהירות. ניתן לערוך את קיצור הדרך ב'הגדרות'.</translation>
+<translation id="6802555630140434547">החלון הזה ייסגר</translation>
 <translation id="6811034713472274749">הדף מוכן להצגה</translation>
 <translation id="6813446258015311409">‏כניסה ל-Chrome, פתוח.</translation>
 <translation id="6817747507826986771">שיתוף הדף הזה במהירות. ניתן לערוך את קיצור הדרך הזה בלחיצה ארוכה.</translation>
@@ -1162,6 +1168,7 @@
 <translation id="8109613176066109935">כדי שהסימניות יופיעו בכל המכשירים שלך, יש להפעיל את הסנכרון</translation>
 <translation id="8110087112193408731">‏להציג את הפעילות שלך ב-Chrome ב'שימוש חכם בדיגיטל'?</translation>
 <translation id="8127542551745560481">עריכת דף הבית</translation>
+<translation id="8130309322784422030">יכול להיות שהפרטים שנשמרו לכניסה לחשבון לא עדכניים</translation>
 <translation id="813082847718468539">הצגת נתוני אתר</translation>
 <translation id="8137558756159375272">‏התכונה 'נגיעה לחיפוש' שולחת אל חיפוש Google את המילה הנבחרת, יחד עם הדף הנוכחי בתור הקשר. אפשר לכבות זאת ב<ph name="BEGIN_LINK" />הגדרות<ph name="END_LINK" />.</translation>
 <translation id="8153351135626613369">‏Assistant תופיע כשהמערכת תזהה שהיא יכולה לעזור לך באתרים נתמכים</translation>
@@ -1292,6 +1299,7 @@
 <translation id="8945143127965743188"><ph name="LANG" /> - לא ניתן היה להוריד את השפה הזו. יש לנסות שוב מאוחר יותר.</translation>
 <translation id="8951232171465285730">‏Chrome חסך לך ‎<ph name="MEGABYTES" /> MB</translation>
 <translation id="8965591936373831584">בהמתנה</translation>
+<translation id="8968085728801125376">{TAB_COUNT,plural, =1{כרטיסיית מצב אנונימי אחת (<ph name="INCOGNITO_TAB_COUNT" />) וכרטיסייה אחת (<ph name="TAB_COUNT_ONE" />) נוספת ייסגרו}two{כרטיסיית מצב אנונימי אחת (<ph name="INCOGNITO_TAB_COUNT" />) ו-<ph name="TAB_COUNT_MANY" /> כרטיסיות נוספות ייסגרו}many{כרטיסיית מצב אנונימי אחת (<ph name="INCOGNITO_TAB_COUNT" />) ו-<ph name="TAB_COUNT_MANY" /> כרטיסיות נוספות ייסגרו}other{כרטיסיית מצב אנונימי אחת (<ph name="INCOGNITO_TAB_COUNT" />) ו-<ph name="TAB_COUNT_MANY" /> כרטיסיות נוספות ייסגרו}}</translation>
 <translation id="8970887620466824814">משהו השתבש.</translation>
 <translation id="8972098258593396643">האם להוריד לתיקיית ברירת המחדל?</translation>
 <translation id="8987641763863173640">ניהול הגדרות התצוגה המקדימה של סרטונים</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb
index 4e6cd31..415031b 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb
@@ -497,6 +497,7 @@
 <translation id="4108998448622696017">අනතුරුදායක සිදුවීම් සිදු වන විට ඒවා අනාවරණ කර ඔබට අවවාද කරයි.</translation>
 <translation id="4116038641877404294">පිටු නොබැඳිව භාවිතා කිරීමට බාගන්න</translation>
 <translation id="4135200667068010335">වසා ඇති පටිත්තක් බෙදා ගැනීම සඳහා වන උපාංග ලැයිස්තුව.</translation>
+<translation id="4137746084635924146">වත්මන් උපාංග භාෂාව</translation>
 <translation id="4141536112466364990">Chrome දැන ගන්න</translation>
 <translation id="4149994727733219643">වෙබ් පිටු සඳහා සරල දසුනක්</translation>
 <translation id="4165986682804962316">අඩවි සැකසුම්</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb
index 7cee2c7..1d35cbd3 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb
@@ -35,10 +35,10 @@
 <translation id="1201402288615127009">తరువాత</translation>
 <translation id="1204037785786432551">లింక్‌ను డౌన్‌లోడ్ చేయి</translation>
 <translation id="1206892813135768548">లింక్ వచనాన్ని కాపీ చేయి</translation>
-<translation id="1208340532756947324">మీ అన్ని పరికరాలలోనూ సమకాలీకరణ చేయాలన్నా లేదా మీ అభిరుచికి అనుగుణంగా సెట్ చేయాలన్నా, తప్పనిసరిగా సమకాలీకరణ ఎంపికను ఆన్ చేయాలి</translation>
+<translation id="1208340532756947324">మీ అన్ని పరికరాలలోనూ సింక్‌ చేయాలన్నా లేదా మీ అభిరుచికి అనుగుణంగా సెట్ చేయాలన్నా, తప్పనిసరిగా సింక్‌ ఎంపికను ఆన్ చేయాలి</translation>
 <translation id="1209206284964581585">ప్రస్తుతానికి దాచు</translation>
 <translation id="1227058898775614466">నావిగేషన్ చరిత్ర</translation>
-<translation id="1231733316453485619">సమకాలీకరణను ఆన్ చేయాలా?</translation>
+<translation id="1231733316453485619">సింక్‌ను ఆన్ చేయాలా?</translation>
 <translation id="123724288017357924">కాష్ కంటెంట్ విస్మరించి ప్రస్తుత పేజీ మళ్లీ లోడ్ చేయండి</translation>
 <translation id="1239792311949352652">ఈ పేజీని వేగంగా షేర్ చేయండి. ఈ షార్ట్‌కట్‌ను ఎడిట్ చేయడానికి, సెట్టింగ్‌లకు వెళ్లండి.</translation>
 <translation id="1240288207750131269"><ph name="LANG" /> లోడ్ అవుతోంది</translation>
@@ -60,10 +60,10 @@
 <translation id="1316212908214730110">chrome_stylized_highlight_</translation>
 <translation id="1327257854815634930">నావిగేషన్ చరిత్ర తెరిచి ఉంది</translation>
 <translation id="1331212799747679585">Chromeని అప్‌డేట్ చేయడం సాధ్యపడదు. మరిన్ని ఎంపికలు</translation>
-<translation id="1332501820983677155">Google Chrome లక్షణ సత్వరమార్గాలు</translation>
+<translation id="1332501820983677155">Google Chrome లక్షణ షార్ట్‌కట్‌లు</translation>
 <translation id="1344653310988386453">హైలైట్ చేసిన టెక్స్ట్‌కు లింక్‌ను చేర్చండి</translation>
 <translation id="1347468774581902829">యాక్టివిటీని మేనేజ్ చేయండి</translation>
-<translation id="1360432990279830238">సైన్ అవుట్ చేసి, సమకాలీకరణను ఆఫ్ చేయలా?</translation>
+<translation id="1360432990279830238">సైన్ అవుట్ చేసి, సింక్‌ను ఆఫ్ చేయలా?</translation>
 <translation id="1373696734384179344">ఎంచుకున్న కంటెంట్‌ను డౌన్‌లోడ్ చేయడానికి తగినంత మెమరీ లేదు.</translation>
 <translation id="1376578503827013741">గణిస్తోంది...</translation>
 <translation id="1383876407941801731">సెర్చ్</translation>
@@ -109,7 +109,7 @@
 <translation id="1724977129262658800">మీ పాస్‌వర్డ్‌ను ఎడిట్ చేయడానికి అన్‌లాక్ చేయండి</translation>
 <translation id="173522743738009831">గోప్యతా పరిరక్షణ టెక్నాలజీల సెట్ గురించి</translation>
 <translation id="1736419249208073774">అన్వేషించండి</translation>
-<translation id="1749561566933687563">మీ బుక్‌మార్క్‌లను సమకాలీకరించండి</translation>
+<translation id="1749561566933687563">మీ బుక్‌మార్క్‌లను సింక్ చేయండి</translation>
 <translation id="17513872634828108">తెరిచిన ట్యాబ్‍లు</translation>
 <translation id="1754404134430936718">టెక్స్ట్ కాపీ అయింది</translation>
 <translation id="1772137089884020309">బుక్‌మార్క్ ఫోల్డర్‌ల లిస్ట్ మూసివేయబడింది</translation>
@@ -131,7 +131,7 @@
 <translation id="1918175104945982129">Assistant వాయిస్ సెర్చ్ సమ్మతి UI సగం ఎత్తులో తెరవబడింది</translation>
 <translation id="1919130412786645364">Chrome సైన్-ఇన్‌ని అనుమతించండి</translation>
 <translation id="1922362554271624559">సూచించిన భాషలు</translation>
-<translation id="1925021887439448749">అనుకూల వెబ్ చిరునామాను నమోదు చేయండి</translation>
+<translation id="1925021887439448749">అనుకూల వెబ్ అడ్రస్‌ను నమోదు చేయండి</translation>
 <translation id="1928696683969751773">అప్‌డేట్‌లు</translation>
 <translation id="19288952978244135">Chromeను మళ్లీ తెరవండి.</translation>
 <translation id="1933845786846280168">ఎంచుకున్న ట్యాబ్</translation>
@@ -148,7 +148,7 @@
 <translation id="2000419248597011803">అడ్రస్ బార్, సెర్చ్ బాక్స్‌లలో చేసే సెర్చ్‌లు, కొన్ని కుక్కీలను మీరు ఆటోమేటిక్ ఆప్షన్‌గా సెట్ చేసిన సెర్చ్ ఇంజిన్‌కు పంపుతుంది</translation>
 <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ఫైల్}other{# ఫైళ్లు}}</translation>
 <translation id="2021896219286479412">పూర్తి స్క్రీన్ సైట్ నియంత్రణలు</translation>
-<translation id="2038563949887743358">డెస్క్‌టాప్ సైట్ అభ్యర్థనను ఆన్ చేయండి</translation>
+<translation id="2038563949887743358">డెస్క్‌టాప్ సైట్ రిక్వెస్ట్‌ను ఆన్ చేయండి</translation>
 <translation id="2039379262107991683">రిమైండర్ పొందటానికి పేజీలను మీ చదవాల్సిన లిస్ట్‌కు జోడించండి</translation>
 <translation id="204321170514947529"><ph name="APP_NAME" /> డేటాను Chromeలో కూడా కలిగి ఉంటుంది</translation>
 <translation id="2046634576464120978">రిజిస్ట్రేషన్ విఫలమైంది</translation>
@@ -192,7 +192,7 @@
 <translation id="2259659629660284697">పాస్‌వర్డ్‌లను ఎగుమతి చేయండి…</translation>
 <translation id="2276696007612801991">మీ పాస్‌వర్డ్‌లను చెక్ చేయడానికి Google ఖాతాకు సైన్ ఇన్ చేయండి</translation>
 <translation id="2278052315791335171">ఈ పాస్‌వర్డ్‌ను తొలగించడం వలన <ph name="SITE" />లో మీ ఖాతా తొలగించబడదు</translation>
-<translation id="2286841657746966508">బిల్లింగ్ చిరునామా</translation>
+<translation id="2286841657746966508">బిల్లింగ్ అడ్రస్‌</translation>
 <translation id="230115972905494466">అనుకూల పరికరాలు ఏవీ కనుగొనబడలేదు</translation>
 <translation id="230155349749732438">ఈ సెట్టింగ్‌ను ఉపయోగించడానికి '<ph name="BEGIN_LINK" />సెర్చ్‌లను, బ్రౌజింగ్‌ను మెరుగుపరచండి<ph name="END_LINK" />' తప్పనిసరిగా ఆన్ చేయబడి ఉండాలి</translation>
 <translation id="2318045970523081853">కాల్ చేయడానికి నొక్కండి</translation>
@@ -237,7 +237,7 @@
 <translation id="2497852260688568942">సింక్‌ను మీ నిర్వాహకులు నిలిపివేశారు</translation>
 <translation id="250020030759455918">మీరు Chromeలో మీ <ph name="SITE_NAME" /> సైన్ ఇన్ స్టేటస్, బ్రౌజింగ్ డేటా ఇంకా సైట్ డేటాను చూస్తారు</translation>
 <translation id="2512164632052122970">కంటెంట్ భాషలు</translation>
-<translation id="2513403576141822879">గోప్యత, భద్రత మరియు డేటా సేకరణకు సంబంధించిన మరిన్ని సెట్టింగ్‌ల కోసం, <ph name="BEGIN_LINK" />సమకాలీకరణ మరియు Google సేవలను<ph name="END_LINK" /> చూడండి</translation>
+<translation id="2513403576141822879">గోప్యత, భద్రత మరియు డేటా సేకరణకు సంబంధించిన మరిన్ని సెట్టింగ్‌ల కోసం, <ph name="BEGIN_LINK" />సింక్‌ మరియు Google సేవలను<ph name="END_LINK" /> చూడండి</translation>
 <translation id="2517472476991765520">స్కాన్ చేయి</translation>
 <translation id="2518590038762162553">లైట్ మోడ్‌లో, Chrome పేజీలను వేగంగా లోడ్ చేస్తుంది, అలాగే 60 శాతం వరకు తక్కువ డేటాను ఉపయోగిస్తుంది. మీరు సందర్శించే పేజీలను ఆప్టిమైజ్ చేయడానికి, Chrome మీ వెబ్ ట్రాఫిక్‌ను Googleకు పంపుతుంది. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
 <translation id="2523184218357549926">మీరు సందర్శించే పేజీల URLలను Googleకి పంపుతుంది</translation>
@@ -284,7 +284,7 @@
 <translation id="2805756323405976993">యాప్స్</translation>
 <translation id="2806840421670364300">FLoC</translation>
 <translation id="281504910091592009">మీ <ph name="BEGIN_LINK" />Google ఖాతా<ph name="END_LINK" />లో సేవ్ చేసిన పాస్‌వర్డ్‌లను చూడండి, మేనేజ్ చేయండి</translation>
-<translation id="2818669890320396765">ఇక ఎప్పుడు ఎక్కడ బుక్‌మార్క్‌లను సెట్‌ చేసినా ఆటోమాటిక్‌గా మీ అన్ని పరికరాలలోనూ పొందాలనుకుంటే, సైన్ ఇన్ చేసి, సమకాలీకరణ ఎంపికను ఆన్ చేయండి</translation>
+<translation id="2818669890320396765">ఇక ఎప్పుడు ఎక్కడ బుక్‌మార్క్‌లను సెట్‌ చేసినా ఆటోమాటిక్‌గా మీ అన్ని పరికరాలలోనూ పొందాలనుకుంటే, సైన్ ఇన్ చేసి, సింక్‌ ఎంపికను ఆన్ చేయండి</translation>
 <translation id="2827278682606527653">Feed card menu half height</translation>
 <translation id="2830783625999891985">క్లిప్ బోర్డ్ కంటెంట్‌లు దాచబడ్డాయి</translation>
 <translation id="2839327205551510876"><ph name="SITE_NAME" /> అనుసరణ రద్దు చేయబడింది</translation>
@@ -299,7 +299,7 @@
 <translation id="2893180576842394309">శోధన, ఇతర Google సేవలను వ్యక్తిగతీకరించడానికి Google మీ చరిత్రను ఉపయోగించే అవకాశం ఉంటుంది</translation>
 <translation id="2900528713135656174">ఈవెంట్‌ను క్రియేట్ చేయండి</translation>
 <translation id="2901411048554510387"><ph name="WEBSITE_TITLE" /> కోసం సూచనలను చూపుతోంది</translation>
-<translation id="2904414404539560095">ట్యాబ్‌ను షేర్ చేయాల్సిన పరికరాల జాబితా పూర్తి ఎత్తులో తెరవబడింది.</translation>
+<translation id="2904414404539560095">ట్యాబ్‌ను షేర్ చేయాల్సిన పరికరాల లిస్ట్‌ పూర్తి ఎత్తులో తెరవబడింది.</translation>
 <translation id="2908243544703713905">చదవని కథనాలు సిద్ధంగా ఉన్నాయి</translation>
 <translation id="2909615210195135082">Google నోటిఫికేషన్‌ల ప్లాట్‌ఫామ్</translation>
 <translation id="2912296070571964914">మీకు ఆసక్తికరమైన టాపిక్‌లను మేనేజ్ చేయండి</translation>
@@ -412,7 +412,7 @@
 <translation id="3557336313807607643">పరిచయాలకు జోడించు</translation>
 <translation id="3563767357928833671">క్లిప్ బోర్డ్ కంటెంట్‌లను చూపబడ్డాయి</translation>
 <translation id="3566923219790363270">Chrome ఇంకా VR కోసం సన్నద్ధమవుతోంది. Chromeని తర్వాత పునఃప్రారంభించండి.</translation>
-<translation id="3568688522516854065">మీ ఇతర పరికరాలలో ఉన్న మీ అన్ని ట్యాబ్‌‌‍లను పొందాలనుకుంటే, సైన్ ఇన్ చేసి, సమకాలీకరణ ఎంపికను ఆన్ చేయాలి</translation>
+<translation id="3568688522516854065">మీ ఇతర పరికరాలలో ఉన్న మీ అన్ని ట్యాబ్‌‌‍లను పొందాలనుకుంటే, సైన్ ఇన్ చేసి, సింక్‌ ఎంపికను ఆన్ చేయాలి</translation>
 <translation id="3577473026931028326">ఏదో తప్పు జరిగింది. మళ్లీ ట్రై చేయండి.</translation>
 <translation id="3587482841069643663">మొత్తం</translation>
 <translation id="3587596251841506391">వెబ్ భద్రతనుపెంచడంలో సాయపడుతుంది</translation>
@@ -423,8 +423,8 @@
 <translation id="3632295766818638029">పాస్‌వర్డ్‌ను చూపుతుంది</translation>
 <translation id="363596933471559332">నిల్వ చేసిన ఆధారాలను ఉపయోగించి ఆటోమేటిక్‌గా వెబ్‌సైట్‌లకు సైన్ ఇన్ చేయండి. ఫీచ‌ర్‌ ఆఫ్ చేయబడినప్పుడు, మీరు వెబ్‌సైట్‌కు సైన్ ఇన్ చేసే ప్రతిసారి ధృవీకరణ కోసం మిమ్మల్ని అడుగుతుంది.</translation>
 <translation id="3653111872753786013"><ph name="WEBSITE_TITLE" />: <ph name="WEBSITE_URL" /></translation>
-<translation id="3658159451045945436">రీసెట్ చేసినట్లయితే, సందర్శించిన సైట్‌ల జాబితాతో పాటు మీ డేటా ఆదాల చరిత్ర తొలగించబడుతుంది.</translation>
-<translation id="3677911431265050325">మొబైల్ సైట్‌ను అభ్యర్థించండి</translation>
+<translation id="3658159451045945436">రీసెట్ చేసినట్లయితే, సందర్శించిన సైట్‌ల లిస్ట్‌తో పాటు మీ డేటా ఆదాల చరిత్ర తొలగించబడుతుంది.</translation>
+<translation id="3677911431265050325">మొబైల్ సైట్‌ను రిక్వెస్ట్ చేయండి</translation>
 <translation id="3687645719033307815">మీరు ఈ పేజీ ప్రివ్యూను చూస్తున్నారు</translation>
 <translation id="3692944402865947621">నిల్వ స్థానాన్ని చేరుకోలేకపోయిన కారణంగా <ph name="FILE_NAME" /> డౌన్‌లోడ్ విఫలమైంది.</translation>
 <translation id="371230970611282515">ప్రమాదకరమైన సంఘటనలు జరగడానికి ముందే, వాటిని గుర్తించి, మిమ్మల్ని హెచ్చరిస్తుంది.</translation>
@@ -467,11 +467,11 @@
 <translation id="3958287878205277013">మీ పరికరం నుండి అజ్ఞాత మోడ్‌లో ఉన్న బ్రౌజింగ్ హిస్టరీని క్లియర్ చేయడానికి, అన్ని అజ్ఞాత ట్యాబ్‌లను మూసివేయండి.</translation>
 <translation id="396192773038029076">{NUM_IN_PROGRESS,plural, =1{కనెక్ట్ అయినప్పుడు, Chrome మీ పేజీని లోడ్ చేస్తుంది}other{కనెక్ట్ అయినప్పుడు, Chrome మీ పేజీలను లోడ్ చేస్తుంది}}</translation>
 <translation id="3962957115499249330">Wi-Fi ద్వారా డౌన్‌లోడ్ ప్రారంభమయినప్పుడు మీకు నోటిఫికేషన్ కనిపిస్తుంది.</translation>
-<translation id="3963007978381181125">Google Payకి సంబంధించిన చెల్లింపు పద్ధతులు మరియు చిరునామాలు రహస్య పదబంధం ఎన్‌క్రిప్షన్‌లో ఉండవు. మీ రహస్య పదబంధాన్ని కలిగి ఉన్నవారు మాత్రమే మీ ఎన్‌క్రిప్ట్ చేసిన డేటాను చదవగలరు. రహస్య పదబంధం Google ద్వారా ఎవరికీ పంపబడదు లేదా నిల్వ చేయబడదు. మీరు మీ రహస్య పదబంధాన్ని మర్చిపోతే లేదా ఈ సెట్టింగ్‌ను మార్చాలనుకుంటే, సమకాలీకరణను రీసెట్ చేయాల్సి ఉంటుంది. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
+<translation id="3963007978381181125">Google Payకి సంబంధించిన చెల్లింపు పద్ధతులు మరియు అడ్రస్‌లు రహస్య పదబంధం ఎన్‌క్రిప్షన్‌లో ఉండవు. మీ రహస్య పదబంధాన్ని కలిగి ఉన్నవారు మాత్రమే మీ ఎన్‌క్రిప్ట్ చేసిన డేటాను చదవగలరు. రహస్య పదబంధం Google ద్వారా ఎవరికీ పంపబడదు లేదా నిల్వ చేయబడదు. మీరు మీ రహస్య పదబంధాన్ని మర్చిపోతే లేదా ఈ సెట్టింగ్‌ను మార్చాలనుకుంటే, సింక్‌ను రీసెట్ చేయాల్సి ఉంటుంది. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
 <translation id="3969142555815019568">Chrome మీ పాస్‌వర్డ్‌లను చెక్ చేయలేదు</translation>
 <translation id="3969863827134279083">పైకి తరలించండి</translation>
 <translation id="3974987681202239636"><ph name="APP_NAME" /> Chromeలో తెరవబడుతుంది. కొనసాగడం ద్వారా, మీరు <ph name="BEGIN_LINK1" />Google సేవా నిబంధనలు<ph name="END_LINK1" />, అలాగే <ph name="BEGIN_LINK2" />Google Chrome, Chrome OS అదనపు సేవా నిబంధనలు<ph name="END_LINK2" />కు అంగీకరిస్తున్నారు. <ph name="BEGIN_LINK3" />Family Linkతో మేనేజ్ చేస్తున్న Google ఖాతాల కోసం గోప్యతా ప్రకటన<ph name="END_LINK3" /> కూడా వర్తిస్తుంది.</translation>
-<translation id="397583555483684758">సమకాలీకరణ పని చేయడం ఆగిపోయింది</translation>
+<translation id="397583555483684758">సింక్‌ పని చేయడం ఆగిపోయింది</translation>
 <translation id="3976396876660209797">ఈ షార్ట్‌కట్‌ను తీసివేసి, పునఃసృష్టించండి</translation>
 <translation id="3985215325736559418">మీరు <ph name="FILE_NAME" />ని మళ్లీ డౌన్‌లోడ్ చేయాలని అనుకుంటున్నారా?</translation>
 <translation id="3987993985790029246">లింక్‌ను కాపీ చేయి</translation>
@@ -493,7 +493,7 @@
 <translation id="4108314971463891922">ఫాలో అవ్వండి</translation>
 <translation id="4108998448622696017">ప్రమాదకరమైన సంఘటనలు జరిగినప్పుడు గుర్తించి, మిమ్మల్ని హెచ్చరిస్తుంది.</translation>
 <translation id="4116038641877404294">పేజీలను ఆఫ్‌లైన్‌లో ఉపయోగించడం కోసం వాటిని డౌన్‌లోడ్ చేసుకోండి</translation>
-<translation id="4135200667068010335">ట్యాబ్‌ను షేర్ చేయాల్సిన పరికరాల జాబితా మూసివేయబడింది.</translation>
+<translation id="4135200667068010335">ట్యాబ్‌ను షేర్ చేయాల్సిన పరికరాల లిస్ట్‌ మూసివేయబడింది.</translation>
 <translation id="4141536112466364990">Chrome గురించి తెలుసుకోండి</translation>
 <translation id="4149994727733219643">వెబ్ పేజీల కోసం సరళమైన వీక్షణ</translation>
 <translation id="4165986682804962316">సైట్ సెట్టింగ్‌లు</translation>
@@ -504,7 +504,7 @@
 <translation id="4195643157523330669">కొత్త ట్యాబ్‌లో తెరువు</translation>
 <translation id="4196597275619698563">కార్డ్‌ను క్రియేట్ చేయండి</translation>
 <translation id="4198423547019359126">డౌన్‌లోడ్ స్థానాలు అందుబాటులో లేవు</translation>
-<translation id="4209895695669353772">Google ద్వారా మీ అభిరుచికి తగిన కంటెంట్‌ను సిఫార్సుల రూపంలో పొందాలనుకుంటే, సమకాలీకరణ ఎంపికను ఆన్ చేయాలి</translation>
+<translation id="4209895695669353772">Google ద్వారా మీ అభిరుచికి తగిన కంటెంట్‌ను సిఫార్సుల రూపంలో పొందాలనుకుంటే, సింక్‌ ఎంపికను ఆన్ చేయాలి</translation>
 <translation id="4225895483398857530">Toolbar షార్ట్‌కట్</translation>
 <translation id="4242533952199664413">సెట్టింగ్‌లను తెరువు</translation>
 <translation id="4248098802131000011">డేటా ఉల్లంఘనలు, ఇతర సెక్యూరిటీ సమస్యల నుండి మీ పాస్‌వర్డ్‌లను సురక్షితంగా ఉంచుకోండి</translation>
@@ -534,7 +534,7 @@
 <translation id="4450672886426705087">Google నుండి ఫలితాలను సెర్చ్ చేయండి.</translation>
 <translation id="4452411734226507615"><ph name="TAB_TITLE" /> ట్యాబ్‌ను మూసివేయండి</translation>
 <translation id="4452548195519783679"><ph name="FOLDER_NAME" />కి బుక్‌మార్క్ చేశారు</translation>
-<translation id="4472118726404937099">మీ అన్ని పరికరాలలో సమకాలీకరణ చేయాలన్నా లేదా మీ అభిరుచికి అనుగుణంగా సెట్ చేయాలన్నా, సైన్ ఇన్ చేసి సమకాలీకరణ ఎంపికను ఆన్ చేయాలి</translation>
+<translation id="4472118726404937099">మీ అన్ని పరికరాలలో సింక్‌ చేయాలన్నా లేదా మీ అభిరుచికి అనుగుణంగా సెట్ చేయాలన్నా, సైన్ ఇన్ చేసి సింక్‌ ఎంపికను ఆన్ చేయాలి</translation>
 <translation id="447252321002412580">Chrome ఫీచర్‌లు మరియు పనితీరును మెరుగుపరచడంలో సహాయపడండి</translation>
 <translation id="4479972344484327217">Chromeలో <ph name="MODULE" /> ఇన్‌స్టాల్ చేయబడుతోంది…</translation>
 <translation id="4487967297491345095">Chrome యాప్‌ డేటా మొత్తం శాశ్వతంగా తొలగించబడుతుంది. డేటాలో అన్ని ఫైళ్లు, సెట్టింగ్‌లు, ఖాతాలు, డేటాబేస్‌లు మొదలైనవి ఉంటాయి.</translation>
@@ -547,7 +547,7 @@
 <translation id="451872707440238414">మీ బుక్‌మార్క్‌లను వెతకండి</translation>
 <translation id="4521489764227272523">ఎంచుకోబడిన డేటా Chrome నుండి, సింక్ చేసిన‌ మీ పరికరాల నుండి తీసివేయబడింది.
 
-మీ Google ఖాతా <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />లో ఇతర Google సేవలకు సంబంధించిన శోధనలు, కార్యకలాపం వంటి ఇతర రకాల బ్రౌజింగ్ చరిత్రను కలిగి ఉండవచ్చు.</translation>
+మీ Google ఖాతా <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />లో ఇతర Google సేవలకు సంబంధించిన శోధనలు, యాక్టివిటీ వంటి ఇతర రకాల బ్రౌజింగ్ చరిత్రను కలిగి ఉండవచ్చు.</translation>
 <translation id="4532845899244822526">ఫోల్డర్‌ను ఎంచుకోండి</translation>
 <translation id="4538018662093857852">లైట్ మోడ్‌ని ఆన్ చేయండి</translation>
 <translation id="4547551584605870320">{TAB_COUNT,plural, =1{<ph name="TAB_COUNT_ONE" /> ట్యాబ్}other{<ph name="TAB_COUNT_MANY" /> ట్యాబ్‌లు, <ph name="TAB_COUNT_INCOGNITO" /> అజ్ఞాత ట్యాబ్}}</translation>
@@ -592,9 +592,9 @@
 <translation id="4766678251456904326">పరికరానికి మరొక ఖాతాను జోడించండి</translation>
 <translation id="4767937498890654900">{FILE_COUNT,plural, =1{1 డౌన్‌లోడ్ షెడ్యూల్ చేయబడింది.}other{# డౌన్‌లోడ్‌లు షెడ్యూల్ చేయబడ్డాయి.}}</translation>
 <translation id="4791358705705538979">వెబ్ అంతటా చెక్అవుట్ వంటి టాస్క్‌లను పూర్తి చేయడానికి మీకు సహాయపడుతుంది</translation>
-<translation id="4802417911091824046">Google Payకి సంబంధించిన చెల్లింపు పద్ధతులు మరియు చిరునామాలు రహస్య పదబంధం ఎన్‌క్రిప్షన్‌లో ఉండవు.
+<translation id="4802417911091824046">Google Payకి సంబంధించిన చెల్లింపు పద్ధతులు మరియు అడ్రస్‌లు రహస్య పదబంధం ఎన్‌క్రిప్షన్‌లో ఉండవు.
 
-ఈ సెట్టింగ్‌ని మార్చడం కోసం, <ph name="BEGIN_LINK" />సమకాలీకరణను రీసెట్ చేయండి<ph name="END_LINK" /></translation>
+ఈ సెట్టింగ్‌ని మార్చడం కోసం, <ph name="BEGIN_LINK" />సింక్‌ను రీసెట్ చేయండి<ph name="END_LINK" /></translation>
 <translation id="4807098396393229769">కార్డ్‌పై పేరు</translation>
 <translation id="4818017973810341238">డిజిటల్ అస్సెట్ లింక్‌ల వెరిఫికేషన్ <ph name="VIOLATED_URL" /> వద్ద విఫలమైంది</translation>
 <translation id="4831037795716408498">కంటెంట్‌ను డౌన్‌లోడ్ చేయండి</translation>
@@ -668,7 +668,7 @@
 <translation id="5210286577605176222">మునుపటి ట్యాబ్‌కు వెళ్లండి</translation>
 <translation id="5210365745912300556">ట్యాబ్‌ను మూసివేయి</translation>
 <translation id="5213672942202814946">వాయిస్ సెర్చ్‌ను ఉపయోగించండి</translation>
-<translation id="5215116848420601511">Google Payని ఉపయోగిస్తున్న చెల్లింపు పద్ధతులు మరియు చిరునామాలు</translation>
+<translation id="5215116848420601511">Google Payని ఉపయోగిస్తున్న చెల్లింపు పద్ధతులు మరియు అడ్రస్‌లు</translation>
 <translation id="5222676887888702881">సైన్ ఔట్</translation>
 <translation id="5227554086496586518">సెర్చ్ ఫలితాలను చూడటానికి ట్యాప్ చేయండి</translation>
 <translation id="5233638681132016545">కొత్త‌ టాబ్</translation>
@@ -683,7 +683,7 @@
 <translation id="5317780077021120954">సేవ్ చేయి</translation>
 <translation id="5319359161174645648">Chromeను Google సిఫార్సు చేస్తోంది</translation>
 <translation id="5324858694974489420">పేరెంటల్ సెట్టింగ్‌లు</translation>
-<translation id="5342314432463739672">అనుమతి అభ్యర్థనలు</translation>
+<translation id="5342314432463739672">అనుమతి రిక్వెస్ట్‌లు</translation>
 <translation id="5355191726083956201">మెరుగైన రక్షణ ఆన్‌లో ఉంది</translation>
 <translation id="5357811892247919462">ట్యాబ్‌ను అందుకున్నారు</translation>
 <translation id="5368958499335451666">{OPEN_TABS,plural, =1{<ph name="OPEN_TABS_ONE" /> ట్యాబ్ తెరవబడి ఉంది, ట్యాబ్‌లను మార్చడం కోసం నొక్కండి}other{<ph name="OPEN_TABS_MANY" /> ట్యాబ్‌లు తెరవబడి ఉన్నాయి, ట్యాబ్‌లను మార్చడం కోసం నొక్కండి}}</translation>
@@ -697,7 +697,7 @@
 <translation id="5433691172869980887">వినియోగదారు పేరు కాపీ చేయబడింది</translation>
 <translation id="543509235395288790"><ph name="COUNT" /> ఫైళ్లను డౌన్‌లోడ్ చేస్తోంది (<ph name="MEGABYTES" />).</translation>
 <translation id="5441466871879044658">ఈ భాషలోకి అనువదించు</translation>
-<translation id="5441522332038954058">చిరునామా పట్టీకి వెళ్లండి</translation>
+<translation id="5441522332038954058">అడ్రస్‌ పట్టీకి వెళ్లండి</translation>
 <translation id="544776284582297024">ఒకే సమయంలో ట్యాబ్‍లను తెరిచి వేర్వేరు పేజీలను సందర్శించడానికి, ట్యాబ్‍లను తెరువు బటన్‍ను ట్యాప్ చేయండి</translation>
 <translation id="545042621069398927">మీ డౌన్‌లోడ్‌‌ను వేగవంతం చేస్తోంది.</translation>
 <translation id="5454166040603940656"><ph name="PROVIDER" />తో</translation>
@@ -735,7 +735,7 @@
 <translation id="5655963694829536461">మీ డౌన్‌లోడ్‌లను వెతకండి</translation>
 <translation id="5659593005791499971">ఇమెయిల్</translation>
 <translation id="5665379678064389456"><ph name="APP_NAME" />లో ఈవెంట్‌ను క్రియేట్ చేయండి</translation>
-<translation id="5668404140385795438">దగ్గరకు జూమ్ చేయడాన్ని నిరోధించడానికి ప్రయత్నించే వెబ్‌సైట్ అభ్యర్థనను పట్టించుకోదు</translation>
+<translation id="5668404140385795438">దగ్గరకు జూమ్ చేయడాన్ని నిరోధించడానికి ప్రయత్నించే వెబ్‌సైట్ రిక్వెస్ట్‌ను పట్టించుకోదు</translation>
 <translation id="5683547024293500885">అప్‌డేట్‌లను Chrome చెక్ చేయలేదు</translation>
 <translation id="5686790454216892815">ఫైల్ పేరు చాలా పొడవుగా ఉంది</translation>
 <translation id="569536719314091526">మరిన్ని ఎంపికలు బటన్‌ని ఉపయోగించి ఈ పేజీని ఏ భాషలోకైనా అనువదించుకోవచ్చు</translation>
@@ -772,7 +772,7 @@
 <translation id="5855546874025048181">మెరుగుపరచండి: <ph name="REFINE_TEXT" /></translation>
 <translation id="5860033963881614850">ఆఫ్ అయ్యింది</translation>
 <translation id="5860491529813859533">ఆన్ చేయండి</translation>
-<translation id="5862731021271217234">మీ ఇతర పరికరాలలో ఉన్న మీ అన్ని ట్యాబ్‌లను పొందాలనుకుంటే, సమకాలీకరణ ఎంపికను ఆన్ చేయాలి</translation>
+<translation id="5862731021271217234">మీ ఇతర పరికరాలలో ఉన్న మీ అన్ని ట్యాబ్‌లను పొందాలనుకుంటే, సింక్‌ ఎంపికను ఆన్ చేయాలి</translation>
 <translation id="5864174910718532887">వివరాలు: సైట్ పేరుతో క్రమీకరించబడ్డాయి</translation>
 <translation id="5864419784173784555">మరొక డౌన్‌లోడ్ కోసం వేచి ఉంది…</translation>
 <translation id="5865733239029070421">వినియోగ గణాంకాలను, క్రాష్ రిపోర్ట్‌లను ఆటోమేటిక్‌గా Googleకు పంపుతుంది</translation>
@@ -832,9 +832,9 @@
 <translation id="6210748933810148297"><ph name="EMAIL" /> కాదా?</translation>
 <translation id="6211386937064921208">ఈ పేజీని ప్రివ్యూ చేస్తోంది</translation>
 <translation id="6221633008163990886">మీ పాస్‌వర్డ్‌లను ఎగుమతి చేయడానికి అన్‌లాక్ చేయండి</translation>
-<translation id="6232535412751077445">“ట్రాక్ చేయవద్దు”ను ప్రారంభించడం వ‌ల్ల‌ మీ బ్రౌజింగ్ ట్రాఫిక్‌తో పాటు ఒక అభ్యర్థన చేర్చబడుతుంది. ఆ అభ్యర్థనకు వెబ్‌సైట్ ప్రతిస్పందించిందా లేదా మరియు అభ్యర్థన ఎలా ప‌రిగ‌ణించ‌బ‌డింది అనే వాటిపై ఏ ప్రభావం అయినా ఆధారపడి ఉంటుంది. 
+<translation id="6232535412751077445">“ట్రాక్ చేయవద్దు”ను ప్రారంభించడం వ‌ల్ల‌ మీ బ్రౌజింగ్ ట్రాఫిక్‌తో పాటు ఒక రిక్వెస్ట్‌ చేర్చబడుతుంది. ఆ రిక్వెస్ట్‌కు వెబ్‌సైట్ ప్రతిస్పందించిందా లేదా మరియు రిక్వెస్ట్‌ ఎలా ప‌రిగ‌ణించ‌బ‌డింది అనే వాటిపై ఏ ప్రభావం అయినా ఆధారపడి ఉంటుంది. 
 
-ఉదాహరణకు, కొన్ని వెబ్‌సైట్‌లు ఈ అభ్యర్థనకు ప్రతిస్పందనగా మీరు సందర్శించిన ఇతర వెబ్‌సైట్‌ల ఆధారితం కాని ప్రకటనలను మీకు చూపుతాయి. అనేక వెబ్‌సైట్‌లు భద్రతను మెరుగుపరచడం, కంటెంట్, ప్రకటనలు మరియు సిఫార్సులను అందించడం మరియు నివేదన గణాంకాలను రూపొందించడం మొదలైనవాటి కోసం ఇప్పటికీ మీ బ్రౌజింగ్ డేటాను సేకరించి, ఉపయోగిస్తాయి.</translation>
+ఉదాహరణకు, కొన్ని వెబ్‌సైట్‌లు ఈ రిక్వెస్ట్‌కు ప్రతిస్పందనగా మీరు సందర్శించిన ఇతర వెబ్‌సైట్‌ల ఆధారితం కాని ప్రకటనలను మీకు చూపుతాయి. అనేక వెబ్‌సైట్‌లు భద్రతను మెరుగుపరచడం, కంటెంట్, ప్రకటనలు మరియు సిఫార్సులను అందించడం మరియు నివేదన గణాంకాలను రూపొందించడం మొదలైనవాటి కోసం ఇప్పటికీ మీ బ్రౌజింగ్ డేటాను సేకరించి, ఉపయోగిస్తాయి.</translation>
 <translation id="624789221780392884">అప్‌డేట్‌ సిద్ధంగా ఉంది</translation>
 <translation id="6264376385120300461">ఏదేమైనా డౌన్‌లోడ్ చేయండి</translation>
 <translation id="6277522088822131679">పేజీని ముద్రిస్తున్నప్పుడు సమస్య ఏర్పడింది. దయచేసి మళ్లీ ప్రయత్నించండి.</translation>
@@ -842,10 +842,10 @@
 <translation id="6292420053234093573">Chromeను ఉపయోగించడం ద్వారా, మీరు <ph name="BEGIN_LINK1" />Google సేవా నిబంధనలు<ph name="END_LINK1" />, అలాగే <ph name="BEGIN_LINK2" />Google Chrome, Chrome OS అదనపు సేవా నిబంధనలు<ph name="END_LINK2" />కు అంగీకరిస్తున్నారు.</translation>
 <translation id="6297765934698848803">మీ పరికరాన్ని మేనేజ్ చేసే సంస్థ మీ కెమెరాను ఆఫ్ చేసింది.</translation>
 <translation id="6301525844455696527">మీ చదవాల్సిన లిస్ట్‌ను మిస్ కాకుండా చూడండి</translation>
-<translation id="6303969859164067831">సైన్ అవుట్ చేసి, సమకాలీకరణను ఆఫ్ చేయండి</translation>
+<translation id="6303969859164067831">సైన్ అవుట్ చేసి, సింక్‌ను ఆఫ్ చేయండి</translation>
 <translation id="6312687380483398334">వెబ్ యాప్‌లు (నిశ్శబ్దం)</translation>
 <translation id="6316139424528454185">Android వెర్షన్‌కు మద్దతు లేదు</translation>
-<translation id="6324034347079777476">Android సిస్టమ్ సమకాలీకరణ నిలిపివేయబడింది</translation>
+<translation id="6324034347079777476">Android సిస్టమ్ సింక్‌ నిలిపివేయబడింది</translation>
 <translation id="6324916366299863871">షార్ట్‌కట్‌ను ఎడిట్ చేయండి</translation>
 <translation id="6324977638108296054">హైలైట్ చేసిన టెక్స్ట్‌కు లింక్ క్రియేట్ చేయబడదు</translation>
 <translation id="6324997754869598316">(ఎర్రర్ <ph name="ERROR_CODE" />)</translation>
@@ -869,7 +869,7 @@
 <translation id="6410404864818553978">ప్రాథమిక డేటా వినియోగం</translation>
 <translation id="6410883413783534063">ఒకే సమయంలో వేర్వేరు పేజీలను సందర్శించడానికి ట్యాబ్‌లను తెరవండి</translation>
 <translation id="6411219469806822692">ఇంతకంటే పైకి వెళ్లడం సాధ్యపడదు. పేజీకి మరింత పైనుండి ప్రారంభించడానికి ట్రై చేయండి.</translation>
-<translation id="6412673304250309937">Chromeలో స్టోర్ చేసిన సురక్షితం కాని సైట్‌ల జాబితాతో కూడిన URLలను చెక్ చేస్తుంది. ఏదైనా సైట్ మీ పాస్‌వర్డ్‌ను దొంగిలించే ప్రయత్నం చేసినా, లేదంటే ఏదైనా హానికరమైన ఫైల్‌ను మీరు డౌన్‌లోడ్ చేసినా, సదరు URLలను, ఆయా పేజీల కంటెంట్‌లోని కొన్ని భాగాలను కూడా Chrome, 'సురక్షిత బ్రౌజింగ్'కు పంపవచ్చు.</translation>
+<translation id="6412673304250309937">Chromeలో స్టోర్ చేసిన సురక్షితం కాని సైట్‌ల లిస్ట్‌తో కూడిన URLలను చెక్ చేస్తుంది. ఏదైనా సైట్ మీ పాస్‌వర్డ్‌ను దొంగిలించే ప్రయత్నం చేసినా, లేదంటే ఏదైనా హానికరమైన ఫైల్‌ను మీరు డౌన్‌లోడ్ చేసినా, సదరు URLలను, ఆయా పేజీల కంటెంట్‌లోని కొన్ని భాగాలను కూడా Chrome, 'సురక్షిత బ్రౌజింగ్'కు పంపవచ్చు.</translation>
 <translation id="641643625718530986">ముద్రించు…</translation>
 <translation id="6427112570124116297">వెబ్‌ను అనువదించండి</translation>
 <translation id="6433501201775827830">మీ శోధన ఇంజిన్‌ను ఎంచుకోండి</translation>
@@ -932,7 +932,7 @@
 <translation id="6738516213925468394"><ph name="TIME" /> తేదీన మీ <ph name="BEGIN_LINK" />సింక్‌ రహస్య పదబంధం <ph name="END_LINK" />తో మీ డేటా ఎన్‌క్రిప్ట్ చేయ‌బ‌డింది. సింక్‌ను ప్రారంభించడానికి దీన్ని నమోదు చేయండి.</translation>
 <translation id="6738867403308150051">డౌన్‌లోడ్ చేస్తోంది...</translation>
 <translation id="6751521182688001123">త్వరగా కొత్త ట్యాబ్‌ను తెరవండి. ఈ షార్ట్‌కట్‌ను ఎడిట్ చేయడానికి, నొక్కి, పట్టుకోండి.</translation>
-<translation id="6767294960381293877">ట్యాబ్‌ను షేర్ చేయాల్సిన పరికరాల జాబితా సగం ఎత్తులో తెరవబడింది.</translation>
+<translation id="6767294960381293877">ట్యాబ్‌ను షేర్ చేయాల్సిన పరికరాల లిస్ట్‌ సగం ఎత్తులో తెరవబడింది.</translation>
 <translation id="6783942555455976443">ఈ పేజీని తర్వాత కోసం సేవ్ చేసి, ఒక రిమైండర్‌ను పొందండి</translation>
 <translation id="6795633245022906657">కొత్త ట్యాబ్‌ను వేగంగా తెరవండి. ఈ షార్ట్‌కట్‌ను ఎడిట్ చేయడానికి, సెట్టింగ్‌లకు వెళ్లండి.</translation>
 <translation id="6811034713472274749">పేజీ వీక్షించడానికి సిద్ధంగా ఉంది</translation>
@@ -955,7 +955,7 @@
 <translation id="6891726759199484455">మీ పాస్‌వర్డ్‌ను కాపీ చేయడానికి అన్‌లాక్ చేయండి</translation>
 <translation id="6896758677409633944">కాపీ చేయి</translation>
 <translation id="6900532703269623216">మెరుగైన రక్షణ</translation>
-<translation id="6903907808598579934">సమకాలీకరణను ఆన్ చేయి</translation>
+<translation id="6903907808598579934">సింక్‌ను ఆన్ చేయి</translation>
 <translation id="6929699136511445623">Android సిస్టమ్ సింక్‌ని ఎనేబుల్ చేయి</translation>
 <translation id="6942665639005891494">సెట్టింగ్‌ల మెనూ ఎంపికను ఉపయోగించి డిఫాల్ట్ డౌన్‌లోడ్ స్థానాన్ని మార్చండి</translation>
 <translation id="694267552845942083">మీరు ప్రస్తుతం మీ సింక్ సెట్టింగ్‌లను అనుకూలీకరిస్తున్నారు. సింక్‌ను ఆన్ చేయడం పూర్తి చేయడానికి, స్క్రీన్ దిగువ భాగం సమీపంలోని 'నిర్ధారించు' బటన్‌ను ట్యాప్ చేయండి. పైకి నావిగేట్ చేయి</translation>
@@ -983,7 +983,7 @@
 <translation id="7080806333218412752">URLలను తనిఖీ చేయడానికి వాటిని సురక్షిత బ్రౌజింగ్‌కు పంపుతుంది. కొత్త రకం ప్రమాదాలను గుర్తించడంలో సహాయపడటానికి కొన్ని నమూనా పేజీలు, డౌన్‌లోడ్‌లు, ఎక్స్‌టెన్షన్ యాక్టివిటీ, సిస్టమ్ సమాచారాన్ని కూడా పంపుతుంది. మీరు సైన్ ఇన్ చేసి ఉన్నప్పుడు, మిమ్మల్ని అన్ని Google యాప్‌లలో కాపాడటానికి ఈ డేటాను తాత్కాలికంగా మీ Google ఖాతాకు లింక్ చేస్తుంది.</translation>
 <translation id="7088681679121566888">Chrome అప్‌డేట్ చేసి ఉంది</translation>
 <translation id="7106762743910369165">మీ బ్రౌజర్ మీ సంస్థ ద్వారా మేనేజ్ చేయబడుతుంది</translation>
-<translation id="7121362699166175603">చిరునామా బార్‌లో చరిత్ర, స్వీయపూరింపులను తొలగిస్తుంది. మీ Google ఖాతా <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />లో ఇతర రూపాల్లో ఉన్న బ్రౌజింగ్ చరిత్రను కలిగి ఉండవచ్చు.</translation>
+<translation id="7121362699166175603">అడ్రస్‌ బార్‌లో చరిత్ర, స్వీయపూరింపులను తొలగిస్తుంది. మీ Google ఖాతా <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />లో ఇతర రూపాల్లో ఉన్న బ్రౌజింగ్ చరిత్రను కలిగి ఉండవచ్చు.</translation>
 <translation id="7138678301420049075">ఇతర</translation>
 <translation id="7146622961999026732">ఈ సైట్‌లు, యాప్‌లు మీకు ముఖ్యమైనవిగా అనిపిస్తున్నాయి:</translation>
 <translation id="7149893636342594995">గత 72 గంటలు</translation>
@@ -1063,10 +1063,10 @@
 <translation id="7581273696622423628">సర్వేలో పాల్గొనండి</translation>
 <translation id="7583262514280211622">మీ చదవాల్సిన లిస్ట్‌ను మీరు ఇక్కడ కనుగొనవచ్చు</translation>
 <translation id="7588219262685291874">మీ పరికరం బ్యాటరీ సేవర్ ఆన్‌లో ఉన్నప్పుడు ముదురు రంగు థీమ్‌ను ఆన్ చేస్తుంది</translation>
-<translation id="7593557518625677601">Chrome సమకాలీకరణను ప్రారంభిండానికి Android సెట్టింగ్‌లు తెరిచి, Android సిస్టమ్ సమకాలీకరణను మళ్లీ ప్రారంభించండి</translation>
+<translation id="7593557518625677601">Chrome సింక్‌ను ప్రారంభిండానికి Android సెట్టింగ్‌లు తెరిచి, Android సిస్టమ్ సింక్‌ను మళ్లీ ప్రారంభించండి</translation>
 <translation id="7594687499944811403"><ph name="TOP_ORIGIN" />కు సంబంధించి అది మీరేనని <ph name="EMBEDDED_ORIGIN" />ను వెరిఫై చేయనీయండి</translation>
 <translation id="7596558890252710462">ఆపరేటింగ్ సిస్టమ్</translation>
-<translation id="7605594153474022051">సమకాలీకరణ పని చేయడం లేదు</translation>
+<translation id="7605594153474022051">సింక్‌ పని చేయడం లేదు</translation>
 <translation id="7606077192958116810">లైట్ మోడ్ ఆన్ చేయబడింది. సెట్టింగ్‌లలో దీనిని నిర్వహించండి.</translation>
 <translation id="7612619742409846846">Googleకి ఇలా సైన్ ఇన్ చేశారు</translation>
 <translation id="7619072057915878432">నెట్‌వర్క్ వైఫల్యాల కారణంగా <ph name="FILE_NAME" /> డౌన్‌లోడ్ విఫలమైంది.</translation>
@@ -1088,7 +1088,7 @@
 <translation id="7760558538939385512">(<ph name="MEGABYTES" />)\n<ph name="URL" /></translation>
 <translation id="7761849928583394409">తేదీ, సమయం ఎంచుకోండి</translation>
 <translation id="7762668264895820836">SD కార్డ్ <ph name="SD_CARD_NUMBER" /></translation>
-<translation id="7764225426217299476">చిరునామాను జోడించు</translation>
+<translation id="7764225426217299476">అడ్రస్‌ను జోడించు</translation>
 <translation id="7772032839648071052">రహస్య పదబంధాన్ని నిర్ధారించండి</translation>
 <translation id="7772375229873196092"><ph name="APP_NAME" />ను మూసివేయి</translation>
 <translation id="7774809984919390718">{PAYMENT_METHOD,plural, =1{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 మరియు మరో <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}other{<ph name="PAYMENT_METHOD_PREVIEW" />\u2026 మరియు మరో <ph name="NUMBER_OF_ADDITIONAL_PAYMENT_METHODS" />}}</translation>
@@ -1159,8 +1159,8 @@
 <translation id="8088176524274673045">సమీపంలోని వ్యక్తులతో షేర్ చేయడం కోసం, ఈ QR కోడ్‌ను స్కాన్ చేయడానికి వారిని అనుమతించండి</translation>
 <translation id="8103578431304235997">అజ్ఞాత ట్యాబ్</translation>
 <translation id="8105893657415066307"><ph name="DESCRIPTION" /> <ph name="SEPARATOR" /> <ph name="FILE_SIZE" /></translation>
-<translation id="8109613176066109935">ఇక ఎప్పుడు ఎక్కడ బుక్‌మార్క్‌లను సెట్‌ చేసినా ఆటోమాటిక్‌గా మీ అన్ని పరికరాలలో పొందాలనుకుంటే, సమకాలీకరణ ఎంపికని ఆన్ చేయండి</translation>
-<translation id="8110087112193408731">డిజిటల్ సంక్షేమంలో మీ Chrome కార్యకలాపాన్ని చూపించాలా?</translation>
+<translation id="8109613176066109935">ఇక ఎప్పుడు ఎక్కడ బుక్‌మార్క్‌లను సెట్‌ చేసినా ఆటోమాటిక్‌గా మీ అన్ని పరికరాలలో పొందాలనుకుంటే, సింక్‌ ఎంపికని ఆన్ చేయండి</translation>
+<translation id="8110087112193408731">డిజిటల్ సంక్షేమంలో మీ Chrome యాక్టివిటీని చూపించాలా?</translation>
 <translation id="8127542551745560481">హోమ్ పేజీని ఎడిట్ చేయండి</translation>
 <translation id="813082847718468539">సైట్ సమాచారాన్ని చూడండి</translation>
 <translation id="8137558756159375272">'వెతకడానికి తాకండి' ఫీచర్, ఎంచుకున్న పదాన్ని మరియు ప్రస్తుత పేజీని సంబంధిత సందర్భంగా Google శోధనకు పంపుతుంది. మీరు <ph name="BEGIN_LINK" />సెట్టింగ్‌లు<ph name="END_LINK" />లో దీనిని ఆఫ్ చేయవచ్చు.</translation>
@@ -1207,7 +1207,7 @@
 <translation id="8443209985646068659">Chrome అప్‌డేట్ అవదు</translation>
 <translation id="8445448999790540984">పాస్‌వర్డ్‌లను ఎగుమతి చేయడం సాధ్యం కాదు</translation>
 <translation id="8453310803815879010">డైనో గేమ్‌ను ప్రారంభించండి</translation>
-<translation id="8461694314515752532">మీ స్వంత సమకాలీకరణ రహస్య పదబంధంతో సమకాలీకరించబడిన డేటాని ఎన్‌క్రిప్ట్ చేయండి</translation>
+<translation id="8461694314515752532">మీ స్వంత సింక్‌ రహస్య పదబంధంతో సమకాలీకరించబడిన డేటాని ఎన్‌క్రిప్ట్ చేయండి</translation>
 <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> ఇంటర్నెట్‌కు కనెక్ట్ చేయబడి ఉందని నిర్ధారించుకోండి</translation>
 <translation id="8473863474539038330">అడ్రస్‌లు, మరికొన్ని వివరాలు</translation>
 <translation id="8481921391193215807">ఆన్ చేసినప్పుడు, సైట్‌లు వారి కంటెంట్, అలాగే సర్వీస్‌లను అందించడం కోసం, ఇక్కడ చూపిన గోప్యతా-సంరక్షణ పద్ధతులను ఉపయోగించవచ్చు. వీటిలో క్రాస్-సైట్ ట్రాకింగ్ ప్రత్యామ్నాయాలు కలిగి ఉంటాయి. కాలానుగుణంగా మరిన్ని ట్రయల్‌లు జోడించబడవచ్చు.
@@ -1242,7 +1242,7 @@
 <translation id="8616006591992756292">మీ Google ఖాతా <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />లో ఇతర రూపాల్లో ఉన్న బ్రౌజింగ్ చరిత్రను కలిగి ఉండవచ్చు.</translation>
 <translation id="8617240290563765734">డౌన్‌లోడ్ చేసిన కంటెంట్‌లో పేర్కొన్న సూచిత URLని తెరవాలా?</translation>
 <translation id="8621068256433641644">ఫోన్</translation>
-<translation id="8636825310635137004">మీ ఇతర పరికరాల నుండి మీ ట్యాబ్‌లను పొందడానికి, సమకాలీకరణను ఆన్ చేయండి</translation>
+<translation id="8636825310635137004">మీ ఇతర పరికరాల నుండి మీ ట్యాబ్‌లను పొందడానికి, సింక్‌ను ఆన్ చేయండి</translation>
 <translation id="8641930654639604085">వయోజన కంటెంట్ గల సైట్‌లను బ్లాక్ చేయడానికి ప్రయత్నించండి</translation>
 <translation id="864544049772947936">విండోలను మేనేజ్ చేయండి (<ph name="INSTANCE_COUNTS" />)</translation>
 <translation id="8655129584991699539">మీరు Chrome సెట్టింగ్‌లలో డేటాను తీసివేయవచ్చు</translation>
@@ -1287,7 +1287,7 @@
 <translation id="892496902842311796"><ph name="LANG" /> సిద్ధంగా ఉంది</translation>
 <translation id="8928626432984354940">సగం ఎత్తులో తెరవబడిన బుక్‌మార్క్ ఫోల్డర్‌ల లిస్ట్</translation>
 <translation id="8937267401510745927">టాస్క్‌లు పూర్తి చేయడంలో మీకు సహాయపడటానికి, మీరు Assistantను ఉపయోగించే సైట్‌ల URLలు అలాగే వాటిలోని కంటెంట్‌ను, వీటితో పాటు మీరు Assistant ద్వారా సమర్పించే సమాచారాన్ని Google పొందుతుంది. ఈ సమాచారం మీ Google ఖాతాలో స్టోర్ చేయబడవచ్చు. మీరు Assistantను Chrome సెట్టింగ్‌లలో ఆఫ్ చేయవచ్చు.</translation>
-<translation id="8937772741022875483">డిజిటల్ సంక్షేమం నుండి మీ Chrome కార్యకలాపం తీసివేయాలా?</translation>
+<translation id="8937772741022875483">డిజిటల్ సంక్షేమం నుండి మీ Chrome యాక్టివిటీ తీసివేయాలా?</translation>
 <translation id="8942627711005830162">మరొక విండోలో తెరువు</translation>
 <translation id="8945143127965743188"><ph name="LANG" /> - ఈ భాషను డౌన్‌లోడ్ చేయడం సాధ్యపడదు. తర్వాత మళ్లీ ట్రై చేయండి.</translation>
 <translation id="8951232171465285730">Chrome మీకు <ph name="MEGABYTES" /> MB ఆదా చేసింది</translation>
@@ -1305,12 +1305,12 @@
 <translation id="9041669420854607037">{FILE_COUNT,plural, =1{# వీడియో}other{# వీడియోలు}}</translation>
 <translation id="9042893549633094279">గోప్యత, సెక్యూరిటీ</translation>
 <translation id="9050666287014529139">రహస్య పదబంధం</translation>
-<translation id="9063523880881406963">డెస్క్‌టాప్ సైట్ అభ్యర్థనను ఆఫ్ చేయండి</translation>
+<translation id="9063523880881406963">డెస్క్‌టాప్ సైట్ రిక్వెస్ట్‌ను ఆఫ్ చేయండి</translation>
 <translation id="9065203028668620118">ఎడిట్</translation>
 <translation id="9065383040763568503">Chrome ముఖ్యమైనదిగా భావించని నిల్వ చేసిన డేటా (ఉదా. సేవ్ చేసిన సెట్టింగ్‌లు లేని సైట్‌లు లేదా మీరు తరచుగా సందర్శించని సైట్‌లు)</translation>
 <translation id="9069999660519089861">చదవని పేజీలు ఏవీ లేవు</translation>
 <translation id="9070377983101773829">వాయిస్ శోధనను ప్రారంభించండి</translation>
-<translation id="9074336505530349563">Google ద్వారా మీ అభిరుచికి తగిన కంటెంట్‌ను సిఫార్సుల రూపంలో పొందాలనుకుంటే, సైన్ ఇన్ చేసి సమకాలీకరణ ఎంపికను ఆన్ చేయాలి</translation>
+<translation id="9074336505530349563">Google ద్వారా మీ అభిరుచికి తగిన కంటెంట్‌ను సిఫార్సుల రూపంలో పొందాలనుకుంటే, సైన్ ఇన్ చేసి సింక్‌ ఎంపికను ఆన్ చేయాలి</translation>
 <translation id="9074739597929991885">బ్లూటూత్</translation>
 <translation id="9081543426177426948">మీరు సందర్శించే సైట్‌లు అజ్ఞాత మోడ్‌లో సేవ్ చేయబడవు</translation>
 <translation id="9086302186042011942">సమకాలీకరిస్తోంది</translation>
@@ -1318,7 +1318,7 @@
 <translation id="9100505651305367705">మ‌ద్ద‌తు ఉన్న సందర్భాల్లో, సరళీకృత వీక్షణలో కథనాలను చూడగలిగే అవకాశం అందిస్తుంది</translation>
 <translation id="9100610230175265781">రహస్య పదబంధం అవసరం</translation>
 <translation id="9102803872260866941">ప్రివ్యూ ట్యాబ్ తెరవబడింది</translation>
-<translation id="9104217018994036254">ట్యాబ్‌ను షేర్ చేయాల్సిన పరికరాల జాబితా.</translation>
+<translation id="9104217018994036254">ట్యాబ్‌ను షేర్ చేయాల్సిన పరికరాల లిస్ట్‌.</translation>
 <translation id="9108312223223904744">సెక్యూరిటీ కీ సపోర్ట్‌గా ఫోన్</translation>
 <translation id="9108808586816295166">సురక్షితమైన DNS ఎల్లవేళలా అందుబాటులో ఉండకపోవచ్చు</translation>
 <translation id="9133397713400217035">ఆఫ్‌లైన్‌లో అన్వేషించండి</translation>
@@ -1332,7 +1332,7 @@
 <translation id="9209888181064652401">కాల్స్‌ను చేయడం సాధ్యం కాదు</translation>
 <translation id="9212845824145208577">ఇంతకంటే కిందకు వెళ్లడం సాధ్యపడదు. పేజీ మరింత కింద నుండి ప్రారంభించడానికి ట్రై చేయండి.</translation>
 <translation id="9219103736887031265">ఇమేజ్‌లు</translation>
-<translation id="926205370408745186">డిజిటల్ సంక్షేమం నుండి మీ Chrome కార్యకలాపాన్ని తీసివేస్తుంది</translation>
+<translation id="926205370408745186">డిజిటల్ సంక్షేమం నుండి మీ Chrome యాక్టివిటీని తీసివేస్తుంది</translation>
 <translation id="927968626442779827">Google Chromeలోని లైట్ మోడ్‌ను ఉపయోగించండి</translation>
 <translation id="928550791203542716"><ph name="SITE_NAME" />ను ఫాలో చేస్తున్నారు</translation>
 <translation id="932327136139879170">హోమ్</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb
index 525d58d..1e343cf 100644
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb
@@ -497,6 +497,7 @@
 <translation id="4108998448622696017">Xavfli tahdidlarni aniqlaydi va sizni ulardan himoya qiladi.</translation>
 <translation id="4116038641877404294">Saytlarni oflayn ko‘rish uchun yuklab oling</translation>
 <translation id="4135200667068010335">Yopiq varaq uzatiladigan qurilmalar roʻyxati.</translation>
+<translation id="4137746084635924146">Qurilmadagi joriy til</translation>
 <translation id="4141536112466364990">Chrome haqida</translation>
 <translation id="4149994727733219643">Veb sahifalarni ko‘rish uchun oddiy rejim</translation>
 <translation id="4165986682804962316">Sayt sozlamalari</translation>
diff --git a/chrome/browser/ui/ash/shelf/browser_app_status_observer.cc b/chrome/browser/ui/ash/shelf/browser_app_status_observer.cc
deleted file mode 100644
index 08714ba6..0000000
--- a/chrome/browser/ui/ash/shelf/browser_app_status_observer.cc
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2021 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/ash/shelf/browser_app_status_observer.h"
-
-void BrowserAppStatusObserver::OnBrowserAppAdded(
-    const BrowserAppInstance& instance) {}
-void BrowserAppStatusObserver::OnBrowserAppUpdated(
-    const BrowserAppInstance& instance) {}
-void BrowserAppStatusObserver::OnBrowserAppRemoved(
-    const BrowserAppInstance& instance) {}
diff --git a/chrome/browser/ui/ash/shelf/browser_app_status_observer.h b/chrome/browser/ui/ash/shelf/browser_app_status_observer.h
deleted file mode 100644
index 9b9a183..0000000
--- a/chrome/browser/ui/ash/shelf/browser_app_status_observer.h
+++ /dev/null
@@ -1,51 +0,0 @@
-// Copyright 2021 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_ASH_SHELF_BROWSER_APP_STATUS_OBSERVER_H_
-#define CHROME_BROWSER_UI_ASH_SHELF_BROWSER_APP_STATUS_OBSERVER_H_
-
-#include <string>
-
-class Browser;
-
-namespace content {
-class WebContents;
-}
-
-typedef uint32_t WebContentsId;
-
-// An instance of a browser-based app. Can represent either of:
-// - apps running inside Browser->WebContents,
-// - actual browser instances (a single browser window). In this case `contents`
-//   will be null and app ID will be set to |extension_misc::kChromeAppId|.
-struct BrowserAppInstance {
-  BrowserAppInstance(const BrowserAppInstance&) = delete;
-  BrowserAppInstance& operator=(const BrowserAppInstance&) = delete;
-
-  std::string app_id;
-  Browser* browser;
-  content::WebContents* web_contents;
-  WebContentsId web_contents_id;
-  bool visible;
-  bool active;
-};
-
-// Observer interface to listen to |BrowserAppsTracker| events.
-class BrowserAppStatusObserver {
- public:
-  virtual ~BrowserAppStatusObserver() = default;
-
-  // Called when a new app instance is started: a tab or a window is open, a tab
-  // navigates to a URL with an app.
-  virtual void OnBrowserAppAdded(const BrowserAppInstance& instance);
-  // Called when the app's window, app's tab, or a window containing the app's
-  // tab changes properties (visibility, active state), or a tab gets moved
-  // between browsers.
-  virtual void OnBrowserAppUpdated(const BrowserAppInstance& instance);
-  // Called when an app instance is stopped: a tab or window is closed, a new
-  // windowed app is open, a tab navigates to a URL with an app.
-  virtual void OnBrowserAppRemoved(const BrowserAppInstance& instance);
-};
-
-#endif  // CHROME_BROWSER_UI_ASH_SHELF_BROWSER_APP_STATUS_OBSERVER_H_
diff --git a/chrome/browser/ui/ash/shelf/chrome_shelf_controller.cc b/chrome/browser/ui/ash/shelf/chrome_shelf_controller.cc
index e1f79c9..5e82f02c 100644
--- a/chrome/browser/ui/ash/shelf/chrome_shelf_controller.cc
+++ b/chrome/browser/ui/ash/shelf/chrome_shelf_controller.cc
@@ -36,6 +36,7 @@
 #include "base/threading/thread_task_runner_handle.h"
 #include "chrome/browser/apps/app_service/app_service_proxy.h"
 #include "chrome/browser/apps/app_service/app_service_proxy_factory.h"
+#include "chrome/browser/apps/app_service/browser_app_instance_tracker.h"
 #include "chrome/browser/apps/icon_standardizer.h"
 #include "chrome/browser/ash/arc/arc_util.h"
 #include "chrome/browser/ash/crosapi/browser_util.h"
@@ -62,7 +63,6 @@
 #include "chrome/browser/ui/ash/shelf/app_shortcut_shelf_item_controller.h"
 #include "chrome/browser/ui/ash/shelf/app_window_shelf_controller.h"
 #include "chrome/browser/ui/ash/shelf/app_window_shelf_item_controller.h"
-#include "chrome/browser/ui/ash/shelf/browser_apps_tracker.h"
 #include "chrome/browser/ui/ash/shelf/browser_shortcut_shelf_item_controller.h"
 #include "chrome/browser/ui/ash/shelf/browser_status_monitor.h"
 #include "chrome/browser/ui/ash/shelf/chrome_shelf_controller_util.h"
@@ -255,11 +255,12 @@
   app_window_controllers_.emplace_back(std::move(app_service_controller));
   // Create the browser monitor which will inform the shelf of status changes.
   browser_status_monitor_ = std::make_unique<BrowserStatusMonitor>(this);
-  if (base::FeatureList::IsEnabled(BrowserAppsTracker::kEnabled)) {
+  if (base::FeatureList::IsEnabled(apps::BrowserAppInstanceTracker::kEnabled)) {
     apps::AppServiceProxyChromeOs* proxy =
         apps::AppServiceProxyFactory::GetForProfile(profile);
-    browser_apps_tracker_ =
-        std::make_unique<BrowserAppsTracker>(proxy->AppRegistryCache());
+    browser_app_instance_tracker_ =
+        std::make_unique<apps::BrowserAppInstanceTracker>(
+            proxy->AppRegistryCache());
   }
 }
 
@@ -307,8 +308,8 @@
 
   UpdatePinnedAppsFromSync();
   browser_status_monitor_->Initialize();
-  if (base::FeatureList::IsEnabled(BrowserAppsTracker::kEnabled)) {
-    browser_apps_tracker_->Initialize();
+  if (base::FeatureList::IsEnabled(apps::BrowserAppInstanceTracker::kEnabled)) {
+    browser_app_instance_tracker_->Initialize();
   }
 }
 
diff --git a/chrome/browser/ui/ash/shelf/chrome_shelf_controller.h b/chrome/browser/ui/ash/shelf/chrome_shelf_controller.h
index a2b6e31..777961fd 100644
--- a/chrome/browser/ui/ash/shelf/chrome_shelf_controller.h
+++ b/chrome/browser/ui/ash/shelf/chrome_shelf_controller.h
@@ -28,7 +28,6 @@
 class AppIconLoader;
 class AppServiceAppWindowShelfController;
 class AppWindowShelfController;
-class BrowserAppsTracker;
 class BrowserShortcutShelfItemController;
 class BrowserStatusMonitor;
 class ChromeShelfControllerUserSwitchObserver;
@@ -37,6 +36,10 @@
 class ShelfControllerHelper;
 class ShelfSpinnerController;
 
+namespace apps {
+class BrowserAppInstanceTracker;
+}
+
 namespace ash {
 class ShelfModel;
 FORWARD_DECLARE_TEST(SpokenFeedbackTest, ShelfIconFocusForward);
@@ -443,8 +446,9 @@
   // The owned browser status monitor.
   std::unique_ptr<BrowserStatusMonitor> browser_status_monitor_;
 
-  // The owned browser apps tracker.
-  std::unique_ptr<BrowserAppsTracker> browser_apps_tracker_;
+  // The owned browser app instance tracker.
+  std::unique_ptr<apps::BrowserAppInstanceTracker>
+      browser_app_instance_tracker_;
 
   // A special observer class to detect user switches.
   std::unique_ptr<ChromeShelfControllerUserSwitchObserver>
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index ab4c4093..ff410e6 100644
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -2878,6 +2878,7 @@
     # NOTE: This is the main "browser_tests" section for |is_chromeos_ash|.
     if (is_chromeos_ash) {
       sources += [
+        "../browser/apps/app_service/browser_app_instance_tracker_browsertest.cc",
         "../browser/apps/app_service/intent_util_browsertest.cc",
         "../browser/apps/app_service/media_access_browsertest.cc",
         "../browser/apps/app_service/notifications_browsertest.cc",
@@ -3294,7 +3295,6 @@
         "../browser/ui/ash/shelf/app_service/app_service_shelf_context_menu_browsertest.cc",
         "../browser/ui/ash/shelf/app_shortcut_shelf_item_controller_browsertest.cc",
         "../browser/ui/ash/shelf/arc_app_shelf_browsertest.cc",
-        "../browser/ui/ash/shelf/browser_apps_tracker_browsertest.cc",
         "../browser/ui/ash/shelf/browser_shortcut_shelf_item_controller_browsertest.cc",
         "../browser/ui/ash/shelf/chrome_shelf_controller_browsertest.cc",
         "../browser/ui/ash/shelf/chrome_shelf_controller_test_util.cc",
diff --git a/chromeos/CHROMEOS_LKGM b/chromeos/CHROMEOS_LKGM
index 5001a837..1f65eaa6 100644
--- a/chromeos/CHROMEOS_LKGM
+++ b/chromeos/CHROMEOS_LKGM
@@ -1 +1 @@
-14151.0.0
\ No newline at end of file
+14156.0.0
\ No newline at end of file
diff --git a/chromeos/components/camera_app_ui/resources/strings/camera_strings_en-GB.xtb b/chromeos/components/camera_app_ui/resources/strings/camera_strings_en-GB.xtb
index bc1497e..f30f926 100644
--- a/chromeos/components/camera_app_ui/resources/strings/camera_strings_en-GB.xtb
+++ b/chromeos/components/camera_app_ui/resources/strings/camera_strings_en-GB.xtb
@@ -43,6 +43,7 @@
 <translation id="3227137524299004712">Microphone</translation>
 <translation id="3240426699337459095">Link copied</translation>
 <translation id="3259149966178251584">Camera resolution</translation>
+<translation id="3260401663013584785">Couldn't detect a document</translation>
 <translation id="3448774564454087943">Video hasn't been saved as it's too short</translation>
 <translation id="3517926952904427380">Unable to take portrait photo</translation>
 <translation id="3569311554794739032">Do you really want to remove <ph name="FILE" />?</translation>
@@ -50,6 +51,7 @@
 <translation id="3838931309141338733">Scan barcode</translation>
 <translation id="3892148308691398805">Copy text</translation>
 <translation id="4118525110028899586">Pause recording</translation>
+<translation id="4121305183798804752">Document detected</translation>
 <translation id="4269820728363426813">Copy link address</translation>
 <translation id="4279490309300973883">Mirroring</translation>
 <translation id="4329152592498422850">Switch to take square photo</translation>
diff --git a/chromeos/components/camera_app_ui/resources/strings/camera_strings_si.xtb b/chromeos/components/camera_app_ui/resources/strings/camera_strings_si.xtb
index ff4fabf..279f567 100644
--- a/chromeos/components/camera_app_ui/resources/strings/camera_strings_si.xtb
+++ b/chromeos/components/camera_app_ui/resources/strings/camera_strings_si.xtb
@@ -43,6 +43,7 @@
 <translation id="3227137524299004712">මයික්‍රෆෝනය:</translation>
 <translation id="3240426699337459095">සබැඳිය පිටපත් කරන ලදි</translation>
 <translation id="3259149966178251584">කැමරා විභේදනය</translation>
+<translation id="3260401663013584785">ලේඛනයක් අනාවරණය කර ගැනීමට නොහැකි විය</translation>
 <translation id="3448774564454087943">වීඩියෝව ඉතා කෙටි බැවින් සුරකිනු නොලැබේ</translation>
 <translation id="3517926952904427380">ප්‍රතිමූර්ති ඡායාරූප ගත නොහැක</translation>
 <translation id="3569311554794739032">ඔබට සැබැවින්ම <ph name="FILE" /> ඉවත් කිරීමට අවශ්‍යද?</translation>
@@ -50,6 +51,7 @@
 <translation id="3838931309141338733">තීරු කේතය ස්කෑන් කරන්න</translation>
 <translation id="3892148308691398805">පෙළ පිටපත් කරන්න</translation>
 <translation id="4118525110028899586">පටිගත කිරීම විරාම කරන්න</translation>
+<translation id="4121305183798804752">ලේඛනය අනාවරණය කර ගන්නා ලදි</translation>
 <translation id="4269820728363426813">ලින්ක් ලිපිනය පිටපත් කරන්න</translation>
 <translation id="4279490309300973883">ආදර්ශනය කරමින්</translation>
 <translation id="4329152592498422850">කොටු ඡායාරූපය ලබා ගැනීමට මාරු වන්න</translation>
diff --git a/chromeos/components/camera_app_ui/resources/strings/camera_strings_uz.xtb b/chromeos/components/camera_app_ui/resources/strings/camera_strings_uz.xtb
index ae0e57b..65920a3 100644
--- a/chromeos/components/camera_app_ui/resources/strings/camera_strings_uz.xtb
+++ b/chromeos/components/camera_app_ui/resources/strings/camera_strings_uz.xtb
@@ -43,6 +43,7 @@
 <translation id="3227137524299004712">Mikrofon</translation>
 <translation id="3240426699337459095">Nusxalandi</translation>
 <translation id="3259149966178251584">Kameraning tasviri aniqligi</translation>
+<translation id="3260401663013584785">Hujjat aniqlanmadi</translation>
 <translation id="3448774564454087943">Video juda qisqaligi uchun saqlanmadi</translation>
 <translation id="3517926952904427380">Portret rejimida suratga olinmadi</translation>
 <translation id="3569311554794739032"><ph name="FILE" /> olib tashlansinmi?</translation>
@@ -50,6 +51,7 @@
 <translation id="3838931309141338733">Shtrix-kodni skanerlash</translation>
 <translation id="3892148308691398805">Matnni nusxalash</translation>
 <translation id="4118525110028899586">Pauza qilish</translation>
+<translation id="4121305183798804752">Hujjat aniqlandi</translation>
 <translation id="4269820728363426813">Havola manzilini nusxalash</translation>
 <translation id="4279490309300973883">Ekran nusxasini boshqa ekranga uzatish</translation>
 <translation id="4329152592498422850">Kvadrat shaklida suratga olish</translation>
diff --git a/chromeos/profiles/atom.afdo.newest.txt b/chromeos/profiles/atom.afdo.newest.txt
index 7b98770..aa02a2b 100644
--- a/chromeos/profiles/atom.afdo.newest.txt
+++ b/chromeos/profiles/atom.afdo.newest.txt
@@ -1 +1 @@
-chromeos-chrome-amd64-atom-94-4588.0-1627896981-benchmark-94.0.4601.0-r1-redacted.afdo.xz
+chromeos-chrome-amd64-atom-94-4588.0-1628502244-benchmark-94.0.4606.5-r1-redacted.afdo.xz
diff --git a/chromeos/profiles/bigcore.afdo.newest.txt b/chromeos/profiles/bigcore.afdo.newest.txt
index c1cd165a..dd48818 100644
--- a/chromeos/profiles/bigcore.afdo.newest.txt
+++ b/chromeos/profiles/bigcore.afdo.newest.txt
@@ -1 +1 @@
-chromeos-chrome-amd64-bigcore-94-4577.15-1627898841-benchmark-94.0.4601.0-r1-redacted.afdo.xz
+chromeos-chrome-amd64-bigcore-94-4588.0-1628505690-benchmark-94.0.4606.5-r1-redacted.afdo.xz
diff --git a/chromeos/profiles/orderfile.newest.txt b/chromeos/profiles/orderfile.newest.txt
index bd1be7d..c9b492c 100644
--- a/chromeos/profiles/orderfile.newest.txt
+++ b/chromeos/profiles/orderfile.newest.txt
@@ -1 +1 @@
-chromeos-chrome-orderfile-field-93-4577.22-1628502876-benchmark-93.0.4577.42-r1.orderfile.xz
+chromeos-chrome-orderfile-field-93-4577.22-1628502876-benchmark-93.0.4577.44-r1.orderfile.xz
diff --git a/chromeos/services/assistant/assistant_manager_service_impl.cc b/chromeos/services/assistant/assistant_manager_service_impl.cc
index 539cac7..066c164 100644
--- a/chromeos/services/assistant/assistant_manager_service_impl.cc
+++ b/chromeos/services/assistant/assistant_manager_service_impl.cc
@@ -444,6 +444,7 @@
   bootup_config->hotword_enabled = assistant_state()->hotword_enabled().value();
   bootup_config->locale = assistant_state()->locale().value();
   bootup_config->spoken_feedback_enabled = spoken_feedback_enabled_;
+  bootup_config->dark_mode_enabled = dark_mode_enabled_;
 
   service_controller().Initialize(std::move(bootup_config),
                                   BindURLLoaderFactory());
@@ -537,6 +538,16 @@
     settings_controller().SetSpokenFeedbackEnabled(spoken_feedback_enabled_);
 }
 
+void AssistantManagerServiceImpl::OnColorModeChanged(bool dark_mode_enabled) {
+  if (dark_mode_enabled_ == dark_mode_enabled)
+    return;
+
+  dark_mode_enabled_ = dark_mode_enabled;
+
+  if (IsServiceStarted())
+    settings_controller().SetDarkModeEnabled(dark_mode_enabled_);
+}
+
 void AssistantManagerServiceImpl::OnDeviceAppsEnabled(bool enabled) {
   // The device apps state sync should only be sent after service is running.
   // Check state here to prevent timing issue when the service is restarting.
diff --git a/chromeos/services/assistant/assistant_manager_service_impl.h b/chromeos/services/assistant/assistant_manager_service_impl.h
index 535270b4..1f83c9b 100644
--- a/chromeos/services/assistant/assistant_manager_service_impl.h
+++ b/chromeos/services/assistant/assistant_manager_service_impl.h
@@ -148,6 +148,7 @@
                             int action_index) override;
   void DismissNotification(const AssistantNotification& notification) override;
   void OnAccessibilityStatusChanged(bool spoken_feedback_enabled) override;
+  void OnColorModeChanged(bool dark_mode_enabled) override;
   void SendAssistantFeedback(const AssistantFeedback& feedback) override;
   void AddTimeToTimer(const std::string& id, base::TimeDelta duration) override;
   void PauseTimer(const std::string& id) override;
@@ -250,6 +251,7 @@
       state_observer_receiver_{this};
 
   bool spoken_feedback_enabled_ = false;
+  bool dark_mode_enabled_ = false;
 
   base::TimeTicks started_time_;
 
diff --git a/chromeos/services/assistant/assistant_manager_service_impl_unittest.cc b/chromeos/services/assistant/assistant_manager_service_impl_unittest.cc
index 38f692f..41f7f790 100644
--- a/chromeos/services/assistant/assistant_manager_service_impl_unittest.cc
+++ b/chromeos/services/assistant/assistant_manager_service_impl_unittest.cc
@@ -202,11 +202,13 @@
 
   void RunUntilIdle() {
     // First ensure our mojom thread is finished.
-    background_thread().FlushForTesting();
+    FlushForTesting();
     // Then handle any callbacks.
     base::RunLoop().RunUntilIdle();
   }
 
+  void FlushForTesting() { background_thread().FlushForTesting(); }
+
   // Adds a state observer mock, and add the expectation for the fact that it
   // auto-fires the observer.
   void AddStateObserver(StateObserverMock* observer) {
@@ -719,5 +721,20 @@
   mojom_mock.FlushForTesting();
 }
 
+TEST_F(AssistantManagerServiceImplTest, ShouldPropagateColorMode) {
+  ASSERT_FALSE(mojom_service_controller().dark_mode_enabled().has_value());
+
+  StartAndWaitForRunning();
+
+  ASSERT_TRUE(mojom_service_controller().dark_mode_enabled().has_value());
+  EXPECT_FALSE(mojom_service_controller().dark_mode_enabled().value());
+
+  assistant_manager_service()->OnColorModeChanged(true);
+  FlushForTesting();
+
+  ASSERT_TRUE(mojom_service_controller().dark_mode_enabled().has_value());
+  EXPECT_TRUE(mojom_service_controller().dark_mode_enabled().value());
+}
+
 }  // namespace assistant
 }  // namespace chromeos
diff --git a/chromeos/services/assistant/public/cpp/assistant_service.h b/chromeos/services/assistant/public/cpp/assistant_service.h
index f44d39c1..b31de35b 100644
--- a/chromeos/services/assistant/public/cpp/assistant_service.h
+++ b/chromeos/services/assistant/public/cpp/assistant_service.h
@@ -129,6 +129,9 @@
   // accessibility status has changed, |spoken_feedback_enabled| may not have.
   virtual void OnAccessibilityStatusChanged(bool spoken_feedback_enabled) = 0;
 
+  // Invoked when color mode (dark/light mode) status changed.
+  virtual void OnColorModeChanged(bool dark_mode_enabled) = 0;
+
   // Send Assistant feedback to Assistant server.
   virtual void SendAssistantFeedback(const AssistantFeedback& feedback) = 0;
 
diff --git a/chromeos/services/assistant/test_support/fake_assistant_manager_service_impl.cc b/chromeos/services/assistant/test_support/fake_assistant_manager_service_impl.cc
index 028564e..1c2521c2 100644
--- a/chromeos/services/assistant/test_support/fake_assistant_manager_service_impl.cc
+++ b/chromeos/services/assistant/test_support/fake_assistant_manager_service_impl.cc
@@ -110,6 +110,9 @@
 void FakeAssistantManagerServiceImpl::OnAccessibilityStatusChanged(
     bool spoken_feedback_enabled) {}
 
+void FakeAssistantManagerServiceImpl::OnColorModeChanged(
+    bool dark_mode_enabled) {}
+
 void FakeAssistantManagerServiceImpl::SendAssistantFeedback(
     const AssistantFeedback& feedback) {}
 
diff --git a/chromeos/services/assistant/test_support/fake_assistant_manager_service_impl.h b/chromeos/services/assistant/test_support/fake_assistant_manager_service_impl.h
index b0c59ea..913f87f 100644
--- a/chromeos/services/assistant/test_support/fake_assistant_manager_service_impl.h
+++ b/chromeos/services/assistant/test_support/fake_assistant_manager_service_impl.h
@@ -73,6 +73,7 @@
                             int action_index) override;
   void DismissNotification(const AssistantNotification& notification) override;
   void OnAccessibilityStatusChanged(bool spoken_feedback_enabled) override;
+  void OnColorModeChanged(bool dark_mode_enabled) override;
   void SendAssistantFeedback(const AssistantFeedback& feedback) override;
   void AddTimeToTimer(const std::string& id, base::TimeDelta duration) override;
   void PauseTimer(const std::string& id) override;
diff --git a/chromeos/services/assistant/test_support/fake_service_controller.cc b/chromeos/services/assistant/test_support/fake_service_controller.cc
index 465b463..5ceb835 100644
--- a/chromeos/services/assistant/test_support/fake_service_controller.cc
+++ b/chromeos/services/assistant/test_support/fake_service_controller.cc
@@ -81,6 +81,7 @@
 
   authentication_tokens_ =
       std::move(libassistant_config_->authentication_tokens);
+  dark_mode_enabled_ = libassistant_config_->dark_mode_enabled;
 }
 
 void FakeServiceController::Start() {
@@ -115,6 +116,10 @@
   authentication_tokens_ = std::move(tokens);
 }
 
+void FakeServiceController::SetDarkModeEnabled(bool value) {
+  dark_mode_enabled_ = value;
+}
+
 void FakeServiceController::UpdateSettings(const std::string& settings,
                                            UpdateSettingsCallback callback) {
   // Callback must be called to satisfy the mojom contract.
diff --git a/chromeos/services/assistant/test_support/fake_service_controller.h b/chromeos/services/assistant/test_support/fake_service_controller.h
index 9b42ab12f..7b1a7750 100644
--- a/chromeos/services/assistant/test_support/fake_service_controller.h
+++ b/chromeos/services/assistant/test_support/fake_service_controller.h
@@ -8,6 +8,8 @@
 #include <mutex>
 #include <string>
 
+#include "third_party/abseil-cpp/absl/types/optional.h"
+
 #include "base/memory/weak_ptr.h"
 #include "chromeos/services/libassistant/public/mojom/service_controller.mojom.h"
 #include "chromeos/services/libassistant/public/mojom/settings_controller.mojom.h"
@@ -76,6 +78,8 @@
   // True if ResetAllDataAndStop() was called.
   bool has_data_been_reset() const { return has_data_been_reset_; }
 
+  absl::optional<bool> dark_mode_enabled() const { return dark_mode_enabled_; }
+
  private:
   // mojom::ServiceController implementation:
   void Initialize(chromeos::libassistant::mojom::BootupConfigPtr config,
@@ -95,6 +99,7 @@
   void SetListeningEnabled(bool value) override {}
   void SetLocale(const std::string& value) override {}
   void SetSpokenFeedbackEnabled(bool value) override {}
+  void SetDarkModeEnabled(bool value) override;
   void UpdateSettings(const std::string& settings,
                       UpdateSettingsCallback callback) override;
   void GetSettings(const std::string& selector,
@@ -116,6 +121,8 @@
   std::vector<chromeos::libassistant::mojom::AuthenticationTokenPtr>
       authentication_tokens_;
 
+  absl::optional<bool> dark_mode_enabled_;
+
   State state_ = State::kStopped;
   mojo::Receiver<chromeos::libassistant::mojom::ServiceController>
       service_receiver_{this};
diff --git a/chromeos/services/cros_healthd/public/cpp/service_connection_unittest.cc b/chromeos/services/cros_healthd/public/cpp/service_connection_unittest.cc
index 5037f1e..d3af9482 100644
--- a/chromeos/services/cros_healthd/public/cpp/service_connection_unittest.cc
+++ b/chromeos/services/cros_healthd/public/cpp/service_connection_unittest.cc
@@ -334,6 +334,9 @@
               (NetworkDiagnosticsRoutines::RunArcDnsResolutionCallback),
               (override));
   MOCK_METHOD(void,
+              RunArcPing,
+              (NetworkDiagnosticsRoutines::RunArcPingCallback));
+  MOCK_METHOD(void,
               GetResult,
               (const network_diagnostics::mojom::RoutineType type,
                NetworkDiagnosticsRoutines::GetResultCallback),
diff --git a/chromeos/services/ime/ime_service.cc b/chromeos/services/ime/ime_service.cc
index 7ee2a26..b6252b5 100644
--- a/chromeos/services/ime/ime_service.cc
+++ b/chromeos/services/ime/ime_service.cc
@@ -112,8 +112,8 @@
     std::move(callback).Run(/*bound=*/input_engine_ != nullptr);
     return;
   }
-  if (!base::FeatureList::IsEnabled(
-          chromeos::features::kSystemLatinPhysicalTyping)) {
+  if (!features::IsSystemKoreanPhysicalTypingEnabled() &&
+      !features::IsSystemLatinPhysicalTypingEnabled()) {
     std::move(callback).Run(/*bound=*/false);
     return;
   }
@@ -153,9 +153,11 @@
   if (strcmp(feature_name, "AssistiveMultiWord") == 0) {
     return chromeos::features::IsAssistiveMultiWordEnabled();
   }
+  if (strcmp(feature_name, "SystemKoreanPhysicalTyping") == 0) {
+    return features::IsSystemKoreanPhysicalTypingEnabled();
+  }
   if (strcmp(feature_name, "SystemLatinPhysicalTyping") == 0) {
-    return base::FeatureList::IsEnabled(
-        chromeos::features::kSystemLatinPhysicalTyping);
+    return features::IsSystemLatinPhysicalTypingEnabled();
   }
   return false;
 }
diff --git a/chromeos/services/libassistant/public/mojom/service_controller.mojom b/chromeos/services/libassistant/public/mojom/service_controller.mojom
index 783924f..50cf2b3 100644
--- a/chromeos/services/libassistant/public/mojom/service_controller.mojom
+++ b/chromeos/services/libassistant/public/mojom/service_controller.mojom
@@ -63,5 +63,6 @@
   array<AuthenticationToken> authentication_tokens;
   string locale;
   bool spoken_feedback_enabled;
+  bool dark_mode_enabled;
   bool hotword_enabled;
 };
diff --git a/chromeos/services/libassistant/public/mojom/settings_controller.mojom b/chromeos/services/libassistant/public/mojom/settings_controller.mojom
index 9e77b7d..0fff34f 100644
--- a/chromeos/services/libassistant/public/mojom/settings_controller.mojom
+++ b/chromeos/services/libassistant/public/mojom/settings_controller.mojom
@@ -25,6 +25,9 @@
   // Sets whether spoken feedback is enabled.
   SetSpokenFeedbackEnabled(bool value);
 
+  // Sets whether dark mode is enabled.
+  SetDarkModeEnabled(bool value);
+
   // Sets whether hotword detection is enabled.
   SetHotwordEnabled(bool value);
 
diff --git a/chromeos/services/libassistant/service_controller.cc b/chromeos/services/libassistant/service_controller.cc
index ac19e78..9c351d7 100644
--- a/chromeos/services/libassistant/service_controller.cc
+++ b/chromeos/services/libassistant/service_controller.cc
@@ -161,6 +161,7 @@
   settings_controller_->SetHotwordEnabled(config->hotword_enabled);
   settings_controller_->SetSpokenFeedbackEnabled(
       config->spoken_feedback_enabled);
+  settings_controller_->SetDarkModeEnabled(config->dark_mode_enabled);
 
   CreateAndRegisterDeviceStateListener();
   CreateAndRegisterChromiumApiDelegate(std::move(url_loader_factory));
diff --git a/chromeos/services/libassistant/service_controller_unittest.cc b/chromeos/services/libassistant/service_controller_unittest.cc
index 684aa45..30a6ee1b 100644
--- a/chromeos/services/libassistant/service_controller_unittest.cc
+++ b/chromeos/services/libassistant/service_controller_unittest.cc
@@ -109,6 +109,7 @@
   MOCK_METHOD(void, SetListeningEnabled, (bool value));
   MOCK_METHOD(void, SetLocale, (const std::string& value));
   MOCK_METHOD(void, SetSpokenFeedbackEnabled, (bool value));
+  MOCK_METHOD(void, SetDarkModeEnabled, (bool value));
   MOCK_METHOD(void, SetHotwordEnabled, (bool value));
   MOCK_METHOD(void,
               GetSettings,
diff --git a/chromeos/services/libassistant/settings_controller.cc b/chromeos/services/libassistant/settings_controller.cc
index aff4b7a..fd4a2fe 100644
--- a/chromeos/services/libassistant/settings_controller.cc
+++ b/chromeos/services/libassistant/settings_controller.cc
@@ -48,9 +48,11 @@
 assistant_client::InternalOptions* WARN_UNUSED_RESULT CreateInternalOptions(
     assistant_client::AssistantManagerInternal* assistant_manager_internal,
     const std::string& locale,
-    bool spoken_feedback_enabled) {
+    bool spoken_feedback_enabled,
+    bool dark_mode_enabled) {
   auto* result = assistant_manager_internal->CreateDefaultInternalOptions();
-  assistant::SetAssistantOptions(result, locale, spoken_feedback_enabled);
+  assistant::SetAssistantOptions(result, locale, spoken_feedback_enabled,
+                                 dark_mode_enabled);
 
   result->SetClientControlEnabled(assistant::features::IsRoutinesEnabled());
 
@@ -232,7 +234,7 @@
 
 void SettingsController::SetLocale(const std::string& value) {
   locale_ = LocaleOrDefault(value);
-  UpdateInternalOptions(locale_, spoken_feedback_enabled_);
+  UpdateInternalOptions(locale_, spoken_feedback_enabled_, dark_mode_enabled_);
   UpdateDeviceSettings(locale_, hotword_enabled_);
 }
 
@@ -243,7 +245,12 @@
 
 void SettingsController::SetSpokenFeedbackEnabled(bool value) {
   spoken_feedback_enabled_ = value;
-  UpdateInternalOptions(locale_, spoken_feedback_enabled_);
+  UpdateInternalOptions(locale_, spoken_feedback_enabled_, dark_mode_enabled_);
+}
+
+void SettingsController::SetDarkModeEnabled(bool value) {
+  dark_mode_enabled_ = value;
+  UpdateInternalOptions(locale_, spoken_feedback_enabled_, dark_mode_enabled_);
 }
 
 void SettingsController::SetHotwordEnabled(bool value) {
@@ -289,20 +296,26 @@
 
 void SettingsController::UpdateInternalOptions(
     const absl::optional<std::string>& locale,
-    absl::optional<bool> spoken_feedback_enabled) {
+    absl::optional<bool> spoken_feedback_enabled,
+    absl::optional<bool> dark_mode_enabled) {
   if (!assistant_manager_internal_)
     return;
 
+  // All of those bits should be ready if |assistant_manager_internal_| is not
+  // nullptr. ServiceController should set all of them before calling
+  // SettingsController::OnAssistantManagerCreated.
+  DCHECK(locale.has_value());
+  DCHECK(spoken_feedback_enabled.has_value());
+  DCHECK(dark_mode_enabled.has_value());
+
   if (locale.has_value())
     assistant_manager_internal_->SetLocaleOverride(locale.value());
 
-  if (locale.has_value() && spoken_feedback_enabled.has_value()) {
-    assistant_manager_internal_->SetOptions(
-        *CreateInternalOptions(assistant_manager_internal_, locale.value(),
-                               spoken_feedback_enabled.value()),
-        [](bool success) { DVLOG(2) << "set options: " << success; });
-  }
-  return;
+  assistant_manager_internal_->SetOptions(
+      *CreateInternalOptions(assistant_manager_internal_, locale.value(),
+                             spoken_feedback_enabled.value(),
+                             dark_mode_enabled.value()),
+      [](bool success) { DVLOG(2) << "set options: " << success; });
 }
 
 void SettingsController::UpdateDeviceSettings(
@@ -325,7 +338,7 @@
   // Note we do not enable the device settings updater here, as it requires
   // Libassistant to be started.
   UpdateAuthenticationTokens(authentication_tokens_);
-  UpdateInternalOptions(locale_, spoken_feedback_enabled_);
+  UpdateInternalOptions(locale_, spoken_feedback_enabled_, dark_mode_enabled_);
   UpdateListeningEnabled(listening_enabled_);
 }
 
diff --git a/chromeos/services/libassistant/settings_controller.h b/chromeos/services/libassistant/settings_controller.h
index 730b237..d8072e69 100644
--- a/chromeos/services/libassistant/settings_controller.h
+++ b/chromeos/services/libassistant/settings_controller.h
@@ -38,6 +38,7 @@
   void SetListeningEnabled(bool value) override;
   void SetLocale(const std::string& value) override;
   void SetSpokenFeedbackEnabled(bool value) override;
+  void SetDarkModeEnabled(bool value) override;
   void SetHotwordEnabled(bool value) override;
   void GetSettings(const std::string& selector,
                    bool include_header,
@@ -59,7 +60,8 @@
   void UpdateAuthenticationTokens(
       const absl::optional<std::vector<mojom::AuthenticationTokenPtr>>& tokens);
   void UpdateInternalOptions(const absl::optional<std::string>& locale,
-                             absl::optional<bool> spoken_feedback_enabled);
+                             absl::optional<bool> spoken_feedback_enabled,
+                             absl::optional<bool> dark_mode_enabled);
   void UpdateDeviceSettings(const absl::optional<std::string>& locale,
                             absl::optional<bool> hotword_enabled);
 
@@ -78,6 +80,7 @@
 
   absl::optional<bool> hotword_enabled_;
   absl::optional<bool> spoken_feedback_enabled_;
+  absl::optional<bool> dark_mode_enabled_;
   absl::optional<bool> listening_enabled_;
   absl::optional<std::string> locale_;
   absl::optional<std::vector<mojom::AuthenticationTokenPtr>>
diff --git a/chromeos/services/libassistant/settings_controller_unittest.cc b/chromeos/services/libassistant/settings_controller_unittest.cc
index 0ba604e7..f1d80023 100644
--- a/chromeos/services/libassistant/settings_controller_unittest.cc
+++ b/chromeos/services/libassistant/settings_controller_unittest.cc
@@ -132,6 +132,7 @@
   controller().SetListeningEnabled(true);
   controller().SetLocale("locale");
   controller().SetSpokenFeedbackEnabled(true);
+  controller().SetDarkModeEnabled(false);
 }
 
 TEST_F(AssistantSettingsControllerTest,
@@ -144,6 +145,7 @@
   controller().SetListeningEnabled(true);
   controller().SetLocale("locale");
   controller().SetSpokenFeedbackEnabled(true);
+  controller().SetDarkModeEnabled(false);
 }
 
 TEST_F(AssistantSettingsControllerTest,
@@ -152,6 +154,7 @@
   controller().SetHotwordEnabled(true);
   controller().SetLocale("locale");
   controller().SetSpokenFeedbackEnabled(true);
+  controller().SetDarkModeEnabled(true);
 
   DestroyLibassistant();
 
@@ -191,6 +194,7 @@
   EXPECT_NO_CALLS(assistant_manager_internal_mock(), SetOptions);
 
   controller().SetSpokenFeedbackEnabled(true);
+  controller().SetDarkModeEnabled(false);
 }
 
 TEST_F(AssistantSettingsControllerTest,
@@ -201,12 +205,25 @@
   EXPECT_NO_CALLS(assistant_manager_internal_mock(), SetOptions);
 
   controller().SetLocale("locale");
+  controller().SetDarkModeEnabled(false);
+}
+
+TEST_F(AssistantSettingsControllerTest,
+       ShouldNotSetInternalOptionsWhenDarkModeEnabledIsNotSet) {
+  IGNORE_CALLS(assistant_manager_internal_mock(), SetLocaleOverride);
+  CreateLibassistant();
+
+  EXPECT_NO_CALLS(assistant_manager_internal_mock(), SetOptions);
+
+  controller().SetLocale("locale");
+  controller().SetSpokenFeedbackEnabled(true);
 }
 
 TEST_F(AssistantSettingsControllerTest,
        ShouldSetInternalOptionsWhenLocaleIsUpdated) {
   IGNORE_CALLS(assistant_manager_internal_mock(), SetLocaleOverride);
   controller().SetSpokenFeedbackEnabled(true);
+  controller().SetDarkModeEnabled(false);
   CreateLibassistant();
 
   EXPECT_CALL(assistant_manager_internal_mock(), SetOptions);
@@ -218,6 +235,7 @@
        ShouldSetInternalOptionsWhenSpokenFeedbackEnabledIsUpdated) {
   IGNORE_CALLS(assistant_manager_internal_mock(), SetLocaleOverride);
   controller().SetLocale("locale");
+  controller().SetDarkModeEnabled(false);
   CreateLibassistant();
 
   EXPECT_CALL(assistant_manager_internal_mock(), SetOptions);
@@ -226,9 +244,22 @@
 }
 
 TEST_F(AssistantSettingsControllerTest,
+       ShouldSetInternalOptionsWhenDarkModeEnabledIsUpdated) {
+  IGNORE_CALLS(assistant_manager_internal_mock(), SetLocaleOverride);
+  controller().SetLocale("locale");
+  controller().SetSpokenFeedbackEnabled(true);
+  CreateLibassistant();
+
+  EXPECT_CALL(assistant_manager_internal_mock(), SetOptions);
+
+  controller().SetDarkModeEnabled(false);
+}
+
+TEST_F(AssistantSettingsControllerTest,
        ShouldSetInternalOptionsAndLocaleWhenLibassistantIsCreated) {
   controller().SetLocale("locale");
   controller().SetSpokenFeedbackEnabled(true);
+  controller().SetDarkModeEnabled(false);
 
   EXPECT_CALL(assistant_manager_internal_mock(), SetLocaleOverride);
   EXPECT_CALL(assistant_manager_internal_mock(), SetOptions);
diff --git a/chromeos/services/network_config/cros_network_config.cc b/chromeos/services/network_config/cros_network_config.cc
index 62eee6e..5eb11c5 100644
--- a/chromeos/services/network_config/cros_network_config.cc
+++ b/chromeos/services/network_config/cros_network_config.cc
@@ -10,6 +10,7 @@
 #include "base/containers/contains.h"
 #include "base/containers/flat_map.h"
 #include "base/guid.h"
+#include "base/strings/string_split.h"
 #include "base/strings/string_util.h"
 #include "base/strings/utf_string_conversions.h"
 #include "chromeos/components/sync_wifi/network_eligibility_checker.h"
@@ -1283,6 +1284,76 @@
   return openvpn;
 }
 
+mojom::WireGuardPeerPropertiesPtr GetWireGuardPeerProperties(
+    const base::Value* dict) {
+  auto peer = mojom::WireGuardPeerProperties::New();
+  peer->public_key = GetRequiredString(dict, ::onc::wireguard::kPublicKey);
+  peer->preshared_key = GetString(dict, ::onc::wireguard::kPresharedKey);
+  absl::optional<std::string> allowed_ips =
+      GetString(dict, ::onc::wireguard::kAllowedIPs);
+  if (allowed_ips) {
+    peer->allowed_ips = base::SplitString(
+        *allowed_ips, ",", base::TRIM_WHITESPACE, base::SPLIT_WANT_NONEMPTY);
+  }
+  peer->endpoint = GetString(dict, ::onc::wireguard::kEndpoint);
+  peer->persistent_keepalive_interval =
+      GetInt32(dict, ::onc::wireguard::kPersistentKeepalive);
+  return peer;
+}
+
+mojom::ManagedWireGuardPeerListPtr GetManagedWireGuardPeerList(
+    const base::Value* dict,
+    const char* key) {
+  auto result = mojom::ManagedWireGuardPeerList::New();
+  const base::Value* value = dict->FindKey(key);
+  if (!value)
+    return result;
+  if (value->is_list()) {
+    std::vector<mojom::WireGuardPeerPropertiesPtr> active;
+    for (const base::Value& value : value->GetList())
+      active.push_back(GetWireGuardPeerProperties(&value));
+    result->active_value = std::move(active);
+    return result;
+  }
+  if (value->is_dict()) {
+    ManagedDictionary managed_dict = GetManagedDictionary(value);
+    if (!managed_dict.active_value.is_list()) {
+      NET_LOG(ERROR) << "No active or effective value for WireGuardPeerList";
+      return result;
+    }
+    for (const base::Value& e : managed_dict.active_value.GetList())
+      result->active_value.push_back(GetWireGuardPeerProperties(&e));
+    result->policy_source = managed_dict.policy_source;
+    if (!managed_dict.policy_value.is_none()) {
+      result->policy_value = std::vector<mojom::WireGuardPeerPropertiesPtr>();
+      for (const base::Value& e : managed_dict.policy_value.GetList())
+        result->policy_value->push_back(GetWireGuardPeerProperties(&e));
+    }
+    return result;
+  }
+  NET_LOG(ERROR) << "Expected list or dictionary, found: " << *value;
+  return result;
+}
+
+mojom::ManagedWireGuardPropertiesPtr GetManagedWireGuardProperties(
+    const base::Value* dict,
+    const char* key) {
+  auto wg = mojom::ManagedWireGuardProperties::New();
+  const base::Value* wg_dict = dict->FindKey(key);
+  if (!wg_dict) {
+    NET_LOG(ERROR) << "Missing WireGuard properties element";
+    return wg;
+  }
+  if (!wg_dict->is_dict()) {
+    NET_LOG(ERROR) << "Expected dictionary, found: " << *wg_dict;
+    return wg;
+  }
+  wg->private_key = GetManagedString(wg_dict, ::onc::wireguard::kPrivateKey);
+  wg->public_key = GetManagedString(wg_dict, ::onc::wireguard::kPublicKey);
+  wg->peers = GetManagedWireGuardPeerList(wg_dict, ::onc::wireguard::kPeers);
+  return wg;
+}
+
 mojom::ManagedPropertiesPtr ManagedPropertiesToMojo(
     NetworkStateHandler* network_state_handler,
     CellularESimProfileHandler* cellular_esim_profile_handler,
@@ -1509,7 +1580,8 @@
               GetManagedOpenVPNProperties(vpn_dict, ::onc::vpn::kOpenVPN);
           break;
         case mojom::VpnType::kWireGuard:
-          // TODO: Detail Managed ONC implemention in following patches
+          vpn->wireguard =
+              GetManagedWireGuardProperties(vpn_dict, ::onc::vpn::kWireGuard);
           break;
         case mojom::VpnType::kExtension:
         case mojom::VpnType::kArc:
diff --git a/chromeos/services/network_config/public/mojom/cros_network_config.mojom b/chromeos/services/network_config/public/mojom/cros_network_config.mojom
index 667f71b..3d6205d4 100644
--- a/chromeos/services/network_config/public/mojom/cros_network_config.mojom
+++ b/chromeos/services/network_config/public/mojom/cros_network_config.mojom
@@ -363,6 +363,19 @@
   string? url;
 };
 
+// WireGuard per-peer properties (https://www.wireguard.com/xplatform/).
+// These properties (particularly, allowed_ip and endpoint) are opaquely passed
+// as strings to the platform daemon (e.g. Shill) and only from there are then
+// parsed syntacticly.
+struct WireGuardPeerProperties {
+  string public_key;
+  // Note: |preshared_key| contains a placeholder if set to avoid leaking secrets.
+  string? preshared_key;
+  array<string>? allowed_ips;
+  string? endpoint;
+  int32 persistent_keepalive_interval;
+};
+
 // Managed property types. These types all share a common structure.
 // The structure differs from the structure used in //components/onc which
 // relies on optional boolean and integer values which are unsupported in mojo,
@@ -556,6 +569,19 @@
   ManagedVerifyX509Properties? verify_x509;
 };
 
+struct ManagedWireGuardPeerList {
+  array<WireGuardPeerProperties> active_value;
+  PolicySource policy_source = kNone;
+  array<WireGuardPeerProperties>? policy_value;
+};
+
+struct ManagedWireGuardProperties {
+  // Note: |private_key| is not readable to avoid leaking secrets.
+  ManagedString? private_key;
+  ManagedString? public_key;
+  ManagedWireGuardPeerList peers;
+};
+
 // Managed NetworkType specific dictionaries.
 
 struct ManagedCellularProperties {
@@ -604,10 +630,13 @@
 
 struct ManagedVPNProperties {
   ManagedBoolean? auto_connect;
+  // Note: in the case of WireGuard VPN |host| is not relevant and contains a
+  // placeholder value.
   ManagedString? host;
   ManagedIPSecProperties? ip_sec;
   ManagedL2TPProperties? l2tp;
   ManagedOpenVPNProperties? open_vpn;
+  ManagedWireGuardProperties? wireguard;
   ManagedString? provider_id;
   string provider_name;
   VpnType type;
diff --git a/chromeos/services/network_health/public/mojom/network_diagnostics.mojom b/chromeos/services/network_health/public/mojom/network_diagnostics.mojom
index acc9de51..d117364 100644
--- a/chromeos/services/network_health/public/mojom/network_diagnostics.mojom
+++ b/chromeos/services/network_health/public/mojom/network_diagnostics.mojom
@@ -27,6 +27,7 @@
   kVideoConferencing,
   kArcHttp,
   kArcDnsResolution,
+  kArcPing,
 };
 
 // Each routine can result in one of the possible verdicts.
@@ -196,6 +197,27 @@
   kFailedDnsQueries,
 };
 
+// Problems related to the ArcPing routine.
+[Extensible]
+enum ArcPingProblem {
+  // Failed to get the ARC Service Manager.
+  kFailedToGetArcServiceManager,
+  // Failed to get instance of the NetInstance service.
+  kFailedToGetNetInstanceForPingTest,
+  // Timeout failure when getting managed properties of networks.
+  kGetManagedPropertiesTimeoutFailure,
+  // All gateways are unreachable, hence cannot be pinged.
+  kUnreachableGateway,
+  // The default network cannot be pinged.
+  kFailedToPingDefaultNetwork,
+  // The default network has a latency above the threshold.
+  kDefaultNetworkAboveLatencyThreshold,
+  // One or more of the non-default networks has failed pings.
+  kUnsuccessfulNonDefaultNetworksPings,
+  // One of more of the non-default networks has a latency above the threshold.
+  kNonDefaultNetworksAboveLatencyThreshold,
+};
+
 // Union of all possible routine problems. See each problem enum definition for
 // more details.
 union RoutineProblems {
@@ -213,6 +235,7 @@
   array<VideoConferencingProblem> video_conferencing_problems;
   array<ArcHttpProblem> arc_http_problems;
   array<ArcDnsResolutionProblem> arc_dns_resolution_problems;
+  array<ArcPingProblem> arc_ping_problems;
 };
 
 // A single routine's result.
@@ -335,6 +358,10 @@
   // needed during the ARC Provisioning step.
   RunArcDnsResolution() => (RoutineResult result);
 
+  // Tests whether ARC can reach resources needed during the ARC Provisioning
+  // step.
+  RunArcPing() => (RoutineResult result);
+
   // Returns the most recent result for the specified routine type, if it has
   // been run.
   GetResult(RoutineType routine) => (RoutineResult? result);
diff --git a/chromeos/strings/chromeos_strings_en-GB.xtb b/chromeos/strings/chromeos_strings_en-GB.xtb
index 3511531..0d2bf1d5 100644
--- a/chromeos/strings/chromeos_strings_en-GB.xtb
+++ b/chromeos/strings/chromeos_strings_en-GB.xtb
@@ -37,6 +37,7 @@
 <translation id="1621067168122174824">Run charge test</translation>
 <translation id="1639239467298939599">Loading</translation>
 <translation id="1641857168437328880">Document feeder (one-sided)</translation>
+<translation id="1643449475550628585">Change wallpaper image daily</translation>
 <translation id="1644574205037202324">History</translation>
 <translation id="1662989795263954667">Stopped – out of ink</translation>
 <translation id="1703835215927279855">Letter</translation>
@@ -76,6 +77,7 @@
 <translation id="2448312741937722512">Types</translation>
 <translation id="2461822463642141190">Current</translation>
 <translation id="249323605434939166"><ph name="QUERY_TEXT" /> · <ph name="SOURCE_LANGUAGE_NAME" /></translation>
+<translation id="2505327257735685095">Refresh the current wallpaper image</translation>
 <translation id="2517472476991765520">Scan</translation>
 <translation id="2570743873672969996">Running <ph name="TEST_NAME" /> test…</translation>
 <translation id="2585245331261708204">What's new with Chrome OS</translation>
diff --git a/chromeos/strings/chromeos_strings_fr-CA.xtb b/chromeos/strings/chromeos_strings_fr-CA.xtb
index 0d2fb23..53dcf98 100644
--- a/chromeos/strings/chromeos_strings_fr-CA.xtb
+++ b/chromeos/strings/chromeos_strings_fr-CA.xtb
@@ -367,9 +367,11 @@
 <translation id="7835501727204647447">Installer CloudReady</translation>
 <translation id="7881066108824108340">DNS</translation>
 <translation id="7882358943899516840">Type de fournisseur</translation>
+<translation id="7895471513946376273">Découvrir des outils de dessin et de conception</translation>
 <translation id="7936303884198020182">Aucun serveur de nom n'a été trouvé</translation>
 <translation id="7960831585769876809">Température</translation>
 <translation id="7994702968232966508">Méthode EAP</translation>
+<translation id="8020238979854764615">Une erreur est survenue. Veuillez réessayer en choisissant d'autres images.</translation>
 <translation id="802154636333426148">Échec du téléchargement</translation>
 <translation id="8041089156583427627">Envoyer des commentaires</translation>
 <translation id="8075838845814659848">Charge restante</translation>
diff --git a/chromeos/strings/chromeos_strings_iw.xtb b/chromeos/strings/chromeos_strings_iw.xtb
index 7870dd3..b8256532 100644
--- a/chromeos/strings/chromeos_strings_iw.xtb
+++ b/chromeos/strings/chromeos_strings_iw.xtb
@@ -367,9 +367,11 @@
 <translation id="7835501727204647447">‏התקנה של CloudReady</translation>
 <translation id="7881066108824108340">DNS</translation>
 <translation id="7882358943899516840">סוג ספק</translation>
+<translation id="7895471513946376273">רוצה להכיר את הכלים לשרטוט ולעיצוב?</translation>
 <translation id="7936303884198020182">לא נמצאו שרתי שמות</translation>
 <translation id="7960831585769876809">טמפרטורה</translation>
 <translation id="7994702968232966508">‏שיטת EAP</translation>
+<translation id="8020238979854764615">אירעה שגיאה. יש לנסות שוב על-ידי בחירת תמונות אחרות.</translation>
 <translation id="802154636333426148">ההורדה נכשלה</translation>
 <translation id="8041089156583427627"> שליחת משוב</translation>
 <translation id="8075838845814659848">אחוז הסוללה שנותר לטעון</translation>
diff --git a/chromeos/strings/chromeos_strings_si.xtb b/chromeos/strings/chromeos_strings_si.xtb
index fa12c57b..dbe5226 100644
--- a/chromeos/strings/chromeos_strings_si.xtb
+++ b/chromeos/strings/chromeos_strings_si.xtb
@@ -37,6 +37,7 @@
 <translation id="1621067168122174824">ආරෝපණ පරීක්ෂණය ධාවනය කරන්න</translation>
 <translation id="1639239467298939599">පැටවෙමින්</translation>
 <translation id="1641857168437328880">ලේඛන සංග්‍රාහකය (තනි-පැත්තක)</translation>
+<translation id="1643449475550628585">වෝල්පේපර රූපය දිනපතා වෙනස් කරන්න</translation>
 <translation id="1644574205037202324">ඉතිහාසය</translation>
 <translation id="1662989795263954667">නැවතිණි - තීන්ත අවසන් විය</translation>
 <translation id="1703835215927279855">Letter</translation>
@@ -76,6 +77,7 @@
 <translation id="2448312741937722512">වර්ගය</translation>
 <translation id="2461822463642141190">වත්මන්</translation>
 <translation id="249323605434939166"><ph name="QUERY_TEXT" /> · <ph name="SOURCE_LANGUAGE_NAME" /></translation>
+<translation id="2505327257735685095">වත්මන් වෝල්පේපර රූපය නැවුම් කරන්න</translation>
 <translation id="2517472476991765520">ස්කෑන් කරන්න</translation>
 <translation id="2570743873672969996"><ph name="TEST_NAME" /> පරීක්ෂාව ධාවනය කරමින්...</translation>
 <translation id="2585245331261708204">Chrome OS හි අලුත් දේවල්</translation>
diff --git a/chromeos/strings/chromeos_strings_te.xtb b/chromeos/strings/chromeos_strings_te.xtb
index 53493f4..10854b24 100644
--- a/chromeos/strings/chromeos_strings_te.xtb
+++ b/chromeos/strings/chromeos_strings_te.xtb
@@ -300,7 +300,7 @@
 <translation id="6564646048574748301">విఫలమైంది - ప్రింటర్‌ను చేరుకోవడం సాధ్యపడలేదు</translation>
 <translation id="6574762126505704998">నింపండి</translation>
 <translation id="6575134580692778371">కాన్ఫిగర్ చెయ్యలేదు</translation>
-<translation id="6596816719288285829">IP చిరునామా</translation>
+<translation id="6596816719288285829">IP అడ్రస్‌</translation>
 <translation id="6603230386432466813">కనెక్ట్ చేయడంలో సమస్య ఉందా?</translation>
 <translation id="6618744767048954150">రన్ అవుతున్నాయి</translation>
 <translation id="6620487321149975369">ప్రింట్ టాస్క్‌లను మాన్యువల్‌గా తీసివేసేంత వరకు అవి హిస్టరీలో అలాగే ఉంటాయి</translation>
@@ -344,9 +344,9 @@
 <translation id="7435977162516949853">{NUMBER_OF_PAGES,plural, =1{స్కాన్ చేయడం పూర్తయింది. 1 పేజీ స్కాన్ చేయబడింది}other{స్కాన్ చేయడం పూర్తయింది. {NUMBER_OF_PAGES} పేజీలు స్కాన్ చేయబడ్డాయి}}</translation>
 <translation id="7469648432129124067">పోర్టల్ గుర్తించబడింది</translation>
 <translation id="7487067081878637334">సాంకేతికం</translation>
-<translation id="7490813197707563893">MAC చిరునామా</translation>
+<translation id="7490813197707563893">MAC అడ్రస్‌</translation>
 <translation id="7497215489070763236">సర్వర్ CA సర్టిఫికేట్</translation>
-<translation id="7502658306369382406">IPv6 చిరునామా</translation>
+<translation id="7502658306369382406">IPv6 అడ్రస్‌</translation>
 <translation id="7550715992156305117">సమస్య విశ్లేషణ రొటీన్‌లు</translation>
 <translation id="7561454561030345039">ఈ చర్య మీ అడ్మినిస్ట్రేటర్ ద్వారా మేనేజ్ చేయబడుతుంది</translation>
 <translation id="7569444139234840525"><ph name="QUERY_TEXT" /> · /<ph name="PHONETICS" />/</translation>
@@ -397,7 +397,7 @@
 <translation id="8461329675984532579">స్వస్థల నెట్‌వర్క్ ప్రదాత పేరు</translation>
 <translation id="8475690821716466388">బలహీనమైన ప్రోటోకాల్ WEP PSKతో Wi-Fi నెట్‌వర్క్ సురక్షితం చేయబడింది</translation>
 <translation id="8477551185774834963">DNS ప్రతిస్పందన సమయం అనుమతించదగిన పరిమితికి కొద్దిగా మించి ఉంది</translation>
-<translation id="8483248364096924578">IP చిరునామా</translation>
+<translation id="8483248364096924578">IP అడ్రస్‌</translation>
 <translation id="8498220429738806196">ట్రాఫిక్ కౌంటర్‌లు</translation>
 <translation id="8503813439785031346">యూజర్‌పేరు</translation>
 <translation id="8503836310948963452">మరికొన్ని నిమిషాలు మాత్రమే…</translation>
diff --git a/chromeos/strings/chromeos_strings_uz.xtb b/chromeos/strings/chromeos_strings_uz.xtb
index 8d4b131..07c65243 100644
--- a/chromeos/strings/chromeos_strings_uz.xtb
+++ b/chromeos/strings/chromeos_strings_uz.xtb
@@ -37,6 +37,7 @@
 <translation id="1621067168122174824">Quvvatlanishini tekshirish</translation>
 <translation id="1639239467298939599">Yuklanmoqda</translation>
 <translation id="1641857168437328880">Hujjat tasmasi (bir tomonlama)</translation>
+<translation id="1643449475550628585">Fon rasmi har kuni almashtirilsin</translation>
 <translation id="1644574205037202324">Tarix</translation>
 <translation id="1662989795263954667">Toʻxtatildi – Siyoh tugadi</translation>
 <translation id="1703835215927279855">Letter</translation>
@@ -76,6 +77,7 @@
 <translation id="2448312741937722512">Turi</translation>
 <translation id="2461822463642141190">Ayni vaqtda</translation>
 <translation id="249323605434939166"><ph name="QUERY_TEXT" /> · <ph name="SOURCE_LANGUAGE_NAME" /></translation>
+<translation id="2505327257735685095">Joriy fon rasmini yangilash</translation>
 <translation id="2517472476991765520">Qidiruv</translation>
 <translation id="2570743873672969996"><ph name="TEST_NAME" /> testi bajarilmoqda...</translation>
 <translation id="2585245331261708204">Yangilangan Chrome OS</translation>
diff --git a/chromeos/tast_control.gni b/chromeos/tast_control.gni
index d926edfe..675bc79 100644
--- a/chromeos/tast_control.gni
+++ b/chromeos/tast_control.gni
@@ -18,10 +18,6 @@
   # crbug.com/1099695
   "platform.Drivefs",
 
-  # crbug.com/1131496
-  "apps.LaunchHelpApp.clamshell_oobe_stable",
-  "apps.LaunchHelpApp.tablet_oobe_stable",
-
   # crbug.com/1154794
   "policy.DefaultGeolocationSetting",
 
@@ -34,12 +30,6 @@
   # crbug.com/1181243
   "network.ConfigureServiceForUserProfile.normal",
 
-  # crbug.com/1185176
-  "arc.Optin",
-
-  # crbug.com/1185654
-  "arc.Optin.vm",
-
   # crbug.com/1184931
   "health.ProbeBatteryMetrics",
 
diff --git a/components/arc/BUILD.gn b/components/arc/BUILD.gn
index 50236d8..06f45dff 100644
--- a/components/arc/BUILD.gn
+++ b/components/arc/BUILD.gn
@@ -24,6 +24,8 @@
     "compat_mode/arc_splash_screen_dialog_view.h",
     "compat_mode/arc_window_property_util.cc",
     "compat_mode/arc_window_property_util.h",
+    "compat_mode/compat_mode_button_controller.cc",
+    "compat_mode/compat_mode_button_controller.h",
     "compat_mode/metrics.cc",
     "compat_mode/metrics.h",
     "compat_mode/overlay_dialog.cc",
@@ -474,6 +476,7 @@
     "clipboard/arc_clipboard_bridge_unittest.cc",
     "compat_mode/arc_resize_lock_manager_unittest.cc",
     "compat_mode/arc_splash_screen_dialog_view_unittest.cc",
+    "compat_mode/compat_mode_button_controller_unittest.cc",
     "compat_mode/overlay_dialog_unittest.cc",
     "compat_mode/resize_confirmation_dialog_view_unittest.cc",
     "compat_mode/resize_toggle_menu_unittest.cc",
@@ -544,6 +547,7 @@
     "//chromeos/disks:test_support",
     "//chromeos/network:test_support",
     "//chromeos/system:system",
+    "//chromeos/ui/frame",
     "//components/account_id",
     "//components/arc/enterprise",
     "//components/arc/media_session",
diff --git a/components/arc/compat_mode/arc_resize_lock_manager.cc b/components/arc/compat_mode/arc_resize_lock_manager.cc
index 36cb994..27ffe688 100644
--- a/components/arc/compat_mode/arc_resize_lock_manager.cc
+++ b/components/arc/compat_mode/arc_resize_lock_manager.cc
@@ -4,12 +4,10 @@
 
 #include "components/arc/compat_mode/arc_resize_lock_manager.h"
 
-#include "ash/frame/non_client_frame_view_ash.h"
 #include "ash/public/cpp/app_types_util.h"
 #include "ash/public/cpp/arc_resize_lock_type.h"
 #include "ash/public/cpp/resize_shadow_type.h"
 #include "ash/public/cpp/window_properties.h"
-#include "ash/resources/vector_icons/vector_icons.h"
 #include "ash/shell.h"
 #include "ash/wm/resize_shadow_controller.h"
 #include "base/bind.h"
@@ -17,22 +15,12 @@
 #include "base/memory/singleton.h"
 #include "base/memory/weak_ptr.h"
 #include "base/notreached.h"
-#include "chromeos/ui/base/window_properties.h"
-#include "chromeos/ui/frame/default_frame_header.h"
 #include "components/arc/arc_browser_context_keyed_service_factory_base.h"
 #include "components/arc/compat_mode/arc_splash_screen_dialog_view.h"
 #include "components/arc/compat_mode/arc_window_property_util.h"
+#include "components/arc/compat_mode/compat_mode_button_controller.h"
 #include "components/arc/compat_mode/metrics.h"
-#include "components/arc/compat_mode/resize_toggle_menu.h"
-#include "components/arc/compat_mode/resize_util.h"
-#include "components/arc/vector_icons/vector_icons.h"
-#include "components/exo/client_controlled_shell_surface.h"
-#include "components/exo/shell_surface_util.h"
-#include "components/strings/grit/components_strings.h"
 #include "ui/aura/window_observer.h"
-#include "ui/base/l10n/l10n_util.h"
-#include "ui/strings/grit/ui_strings.h"
-#include "ui/views/vector_icons.h"
 #include "ui/wm/public/activation_client.h"
 
 namespace arc {
@@ -184,7 +172,9 @@
 
 ArcResizeLockManager::ArcResizeLockManager(
     content::BrowserContext* browser_context,
-    ArcBridgeService* arc_bridge_service) {
+    ArcBridgeService* arc_bridge_service)
+    : compat_mode_button_controller_(
+          std::make_unique<CompatModeButtonController>()) {
   if (aura::Env::HasInstance())
     env_observation.Observe(aura::Env::GetInstance());
 }
@@ -228,8 +218,9 @@
   // ArcResizeLockType::RESIZABLE, which is the the default value of
   // kArcResizeLockTypeKey, and the new value is the same as |old| in that case.
   AppIdObserver::RunOnReady(
-      window, base::BindOnce(&ArcResizeLockManager::UpdateCompatModeButton,
-                             weak_ptr_factory_.GetWeakPtr()));
+      window, base::BindOnce(&CompatModeButtonController::Update,
+                             compat_mode_button_controller_->GetWeakPtr(),
+                             pref_delegate_));
 
   const auto new_value = window->GetProperty(ash::kArcResizeLockTypeKey);
   const auto old_value = static_cast<ash::ArcResizeLockType>(old);
@@ -262,7 +253,7 @@
     const gfx::Rect& old_bounds,
     const gfx::Rect& new_bounds,
     ui::PropertyChangeReason reason) {
-  UpdateCompatModeButton(window);
+  compat_mode_button_controller_->Update(pref_delegate_, window);
 }
 
 void ArcResizeLockManager::OnWindowDestroying(aura::Window* window) {
@@ -298,7 +289,7 @@
     }
     // As we updated the resize lock state above, we need to update compat mode
     // button.
-    UpdateCompatModeButton(window);
+    compat_mode_button_controller_->Update(pref_delegate_, window);
 
     if (ShouldShowSplashScreenDialog(pref_delegate_)) {
       const bool is_for_unresizable =
@@ -328,101 +319,4 @@
     ash::Shell::Get()->resize_shadow_controller()->HideShadow(window);
 }
 
-void ArcResizeLockManager::UpdateCompatModeButton(aura::Window* window) {
-  DCHECK(ash::IsArcWindow(window));
-
-  const auto app_id = GetAppId(window);
-  if (!app_id)
-    return;
-  auto* frame_view = ash::NonClientFrameViewAsh::Get(window);
-  if (!frame_view)
-    return;
-  auto* frame_header = frame_view->GetHeaderView()->GetFrameHeader();
-  const auto resize_lock_state = pref_delegate_->GetResizeLockState(*app_id);
-  if (resize_lock_state == mojom::ArcResizeLockState::UNDEFINED ||
-      resize_lock_state == mojom::ArcResizeLockState::READY) {
-    frame_header->SetCenterButton(nullptr);
-    return;
-  }
-  auto* compat_mode_button = frame_header->GetCenterButton();
-  if (!compat_mode_button) {
-    // The ownership is transferred implicitly with AddChildView in HeaderView,
-    // but ideally we want to explicitly manage the lifecycle of this resource.
-    compat_mode_button = new chromeos::FrameCenterButton(base::BindRepeating(
-        &ArcResizeLockManager::ToggleResizeToggleMenu, base::Unretained(this),
-        base::Unretained(frame_view->frame())));
-    compat_mode_button->SetSubImage(views::kMenuDropArrowIcon);
-    frame_header->SetCenterButton(compat_mode_button);
-    // Ideally, we want HeaderView to update properties, but as currently
-    // the center button is set to FrameHeader, we need to call this explicitly.
-    frame_view->GetHeaderView()->UpdateCaptionButtons();
-  }
-
-  const auto resize_lock_type = window->GetProperty(ash::kArcResizeLockTypeKey);
-
-  switch (PredictCurrentMode(frame_view->frame())) {
-    case ResizeCompatMode::kPhone:
-      compat_mode_button->SetImage(views::CAPTION_BUTTON_ICON_CENTER,
-                                   views::FrameCaptionButton::Animate::kNo,
-                                   ash::kSystemMenuPhoneIcon);
-      compat_mode_button->SetText(l10n_util::GetStringUTF16(
-          IDS_ARC_COMPAT_MODE_RESIZE_TOGGLE_MENU_PHONE));
-      compat_mode_button->SetAccessibleName(l10n_util::GetStringUTF16(
-          IDS_ARC_COMPAT_MODE_RESIZE_TOGGLE_MENU_PHONE));
-      if (resize_lock_type == ash::ArcResizeLockType::FULLY_LOCKED) {
-        compat_mode_button->SetTooltipText(l10n_util::GetStringUTF16(
-            IDS_ASH_ARC_APP_COMPAT_DISABLED_COMPAT_MODE_BUTTON_TOOLTIP_PHONE));
-      }
-      break;
-    case ResizeCompatMode::kTablet:
-      compat_mode_button->SetImage(views::CAPTION_BUTTON_ICON_CENTER,
-                                   views::FrameCaptionButton::Animate::kNo,
-                                   ash::kSystemMenuTabletIcon);
-      compat_mode_button->SetText(l10n_util::GetStringUTF16(
-          IDS_ARC_COMPAT_MODE_RESIZE_TOGGLE_MENU_TABLET));
-      compat_mode_button->SetAccessibleName(l10n_util::GetStringUTF16(
-          IDS_ARC_COMPAT_MODE_RESIZE_TOGGLE_MENU_TABLET));
-      break;
-    case ResizeCompatMode::kResizable:
-      compat_mode_button->SetImage(views::CAPTION_BUTTON_ICON_CENTER,
-                                   views::FrameCaptionButton::Animate::kNo,
-                                   kResizableIcon);
-      compat_mode_button->SetText(l10n_util::GetStringUTF16(
-          IDS_ARC_COMPAT_MODE_RESIZE_TOGGLE_MENU_RESIZABLE));
-      compat_mode_button->SetAccessibleName(l10n_util::GetStringUTF16(
-          IDS_ARC_COMPAT_MODE_RESIZE_TOGGLE_MENU_RESIZABLE));
-      break;
-  }
-
-  switch (resize_lock_type) {
-    case ash::ArcResizeLockType::RESIZE_LIMITED:
-    case ash::ArcResizeLockType::RESIZABLE:
-      compat_mode_button->SetEnabled(true);
-      frame_view->SetToggleResizeLockMenuCallback(
-          base::BindRepeating(&ArcResizeLockManager::ToggleResizeToggleMenu,
-                              base::Unretained(this), frame_view->frame()));
-      break;
-    case ash::ArcResizeLockType::FULLY_LOCKED:
-      compat_mode_button->SetEnabled(false);
-      frame_view->ClearToggleResizeLockMenuCallback();
-      break;
-  }
-}
-
-void ArcResizeLockManager::ToggleResizeToggleMenu(views::Widget* widget) {
-  aura::Window* window = widget->GetNativeWindow();
-  if (!window || !ash::IsArcWindow(window))
-    return;
-
-  auto* frame_view = ash::NonClientFrameViewAsh::Get(window);
-  DCHECK(frame_view);
-  const auto* compat_mode_button =
-      frame_view->GetHeaderView()->GetFrameHeader()->GetCenterButton();
-  if (!compat_mode_button || !compat_mode_button->GetEnabled())
-    return;
-  resize_toggle_menu_.reset();
-  resize_toggle_menu_ =
-      std::make_unique<ResizeToggleMenu>(widget, pref_delegate_);
-}
-
 }  // namespace arc
diff --git a/components/arc/compat_mode/arc_resize_lock_manager.h b/components/arc/compat_mode/arc_resize_lock_manager.h
index 4cd43da..b5f7f1e 100644
--- a/components/arc/compat_mode/arc_resize_lock_manager.h
+++ b/components/arc/compat_mode/arc_resize_lock_manager.h
@@ -8,8 +8,7 @@
 #include "base/scoped_multi_source_observation.h"
 #include "base/scoped_observation.h"
 #include "components/arc/compat_mode/arc_resize_lock_pref_delegate.h"
-#include "components/arc/compat_mode/resize_toggle_menu.h"
-#include "components/arc/compat_mode/resize_util.h"
+#include "components/arc/compat_mode/compat_mode_button_controller.h"
 #include "components/keyed_service/core/keyed_service.h"
 #include "ui/aura/env.h"
 #include "ui/aura/env_observer.h"
@@ -20,10 +19,6 @@
 class BrowserContext;
 }  // namespace content
 
-namespace views {
-class Widget;
-}  // namespace views
-
 namespace arc {
 
 class ArcBridgeService;
@@ -61,20 +56,16 @@
     pref_delegate_ = delegate;
   }
 
-  void ToggleResizeToggleMenu(views::Widget* widget);
-
  private:
   friend class ArcResizeLockManagerTest;
 
   void EnableResizeLock(aura::Window* window);
   void DisableResizeLock(aura::Window* window);
 
-  // virtual for testing.
-  virtual void UpdateCompatModeButton(aura::Window* window);
-
   ArcResizeLockPrefDelegate* pref_delegate_{nullptr};
 
-  std::unique_ptr<ResizeToggleMenu> resize_toggle_menu_;
+  // Using unique_ptr to allow unittest to override.
+  std::unique_ptr<CompatModeButtonController> compat_mode_button_controller_;
 
   base::flat_set<aura::Window*> resize_lock_enabled_windows_;
 
diff --git a/components/arc/compat_mode/arc_resize_lock_manager_unittest.cc b/components/arc/compat_mode/arc_resize_lock_manager_unittest.cc
index 7e08fa6..5eacb9cf 100644
--- a/components/arc/compat_mode/arc_resize_lock_manager_unittest.cc
+++ b/components/arc/compat_mode/arc_resize_lock_manager_unittest.cc
@@ -51,9 +51,9 @@
   base::ScopedObservation<aura::Window, aura::WindowObserver> observer_{this};
 };
 
-class TestArcResizeLockManager : public ArcResizeLockManager {
+class TestCompatModeButtonController : public CompatModeButtonController {
  public:
-  TestArcResizeLockManager() : ArcResizeLockManager(nullptr, nullptr) {}
+  ~TestCompatModeButtonController() override = default;
 
   bool IsUpdateCompatModeButtonCalled(const aura::Window* window) const {
     return update_compat_mode_button_called.contains(window);
@@ -62,8 +62,9 @@
     update_compat_mode_button_called.clear();
   }
 
-  // ArcResizeLockManager:
-  void UpdateCompatModeButton(aura::Window* window) override {
+  // CompatModeButtonController:
+  void Update(ArcResizeLockPrefDelegate* pref_delegate,
+              aura::Window* window) override {
     update_compat_mode_button_called.insert(window);
   }
 
@@ -85,6 +86,11 @@
   void SetUp() override {
     CompatModeTestBase::SetUp();
     arc_resize_lock_manager_.SetPrefDelegate(pref_delegate());
+
+    auto controller = std::make_unique<TestCompatModeButtonController>();
+    test_compat_mode_button_controller_ = controller.get();
+    arc_resize_lock_manager_.compat_mode_button_controller_ =
+        std::move(controller);
   }
 
   std::unique_ptr<aura::Window> CreateFakeWindow(bool is_arc) {
@@ -105,14 +111,18 @@
   }
 
   bool IsUpdateCompatModeButtonCalled(const aura::Window* window) const {
-    return arc_resize_lock_manager_.IsUpdateCompatModeButtonCalled(window);
+    return test_compat_mode_button_controller_->IsUpdateCompatModeButtonCalled(
+        window);
   }
   void ResetUpdateCompatModeButtonCalled() {
-    arc_resize_lock_manager_.ResetUpdateCompatModeButtonCalled();
+    test_compat_mode_button_controller_->ResetUpdateCompatModeButtonCalled();
   }
 
  private:
-  TestArcResizeLockManager arc_resize_lock_manager_;
+  ArcResizeLockManager arc_resize_lock_manager_{nullptr, nullptr};
+
+  // Owned by |arc_resize_lock_manager_|.
+  TestCompatModeButtonController* test_compat_mode_button_controller_;
 };
 
 TEST_F(ArcResizeLockManagerTest, ConstructDestruct) {}
diff --git a/components/arc/compat_mode/compat_mode_button_controller.cc b/components/arc/compat_mode/compat_mode_button_controller.cc
new file mode 100644
index 0000000..0f3dbb4f
--- /dev/null
+++ b/components/arc/compat_mode/compat_mode_button_controller.cc
@@ -0,0 +1,168 @@
+// Copyright 2021 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/arc/compat_mode/compat_mode_button_controller.h"
+
+#include <string>
+
+#include "ash/frame/non_client_frame_view_ash.h"
+#include "ash/public/cpp/app_types_util.h"
+#include "ash/public/cpp/arc_resize_lock_type.h"
+#include "ash/public/cpp/window_properties.h"
+#include "ash/resources/vector_icons/vector_icons.h"
+#include "base/bind.h"
+#include "base/callback_forward.h"
+#include "chromeos/ui/frame/default_frame_header.h"
+#include "components/arc/compat_mode/arc_resize_lock_pref_delegate.h"
+#include "components/arc/compat_mode/arc_window_property_util.h"
+#include "components/arc/compat_mode/resize_util.h"
+#include "components/arc/vector_icons/vector_icons.h"
+#include "components/strings/grit/components_strings.h"
+#include "ui/base/l10n/l10n_util.h"
+#include "ui/gfx/vector_icon_types.h"
+#include "ui/views/vector_icons.h"
+
+namespace arc {
+
+namespace {
+
+const gfx::VectorIcon& GetIcon(const ResizeCompatMode& mode) {
+  switch (mode) {
+    case ResizeCompatMode::kPhone:
+      return ash::kSystemMenuPhoneIcon;
+    case ResizeCompatMode::kTablet:
+      return ash::kSystemMenuTabletIcon;
+    case ResizeCompatMode::kResizable:
+      return kResizableIcon;
+  }
+}
+
+std::u16string GetText(const ResizeCompatMode& mode) {
+  switch (mode) {
+    case ResizeCompatMode::kPhone:
+      return l10n_util::GetStringUTF16(
+          IDS_ARC_COMPAT_MODE_RESIZE_TOGGLE_MENU_PHONE);
+    case ResizeCompatMode::kTablet:
+      return l10n_util::GetStringUTF16(
+          IDS_ARC_COMPAT_MODE_RESIZE_TOGGLE_MENU_TABLET);
+    case ResizeCompatMode::kResizable:
+      return l10n_util::GetStringUTF16(
+          IDS_ARC_COMPAT_MODE_RESIZE_TOGGLE_MENU_RESIZABLE);
+  }
+}
+
+}  // namespace
+
+CompatModeButtonController::CompatModeButtonController() = default;
+CompatModeButtonController::~CompatModeButtonController() = default;
+
+void CompatModeButtonController::Update(
+    ArcResizeLockPrefDelegate* pref_delegate,
+    aura::Window* window) {
+  DCHECK(ash::IsArcWindow(window));
+
+  const auto app_id = GetAppId(window);
+  if (!app_id)
+    return;
+  auto* const frame_header = GetFrameHeader(window);
+  const auto resize_lock_state = pref_delegate->GetResizeLockState(*app_id);
+  if (resize_lock_state == mojom::ArcResizeLockState::UNDEFINED ||
+      resize_lock_state == mojom::ArcResizeLockState::READY) {
+    frame_header->SetCenterButton(nullptr);
+    return;
+  }
+  auto* compat_mode_button = frame_header->GetCenterButton();
+  if (!compat_mode_button) {
+    // The ownership is transferred implicitly with AddChildView in HeaderView,
+    // but ideally we want to explicitly manage the lifecycle of this resource.
+    compat_mode_button = new chromeos::FrameCenterButton(
+        base::BindRepeating(&CompatModeButtonController::ToggleResizeToggleMenu,
+                            GetWeakPtr(), window, pref_delegate));
+    compat_mode_button->SetSubImage(views::kMenuDropArrowIcon);
+    frame_header->SetCenterButton(compat_mode_button);
+
+    auto* const frame_view = ash::NonClientFrameViewAsh::Get(window);
+    // Ideally, we want HeaderView to update properties, but as currently
+    // the center button is set to FrameHeader, we need to call this explicitly.
+    // |frame_view| can be null in unittest.
+    if (frame_view)
+      frame_view->GetHeaderView()->UpdateCaptionButtons();
+  }
+
+  const auto mode = PredictCurrentMode(window);
+  const auto& icon = GetIcon(mode);
+  const auto text = GetText(mode);
+
+  compat_mode_button->SetImage(views::CAPTION_BUTTON_ICON_CENTER,
+                               views::FrameCaptionButton::Animate::kNo, icon);
+  compat_mode_button->SetText(text);
+  compat_mode_button->SetAccessibleName(text);
+
+  const auto resize_lock_type = window->GetProperty(ash::kArcResizeLockTypeKey);
+  switch (resize_lock_type) {
+    case ash::ArcResizeLockType::RESIZE_LIMITED:
+    case ash::ArcResizeLockType::RESIZABLE:
+      compat_mode_button->SetEnabled(true);
+      break;
+    case ash::ArcResizeLockType::FULLY_LOCKED:
+      compat_mode_button->SetEnabled(false);
+      compat_mode_button->SetTooltipText(l10n_util::GetStringUTF16(
+          IDS_ASH_ARC_APP_COMPAT_DISABLED_COMPAT_MODE_BUTTON_TOOLTIP_PHONE));
+      break;
+  }
+
+  UpdateAshAccelerator(pref_delegate, window);
+}
+
+base::WeakPtr<CompatModeButtonController>
+CompatModeButtonController::GetWeakPtr() {
+  return weak_ptr_factory_.GetWeakPtr();
+}
+
+chromeos::FrameHeader* CompatModeButtonController::GetFrameHeader(
+    aura::Window* window) {
+  auto* const frame_view = ash::NonClientFrameViewAsh::Get(window);
+  return frame_view->GetHeaderView()->GetFrameHeader();
+}
+
+void CompatModeButtonController::UpdateAshAccelerator(
+    ArcResizeLockPrefDelegate* pref_delegate,
+    aura::Window* window) {
+  auto* const frame_view = ash::NonClientFrameViewAsh::Get(window);
+  // |frame_view| can be null in unittest.
+  if (!frame_view)
+    return;
+
+  const auto resize_lock_type = window->GetProperty(ash::kArcResizeLockTypeKey);
+  switch (resize_lock_type) {
+    case ash::ArcResizeLockType::RESIZE_LIMITED:
+    case ash::ArcResizeLockType::RESIZABLE:
+      frame_view->SetToggleResizeLockMenuCallback(base::BindRepeating(
+          &CompatModeButtonController::ToggleResizeToggleMenu, GetWeakPtr(),
+          window, pref_delegate));
+      break;
+    case ash::ArcResizeLockType::FULLY_LOCKED:
+      frame_view->ClearToggleResizeLockMenuCallback();
+      break;
+  }
+}
+
+void CompatModeButtonController::ToggleResizeToggleMenu(
+    aura::Window* window,
+    ArcResizeLockPrefDelegate* pref_delegate) {
+  if (!window || !ash::IsArcWindow(window))
+    return;
+
+  auto* frame_view = ash::NonClientFrameViewAsh::Get(window);
+  DCHECK(frame_view);
+  const auto* compat_mode_button =
+      frame_view->GetHeaderView()->GetFrameHeader()->GetCenterButton();
+  if (!compat_mode_button || !compat_mode_button->GetEnabled())
+    return;
+  resize_toggle_menu_.reset();
+  resize_toggle_menu_ =
+      std::make_unique<ResizeToggleMenu>(frame_view->frame(), pref_delegate);
+}
+
+}  // namespace arc
diff --git a/components/arc/compat_mode/compat_mode_button_controller.h b/components/arc/compat_mode/compat_mode_button_controller.h
new file mode 100644
index 0000000..81dad89
--- /dev/null
+++ b/components/arc/compat_mode/compat_mode_button_controller.h
@@ -0,0 +1,60 @@
+// Copyright 2021 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_ARC_COMPAT_MODE_COMPAT_MODE_BUTTON_CONTROLLER_H_
+#define COMPONENTS_ARC_COMPAT_MODE_COMPAT_MODE_BUTTON_CONTROLLER_H_
+
+#include <memory>
+
+#include "base/memory/weak_ptr.h"
+#include "components/arc/compat_mode/resize_toggle_menu.h"
+
+namespace ash {
+enum class ArcResizeLockType;
+}  // namespace ash
+
+namespace aura {
+class Window;
+}  // namespace aura
+
+namespace chromeos {
+class FrameHeader;
+}  // namespace chromeos
+
+namespace arc {
+
+class ArcResizeLockPrefDelegate;
+
+class CompatModeButtonController {
+ public:
+  CompatModeButtonController();
+  CompatModeButtonController(const CompatModeButtonController&) = delete;
+  CompatModeButtonController& operator=(const CompatModeButtonController&) =
+      delete;
+  virtual ~CompatModeButtonController();
+
+  // virtual for unittest.
+  virtual void Update(ArcResizeLockPrefDelegate* pref_delegate,
+                      aura::Window* window);
+
+  base::WeakPtr<CompatModeButtonController> GetWeakPtr();
+
+ private:
+  // virtual for unittest.
+  virtual chromeos::FrameHeader* GetFrameHeader(aura::Window* window);
+
+  void UpdateAshAccelerator(ArcResizeLockPrefDelegate* pref_delegate,
+                            aura::Window* window);
+
+  void ToggleResizeToggleMenu(aura::Window* window,
+                              ArcResizeLockPrefDelegate* pref_delegate);
+
+  std::unique_ptr<ResizeToggleMenu> resize_toggle_menu_;
+
+  base::WeakPtrFactory<CompatModeButtonController> weak_ptr_factory_{this};
+};
+
+}  // namespace arc
+
+#endif  // COMPONENTS_ARC_COMPAT_MODE_COMPAT_MODE_BUTTON_CONTROLLER_H_
diff --git a/components/arc/compat_mode/compat_mode_button_controller_unittest.cc b/components/arc/compat_mode/compat_mode_button_controller_unittest.cc
new file mode 100644
index 0000000..482c841
--- /dev/null
+++ b/components/arc/compat_mode/compat_mode_button_controller_unittest.cc
@@ -0,0 +1,177 @@
+// Copyright 2021 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/arc/compat_mode/compat_mode_button_controller.h"
+
+#include <memory>
+#include <string>
+
+#include "ash/constants/app_types.h"
+#include "ash/public/cpp/window_properties.h"
+#include "chromeos/ui/frame/default_frame_header.h"
+#include "components/arc/compat_mode/resize_util.h"
+#include "components/arc/compat_mode/test/compat_mode_test_base.h"
+#include "testing/gtest/include/gtest/gtest.h"
+#include "ui/aura/client/aura_constants.h"
+#include "ui/gfx/color_palette.h"
+#include "ui/views/widget/widget_delegate.h"
+
+namespace arc {
+
+namespace {
+
+class TestCompatModeButtonController : public CompatModeButtonController {
+ public:
+  ~TestCompatModeButtonController() override = default;
+
+  // CompatModeButtonController:
+  chromeos::FrameHeader* GetFrameHeader(aura::Window* window) override {
+    return frame_header_.get();
+  }
+
+  void set_frame_header(std::unique_ptr<chromeos::FrameHeader> frame_header) {
+    frame_header_ = std::move(frame_header);
+  }
+
+ private:
+  std::unique_ptr<chromeos::FrameHeader> frame_header_;
+};
+
+class FakeFrameHeader : public chromeos::FrameHeader {
+ public:
+  explicit FakeFrameHeader(views::Widget* widget)
+      : chromeos::FrameHeader(widget, widget->non_client_view()->frame_view()) {
+  }
+  ~FakeFrameHeader() override = default;
+
+  // FrameHeader:
+  void UpdateFrameColors() override {}
+
+ protected:
+  // FrameHeader:
+  void DoPaintHeader(gfx::Canvas* canvas) override {}
+  views::CaptionButtonLayoutSize GetButtonLayoutSize() const override {
+    return views::CaptionButtonLayoutSize::kBrowserCaptionMaximized;
+  }
+  SkColor GetTitleColor() const override { return gfx::kPlaceholderColor; }
+  SkColor GetCurrentFrameColor() const override {
+    return gfx::kPlaceholderColor;
+  }
+};
+
+}  // namespace
+
+class CompatModeButtonControllerTest : public CompatModeTestBase {
+ public:
+  // CompatModeTestBase:
+  void SetUp() override {
+    CompatModeTestBase::SetUp();
+    widget_ = CreateArcWidget(/*app_id=*/absl::nullopt);
+    controller_.set_frame_header(
+        std::make_unique<FakeFrameHeader>(widget_.get()));
+  }
+  void TearDown() override {
+    widget_->CloseNow();
+    CompatModeTestBase::TearDown();
+  }
+
+  TestCompatModeButtonController* controller() { return &controller_; }
+  views::Widget* widget() { return widget_.get(); }
+  aura::Window* window() { return widget()->GetNativeWindow(); }
+
+ private:
+  std::unique_ptr<views::Widget> widget_;
+  TestCompatModeButtonController controller_;
+};
+
+TEST_F(CompatModeButtonControllerTest, ConstructDestruct) {}
+
+TEST_F(CompatModeButtonControllerTest, UpdateWithoutAppId) {
+  const auto* frame_header = controller()->GetFrameHeader(window());
+
+  controller()->Update(pref_delegate(), window());
+  EXPECT_FALSE(frame_header->GetCenterButton());
+}
+
+TEST_F(CompatModeButtonControllerTest, UpdateWithStateUndefined) {
+  const std::string app_id = "app_id";
+  window()->SetProperty(ash::kAppIDKey, app_id);
+
+  const auto* frame_header = controller()->GetFrameHeader(window());
+
+  pref_delegate()->SetResizeLockState(app_id,
+                                      mojom::ArcResizeLockState::UNDEFINED);
+  SyncResizeLockPropertyWithMojoState(widget());
+  controller()->Update(pref_delegate(), window());
+  EXPECT_FALSE(frame_header->GetCenterButton());
+}
+
+TEST_F(CompatModeButtonControllerTest, UpdateWithStateReady) {
+  const std::string app_id = "app_id";
+  window()->SetProperty(ash::kAppIDKey, app_id);
+
+  const auto* frame_header = controller()->GetFrameHeader(window());
+
+  pref_delegate()->SetResizeLockState(app_id, mojom::ArcResizeLockState::READY);
+  SyncResizeLockPropertyWithMojoState(widget());
+  controller()->Update(pref_delegate(), window());
+  EXPECT_FALSE(frame_header->GetCenterButton());
+}
+
+TEST_F(CompatModeButtonControllerTest, UpdateWithStateOn) {
+  const std::string app_id = "app_id";
+  window()->SetProperty(ash::kAppIDKey, app_id);
+
+  const auto* frame_header = controller()->GetFrameHeader(window());
+
+  pref_delegate()->SetResizeLockState(app_id, mojom::ArcResizeLockState::ON);
+  SyncResizeLockPropertyWithMojoState(widget());
+  // Phone
+  ResizeLockToPhone(widget(), pref_delegate());
+  controller()->Update(pref_delegate(), window());
+  EXPECT_TRUE(frame_header->GetCenterButton());
+  EXPECT_TRUE(frame_header->GetCenterButton()->GetEnabled());
+  // Tablet
+  ResizeLockToTablet(widget(), pref_delegate());
+  controller()->Update(pref_delegate(), window());
+  EXPECT_TRUE(frame_header->GetCenterButton());
+  EXPECT_TRUE(frame_header->GetCenterButton()->GetEnabled());
+}
+
+TEST_F(CompatModeButtonControllerTest, UpdateWithStateOff) {
+  const std::string app_id = "app_id";
+  window()->SetProperty(ash::kAppIDKey, app_id);
+
+  const auto* frame_header = controller()->GetFrameHeader(window());
+
+  pref_delegate()->SetResizeLockState(app_id, mojom::ArcResizeLockState::OFF);
+  SyncResizeLockPropertyWithMojoState(widget());
+  controller()->Update(pref_delegate(), window());
+  EXPECT_TRUE(frame_header->GetCenterButton());
+  EXPECT_TRUE(frame_header->GetCenterButton()->GetEnabled());
+}
+
+TEST_F(CompatModeButtonControllerTest, UpdateWithStateFullyLocked) {
+  const std::string app_id = "app_id";
+  window()->SetProperty(ash::kAppIDKey, app_id);
+
+  const auto* frame_header = controller()->GetFrameHeader(window());
+
+  pref_delegate()->SetResizeLockState(app_id,
+                                      mojom::ArcResizeLockState::FULLY_LOCKED);
+  widget()->widget_delegate()->SetCanResize(false);
+  SyncResizeLockPropertyWithMojoState(widget());
+  // Phone
+  ResizeLockToPhone(widget(), pref_delegate());
+  controller()->Update(pref_delegate(), window());
+  EXPECT_TRUE(frame_header->GetCenterButton());
+  EXPECT_FALSE(frame_header->GetCenterButton()->GetEnabled());
+  // Tablet
+  ResizeLockToTablet(widget(), pref_delegate());
+  controller()->Update(pref_delegate(), window());
+  EXPECT_TRUE(frame_header->GetCenterButton());
+  EXPECT_FALSE(frame_header->GetCenterButton()->GetEnabled());
+}
+
+}  // namespace arc
diff --git a/components/arc/compat_mode/resize_util.cc b/components/arc/compat_mode/resize_util.cc
index 65b2fd9..6094eeb 100644
--- a/components/arc/compat_mode/resize_util.cc
+++ b/components/arc/compat_mode/resize_util.cc
@@ -176,14 +176,17 @@
 }
 
 ResizeCompatMode PredictCurrentMode(const views::Widget* widget) {
-  const aura::Window* window = widget->GetNativeWindow();
+  return PredictCurrentMode(widget->GetNativeWindow());
+}
+
+ResizeCompatMode PredictCurrentMode(const aura::Window* window) {
   if (window->GetProperty(ash::kArcResizeLockTypeKey) ==
       ash::ArcResizeLockType::RESIZABLE) {
     return ResizeCompatMode::kResizable;
   }
 
-  const int width = widget->GetWindowBoundsInScreen().width();
-  const int height = widget->GetWindowBoundsInScreen().height();
+  const int width = window->bounds().width();
+  const int height = window->bounds().height();
   // We don't use the exact size here to predict tablet or phone size because
   // the window size might be bigger than it due to the ARC app-side minimum
   // size constraints.
diff --git a/components/arc/compat_mode/resize_util.h b/components/arc/compat_mode/resize_util.h
index 9886a156..b38ffd8 100644
--- a/components/arc/compat_mode/resize_util.h
+++ b/components/arc/compat_mode/resize_util.h
@@ -11,6 +11,10 @@
 class Widget;
 }  // namespace views
 
+namespace aura {
+class Window;
+}  // namespace aura
+
 namespace arc {
 
 class ArcResizeLockPrefDelegate;
@@ -32,6 +36,7 @@
     ArcResizeLockPrefDelegate* pref_delegate);
 
 ResizeCompatMode PredictCurrentMode(const views::Widget* widget);
+ResizeCompatMode PredictCurrentMode(const aura::Window* window);
 
 bool ShouldShowSplashScreenDialog(ArcResizeLockPrefDelegate* pref_delegate);
 
diff --git a/components/arc/compat_mode/test/compat_mode_test_base.cc b/components/arc/compat_mode/test/compat_mode_test_base.cc
index 9f8783c..36e51a0 100644
--- a/components/arc/compat_mode/test/compat_mode_test_base.cc
+++ b/components/arc/compat_mode/test/compat_mode_test_base.cc
@@ -90,10 +90,11 @@
 }
 
 std::unique_ptr<views::Widget> CompatModeTestBase::CreateArcWidget(
-    const std::string& app_id,
+    absl::optional<std::string> app_id,
     bool show) {
   auto widget = CreateWidget(/*show=*/false);
-  widget->GetNativeWindow()->SetProperty(ash::kAppIDKey, app_id);
+  if (app_id)
+    widget->GetNativeWindow()->SetProperty(ash::kAppIDKey, *app_id);
   widget->GetNativeWindow()->SetProperty(
       aura::client::kAppType, static_cast<int>(ash::AppType::ARC_APP));
   if (show)
diff --git a/components/arc/compat_mode/test/compat_mode_test_base.h b/components/arc/compat_mode/test/compat_mode_test_base.h
index c4057144..871f8e9 100644
--- a/components/arc/compat_mode/test/compat_mode_test_base.h
+++ b/components/arc/compat_mode/test/compat_mode_test_base.h
@@ -9,6 +9,7 @@
 #include <string>
 
 #include "components/arc/compat_mode/arc_resize_lock_pref_delegate.h"
+#include "third_party/abseil-cpp/absl/types/optional.h"
 #include "ui/display/test/scoped_screen_override.h"
 #include "ui/display/test/test_screen.h"
 #include "ui/views/test/views_test_base.h"
@@ -27,8 +28,9 @@
   void TearDown() override;
 
   std::unique_ptr<views::Widget> CreateWidget(bool show = true);
-  std::unique_ptr<views::Widget> CreateArcWidget(const std::string& app_id,
-                                                 bool show = true);
+  std::unique_ptr<views::Widget> CreateArcWidget(
+      absl::optional<std::string> app_id,
+      bool show = true);
 
   void SetDisplayWorkArea(const gfx::Rect& work_area);
 
diff --git a/components/arc/session/arc_session_impl.cc b/components/arc/session/arc_session_impl.cc
index c190cbd..2b6e3a0d 100644
--- a/components/arc/session/arc_session_impl.cc
+++ b/components/arc/session/arc_session_impl.cc
@@ -12,6 +12,7 @@
 #include <utility>
 #include <vector>
 
+#include "ash/constants/ash_features.h"
 #include "ash/constants/ash_switches.h"
 #include "base/bind.h"
 #include "base/command_line.h"
@@ -459,6 +460,8 @@
           arc::kKeyboardShortcutHelperIntegrationFeature);
   params.lcd_density = lcd_density_;
   params.num_cores_disabled = num_cores_disabled;
+  params.enable_notifications_refresh =
+      ash::features::IsNotificationsRefreshEnabled();
 
   if (base::CommandLine::ForCurrentProcess()->HasSwitch(
           chromeos::switches::kArcPlayStoreAutoUpdate)) {
diff --git a/components/arc/session/arc_start_params.h b/components/arc/session/arc_start_params.h
index 520cf3ad..0f47b90 100644
--- a/components/arc/session/arc_start_params.h
+++ b/components/arc/session/arc_start_params.h
@@ -89,6 +89,9 @@
   // Flag to enable keyboard shortcut helper integration.
   bool enable_keyboard_shortcut_helper_integration = false;
 
+  // Flag to enable notification refresh.
+  bool enable_notifications_refresh = false;
+
  private:
   DISALLOW_COPY_AND_ASSIGN(StartParams);
 };
diff --git a/components/arc/session/arc_vm_client_adapter.cc b/components/arc/session/arc_vm_client_adapter.cc
index 1761e77..9bde026 100644
--- a/components/arc/session/arc_vm_client_adapter.cc
+++ b/components/arc/session/arc_vm_client_adapter.cc
@@ -235,6 +235,8 @@
       "androidboot.chromeos_channel=" + channel,
       base::StringPrintf("androidboot.iioservice_present=%d",
                          BUILDFLAG(USE_IIOSERVICE)),
+      base::StringPrintf("androidboot.enable_notifications_refresh=%d",
+                         start_params.enable_notifications_refresh),
   };
 
   const ArcVmUreadaheadMode mode =
diff --git a/components/arc/test/fake_net_instance.cc b/components/arc/test/fake_net_instance.cc
index 636a731..a72d066 100644
--- a/components/arc/test/fake_net_instance.cc
+++ b/components/arc/test/fake_net_instance.cc
@@ -50,6 +50,11 @@
 
 void FakeNetInstance::PingTest(const std::string& transport_name,
                                const std::string& ip_address,
-                               PingTestCallback callback) {}
+                               PingTestCallback callback) {
+  mojom::ArcPingTestResultPtr result_ptr = mojom::ArcPingTestResult::New();
+  result_ptr->is_successful = ping_test_result_.is_successful;
+  result_ptr->duration_ms = ping_test_result_.duration_ms;
+  std::move(callback).Run(std::move(result_ptr));
+}
 
 }  // namespace arc
diff --git a/components/arc/test/fake_net_instance.h b/components/arc/test/fake_net_instance.h
index b4cb688..02d1168d 100644
--- a/components/arc/test/fake_net_instance.h
+++ b/components/arc/test/fake_net_instance.h
@@ -54,9 +54,14 @@
     dns_resolution_test_result_ = dns_resolution_test_result;
   }
 
+  void set_ping_test_result(mojom::ArcPingTestResult ping_test_result) {
+    ping_test_result_ = ping_test_result;
+  }
+
  private:
   mojom::ArcHttpTestResult http_test_result_;
   mojom::ArcDnsResolutionTestResult dns_resolution_test_result_;
+  mojom::ArcPingTestResult ping_test_result_;
 };
 
 }  // namespace arc
diff --git a/components/autofill/core/browser/form_data_importer.cc b/components/autofill/core/browser/form_data_importer.cc
index 4a607dd2..499bdb2 100644
--- a/components/autofill/core/browser/form_data_importer.cc
+++ b/components/autofill/core/browser/form_data_importer.cc
@@ -295,11 +295,8 @@
   }
 
   // Do not offer credit card save at all if Autofill Assistant is running.
-  if (base::FeatureList::IsEnabled(
-          features::kAutofillSuppressCreditCardSaveForAssistant) &&
-      client_->IsAutofillAssistantShowing()) {
+  if (client_->IsAutofillAssistantShowing())
     return;
-  }
 
 #if !defined(OS_ANDROID) && !defined(OS_IOS)
   // A credit card was successfully imported, but it's possible it is already a
diff --git a/components/autofill/core/common/autofill_payments_features.cc b/components/autofill/core/common/autofill_payments_features.cc
index a0cf89a..3f31a2de 100644
--- a/components/autofill/core/common/autofill_payments_features.cc
+++ b/components/autofill/core/common/autofill_payments_features.cc
@@ -155,12 +155,6 @@
     "AutofillSuggestVirtualCardsOnIncompleteForm",
     base::FEATURE_DISABLED_BY_DEFAULT};
 
-// When enabled, if the Autofill Assistant is running, credit card save (both
-// local and upload) will not be offered.
-const base::Feature kAutofillSuppressCreditCardSaveForAssistant{
-    "AutofillSuppressCreditCardSaveForAssistant",
-    base::FEATURE_ENABLED_BY_DEFAULT};
-
 // Controls offering credit card upload to Google Payments. Cannot ever be
 // ENABLED_BY_DEFAULT because the feature state depends on the user's country.
 // There are countries we simply can't turn this on for, and they change over
diff --git a/components/autofill/core/common/autofill_payments_features.h b/components/autofill/core/common/autofill_payments_features.h
index be4ee4c..0987194 100644
--- a/components/autofill/core/common/autofill_payments_features.h
+++ b/components/autofill/core/common/autofill_payments_features.h
@@ -41,7 +41,6 @@
 extern const base::Feature kAutofillShowUnmaskedCachedCardInManualFillingView;
 extern const base::Feature kAutofillSortSuggestionsBasedOnOfferPresence;
 extern const base::Feature kAutofillSuggestVirtualCardsOnIncompleteForm;
-extern const base::Feature kAutofillSuppressCreditCardSaveForAssistant;
 extern const base::Feature kAutofillUpstream;
 extern const base::Feature kAutofillUpstreamAllowAllEmailDomains;
 
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb
index 2206e9b..5e586ec 100644
--- a/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb
+++ b/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb
@@ -68,7 +68,7 @@
 <translation id="2677748264148917807">నిష్క్రమించు</translation>
 <translation id="2687403674020088961">అన్ని కుక్కీలను బ్లాక్ చేయండి (సిఫార్సు చేయడం లేదు)</translation>
 <translation id="2704606927547763573">కాపీ చేయబడింది</translation>
-<translation id="2717722538473713889">ఇమెయిల్ చిరునామాలు</translation>
+<translation id="2717722538473713889">ఇమెయిల్ అడ్రస్‌లు</translation>
 <translation id="2785051990912111074">దీనిని ఎంచుకోవడం ద్వారా <ph name="WEBSITE" />కు సంబంధించిన కుక్కీలు క్లియర్ చేయబడతాయి</translation>
 <translation id="2822354292072154809">మీరు <ph name="CHOSEN_OBJECT_NAME" /> కోసం అన్ని సైట్ అనుమతులను ఖచ్చితంగా రీసెట్ చేయాలనుకుంటున్నారా ?</translation>
 <translation id="2870560284913253234">సైట్</translation>
diff --git a/components/browser_ui/styles/android/BUILD.gn b/components/browser_ui/styles/android/BUILD.gn
index 986c777..32966a8 100644
--- a/components/browser_ui/styles/android/BUILD.gn
+++ b/components/browser_ui/styles/android/BUILD.gn
@@ -29,6 +29,7 @@
     "java/res/color/default_icon_color_tint_list.xml",
     "java/res/color/switch_thumb_tint.xml",
     "java/res/color/switch_track_tint.xml",
+    "java/res/color/text_highlight_color.xml",
     "java/res/drawable-hdpi/btn_star_filled.png",
     "java/res/drawable-hdpi/ic_chrome.png",
     "java/res/drawable-hdpi/ic_delete_white_24dp.png",
diff --git a/components/browser_ui/styles/android/java/res/color/text_highlight_color.xml b/components/browser_ui/styles/android/java/res/color/text_highlight_color.xml
new file mode 100644
index 0000000..72cb3e6
--- /dev/null
+++ b/components/browser_ui/styles/android/java/res/color/text_highlight_color.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2021 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. -->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:alpha="@dimen/text_highlight_alpha" android:color="?attr/colorPrimary" />
+</selector>
diff --git a/components/browser_ui/styles/android/java/res/values-night/colors.xml b/components/browser_ui/styles/android/java/res/values-night/colors.xml
index 4136af65d..e5248b6 100644
--- a/components/browser_ui/styles/android/java/res/values-night/colors.xml
+++ b/components/browser_ui/styles/android/java/res/values-night/colors.xml
@@ -8,6 +8,4 @@
          Note that these should NOT be used for icon tint. -->
     <color name="control_normal_color">@color/default_control_color_normal_dark</color>
     <color name="control_highlight_color">@color/default_control_color_highlight_dark</color>
-
-    <color name="text_highlight_color">@color/highlight_color_on_light_text</color>
 </resources>
diff --git a/components/browser_ui/styles/android/java/res/values/colors.xml b/components/browser_ui/styles/android/java/res/values/colors.xml
index 7b05af1..afaca7b 100644
--- a/components/browser_ui/styles/android/java/res/values/colors.xml
+++ b/components/browser_ui/styles/android/java/res/values/colors.xml
@@ -8,7 +8,6 @@
     <color name="default_primary_color">#F2F2F2</color>
     <color name="input_underline_error_color">#D32F2F</color>
     <color name="explanation_text_color">#909090</color>
-    <color name="text_highlight_color">@color/highlight_color_on_dark_text</color>
 
     <!-- Toolbar colors -->
     <!-- Same as ?attr/colorSurface. -->
@@ -32,4 +31,6 @@
     <color name="bottom_system_nav_color">@color/toolbar_background_primary</color>
     <color name="bottom_system_nav_divider_color">@color/divider_line_bg_color</color>
     <color name="bottom_system_nav_divider_color_light">@color/divider_line_bg_color_light</color>
+
+    <color name="text_highlight_color_incognito">@color/baseline_primary_200_alpha_20</color>
 </resources>
diff --git a/components/browser_ui/styles/android/java/res/values/dimens.xml b/components/browser_ui/styles/android/java/res/values/dimens.xml
index 688503aa41..43a8d67 100644
--- a/components/browser_ui/styles/android/java/res/values/dimens.xml
+++ b/components/browser_ui/styles/android/java/res/values/dimens.xml
@@ -17,4 +17,6 @@
     <!-- Toolbar dimensions -->
     <dimen name="toolbar_shadow_height">8dp</dimen>
     <dimen name="toolbar_hairline_height">1dp</dimen>
+
+    <item name="text_highlight_alpha" format="float" type="dimen">0.2</item>
 </resources>
diff --git a/components/browser_ui/styles/android/java/res/values/styles.xml b/components/browser_ui/styles/android/java/res/values/styles.xml
index 433d109..69397a2 100644
--- a/components/browser_ui/styles/android/java/res/values/styles.xml
+++ b/components/browser_ui/styles/android/java/res/values/styles.xml
@@ -251,4 +251,9 @@
     <style name="ThemeRefactorOverlay.Enabled.SettingsPromo" parent="">
         <item name="elevationOverlayEnabled">true</item>
     </style>
+    <!-- Applied after the dynamic colors to override the undesired overrides done by the dynamic
+         color overlay, e.g. android:textColorHighlight. -->
+    <style name="ThemeOverlay.DynamicColorOverrides" parent="">
+        <item name="android:textColorHighlight">@color/text_highlight_color</item>
+    </style>
 </resources>
diff --git a/components/exo/wayland/xdg_shell.cc b/components/exo/wayland/xdg_shell.cc
index aaa2f950..be32796d 100644
--- a/components/exo/wayland/xdg_shell.cc
+++ b/components/exo/wayland/xdg_shell.cc
@@ -15,6 +15,7 @@
 #include "base/strings/utf_string_conversions.h"
 #include "chromeos/ui/base/window_state_type.h"
 #include "components/exo/display.h"
+#include "components/exo/shell_surface_util.h"
 #include "components/exo/wayland/serial_tracker.h"
 #include "components/exo/wayland/server_util.h"
 #include "components/exo/wayland/wayland_positioner.h"
@@ -197,6 +198,16 @@
       return;
     }
 
+    if (this == parent) {
+      // Some apps e.g. crbug/1210235 try to be their own parent. Ignore them.
+      auto* app_id = GetShellApplicationId(
+          shell_surface_data_->shell_surface->host_window());
+      LOG(WARNING)
+          << "Client attempts to add itself as a transient parent: app_id="
+          << app_id;
+      return;
+    }
+
     // This is a no-op if parent is not mapped.
     if (parent->shell_surface_data_ &&
         parent->shell_surface_data_->shell_surface->GetWidget())
diff --git a/components/exo/wayland/zxdg_shell.cc b/components/exo/wayland/zxdg_shell.cc
index 8e9c6ca4..ccd3418 100644
--- a/components/exo/wayland/zxdg_shell.cc
+++ b/components/exo/wayland/zxdg_shell.cc
@@ -14,6 +14,7 @@
 #include "base/strings/utf_string_conversions.h"
 #include "chromeos/ui/base/window_state_type.h"
 #include "components/exo/display.h"
+#include "components/exo/shell_surface_util.h"
 #include "components/exo/wayland/serial_tracker.h"
 #include "components/exo/wayland/server_util.h"
 #include "components/exo/wayland/wayland_positioner.h"
@@ -216,6 +217,16 @@
       return;
     }
 
+    if (this == parent) {
+      // Some apps e.g. crbug/1210235 try to be their own parent. Ignore them.
+      auto* app_id = GetShellApplicationId(
+          shell_surface_data_->shell_surface->host_window());
+      LOG(WARNING)
+          << "Client attempts to add itself as a transient parent: app_id="
+          << app_id;
+      return;
+    }
+
     // This is a no-op if parent is not mapped.
     if (parent->shell_surface_data_ &&
         parent->shell_surface_data_->shell_surface->GetWidget())
diff --git a/components/services/app_service/public/cpp/types_util.cc b/components/services/app_service/public/cpp/types_util.cc
index 40a8ed20..4db293f 100644
--- a/components/services/app_service/public/cpp/types_util.cc
+++ b/components/services/app_service/public/cpp/types_util.cc
@@ -53,4 +53,25 @@
   NOTREACHED();
 }
 
+bool AppTypeUsesWebContents(apps::mojom::AppType app_type) {
+  switch (app_type) {
+    case apps::mojom::AppType::kWeb:
+    case apps::mojom::AppType::kSystemWeb:
+    case apps::mojom::AppType::kExtension:
+      return true;
+    case apps::mojom::AppType::kUnknown:
+    case apps::mojom::AppType::kArc:
+    case apps::mojom::AppType::kBuiltIn:
+    case apps::mojom::AppType::kCrostini:
+    case apps::mojom::AppType::kMacOs:
+    case apps::mojom::AppType::kPluginVm:
+    case apps::mojom::AppType::kStandaloneBrowser:
+    case apps::mojom::AppType::kRemote:
+    case apps::mojom::AppType::kBorealis:
+    case apps::mojom::AppType::kStandaloneBrowserExtension:
+      return false;
+  }
+  NOTREACHED();
+}
+
 }  // namespace apps_util
diff --git a/components/services/app_service/public/cpp/types_util.h b/components/services/app_service/public/cpp/types_util.h
index 99942d75..62b0729 100644
--- a/components/services/app_service/public/cpp/types_util.h
+++ b/components/services/app_service/public/cpp/types_util.h
@@ -14,6 +14,10 @@
 bool IsInstalled(apps::mojom::Readiness readiness);
 bool IsHumanLaunch(apps::mojom::LaunchSource launch_source);
 
+// Checks if an app of |app_type| runs in Browser/WebContents (web apps, hosted
+// apps, and packaged v1 apps).
+bool AppTypeUsesWebContents(apps::mojom::AppType app_type);
+
 }  // namespace apps_util
 
 #endif  // COMPONENTS_SERVICES_APP_SERVICE_PUBLIC_CPP_TYPES_UTIL_H_
diff --git a/components/soda/constants.cc b/components/soda/constants.cc
index 575fc4ce..e148559 100644
--- a/components/soda/constants.cc
+++ b/components/soda/constants.cc
@@ -132,9 +132,9 @@
 
 std::string GetLanguageName(LanguageCode language_code) {
   std::string language_name;
-  if (language_code != speech::LanguageCode::kNone) {
-    absl::optional<speech::SodaLanguagePackComponentConfig> language_config =
-        speech::GetLanguageComponentConfig(language_code);
+  if (language_code != LanguageCode::kNone) {
+    absl::optional<SodaLanguagePackComponentConfig> language_config =
+        GetLanguageComponentConfig(language_code);
     if (language_config.has_value()) {
       language_name = language_config.value().language_name;
     }
@@ -144,8 +144,8 @@
 }
 
 LanguageCode GetLanguageCode(const std::string& language_name) {
-  absl::optional<speech::SodaLanguagePackComponentConfig> language_config =
-      speech::GetLanguageComponentConfig(language_name);
+  absl::optional<SodaLanguagePackComponentConfig> language_config =
+      GetLanguageComponentConfig(language_name);
   if (language_config.has_value()) {
     return language_config.value().language_code;
   }
diff --git a/components/soda/soda_installer.cc b/components/soda/soda_installer.cc
index bdc2564..9e64687 100644
--- a/components/soda/soda_installer.cc
+++ b/components/soda/soda_installer.cc
@@ -59,8 +59,8 @@
   registry->RegisterFilePathPref(prefs::kSodaBinaryPath, base::FilePath());
 
   // Register language pack config path preferences.
-  for (const speech::SodaLanguagePackComponentConfig& config :
-       speech::kLanguageComponentConfigs) {
+  for (const SodaLanguagePackComponentConfig& config :
+       kLanguageComponentConfigs) {
     registry->RegisterFilePathPref(config.config_path_pref, base::FilePath());
   }
 #endif  // !BUILDFLAG(IS_CHROMEOS_ASH)
@@ -81,12 +81,12 @@
   if (IsAnyFeatureUsingSodaEnabled(profile_prefs)) {
     soda_installer_initialized_ = true;
     global_prefs->SetTime(prefs::kSodaScheduledDeletionTime, base::Time());
-    speech::SodaInstaller::GetInstance()->InstallSoda(global_prefs);
+    SodaInstaller::GetInstance()->InstallSoda(global_prefs);
     for (const auto& language :
          global_prefs->GetList(prefs::kSodaRegisteredLanguagePacks)
              ->GetList()) {
-      speech::SodaInstaller::GetInstance()->InstallLanguage(
-          language.GetString(), global_prefs);
+      SodaInstaller::GetInstance()->InstallLanguage(language.GetString(),
+                                                    global_prefs);
     }
   } else {
     base::Time deletion_time =
@@ -111,7 +111,7 @@
       base::Time::Now() + base::TimeDelta::FromDays(kSodaCleanUpDelayInDays));
 }
 
-bool SodaInstaller::IsSodaInstalled(speech::LanguageCode language_code) const {
+bool SodaInstaller::IsSodaInstalled(LanguageCode language_code) const {
   return (soda_binary_installed_ && IsLanguageInstalled(language_code));
 }
 
@@ -119,8 +119,7 @@
   return !installed_languages_.empty();
 }
 
-bool SodaInstaller::IsLanguageInstalled(
-    speech::LanguageCode language_code) const {
+bool SodaInstaller::IsLanguageInstalled(LanguageCode language_code) const {
   return installed_languages_.find(language_code) != installed_languages_.end();
 }
 
@@ -135,7 +134,7 @@
 void SodaInstaller::NotifySodaInstalledForTesting() {
   soda_binary_installed_ = true;
   is_soda_downloading_ = false;
-  installed_languages_.insert(speech::LanguageCode::kEnUs);
+  installed_languages_.insert(LanguageCode::kEnUs);
   language_pack_progress_.clear();
   NotifyOnSodaInstalled();
 }
@@ -206,7 +205,7 @@
 }
 
 void SodaInstaller::NotifyOnSodaLanguagePackInstalled(
-    speech::LanguageCode language_code) {
+    LanguageCode language_code) {
   for (Observer& observer : observers_)
     observer.OnSodaLanguagePackInstalled(language_code);
 }
@@ -216,8 +215,7 @@
     observer.OnSodaError();
 }
 
-void SodaInstaller::NotifyOnSodaLanguagePackError(
-    speech::LanguageCode language_code) {
+void SodaInstaller::NotifyOnSodaLanguagePackError(LanguageCode language_code) {
   for (Observer& observer : observers_)
     observer.OnSodaLanguagePackError(language_code);
 }
@@ -247,8 +245,7 @@
   update->ClearList();
 }
 
-bool SodaInstaller::IsSodaDownloading(
-    speech::LanguageCode language_code) const {
+bool SodaInstaller::IsSodaDownloading(LanguageCode language_code) const {
   return is_soda_downloading_ || language_pack_progress_.find(language_code) !=
                                      language_pack_progress_.end();
 }
diff --git a/components/soda/soda_installer.h b/components/soda/soda_installer.h
index 5502595..7c3887a 100644
--- a/components/soda/soda_installer.h
+++ b/components/soda/soda_installer.h
@@ -40,8 +40,7 @@
     virtual void OnSodaError() = 0;
 
     // Called if there is an error in a SODA language pack installation.
-    virtual void OnSodaLanguagePackError(
-        speech::LanguageCode language_code) = 0;
+    virtual void OnSodaLanguagePackError(LanguageCode language_code) = 0;
 
     // Called during the SODA installation. Progress is the weighted average of
     // the download percentage of the SODA binary and at least one language
@@ -103,7 +102,7 @@
   // Returns whether or not SODA and the given language pack are installed on
   // this device. Will return a stale value until InstallSoda() and
   // InstallLanguage() have run and asynchronously returned an answer.
-  bool IsSodaInstalled(speech::LanguageCode language_code) const;
+  bool IsSodaInstalled(LanguageCode language_code) const;
 
   // Adds an observer to the observer list.
   void AddObserver(Observer* observer);
@@ -112,7 +111,7 @@
   void RemoveObserver(Observer* observer);
 
   // Method for checking in-progress downloads.
-  bool IsSodaDownloading(speech::LanguageCode language_code) const;
+  bool IsSodaDownloading(LanguageCode language_code) const;
 
   // TODO(crbug.com/1237462): Consider creating a MockSodaInstaller class that
   // implements these test-specific methods.
@@ -143,7 +142,7 @@
 
   // Notifies the observers that a SODA language pack installation has
   // completed.
-  void NotifyOnSodaLanguagePackInstalled(speech::LanguageCode language_code);
+  void NotifyOnSodaLanguagePackInstalled(LanguageCode language_code);
 
   // Notifies the observers that there is an error in the SODA binary
   // installation.
@@ -151,7 +150,7 @@
 
   // Notifies the observers that there is an error in a SODA language pack
   // installation.
-  void NotifyOnSodaLanguagePackError(speech::LanguageCode language_code);
+  void NotifyOnSodaLanguagePackError(LanguageCode language_code);
 
   // Notifies the observers of the combined progress as the SODA binary and
   // language pack are installed. Progress is the download percentage out of
@@ -173,7 +172,7 @@
 
   // Returns whether or not the language pack for a given language is
   // installed. The language should be localized in BCP-47, e.g. "en-US".
-  bool IsLanguageInstalled(speech::LanguageCode language_code) const;
+  bool IsLanguageInstalled(LanguageCode language_code) const;
 
   bool IsAnyLanguagePackInstalled() const;
 
@@ -183,9 +182,9 @@
   bool is_soda_downloading_ = false;
 
   // Tracks all downloaded language packs.
-  std::set<speech::LanguageCode> installed_languages_;
+  std::set<LanguageCode> installed_languages_;
   // Maps language codes to their install progress.
-  base::flat_map<speech::LanguageCode, double> language_pack_progress_;
+  base::flat_map<LanguageCode, double> language_pack_progress_;
 
  private:
   // Any new feature using SODA should add its pref here.
diff --git a/components/soda/soda_installer_impl_chromeos.cc b/components/soda/soda_installer_impl_chromeos.cc
index 107a448..6d45fea 100644
--- a/components/soda/soda_installer_impl_chromeos.cc
+++ b/components/soda/soda_installer_impl_chromeos.cc
@@ -72,7 +72,7 @@
   // installing the SODA English-US DLC.
   DCHECK_EQ(language, kUsEnglishLocale);
 
-  language_pack_progress_.insert({speech::LanguageCode::kEnUs, 0.0});
+  language_pack_progress_.insert({LanguageCode::kEnUs, 0.0});
 
   chromeos::DlcserviceClient::Get()->Install(
       kSodaEnglishUsDlcName,
@@ -120,7 +120,7 @@
   if (install_result.error == dlcservice::kErrorNone) {
     soda_binary_installed_ = true;
     SetSodaBinaryPath(base::FilePath(install_result.root_path));
-    if (IsLanguageInstalled(speech::LanguageCode::kEnUs)) {
+    if (IsLanguageInstalled(LanguageCode::kEnUs)) {
       NotifyOnSodaInstalled();
     }
   } else {
@@ -132,9 +132,9 @@
 
 void SodaInstallerImplChromeOS::OnLanguageInstalled(
     const chromeos::DlcserviceClient::InstallResult& install_result) {
-  language_pack_progress_.erase(speech::LanguageCode::kEnUs);
+  language_pack_progress_.erase(LanguageCode::kEnUs);
   if (install_result.error == dlcservice::kErrorNone) {
-    installed_languages_.insert(speech::LanguageCode::kEnUs);
+    installed_languages_.insert(LanguageCode::kEnUs);
     SetLanguagePath(base::FilePath(install_result.root_path));
     if (soda_binary_installed_) {
       NotifyOnSodaInstalled();
@@ -142,7 +142,7 @@
   } else {
     // TODO: Notify the observer of the specific language pack that failed to
     // install. ChromeOS currently only supports the en-US language pack.
-    NotifyOnSodaLanguagePackError(speech::LanguageCode::kEnUs);
+    NotifyOnSodaLanguagePackError(LanguageCode::kEnUs);
   }
 }
 
@@ -152,11 +152,11 @@
 }
 
 void SodaInstallerImplChromeOS::OnLanguageProgress(double progress) {
-  language_pack_progress_[speech::LanguageCode::kEnUs] = progress;
+  language_pack_progress_[LanguageCode::kEnUs] = progress;
 
   // TODO: Notify the observer of the specific language pack that is currently
   // being installed. ChromeOS currently only supports the en-US language pack.
-  NotifyOnSodaLanguagePackProgress(progress, speech::LanguageCode::kEnUs);
+  NotifyOnSodaLanguagePackProgress(progress, LanguageCode::kEnUs);
 }
 
 void SodaInstallerImplChromeOS::OnSodaCombinedProgress() {
@@ -164,7 +164,7 @@
   // e.g.: (1) starting progress from 0% if we are downloading language
   // only (2) weighting download progress proportionally to DLC binary size.
   double language_progress = 0;
-  auto it = language_pack_progress_.find(speech::LanguageCode::kEnUs);
+  auto it = language_pack_progress_.find(LanguageCode::kEnUs);
   if (it != language_pack_progress_.end())
     language_progress = it->second;
 
diff --git a/components/soda/soda_installer_impl_chromeos_unittest.cc b/components/soda/soda_installer_impl_chromeos_unittest.cc
index 25f6a89..ff23558 100644
--- a/components/soda/soda_installer_impl_chromeos_unittest.cc
+++ b/components/soda/soda_installer_impl_chromeos_unittest.cc
@@ -55,10 +55,10 @@
   }
 
   bool IsSodaInstalled() {
-    return soda_installer_impl_->IsSodaInstalled(speech::LanguageCode::kEnUs);
+    return soda_installer_impl_->IsSodaInstalled(LanguageCode::kEnUs);
   }
 
-  bool IsLanguageInstalled(speech::LanguageCode language) {
+  bool IsLanguageInstalled(LanguageCode language) {
     return soda_installer_impl_->IsLanguageInstalled(language);
   }
 
@@ -67,7 +67,7 @@
   }
 
   bool IsSodaDownloading() {
-    return soda_installer_impl_->IsSodaDownloading(speech::LanguageCode::kEnUs);
+    return soda_installer_impl_->IsSodaDownloading(LanguageCode::kEnUs);
   }
 
   void Init() {
diff --git a/components/strings/components_strings_en-GB.xtb b/components/strings/components_strings_en-GB.xtb
index fac9159..4786498 100644
--- a/components/strings/components_strings_en-GB.xtb
+++ b/components/strings/components_strings_en-GB.xtb
@@ -271,6 +271,7 @@
 <translation id="1838374766361614909">Clear search</translation>
 <translation id="1839551713262164453">Validation of policy values has failed with errors</translation>
 <translation id="1842969606798536927">Pay</translation>
+<translation id="1856713167556118146">What Incognito doesn’t do</translation>
 <translation id="1871208020102129563">Proxy is set to use fixed proxy servers, not a .pac script URL.</translation>
 <translation id="1871284979644508959">Required field</translation>
 <translation id="1875512691959384712">Google Forms</translation>
@@ -1018,6 +1019,7 @@
 <translation id="4465818729556336129">This document is confidential and printing is not advised by your administrator.</translation>
 <translation id="4476953670630786061">This form is not secure. Auto-fill has been turned off.</translation>
 <translation id="4477350412780666475">Next track</translation>
+<translation id="4481251927743463293">What Incognito does</translation>
 <translation id="4481394504112738036">Confidential file</translation>
 <translation id="4482953324121162758">This site will not be translated.</translation>
 <translation id="4490717597759821841">A7</translation>
@@ -1118,10 +1120,17 @@
 <translation id="4819347708020428563">Edit annotations in default view?</translation>
 <translation id="4825496307559726072"><ph name="CREATE_GOOGLE_SHEET_FOCUSED_FRIENDLY_MATCH_TEXT" />: press Tab then Enter to create a new Google Sheet quickly</translation>
 <translation id="4825507807291741242">Powerful</translation>
+<translation id="4827402517081186284">Incognito does not make you invisible online:
+        <ph name="BEGIN_LIST" />
+          <ph name="LIST_ITEM" />Sites know when you visit them<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />Employers or schools can track browsing activity<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />Internet service providers may monitor web traffic<ph name="END_LIST_ITEM" />
+        <ph name="END_LIST" /></translation>
 <translation id="4838327282952368871">Dreamy</translation>
 <translation id="484462545196658690">Auto</translation>
 <translation id="4850886885716139402">View</translation>
 <translation id="485316830061041779">German</translation>
+<translation id="4853901935952445031">This site won't be able to use the U2F API after February 2022. If you own this site, you should change it to use the Web Authentication API.</translation>
 <translation id="4854362297993841467">This delivery method isn’t available. Try a different method.</translation>
 <translation id="4854853140771946034">Create a new note in Google Keep quickly</translation>
 <translation id="4876188919622883022">Simplified view</translation>
@@ -1644,6 +1653,7 @@
 <translation id="6757797048963528358">Your device went to sleep.</translation>
 <translation id="6767985426384634228">Update address?</translation>
 <translation id="6768213884286397650">Hagaki (Postcard)</translation>
+<translation id="6774185088257932239"><ph name="BEGIN_LINK" />Learn more<ph name="END_LINK" /> about Incognito</translation>
 <translation id="6775759552199460396">JIS B2</translation>
 <translation id="67862343314499040">Violet</translation>
 <translation id="6786747875388722282">Extensions</translation>
@@ -1691,6 +1701,7 @@
 <translation id="6965382102122355670">OK</translation>
 <translation id="6965978654500191972">Device</translation>
 <translation id="696703987787944103">Perceptual</translation>
+<translation id="6968269510885595029">Use your security key</translation>
 <translation id="6970216967273061347">District</translation>
 <translation id="6971439137020188025">Create a new Google presentation in Slides quickly</translation>
 <translation id="6972629891077993081">HID devices</translation>
@@ -1757,6 +1768,7 @@
 <translation id="7210863904660874423"><ph name="HOST_NAME" /> doesn't adhere to security standards.</translation>
 <translation id="7210993021468939304">Linux activity within the container, and can install and run Linux apps within the container</translation>
 <translation id="721197778055552897"><ph name="BEGIN_LINK" />Learn more<ph name="END_LINK" /> about this problem.</translation>
+<translation id="7215025035562547931">Take a moment to consider accuracy</translation>
 <translation id="7217745192097460130">Use Touch ID to verify and complete your purchase?</translation>
 <translation id="7219179957768738017">The connection uses <ph name="SSL_VERSION" />.</translation>
 <translation id="7220786058474068424">Processing</translation>
@@ -2093,6 +2105,12 @@
 <translation id="8307888238279532626">Apps installed and how often they are used</translation>
 <translation id="831207732689920588">This page is suspicious (flagged by Chrome).</translation>
 <translation id="831997045666694187">Evening</translation>
+<translation id="8328484624016508118">After closing all Incognito tabs, Chrome clears:
+        <ph name="BEGIN_LIST" />
+          <ph name="LIST_ITEM" />Your browsing activity from this device<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />Your search history from this device<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />Information entered into forms<ph name="END_LIST_ITEM" />
+        <ph name="END_LIST" /></translation>
 <translation id="8332188693563227489">Access to <ph name="HOST_NAME" /> was denied</translation>
 <translation id="833262891116910667">Highlight</translation>
 <translation id="8339163506404995330">Pages in <ph name="LANGUAGE" /> will not be translated</translation>
diff --git a/components/strings/components_strings_fr-CA.xtb b/components/strings/components_strings_fr-CA.xtb
index b05eb11..7197876 100644
--- a/components/strings/components_strings_fr-CA.xtb
+++ b/components/strings/components_strings_fr-CA.xtb
@@ -96,6 +96,7 @@
 <translation id="129863573139666797"><ph name="BEGIN_LINK" />Essayez d'effacer vos témoins<ph name="END_LINK" /></translation>
 <translation id="1301324364792935241">Vérifiez les paramètres de DNS sécurisés</translation>
 <translation id="1307966114820526988">Fonctionnalités obsolètes</translation>
+<translation id="1312803275555673949">Par quelles preuves est-ce appuyé?</translation>
 <translation id="131405271941274527"><ph name="URL" /> souhaite vous envoyer et recevoir de l'information lorsque vous touchez votre téléphone sur un appareil CCP</translation>
 <translation id="1314509827145471431">Reliure à droite</translation>
 <translation id="1319245136674974084">Ne plus me poser la question pour cette application</translation>
@@ -637,6 +638,7 @@
 <translation id="3240791268468473923">La zone de contenu dans le bas de l'écran indiquant qu'aucun authentifiant ne correspond au paiement sécurisé est ouverte</translation>
 <translation id="3249845759089040423">Pimpant</translation>
 <translation id="3252266817569339921">Français</translation>
+<translation id="3257954757204451555">Qui est derrière cette information?</translation>
 <translation id="3259648571731540213"><ph name="CREATE_GOOGLE_CALENDAR_EVENT_FOCUSED_FRIENDLY_MATCH_TEXT" />, appuyez sur Tabulation, puis sur Entrée pour rapidement créer un événement dans Google Agenda</translation>
 <translation id="3266793032086590337">Valeur (conflit)</translation>
 <translation id="3268451620468152448">Onglets ouverts</translation>
@@ -1031,6 +1033,7 @@
 <translation id="455113658016510503">A9</translation>
 <translation id="4558551763791394412">Essayez de désactiver vos extensions.</translation>
 <translation id="4559332380232738994">10 po x 11 po</translation>
+<translation id="4567686777917670400">Votre administrateur peut modifier la configuration de votre navigateur à distance. L'activité sur cet appareil peut aussi être gérée à l'extérieur de Chromium. <ph name="BEGIN_LINK" />En savoir plus<ph name="END_LINK" /></translation>
 <translation id="457875822857220463">Livraison</translation>
 <translation id="4579056131138995126">Enveloppe personnelle</translation>
 <translation id="4582204425268416675">Supprimer la carte</translation>
@@ -1522,6 +1525,7 @@
 <translation id="6337534724793800597">Filtrer les règles par nom</translation>
 <translation id="6349101878882523185">Installer <ph name="APP_NAME" /></translation>
 <translation id="6353505687280762741">{COUNT,plural, =0{Aucun}=1{1 mot de passe (pour <ph name="DOMAIN_LIST" />, synchronisé)}=2{2 mots de passe (pour <ph name="DOMAIN_LIST" />, synchronisés)}one{# mot de passe (pour <ph name="DOMAIN_LIST" />, synchronisé)}other{# mots de passe (pour <ph name="DOMAIN_LIST" />, synchronisés)}}</translation>
+<translation id="6355392890578844978">Ce navigateur n'est pas géré par une entreprise ni une organisation. L'activité sur cet appareil peut être gérée à l'extérieur de Chromium. <ph name="BEGIN_LINK" />En savoir plus<ph name="END_LINK" /></translation>
 <translation id="6358450015545214790">Qu'est-ce que c'est?</translation>
 <translation id="6361757823711327522">B7</translation>
 <translation id="6364095313648930329"><ph name="BEGIN_LINK" />Vérifier la configuration du mandataire, du pare-feu et du DNS sécurisé<ph name="END_LINK" /></translation>
@@ -1973,6 +1977,7 @@
 <translation id="7961015016161918242">Jamais</translation>
 <translation id="7966803981046576691">Type de compte de travail</translation>
 <translation id="79682505114836835">La couleur hexadécimale « <ph name="VALUE" /> » est incorrecte.</translation>
+<translation id="7970392640816874403">Que disent les autres sources?</translation>
 <translation id="7976214039405368314">Trop de demandes</translation>
 <translation id="7977538094055660992">Appareil de sortie</translation>
 <translation id="7977894662897852582">EDP</translation>
diff --git a/components/strings/components_strings_iw.xtb b/components/strings/components_strings_iw.xtb
index 0cefdc86..3e3708b 100644
--- a/components/strings/components_strings_iw.xtb
+++ b/components/strings/components_strings_iw.xtb
@@ -96,6 +96,7 @@
 <translation id="129863573139666797">‏<ph name="BEGIN_LINK" />יש לנסות לנקות את קובצי ה-Cookie<ph name="END_LINK" /></translation>
 <translation id="1301324364792935241">‏בדיקת הגדרות ה-DNS המאובטח</translation>
 <translation id="1307966114820526988">תכונות שהוצאו משימוש</translation>
+<translation id="1312803275555673949">האם קיימות ראיות תומכות?</translation>
 <translation id="131405271941274527">‏<ph name="URL" /> רוצה לשלוח ולקבל מידע אחרי כל הקשה של מספר הטלפון שלך במכשיר NFC</translation>
 <translation id="1314509827145471431">כריכה בקצה הימני</translation>
 <translation id="1319245136674974084">לא צריך לשאול יותר לגבי האפליקציה הזו</translation>
@@ -641,6 +642,7 @@
 <translation id="3240791268468473923">הגיליון 'אין התאמה בין פרטי הכניסה לפרטי הכניסה לתשלום מאובטח' פתוח</translation>
 <translation id="3249845759089040423">מגניב</translation>
 <translation id="3252266817569339921">צרפתית</translation>
+<translation id="3257954757204451555">מהו מקור המידע הזה?</translation>
 <translation id="3259648571731540213">‏<ph name="CREATE_GOOGLE_CALENDAR_EVENT_FOCUSED_FRIENDLY_MATCH_TEXT" />, מקישים על Tab ואז על Enter כדי ליצור במהירות אירוע חדש ביומן Google</translation>
 <translation id="3266793032086590337">ערך (התנגשות)</translation>
 <translation id="3268451620468152448">כרטיסיות פתוחות</translation>
@@ -1038,6 +1040,7 @@
 <translation id="455113658016510503">A9</translation>
 <translation id="4558551763791394412">יש לנסות להשבית את התוספים.</translation>
 <translation id="4559332380232738994">10x11</translation>
+<translation id="4567686777917670400">‏מנהל המערכת יכול לשנות את הגדרת הדפדפן שלך מרחוק. ניהול הפעילות במכשיר הזה אפשרי גם מחוץ ל-Chromium. <ph name="BEGIN_LINK" />למידע נוסף<ph name="END_LINK" /></translation>
 <translation id="457875822857220463">משלוח</translation>
 <translation id="4579056131138995126">Personal (Envelope)‎</translation>
 <translation id="4582204425268416675">הסרת הכרטיס</translation>
@@ -1534,6 +1537,7 @@
 <translation id="6337534724793800597">סינון מדיניות לפי שם</translation>
 <translation id="6349101878882523185">התקנת <ph name="APP_NAME" /></translation>
 <translation id="6353505687280762741">{COUNT,plural, =0{אין}=1{סיסמה אחת (עבור <ph name="DOMAIN_LIST" />, מסונכרנת)}=2{שתי סיסמאות (עבור <ph name="DOMAIN_LIST" />, מסונכרנות)}many{# סיסמאות (עבור <ph name="DOMAIN_LIST" />, מסונכרנות)}other{# סיסמאות (עבור <ph name="DOMAIN_LIST" />, מסונכרנות)}}</translation>
+<translation id="6355392890578844978">‏הדפדפן הזה לא מנוהל על ידי חברה או ארגון אחר. ייתכן שהפעילות במכשיר הזה מנוהלת מחוץ ל-Chromium. <ph name="BEGIN_LINK" />למידע נוסף<ph name="END_LINK" /></translation>
 <translation id="6358450015545214790">מה זה אומר?</translation>
 <translation id="6361757823711327522">B7</translation>
 <translation id="6364095313648930329">‏<ph name="BEGIN_LINK" />לבדוק את שרת ה-Proxy, תצורת ה-DNS המאובטח וחומת האש.<ph name="END_LINK" /></translation>
@@ -1985,6 +1989,7 @@
 <translation id="7961015016161918242">אף פעם</translation>
 <translation id="7966803981046576691">סוג חשבון של העבודה</translation>
 <translation id="79682505114836835">הערך "<ph name="VALUE" />" הוא צבע הקסדצימלי לא חוקי.</translation>
+<translation id="7970392640816874403">מה אומרים מקורות אחרים?</translation>
 <translation id="7976214039405368314">יותר מדי בקשות</translation>
 <translation id="7977538094055660992">מכשיר פלט</translation>
 <translation id="7977894662897852582">Edp</translation>
diff --git a/components/strings/components_strings_si.xtb b/components/strings/components_strings_si.xtb
index 9cf731467d..4df1967 100644
--- a/components/strings/components_strings_si.xtb
+++ b/components/strings/components_strings_si.xtb
@@ -272,6 +272,7 @@
 <translation id="1838374766361614909">සෙවීම හිස් කරන්න</translation>
 <translation id="1839551713262164453">ප්‍රතිපත්ති අගයන්ගේ වලංගු කිරීම දෝෂ සමග අසමත් වී ඇත</translation>
 <translation id="1842969606798536927">ගෙවන්න</translation>
+<translation id="1856713167556118146">අප්‍රසිද්ධ ප්‍රකාරය සිදු නොකරන දේ</translation>
 <translation id="1871208020102129563">.pac ස්ක්‍රිප්ට URL එතත් නොව, ස්ථාවර ප්‍රොක්සි සේවාදයක භාවිතා කිරීමට ප්‍රොක්සි සකසා ඇත,</translation>
 <translation id="1871284979644508959">අවශ්‍ය ක්ෂේත්‍රය</translation>
 <translation id="1875512691959384712">Google පෝරම</translation>
@@ -1016,6 +1017,7 @@
 <translation id="4465818729556336129">මෙම ලේඛනය රහසිගත වන අතර මුද්‍රණය කිරීමට ඔබගේ පරිපාලක විසින් උපදෙස් දෙනු නොලැබේ.</translation>
 <translation id="4476953670630786061">මෙම පෝරමය ආරක්ෂිත නොවේ. ස්වයං පිරවුම ක්‍රියාවිරහිත කර ඇත.</translation>
 <translation id="4477350412780666475">ඊළඟ ඛණ්ඩය</translation>
+<translation id="4481251927743463293">අප්‍රසිද්ධ ප්‍රකාරය සිදු කරන දේ</translation>
 <translation id="4481394504112738036">රහස්‍ය ගොනුව</translation>
 <translation id="4482953324121162758">මෙම වෙබ් අඩවිය පරිවර්තන නොකෙරේ.</translation>
 <translation id="4490717597759821841">A7</translation>
@@ -1116,10 +1118,17 @@
 <translation id="4819347708020428563">පෙරනිමි දසුන තුළ අනුසටහන් සංස්කරණය කරන්නද?</translation>
 <translation id="4825496307559726072"><ph name="CREATE_GOOGLE_SHEET_FOCUSED_FRIENDLY_MATCH_TEXT" />, ඉක්මනින් නව Google Sheet එකක් තැනීමට Tab ඔබා අනතුරුව Enter ඔබන්න</translation>
 <translation id="4825507807291741242">ශක්තිසම්පන්න</translation>
+<translation id="4827402517081186284">අප්‍රසිද්ධ ප්‍රකාරය ඔබව සබැඳිව අදෘශ්‍යමාන බවට පත් නොකරයි:
+        <ph name="BEGIN_LIST" />
+          <ph name="LIST_ITEM" />අඩවි ඔබ ඒවාට පිවිසෙන විට දනියි<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />සේවායෝජකයන්ට හෝ පාසල්වලට බ්‍රවුස් කිරීමේ ක්‍රියාකාරකම් හඹා යාමට හැකිය<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />අන්තර්ජාල සේවා සපයන්නන් වෙබ් තදබදය නිරීක්ෂණය කළ හැකිය<ph name="END_LIST_ITEM" />
+        <ph name="END_LIST" /></translation>
 <translation id="4838327282952368871">සිහිනමය</translation>
 <translation id="484462545196658690">ස්වයං</translation>
 <translation id="4850886885716139402">දසුන</translation>
 <translation id="485316830061041779">ජර්මානු</translation>
+<translation id="4853901935952445031">මෙම අඩවියට 2022 පෙබරවාරිවලින් පසු U2F API භාවිත කළ නොහැකි වනු ඇත. ඔබට මෙම අඩවිය හිමි නම්, Web Authentication API භාවිත කිරීම සඳහා ඔබ එය වෙනස් කළ යුතුය.</translation>
 <translation id="4854362297993841467">මෙම බෙදා හැරීමේ ක්‍රමය ලබා ගත නොහැකිය. වෙනත් ක්‍රමයක් උත්සාහ කරන්න.</translation>
 <translation id="4854853140771946034">Google Keep හි නව සටහනක් ඉක්මනින් තනන්න</translation>
 <translation id="4876188919622883022">සරල දසුන</translation>
@@ -1642,6 +1651,7 @@
 <translation id="6757797048963528358">ඔබගේ උපාංගය නින්දට ගියේය.</translation>
 <translation id="6767985426384634228">ලිපිනය යාවත්කාලීන කරන්නද?</translation>
 <translation id="6768213884286397650">Hagaki (තැපැල් පත)</translation>
+<translation id="6774185088257932239">අප්‍රසිද්ධ ගැන <ph name="BEGIN_LINK" />තව දැන ගන්න<ph name="END_LINK" /></translation>
 <translation id="6775759552199460396">JIS B2</translation>
 <translation id="67862343314499040">ජම්බූල</translation>
 <translation id="6786747875388722282">දිගු</translation>
@@ -1689,6 +1699,7 @@
 <translation id="6965382102122355670">හරි</translation>
 <translation id="6965978654500191972">උපාංගය</translation>
 <translation id="696703987787944103">සංජානක</translation>
+<translation id="6968269510885595029">ඔබගේ ආරක්ෂිත යතුර භාවිත කරන්න</translation>
 <translation id="6970216967273061347">දිස්ත්‍රික්කය</translation>
 <translation id="6971439137020188025">ඉක්මනින් Slides තුළ නව Google ඉදිරිපත් කිරීමක් තනන්න</translation>
 <translation id="6972629891077993081">HID උපාංග</translation>
@@ -1755,6 +1766,7 @@
 <translation id="7210863904660874423"><ph name="HOST_NAME" /> ආරක්ෂක සම්මත අනුගමනය නොකරයි.</translation>
 <translation id="7210993021468939304">බඳුන තුළ ලිනක්ස් ක්‍රියාව, සහ බඳුන තුළ ලිනක්ස් යෙදුම් ස්ථාපන කර ධාවන කළ හැක</translation>
 <translation id="721197778055552897">මෙම ගැටළුව පිළිබඳ <ph name="BEGIN_LINK" />තවත් දැනගන්න<ph name="END_LINK" />.</translation>
+<translation id="7215025035562547931">නිරවද්‍යතාව සලකා බැලීමට මොහොතක් ගන්න</translation>
 <translation id="7217745192097460130">ඔබගේ මිලදී ගැනීම තහවුරු කිරීමට සහ සම්පූර්ණ කිරීමට ස්පර්ශ ID භාවිත කරන්නද?</translation>
 <translation id="7219179957768738017">සම්බන්ධතාවය විසින් <ph name="SSL_VERSION" /> භාවිතා කරයි.</translation>
 <translation id="7220786058474068424">සකසමින්</translation>
@@ -2091,6 +2103,12 @@
 <translation id="8307888238279532626">ස්ථාපනය කළ යෙදුම් සහ ඒවා කොතරම් නිතර භාවිත කරන්නේද යන්න</translation>
 <translation id="831207732689920588">මෙම පිටුව සැක සහිතයි (Chrome ලකුණු කර ඇත).</translation>
 <translation id="831997045666694187">සවස</translation>
+<translation id="8328484624016508118">සියලු අප්‍රසිද්ධ ටැබ වැසීමෙන් පසු, Chrome පහත ඒවා හිස් කරයි:
+        <ph name="BEGIN_LIST" />
+          <ph name="LIST_ITEM" />මෙම උපාංගයෙන් ඔබගේ බ්‍රවුස් කිරීමේ ක්‍රියාකාරකම<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />මෙම උපාංගයෙන් ඔබගේ සෙවීම් ඉතිහාසය<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />පෝරම තුළ ඇතුළත් කළ තොරතුරු<ph name="END_LIST_ITEM" />
+        <ph name="END_LIST" /></translation>
 <translation id="8332188693563227489"><ph name="HOST_NAME" /> වෙත ප්‍රවේශය ප්‍රතික්ෂේප කරන ලදී</translation>
 <translation id="833262891116910667">උද්දීපන කරන්න</translation>
 <translation id="8339163506404995330"><ph name="LANGUAGE" /> හි පිටු පරිවර්තනය නොවනු ඇත</translation>
diff --git a/components/strings/components_strings_te.xtb b/components/strings/components_strings_te.xtb
index 4d9b8a1..7d98d97 100644
--- a/components/strings/components_strings_te.xtb
+++ b/components/strings/components_strings_te.xtb
@@ -75,17 +75,17 @@
 <translation id="124116460088058876">మరిన్ని భాషలు</translation>
 <translation id="1243027604378859286">రచయిత:</translation>
 <translation id="1246424317317450637">బోల్డ్</translation>
-<translation id="1250759482327835220">తర్వాతిసారి మరింత వేగంగా చెల్లించడానికి, మీ కార్డ్, పేరు మరియు బిల్లింగ్ చిరునామాను మీ Google ఖాతాకు సేవ్ చేయండి.</translation>
+<translation id="1250759482327835220">తర్వాతిసారి మరింత వేగంగా చెల్లించడానికి, మీ కార్డ్, పేరు మరియు బిల్లింగ్ అడ్రస్‌ను మీ Google ఖాతాకు సేవ్ చేయండి.</translation>
 <translation id="1252799212227771492">'షీట్‌ను క్రియేట్ చేయండి' బటన్, కొత్త Google షీట్‌ను త్వరగా క్రియేట్ చేయడానికి Enterను నొక్కండి</translation>
 <translation id="1253921432148366685"><ph name="TYPE_1" />, <ph name="TYPE_2" /> (సమకాలీకరించబడ్డాయి)</translation>
 <translation id="1256368399071562588">&lt;p&gt;మీరు ఏదైనా వెబ్‌సైట్‌ను తెరవడానికి ప్రయత్నించినప్పుడు, అది తెరవబడకుంటే, ముందుగా ఈ సమస్య నివారణ ప్రక్రియ దశలను ఉపయోగించి ఎర్రర్‌ను పరిష్కరించడానికి ప్రయత్నించండి:&lt;/p&gt;
     &lt;ol&gt;
-    &lt;li&gt;వెబ్ చిరునామాలో అక్షరక్రమ దోషాలు ఉన్నాయేమో తనిఖీ చేయండి.&lt;/li&gt;
+    &lt;li&gt;వెబ్ అడ్రస్‌లో అక్షరక్రమ దోషాలు ఉన్నాయేమో తనిఖీ చేయండి.&lt;/li&gt;
     &lt;li&gt;మీ ఇంటర్నెట్ కనెక్షన్ సరిగ్గానే పని చేస్తున్నట్లు నిర్ధారించుకోండి.&lt;/li&gt;
     &lt;li&gt;వెబ్‌సైట్ యజమానిని సంప్రదించండి.&lt;/li&gt;
     &lt;/ol&gt;</translation>
 <translation id="1257286744552378071">మీ సంస్థ నిర్వహించని ఒక సైట్‌లో మీరు మీ పాస్‌వర్డ్‌ను నమోదు చేశారు. మీ ఖాతాను రక్షించడం కోసం, ఇతర యాప్‌లు మరియు సైట్‌లలో మీ పాస్‌వర్డ్‌ను తిరిగి ఉపయోగించవద్దు.</translation>
-<translation id="1263231323834454256">పఠన జాబితా</translation>
+<translation id="1263231323834454256">పఠన లిస్ట్‌</translation>
 <translation id="1269516672602708785">Google Sitesలో కొత్త సైట్‌ను త్వరగా క్రియేట్ చేయండి</translation>
 <translation id="1270502636509132238">పికప్ పద్ధతి</translation>
 <translation id="1281476433249504884">స్టాకర్ 1</translation>
@@ -102,7 +102,7 @@
 <translation id="1320233736580025032">Prc1 (ఎన్వలప్)</translation>
 <translation id="132301787627749051">క్లిప్‌బోర్డ్ చిత్రం కోసం వెతకండి</translation>
 <translation id="1323433172918577554">మరింత చూపు</translation>
-<translation id="132390688737681464">చిరునామాలను సేవ్ చేసి, పూరించండి</translation>
+<translation id="132390688737681464">అడ్రస్‌లను సేవ్ చేసి, పూరించండి</translation>
 <translation id="1330449323196174374">ఎడమవైపు గేట్‌ ఫోల్డ్</translation>
 <translation id="1333989956347591814">మీ కార్యాచరణ వీరికి <ph name="BEGIN_EMPHASIS" />ఇప్పటికీ కనిపించవచ్చు<ph name="END_EMPHASIS" />:
         <ph name="BEGIN_LIST" />
@@ -113,7 +113,7 @@
           <ph name="LIST_ITEM" />మీ ఇంటర్నెట్ సేవా ప్రదాత
         <ph name="END_LIST" /></translation>
 <translation id="1339601241726513588">నమోదిత డొమైన్:</translation>
-<translation id="1340482604681802745">పికప్ చిరునామా</translation>
+<translation id="1340482604681802745">పికప్ అడ్రస్‌</translation>
 <translation id="1346748346194534595">కుడి</translation>
 <translation id="1348198688976932919">రాబోయే సైట్‌లో హానికరమైన యాప్‌లు ఉన్నాయి</translation>
 <translation id="1348779747280417563">పేరును నిర్ధారించండి</translation>
@@ -158,13 +158,13 @@
 <translation id="1473183651233018052">JIS B10</translation>
 <translation id="147358896496811705">2A0</translation>
 <translation id="1476595624592550506">మీ పాస్‌వర్డ్‌ను మార్చండి</translation>
-<translation id="1484290072879560759">షిప్పింగ్ చిరునామాను ఎంచుకోండి</translation>
+<translation id="1484290072879560759">షిప్పింగ్ అడ్రస్‌ను ఎంచుకోండి</translation>
 <translation id="1492194039220927094">విధానాలను పుష్ చేయి:</translation>
 <translation id="1495677929897281669">తిరిగి ట్యాబ్‌కు వెళ్లు</translation>
 <translation id="1501859676467574491">మీ Google ఖాతా నుండి కార్డ్‌లను చూపండి</translation>
 <translation id="1507202001669085618">&lt;p&gt;ఆన్‌లైన్‌కు వెళ్లడం కంటే ముందు సైన్ ఇన్ చేయాల్సిన అవసరం ఉన్న Wi-Fi పోర్టల్‌ను మీరు ఉపయోగిస్తున్నట్లయితే మీకు ఈ ఎర్రర్ కనిపిస్తుంది.&lt;/p&gt;
     &lt;p&gt;ఎర్రర్‌ను పరిష్కరించడానికి, మీరు తెరవాలనుకుంటున్న పేజీలో &lt;strong&gt;కనెక్ట్ చేయి&lt;/strong&gt;ని నొక్కండి.&lt;/p&gt;</translation>
-<translation id="1513706915089223971">చరిత్ర నమోదుల జాబితా</translation>
+<translation id="1513706915089223971">చరిత్ర నమోదుల లిస్ట్‌</translation>
 <translation id="1517433312004943670">ఫోన్ నంబర్ అవసరం</translation>
 <translation id="1519264250979466059">బిల్డ్ తేదీ</translation>
 <translation id="1521655867290435174">Google Sheets</translation>
@@ -177,7 +177,7 @@
 <translation id="153384715582417236">ఇప్పటికి ఇంతే</translation>
 <translation id="1536390784834419204">పేజీని అనువాదం చేయి</translation>
 <translation id="1539840569003678498">రిపోర్ట్ పంపబడింది:</translation>
-<translation id="154408704832528245">బట్వాడా చిరునామాను ఎంచుకోండి</translation>
+<translation id="154408704832528245">బట్వాడా అడ్రస్‌ను ఎంచుకోండి</translation>
 <translation id="1549470594296187301">ఈ ఫీచర్‌ను ఉపయోగించడానికి జావాస్క్రిప్ట్ తప్పనిసరిగా ప్రారంభించాలి.</translation>
 <translation id="155039086686388498">ఇంజనీరింగ్-D</translation>
 <translation id="1553358976309200471">Chromeని నవీకరించు</translation>
@@ -214,7 +214,7 @@
 <translation id="1656024727720460136">మరింత తేలికగా చదవడానికి వీలుగా Chrome ఈ పేజీని సులభతరం చేసింది. సురక్షిత కనెక్షన్ ద్వారా Chrome అసలు పేజీని తిరిగి పొందింది.</translation>
 <translation id="1656489000284462475">పికప్</translation>
 <translation id="1662550410081243962">పేమెంట్ ఆప్షన్‌లను సేవ్ చేసి, ఆటోమేటిక్‌గా ఫిల్ చేయండి</translation>
-<translation id="1663943134801823270">కార్డ్‌లు మరియు చిరునామాలు Chrome నుండి పొందినవి. మీరు <ph name="BEGIN_LINK" />సెట్టింగ్‌లు<ph name="END_LINK" />లో వాటిని నిర్వహించవచ్చు.</translation>
+<translation id="1663943134801823270">కార్డ్‌లు మరియు అడ్రస్‌లు Chrome నుండి పొందినవి. మీరు <ph name="BEGIN_LINK" />సెట్టింగ్‌లు<ph name="END_LINK" />లో వాటిని నిర్వహించవచ్చు.</translation>
 <translation id="1671391448414634642">ఇప్పటి నుండి <ph name="SOURCE_LANGUAGE" /> భాషలో ఉన్న పేజీలు <ph name="TARGET_LANGUAGE" /> భాషలోకి అనువదించబడతాయి.</translation>
 <translation id="1677733453456569361"><ph name="PLAY_CHROME_DINO_GAME_FOCUSED_FRIENDLY_MATCH_TEXT" />, Chrome Dino గేమ్‌ను ఆడటం కోసం Tabను నొక్కి, ఆపై Enterను నొక్కండి</translation>
 <translation id="1682696192498422849">పేజీని అడ్డంగా తిప్పి ప్రింట్ చేయి</translation>
@@ -266,7 +266,7 @@
 <translation id="1807246157184219062">లేత</translation>
 <translation id="1807528111851433570">మొదటి షీట్</translation>
 <translation id="1812527064848182527">ల్యాండ్‌స్కేప్‌లో ఉంది</translation>
-<translation id="1821930232296380041">చెల్లని అభ్యర్థన లేదా అభ్యర్థన పారామీట‌ర్‌లు</translation>
+<translation id="1821930232296380041">చెల్లని రిక్వెస్ట్‌ లేదా రిక్వెస్ట్‌ పారామీట‌ర్‌లు</translation>
 <translation id="1822540298136254167">మీరు సందర్శించిన వెబ్‌సైట్‌లు, వాటిపై వెచ్చించిన సమయం</translation>
 <translation id="1826516787628120939">తనిఖీ చేస్తోంది</translation>
 <translation id="1834321415901700177">ఈ సైట్‌లో హానికరమైన ప్రోగ్రామ్‌లు ఉన్నాయి</translation>
@@ -277,7 +277,7 @@
 <translation id="1871284979644508959">అవసరమైన ఫీల్డ్</translation>
 <translation id="1875512691959384712">Google Forms</translation>
 <translation id="187918866476621466">ప్రారంభ పేజీలను తెరువు</translation>
-<translation id="1883255238294161206">జాబితాను కుదించు</translation>
+<translation id="1883255238294161206">లిస్ట్‌ను కుదించు</translation>
 <translation id="1890171020361705182">డైనో గేమ్. పిక్సెలేటెడ్ డైనోసార్ ఒక నిర్జనమైన ల్యాండ్‌స్కేప్‌లో కాక్టస్, టెరోడాక్టిల్స్‌ను తప్పించుకుంటూ పరుగెత్తుతున్నట్టు ఉంటుంది. మీరు ఆడియో క్యూను విన్నప్పుడు, అడ్డంకులపై నుండి దూకడానికి ట్యాప్ చేయండి.</translation>
 <translation id="1898423065542865115">ఫిల్టరింగ్</translation>
 <translation id="1901443836186977402">{1,plural, =1{ఇది <ph name="DOMAIN" /> అని సర్వర్ నిరూపించలేకపోయింది; నిన్న దీని భద్రతా సర్టిఫికెట్ గడువు ముగిసిపోయింది. తప్పుగా కాన్ఫిగర్ చేసినందున లేదా దాడి చేసేవారు మీ కనెక్షన్‌కు అంతరాయం కలిగించినందున ఇలా జరిగి ఉండవచ్చు. మీ కంప్యూటర్ గడియారం ప్రస్తుతం <ph name="CURRENT_DATE" />కు సెట్ చేయబడింది. అది సరిగానే ఉందా? సరిగ్గా లేకుంటే, మీరు సిస్టమ్ గడియారాన్ని సరిచేసి, ఆపై ఈ పేజీని రిఫ్రెష్ చేయండి.}other{ఈ సర్వర్ <ph name="DOMAIN" /> అని నిరూపించలేకపోయింది; దీని భద్రతా సర్టిఫికెట్ గడువు # రోజుల క్రితం ముగిసింది. ఇది తప్పుగా కాన్ఫిగర్ చేయడం వలన లేదా దాడి చేసేవారు మీ కనెక్షన్‌కు అంతరాయం కలిగించడం వలన జరిగి ఉండవచ్చు. మీ కంప్యూటర్ గడియారం ప్రస్తుతం <ph name="CURRENT_DATE" />కు సెట్ చేయబడింది. ఇది సరిగానే ఉందా? లేకపోతే, మీరు మీ సిస్టమ్ గడియారాన్ని సరి చేసి, ఆపై ఈ పేజీని రిఫ్రెష్ చేయాలి.}}</translation>
@@ -360,7 +360,7 @@
 <translation id="2169984857010174799">Kaku2 (ఎన్వలప్)</translation>
 <translation id="2181821976797666341">విధానాలు</translation>
 <translation id="2183608646556468874">ఫోన్ నంబర్</translation>
-<translation id="2184405333245229118">{COUNT,plural, =1{1 చిరునామా}other{# చిరునామాలు}}</translation>
+<translation id="2184405333245229118">{COUNT,plural, =1{1 అడ్రస్‌}other{# అడ్రస్‌లు}}</translation>
 <translation id="2187317261103489799">గుర్తించు (డిఫాల్ట్)</translation>
 <translation id="2188375229972301266">దిగువ భాగంలో అనేక రంధ్రాలు</translation>
 <translation id="2202020181578195191">చెల్లుబాటు అయ్యే గడువు ముగింపు సంవత్సరాన్ని నమోదు చేయండి</translation>
@@ -384,9 +384,9 @@
 <translation id="2276057643614339130">ప్రింట్ బేస్</translation>
 <translation id="2277103315734023688">ముందుకు జరుపు</translation>
 <translation id="2277753418458118549">కనెక్షన్ వివరాలను చూపించండి</translation>
-<translation id="2283340219607151381">చిరునామాలను సేవ్ చేసి, పూరించండి</translation>
+<translation id="2283340219607151381">అడ్రస్‌లను సేవ్ చేసి, పూరించండి</translation>
 <translation id="2283447177162560884">'<ph name="PAGE_TITLE" />' తొలగించబడింది</translation>
-<translation id="2288422996159078444">మీరు ఏదైనా టైప్ చేసినా, ఏవైనా పేజీలు వీక్షించినా లేదా వెబ్‌లో ఇతర కార్యకలాపం ఏదైనా చూసినా. సైట్‌లలోని కంటెంట్ మీకు తెలియకుండానే మారిపోవచ్చు.</translation>
+<translation id="2288422996159078444">మీరు ఏదైనా టైప్ చేసినా, ఏవైనా పేజీలు వీక్షించినా లేదా వెబ్‌లో ఇతర యాక్టివిటీ ఏదైనా చూసినా. సైట్‌లలోని కంటెంట్ మీకు తెలియకుండానే మారిపోవచ్చు.</translation>
 <translation id="2289385804009217824">కత్తిరించండి</translation>
 <translation id="2292556288342944218">మీ ఇంటర్నెట్ యాక్సెస్ బ్లాక్ చేయబడింది</translation>
 <translation id="2293443924986248631">ఆన్‌లో ఉన్నప్పుడు, వెబ్ అంతటా మిమ్మల్ని ట్రాక్ చేయడానికి ఉపయోగించే కుక్కీలను సైట్‌లు ఉపయోగించడం సాధ్యం కాదు. కొన్ని సైట్‌లలోని ఫీచర్‌లు సరిగ్గా పని చేయకపోవచ్చు.</translation>
@@ -457,7 +457,7 @@
 <translation id="2524461107774643265">మరింత సమాచారాన్ని జోడించండి</translation>
 <translation id="2529899080962247600">ఈ ఫీల్డ్‌లో <ph name="MAX_ITEMS_LIMIT" /> కంటే ఎక్కువ ఎంట్రీలు ఉండకూడదు. అన్ని తదుపరి ఎంట్రీలు విస్మరించబడతాయి.</translation>
 <translation id="2535659140340599600">{COUNT,plural, =1{మరియు మరో 1}other{మరియు మరో #}}</translation>
-<translation id="2536110899380797252">చిరునామాను జోడించు</translation>
+<translation id="2536110899380797252">అడ్రస్‌ను జోడించు</translation>
 <translation id="2539524384386349900">గుర్తించు</translation>
 <translation id="2540701853218677861">టైమ్ స్టాంప్‌‌లు, విఫలమైన ప్రయత్నాలతో సహా పరికర లాగిన్/లాగవుట్ హిస్టరీ</translation>
 <translation id="2541219929084442027">మీ అజ్ఞాత ట్యాబ్‌లు అన్నింటినీ మూసివేసిన తర్వాత మీ బ్రౌజర్ హిస్టరీ, కుక్కీ స్టోర్ లేదా సెర్చ్ హిస్టరీలో మీరు అజ్ఞాత ట్యాబ్‌లలో వీక్షించిన పేజీలు ఉంచబడవు. అయితే, మీరు డౌన్‌లోడ్ చేసే ఏవైనా ఫైళ్లు లేదా మీరు క్రియేట్ చేసే ఏవైనా బుక్‌మార్క్‌లు అలాగే ఉంచబడతాయి.</translation>
@@ -481,7 +481,7 @@
 <translation id="2625385379895617796">మీ గడియారం సమయం భవిష్యత్తులో ఉంది</translation>
 <translation id="262745152991669301">USB పరికరాలకు కనెక్ట్ చేయడానికి సైట్ అనుమతి అడగవచ్చు</translation>
 <translation id="2629325967560697240">Chrome అత్యధిక స్థాయి రక్షణను పొందడానికి, <ph name="BEGIN_ENHANCED_PROTECTION_LINK" />మెరుగుపరిచిన ఫీచర్‌లను ఆన్ చేయండి<ph name="END_ENHANCED_PROTECTION_LINK" /></translation>
-<translation id="2634124572758952069"><ph name="HOST_NAME" /> యొక్క సర్వర్ IP చిరునామా కనుగొనబడలేదు.</translation>
+<translation id="2634124572758952069"><ph name="HOST_NAME" /> యొక్క సర్వర్ IP అడ్రస్‌ కనుగొనబడలేదు.</translation>
 <translation id="2639739919103226564">స్థితి: </translation>
 <translation id="264810637653812429">అనుకూల పరికరాలు ఏవీ కనుగొనబడలేదు.</translation>
 <translation id="2649204054376361687"><ph name="CITY" />, <ph name="COUNTRY" /></translation>
@@ -504,18 +504,18 @@
 <translation id="2691924980723297736">భద్రతా హెచ్చరిక</translation>
 <translation id="2699302886720511147">ఆమోదించే కార్డ్‌లు</translation>
 <translation id="2701514975700770343">ఫేస్ డౌన్</translation>
-<translation id="2702801445560668637">పఠనా జాబితా</translation>
+<translation id="2702801445560668637">పఠనా లిస్ట్‌</translation>
 <translation id="2704283930420550640">విలువ ఆకృతికి సరిపోలలేదు.</translation>
 <translation id="2704606927547763573">కాపీ చేయబడింది</translation>
 <translation id="2705137772291741111">ఈ సైట్ యొక్క సేవ్ చేయబడిన (కాష్ చేసిన) కాపీ చదవదగినట్లుగా లేదు.</translation>
 <translation id="2709516037105925701">ఆటో-ఫిల్</translation>
 <translation id="2713444072780614174">తెలుపు</translation>
 <translation id="2715612312510870559"><ph name="UPDATE_CREDIT_CARD_FOCUSED_FRIENDLY_MATCH_TEXT" />, Chrome సెట్టింగ్‌లలో మీ పేమెంట్‌లు, క్రెడిట్ కార్డ్ సమాచారం మేనేజ్ చేయడానికి 'Tab'ను నొక్కి, ఆపై 'Enter'ను నొక్కండి</translation>
-<translation id="2721148159707890343">అభ్యర్థన విజయవంతం అయింది</translation>
+<translation id="2721148159707890343">రిక్వెస్ట్‌ విజయవంతం అయింది</translation>
 <translation id="272451190272506600">చెల్లించడానికి సెన్సార్‌ను తాకండి</translation>
 <translation id="2728127805433021124">సర్వర్ ప్రమాణపత్రం బలహీన సంతకం అల్గారిథమ్‌ను ఉపయోగించి సంతకం చేయబడింది.</translation>
 <translation id="2730326759066348565"><ph name="BEGIN_LINK" />కనెక్టివిటీ సమస్య విశ్లేషణలను అమలు చేయడం<ph name="END_LINK" /></translation>
-<translation id="2738330467931008676">పికప్ చిరునామాను ఎంచుకోండి</translation>
+<translation id="2738330467931008676">పికప్ అడ్రస్‌ను ఎంచుకోండి</translation>
 <translation id="2740531572673183784">సరే</translation>
 <translation id="2742870351467570537">ఎంచుకున్న అంశాలను తీసివేయండి</translation>
 <translation id="2765217105034171413">చిన్నది</translation>
@@ -531,7 +531,7 @@
 <translation id="2803306138276472711">Google సురక్షిత బ్రౌజింగ్ ఇటీవల <ph name="SITE" />లో <ph name="BEGIN_LINK" />మాల్వేర్‌ను గుర్తించింది<ph name="END_LINK" />. సాధారణంగా సురక్షితమైన వెబ్‌సైట్‌‌లకు కూడా కొన్నిసార్లు మాల్వేర్ సోకుతుంది.</translation>
 <translation id="2807052079800581569">చిత్రం యొక్క Y కోఆర్డినేట్</translation>
 <translation id="2820957248982571256">స్కాన్ చేస్తోంది...</translation>
-<translation id="2824775600643448204">చిరునామా మరియు శోధన బార్</translation>
+<translation id="2824775600643448204">అడ్రస్‌ మరియు శోధన బార్</translation>
 <translation id="2826760142808435982"><ph name="CIPHER" />ను ఉపయోగించి కనెక్షన్ ఎన్‌క్రిప్ట్ చేయ‌బ‌డింది, ప్రామాణీకరించబడింది మరియు <ph name="KX" />ను కీలకమైన పరివర్తన విధానంగా ఉపయోగిస్తుంది.</translation>
 <translation id="2835170189407361413">ఫారమ్‌ను క్లియర్ చేయి</translation>
 <translation id="2839501879576190149">ముందున్న సైట్ నకిలీది</translation>
@@ -555,7 +555,7 @@
 <translation id="2916038427272391327">ఇతర ప్రోగ్రామ్‌లను మూసివేయండి</translation>
 <translation id="2922350208395188000">సర్వర్ యొక్క ప్రమాణపత్రం తనిఖీ చెయ్యబడదు.</translation>
 <translation id="2925673989565098301">బట్వాడా పద్ధతి</translation>
-<translation id="2928905813689894207">బిల్లింగ్ చిరునామా</translation>
+<translation id="2928905813689894207">బిల్లింగ్ అడ్రస్‌</translation>
 <translation id="2929525460561903222">{SHIPPING_ADDRESS,plural, =0{<ph name="SHIPPING_ADDRESS_PREVIEW" />}=1{<ph name="SHIPPING_ADDRESS_PREVIEW" /> మరియు మరో <ph name="NUMBER_OF_ADDITIONAL_ADDRESSES" />}other{<ph name="SHIPPING_ADDRESS_PREVIEW" /> మరియు మరో <ph name="NUMBER_OF_ADDITIONAL_ADDRESSES" />}}</translation>
 <translation id="2930577230479659665">ప్రతి కాపీ తర్వాత కత్తిరించండి</translation>
 <translation id="2932085390869194046">పాస్‌వర్డ్‌‌ను సూచించు...</translation>
@@ -570,7 +570,7 @@
 <translation id="2972581237482394796">&amp;పునరావృతం</translation>
 <translation id="2977665033722899841"><ph name="ROW_NAME" />, ప్రస్తుతం ఎంచుకోబడింది. <ph name="ROW_CONTENT" /></translation>
 <translation id="2985306909656435243">ప్రారంభిస్తే, Chromium వేగవంతమైన ఫారమ్ పూరింపు కోసం ఈ పరికరంలో మీ కార్డ్ కాపీని నిల్వ చేస్తుంది.</translation>
-<translation id="2985398929374701810">చెల్లుబాటు అయ్యే చిరునామాని నమోదు చేయండి</translation>
+<translation id="2985398929374701810">చెల్లుబాటు అయ్యే అడ్రస్‌ను నమోదు చేయండి</translation>
 <translation id="2986368408720340940">ఈ పికప్ పద్ధతి అందుబాటులో లేదు. వేరే పద్ధతిని ప్రయత్నించండి.</translation>
 <translation id="2987034854559945715">సరిపోలే ఫీచర్‌లు లేవు</translation>
 <translation id="2989742184762224133">ఎగువ భాగంలో డ్యుయల్ స్టేపుల్</translation>
@@ -581,7 +581,7 @@
 <translation id="3002501248619246229">ఇన్‌పుట్ ట్రే మీడియాను తనిఖీ చేయి</translation>
 <translation id="3005723025932146533">సేవ్ చేయబడిన కాపీని చూపు</translation>
 <translation id="3008447029300691911"><ph name="CREDIT_CARD" /> కార్డ్ CVCని నమోదు చేయండి. మీరు నిర్ధారించిన తర్వాత, మీ కార్డ్ వివరాలు ఈ సైట్‌తో షేర్ చేయబడతాయి.</translation>
-<translation id="3010559122411665027">జాబితా నమోదు "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
+<translation id="3010559122411665027">లిస్ట్‌ నమోదు "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
 <translation id="301521992641321250">ఆటోమేటిక్‌గా బ్లాక్ చేయబడింది</translation>
 <translation id="3016780570757425217">మీ స్థానాన్ని తెలుసుకోవాలనుకుంటోంది</translation>
 <translation id="3017086357773116182"><ph name="REMOVE_SUGGESTION_SUFFIX" />, సూచనను తీసివేయడానికి Tabను నొక్కి, ఆపై ఎంటర్‌ను నొక్కండి.</translation>
@@ -594,10 +594,10 @@
 <translation id="3061707000357573562">ప్యాచ్ సేవ</translation>
 <translation id="306573536155379004">గేమ్ ప్రారంభమైంది.</translation>
 <translation id="3080254622891793721">గ్రాఫిక్</translation>
-<translation id="3086579638707268289">వెబ్‌లో మీ కార్యకలాపం పర్యవేక్షించబడుతోంది</translation>
+<translation id="3086579638707268289">వెబ్‌లో మీ యాక్టివిటీ పర్యవేక్షించబడుతోంది</translation>
 <translation id="3087734570205094154">దిగువ</translation>
 <translation id="3095940652251934233">స్టేట్‌మెంట్</translation>
-<translation id="3096100844101284527">పికప్ చిరునామాను జోడించండి</translation>
+<translation id="3096100844101284527">పికప్ అడ్రస్‌ను జోడించండి</translation>
 <translation id="3105172416063519923">అసెట్ ID:</translation>
 <translation id="3107591622054137333"><ph name="BEGIN_LINK" />సెక్యూర్ DNS కాన్ఫిగరేషన్‌ని తనిఖీ చేస్తోంది<ph name="END_LINK" /></translation>
 <translation id="3109728660330352905">మీకు ఈ పేజీని వీక్షించడానికి అధికారం లేదు.</translation>
@@ -629,7 +629,7 @@
 <translation id="320323717674993345">పేమెంట్‌ను రద్దు చేయండి</translation>
 <translation id="3207960819495026254">బుక్‌మార్క్ చేయబడింది</translation>
 <translation id="3209034400446768650">పేజీ, నగదును ఛార్జ్ చేయవచ్చు</translation>
-<translation id="3212581601480735796"><ph name="HOSTNAME" />లోని మీ కార్యకలాపం పర్యవేక్షించబడుతోంది</translation>
+<translation id="3212581601480735796"><ph name="HOSTNAME" />లోని మీ యాక్టివిటీ పర్యవేక్షించబడుతోంది</translation>
 <translation id="3215092763954878852">WebAuthn ఉపయోగించడం సాధ్యం కాలేదు</translation>
 <translation id="3218181027817787318">సంబంధిత</translation>
 <translation id="3223287115535306850">యాప్ ప్రారంభాన్ని సూచించే చిహ్నాన్ని లోడ్ చేస్తోంది</translation>
@@ -658,7 +658,7 @@
 <translation id="3295444047715739395">Chrome సెట్టింగ్‌లలో మీ పాస్‌వర్డ్‌లను చూడండి, మేనేజ్ చేయండి</translation>
 <translation id="3303855915957856445">ఆ సెర్చ్ కోసం ఫలితాలు ఏవీ దొరకలేదు</translation>
 <translation id="3308006649705061278">ఆర్గనైజేషనల్ యూనిట్ (OU)</translation>
-<translation id="3320021301628644560">బిల్లింగ్ చిరునామాను జోడించండి</translation>
+<translation id="3320021301628644560">బిల్లింగ్ అడ్రస్‌ను జోడించండి</translation>
 <translation id="3324983252691184275">ముదురు ఎరుపు రంగు</translation>
 <translation id="3329013043687509092">సంతృప్తత</translation>
 <translation id="3333762389743153920">వర్చువల్ కార్డ్ కోసం అర్హత లేదు</translation>
@@ -687,9 +687,9 @@
 <translation id="3380864720620200369">క్లయింట్ ID:</translation>
 <translation id="3381668585148405088">మీ కొనుగోలును వెరిఫై చేయండి</translation>
 <translation id="3387261909427947069">పేమెంట్ ఆప్షన్‌లు</translation>
-<translation id="3391030046425686457">బట్వాడా చిరునామా</translation>
+<translation id="3391030046425686457">బట్వాడా అడ్రస్‌</translation>
 <translation id="3395827396354264108">పికప్ పద్ధతి</translation>
-<translation id="3399952811970034796">బట్వాడా చిరునామా</translation>
+<translation id="3399952811970034796">బట్వాడా అడ్రస్‌</translation>
 <translation id="3402261774528610252">ఈ సైట్‌ను లోడ్ చేయడానికి ఉపయోగించిన కనెక్షన్ TLS 1.0 లేదా TLS 1.1ను ఉపయోగించింది, ఇవి విస్మరించబడ్డాయి, భవిష్యత్తులో నిలిపివేయబడతాయి. ఒక సారి నిలిపివేయబడితే, యూజర్‌లు ఈ సైట్‌ను లోడ్ చేయకుండా నివారించబడతారు. సర్వర్ TLS 1.2 లేదా ఆపై వెర్షన్‌లను ఎనేబుల్ చేయాలి.</translation>
 <translation id="3409896703495473338">భద్రతా సెట్టింగ్‌లను మేనేజ్ చేయండి</translation>
 <translation id="3414952576877147120">పరిమాణం:</translation>
@@ -753,12 +753,12 @@
 <translation id="3603507503523709">మీ నిర్వాహకుడు యాప్‌ను బ్లాక్ చేశారు</translation>
 <translation id="3608932978122581043">ఫీడ్ ఓరియంటేషన్</translation>
 <translation id="3614103345592970299">పరిమాణం 2</translation>
-<translation id="361438452008624280">జాబితా నమోదు "<ph name="LANGUAGE_ID" />": తెలియని లేదా మద్దతు లేని భాష.</translation>
+<translation id="361438452008624280">లిస్ట్‌ నమోదు "<ph name="LANGUAGE_ID" />": తెలియని లేదా మద్దతు లేని భాష.</translation>
 <translation id="3615877443314183785">చెల్లుబాటు అయ్యే గడువు ముగింపు తేదీని నమోదు చేయండి</translation>
 <translation id="36224234498066874">బ్రౌజింగ్ డేటాను క్లియర్ చేయి...</translation>
 <translation id="362276910939193118">పూర్తి చరిత్రను చూపించు</translation>
-<translation id="3630155396527302611">ఇప్పటికే ఇది నెట్‌వర్క్‌ను యాక్సెస్ చేయడానికి అనుమతించబడిన ప్రోగ్రామ్ లాగా జాబితా చేయబడి ఉంటే,
-      దీన్ని జాబితా నుండి తీసివేసి, ఆపై మళ్లీ జోడించి ప్రయత్నించండి.</translation>
+<translation id="3630155396527302611">ఇప్పటికే ఇది నెట్‌వర్క్‌ను యాక్సెస్ చేయడానికి అనుమతించబడిన ప్రోగ్రామ్ లాగా లిస్ట్‌ చేయబడి ఉంటే,
+      దీన్ని లిస్ట్‌ నుండి తీసివేసి, ఆపై మళ్లీ జోడించి ప్రయత్నించండి.</translation>
 <translation id="3630699740441428070">ఈ పరికరానికి సంబంధించిన అడ్మినిస్ట్రేట‌ర్‌లు మీ నెట్‌వర్క్ కనెక్షన్‌ను కాన్ఫిగర్ చేశారు, ఇది మీరు సందర్శించే వెబ్‌సైట్‌లతో సహా మీ నెట్‌వర్క్ ట్రాఫిక్‌ను చూడటానికి వారిని అనుమతించవచ్చు.</translation>
 <translation id="3631244953324577188">బయోమెట్రిక్స్</translation>
 <translation id="3633738897356909127">'Chromeను అప్‌డేట్ చేయి' బటన్, మీ Chrome సెట్టింగ్‌ల నుండి Chromeను అప్‌డేట్ చేయడానికి 'Enter'ను నొక్కండి</translation>
@@ -774,7 +774,7 @@
 <translation id="3671540257457995106">పరిమాణం మార్చడానికి అనుమతించాలా?</translation>
 <translation id="3676592649209844519">పరికర ID:</translation>
 <translation id="3677008721441257057">మీరు &lt;a href="#" id="dont-proceed-link"&gt;<ph name="DOMAIN" />&lt;/a&gt; గురించి అభ్యర్థిస్తున్నారా?</translation>
-<translation id="3678029195006412963">అభ్యర్థనకు సంతకం అందించడం సాధ్యపడలేదు</translation>
+<translation id="3678029195006412963">రిక్వెస్ట్‌కు సంతకం అందించడం సాధ్యపడలేదు</translation>
 <translation id="3678529606614285348">కొత్త అజ్ఞాత విండోలో పేజీని తెరవండి (Ctrl-Shift-N)</translation>
 <translation id="3681007416295224113">సర్టిఫికెట్ సమాచారం</translation>
 <translation id="3701427423622901115">రీసెట్ ఆమోదించబడింది.</translation>
@@ -874,7 +874,7 @@
 <translation id="4056223980640387499">సెపియా</translation>
 <translation id="4058922952496707368">కీ "<ph name="SUBKEY" />": <ph name="ERROR" /></translation>
 <translation id="4067263367174615723">C1 (ఎన్వలప్)</translation>
-<translation id="4067947977115446013">చెల్లుబాటు అయ్యే చిరునామాను జోడించండి</translation>
+<translation id="4067947977115446013">చెల్లుబాటు అయ్యే అడ్రస్‌ను జోడించండి</translation>
 <translation id="4072193657607981494">పాలసీలను లోడ్ చేస్తోంది</translation>
 <translation id="4072486802667267160">మీ ఆర్డర్‌ను ప్రాసెస్ చేస్తున్నప్పుడు ఎర్రర్ ఏర్పడింది. దయచేసి మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="4073797364926776829">కార్డ్‌ను చూడండి</translation>
@@ -975,7 +975,7 @@
 <translation id="4312866146174492540">బ్లాక్ చేయి (డిఫాల్ట్)</translation>
 <translation id="4314815835985389558">సింక్‌ను నిర్వహించండి</translation>
 <translation id="4318312030194671742">పెయింట్ ప్రివ్యూ కంపోజిటర్ సర్వీస్</translation>
-<translation id="4318566738941496689">మీ పరికరం పేరు, నెట్‌వర్క్ చిరునామా</translation>
+<translation id="4318566738941496689">మీ పరికరం పేరు, నెట్‌వర్క్ అడ్రస్‌</translation>
 <translation id="4325863107915753736">కథనాన్ని కనుగొనడం విఫలమైంది</translation>
 <translation id="4326324639298822553">మీ గడువు ముగింపు తేదీని తనిఖీ చేసి, మళ్లీ ప్రయత్నించండి</translation>
 <translation id="4329871760342656885">పాలసీని అన్వయించడంలో ఎర్రర్: <ph name="ERROR" /></translation>
@@ -1003,7 +1003,7 @@
 <translation id="4406896451731180161">శోధన ఫలితాలు</translation>
 <translation id="4408413947728134509">కుక్కీలు <ph name="NUM_COOKIES" /></translation>
 <translation id="4414290883293381923">మీరు మోసపూరితమైన సైట్‌లో మీ పాస్‌వర్డ్‌ను ఎంటర్ చేశారు. మీరు ఈ పాస్‌వర్డ్‌ను ఉపయోగించిన<ph name="WEBSITE_1" />, <ph name="WEBSITE_2" />, <ph name="WEBSITE_3" /> మరియు ఇతర సైట్‌లకు ఇప్పుడే వెళ్లి, మీ పాస్‌వర్డ్‌ను మార్చాల్సిందిగా Chrome సిఫార్సు చేస్తోంది.</translation>
-<translation id="4415426530740016218">పికప్ చిరునామా</translation>
+<translation id="4415426530740016218">పికప్ అడ్రస్‌</translation>
 <translation id="4424024547088906515">ఈ సర్వర్ <ph name="DOMAIN" /> అని నిరూపించుకోలేకపోయింది; దీని భద్రతా ప్రమాణపత్రాన్ని Chrome విశ్వసించలేదు. ఇది తప్పుగా కాన్ఫిగర్ చేయడం వలన లేదా దాడిచేసే వ్యక్తి మీ కనెక్షన్‌కు అంతరాయం కలిగించడం వలన జరిగి ఉండవచ్చు.</translation>
 <translation id="443121186588148776">శ్రేణీకృత పోర్ట్</translation>
 <translation id="4432688616882109544"><ph name="HOST_NAME" /> మీ లాగిన్ ప్రమాణపత్రాన్ని ఆమోదించలేదు లేదా ఏదీ అందించి ఉండకపోవచ్చు.</translation>
@@ -1032,7 +1032,7 @@
 <translation id="4508814173490746936">Touch IDని ఉపయోగించడం సాధ్యం కాలేదు</translation>
 <translation id="4509074745930862522"><ph name="TRANSLATE_FOCUSED_FRIENDLY_MATCH_TEXT" />, Google Translateతో ఈ పేజీని అనువదించడానికి 'Tab'ను నొక్కి, ఆపై 'Enter'ను నొక్కండి</translation>
 <translation id="4510487217173779431">Chou4 (ఎన్వలప్)</translation>
-<translation id="4515275063822566619">కార్డ్‌లు, చిరునామాలు- Chrome నుండి, మీ Google ఖాతా (<ph name="ACCOUNT_EMAIL" />) నుండి పొందినవి. మీరు <ph name="BEGIN_LINK" />సెట్టింగ్‌లు<ph name="END_LINK" />లో వాటిని నిర్వహించవచ్చు.</translation>
+<translation id="4515275063822566619">కార్డ్‌లు, అడ్రస్‌లు- Chrome నుండి, మీ Google ఖాతా (<ph name="ACCOUNT_EMAIL" />) నుండి పొందినవి. మీరు <ph name="BEGIN_LINK" />సెట్టింగ్‌లు<ph name="END_LINK" />లో వాటిని నిర్వహించవచ్చు.</translation>
 <translation id="4517607026994743406">Comm-10 (ఎన్వలప్)</translation>
 <translation id="4521157617044179198"><ph name="WIDTH" /> × <ph name="HEIGHT" /> మి.మీ (<ph name="ORIENTATION" />)</translation>
 <translation id="4522570452068850558">వివరాలు</translation>
@@ -1040,12 +1040,12 @@
 <translation id="4524805452350978254">కార్డ్‌లను నిర్వహించండి</translation>
 <translation id="4542971377163063093">ట్రే 6</translation>
 <translation id="455113658016510503">A9</translation>
-<translation id="4558551763791394412">మీ పొడిగింపులను నిలిపివేయడం ప్రయత్నించండి.</translation>
+<translation id="4558551763791394412">మీ ఎక్స్‌టెన్షన్‌లను నిలిపివేయడం ప్రయత్నించండి.</translation>
 <translation id="4559332380232738994">10x11</translation>
 <translation id="457875822857220463">డెలివరీ</translation>
 <translation id="4579056131138995126">వ్యక్తిగతం (ఎన్వలప్)</translation>
 <translation id="4582204425268416675">కార్డ్‌ని తీసివేయండి</translation>
-<translation id="4587425331216688090">Chrome నుండి చిరునామాను తీసివేయాలా?</translation>
+<translation id="4587425331216688090">Chrome నుండి అడ్రస్‌ను తీసివేయాలా?</translation>
 <translation id="459089498662672729"><ph name="ORIGIN_NAME" /> నుండి ఈ లొకేషన్‌కు పేస్ట్ చేయడం అడ్మినిస్ట్రేటర్ పాలసీ ద్వారా సిఫార్సు చేయబడదు</translation>
 <translation id="4592951414987517459"><ph name="DOMAIN" />కు గల మీ కనెక్షన్ ఆధునిక సైఫర్ సూట్ ఉపయోగించి ఎన్‌క్రిప్ట్ చేయ‌బ‌డింది.</translation>
 <translation id="4594403342090139922">&amp;తొలగించడాన్ని రద్దు చేయి</translation>
@@ -1098,7 +1098,7 @@
 <translation id="4758311279753947758">సంప్రదింపు సమాచారాన్ని జోడించు</translation>
 <translation id="4761104368405085019">మీ మైక్రోఫోన్‌ను ఉపయోగించండి</translation>
 <translation id="4761869838909035636">Chrome భద్రతా తనిఖీని రన్ చేయి</translation>
-<translation id="4764776831041365478"><ph name="URL" /> వద్ద వెబ్‌పేజీ తాత్కాలికంగా తెరుచుకోవటం లేదు లేదా అది కొత్త‌ వెబ్ చిరునామాకు శాశ్వతంగా తరలించబడి ఉండవచ్చు.</translation>
+<translation id="4764776831041365478"><ph name="URL" /> వద్ద వెబ్‌పేజీ తాత్కాలికంగా తెరుచుకోవటం లేదు లేదా అది కొత్త‌ వెబ్ అడ్రస్‌కు శాశ్వతంగా తరలించబడి ఉండవచ్చు.</translation>
 <translation id="4766713847338118463">దిగువ భాగంలో డ్యుయల్ స్టేపుల్</translation>
 <translation id="4771973620359291008">తెలియని ఎర్రర్ ఒకటి ఏర్పడింది.</translation>
 <translation id="477945296921629067">{NUM_POPUPS,plural, =1{పాప్-అప్ బ్లాక్ చేయబడింది}other{# పాప్-అప్‌లు బ్లాక్ చేయబడ్డాయి}}</translation>
@@ -1150,7 +1150,7 @@
 <translation id="495170559598752135">చర్యలు</translation>
 <translation id="4953689047182316270">యాక్సెస్ సామర్థ్యం ఉన్న ఈవెంట్‌లకు ప్రతిస్పందించండి</translation>
 <translation id="4955242332710481440">A5-అదనం</translation>
-<translation id="4958444002117714549">జాబితాను విస్తరించు</translation>
+<translation id="4958444002117714549">లిస్ట్‌ను విస్తరించు</translation>
 <translation id="4968522289500246572">ఈ యాప్ మొబైల్ కోసం డిజైన్ చేయబడింది, పరిమాణాన్ని మార్చడం సాధ్యం కాకపోవచ్చు. యాప్‌ను ఉపయోగించేటప్పుడు సమస్యలు ఎదురుకావచ్చు లేదా మీరు రీస్టార్ట్ చేయవలసి రావచ్చు.</translation>
 <translation id="4973922308112707173">ఎగువ భాగంలో రెండు రంధ్రాలు</translation>
 <translation id="4974590756084640048">హెచ్చరికలను మళ్లీ ప్రారంభించు</translation>
@@ -1183,7 +1183,7 @@
 <translation id="5066056036849835175">ప్రింటింగ్ హిస్టరీ</translation>
 <translation id="5068524481479508725">A10</translation>
 <translation id="5068778127327928576">{NUM_COOKIES,plural, =1{(1 వినియోగంలో ఉంది)}other{(# వినియోగంలో ఉన్నాయి)}}</translation>
-<translation id="5070335125961472645"><ph name="BEGIN_LINK" />ప్రాక్సీ చిరునామాను తనిఖీ చేయడం<ph name="END_LINK" /></translation>
+<translation id="5070335125961472645"><ph name="BEGIN_LINK" />ప్రాక్సీ అడ్రస్‌ను తనిఖీ చేయడం<ph name="END_LINK" /></translation>
 <translation id="507130231501693183">మెయిల్‌బాక్స్ 4</translation>
 <translation id="5087286274860437796">ప్రస్తుతం సర్వర్ ప్రమాణపత్రం చెల్లదు.</translation>
 <translation id="5087580092889165836">కార్డ్‌ను జోడించు</translation>
@@ -1203,7 +1203,7 @@
 <translation id="5125394840236832993">B-ప్లస్</translation>
 <translation id="5126510351761255129">మీ కార్డ్‌ను ధృవీకరించండి</translation>
 <translation id="512670116361803001"><ph name="APP_NAME" /> పరిమాణాన్ని మార్చడం సాధ్యం కాకపోవచ్చు. యాప్‌లో సమస్యలు ఎదురుకాకుండా నివారించడానికి, ప్రీసెట్ చేసిన విండో పరిమాణాలను ఉపయోగించండి.</translation>
-<translation id="5135404736266831032">చిరునామాలను నిర్వహించండి...</translation>
+<translation id="5135404736266831032">అడ్రస్‌లను నిర్వహించండి...</translation>
 <translation id="5138014172396933048">ప్రస్తుతానికి వర్చువల్ కార్డ్ అందుబాటులో లేదు, దయచేసి మీ బ్యాంకును సంప్రదించండి</translation>
 <translation id="5138227688689900538">తక్కువ చూపు</translation>
 <translation id="514010763713772514">తర్వాతిసారి త్వరగా చెక్ అవుట్ చేయండి</translation>
@@ -1221,17 +1221,17 @@
 <translation id="5171045022955879922">URLను వెతకండి లేదా టైప్ చేయండి</translation>
 <translation id="5171689220826475070">ఫ్యాన్‌ఫోల్డ్-యూరోపియన్</translation>
 <translation id="5172758083709347301">మెషీన్</translation>
-<translation id="5179510805599951267"><ph name="ORIGINAL_LANGUAGE" />లో లేదా? ఈ ఎర్రర్‌ను నివేదించండి</translation>
+<translation id="5179510805599951267"><ph name="ORIGINAL_LANGUAGE" />లో లేదా? ఈ ఎర్రర్‌ను రిపోర్ట్ చేయండి</translation>
 <translation id="5190835502935405962">బుక్‌మార్క్‌ల బార్</translation>
 <translation id="51918995459521422"><ph name="ORIGIN" /> పలు ఫైళ్లను డౌన్‌లోడ్ చేయాలనుకుంటోంది</translation>
 <translation id="519422657042045905">అదనపు గమనిక అందుబాటులో లేదు</translation>
 <translation id="5201306358585911203">ఈ పేజీలోని పొందుపరిచిన పేజీ ఇలా చెబుతోంది</translation>
 <translation id="5205222826937269299">పేరు ఆవశ్యకం</translation>
 <translation id="5209518306177824490">SHA-1 వేలిముద్ర</translation>
-<translation id="5215116848420601511">Google Payని ఉపయోగిస్తున్న చెల్లింపు పద్ధతులు మరియు చిరునామాలు</translation>
+<translation id="5215116848420601511">Google Payని ఉపయోగిస్తున్న చెల్లింపు పద్ధతులు మరియు అడ్రస్‌లు</translation>
 <translation id="5215363486134917902">ఫోలియో-Sp</translation>
 <translation id="5222812217790122047">ఇమెయిల్ అవ‌స‌రం</translation>
-<translation id="5230733896359313003">బట్వాడా చిరునామా</translation>
+<translation id="5230733896359313003">బట్వాడా అడ్రస్‌</translation>
 <translation id="5230815978613972521">B8</translation>
 <translation id="5233045608889518621">12x19</translation>
 <translation id="5250209940322997802">"నెట్‌వర్క్‌కు కనెక్ట్ చేయండి"</translation>
@@ -1248,7 +1248,7 @@
 <translation id="5283044957620376778">B1</translation>
 <translation id="5284295735376057059">డాక్యుమెంట్ ప్రాపర్టీలు</translation>
 <translation id="528468243742722775">ముగించు</translation>
-<translation id="5284909709419567258">నెట్‌వర్క్ చిరునామాలు</translation>
+<translation id="5284909709419567258">నెట్‌వర్క్ అడ్రస్‌లు</translation>
 <translation id="5285570108065881030">సేవ్ చేసిన అన్ని పాస్‌వర్డ్‌లను చూపు</translation>
 <translation id="5287240709317226393">కుక్కీలను చూపించు</translation>
 <translation id="5287456746628258573">ఈ సైట్ ఉపయోగించే భద్రతా కాన్ఫిగరేషన్ గడువు ముగిసింది, మీ సమాచారాన్ని (ఉదాహరణకు పాస్‌వర్డ్‌లు లేదా క్రెడిట్ కార్డ్ నంబర్‌లు) ఈ సైట్‌కు పంపినప్పుడు, దానిని ఈ సైట్ బహిర్గతం చేయవచ్చు.</translation>
@@ -1304,7 +1304,7 @@
 <translation id="5470861586879999274">&amp;సవరించడాన్ని పునరావృతం చేయి</translation>
 <translation id="5478437291406423475">B6/C4 (ఎన్వలప్)</translation>
 <translation id="5481076368049295676">ఈ కంటెంట్ మీ సమాచారాన్ని దొంగిలించగల లేదా తొలగించగల హానికరమైన సాఫ్ట్‌వేర్‌ను మీ పరికరంలో ఇన్‌స్టాల్ చేయడానికి ప్రయత్నించవచ్చు. <ph name="BEGIN_LINK" />ఏదేమైనా చూపు<ph name="END_LINK" /></translation>
-<translation id="54817484435770891">చెల్లుబాటు అయ్యే చిరునామాను జోడించండి</translation>
+<translation id="54817484435770891">చెల్లుబాటు అయ్యే అడ్రస్‌ను జోడించండి</translation>
 <translation id="5490432419156082418">అడ్రస్‌లు, మరికొన్ని వివరాలు</translation>
 <translation id="5492298309214877701">కంపెనీ, సంస్థ లేదా పాఠశాల ఇంట్రానెట్‌లోని ఈ సైట్ బాహ్య వెబ్‌సైట్ కలిగి ఉన్న అదే URLను కలిగి ఉంది.
     <ph name="LINE_BREAK" />
@@ -1332,17 +1332,17 @@
 <translation id="55635442646131152">డాక్యుమెంట్ చుట్టుగీత</translation>
 <translation id="5565735124758917034">సక్రియం</translation>
 <translation id="5570825185877910964">ఖాతాను సంరక్షించు</translation>
-<translation id="5571083550517324815">ఈ చిరునామా నుండి పికప్ చేసుకోవడం సాధ్యం కాదు. వేరే చిరునామాని ఎంచుకోండి.</translation>
+<translation id="5571083550517324815">ఈ అడ్రస్‌ నుండి పికప్ చేసుకోవడం సాధ్యం కాదు. వేరే అడ్రస్‌ను ఎంచుకోండి.</translation>
 <translation id="5580958916614886209">మీ గడువు ముగింపు నెలను తనిఖీ చేసి, మళ్లీ ప్రయత్నించండి</translation>
-<translation id="5586446728396275693">సేవ్ చేయబడిన చిరునామాలు లేవు</translation>
+<translation id="5586446728396275693">సేవ్ చేయబడిన అడ్రస్‌లు లేవు</translation>
 <translation id="5593349413089863479">కనెక్షన్ పూర్తిగా సురక్షితమైనది కాదు</translation>
-<translation id="5595485650161345191">చిరునామాను సవరించు</translation>
+<translation id="5595485650161345191">అడ్రస్‌ను సవరించు</translation>
 <translation id="5598944008576757369">చెల్లింపు పద్ధతిని ఎంచుకోండి</translation>
 <translation id="560412284261940334">నిర్వహణకు మద్దతు లేదు</translation>
 <translation id="5605670050355397069">లెడ్జర్</translation>
 <translation id="5607240918979444548">ఆర్కిటెక్చర్-C</translation>
 <translation id="5610142619324316209">కనెక్షన్‌ను తనిఖీ చేయడం</translation>
-<translation id="5610807607761827392">మీరు కార్డ్‌లు మరియు చిరునామాలను <ph name="BEGIN_LINK" />సెట్టింగ్‌ల<ph name="END_LINK" />లో నిర్వహించగలరు.</translation>
+<translation id="5610807607761827392">మీరు కార్డ్‌లు మరియు అడ్రస్‌లను <ph name="BEGIN_LINK" />సెట్టింగ్‌ల<ph name="END_LINK" />లో నిర్వహించగలరు.</translation>
 <translation id="561165882404867731">Google Translateతో ఈ పేజీని అనువదించండి</translation>
 <translation id="5612720917913232150"><ph name="URL" /> మీ కంప్యూటర్ స్థానాన్ని ఉపయోగించాలనుకుంటోంది</translation>
 <translation id="5617949217645503996"><ph name="HOST_NAME" /> మిమ్మల్ని అనేక సార్లు దారి మళ్లించింది.</translation>
@@ -1360,7 +1360,7 @@
 <translation id="5675650730144413517">ఈ పేజీ పని చేయడం లేదు</translation>
 <translation id="568292603005599551">చిత్రం యొక్క X కోఆర్డినేట్</translation>
 <translation id="5684874026226664614">అయ్యో. ఈ పేజీని అనువదించడం సాధ్యపడలేదు.</translation>
-<translation id="5685654322157854305">షిప్పింగ్ చిరునామాను జోడించండి</translation>
+<translation id="5685654322157854305">షిప్పింగ్ అడ్రస్‌ను జోడించండి</translation>
 <translation id="5689199277474810259">JSONకు ఎగుమతి చేయి</translation>
 <translation id="5689516760719285838">లొకేషన్</translation>
 <translation id="569000877158168851">DnsOverHttpsTemplates విలువ ఔచిత్యంగా లేదు, DnsOverHttpsMode విధానాన్ని <ph name="SECURE_DNS_MODE_AUTOMATIC" />కు లేదా <ph name="SECURE_DNS_MODE_SECURE" />కు సెట్ చేస్తే మినహా, అది ఉపయోగించబడదు.</translation>
@@ -1378,8 +1378,8 @@
 <translation id="5745733273847572235">మీ లొకేషన్‌ను ఉపయోగించడం కోసం సైట్ అనుమతి అడగవచ్చు</translation>
 <translation id="5745980000221562234">{NUM_CARDS,plural, =1{ఈ కార్డ్‌కు ఒక వర్చువల్ నంబర్‌ను ఉపయోగించండి}other{ఒక కార్డ్‌ను ఎంచుకోండి}}</translation>
 <translation id="5759751709240058861">మీ కెమెరాను ఉపయోగించండి, తరలించండి</translation>
-<translation id="5763042198335101085">చెల్లుబాటు అయ్యే ఇమెయిల్ చిరునామాను నమోదు చేయండి</translation>
-<translation id="5765072501007116331">బట్వాడా పద్ధతులు మరియు అవసరాలను చూడాలంటే, చిరునామాని ఎంచుకోండి</translation>
+<translation id="5763042198335101085">చెల్లుబాటు అయ్యే ఇమెయిల్ అడ్రస్‌ను నమోదు చేయండి</translation>
+<translation id="5765072501007116331">బట్వాడా పద్ధతులు మరియు అవసరాలను చూడాలంటే, అడ్రస్‌ను ఎంచుకోండి</translation>
 <translation id="57689295674415555">వర్చువల్ కార్డ్ నంబర్ పూరించబడలేదా?</translation>
 <translation id="5776313857861697733">ప్రాధాన్యత</translation>
 <translation id="5778550464785688721">MIDI పరికరాల పూర్తి నియంత్రణ</translation>
@@ -1398,7 +1398,7 @@
 <translation id="5824687817967109979">{NUM_CARDS,plural, =1{మీరు చెల్లించినప్పుడు ఈ కార్డ్ ఛార్జి చేయబడుతుంది, కానీ దాని అసలైన నంబర్ ఈ సైట్‌తో షేర్ చేయబడదు. అదనపు భద్రత కోసం, తాత్కాలిక CVC జెనరేట్ చేయబడుతుంది.}other{మీరు చెల్లించినప్పుడు మీరు ఎంచుకున్న కార్డ్ ఛార్జి చేయబడుతుంది, కానీ దాని అసలైన నంబర్ ఈ సైట్‌తో షేర్ చేయబడదు. అదనపు భద్రత కోసం, తాత్కాలిక CVC జెనరేట్ చేయబడుతుంది.}}</translation>
 <translation id="5826507051599432481">సాధారణ పేరు (CN)</translation>
 <translation id="5838278095973806738">మీరు ఈ సైట్‌లో ఎలాంటి గోప్యమైన సమాచారాన్ని నమోదు చేయకూడదు (ఉదాహరణకు, పాస్‌వర్డ్‌లు లేదా క్రెడిట్ కార్డ్‌లు), దాడికి పాల్పడేవారు ఆ సమాచారం దొంగిలించే అవకాశం ఉంటుంది.</translation>
-<translation id="5851548754964597211">ట్యాబ్ జాబితా</translation>
+<translation id="5851548754964597211">ట్యాబ్ లిస్ట్‌</translation>
 <translation id="5855253129151731373">ఈ సైట్ యొక్క హోస్ట్ పేరు <ph name="LOOKALIKE_DOMAIN" /> లాగా ఉంది. దాడి చేసే వారు, కొన్నిసార్లు డొమైన్ పేరును స్వల్పంగా, అంత తేలికగా పసిగట్టలేని విధంగా మార్చి నకిలీ సైట్‌లను రూపొందిస్తారు.
 
     ఇది పొరపాటుగా చూపించబడింది అని మీరు అనుకుంటే, దయచేసి https://bugs.chromium.org/p/chromium/issues/entry?template=Safety+Tips+Appeals లింక్‌ను సందర్శించండి.</translation>
@@ -1476,7 +1476,7 @@
 <translation id="6094273045989040137">అదనపు గమనికను జోడించండి</translation>
 <translation id="6104072995492677441">JIS B6</translation>
 <translation id="6105460996796456817">సైట్‌ను క్రియేట్ చేయండి</translation>
-<translation id="6106989379647458772"><ph name="PAGE" />లోని వెబ్‌పేజీ తాత్కాలికంగా నిలిపివేయబడి ఉండవచ్చు లేదా ఇది శాశ్వతంగా కొత్త వెబ్ చిరునామాకు తరలించబడి ఉండవచ్చు.</translation>
+<translation id="6106989379647458772"><ph name="PAGE" />లోని వెబ్‌పేజీ తాత్కాలికంగా నిలిపివేయబడి ఉండవచ్చు లేదా ఇది శాశ్వతంగా కొత్త వెబ్ అడ్రస్‌కు తరలించబడి ఉండవచ్చు.</translation>
 <translation id="6107012941649240045">వీరికి జారీ చేయబడింది</translation>
 <translation id="610911394827799129">మీ Google ఖాతా <ph name="BEGIN_LINK" />myactivity.google.com<ph name="END_LINK" />లో ఇతర రూపాల్లో ఉన్న బ్రౌజింగ్ చరిత్రను కలిగి ఉండవచ్చు</translation>
 <translation id="6113594885686374546">'వెతకడాన్ని కొనసాగించండి' బటన్, వెతకడాన్ని కొనసాగించడానికి Enter' నొక్కండి, మీ Chrome హిస్టరీలో సందర్భోచితమైన యాక్టివిటీని చూడండి</translation>
@@ -1489,7 +1489,7 @@
 <translation id="6150036310511284407">ఎడమవైపు మూడు రంధ్రాలు</translation>
 <translation id="6151417162996330722">సర్వర్ ప్రమాణపత్రం చెల్లుబాటు వ్యవధి చాలా ఎక్కువ కాలం ఉంది.</translation>
 <translation id="6153243098246946146"><ph name="WIDTH" /> × <ph name="HEIGHT" /> అంగుళాలు (<ph name="ORIENTATION" />)</translation>
-<translation id="6157877588268064908">రవాణా పద్ధతులు మరియు అవసరాలను చూడాలంటే, చిరునామాని ఎంచుకోండి</translation>
+<translation id="6157877588268064908">రవాణా పద్ధతులు మరియు అవసరాలను చూడాలంటే, అడ్రస్‌ను ఎంచుకోండి</translation>
 <translation id="6165508094623778733">మరింత తెలుసుకోండి</translation>
 <translation id="6169916984152623906">‌ఇప్పుడు మీరు వ్యక్తిగతంగా బ్రౌజ్ చేయవచ్చు మరియు ఈ పరికరాన్ని ఉపయోగించే ఇతర వ్యక్తులకు మీ కార్య‌క‌లాపం కనిపించదు. అయినప్పటికీ, డౌన్‌లోడ్‌లు మరియు బుక్‌మార్క్‌లు సేవ్ చేయబడతాయి.</translation>
 <translation id="6177128806592000436">ఈ సైట్‌తో మీకున్న కనెక్షన్ సురక్షితంగా లేదు</translation>
@@ -1498,7 +1498,7 @@
 <translation id="6196640612572343990">థర్డ్ పార్టీ కుక్కీలను బ్లాక్ చేయండి</translation>
 <translation id="6203231073485539293">మీ ఇంటర్నెట్ కనెక్షన్‌ను తనిఖీ చేయండి</translation>
 <translation id="6211666000885129820">సురక్షిత పేమెంట్ ఆధారాల ఎన్‌రోల్‌మెంట్ షీట్</translation>
-<translation id="6218753634732582820">Chromium నుండి చిరునామాను తీసివేయాలా?</translation>
+<translation id="6218753634732582820">Chromium నుండి అడ్రస్‌ను తీసివేయాలా?</translation>
 <translation id="622039917539443112">పారలల్ ఫోల్డ్</translation>
 <translation id="6221345481584921695">Google సురక్షిత బ్రౌజింగ్ ఇటీవల <ph name="SITE" />లో <ph name="BEGIN_LINK" />మాల్వేర్‌ను గుర్తించింది<ph name="END_LINK" />. సాధారణంగా సురక్షితమైన వెబ్‌సైట్‌‌లకు కూడా కొన్నిసార్లు మాల్వేర్ సోకుతుంది. ఈ హానికరమైన కంటెంట్, మాల్వేర్ పంపిణీదారుగా ప్రసిద్ధిగాంచిన <ph name="SUBRESOURCE_HOST" /> నుండి సంక్రమిస్తుంది.</translation>
 <translation id="6234122620015464377">ప్రతి పత్రం తర్వాత కత్తిరించండి</translation>
@@ -1513,9 +1513,9 @@
 <translation id="6265794661083428563"><ph name="POLICY_NAME" /> పాలసీ విలువను కాపీ చేయి</translation>
 <translation id="6266934640124581640">లేత నీలి ఆకుపచ్చ రంగు</translation>
 <translation id="6272383483618007430">Google అప్‌డేట్</translation>
-<translation id="6276112860590028508">మీ పఠన జాబితాలో ఉన్న పేజీలు ఇక్కడ కనిపిస్తాయి</translation>
-<translation id="627746635834430766">తర్వాతిసారి మరింత వేగంగా చెల్లించడానికి, మీ కార్డ్, బిల్లింగ్ చిరునామాను మీ Google ఖాతాకు సేవ్ చేయండి.</translation>
-<translation id="6280223929691119688">ఈ చిరునామాకు బట్వాడా చేయడం సాధ్యం కాదు. వేరే చిరునామాని ఎంచుకోండి.</translation>
+<translation id="6276112860590028508">మీ పఠన లిస్ట్‌లో ఉన్న పేజీలు ఇక్కడ కనిపిస్తాయి</translation>
+<translation id="627746635834430766">తర్వాతిసారి మరింత వేగంగా చెల్లించడానికి, మీ కార్డ్, బిల్లింగ్ అడ్రస్‌ను మీ Google ఖాతాకు సేవ్ చేయండి.</translation>
+<translation id="6280223929691119688">ఈ అడ్రస్‌కు బట్వాడా చేయడం సాధ్యం కాదు. వేరే అడ్రస్‌ను ఎంచుకోండి.</translation>
 <translation id="6282194474023008486">పోస్టల్ కోడ్</translation>
 <translation id="6289939620939689042">పేజీ రంగు</translation>
 <translation id="6290238015253830360">మీకు సూచించిన కథనాలు ఇక్కడ కనిపిస్తాయి</translation>
@@ -1582,14 +1582,14 @@
 <translation id="6505563257409036437">అజ్ఞాత విండోలను మూసివేయండి</translation>
 <translation id="6508722015517270189">Chromeను పునఃప్రారంభించండి</translation>
 <translation id="6513005815064132016">మీ కెమెరా పొజిషన్‌ను ట్రాక్ చేయడానికి సైట్ అనుమతి అడగవచ్చు</translation>
-<translation id="6517596291481585650">హెచ్చరిక: ఈ విధానం ఒక జాబితా కానందున, విధానంలో పేర్కొన్నట్లుగా ఇది జాబితా రూపంలో విలీనం చేయబడలేదు.</translation>
+<translation id="6517596291481585650">హెచ్చరిక: ఈ విధానం ఒక లిస్ట్‌ కానందున, విధానంలో పేర్కొన్నట్లుగా ఇది లిస్ట్‌ రూపంలో విలీనం చేయబడలేదు.</translation>
 <translation id="6518133107902771759">ధృవీకరించు</translation>
 <translation id="6521745193039995384">యాక్టివ్‌గా లేదు</translation>
 <translation id="6529602333819889595">&amp;తొలగించడాన్ని పునరావృతం చేయి</translation>
 <translation id="6545864417968258051">బ్లూటూత్ స్కానింగ్</translation>
 <translation id="6547208576736763147">ఎడమవైపు రెండు రంధ్రాలు</translation>
 <translation id="6556866813142980365">మళ్లీ చేయి</translation>
-<translation id="6569060085658103619">మీరు పొడిగింపు పేజీని వీక్షిస్తున్నారు</translation>
+<translation id="6569060085658103619">మీరు ఎక్స్‌టెన్షన్‌ పేజీని వీక్షిస్తున్నారు</translation>
 <translation id="6573200754375280815">కుడివైపు రెండు రంధ్రాలు</translation>
 <translation id="6578796323535178455">C2 (ఎన్వలప్)</translation>
 <translation id="6579630537141957243">MIDI పరికరానికి కనెక్ట్ చేయాలా?</translation>
@@ -1632,7 +1632,7 @@
 <translation id="6710213216561001401">మునుపటి</translation>
 <translation id="6710594484020273272">&lt;శోధన పదాన్ని టైప్ చేయండి&gt;</translation>
 <translation id="671076103358959139">నమోదు టోకెన్:</translation>
-<translation id="6711464428925977395">ప్రాక్సీ సర్వర్‌లో ఏదో తప్పు ఉంది లేదా చిరునామా సరైనది కాదు.</translation>
+<translation id="6711464428925977395">ప్రాక్సీ సర్వర్‌లో ఏదో తప్పు ఉంది లేదా అడ్రస్‌ సరైనది కాదు.</translation>
 <translation id="6716672519412350405">మీ పరిసరాల 3D మ్యాప్‌ను రూపొందించడానికి, కెమెరా పొజిషన్‌ను ట్రాక్ చేయడానికి <ph name="URL" /> అనుమతి అడుగుతోంది</translation>
 <translation id="6718612893943028815">కెమెరాను ఉపయోగించాలా?</translation>
 <translation id="6721678857435001674">మీ భద్రతా కీ యొక్క తయారీదారు బ్రాండ్ పేరు మరియు మోడల్‌ని చూడండి</translation>
@@ -1678,7 +1678,7 @@
 <translation id="6944692733090228304"><ph name="BEGIN_BOLD" /><ph name="ORG_NAME" /><ph name="END_BOLD" /> నిర్వహించని ఒక సైట్‌లో మీరు మీ పాస్‌వర్డ్‌ని నమోదు చేశారు. మీ ఖాతాని రక్షించడం కోసం, మీ పాస్‌వర్డ్‌ని ఇతర యాప్‌లు మరియు సైట్‌లలో తిరిగి ఉపయోగించవద్దు.</translation>
 <translation id="6945221475159498467">ఎంచుకోండి</translation>
 <translation id="6948051842255602737">గేమ్ పూర్తయింది, మీ స్కోర్ <ph name="SCORE" />.</translation>
-<translation id="6948701128805548767">పికప్ పద్ధతులు మరియు అవసరాలను చూడాలంటే, చిరునామాని ఎంచుకోండి</translation>
+<translation id="6948701128805548767">పికప్ పద్ధతులు మరియు అవసరాలను చూడాలంటే, అడ్రస్‌ను ఎంచుకోండి</translation>
 <translation id="6949872517221025916">పాస్‌వర్డ్‌ను రీసెట్ చేయండి</translation>
 <translation id="6950684638814147129">JSON విలువను అన్వయిస్తుండగా ఎర్రర్ ఏర్పడింది: <ph name="ERROR" /></translation>
 <translation id="695140971690006676">అన్నీ రీసెట్ చేయి</translation>
@@ -1719,7 +1719,7 @@
 <translation id="7064851114919012435">సంప్రదింపు సమాచారం</translation>
 <translation id="70705239631109039">మీ కనెక్షన్ పూర్తిగా సురక్షితమైనది కాదు</translation>
 <translation id="7072826695771387770">అసురక్షిత ఈవెంట్ ఏర్పడినప్పుడు</translation>
-<translation id="7075452647191940183">అభ్యర్థన చాలా పెద్దదిగా ఉంది</translation>
+<translation id="7075452647191940183">రిక్వెస్ట్‌ చాలా పెద్దదిగా ఉంది</translation>
 <translation id="7079718277001814089">ఈ సైట్‌లో మాల్వేర్ ఉంది</translation>
 <translation id="7081308185095828845">మీ పరికరంలో ఈ ఫీచర్ అందుబాటులో లేదు</translation>
 <translation id="7083258188081898530">ట్రే 9</translation>
@@ -1728,11 +1728,11 @@
 <translation id="7095139009144195559"><ph name="MANAGE_SITE_SETTINGS_FOCUSED_FRIENDLY_MATCH_TEXT" />, Chrome సెట్టింగ్‌లలో అనుమతులను మేనేజ్ చేయడానికి, అలాగే సైట్‌ల అంతటా స్టోర్ చేయబడిన డేటాను మేనేజ్ చేయడానికి 'Tab'ను నొక్కి, ఆపై 'Enter'ను నొక్కండి</translation>
 <translation id="7108338896283013870">దాచిపెట్టు</translation>
 <translation id="7108634116785509031"><ph name="HOST" /> మీ కెమెరాను ఉపయోగించాలనుకుంటోంది</translation>
-<translation id="7108819624672055576">పొడిగింపు ద్వారా అనుమతించబడింది</translation>
+<translation id="7108819624672055576">ఎక్స్‌టెన్షన్‌ ద్వారా అనుమతించబడింది</translation>
 <translation id="7111012039238467737">(చెల్లుతుంది)</translation>
 <translation id="7118618213916969306">క్లిప్‌బోర్డ్ URL, <ph name="SHORT_URL" /> కోసం వెతకండి</translation>
 <translation id="7119414471315195487">ఇతర ట్యాబ్‌లు లేదా ప్రోగ్రామ్‌లను మూసివేయండి</translation>
-<translation id="7129409597930077180">ఈ చిరునామాకు రవాణా చేయడం సాధ్యం కాదు. వేరే చిరునామాని ఎంచుకోండి.</translation>
+<translation id="7129409597930077180">ఈ అడ్రస్‌కు రవాణా చేయడం సాధ్యం కాదు. వేరే అడ్రస్‌ను ఎంచుకోండి.</translation>
 <translation id="7135130955892390533">స్థితిని చూపు</translation>
 <translation id="7138472120740807366">బట్వాడా పద్ధతి</translation>
 <translation id="7139724024395191329">ఎమిరేట్</translation>
@@ -1754,7 +1754,7 @@
 <translation id="7201591969684833065">మీ నిర్వాహకుడు వీటిని చూడగలరు:</translation>
 <translation id="7202346780273620635">లెటర్-అదనం</translation>
 <translation id="7210863904660874423"><ph name="HOST_NAME" /> భద్రతా ప్రమాణాలకు కట్టుబడి లేదు.</translation>
-<translation id="7210993021468939304">కంటెయినర్ లోపల Linux కార్యకలాపం, కంటెయినర్ లోపల Linux యాప్‌లను ఇన్‌స్టాల్ చేయవచ్చు</translation>
+<translation id="7210993021468939304">కంటెయినర్ లోపల Linux యాక్టివిటీ, కంటెయినర్ లోపల Linux యాప్‌లను ఇన్‌స్టాల్ చేయవచ్చు</translation>
 <translation id="721197778055552897">ఈ సమస్య గురించి <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి <ph name="END_LINK" />.</translation>
 <translation id="7217745192097460130">మీ కొనుగోలును వెరిఫై చేసి, పూర్తి చేయడానికి Touch IDని ఉపయోగించమంటారా?</translation>
 <translation id="7219179957768738017">కనెక్షన్ <ph name="SSL_VERSION" />ని ఉపయోగిస్తుంది.</translation>
@@ -1849,7 +1849,7 @@
 <translation id="7511955381719512146">మీరు ఉపయోగిస్తున్న Wi-Fiకు మీరు<ph name="BEGIN_BOLD" /><ph name="LOGIN_URL" /><ph name="END_BOLD" />ను సందర్శించడం అవసరం.</translation>
 <translation id="7512685745044087310">ఈ పాలసీని "ఒప్పు", 'తప్పనిసరి'కి సెట్ చేయడం సాధ్యం కాదు, కాబట్టి దీన్ని 'సిఫార్సు చేయబడింది'కి మార్చాము.</translation>
 <translation id="7514365320538308">డౌన్‌లోడ్ చేయి</translation>
-<translation id="7518003948725431193">వెబ్ చిరునామాకు వెబ్‌పేజీ కనుగొనబడలేదు: <ph name="URL" /></translation>
+<translation id="7518003948725431193">వెబ్ అడ్రస్‌కు వెబ్‌పేజీ కనుగొనబడలేదు: <ph name="URL" /></translation>
 <translation id="7520302887438682816">C8 (ఎన్వలప్)</translation>
 <translation id="7521387064766892559">JavaScript</translation>
 <translation id="7521825010239864438">"<ph name="SECTION" />" విభాగం దాచబడింది</translation>
@@ -1878,7 +1878,7 @@
 <translation id="7591636454931265313"><ph name="TOP_LEVEL_URL" />లోని కుక్కీలను, సైట్ డేటాను వినియోగించడానికి <ph name="EMBEDDED_URL" /> అనుమతి అడుగుతోంది</translation>
 <translation id="7592362899630581445">సర్వర్ యొక్క ప్రమాణపత్రం పేరు పరిమితులను ఉల్లంఘిస్తోంది.</translation>
 <translation id="7598391785903975535"><ph name="UPPER_ESTIMATE" /> కంటే తక్కువ</translation>
-<translation id="759889825892636187"><ph name="HOST_NAME" /> ప్రస్తుతం ఈ అభ్యర్థనను నిర్వహించలేదు.</translation>
+<translation id="759889825892636187"><ph name="HOST_NAME" /> ప్రస్తుతం ఈ రిక్వెస్ట్‌ను నిర్వహించలేదు.</translation>
 <translation id="7600965453749440009"><ph name="LANGUAGE" />ను ఎప్పటికీ అనువదించవద్దు</translation>
 <translation id="7610193165460212391">విలువ <ph name="VALUE" /> పరిధి వెలుపల ఉంది.</translation>
 <translation id="7613889955535752492">గడువు ముగింపు: <ph name="EXPIRATION_MONTH" />/<ph name="EXPIRATION_YEAR" /></translation>
@@ -1897,7 +1897,7 @@
 <translation id="7654909834015434372">మీరు అదనపు గమనికలను ఎడిట్ చేసినప్పుడు, ఈ డాక్యుమెంట్, దాని ఒరిజినల్ రొటేషన్‌కు తిరిగి వస్తుంది</translation>
 <translation id="765676359832457558">అధునాతన సెట్టింగ్‌లను దాచు...</translation>
 <translation id="7658239707568436148">రద్దు చేయి</translation>
-<translation id="7662298039739062396">పొడిగింపు ద్వారా సెట్టింగ్ నియంత్రించబడుతోంది</translation>
+<translation id="7662298039739062396">ఎక్స్‌టెన్షన్‌ ద్వారా సెట్టింగ్ నియంత్రించబడుతోంది</translation>
 <translation id="7663736086183791259">సర్టిఫికెట్ <ph name="CERTIFICATE_VALIDITY" /></translation>
 <translation id="7666397036351755929">అజ్ఞాత మోడ్‌లో అనుమతించబడదు</translation>
 <translation id="7667346355482952095">అందించిన విధాన టోకెన్ ఖాళీగా ఉంది లేదా ప్రస్తుత టోకెన్‌తో సరిపోలలేదు</translation>
@@ -1929,7 +1929,7 @@
 <translation id="776110834126722255">విస్మరించబడింది</translation>
 <translation id="7761701407923456692">సర్వర్ ప్రమాణపత్రం URLతో సరిపోలలేదు.</translation>
 <translation id="7763386264682878361">చెల్లింపు మానిఫెస్ట్ అన్వయ ప్రక్రియ</translation>
-<translation id="7764225426217299476">చిరునామాను జోడించు</translation>
+<translation id="7764225426217299476">అడ్రస్‌ను జోడించు</translation>
 <translation id="7766518757692125295">స్కర్ట్</translation>
 <translation id="7770259615151589601">పొడవుగా నిర్దేశించబడింది</translation>
 <translation id="7773005668374414287">ఒకే క్రమంలో ఉన్న ఫేస్ అప్</translation>
@@ -1996,7 +1996,7 @@
 <translation id="7995512525968007366">పేర్కొనబడలేదు</translation>
 <translation id="800218591365569300">మెమరీని ఖాళీ చేయడానికి ఇతర ట్యాబ్‌లు లేదా ప్రోగ్రామ్‌లను మూసివేయడాన్ని ప్రయత్నించండి.</translation>
 <translation id="8004582292198964060">బ్రౌజర్</translation>
-<translation id="8012116502927253373">{NUM_CARDS,plural, =1{ఈ కార్డ్, దీని బిల్లింగ్ చిరునామా సేవ్ చేయబడతాయి. <ph name="USER_EMAIL" />కు సైన్ ఇన్ చేసినప్పుడు మీరు దీనిని ఉపయోగించగలరు.}other{ఈ కార్డ్‌లు, వీటి బిల్లింగ్ చిరునామాలు సేవ్ చేయబడతాయి. <ph name="USER_EMAIL" />కు సైన్ ఇన్ చేసినప్పడు, మీరు వీటిని ఉపయోగించగలరు.}}</translation>
+<translation id="8012116502927253373">{NUM_CARDS,plural, =1{ఈ కార్డ్, దీని బిల్లింగ్ అడ్రస్‌ సేవ్ చేయబడతాయి. <ph name="USER_EMAIL" />కు సైన్ ఇన్ చేసినప్పుడు మీరు దీనిని ఉపయోగించగలరు.}other{ఈ కార్డ్‌లు, వీటి బిల్లింగ్ అడ్రస్‌లు సేవ్ చేయబడతాయి. <ph name="USER_EMAIL" />కు సైన్ ఇన్ చేసినప్పడు, మీరు వీటిని ఉపయోగించగలరు.}}</translation>
 <translation id="8025119109950072390">ఈ సైట్‌లోని దాడి చేసే వారు సాఫ్ట్‌వేర్‌ను ఇన్‌స్టాల్ చేయడం లేదా మీ వ్యక్తిగత సమాచారాన్ని (ఉదాహరణకు, పాస్‌వర్డ్‌లు, ఫోన్ నంబర్‌లు లేదా క్రెడిట్ కార్డ్‌లు) వెల్లడించడం వంటి ప్రమాదకరమైన పనులు చేసేలా మిమ్మల్ని మాయ చేయవచ్చు.</translation>
 <translation id="8026334261755873520">బ్రౌజింగ్ డేటా క్లియర్ చేయండి</translation>
 <translation id="8028698320761417183"><ph name="CREATE_GOOGLE_FORM_FOCUSED_FRIENDLY_MATCH_TEXT" />, Google Formsలో త్వరగా కొత్త ఫారమ్‌ను క్రియేట్ చేయడానికి Tabను నొక్కి, ఆపై Enterను నొక్కండి</translation>
@@ -2065,7 +2065,7 @@
 <translation id="8242426110754782860">కొనసాగు</translation>
 <translation id="8249296373107784235">రద్దుచేయి</translation>
 <translation id="8249320324621329438">చివరగా పొందబడినవి:</translation>
-<translation id="8253091569723639551">బిల్లింగ్ చిరునామా ఆవశ్యకం</translation>
+<translation id="8253091569723639551">బిల్లింగ్ అడ్రస్‌ ఆవశ్యకం</translation>
 <translation id="8257387598443225809">ఈ యాప్ మొబైల్ కోసం రూపొందించబడింది</translation>
 <translation id="825929999321470778">సేవ్ చేసిన అన్ని పాస్‌వర్డ్‌లను చూపండి</translation>
 <translation id="8261506727792406068">తొలగించు</translation>
@@ -2123,7 +2123,7 @@
 <translation id="8438786541497918448">కెమెరా, మైక్రోఫోన్‌ను ఉపయోగించాలా?</translation>
 <translation id="8446884382197647889">మరింత తెలుసుకోండి</translation>
 <translation id="8457125768502047971">అనిశ్చితం</translation>
-<translation id="8461694314515752532">మీ స్వంత సమకాలీకరణ రహస్య పదబంధంతో సమకాలీకరించబడిన డేటాని ఎన్‌క్రిప్ట్ చేయండి</translation>
+<translation id="8461694314515752532">మీ స్వంత సింక్‌ రహస్య పదబంధంతో సమకాలీకరించబడిన డేటాని ఎన్‌క్రిప్ట్ చేయండి</translation>
 <translation id="8466379296835108687">{COUNT,plural, =1{1 క్రెడిట్ కార్డ్}other{# క్రెడిట్ కార్డ్‌లు}}</translation>
 <translation id="8473863474539038330">అడ్రస్‌లు, మరికొన్ని వివరాలు</translation>
 <translation id="8474910779563686872">డెవలపర్ వివరాలను చూపు</translation>
@@ -2190,7 +2190,7 @@
 <translation id="8734529307927223492"><ph name="MANAGER" />, మీ <ph name="DEVICE_TYPE" />ను మేనేజ్ చేస్తోంది</translation>
 <translation id="8737134861345396036"><ph name="LAUNCH_INCOGNITO_FOCUSED_FRIENDLY_MATCH_TEXT" />, ప్రైవేట్‌గా బ్రౌజ్ చేసుకునేందుకు కొత్త అజ్ఞాత విండోను తెరవడానికి ముందు 'Tab'ను నొక్కి, ఆపై 'Enter'ను నొక్కండి</translation>
 <translation id="8738058698779197622">సురక్షిత కనెక్షన్‌ను ఏర్పాటు చేయడానికి, మీ గడియారాన్ని సరైన సమయానికి సెట్ చేయాలి. ఎందుకంటే వెబ్‌సైట్‌లు వాటిని గుర్తించడానికి ఉపయోగించే సర్టిఫికెట్‌లు నిర్దిష్ట కాలవ్యవధులలో మాత్రమే చెల్లుబాటు అవుతాయి. మీ పరికరం యొక్క గడియారం సమయం తప్పుగా ఉన్నందున, Chromium ఈ సర్టిఫికెట్‌లను ధృవీకరించలేకపోయింది.</translation>
-<translation id="8740359287975076522"><ph name="HOST_NAME" /> &lt;abbr id="dnsDefinition"&gt;DNS చిరునామా&lt;/abbr&gt; కనుగొనబడలేదు. సమస్యను నిర్ధారిస్తోంది.</translation>
+<translation id="8740359287975076522"><ph name="HOST_NAME" /> &lt;abbr id="dnsDefinition"&gt;DNS అడ్రస్‌&lt;/abbr&gt; కనుగొనబడలేదు. సమస్యను నిర్ధారిస్తోంది.</translation>
 <translation id="8742371904523228557"><ph name="ORIGIN" /> కోసం మీ కోడ్ <ph name="ONE_TIME_CODE" /></translation>
 <translation id="874918643257405732">ఈ ట్యాబ్‌ను బుక్‌మార్క్ చేయి</translation>
 <translation id="8751426954251315517">దయచేసి తర్వాత మళ్లీ ప్రయత్నించండి</translation>
@@ -2206,12 +2206,12 @@
 <translation id="8792621596287649091">మీరు మీ <ph name="ORG_NAME" /> ఖాతాకు యాక్సెస్‌ను కోల్పోవచ్చు. లేదా గుర్తింపు స‌మాచారం చోరీకి గురి కావచ్చు. మీ పాస్‌వర్డ్‌ను ఇప్పుడే రీసెట్ చేయాల్సిందిగా Chromium సిఫార్సు చేస్తోంది.</translation>
 <translation id="8793655568873652685"><ph name="ENROLLMENT_DOMAIN" />, మీ బ్రౌజర్‌లో Chrome Enterprise కనెక్టర్‌లను ఆన్ చేసింది. ఈ కనెక్టర్‌లకు మీ డేటాలో కొంత డేటాకు యాక్సెస్ ఉంది.</translation>
 <translation id="8798099450830957504">డిఫాల్ట్</translation>
-<translation id="8805819170075074995">జాబితా నమోదు "<ph name="LANGUAGE_ID" />": నమోదు విస్మరించబడింది, ఎందుకంటే ఇది SpellcheckLanguage విధానంలో కూడా ఉంది.</translation>
+<translation id="8805819170075074995">లిస్ట్‌ నమోదు "<ph name="LANGUAGE_ID" />": నమోదు విస్మరించబడింది, ఎందుకంటే ఇది SpellcheckLanguage విధానంలో కూడా ఉంది.</translation>
 <translation id="8807160976559152894">ప్రతి పేజీ తర్వాత కత్తిరించండి</translation>
 <translation id="8816395686387277279"><ph name="UPDATE_CHROME_FOCUSED_FRIENDLY_MATCH_TEXT" />, మీ Chrome సెట్టింగ్‌ల నుండి Chromeని అప్‌డేట్ చేయడానికి 'Tab' నొక్కి, ఆపై 'Enter'ను నొక్కండి</translation>
 <translation id="8820817407110198400">Bookmarks</translation>
 <translation id="883848425547221593">ఇతర బుక్‌మార్క్‌లు:</translation>
-<translation id="884264119367021077">షిప్పింగ్ చిరునామా</translation>
+<translation id="884264119367021077">షిప్పింగ్ అడ్రస్‌</translation>
 <translation id="884923133447025588">ఏ రద్దు విధానం కనుగొనబడలేదు.</translation>
 <translation id="885730110891505394">Googleతో భాగస్వామ్యం</translation>
 <translation id="8858065207712248076">మీరు మీ <ph name="BEGIN_BOLD" /><ph name="ORG_NAME" /><ph name="END_BOLD" /> పాస్‌వర్డ్‌ని ఇతర సైట్‌లలో తిరిగి ఉపయోగించినట్లయితే దీనిని రీసెట్ చేయాల్సిందిగా Chrome సిఫార్సు చేస్తోంది.</translation>
@@ -2240,13 +2240,13 @@
 <translation id="8957210676456822347">క్యాప్టివ్ పోర్టల్ ప్రామాణీకరణ</translation>
 <translation id="8962950042226115166">అనుమానాస్పద సైట్</translation>
 <translation id="8963117664422609631">సైట్ సెట్టింగ్‌లకు వెళ్లండి</translation>
-<translation id="8963213021028234748"><ph name="MARKUP_1" />సూచనలు:<ph name="MARKUP_2" />మీకు డేటా కనెక్షన్ ఉందని నిర్ధారించుకోండి<ph name="MARKUP_3" />ఈ వెబ్‌పేజీని తర్వాత మళ్లీ లోడ్ చేయండి<ph name="MARKUP_4" />మీరు నమోదు చేసిన చిరునామా తనిఖీ చేయండి<ph name="MARKUP_5" /></translation>
+<translation id="8963213021028234748"><ph name="MARKUP_1" />సూచనలు:<ph name="MARKUP_2" />మీకు డేటా కనెక్షన్ ఉందని నిర్ధారించుకోండి<ph name="MARKUP_3" />ఈ వెబ్‌పేజీని తర్వాత మళ్లీ లోడ్ చేయండి<ph name="MARKUP_4" />మీరు నమోదు చేసిన అడ్రస్‌ తనిఖీ చేయండి<ph name="MARKUP_5" /></translation>
 <translation id="8968766641738584599">కార్డ్‌ని సేవ్ చేయండి</translation>
 <translation id="8971063699422889582">సర్వర్ ప్రమాణపత్రం గడువు ముగిసింది.</translation>
-<translation id="8975012916872825179">ఫోన్ నంబర్‌లు, ఇమెయిల్ చిరునామాలు మరియు బట్వాడా చిరునామాలు లాంటి సమాచారం ఉంటుంది</translation>
+<translation id="8975012916872825179">ఫోన్ నంబర్‌లు, ఇమెయిల్ అడ్రస్‌లు మరియు బట్వాడా అడ్రస్‌లు లాంటి సమాచారం ఉంటుంది</translation>
 <translation id="8975263830901772334">మీరు ముద్రించే ఫైళ్ల పేర్లు</translation>
 <translation id="8978053250194585037">Google సురక్షిత బ్రౌజింగ్ ఇటీవల <ph name="SITE" />లో <ph name="BEGIN_LINK" />ఫిషింగ్‌ని గుర్తించింది<ph name="END_LINK" />. ఫిషింగ్ సైట్‌లు వేరే వెబ్‌సైట్‌ల వలె ప్రవర్తించడం ద్వారా మిమ్మల్ని మాయ చేయవచ్చు.</translation>
-<translation id="8983003182662520383">Google Payని ఉపయోగిస్తున్న చెల్లింపు పద్ధతులు మరియు చిరునామాలు</translation>
+<translation id="8983003182662520383">Google Payని ఉపయోగిస్తున్న చెల్లింపు పద్ధతులు మరియు అడ్రస్‌లు</translation>
 <translation id="8983369100812962543">మీరు ఇప్పుడు యాప్ పరిమాణం మార్చవచ్చు</translation>
 <translation id="8987927404178983737">నెల</translation>
 <translation id="8989148748219918422"><ph name="ORGANIZATION" /> [<ph name="COUNTRY" />]</translation>
@@ -2258,7 +2258,7 @@
 <translation id="9004367719664099443">VR సెషన్ ప్రోగ్రెస్‌లో ఉంది</translation>
 <translation id="9005998258318286617">PDF పత్రాన్ని లోడ్ చేయడం విఫలమైంది.</translation>
 <translation id="9008201768610948239">విస్మరించు</translation>
-<translation id="9020200922353704812">కార్డ్ బిల్లింగ్ చిరునామా అవసరం</translation>
+<translation id="9020200922353704812">కార్డ్ బిల్లింగ్ అడ్రస్‌ అవసరం</translation>
 <translation id="9020542370529661692">ఈ పేజీ <ph name="TARGET_LANGUAGE" />కి అనువదించబడింది</translation>
 <translation id="9020742383383852663">A8</translation>
 <translation id="9025348182339809926">(చెల్లదు)</translation>
@@ -2274,14 +2274,14 @@
 <translation id="9062620674789239642">ఇది తరలించబడి గానీ, ఎడిట్ చేసి గానీ లేదా తొలగించబడి ఉండవచ్చు.</translation>
 <translation id="9065203028668620118">ఎడిట్</translation>
 <translation id="9065745800631924235">చరిత్ర నుండి <ph name="TEXT" /> శోధన</translation>
-<translation id="9069693763241529744">పొడిగింపు ద్వారా బ్లాక్ చేయబడింది</translation>
+<translation id="9069693763241529744">ఎక్స్‌టెన్షన్‌ ద్వారా బ్లాక్ చేయబడింది</translation>
 <translation id="9078964945751709336">మరింత సమాచారం ఆవశ్యకం</translation>
 <translation id="9080712759204168376">ఆర్డర్ సారాంశం</translation>
 <translation id="9089260154716455634">తీరిక వేళల విధానం:</translation>
 <translation id="9095388113577226029">మరిన్ని భాషలు...</translation>
 <translation id="9101630580131696064">ట్రే 1</translation>
 <translation id="9103872766612412690"><ph name="SITE" /> సాధారణంగా మీ సమాచారాన్ని రక్షించడానికి ఎన్‌క్రిప్ష‌న్‌ను ఉపయోగిస్తుంది. Chromium ఈసారి <ph name="SITE" />‌ను కనెక్ట్ చేయడానికి ప్రయత్నించినప్పుడు, వెబ్‌సైట్ అసాధారణ మరియు తప్పు ఆధారాలు అని ప్రతిస్పందించింది. దాడి చేసే వ్యక్తి <ph name="SITE" />గా వ్యవహరించి మోసగించడానికి ప్రయత్నిస్తున్నప్పుడు లేదా Wi-Fi సైన్-ఇన్ స్క్రీన్ కనెక్షన్‌కు అంతరాయం కలిగించినప్పుడు ఇలా జరగవచ్చు. ఎలాంటి డేటా వినిమయం సంభవించక ముందే Chromium, కనెక్షన్‌ను ఆపివేసినందున మీ సమాచారం ఇప్పటికీ సురక్షితంగానే ఉంది.</translation>
-<translation id="9106062320799175032">బిల్లింగ్ చిరునామాను జోడించండి</translation>
+<translation id="9106062320799175032">బిల్లింగ్ అడ్రస్‌ను జోడించండి</translation>
 <translation id="9107467864910557787"><ph name="MANAGER" />, మీ బ్రౌజర్‌ను మేనేజ్ చేస్తోంది</translation>
 <translation id="91108059142052966">గోప్యమైన కంటెంట్ కనిపించినప్పుడు <ph name="APPLICATION_TITLE" />తో స్క్రీన్ షేర్ చేయడాన్ని అడ్మినిస్ట్రేటర్ పాలసీ డిజేబుల్ చేస్తుంది</translation>
 <translation id="9114524666733003316">కార్డ్‌ నిర్ధారించబడుతోంది...</translation>
@@ -2292,7 +2292,7 @@
 <translation id="9128016270925453879">పాలసీలు లోడ్ చేయబడ్డాయి</translation>
 <translation id="9128870381267983090">నెట్‌వర్క్‌కి కనెక్ట్ చేయి</translation>
 <translation id="9137013805542155359">అసలును చూపించు</translation>
-<translation id="9141013498910525015">చిరునామాలను నిర్వహించండి</translation>
+<translation id="9141013498910525015">అడ్రస్‌లను నిర్వహించండి</translation>
 <translation id="9144951720726881238">గడువు తేదీ:</translation>
 <translation id="9148088599418889305">షిప్పింగ్ పద్ధతిని ఎంచుకోండి</translation>
 <translation id="9148507642005240123">&amp;సవరించడాన్ని రద్దు చేయి</translation>
@@ -2333,7 +2333,7 @@
 <translation id="961663415146723894">దిగువ భాగంలో బైండ్</translation>
 <translation id="962484866189421427">ఈ కంటెంట్ వేరేవాటిలా కనిపించే మోసపూరిత యాప్‌లను ఇన్‌స్టాల్ చేయడానికి ప్రయత్నించవచ్చు లేదా మిమ్మల్ని ట్రాక్ చేయడానికి ఉపయోగించే డేటాని సేకరించవచ్చు. <ph name="BEGIN_LINK" />అయినప్పటికీ, చూపించు<ph name="END_LINK" /></translation>
 <translation id="969892804517981540">అధికారిక బిల్డ్</translation>
-<translation id="973773823069644502">డెలివరీ చిరునామాను జోడించండి</translation>
+<translation id="973773823069644502">డెలివరీ అడ్రస్‌ను జోడించండి</translation>
 <translation id="975560348586398090">{COUNT,plural, =0{ఏమీ లేవు}=1{1 అంశం}other{# అంశాలు}}</translation>
 <translation id="981121421437150478">ఆఫ్‌లైన్</translation>
 <translation id="984275831282074731">పేమెంట్ ఆప్షన్‌లు</translation>
@@ -2342,7 +2342,7 @@
 <translation id="985956168329721395">Prc-32K</translation>
 <translation id="987264212798334818">సాధారణం</translation>
 <translation id="988159990683914416">డెవలపర్ బిల్డ్</translation>
-<translation id="989988560359834682">చిరునామాను సవరించు</translation>
+<translation id="989988560359834682">అడ్రస్‌ను సవరించు</translation>
 <translation id="992115559265932548"><ph name="MICROSOFT_ACTIVE_DIRECTORY" /></translation>
 <translation id="992256792861109788">గులాబి రంగు</translation>
 <translation id="992432478773561401">మీ కంప్యూటర్ లేదా నెట్‌వర్క్‌లో "<ph name="SOFTWARE_NAME" />" సరిగ్గా ఇన్‌స్టాల్ కాలేదు:
diff --git a/components/strings/components_strings_uz.xtb b/components/strings/components_strings_uz.xtb
index 61075f05..cbb94f3 100644
--- a/components/strings/components_strings_uz.xtb
+++ b/components/strings/components_strings_uz.xtb
@@ -271,6 +271,7 @@
 <translation id="1838374766361614909">Qidiruv shartlarini tozalash</translation>
 <translation id="1839551713262164453">Parametr qiymatlari tekshiruvida xato yuz berdi</translation>
 <translation id="1842969606798536927">To‘lash</translation>
+<translation id="1856713167556118146">Inkognito nima qila olmaydi</translation>
 <translation id="1871208020102129563">Proksi-serverlar PAC fayli manzil orqali emas, o‘zgarmas manzil orqali sozlangan.</translation>
 <translation id="1871284979644508959">Kiritilishi shart</translation>
 <translation id="1875512691959384712">Google Forms</translation>
@@ -1014,6 +1015,7 @@
 <translation id="4465818729556336129">Bu maxfiy hujjat va uning chop etilishi administrator tomonidan tavsiya etilmaydi.</translation>
 <translation id="4476953670630786061">Bu shakl xavfsiz emas. Avtomatik kiritish faolsizlantirildi.</translation>
 <translation id="4477350412780666475">Keyingi trek</translation>
+<translation id="4481251927743463293">Inkognito nimalarga qodir</translation>
 <translation id="4481394504112738036">Maxfiy fayl</translation>
 <translation id="4482953324121162758">Bu sayt tarjima qilinmaydi</translation>
 <translation id="4490717597759821841">A7</translation>
@@ -1114,10 +1116,17 @@
 <translation id="4819347708020428563">Izohlar standart shaklda tahrirlansinmi?</translation>
 <translation id="4825496307559726072"><ph name="CREATE_GOOGLE_SHEET_FOCUSED_FRIENDLY_MATCH_TEXT" />, yangi Google Sheetda yangi jadvalni tez yaratish uchun avval Tab, keyin Enter tugmasini bosing</translation>
 <translation id="4825507807291741242">Qudratli</translation>
+<translation id="4827402517081186284">Inkognito internetda toʻliq koʻrinmaslikni bermaydi:
+        <ph name="BEGIN_LIST" />
+          <ph name="LIST_ITEM" />Saytlarga tashriflaringiz koʻrinadi<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />Ishxona va maktablarda brauzer tarixi kuzatilishi mumkin<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />Internet provayderlari ham mijozlarining internet trafigini kuzatishi mumkin<ph name="END_LIST_ITEM" />
+        <ph name="END_LIST" /></translation>
 <translation id="4838327282952368871">Xayolparast</translation>
 <translation id="484462545196658690">Avto</translation>
 <translation id="4850886885716139402">Ko‘rish</translation>
 <translation id="485316830061041779">Nemis</translation>
+<translation id="4853901935952445031">Bu saytda 2022-yilning fevral oyidan keyin U2F API taʼminoti toʻxtatiladi. Bu sizning saytingiz boʻlsa, undagi hisob tekshiruvini Web Authentication API taʼminotiga almashtiring.</translation>
 <translation id="4854362297993841467">Bu yetkazib berish usuli hozirda ishlamayapti. Boshqa usuldan foydalaning.</translation>
 <translation id="4854853140771946034">Google Keepda yangi qaydni tez yaratish</translation>
 <translation id="4876188919622883022">Soddalashgan shaklda</translation>
@@ -1639,6 +1648,7 @@
 <translation id="6757797048963528358">Qurilma uyqu rejimiga o‘tib qoldi.</translation>
 <translation id="6767985426384634228">Manzil yangilansinmi?</translation>
 <translation id="6768213884286397650">Hagaki (Postcard)</translation>
+<translation id="6774185088257932239">Inkognito haqida <ph name="BEGIN_LINK" />batafsil<ph name="END_LINK" /></translation>
 <translation id="6775759552199460396">JIS B2</translation>
 <translation id="67862343314499040">Siyohrang</translation>
 <translation id="6786747875388722282">Kengaytmalar</translation>
@@ -1686,6 +1696,7 @@
 <translation id="6965382102122355670">OK</translation>
 <translation id="6965978654500191972">Qurilma</translation>
 <translation id="696703987787944103">Perseptsion</translation>
+<translation id="6968269510885595029">Elektron kalitdan foydalanish</translation>
 <translation id="6970216967273061347">Tuman</translation>
 <translation id="6971439137020188025">Google Slidesda yangi taqdimotni tez yaratish</translation>
 <translation id="6972629891077993081">HID qurilmalar</translation>
@@ -1752,6 +1763,7 @@
 <translation id="7210863904660874423"><ph name="HOST_NAME" /> sayti xavfsizlik standartlariga muvofiq kelmadi.</translation>
 <translation id="7210993021468939304">Konteyner ichidagi Linux jarayonlari va Linux ilovalarining konteyner ichida oʻrnatilishi va ishga tushirilishi</translation>
 <translation id="721197778055552897">Bu muammo haqidagi <ph name="BEGIN_LINK" />tafsilotlar<ph name="END_LINK" />.</translation>
+<translation id="7215025035562547931">Aniqlikka vaqt ajrating</translation>
 <translation id="7217745192097460130">Xaridlarni tasdiqlash va yakunlashda Touch ID ishlatilsinmi?</translation>
 <translation id="7219179957768738017">Bu ulanishda <ph name="SSL_VERSION" /> protokoli ishlatilmoqda.</translation>
 <translation id="7220786058474068424">Amalga oshirilmoqda</translation>
@@ -2088,6 +2100,12 @@
 <translation id="8307888238279532626">Oʻrnatilgan ilovalar va ularning qanday ishlatilishi</translation>
 <translation id="831207732689920588">Bu sahifa Chrome tomonidan shubhali deb topildi.</translation>
 <translation id="831997045666694187">Kechqurun</translation>
+<translation id="8328484624016508118">Barcha Inkognito varaqlar yopilganidan keyin Chrome quyidagilarni tozalaydi:
+        <ph name="BEGIN_LIST" />
+          <ph name="LIST_ITEM" />Bu qurilmadagi bauzer faoliyati tarixi<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />Bu qurilmadagi qidiruv tarixi<ph name="END_LIST_ITEM" />
+          <ph name="LIST_ITEM" />Shakllarda toʻldirilgan axborot<ph name="END_LIST_ITEM" />
+        <ph name="END_LIST" /></translation>
 <translation id="8332188693563227489"><ph name="HOST_NAME" /> saytiga kirish taqiqlangan</translation>
 <translation id="833262891116910667">Ajratib belgilash</translation>
 <translation id="8339163506404995330"><ph name="LANGUAGE" /> tilidagi sahifalar tarjima qilinmaydi</translation>
diff --git a/components/webapps/browser/android/add_to_homescreen_data_fetcher.cc b/components/webapps/browser/android/add_to_homescreen_data_fetcher.cc
index 132b738..43fc407 100644
--- a/components/webapps/browser/android/add_to_homescreen_data_fetcher.cc
+++ b/components/webapps/browser/android/add_to_homescreen_data_fetcher.cc
@@ -121,7 +121,7 @@
     content::WebContents* web_contents,
     int data_timeout_ms,
     Observer* observer)
-    : content::WebContentsObserver(web_contents),
+    : web_contents_(web_contents->GetWeakPtr()),
       installable_manager_(InstallableManager::FromWebContents(web_contents)),
       observer_(observer),
       shortcut_info_(GetShortcutUrl(web_contents)),
@@ -147,7 +147,7 @@
 void AddToHomescreenDataFetcher::OnDidGetWebPageMetadata(
     mojo::AssociatedRemote<mojom::WebPageMetadataAgent> metadata_agent,
     mojom::WebPageMetadataPtr web_page_metadata) {
-  if (!web_contents())
+  if (!web_contents_)
     return;
 
   // Note, the title should have already been clipped on the renderer side.
@@ -160,7 +160,7 @@
 
   // Set the user-editable title to be the page's title.
   shortcut_info_.user_title = web_page_metadata->application_name.empty()
-                                  ? web_contents()->GetTitle()
+                                  ? web_contents_->GetTitle()
                                   : web_page_metadata->application_name;
   shortcut_info_.short_name = shortcut_info_.user_title;
   shortcut_info_.name = shortcut_info_.user_title;
@@ -214,7 +214,7 @@
   RecordAddToHomescreenDialogDuration(data_timeout_ms_);
   weak_ptr_factory_.InvalidateWeakPtrs();
 
-  if (!web_contents())
+  if (!web_contents_)
     return;
 
   observer_->OnUserTitleAvailable(shortcut_info_.user_title, shortcut_info_.url,
@@ -225,7 +225,7 @@
 
 void AddToHomescreenDataFetcher::OnDidGetManifestAndIcons(
     const InstallableData& data) {
-  if (!web_contents())
+  if (!web_contents_)
     return;
 
   is_waiting_for_manifest_ = false;
@@ -272,7 +272,7 @@
     const InstallableData& data) {
   StopTimer();
 
-  if (!web_contents())
+  if (!web_contents_)
     return;
 
   bool webapk_compatible =
@@ -302,7 +302,7 @@
 }
 
 void AddToHomescreenDataFetcher::FetchFavicon() {
-  if (!web_contents())
+  if (!web_contents_)
     return;
 
   // Grab the best, largest icon we can find to represent this bookmark.
@@ -316,7 +316,7 @@
   // otherwise using the largest icon among all available icons.
   int threshold_to_get_any_largest_icon =
       WebappsIconUtils::GetIdealHomescreenIconSizeInPx() - 1;
-  favicon::GetLargeFaviconProvider(web_contents()->GetBrowserContext())
+  favicon::GetLargeFaviconProvider(web_contents_->GetBrowserContext())
       ->GetLargestRawFaviconForPageURL(
           shortcut_info_.url, icon_types, threshold_to_get_any_largest_icon,
           base::BindOnce(&AddToHomescreenDataFetcher::OnFaviconFetched,
@@ -328,7 +328,7 @@
     const favicon_base::FaviconRawBitmapResult& bitmap_result) {
   DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
 
-  if (!web_contents())
+  if (!web_contents_)
     return;
 
   shortcut_info_.best_primary_icon_url = bitmap_result.icon_url;
@@ -370,7 +370,7 @@
                                                const SkBitmap& icon_for_view,
                                                bool is_icon_generated) {
   DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
-  if (!web_contents())
+  if (!web_contents_)
     return;
 
   if (use_for_launcher)
diff --git a/components/webapps/browser/android/add_to_homescreen_data_fetcher.h b/components/webapps/browser/android/add_to_homescreen_data_fetcher.h
index 370a436..ae39fe5 100644
--- a/components/webapps/browser/android/add_to_homescreen_data_fetcher.h
+++ b/components/webapps/browser/android/add_to_homescreen_data_fetcher.h
@@ -13,7 +13,7 @@
 #include "base/timer/timer.h"
 #include "components/webapps/browser/android/shortcut_info.h"
 #include "components/webapps/common/web_page_metadata_agent.mojom.h"
-#include "content/public/browser/web_contents_observer.h"
+#include "content/public/browser/web_contents.h"
 #include "mojo/public/cpp/bindings/associated_remote.h"
 #include "third_party/skia/include/core/SkBitmap.h"
 
@@ -28,7 +28,7 @@
 
 // Aysnchronously fetches and processes data needed to create a shortcut for an
 // Android Home screen launcher.
-class AddToHomescreenDataFetcher : public content::WebContentsObserver {
+class AddToHomescreenDataFetcher {
  public:
   class Observer {
    public:
@@ -44,7 +44,7 @@
                                  const SkBitmap& primary_icon) = 0;
 
    protected:
-    virtual ~Observer() {}
+    virtual ~Observer() = default;
   };
 
   // Initialize the fetcher by requesting the information about the page from
@@ -54,8 +54,11 @@
   AddToHomescreenDataFetcher(content::WebContents* web_contents,
                              int data_timeout_ms,
                              Observer* observer);
+  AddToHomescreenDataFetcher(const AddToHomescreenDataFetcher&) = delete;
+  AddToHomescreenDataFetcher& operator=(const AddToHomescreenDataFetcher&) =
+      delete;
 
-  ~AddToHomescreenDataFetcher() override;
+  ~AddToHomescreenDataFetcher();
 
   // IPC message received when the initialization is finished.
   void OnDidGetWebPageMetadata(
@@ -63,6 +66,7 @@
       mojom::WebPageMetadataPtr web_page_metadata);
 
   // Accessors, etc.
+  content::WebContents* web_contents() { return web_contents_.get(); }
   const SkBitmap& primary_icon() const { return primary_icon_; }
   ShortcutInfo& shortcut_info() { return shortcut_info_; }
   bool has_maskable_primary_icon() const { return has_maskable_primary_icon_; }
@@ -95,6 +99,8 @@
                      const SkBitmap& icon_for_view,
                      bool is_icon_generated);
 
+  base::WeakPtr<content::WebContents> web_contents_;
+
   InstallableManager* installable_manager_;
   Observer* observer_;
 
@@ -113,10 +119,6 @@
   bool is_waiting_for_manifest_;
 
   base::WeakPtrFactory<AddToHomescreenDataFetcher> weak_ptr_factory_{this};
-
-  AddToHomescreenDataFetcher(const AddToHomescreenDataFetcher&) = delete;
-  AddToHomescreenDataFetcher& operator=(const AddToHomescreenDataFetcher&) =
-      delete;
 };
 
 }  // namespace webapps
diff --git a/content/browser/back_forward_cache_browsertest.cc b/content/browser/back_forward_cache_browsertest.cc
index 5d9c09b..406ed5b 100644
--- a/content/browser/back_forward_cache_browsertest.cc
+++ b/content/browser/back_forward_cache_browsertest.cc
@@ -1952,9 +1952,10 @@
   // 3. Navigate from an uncacheable to a cached page page (B->A).
   web_contents()->GetController().GoBack();
   EXPECT_TRUE(WaitForLoadStop(shell()->web_contents()));
-  // Note: We still have a transition proxy that will be used to perform the
-  // frame swap. It gets deleted with rfh_b below.
-  EXPECT_EQ(3u, render_frame_host_manager()->GetProxyCount());
+  // Note: Since we put the page B into BackForwardCache briefly, we do not
+  // create a transition proxy. So there should be only proxies for i.com and
+  // j.com.
+  EXPECT_EQ(2u, render_frame_host_manager()->GetProxyCount());
 
   // Page B should be deleted (not cached).
   delete_observer_rfh_b.WaitUntilDeleted();
@@ -2832,13 +2833,12 @@
   web_contents()->GetController().GoBack();
   EXPECT_TRUE(WaitForLoadStop(shell()->web_contents()));
 
-  // All features (sticky and non-sticky) will be tracked, because they're
-  // tracked in RenderFrameHostManager::UnloadOldFrame.
+  // Only sticky features are recorded because they're tracked in
+  // RenderFrameHostManager::UnloadOldFrame.
   ExpectNotRestored(
       {BackForwardCacheMetrics::NotRestoredReason::kBlocklistedFeatures},
-      {blink::scheduler::WebSchedulerTrackedFeature::kBroadcastChannel,
-       blink::scheduler::WebSchedulerTrackedFeature::kKeyboardLock},
-      {}, {}, FROM_HERE);
+      {blink::scheduler::WebSchedulerTrackedFeature::kKeyboardLock}, {}, {},
+      FROM_HERE);
 }
 
 // Tests which blocklisted features are tracked in the metrics when we used
@@ -2883,16 +2883,15 @@
   EXPECT_TRUE(WaitForLoadStop(shell()->web_contents()));
 
   if (AreStrictSiteInstancesEnabled()) {
-    // All features (sticky and non-sticky) will be tracked, because they're
-    // tracked in RenderFrameHostManager::UnloadOldFrame.
+    // Only sticky features are recorded because they're tracked in
+    // RenderFrameHostManager::UnloadOldFrame.
     ExpectNotRestored(
         {BackForwardCacheMetrics::NotRestoredReason::
              kRelatedActiveContentsExist,
          BackForwardCacheMetrics::NotRestoredReason::kBlocklistedFeatures,
          BackForwardCacheMetrics::NotRestoredReason::
              kBrowsingInstanceNotSwapped},
-        {blink::scheduler::WebSchedulerTrackedFeature::kBroadcastChannel,
-         blink::scheduler::WebSchedulerTrackedFeature::kKeyboardLock},
+        {blink::scheduler::WebSchedulerTrackedFeature::kKeyboardLock},
         {ShouldSwapBrowsingInstance::kNo_NotNeededForBackForwardCache}, {},
         FROM_HERE);
 
@@ -3582,23 +3581,8 @@
                   "window.visibilitychange", "window.pageshow.persisted"));
 }
 
-class BackForwardCacheBrowserTestShouldConsiderPagehideForEligibility
-    : public BackForwardCacheBrowserTest {
- public:
-  BackForwardCacheBrowserTestShouldConsiderPagehideForEligibility() = default;
-  ~BackForwardCacheBrowserTestShouldConsiderPagehideForEligibility() override =
-      default;
-
- protected:
-  void SetUpCommandLine(base::CommandLine* command_line) override {
-    check_eligibility_after_pagehide_ = true;
-    BackForwardCacheBrowserTest::SetUpCommandLine(command_line);
-  }
-};
-
-IN_PROC_BROWSER_TEST_F(
-    BackForwardCacheBrowserTestShouldConsiderPagehideForEligibility,
-    DoesNotCacheIfBroadcastChannelStillOpen) {
+IN_PROC_BROWSER_TEST_F(BackForwardCacheBrowserTest,
+                       DoesNotCacheIfBroadcastChannelStillOpen) {
   ASSERT_TRUE(CreateHttpsServer()->Start());
 
   // 1) Navigate to an empty page.
@@ -3631,9 +3615,8 @@
       FROM_HERE);
 }
 
-IN_PROC_BROWSER_TEST_F(
-    BackForwardCacheBrowserTestShouldConsiderPagehideForEligibility,
-    CacheIfBroadcastChannelIsClosedInPagehide) {
+IN_PROC_BROWSER_TEST_F(BackForwardCacheBrowserTest,
+                       CacheIfBroadcastChannelIsClosedInPagehide) {
   ASSERT_TRUE(CreateHttpsServer()->Start());
 
   // 1) Navigate to an empty page.
@@ -3664,7 +3647,7 @@
 // ineligible for bfcache in pagehide handler, so Page A stays in bfcache
 // without being evicted even after the navigation to Page C.
 IN_PROC_BROWSER_TEST_F(
-    BackForwardCacheBrowserTestShouldConsiderPagehideForEligibility,
+    BackForwardCacheBrowserTest,
     PagehideMakesPageIneligibleForBackForwardCacheAndNotCountedInCacheSize) {
   ASSERT_TRUE(CreateHttpsServer()->Start());
   GURL url_a(https_server()->GetURL("a.com", "/title1.html"));
@@ -3721,9 +3704,8 @@
 #define MAYBE_WebSocketCachedIfClosed WebSocketCachedIfClosed
 #endif
 // Pages with WebSocket should be cached if the connection is closed.
-IN_PROC_BROWSER_TEST_F(
-    BackForwardCacheBrowserTestShouldConsiderPagehideForEligibility,
-    MAYBE_WebSocketCachedIfClosed) {
+IN_PROC_BROWSER_TEST_F(BackForwardCacheBrowserTest,
+                       MAYBE_WebSocketCachedIfClosed) {
   net::SpawnedTestServer ws_server(net::SpawnedTestServer::TYPE_WS,
                                    net::GetWebSocketTestDataDirectory());
   ASSERT_TRUE(ws_server.Start());
diff --git a/content/browser/loader/navigation_early_hints_browsertest.cc b/content/browser/loader/navigation_early_hints_browsertest.cc
index f553f8a..ef4c8fe 100644
--- a/content/browser/loader/navigation_early_hints_browsertest.cc
+++ b/content/browser/loader/navigation_early_hints_browsertest.cc
@@ -175,9 +175,8 @@
   }
 
   HeaderField CreatePreloadLinkForStylesheet() {
-    return HeaderField("link",
-                       base::StringPrintf("<%s>; rel=preload; as=stylesheet",
-                                          kHintedStylesheetPath));
+    return HeaderField("link", base::StringPrintf("<%s>; rel=preload; as=style",
+                                                  kHintedStylesheetPath));
   }
 
   void RegisterResponse(const ResponseEntry& entry) {
diff --git a/content/browser/renderer_host/back_forward_cache_impl.cc b/content/browser/renderer_host/back_forward_cache_impl.cc
index ce77a18..13ee64e 100644
--- a/content/browser/renderer_host/back_forward_cache_impl.cc
+++ b/content/browser/renderer_host/back_forward_cache_impl.cc
@@ -785,13 +785,9 @@
   WebSchedulerTrackedFeatures banned_features =
       Intersection(GetDisallowedFeatures(rfh, RequestedFeatures::kAll),
                    rfh->scheduler_tracked_features());
-  if (!banned_features.Empty()) {
-    bool should_ignore_features_for_now =
-        CheckFeatureUsageOnlyAfterAck() &&
-        !rfh->render_view_host()->DidReceiveBackForwardCacheAck();
-    if (!ShouldIgnoreBlocklists() && !should_ignore_features_for_now) {
-      result->NoDueToFeatures(banned_features);
-    }
+  if (!banned_features.Empty() && !ShouldIgnoreBlocklists() &&
+      rfh->render_view_host()->DidReceiveBackForwardCacheAck()) {
+    result->NoDueToFeatures(banned_features);
   }
 
   // Do not cache if we have navigations in any of the subframes.
@@ -1143,14 +1139,6 @@
   return true;
 }
 
-bool BackForwardCacheImpl::CheckFeatureUsageOnlyAfterAck() {
-  if (!IsBackForwardCacheEnabled())
-    return false;
-
-  return base::GetFieldTrialParamByFeatureAsBool(
-      features::kBackForwardCache, "check_eligibility_after_pagehide", false);
-}
-
 bool BackForwardCacheImpl::IsMediaSessionImplOnServiceCreatedAllowed() {
   return SupportedFeatures().Has(
       WebSchedulerTrackedFeature::kMediaSessionImplOnServiceCreated);
diff --git a/content/browser/renderer_host/back_forward_cache_impl.h b/content/browser/renderer_host/back_forward_cache_impl.h
index 60fdd3d..88586dc 100644
--- a/content/browser/renderer_host/back_forward_cache_impl.h
+++ b/content/browser/renderer_host/back_forward_cache_impl.h
@@ -247,14 +247,6 @@
   // URL escaping.
   bool IsQueryAllowed(const GURL& current_url);
 
-  // This is a wrapper around the flag that indicates whether or not the
-  // feature usage should be checked only after receiving an ack from the
-  // renderer process to ensure that the features cleaned up in pagehide and
-  // other event handlers are acoounted for.
-  // TODO(crbug.com/1129331): Remove this when we implement the logic to
-  // consider cache size limit.
-  bool CheckFeatureUsageOnlyAfterAck();
-
   // Called just before commit for a navigation that's served out of the back
   // forward cache. This method will disable eviction in renderers and invoke
   // |done_callback| when they are ready for the navigation to be committed.
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index a9860b9..36a63aa 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -3351,11 +3351,6 @@
 
   command_line->AppendSwitchASCII(switches::kRendererClientId,
                                   std::to_string(GetID()));
-
-  if (SiteIsolationPolicy::UseDedicatedProcessesForAllSites()) {
-    // Disable V8 code mitigations if renderer processes are site-isolated.
-    command_line->AppendSwitch(switches::kNoV8UntrustedCodeMitigations);
-  }
 }
 
 void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
diff --git a/content/public/common/content_switches.cc b/content/public/common/content_switches.cc
index 244cada..e4a9307 100644
--- a/content/public/common/content_switches.cc
+++ b/content/public/common/content_switches.cc
@@ -615,9 +615,6 @@
 // zygote to work.
 const char kNoZygote[] = "no-zygote";
 
-// Disables V8 mitigations for executing untrusted code.
-const char kNoV8UntrustedCodeMitigations[] = "no-v8-untrusted-code-mitigations";
-
 // Number of worker threads used to rasterize content.
 const char kNumRasterThreads[]              = "num-raster-threads";
 
diff --git a/content/public/common/content_switches.h b/content/public/common/content_switches.h
index ff10b14..04ff249 100644
--- a/content/public/common/content_switches.h
+++ b/content/public/common/content_switches.h
@@ -175,7 +175,6 @@
 CONTENT_EXPORT extern const char kMojoLocalStorage[];
 CONTENT_EXPORT extern const char kNoUnsandboxedZygote[];
 CONTENT_EXPORT extern const char kNoZygote[];
-extern const char kNoV8UntrustedCodeMitigations[];
 CONTENT_EXPORT extern const char kNumRasterThreads[];
 CONTENT_EXPORT extern const char kPpapiInProcess[];
 extern const char kPpapiPluginLauncher[];
diff --git a/content/public/test/test_navigation_observer.cc b/content/public/test/test_navigation_observer.cc
index da3803ea..3e192ca 100644
--- a/content/public/test/test_navigation_observer.cc
+++ b/content/public/test/test_navigation_observer.cc
@@ -276,10 +276,17 @@
                               ? request->navigation_type()
                               : NAVIGATION_TYPE_UNKNOWN;
 
+  // Allow extending classes to fetch data available via navigation_handle.
+  NavigationOfInterestDidFinish(navigation_handle);
+
   if (wait_event_ == WaitEvent::kNavigationFinished)
     EventTriggered(web_contents_state);
 }
 
+void TestNavigationObserver::NavigationOfInterestDidFinish(NavigationHandle*) {
+  // Nothing in the base class.
+}
+
 void TestNavigationObserver::EventTriggered(
     WebContentsState* web_contents_state) {
   if (HasFilter() && !web_contents_state->last_navigation_matches_filter)
diff --git a/content/public/test/test_navigation_observer.h b/content/public/test/test_navigation_observer.h
index 88933d5..9f7a10c 100644
--- a/content/public/test/test_navigation_observer.h
+++ b/content/public/test/test_navigation_observer.h
@@ -123,6 +123,14 @@
   // |navigation_handle|.
   virtual void OnDidFinishNavigation(NavigationHandle* navigation_handle);
 
+  // NavigationOfInterestDidFinish is called by OnDidFinishNavigation if it was
+  // determined that the finished navigation is on the correct URL, in the
+  // correct state, etc. This is the method that classes extending
+  // TestNavigationObserver should override, if they wish to intercept data
+  // carried in |navigation_handle|.
+  virtual void NavigationOfInterestDidFinish(
+      NavigationHandle* navigation_handle);
+
  private:
   class TestWebContentsObserver;
 
diff --git a/content/renderer/render_process_impl.cc b/content/renderer/render_process_impl.cc
index 6c38edd..b800770 100644
--- a/content/renderer/render_process_impl.cc
+++ b/content/renderer/render_process_impl.cc
@@ -270,12 +270,6 @@
   }
 #endif  // defined(OS_MAC) && defined(ARCH_CPU_X86_64)
 
-  if (command_line->HasSwitch(switches::kNoV8UntrustedCodeMitigations)) {
-    const char* disable_mitigations = "--no-untrusted-code-mitigations";
-    v8::V8::SetFlagsFromString(disable_mitigations,
-                               strlen(disable_mitigations));
-  }
-
   if (command_line->HasSwitch(switches::kJavaScriptFlags)) {
     std::string js_flags =
         command_line->GetSwitchValueASCII(switches::kJavaScriptFlags);
diff --git a/extensions/strings/extensions_strings_te.xtb b/extensions/strings/extensions_strings_te.xtb
index 7a9410d..d77f994 100644
--- a/extensions/strings/extensions_strings_te.xtb
+++ b/extensions/strings/extensions_strings_te.xtb
@@ -34,7 +34,7 @@
 <translation id="5098647635849512368">ప్యాక్ చేయడానికి డైరెక్టరీకి ఖచ్చితమైన పాథ్‌ను కనుగొనడం సాధ్యపడదు.</translation>
 <translation id="5356315618422219272">యాప్‌ వీక్షణ: <ph name="APPVIEW_TAG_NAME" /></translation>
 <translation id="5436430103864390185">ఆకృతీకరించిన విండోలకు మద్దతు లేదు.</translation>
-<translation id="5456409301717116725">ఈ పొడిగింపు '<ph name="KEY_PATH" />' కీ ఫైల్‌ను కలిగి ఉంది. బహుశా మీరు దాన్ని చేయకూడదు.</translation>
+<translation id="5456409301717116725">ఈ ఎక్స్‌టెన్షన్‌ '<ph name="KEY_PATH" />' కీ ఫైల్‌ను కలిగి ఉంది. బహుశా మీరు దాన్ని చేయకూడదు.</translation>
 <translation id="5486326529110362464">ప్రైవేట్ కీ కోసం ఇన్‌పుట్ విలువ తప్పనిసరిగా ఉండాలి.</translation>
 <translation id="5972529113578162692"><ph name="EXTENSION_NAME" />ని ఇన్‌స్టాల్ చేయడం ఈ మెషిన్‌ నిర్వాహకుడికి అవసరం. ఇది అన్ఇన్‌స్టాల్ చేయబడదు.</translation>
 <translation id="6027032947578871493"><ph name="VENDOR_NAME" /> నుండి తెలియని ఉత్పత్తి <ph name="PRODUCT_ID" /> (క్రమ సంఖ్య <ph name="SERIAL_NUMBER" />)</translation>
@@ -42,17 +42,17 @@
 <translation id="6143635259298204954">ఎక్స్‌టెన్షన్‌ను అన్‌ప్యాక్ చేయడం సాధ్యపడలేదు. ఒక ఎక్స్‌టెన్షన్‌‌ను సురక్షితంగా అన్‌ప్యాక్ చేయడానికి, మీ ప్రొఫైల్ డైరెక్టరీకి సింలింక్ ఉండని పాత్ తప్పనిసరిగా ఉండాలి. మీ ప్రొఫైల్‌కు అటువంటి పాత్ లేదు.</translation>
 <translation id="6322279351188361895">ప్రైవేట్ కీని చదవడంలో విఫలమైంది.</translation>
 <translation id="6391538222494443604">ఇన్‌పుట్ డైరెక్టరీ తప్పనిసరిగా ఉనికిలో ఉండాలి.</translation>
-<translation id="641087317769093025">పొడిగింపు అన్‌జిప్ చేయబడదు</translation>
+<translation id="641087317769093025">ఎక్స్‌టెన్షన్‌ అన్‌జిప్ చేయబడదు</translation>
 <translation id="6542618148162044354">"<ph name="APP_NAME" />" మీ ఒకటి లేదా అంతకంటే ఎక్కువ పరికరాలకు యాక్సెస్‌ను అభ్యర్థిస్తోంది:</translation>
 <translation id="657064425229075395">'<ph name="BACKGROUND_SCRIPT" />' నేపథ్య స్క్రిప్ట్‌ను లోడ్ చేయడం సాధ్యం కాలేదు.</translation>
 <translation id="6580950983454333167"><ph name="VENDOR_NAME" /> నుండి <ph name="PRODUCT_NAME" /> (క్రమ సంఖ్య <ph name="SERIAL_NUMBER" />)</translation>
 <translation id="677806580227005219">Mime హ్యాండ్లర్: <ph name="MIMEHANDLERVIEW_TAG_NAME" /></translation>
-<translation id="6840444547062817500">ఈ పొడిగింపు దానికదే చాలా తరచుగా రీలోడ్ అయ్యింది.</translation>
+<translation id="6840444547062817500">ఈ ఎక్స్‌టెన్షన్‌ దానికదే చాలా తరచుగా రీలోడ్ అయ్యింది.</translation>
 <translation id="7003844668372540529"><ph name="VENDOR_NAME" /> నుండి తెలియని ఉత్పత్తి <ph name="PRODUCT_ID" /></translation>
 <translation id="7068383018033524534">మానిఫెస్ట్ ఫైల్ చెల్లదు</translation>
 <translation id="7217838517480956708">ఈ మెషిన్‌ యొక్క నిర్వాహకుడికి <ph name="EXTENSION_NAME" /> ఇన్‌స్టాల్ చేయబడి ఉండటం అవసరం. దీన్ని తీసివేయడం లేదా సవరించడం సాధ్యపడదు.</translation>
 <translation id="7612608473764576263">ప్రైవేట్ కీ కోసం ఇన్‌పుట్ విలువ తప్పనిసరిగా చెల్లుబాటు అయ్యే ఫార్మాట్‌లో ఉండాలి. (PKCS#8-ఫార్మాట్‌లో, PEM-ఎన్‌కోడ్ చేసిన RSA కీ)</translation>
-<translation id="7939686037314084444">ఎక్స్‌టెన్షన్ సరిగా లోడ్ అవ్వడంలో విఫలం అయ్యింది. కనుక ఇది నెట్‌వర్క్ అభ్యర్థనలను అడ్డగించలేకపోవచ్చు.</translation>
+<translation id="7939686037314084444">ఎక్స్‌టెన్షన్ సరిగా లోడ్ అవ్వడంలో విఫలం అయ్యింది. కనుక ఇది నెట్‌వర్క్ రిక్వెస్ట్‌లను అడ్డగించలేకపోవచ్చు.</translation>
 <translation id="7972881773422714442">ఎంపికలు: <ph name="EXTENSIONOPTIONS_TAG_NAME" /></translation>
 <translation id="8035920974645200807">వినియోగదారు వైపుగా</translation>
 <translation id="8047248493720652249">ఈ ఎక్స్‌టెన్ష‌న్‌ డౌన్‌లోడ్ యొక్క పేరును "<ph name="ATTEMPTED_FILENAME" />"గా పేర్కొనడంలో విఫలమైంది. ఎందుకంటే మరో ఎక్స్‌టెన్ష‌న్‌ (<ph name="EXTENSION_NAME" />) "<ph name="ACTUAL_FILENAME" />" అనే వేరే ఫైల్ పేరును నిశ్చయించింది.</translation>
diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc
index 6e7261ff..4832fad 100644
--- a/gin/v8_initializer.cc
+++ b/gin/v8_initializer.cc
@@ -357,8 +357,6 @@
 
   if (base::FeatureList::IsEnabled(features::kV8UntrustedCodeMitigations)) {
     SetV8Flags("--untrusted-code-mitigations");
-  } else {
-    SetV8Flags("--no-untrusted-code-mitigations");
   }
 
   if (base::FeatureList::IsEnabled(features::kV8ScriptAblation)) {
diff --git a/gpu/command_buffer/build_raster_cmd_buffer.py b/gpu/command_buffer/build_raster_cmd_buffer.py
index f0832ff..e25ccc0 100755
--- a/gpu/command_buffer/build_raster_cmd_buffer.py
+++ b/gpu/command_buffer/build_raster_cmd_buffer.py
@@ -232,6 +232,14 @@
     'unit_test': False,
     'trace_level': 2,
   },
+  'ConvertRGBAToYUVAMailboxesINTERNAL': {
+    'decoder_func': 'DoConvertRGBAToYUVAMailboxesINTERNAL',
+    'internal': True,
+    'type': 'PUT',
+    'count': 80, #GL_MAILBOX_SIZE_CHROMIUM x5
+    'unit_test': False,
+    'trace_level': 2,
+  },
   'Finish': {
     'impl_func': False,
     'client_test': False,
diff --git a/gpu/command_buffer/client/raster_cmd_helper_autogen.h b/gpu/command_buffer/client/raster_cmd_helper_autogen.h
index f04db3d..0c20f99c 100644
--- a/gpu/command_buffer/client/raster_cmd_helper_autogen.h
+++ b/gpu/command_buffer/client/raster_cmd_helper_autogen.h
@@ -288,6 +288,20 @@
   }
 }
 
+void ConvertRGBAToYUVAMailboxesINTERNALImmediate(GLenum planes_yuv_color_space,
+                                                 GLenum plane_config,
+                                                 GLenum subsampling,
+                                                 const GLbyte* mailboxes) {
+  const uint32_t size =
+      raster::cmds::ConvertRGBAToYUVAMailboxesINTERNALImmediate::ComputeSize();
+  raster::cmds::ConvertRGBAToYUVAMailboxesINTERNALImmediate* c =
+      GetImmediateCmdSpaceTotalSize<
+          raster::cmds::ConvertRGBAToYUVAMailboxesINTERNALImmediate>(size);
+  if (c) {
+    c->Init(planes_yuv_color_space, plane_config, subsampling, mailboxes);
+  }
+}
+
 void TraceBeginCHROMIUM(GLuint category_bucket_id, GLuint name_bucket_id) {
   raster::cmds::TraceBeginCHROMIUM* c =
       GetCmdSpace<raster::cmds::TraceBeginCHROMIUM>();
diff --git a/gpu/command_buffer/client/raster_implementation.cc b/gpu/command_buffer/client/raster_implementation.cc
index 64d0b4bb..94f19eb 100644
--- a/gpu/command_buffer/client/raster_implementation.cc
+++ b/gpu/command_buffer/client/raster_implementation.cc
@@ -1304,6 +1304,22 @@
       static_cast<GLenum>(subsampling), reinterpret_cast<GLbyte*>(mailboxes));
 }
 
+void RasterImplementation::ConvertRGBAToYUVAMailboxes(
+    SkYUVColorSpace planes_yuv_color_space,
+    SkYUVAInfo::PlaneConfig plane_config,
+    SkYUVAInfo::Subsampling subsampling,
+    const gpu::Mailbox yuva_plane_mailboxes[],
+    const gpu::Mailbox& source_mailbox) {
+  gpu::Mailbox mailboxes[kNumMailboxes]{};
+  for (int i = 0; i < SkYUVAInfo::NumPlanes(plane_config); ++i) {
+    mailboxes[i] = yuva_plane_mailboxes[i];
+  }
+  mailboxes[kNumMailboxes - 1] = source_mailbox;
+  helper_->ConvertRGBAToYUVAMailboxesINTERNALImmediate(
+      planes_yuv_color_space, static_cast<GLenum>(plane_config),
+      static_cast<GLenum>(subsampling), reinterpret_cast<GLbyte*>(mailboxes));
+}
+
 void RasterImplementation::BeginRasterCHROMIUM(
     GLuint sk_color,
     GLboolean needs_clear,
diff --git a/gpu/command_buffer/client/raster_implementation.h b/gpu/command_buffer/client/raster_implementation.h
index bbc24062..855afada 100644
--- a/gpu/command_buffer/client/raster_implementation.h
+++ b/gpu/command_buffer/client/raster_implementation.h
@@ -137,6 +137,12 @@
       SkYUVAInfo::Subsampling subsampling,
       const gpu::Mailbox yuva_plane_mailboxes[]) override;
 
+  void ConvertRGBAToYUVAMailboxes(SkYUVColorSpace planes_yuv_color_space,
+                                  SkYUVAInfo::PlaneConfig plane_config,
+                                  SkYUVAInfo::Subsampling subsampling,
+                                  const gpu::Mailbox yuva_plane_mailboxes[],
+                                  const gpu::Mailbox& source_mailbox) override;
+
   void BeginRasterCHROMIUM(GLuint sk_color,
                            GLboolean needs_clear,
                            GLuint msaa_sample_count,
diff --git a/gpu/command_buffer/client/raster_implementation_gles.cc b/gpu/command_buffer/client/raster_implementation_gles.cc
index 4721307..a305a72b 100644
--- a/gpu/command_buffer/client/raster_implementation_gles.cc
+++ b/gpu/command_buffer/client/raster_implementation_gles.cc
@@ -207,6 +207,15 @@
   NOTREACHED();
 }
 
+void RasterImplementationGLES::ConvertRGBAToYUVAMailboxes(
+    SkYUVColorSpace planes_yuv_color_space,
+    SkYUVAInfo::PlaneConfig plane_config,
+    SkYUVAInfo::Subsampling subsampling,
+    const gpu::Mailbox yuva_plane_mailboxes[],
+    const gpu::Mailbox& source_mailbox) {
+  NOTREACHED();
+}
+
 void RasterImplementationGLES::BeginRasterCHROMIUM(
     GLuint sk_color,
     GLboolean needs_clear,
diff --git a/gpu/command_buffer/client/raster_implementation_gles.h b/gpu/command_buffer/client/raster_implementation_gles.h
index 2cc30bb..9915ec45 100644
--- a/gpu/command_buffer/client/raster_implementation_gles.h
+++ b/gpu/command_buffer/client/raster_implementation_gles.h
@@ -79,6 +79,12 @@
       SkYUVAInfo::Subsampling subsampling,
       const gpu::Mailbox yuva_plane_mailboxes[]) override;
 
+  void ConvertRGBAToYUVAMailboxes(SkYUVColorSpace planes_yuv_color_space,
+                                  SkYUVAInfo::PlaneConfig plane_config,
+                                  SkYUVAInfo::Subsampling subsampling,
+                                  const gpu::Mailbox yuva_plane_mailboxes[],
+                                  const gpu::Mailbox& source_mailbox) override;
+
   // OOP-Raster
   void BeginRasterCHROMIUM(GLuint sk_color,
                            GLboolean needs_clear,
diff --git a/gpu/command_buffer/client/raster_interface.h b/gpu/command_buffer/client/raster_interface.h
index 1bdd177..ff82163 100644
--- a/gpu/command_buffer/client/raster_interface.h
+++ b/gpu/command_buffer/client/raster_interface.h
@@ -74,6 +74,13 @@
       SkYUVAInfo::Subsampling subsampling,
       const gpu::Mailbox yuva_plane_mailboxes[]) = 0;
 
+  virtual void ConvertRGBAToYUVAMailboxes(
+      SkYUVColorSpace planes_yuv_color_space,
+      SkYUVAInfo::PlaneConfig plane_config,
+      SkYUVAInfo::Subsampling subsampling,
+      const gpu::Mailbox yuva_plane_mailboxes[],
+      const gpu::Mailbox& source_mailbox) = 0;
+
   // OOP-Raster
 
   // msaa_sample_count has no effect unless msaa_mode is set to kMSAA
diff --git a/gpu/command_buffer/common/raster_cmd_format_autogen.h b/gpu/command_buffer/common/raster_cmd_format_autogen.h
index ef98b2b46..729feb2 100644
--- a/gpu/command_buffer/common/raster_cmd_format_autogen.h
+++ b/gpu/command_buffer/common/raster_cmd_format_autogen.h
@@ -1291,6 +1291,69 @@
               "offset of ConvertYUVAMailboxesToRGBINTERNALImmediate "
               "subsampling should be 12");
 
+struct ConvertRGBAToYUVAMailboxesINTERNALImmediate {
+  typedef ConvertRGBAToYUVAMailboxesINTERNALImmediate ValueType;
+  static const CommandId kCmdId = kConvertRGBAToYUVAMailboxesINTERNALImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8_t cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(2);
+
+  static uint32_t ComputeDataSize() {
+    return static_cast<uint32_t>(sizeof(GLbyte) * 80);
+  }
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType) + ComputeDataSize());
+  }
+
+  void SetHeader() { header.SetCmdByTotalSize<ValueType>(ComputeSize()); }
+
+  void Init(GLenum _planes_yuv_color_space,
+            GLenum _plane_config,
+            GLenum _subsampling,
+            const GLbyte* _mailboxes) {
+    SetHeader();
+    planes_yuv_color_space = _planes_yuv_color_space;
+    plane_config = _plane_config;
+    subsampling = _subsampling;
+    memcpy(ImmediateDataAddress(this), _mailboxes, ComputeDataSize());
+  }
+
+  void* Set(void* cmd,
+            GLenum _planes_yuv_color_space,
+            GLenum _plane_config,
+            GLenum _subsampling,
+            const GLbyte* _mailboxes) {
+    static_cast<ValueType*>(cmd)->Init(_planes_yuv_color_space, _plane_config,
+                                       _subsampling, _mailboxes);
+    const uint32_t size = ComputeSize();
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t planes_yuv_color_space;
+  uint32_t plane_config;
+  uint32_t subsampling;
+};
+
+static_assert(
+    sizeof(ConvertRGBAToYUVAMailboxesINTERNALImmediate) == 16,
+    "size of ConvertRGBAToYUVAMailboxesINTERNALImmediate should be 16");
+static_assert(
+    offsetof(ConvertRGBAToYUVAMailboxesINTERNALImmediate, header) == 0,
+    "offset of ConvertRGBAToYUVAMailboxesINTERNALImmediate header should be 0");
+static_assert(offsetof(ConvertRGBAToYUVAMailboxesINTERNALImmediate,
+                       planes_yuv_color_space) == 4,
+              "offset of ConvertRGBAToYUVAMailboxesINTERNALImmediate "
+              "planes_yuv_color_space should be 4");
+static_assert(offsetof(ConvertRGBAToYUVAMailboxesINTERNALImmediate,
+                       plane_config) == 8,
+              "offset of ConvertRGBAToYUVAMailboxesINTERNALImmediate "
+              "plane_config should be 8");
+static_assert(offsetof(ConvertRGBAToYUVAMailboxesINTERNALImmediate,
+                       subsampling) == 12,
+              "offset of ConvertRGBAToYUVAMailboxesINTERNALImmediate "
+              "subsampling should be 12");
+
 struct TraceBeginCHROMIUM {
   typedef TraceBeginCHROMIUM ValueType;
   static const CommandId kCmdId = kTraceBeginCHROMIUM;
diff --git a/gpu/command_buffer/common/raster_cmd_format_test_autogen.h b/gpu/command_buffer/common/raster_cmd_format_test_autogen.h
index 414cd09..7c79ba49 100644
--- a/gpu/command_buffer/common/raster_cmd_format_test_autogen.h
+++ b/gpu/command_buffer/common/raster_cmd_format_test_autogen.h
@@ -601,6 +601,107 @@
       next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
 }
 
+TEST_F(RasterFormatTest, ConvertRGBAToYUVAMailboxesINTERNALImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLbyte data[] = {
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 3),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 4),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 5),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 6),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 7),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 8),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 9),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 10),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 11),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 12),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 13),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 14),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 15),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 16),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 17),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 18),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 19),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 20),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 21),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 22),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 23),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 24),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 25),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 26),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 27),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 28),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 29),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 30),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 31),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 32),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 33),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 34),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 35),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 36),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 37),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 38),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 39),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 40),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 41),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 42),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 43),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 44),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 45),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 46),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 47),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 48),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 49),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 50),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 51),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 52),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 53),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 54),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 55),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 56),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 57),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 58),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 59),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 60),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 61),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 62),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 63),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 64),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 65),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 66),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 67),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 68),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 69),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 70),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 71),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 72),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 73),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 74),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 75),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 76),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 77),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 78),
+      static_cast<GLbyte>(kSomeBaseValueToTestWith + 79),
+  };
+  cmds::ConvertRGBAToYUVAMailboxesINTERNALImmediate& cmd =
+      *GetBufferAs<cmds::ConvertRGBAToYUVAMailboxesINTERNALImmediate>();
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLenum>(11), static_cast<GLenum>(12),
+              static_cast<GLenum>(13), data);
+  EXPECT_EQ(static_cast<uint32_t>(
+                cmds::ConvertRGBAToYUVAMailboxesINTERNALImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)),
+            cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLenum>(11), cmd.planes_yuv_color_space);
+  EXPECT_EQ(static_cast<GLenum>(12), cmd.plane_config);
+  EXPECT_EQ(static_cast<GLenum>(13), cmd.subsampling);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+}
+
 TEST_F(RasterFormatTest, TraceBeginCHROMIUM) {
   cmds::TraceBeginCHROMIUM& cmd = *GetBufferAs<cmds::TraceBeginCHROMIUM>();
   void* next_cmd =
diff --git a/gpu/command_buffer/common/raster_cmd_ids_autogen.h b/gpu/command_buffer/common/raster_cmd_ids_autogen.h
index bac4699..15bf03b 100644
--- a/gpu/command_buffer/common/raster_cmd_ids_autogen.h
+++ b/gpu/command_buffer/common/raster_cmd_ids_autogen.h
@@ -11,33 +11,34 @@
 #ifndef GPU_COMMAND_BUFFER_COMMON_RASTER_CMD_IDS_AUTOGEN_H_
 #define GPU_COMMAND_BUFFER_COMMON_RASTER_CMD_IDS_AUTOGEN_H_
 
-#define RASTER_COMMAND_LIST(OP)                            \
-  OP(Finish)                                     /* 256 */ \
-  OP(Flush)                                      /* 257 */ \
-  OP(GetError)                                   /* 258 */ \
-  OP(GenQueriesEXTImmediate)                     /* 259 */ \
-  OP(DeleteQueriesEXTImmediate)                  /* 260 */ \
-  OP(QueryCounterEXT)                            /* 261 */ \
-  OP(BeginQueryEXT)                              /* 262 */ \
-  OP(EndQueryEXT)                                /* 263 */ \
-  OP(LoseContextCHROMIUM)                        /* 264 */ \
-  OP(BeginRasterCHROMIUMImmediate)               /* 265 */ \
-  OP(RasterCHROMIUM)                             /* 266 */ \
-  OP(EndRasterCHROMIUM)                          /* 267 */ \
-  OP(CreateTransferCacheEntryINTERNAL)           /* 268 */ \
-  OP(DeleteTransferCacheEntryINTERNAL)           /* 269 */ \
-  OP(UnlockTransferCacheEntryINTERNAL)           /* 270 */ \
-  OP(DeletePaintCacheTextBlobsINTERNALImmediate) /* 271 */ \
-  OP(DeletePaintCachePathsINTERNALImmediate)     /* 272 */ \
-  OP(ClearPaintCacheINTERNAL)                    /* 273 */ \
-  OP(CopySubTextureINTERNALImmediate)            /* 274 */ \
-  OP(WritePixelsINTERNALImmediate)               /* 275 */ \
-  OP(ReadbackARGBImagePixelsINTERNALImmediate)   /* 276 */ \
-  OP(ReadbackYUVImagePixelsINTERNALImmediate)    /* 277 */ \
-  OP(ConvertYUVAMailboxesToRGBINTERNALImmediate) /* 278 */ \
-  OP(TraceBeginCHROMIUM)                         /* 279 */ \
-  OP(TraceEndCHROMIUM)                           /* 280 */ \
-  OP(SetActiveURLCHROMIUM)                       /* 281 */
+#define RASTER_COMMAND_LIST(OP)                             \
+  OP(Finish)                                      /* 256 */ \
+  OP(Flush)                                       /* 257 */ \
+  OP(GetError)                                    /* 258 */ \
+  OP(GenQueriesEXTImmediate)                      /* 259 */ \
+  OP(DeleteQueriesEXTImmediate)                   /* 260 */ \
+  OP(QueryCounterEXT)                             /* 261 */ \
+  OP(BeginQueryEXT)                               /* 262 */ \
+  OP(EndQueryEXT)                                 /* 263 */ \
+  OP(LoseContextCHROMIUM)                         /* 264 */ \
+  OP(BeginRasterCHROMIUMImmediate)                /* 265 */ \
+  OP(RasterCHROMIUM)                              /* 266 */ \
+  OP(EndRasterCHROMIUM)                           /* 267 */ \
+  OP(CreateTransferCacheEntryINTERNAL)            /* 268 */ \
+  OP(DeleteTransferCacheEntryINTERNAL)            /* 269 */ \
+  OP(UnlockTransferCacheEntryINTERNAL)            /* 270 */ \
+  OP(DeletePaintCacheTextBlobsINTERNALImmediate)  /* 271 */ \
+  OP(DeletePaintCachePathsINTERNALImmediate)      /* 272 */ \
+  OP(ClearPaintCacheINTERNAL)                     /* 273 */ \
+  OP(CopySubTextureINTERNALImmediate)             /* 274 */ \
+  OP(WritePixelsINTERNALImmediate)                /* 275 */ \
+  OP(ReadbackARGBImagePixelsINTERNALImmediate)    /* 276 */ \
+  OP(ReadbackYUVImagePixelsINTERNALImmediate)     /* 277 */ \
+  OP(ConvertYUVAMailboxesToRGBINTERNALImmediate)  /* 278 */ \
+  OP(ConvertRGBAToYUVAMailboxesINTERNALImmediate) /* 279 */ \
+  OP(TraceBeginCHROMIUM)                          /* 280 */ \
+  OP(TraceEndCHROMIUM)                            /* 281 */ \
+  OP(SetActiveURLCHROMIUM)                        /* 282 */
 
 enum CommandId {
   kOneBeforeStartPoint =
diff --git a/gpu/command_buffer/raster_cmd_buffer_functions.txt b/gpu/command_buffer/raster_cmd_buffer_functions.txt
index 2051ebbd..a414976 100644
--- a/gpu/command_buffer/raster_cmd_buffer_functions.txt
+++ b/gpu/command_buffer/raster_cmd_buffer_functions.txt
@@ -40,6 +40,7 @@
 GL_APICALL void         GL_APIENTRY glReadbackARGBImagePixelsINTERNAL (GLint src_x, GLint src_y, GLuint dst_width, GLuint dst_height, GLuint row_bytes, GLuint dst_sk_color_type, GLuint dst_sk_alpha_type, GLint shm_id, GLuint shm_offset, GLuint color_space_offset, GLuint pixels_offset, const GLbyte* mailbox);
 GL_APICALL void         GL_APIENTRY glReadbackYUVImagePixelsINTERNAL (GLuint dst_width, GLuint dst_height, GLint shm_id, GLuint shm_offset, GLuint y_offset, GLuint y_stride, GLuint u_offset, GLuint u_stride, GLuint v_offset, GLuint v_stride, const GLbyte* mailbox);
 GL_APICALL void         GL_APIENTRY glConvertYUVAMailboxesToRGBINTERNAL (GLenum planes_yuv_color_space, GLenum plane_config, GLenum subsampling, const GLbyte* mailboxes);
+GL_APICALL void         GL_APIENTRY glConvertRGBAToYUVAMailboxesINTERNAL (GLenum planes_yuv_color_space, GLenum plane_config, GLenum subsampling, const GLbyte* mailboxes);
 GL_APICALL void         GL_APIENTRY glTraceBeginCHROMIUM (const char* category_name, const char* trace_name);
 GL_APICALL void         GL_APIENTRY glTraceEndCHROMIUM (void);
 GL_APICALL void         GL_APIENTRY glSetActiveURLCHROMIUM (const char* url);
diff --git a/gpu/command_buffer/service/raster_decoder.cc b/gpu/command_buffer/service/raster_decoder.cc
index f8a9ea8..c691fab3 100644
--- a/gpu/command_buffer/service/raster_decoder.cc
+++ b/gpu/command_buffer/service/raster_decoder.cc
@@ -757,6 +757,10 @@
                                            GLenum plane_config,
                                            GLenum subsampling,
                                            const volatile GLbyte* mailboxes);
+  void DoConvertRGBAToYUVAMailboxesINTERNAL(GLenum yuv_color_space,
+                                            GLenum plane_config,
+                                            GLenum subsampling,
+                                            const volatile GLbyte* mailboxes);
 
   void DoLoseContextCHROMIUM(GLenum current, GLenum other);
   void DoBeginRasterCHROMIUM(GLuint sk_color,
@@ -3293,6 +3297,15 @@
   }
 }
 
+void RasterDecoderImpl::DoConvertRGBAToYUVAMailboxesINTERNAL(
+    GLenum yuv_color_space,
+    GLenum plane_config,
+    GLenum subsampling,
+    const volatile GLbyte* mailboxes_in) {
+  // TODO(https://crbug.com/1206168): Implement this.
+  NOTIMPLEMENTED();
+}
+
 void RasterDecoderImpl::DoLoseContextCHROMIUM(GLenum current, GLenum other) {
   MarkContextLost(gles2::GetContextLostReasonFromResetStatus(current));
 }
diff --git a/gpu/command_buffer/service/raster_decoder_autogen.h b/gpu/command_buffer/service/raster_decoder_autogen.h
index 610a1dc..3035cbc 100644
--- a/gpu/command_buffer/service/raster_decoder_autogen.h
+++ b/gpu/command_buffer/service/raster_decoder_autogen.h
@@ -436,6 +436,34 @@
   return error::kNoError;
 }
 
+error::Error
+RasterDecoderImpl::HandleConvertRGBAToYUVAMailboxesINTERNALImmediate(
+    uint32_t immediate_data_size,
+    const volatile void* cmd_data) {
+  const volatile raster::cmds::ConvertRGBAToYUVAMailboxesINTERNALImmediate& c =
+      *static_cast<const volatile raster::cmds::
+                       ConvertRGBAToYUVAMailboxesINTERNALImmediate*>(cmd_data);
+  GLenum planes_yuv_color_space = static_cast<GLenum>(c.planes_yuv_color_space);
+  GLenum plane_config = static_cast<GLenum>(c.plane_config);
+  GLenum subsampling = static_cast<GLenum>(c.subsampling);
+  uint32_t mailboxes_size;
+  if (!gles2::GLES2Util::ComputeDataSize<GLbyte, 80>(1, &mailboxes_size)) {
+    return error::kOutOfBounds;
+  }
+  if (mailboxes_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  volatile const GLbyte* mailboxes =
+      gles2::GetImmediateDataAs<volatile const GLbyte*>(c, mailboxes_size,
+                                                        immediate_data_size);
+  if (mailboxes == nullptr) {
+    return error::kOutOfBounds;
+  }
+  DoConvertRGBAToYUVAMailboxesINTERNAL(planes_yuv_color_space, plane_config,
+                                       subsampling, mailboxes);
+  return error::kNoError;
+}
+
 error::Error RasterDecoderImpl::HandleTraceEndCHROMIUM(
     uint32_t immediate_data_size,
     const volatile void* cmd_data) {
diff --git a/gpu/command_buffer/service/shared_image_video.cc b/gpu/command_buffer/service/shared_image_video.cc
index a4569cc..ceb8260 100644
--- a/gpu/command_buffer/service/shared_image_video.cc
+++ b/gpu/command_buffer/service/shared_image_video.cc
@@ -587,9 +587,10 @@
     base::AutoLockMaybe auto_lock(GetDrDcLockPtr());
     DCHECK(release_fence.is_null());
     if (gl_image_) {
-      DCHECK(scoped_hardware_buffer_);
-      scoped_hardware_buffer_->SetReadFence(gl_image_->TakeEndReadFence(),
-                                            true);
+      if (scoped_hardware_buffer_) {
+        scoped_hardware_buffer_->SetReadFence(gl_image_->TakeEndReadFence(),
+                                              true);
+      }
       gl_image_.reset();
       scoped_hardware_buffer_.reset();
     }
@@ -608,9 +609,21 @@
     // GetGLImage will only be called for SurfaceControl.
     if (!gl_image_) {
       scoped_hardware_buffer_ = stream_image()->GetAHardwareBuffer();
-      gl_image_ = base::MakeRefCounted<VideoImage>(
-          scoped_hardware_buffer_->buffer(),
-          scoped_hardware_buffer_->TakeFence());
+
+      // |scoped_hardware_buffer_| could be null for cases when a buffer is
+      // not acquired in ImageReader for some reasons and there is no previously
+      // acquired image left.
+      if (scoped_hardware_buffer_) {
+        gl_image_ = base::MakeRefCounted<VideoImage>(
+            scoped_hardware_buffer_->buffer(),
+            scoped_hardware_buffer_->TakeFence());
+      } else {
+        // Caller of GetGLImage currently do not expect a null |gl_image_|.
+        // Hence creating a valid object with null buffer which results in a
+        // blank video frame and is expected. TODO(vikassoni) : Explore option
+        // of returning a null GLImage here.
+        gl_image_ = base::MakeRefCounted<VideoImage>(nullptr, base::ScopedFD());
+      }
     }
     return gl_image_.get();
   }
diff --git a/gpu/config/gpu_driver_bug_list.json b/gpu/config/gpu_driver_bug_list.json
index ac7da82..93c5ab3 100644
--- a/gpu/config/gpu_driver_bug_list.json
+++ b/gpu/config/gpu_driver_bug_list.json
@@ -3545,7 +3545,8 @@
       },
       "intel_gpu_series": [
         "icelake",
-        "tigerlake"
+        "tigerlake",
+        "alderlake"
       ],
       "features": [
         "supports_two_yuv_hardware_overlays"
diff --git a/gpu/config/gpu_info.h b/gpu/config/gpu_info.h
index e3d96411..9692468 100644
--- a/gpu/config/gpu_info.h
+++ b/gpu/config/gpu_info.h
@@ -72,8 +72,9 @@
   kJasperlake = 20,
   // Intel 12th gen
   kTigerlake = 21,
+  kAlderlake = 22,
   // Please also update |gpu_series_map| in process_json.py.
-  kMaxValue = kTigerlake,
+  kMaxValue = kAlderlake,
 };
 
 // Video profile.  This *must* match media::VideoCodecProfile.
diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
index dceeb4b..3b9e30d 100644
--- a/gpu/config/gpu_util.cc
+++ b/gpu/config/gpu_util.cc
@@ -830,6 +830,8 @@
         return IntelGpuSeriesType::kJasperlake;
       case 0x9A00:
         return IntelGpuSeriesType::kTigerlake;
+      case 0x4600:
+        return IntelGpuSeriesType::kAlderlake;
       default:
         break;
     }
@@ -870,6 +872,7 @@
       case IntelGpuSeriesType::kJasperlake:
         return "11";
       case IntelGpuSeriesType::kTigerlake:
+      case IntelGpuSeriesType::kAlderlake:
         return "12";
       default:
         break;
diff --git a/gpu/config/process_json.py b/gpu/config/process_json.py
index c8faefa..7690735 100755
--- a/gpu/config/process_json.py
+++ b/gpu/config/process_json.py
@@ -677,7 +677,8 @@
       'icelake': 'kIcelake',
       'elkhartlake': 'kElkhartlake',
       'jasperlake': 'kJasperlake',
-      'tigerlake': 'kTigerlake'
+      'tigerlake': 'kTigerlake',
+      'alderlake': 'kAlderlake'
     }
     for series in intel_gpu_series_list:
       assert series in intel_gpu_series_map
diff --git a/ios/chrome/app/strings/resources/ios_strings_fr-CA.xtb b/ios/chrome/app/strings/resources/ios_strings_fr-CA.xtb
index cdfd5c47..e00066f 100644
--- a/ios/chrome/app/strings/resources/ios_strings_fr-CA.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_fr-CA.xtb
@@ -149,6 +149,7 @@
 <translation id="2421004566762153674">Blocage des témoins tiers</translation>
 <translation id="2421044535038393232">Continuer à modifier</translation>
 <translation id="2435457462613246316">Affich. mot de passe</translation>
+<translation id="2476359652512522418">Non sélectionné</translation>
 <translation id="2497852260688568942">La synchronisation est désactivée par votre administrateur</translation>
 <translation id="2500374554657206846">Options d'enregistrement des mots de passe</translation>
 <translation id="2523363575747517183">Ce site Web a tenté plusieurs fois d'ouvrir une autre application.</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_iw.xtb b/ios/chrome/app/strings/resources/ios_strings_iw.xtb
index 64daca8..6e7c637b9 100644
--- a/ios/chrome/app/strings/resources/ios_strings_iw.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_iw.xtb
@@ -149,6 +149,7 @@
 <translation id="2421004566762153674">‏חסימת קובצי Cookie של צד שלישי</translation>
 <translation id="2421044535038393232">המשך העריכה</translation>
 <translation id="2435457462613246316">הצגת סיסמה</translation>
+<translation id="2476359652512522418">לא נבחר</translation>
 <translation id="2497852260688568942">מנהל המערכת שלך השבית את הסנכרון</translation>
 <translation id="2500374554657206846">אפשרויות לשמירת סיסמה</translation>
 <translation id="2523363575747517183">האתר הזה מנסה שוב ושוב לפתוח אפליקציה אחרת.</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_te.xtb b/ios/chrome/app/strings/resources/ios_strings_te.xtb
index 2f56ac48..38a9f3d 100644
--- a/ios/chrome/app/strings/resources/ios_strings_te.xtb
+++ b/ios/chrome/app/strings/resources/ios_strings_te.xtb
@@ -35,7 +35,7 @@
 <translation id="1219674500290482172">ఇంటర్నెట్‌కు కనెక్ట్ చేయడం సాధ్యపడలేదు.</translation>
 <translation id="122699739164161391">అన్ని ట్యాబ్‌లను మూసివేయి</translation>
 <translation id="1229222343402087523">Chromeలో ${searchPhrase}ను సెర్చ్ చేయండి</translation>
-<translation id="1231733316453485619">సమకాలీకరణను ఆన్ చేయాలా?</translation>
+<translation id="1231733316453485619">సింక్‌ను ఆన్ చేయాలా?</translation>
 <translation id="1242044645101871359">మళ్ళీ సైన్ ఇన్ చేయండి</translation>
 <translation id="1254117744268754948">ఫోల్డర్‌ను ఎంచుకోండి</translation>
 <translation id="1265739287306757398">ఎలాగో తెలుసుకోండి</translation>
@@ -50,9 +50,9 @@
 <translation id="132683371494960526">మూలాధారిత ఫోల్డర్‌ను మార్చడానికి రెండుసార్లు నొక్కండి.</translation>
 <translation id="1340643665687018190">మెనూను మూసివేయి</translation>
 <translation id="1358214951266274152">మీరు కాపీ చేసిన లింక్‌ను సందర్శించండి</translation>
-<translation id="1360432990279830238">సైన్ అవుట్ చేసి, సమకాలీకరణను ఆఫ్ చేయలా?</translation>
+<translation id="1360432990279830238">సైన్ అవుట్ చేసి, సింక్‌ను ఆఫ్ చేయలా?</translation>
 <translation id="1375321115329958930">సేవ్ చేసిన పాస్‌వర్డ్‌లు</translation>
-<translation id="1377255359165588604">సమకాలీకరణ పని చేయడం ఆపివేయబడింది.</translation>
+<translation id="1377255359165588604">సింక్‌ పని చేయడం ఆపివేయబడింది.</translation>
 <translation id="1377321085342047638">కార్డ్ సంఖ్య</translation>
 <translation id="1383876407941801731">సెర్చ్</translation>
 <translation id="1400642268715879018">గత 4 వారాలు</translation>
@@ -69,7 +69,7 @@
 <translation id="1523341279170789507">అన్ని కుక్కీలను అనుమతించు</translation>
 <translation id="1524563461097350801">వద్దు, ధన్యవాదాలు</translation>
 <translation id="1535268707340844072">మీ ప్రస్తుత సెట్టింగ్ కారణంగా కొన్ని సైట్‌లను మీరు ఉపయోగించలేక పోవచ్చు. అన్ని సైట్‌లకు కుక్కీలను మేనేజ్ చేయడానికి, <ph name="BEGIN_LINK" />కుక్కీ సెట్టింగ్‌ల<ph name="END_LINK" />ను చూడండి.</translation>
-<translation id="1540800554400757039">చిరునామా 1</translation>
+<translation id="1540800554400757039">అడ్రస్‌ 1</translation>
 <translation id="1545749641540134597">QR కోడ్‌ను స్కాన్ చేయండి</translation>
 <translation id="1552525382687785070">సింక్‌ను మీ నిర్వాహకులు నిలిపివేశారు</translation>
 <translation id="1554477036522844996">కొత్త విండో</translation>
@@ -86,11 +86,11 @@
 <translation id="1657641691196698092">బ్లాక్ చేసిన కుక్కీలు</translation>
 <translation id="165877110639533037">తెరిచి ఉన్న ట్యాబ్‌లు లేవు</translation>
 <translation id="1674504678466460478"><ph name="SOURCE_LANGUAGE" /> నుండి <ph name="TARGET_LANGUAGE" />లోకి</translation>
-<translation id="168715261339224929">మీ బుక్‌మార్క్‌లను మీ అన్ని పరికరాలలోనూ పొందాలంటే, సమకాలీకరణను ఆన్ చేయండి.</translation>
+<translation id="168715261339224929">మీ బుక్‌మార్క్‌లను మీ అన్ని పరికరాలలోనూ పొందాలంటే, సింక్‌ను ఆన్ చేయండి.</translation>
 <translation id="1687475363370981210">అన్నీ చదివినట్లు గుర్తు పెట్టు</translation>
 <translation id="1689333818294560261">మారుపేరు</translation>
 <translation id="1690731385917361335">అంశాలు లేవు</translation>
-<translation id="1692118695553449118">సమకాలీకరణ ఆన్‌లో ఉంది</translation>
+<translation id="1692118695553449118">సింక్‌ ఆన్‌లో ఉంది</translation>
 <translation id="1700629756560807968"><ph name="NUMBER_OF_SELECTED_BOOKMARKS" /> ఎంచుకోబడ్డాయి</translation>
 <translation id="1740468249224277719">ఇన్‌స్టాల్ చేయడానికి రెండుసార్లు నొక్కండి.</translation>
 <translation id="1752547299766512813">పాస్‌వర్డ్‌లను సేవ్ చేయి</translation>
@@ -99,7 +99,7 @@
 <translation id="1809939268435598390">ఫోల్డర్‌ను తొలగించు</translation>
 <translation id="1813414402673211292">బ్రౌజింగ్‌ డేటాను క్లియర్ చేయి</translation>
 <translation id="1815941218935345331">పాస్‌కోడ్</translation>
-<translation id="1820259098641718022">పఠన జాబితాకు జోడించబడింది</translation>
+<translation id="1820259098641718022">పఠన లిస్ట్‌కు జోడించబడింది</translation>
 <translation id="1832848789136765277">మీ సింక్ చేసిన డేటాను మీరు ఎల్లప్పుడూ యాక్సెస్ చేయగలరని నిర్ధారించుకోవడానికి, అది మీరేనని వెరిఫై చేయండి</translation>
 <translation id="1870148520156231997">పాస్‌వర్డ్‌ను చూపండి</translation>
 <translation id="1872096359983322073">టార్చ్</translation>
@@ -165,7 +165,7 @@
 <translation id="2690858294534178585">కెమెరా వినియోగంలో ఉంది</translation>
 <translation id="2691653761409724435">ఆఫ్‌లైన్‌లో అందుబాటులో లేదు</translation>
 <translation id="2695507686909505111">పేజీ అనువాదం చేయబడింది</translation>
-<translation id="2702801445560668637">పఠనా జాబితా</translation>
+<translation id="2702801445560668637">పఠనా లిస్ట్‌</translation>
 <translation id="2704491540504985681">డౌన్‌లోడ్‌లు</translation>
 <translation id="2704606927547763573">కాపీ చేయబడింది</translation>
 <translation id="2709516037105925701">ఆటో-ఫిల్</translation>
@@ -182,7 +182,7 @@
 <translation id="2800683595868705743">ట్యాబ్ స్విచర్ నుండి నిష్క్రమించు</translation>
 <translation id="2815198996063984598">2. ఆటోమేటిక్ బ్రౌజర్ యాప్‌ను ట్యాప్ చేయండి</translation>
 <translation id="2820289420301699633">మీ అడ్మినిస్ట్రేటర్ Chromeపైన కంట్రోల్‌ను కలిగి ఉన్నారు, అలాగే దాని డేటాను యాక్సెస్ చేయగలరు</translation>
-<translation id="2830972654601096923">చిరునామాలను నిర్వహించు...</translation>
+<translation id="2830972654601096923">అడ్రస్‌లను నిర్వహించు...</translation>
 <translation id="2834956026595107950"><ph name="TITLE" />, <ph name="STATE" />, <ph name="URL" /></translation>
 <translation id="2840687315230832938">ప్రారంభ సింక్ సెటప్ పూర్తి కాలేదు</translation>
 <translation id="2843803966603263712">అనువాద సెట్టింగ్‌లను రీసెట్ చేయి</translation>
@@ -221,13 +221,13 @@
 <translation id="3131206671572504478">అన్నీ బ్లాక్ చేయి</translation>
 <translation id="313283613037595347">కొత్త అజ్ఞాత ట్యాబ్‌ను క్రియేట్ చేయండి.</translation>
 <translation id="3153862085237805241">కార్డ్‌ను సేవ్ చేయండి</translation>
-<translation id="3157387275655328056">పఠన జాబితాకు జోడించు</translation>
+<translation id="3157387275655328056">పఠన లిస్ట్‌కు జోడించు</translation>
 <translation id="3157684681743766797">అన్నీ గుర్తు పెట్టు…</translation>
 <translation id="3161291298470460782">ఇది మిమ్మల్ని సైన్ అవుట్ చేస్తుంది, సింక్‌ను ఆఫ్ చేస్తుంది, ఈ పరికరం నుండి మొత్తం Chrome డేటాను క్లియర్ చేస్తుంది. మీ సింక్ చేయబడిన డేటా మీ Google ఖాతాలోనే ఉండిపోతుంది.</translation>
 <translation id="3169472444629675720">కనుగొను</translation>
 <translation id="3175081911749765310">వెబ్ సేవలు</translation>
 <translation id="3178650076442119961">ఈ రోజు యాక్టివ్‌గా ఉంది</translation>
-<translation id="3181825792072797598">సమకాలీకరణను ఆన్ చేయి</translation>
+<translation id="3181825792072797598">సింక్‌ను ఆన్ చేయి</translation>
 <translation id="3181954750937456830">సురక్షిత బ్రౌజింగ్ (ప్రమాదకరమైన సైట్‌ల నుండి మిమ్మల్ని, మీ పరికరాన్ని రక్షిస్తుంది)</translation>
 <translation id="3184767182050912705"><ph name="BIOMETRIC_AUTHENITCATION_TYPE" />తో అన్‌లాక్ చేయండి</translation>
 <translation id="3207960819495026254">బుక్‌మార్క్ చేయబడింది</translation>
@@ -238,11 +238,11 @@
 <translation id="3261971309013797455">మీ చదవాల్సిన లిస్ట్ ఆఫ్‌లైన్‌లో అందుబాటులో ఉంది. మీ చదవాల్సిన లిస్ట్‌కు పేజీని జోడించడానికి,  <ph name="SHARE_OPENING_ICON" />ను  ట్యాప్ చేసి ఆపై <ph name="ADD_TO_READING_LIST_TEXT" />ను ట్యాప్ చేయండి.</translation>
 <translation id="3268451620468152448">ఓపెన్ టాబ్‌లు</translation>
 <translation id="3272527697863656322">రద్దు చేయి</translation>
-<translation id="3277021493514034324">సైట్ చిరునామా కాపీ చేయబడింది</translation>
+<translation id="3277021493514034324">సైట్ అడ్రస్‌ కాపీ చేయబడింది</translation>
 <translation id="3285962946108803577">పేజీని షేర్ చేయి...</translation>
 <translation id="3290875554372353449">ఖాతాను ఎంచుకోండి</translation>
 <translation id="3311748811247479259">ఆఫ్ చేయబడి ఉంది</translation>
-<translation id="3324193307694657476">చిరునామా 2</translation>
+<translation id="3324193307694657476">అడ్రస్‌ 2</translation>
 <translation id="3328801116991980348">సైట్ సమాచారం</translation>
 <translation id="3329904751041170572">సర్వర్‌కు కనెక్ట్ చేయడం సాధ్యపడలేదు.</translation>
 <translation id="3335947283844343239">మూసిన ట్యాబ్‌ను మళ్లీ తెరువు</translation>
@@ -333,7 +333,7 @@
 <translation id="4272631900155121838">QR కోడ్‌ను స్కాన్ చేయడానికి, సెట్టింగ్‌ల్లో కెమెరాను ప్రారంభించండి</translation>
 <translation id="4277990410970811858">సురక్షిత బ్రౌజింగ్</translation>
 <translation id="4281844954008187215">సర్వీస్ నియమాలు</translation>
-<translation id="430793432425771671">ప్రతి ఒక్కటీ సమకాలీకరించండి</translation>
+<translation id="430793432425771671">ప్రతి ఒక్కటీ సింక్ చేయండి</translation>
 <translation id="4309403553630140242">మరింత సమాచారం కోసం రెండుసార్లు నొక్కండి</translation>
 <translation id="430967081421617822">మొత్తం సమయం</translation>
 <translation id="4334428914252001502">1 చదవని కథనం ఉంది.</translation>
@@ -372,13 +372,13 @@
 <translation id="4689564913179979534">చెల్లింపు పద్ధతులను నిర్వహించు...</translation>
 <translation id="470966556546083668">సింక్‌ను ఆన్ చేయవద్దు</translation>
 <translation id="473775607612524610">అప్‌డేట్‌</translation>
-<translation id="4747097190499141774">Google Payకి సంబంధించిన చెల్లింపు పద్ధతులు మరియు చిరునామాలు రహస్య పదబంధం ఎన్‌క్రిప్షన్‌లో ఉండవు. మీ రహస్య పదబంధాన్ని కలిగి ఉన్నవారు మాత్రమే మీ ఎన్‌క్రిప్ట్ చేసిన డేటాను చదవగలరు. రహస్య పదబంధం Google ద్వారా ఎవరికీ పంపబడదు లేదా నిల్వ చేయబడదు. మీరు మీ రహస్య పదబంధాన్ని మర్చిపోతే లేదా ఈ సెట్టింగ్‌ను మార్చాలనుకుంటే, సమకాలీకరణను రీసెట్ చేయాల్సి ఉంటుంది. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
+<translation id="4747097190499141774">Google Payకి సంబంధించిన చెల్లింపు పద్ధతులు మరియు అడ్రస్‌లు రహస్య పదబంధం ఎన్‌క్రిప్షన్‌లో ఉండవు. మీ రహస్య పదబంధాన్ని కలిగి ఉన్నవారు మాత్రమే మీ ఎన్‌క్రిప్ట్ చేసిన డేటాను చదవగలరు. రహస్య పదబంధం Google ద్వారా ఎవరికీ పంపబడదు లేదా నిల్వ చేయబడదు. మీరు మీ రహస్య పదబంధాన్ని మర్చిపోతే లేదా ఈ సెట్టింగ్‌ను మార్చాలనుకుంటే, సింక్‌ను రీసెట్ చేయాల్సి ఉంటుంది. <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" /></translation>
 <translation id="4751645464639803239">కొత్త అజ్ఞాత ట్యాబ్</translation>
 <translation id="4775879719735953715">డిఫాల్ట్ బ్రౌజర్</translation>
 <translation id="4778644898150334464">వేరే పాస్‌వర్డ్‌ను ఉపయోగించండి</translation>
-<translation id="4802417911091824046">Google Payకి సంబంధించిన చెల్లింపు పద్ధతులు మరియు చిరునామాలు రహస్య పదబంధం ఎన్‌క్రిప్షన్‌లో ఉండవు.
+<translation id="4802417911091824046">Google Payకి సంబంధించిన చెల్లింపు పద్ధతులు మరియు అడ్రస్‌లు రహస్య పదబంధం ఎన్‌క్రిప్షన్‌లో ఉండవు.
 
-ఈ సెట్టింగ్‌ని మార్చడం కోసం, <ph name="BEGIN_LINK" />సమకాలీకరణను రీసెట్ చేయండి<ph name="END_LINK" /></translation>
+ఈ సెట్టింగ్‌ని మార్చడం కోసం, <ph name="BEGIN_LINK" />సింక్‌ను రీసెట్ చేయండి<ph name="END_LINK" /></translation>
 <translation id="4805759445554688327">చెల్లని కార్డ్ నంబర్</translation>
 <translation id="4808744395915275922">అప్‌డేట్‌లు</translation>
 <translation id="4818522717893377262">భాషను జోడించు...</translation>
@@ -414,7 +414,7 @@
 <translation id="5092117651143801290">తర్వాత చదవడానికి లేదా ఆఫ్‌లైన్‌లో చదవడానికి మీరు పేజీలను సేవ్ చేయవచ్చు. ఎక్కువ సమాచారంతో నిండి ఉన్న పొడుగాటి పేజీలను మీరు సేవ్ చేయాలనుకుంటున్నారో లేదో Chrome మిమ్మల్ని అడుగుతుంది.</translation>
 <translation id="5094827893301452931">ట్వీట్ చేయడం పూర్తయింది.</translation>
 <translation id="5118764316110575523">ఆఫ్ చేయబడి ఉంది</translation>
-<translation id="5127805178023152808">సమకాలీకరణ ఆఫ్‌లో ఉంది</translation>
+<translation id="5127805178023152808">సింక్‌ ఆఫ్‌లో ఉంది</translation>
 <translation id="5132942445612118989">అన్ని పరికరాల్లో మీ పాస్‌వర్డ్‌లు, చరిత్ర, మరిన్నింటిని సింక్ చేయండి</translation>
 <translation id="5140288047769711648">Chrome మీకు సంబంధించి ఈ పాస్‌వర్డ్‌ను గుర్తుంచుకుంటుంది. మీరు గుర్తుంచుకోనవసరం లేదు.</translation>
 <translation id="5150492518600715772">మీ పరికరానికి పంపండి</translation>
@@ -426,7 +426,7 @@
 <translation id="5190835502935405962">బుక్‌మార్క్‌ల బార్</translation>
 <translation id="5197255632782567636">ఇంటర్నెట్</translation>
 <translation id="5210365745912300556">ట్యాబ్‌ను మూసివేయి</translation>
-<translation id="5228579091201413441">సమకాలీకరణను ప్రారంభించండి</translation>
+<translation id="5228579091201413441">సింక్‌ను ప్రారంభించండి</translation>
 <translation id="5232485538978018676">నిర్వహించబడుతున్న ఖాతాతో సైన్ ఇన్ చేయండి</translation>
 <translation id="5234764350956374838">తొలగించు</translation>
 <translation id="5245322853195994030">సింక్‌ను రద్దు చేయి</translation>
@@ -666,7 +666,7 @@
 <translation id="734758817008927353">కార్డ్‌ను సేవ్ చేయడానికి ఎంపికలు</translation>
 <translation id="7348502496356775519">బుక్‌‍మార్క్</translation>
 <translation id="7353432112255316844">ఇది మీరే అని వెరిఫై చేయండి</translation>
-<translation id="7383797227493018512">పఠన జాబితా</translation>
+<translation id="7383797227493018512">పఠన లిస్ట్‌</translation>
 <translation id="7398893703713203428">లింక్‌ను క్రియేట్ చేయండి</translation>
 <translation id="739941347996872055">మునుపటి ట్యాబ్</translation>
 <translation id="7400418766976504921">URL</translation>
@@ -789,9 +789,9 @@
 <translation id="8605219856220328675">ట్యాబ్‌ను మూసివేయండి.</translation>
 <translation id="8620640915598389714">ఎడిట్</translation>
 <translation id="863090005774946393">మీ సంస్థ మీ బ్రౌజర్‌ను మేనేజ్ చేస్తోంది. కొన్ని ఫీచర్‌లు డిజేబుల్ కావచ్చు.</translation>
-<translation id="8636825310635137004">మీ ఇతర పరికరాల నుండి మీ ట్యాబ్‌లను పొందడానికి, సమకాలీకరణను ఆన్ చేయండి</translation>
+<translation id="8636825310635137004">మీ ఇతర పరికరాల నుండి మీ ట్యాబ్‌లను పొందడానికి, సింక్‌ను ఆన్ చేయండి</translation>
 <translation id="8654802032646794042">రద్దు చేయి</translation>
-<translation id="8668210798914567634">ఈ పేజీ మీ పఠన జాబితాకు సేవ్ చేయబడింది.</translation>
+<translation id="8668210798914567634">ఈ పేజీ మీ పఠన లిస్ట్‌కు సేవ్ చేయబడింది.</translation>
 <translation id="8680787084697685621">ఖాతా సైన్-ఇన్ వివరాల గడువు తేదీ ముగిసింది.</translation>
 <translation id="8691262314411702087">దేన్ని సమకాలీకరించాలో ఎంచుకోండి</translation>
 <translation id="8693663554456874301">{count,plural, =1{ట్యాబ్‌ను మూసివేయి}other{ట్యాబ్‌లను మూసివేయి}}</translation>
@@ -815,7 +815,7 @@
 <translation id="8881801611828450202">ఈ చిత్రం కోసం <ph name="SEARCH_ENGINE" />ని వెతకండి</translation>
 <translation id="8909135823018751308">భాగస్వామ్యం చేయి…</translation>
 <translation id="8917490105272468696">సరే, నాకు సమ్మతమే</translation>
-<translation id="895541991026785598">ఒక సమస్యను నివేదించండి</translation>
+<translation id="895541991026785598">ఒక సమస్యను రిపోర్ట్ చేయండి</translation>
 <translation id="8976382372951310360">సహాయం</translation>
 <translation id="8976414606286374109">కార్డ్‌లు మీ Google ఖాతాకు సేవ్ చేయబడ్డాయి.</translation>
 <translation id="8981454092730389528">Google కార్య‌క‌లాపాల నియంత్రణలు</translation>
@@ -829,7 +829,7 @@
 <translation id="9079935439869366234">అన్నీ చదవనట్లు గుర్తు పెట్టు</translation>
 <translation id="9081058212938299310"><ph name="USERNAME" /> పాస్‌వర్డ్‌ని అప్‌డేట్ చేయాలా?</translation>
 <translation id="9083392325882095631">1 అంశం</translation>
-<translation id="9083838294503912307">మీ అన్ని పరికరాలలోనూ సమకాలీకరణ మరియు వ్యక్తిగతీకరణ చేయడం కోసం, సమకాలీకరణను ఆన్ చేయండి.</translation>
+<translation id="9083838294503912307">మీ అన్ని పరికరాలలోనూ సింక్‌ మరియు వ్యక్తిగతీకరణ చేయడం కోసం, సింక్‌ను ఆన్ చేయండి.</translation>
 <translation id="9087108903408689779">Chrome సూచిత పాస్‌వర్డ్:</translation>
 <translation id="9094033019050270033">పాస్‌వర్డ్‌ను అప్‌డేట్ చేయి</translation>
 <translation id="9100610230175265781">రహస్య పదబంధం అవసరం</translation>
@@ -846,6 +846,6 @@
 <translation id="952704832371081537">రద్దు చేయి</translation>
 <translation id="984509647832111802">సింక్ పని చేయడం లేదు.</translation>
 <translation id="988141524645182168">ఇతర పరికరాలు</translation>
-<translation id="989988560359834682">చిరునామాను సవరించు</translation>
+<translation id="989988560359834682">అడ్రస్‌ను సవరించు</translation>
 <translation id="994757059139821576">కథనం సూచనలు</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/ios/chrome/credential_provider_extension/strings/resources/ios_credential_provider_extension_strings_fr-CA.xtb b/ios/chrome/credential_provider_extension/strings/resources/ios_credential_provider_extension_strings_fr-CA.xtb
index 2ff6ed0..1f8a63f 100644
--- a/ios/chrome/credential_provider_extension/strings/resources/ios_credential_provider_extension_strings_fr-CA.xtb
+++ b/ios/chrome/credential_provider_extension/strings/resources/ios_credential_provider_extension_strings_fr-CA.xtb
@@ -1,12 +1,14 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="fr-CA">
+<translation id="1196785757634502276">Vous avez déjà enregistré un mot de passe pour l'utilisateur « <ph name="USERNAME" /> » sur le site <ph name="WEBSITE" />. Voulez-vous le remplacer?</translation>
 <translation id="1276428923064733819">Copier</translation>
 <translation id="1614914292771557551">Votre mot de passe sera enregistré dans votre compte Google (<ph name="EMAIL" />) lorsque vous reviendrez à Chrome</translation>
 <translation id="1706288056912586527">Afficher le mot de passe</translation>
 <translation id="1977167321677356409">Mot de passe</translation>
 <translation id="2712586044587587728">Vos mots de passe Chrome seront accessibles dans d'autres applications. Vous pouvez désactiver cette option dans l'application Paramètres en tout temps.</translation>
 <translation id="3580107423202590938">Aucun mot de passe Chrome</translation>
+<translation id="368844171100841558">Remplacer</translation>
 <translation id="3753678329684433031">Remplir automatiquement le mot de passe dans Chrome</translation>
 <translation id="3789385946721385622">Nom d'utilisateur</translation>
 <translation id="4064278913989596727">Aide</translation>
@@ -36,6 +38,7 @@
 <translation id="8219905600827687498">Mots de passe suggérés</translation>
 <translation id="8300526662653766176">Définir un mot de passe</translation>
 <translation id="8332511935157148552">Aucun mot de passe trouvé</translation>
+<translation id="8486024683491936104">Voulez-vous remplacer le mot de passe?</translation>
 <translation id="8503813439785031346">Nom d'utilisateur</translation>
 <translation id="8518521100965196752">Pour utiliser vos mots de passe, vous devez d'abord définir un code sur votre appareil.</translation>
 <translation id="8877181643142698531">URL</translation>
diff --git a/ios/chrome/credential_provider_extension/strings/resources/ios_credential_provider_extension_strings_iw.xtb b/ios/chrome/credential_provider_extension/strings/resources/ios_credential_provider_extension_strings_iw.xtb
index 3dbfda49..aa45bf7 100644
--- a/ios/chrome/credential_provider_extension/strings/resources/ios_credential_provider_extension_strings_iw.xtb
+++ b/ios/chrome/credential_provider_extension/strings/resources/ios_credential_provider_extension_strings_iw.xtb
@@ -1,12 +1,14 @@
 <?xml version="1.0" ?>
 <!DOCTYPE translationbundle>
 <translationbundle lang="iw">
+<translation id="1196785757634502276">כבר שמרת סיסמה עבור המשתמש "<ph name="USERNAME" />" לאתר <ph name="WEBSITE" />. רוצה להחליף אותו?</translation>
 <translation id="1276428923064733819">העתקה</translation>
 <translation id="1614914292771557551">‏הסיסמה תישמר בחשבון Google (<ph name="EMAIL" />) לשימוש הבא שלך ב-Chrome</translation>
 <translation id="1706288056912586527">הצגת הסיסמה</translation>
 <translation id="1977167321677356409">סיסמה</translation>
 <translation id="2712586044587587728">‏הסיסמאות שלך ב-Chrome יהיו זמינות לשימוש באפליקציות אחרות. אפשר להשבית את האפשרות הזו בכל שלב דרך האפליקציה 'הגדרות'.</translation>
 <translation id="3580107423202590938">‏אין סיסמאות מ-Chrome</translation>
+<translation id="368844171100841558">החלפה</translation>
 <translation id="3753678329684433031">‏מילוי אוטומטי של הסיסמה ל-Chrome</translation>
 <translation id="3789385946721385622">שם משתמש</translation>
 <translation id="4064278913989596727">עזרה</translation>
@@ -36,6 +38,7 @@
 <translation id="8219905600827687498">הצעות לסיסמאות</translation>
 <translation id="8300526662653766176">עליך להגדיר קוד גישה</translation>
 <translation id="8332511935157148552">לא נמצאו סיסמאות</translation>
+<translation id="8486024683491936104">להחליף את הסיסמה?</translation>
 <translation id="8503813439785031346">שם משתמש</translation>
 <translation id="8518521100965196752">כדי שניתן יהיה להשתמש בסיסמאות, יש להגדיר קוד גישה במכשיר.</translation>
 <translation id="8877181643142698531">‏כתובת URL</translation>
diff --git a/ios/chrome/share_extension/strings/resources/ios_share_extension_strings_te.xtb b/ios/chrome/share_extension/strings/resources/ios_share_extension_strings_te.xtb
index 45ced9f..b0e138b 100644
--- a/ios/chrome/share_extension/strings/resources/ios_share_extension_strings_te.xtb
+++ b/ios/chrome/share_extension/strings/resources/ios_share_extension_strings_te.xtb
@@ -3,7 +3,7 @@
 <translationbundle lang="te">
 <translation id="1613742542373525524">APPLICATION_NAME ఈ లింక్‌ను హ్యాండిల్ చేయలేదు.</translation>
 <translation id="4655616150233109325">Chromeలో తెరువు</translation>
-<translation id="601731541915429022">పఠన జాబితాకు జోడించు</translation>
+<translation id="601731541915429022">పఠన లిస్ట్‌కు జోడించు</translation>
 <translation id="6930009216791986919">బుక్‌మార్క్‌లకు జోడించు</translation>
 <translation id="6965382102122355670">సరే</translation>
 <translation id="8258999165172757081">జోడించబడింది</translation>
diff --git a/ios/google_internal/frameworks/chrome_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/chrome_internal_dynamic_framework.arm64.zip.sha1
index 439cca6..6f2a445f 100644
--- a/ios/google_internal/frameworks/chrome_internal_dynamic_framework.arm64.zip.sha1
+++ b/ios/google_internal/frameworks/chrome_internal_dynamic_framework.arm64.zip.sha1
@@ -1 +1 @@
-baa5f11cd7090dcf0d21747c15106d8231542952
\ No newline at end of file
+a31e9ede3aecb566a675e1bb7b7dc5a3055a0f1b
\ No newline at end of file
diff --git a/ios/google_internal/frameworks/chrome_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/chrome_internal_dynamic_framework.x64.zip.sha1
index c12e398f..a728819 100644
--- a/ios/google_internal/frameworks/chrome_internal_dynamic_framework.x64.zip.sha1
+++ b/ios/google_internal/frameworks/chrome_internal_dynamic_framework.x64.zip.sha1
@@ -1 +1 @@
-4124c34017dfec0e4173412143ea83359fae7457
\ No newline at end of file
+84ca1bd5dea5c9367b4e51f360acc964865f859d
\ No newline at end of file
diff --git a/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.arm64.zip.sha1
index 1989f64..e2da77d 100644
--- a/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.arm64.zip.sha1
+++ b/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.arm64.zip.sha1
@@ -1 +1 @@
-e510b4621493ec01e7c2e9fe610e09246b3cf62e
\ No newline at end of file
+4f03f5ce04bb1eb98309dafebd6d842cd2cd5b1c
\ No newline at end of file
diff --git a/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.x64.zip.sha1
index f14936d..4303de1 100644
--- a/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.x64.zip.sha1
+++ b/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.x64.zip.sha1
@@ -1 +1 @@
-bdb55eb24174bb0f0d418ae4419e7ee92988f7e1
\ No newline at end of file
+1534f1282c4b1a8ee73e13722f316be459540e8b
\ No newline at end of file
diff --git a/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.arm64.zip.sha1
index cecc75cd..c9fc30e 100644
--- a/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.arm64.zip.sha1
+++ b/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.arm64.zip.sha1
@@ -1 +1 @@
-0720172e33aff4ca5d6aab231f4060752f75f6d4
\ No newline at end of file
+53c96823e5ff4953db8f14039fc2e8c8a2230f98
\ No newline at end of file
diff --git a/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.x64.zip.sha1
index a2a491f..fae47a1 100644
--- a/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.x64.zip.sha1
+++ b/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.x64.zip.sha1
@@ -1 +1 @@
-5f2950db501072e8698aa18a91e31615cb41ed10
\ No newline at end of file
+6ee0a59ffdad3f45835c83fa6b6085061bc1129b
\ No newline at end of file
diff --git a/ios/google_internal/frameworks/remoting_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/remoting_internal_dynamic_framework.arm64.zip.sha1
index 0260cb2..c7c0317 100644
--- a/ios/google_internal/frameworks/remoting_internal_dynamic_framework.arm64.zip.sha1
+++ b/ios/google_internal/frameworks/remoting_internal_dynamic_framework.arm64.zip.sha1
@@ -1 +1 @@
-8f09874a7fdd30d19905deee4bcd833650acdfd3
\ No newline at end of file
+9b33401c20dd240a40fa54f696ea358e94b998f8
\ No newline at end of file
diff --git a/ios/google_internal/frameworks/remoting_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/remoting_internal_dynamic_framework.x64.zip.sha1
index 83509df0..3aae501 100644
--- a/ios/google_internal/frameworks/remoting_internal_dynamic_framework.x64.zip.sha1
+++ b/ios/google_internal/frameworks/remoting_internal_dynamic_framework.x64.zip.sha1
@@ -1 +1 @@
-20b97de15a0f87a49b4ae11120bd017d5f1561ea
\ No newline at end of file
+8060511ec3682f32761e097553ad36faa02fc3ef
\ No newline at end of file
diff --git a/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.arm64.zip.sha1
index d8876d2..f4b56d97 100644
--- a/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.arm64.zip.sha1
+++ b/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.arm64.zip.sha1
@@ -1 +1 @@
-e025a9507721d86fa802b5f72871d3ddaedcf475
\ No newline at end of file
+284041f2977bdef6c973f049a772f4e7def9c49c
\ No newline at end of file
diff --git a/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.x64.zip.sha1
index c9bb21b..06da932a 100644
--- a/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.x64.zip.sha1
+++ b/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.x64.zip.sha1
@@ -1 +1 @@
-ecab0bf937d44e0fe3ee35006ed2bf75d57d5fe1
\ No newline at end of file
+176808df1c91ce8db6a1d8759e65d1ea3d8ca5e7
\ No newline at end of file
diff --git a/media/capture/video/chromeos/camera_hal_dispatcher_impl.cc b/media/capture/video/chromeos/camera_hal_dispatcher_impl.cc
index 5825b3a..07ade5d 100644
--- a/media/capture/video/chromeos/camera_hal_dispatcher_impl.cc
+++ b/media/capture/video/chromeos/camera_hal_dispatcher_impl.cc
@@ -49,6 +49,10 @@
     "/run/camera/force_enable_face_ae";
 const base::FilePath::CharType kForceDisableAePath[] =
     "/run/camera/force_disable_face_ae";
+const base::FilePath::CharType kForceEnableHdrNetPath[] =
+    "/run/camera/force_enable_hdrnet";
+const base::FilePath::CharType kForceDisableHdrNetPath[] =
+    "/run/camera/force_disable_hdrnet";
 
 std::string GenerateRandomToken() {
   char random_bytes[16];
@@ -174,24 +178,50 @@
   TRACE_EVENT0("camera", "CameraHalDispatcherImpl");
   base::trace_event::TraceLog::GetInstance()->AddEnabledStateObserver(this);
 
-  base::FilePath enable_file_path(kForceEnableAePath);
-  base::FilePath disable_file_path(kForceDisableAePath);
-  if (!base::DeleteFile(enable_file_path)) {
-    LOG(WARNING) << "Could not delete " << kForceEnableAePath;
+  {
+    base::FilePath enable_file_path(kForceEnableAePath);
+    base::FilePath disable_file_path(kForceDisableAePath);
+    if (!base::DeleteFile(enable_file_path)) {
+      LOG(WARNING) << "Could not delete " << kForceEnableAePath;
+    }
+    if (!base::DeleteFile(disable_file_path)) {
+      LOG(WARNING) << "Could not delete " << kForceDisableAePath;
+    }
+    const base::CommandLine* command_line =
+        base::CommandLine::ForCurrentProcess();
+    if (command_line->HasSwitch(media::switches::kForceControlFaceAe)) {
+      if (command_line->GetSwitchValueASCII(
+              media::switches::kForceControlFaceAe) == "enable") {
+        base::File file(enable_file_path, base::File::FLAG_CREATE_ALWAYS);
+        file.Close();
+      } else {
+        base::File file(disable_file_path, base::File::FLAG_CREATE_ALWAYS);
+        file.Close();
+      }
+    }
   }
-  if (!base::DeleteFile(disable_file_path)) {
-    LOG(WARNING) << "Could not delete " << kForceDisableAePath;
-  }
-  const base::CommandLine* command_line =
-      base::CommandLine::ForCurrentProcess();
-  if (command_line->HasSwitch(media::switches::kForceControlFaceAe)) {
-    if (command_line->GetSwitchValueASCII(
-            media::switches::kForceControlFaceAe) == "enable") {
-      base::File file(enable_file_path, base::File::FLAG_CREATE_ALWAYS);
-      file.Close();
-    } else {
-      base::File file(disable_file_path, base::File::FLAG_CREATE_ALWAYS);
-      file.Close();
+
+  {
+    base::FilePath enable_file_path(kForceEnableHdrNetPath);
+    base::FilePath disable_file_path(kForceDisableHdrNetPath);
+    if (!base::DeleteFile(enable_file_path)) {
+      LOG(WARNING) << "Could not delete " << kForceEnableHdrNetPath;
+    }
+    if (!base::DeleteFile(disable_file_path)) {
+      LOG(WARNING) << "Could not delete " << kForceDisableHdrNetPath;
+    }
+    const base::CommandLine* command_line =
+        base::CommandLine::ForCurrentProcess();
+    if (command_line->HasSwitch(media::switches::kHdrNetOverride)) {
+      std::string value =
+          command_line->GetSwitchValueASCII(switches::kHdrNetOverride);
+      if (value == switches::kHdrNetForceEnabled) {
+        base::File file(enable_file_path, base::File::FLAG_CREATE_ALWAYS);
+        file.Close();
+      } else if (value == switches::kHdrNetForceDisabled) {
+        base::File file(disable_file_path, base::File::FLAG_CREATE_ALWAYS);
+        file.Close();
+      }
     }
   }
 
diff --git a/media/capture/video/chromeos/video_capture_features_chromeos.cc b/media/capture/video/chromeos/video_capture_features_chromeos.cc
index 81ee4c6..a892c838 100644
--- a/media/capture/video/chromeos/video_capture_features_chromeos.cc
+++ b/media/capture/video/chromeos/video_capture_features_chromeos.cc
@@ -5,8 +5,12 @@
 #include "media/capture/video/chromeos/video_capture_features_chromeos.h"
 
 namespace media {
+
 namespace switches {
+
 const char kForceControlFaceAe[] = "force-control-face-ae";
+const char kHdrNetOverride[] = "hdrnet-override";
+
 }  // namespace switches
 
 namespace features {
@@ -17,4 +21,5 @@
     "DisableCameraFrameRotationAtSource", base::FEATURE_DISABLED_BY_DEFAULT};
 
 }  // namespace features
+
 }  // namespace media
diff --git a/media/capture/video/chromeos/video_capture_features_chromeos.h b/media/capture/video/chromeos/video_capture_features_chromeos.h
index c8745cb..4170ee3 100644
--- a/media/capture/video/chromeos/video_capture_features_chromeos.h
+++ b/media/capture/video/chromeos/video_capture_features_chromeos.h
@@ -11,7 +11,13 @@
 namespace media {
 
 namespace switches {
+
 CAPTURE_EXPORT extern const char kForceControlFaceAe[];
+
+CAPTURE_EXPORT extern const char kHdrNetOverride[];
+constexpr char kHdrNetForceEnabled[] = "force-enabled";
+constexpr char kHdrNetForceDisabled[] = "force-disabled";
+
 }  // namespace switches
 
 namespace features {
@@ -19,6 +25,7 @@
 CAPTURE_EXPORT extern const base::Feature kDisableCameraFrameRotationAtSource;
 
 }  // namespace features
+
 }  // namespace media
 
 #endif  // MEDIA_CAPTURE_VIDEO_CHROMEOS_VIDEO_CAPTURE_FEATURES_CHROMEOS_H_
diff --git a/media/renderers/video_frame_rgba_to_yuva_converter.cc b/media/renderers/video_frame_rgba_to_yuva_converter.cc
index 0d94aa8..de5a84f 100644
--- a/media/renderers/video_frame_rgba_to_yuva_converter.cc
+++ b/media/renderers/video_frame_rgba_to_yuva_converter.cc
@@ -131,6 +131,7 @@
 
   // Create SkSurfaces for the destination planes.
   sk_sp<SkSurface> sk_surfaces[SkYUVAInfo::kMaxPlanes];
+  SkSurface* sk_surface_ptrs[SkYUVAInfo::kMaxPlanes] = {nullptr};
   VideoFrameYUVMailboxesHolder holder;
   if (!holder.VideoFrameToPlaneSkSurfaces(dst_video_frame, provider,
                                           sk_surfaces)) {
@@ -143,15 +144,14 @@
   // GpuMemoryBuffer and SharedImage resources have been reused.
   ri->Flush();
   WaitAndReplaceSyncTokenClient client(ri);
-  for (size_t plane = 0; plane < 2; ++plane)
+  for (int plane = 0; plane < holder.yuva_info().numPlanes(); ++plane) {
+    sk_surface_ptrs[plane] = sk_surfaces[plane].get();
     dst_video_frame->UpdateMailboxHolderSyncToken(plane, &client);
+  }
 
   // Do the blit.
-  skia::BlitRGBAToYUVA(
-      scoped_sk_image->sk_image(),
-      SkRect::MakeWH(src_size.width(), src_size.height()), sk_surfaces,
-      holder.yuva_info(),
-      SkRect::MakeWH(holder.yuva_info().width(), holder.yuva_info().height()));
+  skia::BlitRGBAToYUVA(scoped_sk_image->sk_image().get(), sk_surface_ptrs,
+                       holder.yuva_info());
   provider->GrContext()->flushAndSubmit(false);
   ri->Flush();
 
diff --git a/remoting/resources/remoting_strings_te.xtb b/remoting/resources/remoting_strings_te.xtb
index 70a19a2..d315db8 100644
--- a/remoting/resources/remoting_strings_te.xtb
+++ b/remoting/resources/remoting_strings_te.xtb
@@ -8,7 +8,7 @@
 <translation id="1450760146488584666">అభ్యర్థించిన ఆబ్జెక్ట్ లేదు.</translation>
 <translation id="1480046233931937785">క్రెడిట్‌లు</translation>
 <translation id="1520828917794284345">డెస్క్‌టాప్‌ను సరిపోయే పరిమాణానికి మార్చు</translation>
-<translation id="1546934824884762070">ఊహించని ఎర్రర్ ఏర్పడింది. దయచేసి డెవలపర్‌లకు ఈ సమస్యను నివేదించండి.</translation>
+<translation id="1546934824884762070">ఊహించని ఎర్రర్ ఏర్పడింది. దయచేసి డెవలపర్‌లకు ఈ సమస్యను రిపోర్ట్ చేయండి.</translation>
 <translation id="1697532407822776718">మీరు సిద్ధంగా ఉన్నారు!</translation>
 <translation id="1742469581923031760">కనెక్ట్ చేస్తోంది…</translation>
 <translation id="177040763384871009">రిమోట్ పరికరంలో క్లిక్ చేసిన లింక్‌లను క్లయింట్ బ్రౌజర్‌లో తెరవడం కోసం అనుమతించడానికి, మీరు సిస్టమ్ వెబ్ బ్రౌజర్‌ను "<ph name="URL_FORWARDER_NAME" />"కు మార్చాలి.</translation>
@@ -43,7 +43,7 @@
 <translation id="2919669478609886916">మీరు ప్రస్తుతం ఈ మెషిన్ను మరొక వినియోగదారుతో షేర్‌ చేస్తున్నారు. మీరు షేర్‌ చేయడాన్ని కొనసాగించాలని అనుకుంటున్నారా?</translation>
 <translation id="2939145106548231838">హోస్ట్ చేయడానికి ప్రామాణీకరించండి</translation>
 <translation id="3027681561976217984">స్పర్శ మోడ్</translation>
-<translation id="3106379468611574572">రిమోట్ కంప్యూటర్ కనెక్షన్ అభ్యర్థనలకు ప్రతిస్పందించడం లేదు. దయచేసి ఇది ఆన్‌లైన్‌లో ఉందని ధృవీకరించుకుని, మళ్లీ ప్రయత్నించండి.</translation>
+<translation id="3106379468611574572">రిమోట్ కంప్యూటర్ కనెక్షన్ రిక్వెస్ట్‌లకు ప్రతిస్పందించడం లేదు. దయచేసి ఇది ఆన్‌లైన్‌లో ఉందని ధృవీకరించుకుని, మళ్లీ ప్రయత్నించండి.</translation>
 <translation id="3150823315463303127">విధానాన్ని చదవడంలో హోస్ట్ విఫలమైంది.</translation>
 <translation id="3171922709365450819">ఈ పరికరానికి మూడవ పక్షం ప్రామాణీకరణ అవసరమైనందున దీనికి ఈ క్లయింట్ మద్దతు లేదు.</translation>
 <translation id="3197730452537982411">రిమోట్ డెస్క్‌టాప్</translation>
@@ -150,7 +150,7 @@
 <translation id="7658239707568436148">రద్దు చేయి</translation>
 <translation id="7665369617277396874">ఖాతాను జోడించండి</translation>
 <translation id="7678209621226490279">ఎడమవైపున ఉంచు</translation>
-<translation id="7693372326588366043">హోస్ట్‌ల జాబితాను రిఫ్రెష్ చేయి</translation>
+<translation id="7693372326588366043">హోస్ట్‌ల లిస్ట్‌ను రిఫ్రెష్ చేయి</translation>
 <translation id="7714222945760997814">దీనిని నివేదించు</translation>
 <translation id="7868137160098754906">దయచేసి రిమోట్ కంప్యూటర్ కోసం మీ PINను నమోదు చేయండి.</translation>
 <translation id="7895403300744144251">రిమోట్ కంప్యూటర్‌లోని భద్రతా విధానాలు మీ ఖాతా నుండి కనెక్షన్‌లను అనుమతించవు.</translation>
diff --git a/services/network/public/cpp/link_header_parser.cc b/services/network/public/cpp/link_header_parser.cc
index 3213993..dc2ba383 100644
--- a/services/network/public/cpp/link_header_parser.cc
+++ b/services/network/public/cpp/link_header_parser.cc
@@ -57,7 +57,8 @@
     return mojom::LinkAsAttribute::kImage;
   else if (value == "script")
     return mojom::LinkAsAttribute::kScript;
-  else if (value == "stylesheet")
+  // TODO(crbug.com/671310): Disallow "stylesheet", it was allowed accidentally.
+  else if (value == "style" || value == "stylesheet")
     return mojom::LinkAsAttribute::kStyleSheet;
   return absl::nullopt;
 }
diff --git a/services/network/public/cpp/link_header_parser_unittest.cc b/services/network/public/cpp/link_header_parser_unittest.cc
index 0d04fc0e..8809dba 100644
--- a/services/network/public/cpp/link_header_parser_unittest.cc
+++ b/services/network/public/cpp/link_header_parser_unittest.cc
@@ -42,7 +42,7 @@
       base::MakeRefCounted<net::HttpResponseHeaders>("HTTP/1.1 200 OK\n");
   // `unknownattr` is not pre-defined.
   headers->AddHeader("link",
-                     "</style.css>; rel=preload; as=stylesheet; unknownattr");
+                     "</style.css>; rel=preload; as=style; unknownattr");
 
   std::vector<mojom::LinkHeaderPtr> parsed_headers =
       ParseLinkHeaders(*headers, kBaseUrl);
@@ -112,7 +112,7 @@
   headers->AddHeader("link", "</font.woff2>; rel=preload; as=font");
   headers->AddHeader("link", "</image.jpg>; rel=preload; as=image");
   headers->AddHeader("link", "</script.js>; rel=preload; as=script");
-  headers->AddHeader("link", "</style.css>; rel=preload; as=stylesheet");
+  headers->AddHeader("link", "</style.css>; rel=preload; as=style");
 
   std::vector<mojom::LinkHeaderPtr> parsed_headers =
       ParseLinkHeaders(*headers, kBaseUrl);
diff --git a/skia/ext/rgba_to_yuva.cc b/skia/ext/rgba_to_yuva.cc
index 1dbbc98a..3c64dad 100644
--- a/skia/ext/rgba_to_yuva.cc
+++ b/skia/ext/rgba_to_yuva.cc
@@ -12,11 +12,13 @@
 
 namespace skia {
 
-void BlitRGBAToYUVA(sk_sp<SkImage> src_image,
-                    const SkRect& src_rect,
-                    sk_sp<SkSurface> dst_surfaces[SkYUVAInfo::kMaxPlanes],
-                    const SkYUVAInfo& dst_yuva_info,
-                    const SkRect& dst_rect) {
+void BlitRGBAToYUVA(SkImage* src_image,
+                    SkSurface* dst_surfaces[SkYUVAInfo::kMaxPlanes],
+                    const SkYUVAInfo& dst_yuva_info) {
+  const SkRect src_rect = SkRect::Make(src_image->bounds());
+  const SkRect dst_rect =
+      SkRect::MakeSize(SkSize::Make(dst_yuva_info.dimensions()));
+
   // TODO(https://crbug.com/1206168): These color matrices are copied directly
   // from kRGBtoYColorWeights et al in the gpu::GLHelperScaling::
   // CreateI420Planerizer method this is code is replacing. This corresponds
diff --git a/skia/ext/rgba_to_yuva.h b/skia/ext/rgba_to_yuva.h
index d6c7b483..41a8327 100644
--- a/skia/ext/rgba_to_yuva.h
+++ b/skia/ext/rgba_to_yuva.h
@@ -14,12 +14,9 @@
 // Copy `src_image` from RGBA to the YUVA planes specified in `dst_surfaces`,
 // using the color space and plane configuration information specified in
 // `dst_yuva_info`.
-SK_API void BlitRGBAToYUVA(
-    sk_sp<SkImage> src_image,
-    const SkRect& src_rect,
-    sk_sp<SkSurface> dst_surfaces[SkYUVAInfo::kMaxPlanes],
-    const SkYUVAInfo& dst_yuva_info,
-    const SkRect& dst_rect);
+SK_API void BlitRGBAToYUVA(SkImage* src_image,
+                           SkSurface* dst_surfaces[SkYUVAInfo::kMaxPlanes],
+                           const SkYUVAInfo& dst_yuva_info);
 
 }  // namespace skia
 
diff --git a/testing/buildbot/chromium.android.fyi.json b/testing/buildbot/chromium.android.fyi.json
index c482836..2a9822e83 100644
--- a/testing/buildbot/chromium.android.fyi.json
+++ b/testing/buildbot/chromium.android.fyi.json
@@ -5663,12 +5663,12 @@
           "--test-runner-outdir",
           ".",
           "--client-outdir",
-          "../../weblayer_instrumentation_test_M92/out/Release",
+          "../../weblayer_instrumentation_test_M93/out/Release",
           "--implementation-outdir",
           ".",
           "--test-expectations",
           "../../weblayer/browser/android/javatests/skew/expectations.txt",
-          "--client-version=92",
+          "--client-version=93",
           "--gs-results-bucket=chromium-result-details",
           "--recover-devices",
           "--avd-config=../../tools/android/avd/proto/generic_android29.textpb"
@@ -5678,11 +5678,11 @@
             "--bucket",
             "chromium-result-details",
             "--test-name",
-            "weblayer_skew_tests_with_client_from_92"
+            "weblayer_skew_tests_with_client_from_93"
           ],
           "script": "//build/android/pylib/results/presentation/test_results_presentation.py"
         },
-        "name": "weblayer_skew_tests_with_client_from_92",
+        "name": "weblayer_skew_tests_with_client_from_93",
         "resultdb": {
           "enable": true,
           "has_native_resultdb_integration": true
@@ -5692,8 +5692,8 @@
           "cipd_packages": [
             {
               "cipd_package": "chromium/testing/weblayer-x86",
-              "location": "weblayer_instrumentation_test_M92",
-              "revision": "version:92.0.4515.157"
+              "location": "weblayer_instrumentation_test_M93",
+              "revision": "version:93.0.4577.47"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -5780,7 +5780,7 @@
             {
               "cipd_package": "chromium/testing/weblayer-x86",
               "location": "weblayer_instrumentation_test_M94",
-              "revision": "version:94.0.4606.3"
+              "revision": "version:94.0.4606.6"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -5926,10 +5926,10 @@
           "--client-outdir",
           ".",
           "--implementation-outdir",
-          "../../weblayer_instrumentation_test_M92/out/Release",
+          "../../weblayer_instrumentation_test_M93/out/Release",
           "--test-expectations",
           "../../weblayer/browser/android/javatests/skew/expectations.txt",
-          "--impl-version=92",
+          "--impl-version=93",
           "--gs-results-bucket=chromium-result-details",
           "--recover-devices",
           "--avd-config=../../tools/android/avd/proto/generic_android29.textpb"
@@ -5939,11 +5939,11 @@
             "--bucket",
             "chromium-result-details",
             "--test-name",
-            "weblayer_skew_tests_with_impl_from_92"
+            "weblayer_skew_tests_with_impl_from_93"
           ],
           "script": "//build/android/pylib/results/presentation/test_results_presentation.py"
         },
-        "name": "weblayer_skew_tests_with_impl_from_92",
+        "name": "weblayer_skew_tests_with_impl_from_93",
         "resultdb": {
           "enable": true,
           "has_native_resultdb_integration": true
@@ -5953,8 +5953,8 @@
           "cipd_packages": [
             {
               "cipd_package": "chromium/testing/weblayer-x86",
-              "location": "weblayer_instrumentation_test_M92",
-              "revision": "version:92.0.4515.157"
+              "location": "weblayer_instrumentation_test_M93",
+              "revision": "version:93.0.4577.47"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -6041,7 +6041,7 @@
             {
               "cipd_package": "chromium/testing/weblayer-x86",
               "location": "weblayer_instrumentation_test_M94",
-              "revision": "version:94.0.4606.3"
+              "revision": "version:94.0.4606.6"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
diff --git a/testing/buildbot/chromium.android.json b/testing/buildbot/chromium.android.json
index 8cd57c2..1a50839a 100644
--- a/testing/buildbot/chromium.android.json
+++ b/testing/buildbot/chromium.android.json
@@ -56070,12 +56070,12 @@
           "--test-runner-outdir",
           ".",
           "--client-outdir",
-          "../../weblayer_instrumentation_test_M92/out/Release",
+          "../../weblayer_instrumentation_test_M93/out/Release",
           "--implementation-outdir",
           ".",
           "--test-expectations",
           "../../weblayer/browser/android/javatests/skew/expectations.txt",
-          "--client-version=92",
+          "--client-version=93",
           "--gs-results-bucket=chromium-result-details",
           "--recover-devices",
           "--avd-config=../../tools/android/avd/proto/generic_android23.textpb"
@@ -56085,11 +56085,11 @@
             "--bucket",
             "chromium-result-details",
             "--test-name",
-            "weblayer_skew_tests_with_chrome_with_client_from_92"
+            "weblayer_skew_tests_with_chrome_with_client_from_93"
           ],
           "script": "//build/android/pylib/results/presentation/test_results_presentation.py"
         },
-        "name": "weblayer_skew_tests_with_chrome_with_client_from_92",
+        "name": "weblayer_skew_tests_with_chrome_with_client_from_93",
         "resultdb": {
           "enable": true,
           "has_native_resultdb_integration": true
@@ -56099,8 +56099,8 @@
           "cipd_packages": [
             {
               "cipd_package": "chromium/testing/weblayer-x86",
-              "location": "weblayer_instrumentation_test_M92",
-              "revision": "version:92.0.4515.157"
+              "location": "weblayer_instrumentation_test_M93",
+              "revision": "version:93.0.4577.47"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -56188,7 +56188,7 @@
             {
               "cipd_package": "chromium/testing/weblayer-x86",
               "location": "weblayer_instrumentation_test_M94",
-              "revision": "version:94.0.4606.3"
+              "revision": "version:94.0.4606.6"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -56336,10 +56336,10 @@
           "--client-outdir",
           ".",
           "--implementation-outdir",
-          "../../weblayer_instrumentation_test_M92/out/Release",
+          "../../weblayer_instrumentation_test_M93/out/Release",
           "--test-expectations",
           "../../weblayer/browser/android/javatests/skew/expectations.txt",
-          "--impl-version=92",
+          "--impl-version=93",
           "--gs-results-bucket=chromium-result-details",
           "--recover-devices",
           "--avd-config=../../tools/android/avd/proto/generic_android23.textpb"
@@ -56349,11 +56349,11 @@
             "--bucket",
             "chromium-result-details",
             "--test-name",
-            "weblayer_skew_tests_with_chrome_with_impl_from_92"
+            "weblayer_skew_tests_with_chrome_with_impl_from_93"
           ],
           "script": "//build/android/pylib/results/presentation/test_results_presentation.py"
         },
-        "name": "weblayer_skew_tests_with_chrome_with_impl_from_92",
+        "name": "weblayer_skew_tests_with_chrome_with_impl_from_93",
         "resultdb": {
           "enable": true,
           "has_native_resultdb_integration": true
@@ -56363,8 +56363,8 @@
           "cipd_packages": [
             {
               "cipd_package": "chromium/testing/weblayer-x86",
-              "location": "weblayer_instrumentation_test_M92",
-              "revision": "version:92.0.4515.157"
+              "location": "weblayer_instrumentation_test_M93",
+              "revision": "version:93.0.4577.47"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -56452,7 +56452,7 @@
             {
               "cipd_package": "chromium/testing/weblayer-x86",
               "location": "weblayer_instrumentation_test_M94",
-              "revision": "version:94.0.4606.3"
+              "revision": "version:94.0.4606.6"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -56671,12 +56671,12 @@
           "--test-runner-outdir",
           ".",
           "--client-outdir",
-          "../../weblayer_instrumentation_test_M92/out/Release",
+          "../../weblayer_instrumentation_test_M93/out/Release",
           "--implementation-outdir",
           ".",
           "--test-expectations",
           "../../weblayer/browser/android/javatests/skew/expectations.txt",
-          "--client-version=92",
+          "--client-version=93",
           "--gs-results-bucket=chromium-result-details",
           "--recover-devices",
           "--avd-config=../../tools/android/avd/proto/generic_android27.textpb"
@@ -56686,11 +56686,11 @@
             "--bucket",
             "chromium-result-details",
             "--test-name",
-            "weblayer_skew_tests_with_client_from_92"
+            "weblayer_skew_tests_with_client_from_93"
           ],
           "script": "//build/android/pylib/results/presentation/test_results_presentation.py"
         },
-        "name": "weblayer_skew_tests_with_client_from_92",
+        "name": "weblayer_skew_tests_with_client_from_93",
         "resultdb": {
           "enable": true,
           "has_native_resultdb_integration": true
@@ -56700,8 +56700,8 @@
           "cipd_packages": [
             {
               "cipd_package": "chromium/testing/weblayer-x86",
-              "location": "weblayer_instrumentation_test_M92",
-              "revision": "version:92.0.4515.157"
+              "location": "weblayer_instrumentation_test_M93",
+              "revision": "version:93.0.4577.47"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -56788,7 +56788,7 @@
             {
               "cipd_package": "chromium/testing/weblayer-x86",
               "location": "weblayer_instrumentation_test_M94",
-              "revision": "version:94.0.4606.3"
+              "revision": "version:94.0.4606.6"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -56934,10 +56934,10 @@
           "--client-outdir",
           ".",
           "--implementation-outdir",
-          "../../weblayer_instrumentation_test_M92/out/Release",
+          "../../weblayer_instrumentation_test_M93/out/Release",
           "--test-expectations",
           "../../weblayer/browser/android/javatests/skew/expectations.txt",
-          "--impl-version=92",
+          "--impl-version=93",
           "--gs-results-bucket=chromium-result-details",
           "--recover-devices",
           "--avd-config=../../tools/android/avd/proto/generic_android27.textpb"
@@ -56947,11 +56947,11 @@
             "--bucket",
             "chromium-result-details",
             "--test-name",
-            "weblayer_skew_tests_with_impl_from_92"
+            "weblayer_skew_tests_with_impl_from_93"
           ],
           "script": "//build/android/pylib/results/presentation/test_results_presentation.py"
         },
-        "name": "weblayer_skew_tests_with_impl_from_92",
+        "name": "weblayer_skew_tests_with_impl_from_93",
         "resultdb": {
           "enable": true,
           "has_native_resultdb_integration": true
@@ -56961,8 +56961,8 @@
           "cipd_packages": [
             {
               "cipd_package": "chromium/testing/weblayer-x86",
-              "location": "weblayer_instrumentation_test_M92",
-              "revision": "version:92.0.4515.157"
+              "location": "weblayer_instrumentation_test_M93",
+              "revision": "version:93.0.4577.47"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -57049,7 +57049,7 @@
             {
               "cipd_package": "chromium/testing/weblayer-x86",
               "location": "weblayer_instrumentation_test_M94",
-              "revision": "version:94.0.4606.3"
+              "revision": "version:94.0.4606.6"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -57268,12 +57268,12 @@
           "--test-runner-outdir",
           ".",
           "--client-outdir",
-          "../../weblayer_instrumentation_test_M92/out/Release",
+          "../../weblayer_instrumentation_test_M93/out/Release",
           "--implementation-outdir",
           ".",
           "--test-expectations",
           "../../weblayer/browser/android/javatests/skew/expectations.txt",
-          "--client-version=92",
+          "--client-version=93",
           "--gs-results-bucket=chromium-result-details",
           "--recover-devices",
           "--avd-config=../../tools/android/avd/proto/generic_android28.textpb"
@@ -57283,11 +57283,11 @@
             "--bucket",
             "chromium-result-details",
             "--test-name",
-            "weblayer_skew_tests_with_client_from_92"
+            "weblayer_skew_tests_with_client_from_93"
           ],
           "script": "//build/android/pylib/results/presentation/test_results_presentation.py"
         },
-        "name": "weblayer_skew_tests_with_client_from_92",
+        "name": "weblayer_skew_tests_with_client_from_93",
         "resultdb": {
           "enable": true,
           "has_native_resultdb_integration": true
@@ -57297,8 +57297,8 @@
           "cipd_packages": [
             {
               "cipd_package": "chromium/testing/weblayer-x86",
-              "location": "weblayer_instrumentation_test_M92",
-              "revision": "version:92.0.4515.157"
+              "location": "weblayer_instrumentation_test_M93",
+              "revision": "version:93.0.4577.47"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -57385,7 +57385,7 @@
             {
               "cipd_package": "chromium/testing/weblayer-x86",
               "location": "weblayer_instrumentation_test_M94",
-              "revision": "version:94.0.4606.3"
+              "revision": "version:94.0.4606.6"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -57531,10 +57531,10 @@
           "--client-outdir",
           ".",
           "--implementation-outdir",
-          "../../weblayer_instrumentation_test_M92/out/Release",
+          "../../weblayer_instrumentation_test_M93/out/Release",
           "--test-expectations",
           "../../weblayer/browser/android/javatests/skew/expectations.txt",
-          "--impl-version=92",
+          "--impl-version=93",
           "--gs-results-bucket=chromium-result-details",
           "--recover-devices",
           "--avd-config=../../tools/android/avd/proto/generic_android28.textpb"
@@ -57544,11 +57544,11 @@
             "--bucket",
             "chromium-result-details",
             "--test-name",
-            "weblayer_skew_tests_with_impl_from_92"
+            "weblayer_skew_tests_with_impl_from_93"
           ],
           "script": "//build/android/pylib/results/presentation/test_results_presentation.py"
         },
-        "name": "weblayer_skew_tests_with_impl_from_92",
+        "name": "weblayer_skew_tests_with_impl_from_93",
         "resultdb": {
           "enable": true,
           "has_native_resultdb_integration": true
@@ -57558,8 +57558,8 @@
           "cipd_packages": [
             {
               "cipd_package": "chromium/testing/weblayer-x86",
-              "location": "weblayer_instrumentation_test_M92",
-              "revision": "version:92.0.4515.157"
+              "location": "weblayer_instrumentation_test_M93",
+              "revision": "version:93.0.4577.47"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
@@ -57646,7 +57646,7 @@
             {
               "cipd_package": "chromium/testing/weblayer-x86",
               "location": "weblayer_instrumentation_test_M94",
-              "revision": "version:94.0.4606.3"
+              "revision": "version:94.0.4606.6"
             },
             {
               "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
diff --git a/testing/buildbot/variants.pyl b/testing/buildbot/variants.pyl
index 193f5f4..1b613ce 100644
--- a/testing/buildbot/variants.pyl
+++ b/testing/buildbot/variants.pyl
@@ -349,7 +349,7 @@
         {
           'cipd_package': 'chromium/testing/weblayer-x86',
           'location': 'weblayer_instrumentation_test_M94',
-          'revision': 'version:94.0.4606.3',
+          'revision': 'version:94.0.4606.6',
         }
       ],
     },
@@ -362,18 +362,18 @@
       '--client-outdir',
       '.',
       '--implementation-outdir',
-      '../../weblayer_instrumentation_test_M92/out/Release',
+      '../../weblayer_instrumentation_test_M93/out/Release',
       '--test-expectations',
       '../../weblayer/browser/android/javatests/skew/expectations.txt',
-      '--impl-version=92',
+      '--impl-version=93',
     ],
-    'identifier': 'with_impl_from_92',
+    'identifier': 'with_impl_from_93',
     'swarming': {
       'cipd_packages': [
         {
           'cipd_package': 'chromium/testing/weblayer-x86',
-          'location': 'weblayer_instrumentation_test_M92',
-          'revision': 'version:92.0.4515.157',
+          'location': 'weblayer_instrumentation_test_M93',
+          'revision': 'version:93.0.4577.47',
         }
       ],
     },
@@ -421,7 +421,7 @@
         {
           'cipd_package': 'chromium/testing/weblayer-x86',
           'location': 'weblayer_instrumentation_test_M94',
-          'revision': 'version:94.0.4606.3',
+          'revision': 'version:94.0.4606.6',
         }
       ],
     },
@@ -434,18 +434,18 @@
       '--client-outdir',
       '.',
       '--implementation-outdir',
-      '../../weblayer_instrumentation_test_M92/out/Release',
+      '../../weblayer_instrumentation_test_M93/out/Release',
       '--test-expectations',
       '../../weblayer/browser/android/javatests/skew/expectations.txt',
-      '--impl-version=92',
+      '--impl-version=93',
     ],
-    'identifier': 'with_impl_from_92',
+    'identifier': 'with_impl_from_93',
     'swarming': {
       'cipd_packages': [
         {
           'cipd_package': 'chromium/testing/weblayer-x86',
-          'location': 'weblayer_instrumentation_test_M92',
-          'revision': 'version:92.0.4515.157',
+          'location': 'weblayer_instrumentation_test_M93',
+          'revision': 'version:93.0.4577.47',
         }
       ],
     },
@@ -493,7 +493,7 @@
         {
           'cipd_package': 'chromium/testing/weblayer-x86',
           'location': 'weblayer_instrumentation_test_M94',
-          'revision': 'version:94.0.4606.3',
+          'revision': 'version:94.0.4606.6',
         }
       ],
     },
@@ -504,20 +504,20 @@
       '--test-runner-outdir',
       '.',
       '--client-outdir',
-      '../../weblayer_instrumentation_test_M92/out/Release',
+      '../../weblayer_instrumentation_test_M93/out/Release',
       '--implementation-outdir',
       '.',
       '--test-expectations',
       '../../weblayer/browser/android/javatests/skew/expectations.txt',
-      '--client-version=92',
+      '--client-version=93',
     ],
-    'identifier': 'with_client_from_92',
+    'identifier': 'with_client_from_93',
     'swarming': {
       'cipd_packages': [
         {
           'cipd_package': 'chromium/testing/weblayer-x86',
-          'location': 'weblayer_instrumentation_test_M92',
-          'revision': 'version:92.0.4515.157',
+          'location': 'weblayer_instrumentation_test_M93',
+          'revision': 'version:93.0.4577.47',
         }
       ],
     },
diff --git a/third_party/blink/public/strings/translations/blink_strings_te.xtb b/third_party/blink/public/strings/translations/blink_strings_te.xtb
index dd1ff5c..69cd3975 100644
--- a/third_party/blink/public/strings/translations/blink_strings_te.xtb
+++ b/third_party/blink/public/strings/translations/blink_strings_te.xtb
@@ -5,7 +5,7 @@
 <translation id="10623998915015855">టోగుల్ బటన్</translation>
 <translation id="1088086359088493902">సెకన్లు</translation>
 <translation id="1142001580032786438">వారం పికర్‌ను చూపుతుంది</translation>
-<translation id="1171774979989969504">దయచేసి ఇమెయిల్ చిరునామాను ఎంటర్ చేయండి.</translation>
+<translation id="1171774979989969504">దయచేసి ఇమెయిల్ అడ్రస్‌ను ఎంటర్ చేయండి.</translation>
 <translation id="1178581264944972037">పాజ్ చేయి</translation>
 <translation id="1188858454923323853">బహుమానపూర్వకం</translation>
 <translation id="1206619573307042055">marquee</translation>
@@ -27,7 +27,7 @@
 <translation id="1681022320378710418">ప్రస్తుత సమయం</translation>
 <translation id="1727839386348365796">కలర్ పికర్</translation>
 <translation id="1727886345390570319">ఉపశీర్షికల మెనూని దాచు</translation>
-<translation id="1729654308190250600">దయచేసి ఖాళీ-కాని ఇమెయిల్ చిరునామాను నమోదు చేయండి.</translation>
+<translation id="1729654308190250600">దయచేసి ఖాళీ-కాని ఇమెయిల్ అడ్రస్‌ను నమోదు చేయండి.</translation>
 <translation id="1758486001363313524">ఇతర...</translation>
 <translation id="1787192514241997742">మొత్తం సమయం: <ph name="REMAINING_TIME" /></translation>
 <translation id="1806710327868736751">alert_dialog</translation>
@@ -45,7 +45,7 @@
 <translation id="2031987842108996681">రెడ్ ఛానెల్</translation>
 <translation id="2060505056492490888">'<ph name="INVALIDDOMAIN" />'లో '<ph name="DOT" />' తప్పు స్థానంలో ఉపయోగించబడింది.</translation>
 <translation id="2148716181193084225">ఈ రోజు</translation>
-<translation id="2158401438286456825">పేజీ జాబితా</translation>
+<translation id="2158401438286456825">పేజీ లిస్ట్‌</translation>
 <translation id="2226276347425096477">దయచేసి ఈ వచనాన్ని <ph name="MAX_CHARACTERS" /> అక్షరాలకు లేదా అంతకంటే తక్కువకు తగ్గించండి (మీరు ప్రస్తుతం <ph name="CURRENT_LENGTH" /> అక్షరాలను ఉపయోగిస్తున్నారు).</translation>
 <translation id="2246498165605549352">స్థానిక ఫైల్</translation>
 <translation id="2247351761944213033"><ph name="WEEKNUMBER" />వ వారం, <ph name="YEAR" /></translation>
@@ -59,7 +59,7 @@
 <translation id="245932805758469625">వీడియోలో మిగిలి ఉన్న సెకన్లు</translation>
 <translation id="248395913932153421">రోజు</translation>
 <translation id="2507943997699731163">దయచేసి ఈ ఫీల్డ్‌ను పూర్తి చేయండి.</translation>
-<translation id="2508569020611168319">ట్యాబ్ జాబితా</translation>
+<translation id="2508569020611168319">ట్యాబ్ లిస్ట్‌</translation>
 <translation id="2530182415807757784">బహుళ వాటిని ఎంచుకోగలిగేది, ఏదీ ఎంచుకోలేదు.</translation>
 <translation id="2561842179657104141">మరిన్ని మీడియా నియంత్రణలను చూపు</translation>
 <translation id="2572483411312390101">ప్లే చేయి</translation>
@@ -75,7 +75,7 @@
 <translation id="2761667185364618470">మీరు కొనసాగాలనుకుంటే దయచేసి ఈ బాక్స్‌కి టిక్కు పెట్టండి.</translation>
 <translation id="2844350028562914727">వివరాలు</translation>
 <translation id="2896972712917208084">రేడియో సమూహం</translation>
-<translation id="2908441821576996758">దయచేసి కామాతో వేరు చేసిన ఇమెయిల్ చిరునామాల జాబితాను నమోదు చేయండి.</translation>
+<translation id="2908441821576996758">దయచేసి కామాతో వేరు చేసిన ఇమెయిల్ అడ్రస్‌ల లిస్ట్‌ను నమోదు చేయండి.</translation>
 <translation id="2940813599313844715">ఆబ్జెక్ట్</translation>
 <translation id="3040011195152428237">లింక్</translation>
 <translation id="3049748772180311791"><ph name="QUANTITY" /> MB</translation>
@@ -187,7 +187,7 @@
 <translation id="5987525920412732405">స్పిన్ బటన్</translation>
 <translation id="6011459053400940133">వాల్యూమ్ స్లయిడర్</translation>
 <translation id="6015796118275082299">సంవత్సరం</translation>
-<translation id="6023896073578205740">జాబితా పెట్టె</translation>
+<translation id="6023896073578205740">లిస్ట్‌ పెట్టె</translation>
 <translation id="6150588977291308318">వివరణపట్టి</translation>
 <translation id="6164829606128959761">మీటర్</translation>
 <translation id="6165053282446038410">విస్తరించబడింది, <ph name="COUNT" /> ఆటోకంప్లీట్ ఆప్షన్‌లు అందుబాటులో ఉన్నాయి.</translation>
@@ -263,7 +263,7 @@
 <translation id="7789962463072032349">నిలిపివేయి</translation>
 <translation id="7802800022689234070">కంటెంట్‌ను విస్తరింపజేసే లేదా కుదించే త్రిభుజం</translation>
 <translation id="7852167693871241274">రంగు స్లయిడర్</translation>
-<translation id="7888071071722539607">దయచేసి ఇమెయిల్ చిరునామాలో '<ph name="ATSIGN" />'ని చేర్చండి. '<ph name="INVALIDADDRESS" />'లో '<ph name="ATSIGN" />' లేదు.</translation>
+<translation id="7888071071722539607">దయచేసి ఇమెయిల్ అడ్రస్‌లో '<ph name="ATSIGN" />'ని చేర్చండి. '<ph name="INVALIDADDRESS" />'లో '<ph name="ATSIGN" />' లేదు.</translation>
 <translation id="7891486169920085145">విభజన</translation>
 <translation id="795667975304826397">ఫైల్ ఏదీ ఎంచుకోలేదు</translation>
 <translation id="7962328325860248200"><ph name="ACCNAME" /> ఎంచుకోబడలేదు</translation>
@@ -292,7 +292,7 @@
 <translation id="8534579021159131403">నిమిషాలు</translation>
 <translation id="8541249477527128034">మీడియా నియంత్రణ</translation>
 <translation id="8550857728288566671">గ్రాఫిక్స్ చిహ్నం</translation>
-<translation id="8583702881314752957">నిర్వచన జాబితా</translation>
+<translation id="8583702881314752957">నిర్వచన లిస్ట్‌</translation>
 <translation id="8597182159515967513">శీర్షిక</translation>
 <translation id="860475260694818407">కంటెంట్‌ల‌ పట్టిక</translation>
 <translation id="8613126697340063924">రిమోట్ ప్లేబ్యాక్‌ను నియంత్రిస్తుంది</translation>
diff --git a/third_party/blink/renderer/core/animation/css_offset_rotate_interpolation_type.cc b/third_party/blink/renderer/core/animation/css_offset_rotate_interpolation_type.cc
index 3b9596e..a02a241 100644
--- a/third_party/blink/renderer/core/animation/css_offset_rotate_interpolation_type.cc
+++ b/third_party/blink/renderer/core/animation/css_offset_rotate_interpolation_type.cc
@@ -8,6 +8,7 @@
 #include <utility>
 
 #include "base/memory/ptr_util.h"
+#include "third_party/blink/renderer/core/css/css_value_clamping_utils.h"
 #include "third_party/blink/renderer/core/css/resolver/style_builder_converter.h"
 #include "third_party/blink/renderer/core/style/computed_style.h"
 #include "third_party/blink/renderer/core/style/style_offset_rotation.h"
@@ -174,7 +175,8 @@
     const NonInterpolableValue* non_interpolable_value,
     StyleResolverState& state) const {
   state.Style()->SetOffsetRotate(StyleOffsetRotation(
-      clampTo<float>(To<InterpolableNumber>(interpolable_value).Value()),
+      CSSValueClampingUtils::ClampAngle(
+          To<InterpolableNumber>(interpolable_value).Value()),
       To<CSSOffsetRotationNonInterpolableValue>(*non_interpolable_value)
           .RotationType()));
 }
diff --git a/third_party/blink/renderer/core/css/properties/css_parsing_utils.cc b/third_party/blink/renderer/core/css/properties/css_parsing_utils.cc
index 08029c8..94c6822 100644
--- a/third_party/blink/renderer/core/css/properties/css_parsing_utils.cc
+++ b/third_party/blink/renderer/core/css/properties/css_parsing_utils.cc
@@ -944,12 +944,10 @@
   return ConsumeLengthOrPercent(range, context, value_range, unitless);
 }
 
-CSSPrimitiveValue* ConsumeAngle(
+static CSSPrimitiveValue* ConsumeNumericLiteralAngle(
     CSSParserTokenRange& range,
     const CSSParserContext& context,
-    absl::optional<WebFeature> unitless_zero_feature,
-    double minimum_value,
-    double maximum_value) {
+    absl::optional<WebFeature> unitless_zero_feature) {
   const CSSParserToken& token = range.Peek();
   if (token.GetType() == kDimensionToken) {
     switch (token.GetUnitType()) {
@@ -971,34 +969,71 @@
     return CSSNumericLiteralValue::Create(
         0, CSSPrimitiveValue::UnitType::kDegrees);
   }
+  return nullptr;
+}
+
+static CSSPrimitiveValue* ConsumeMathFunctionAngle(
+    CSSParserTokenRange& range,
+    const CSSParserContext& context,
+    double minimum_value,
+    double maximum_value) {
   MathFunctionParser math_parser(range, context, kValueRangeAll);
   if (const CSSMathFunctionValue* calculation = math_parser.Value()) {
     if (calculation->Category() != kCalcAngle)
       return nullptr;
-    if (CSSMathFunctionValue* result = math_parser.ConsumeValue()) {
-      if (RuntimeEnabledFeatures::CSSCalcInfinityAndNaNEnabled())
-        return result;
-      if (result->ComputeDegrees() < minimum_value) {
-        return CSSNumericLiteralValue::Create(
-            minimum_value, CSSPrimitiveValue::UnitType::kDegrees);
-      }
-      if (result->ComputeDegrees() > maximum_value) {
-        return CSSNumericLiteralValue::Create(
-            maximum_value, CSSPrimitiveValue::UnitType::kDegrees);
-      }
-      return result;
+  }
+  if (CSSMathFunctionValue* result = math_parser.ConsumeValue()) {
+    if (result->ComputeDegrees() < minimum_value) {
+      return CSSNumericLiteralValue::Create(
+          minimum_value, CSSPrimitiveValue::UnitType::kDegrees);
     }
+    if (result->ComputeDegrees() > maximum_value) {
+      return CSSNumericLiteralValue::Create(
+          maximum_value, CSSPrimitiveValue::UnitType::kDegrees);
+    }
+    return result;
   }
   return nullptr;
 }
 
+static CSSPrimitiveValue* ConsumeMathFunctionAngle(
+    CSSParserTokenRange& range,
+    const CSSParserContext& context) {
+  if (RuntimeEnabledFeatures::CSSCalcInfinityAndNaNEnabled()) {
+    MathFunctionParser math_parser(range, context, kValueRangeAll);
+    if (const CSSMathFunctionValue* calculation = math_parser.Value()) {
+      if (calculation->Category() != kCalcAngle)
+        return nullptr;
+    }
+    return math_parser.ConsumeValue();
+  }
+  return ConsumeMathFunctionAngle(range, context,
+                                  std::numeric_limits<double>::lowest(),
+                                  std::numeric_limits<double>::max());
+}
+
+CSSPrimitiveValue* ConsumeAngle(
+    CSSParserTokenRange& range,
+    const CSSParserContext& context,
+    absl::optional<WebFeature> unitless_zero_feature,
+    double minimum_value,
+    double maximum_value) {
+  if (auto* result =
+          ConsumeNumericLiteralAngle(range, context, unitless_zero_feature))
+    return result;
+
+  return ConsumeMathFunctionAngle(range, context, minimum_value, maximum_value);
+}
+
 CSSPrimitiveValue* ConsumeAngle(
     CSSParserTokenRange& range,
     const CSSParserContext& context,
     absl::optional<WebFeature> unitless_zero_feature) {
-  return ConsumeAngle(range, context, std::move(unitless_zero_feature),
-                      std::numeric_limits<double>::lowest(),
-                      std::numeric_limits<double>::max());
+  if (auto* result =
+          ConsumeNumericLiteralAngle(range, context, unitless_zero_feature))
+    return result;
+
+  return ConsumeMathFunctionAngle(range, context);
 }
 
 CSSPrimitiveValue* ConsumeTime(CSSParserTokenRange& range,
diff --git a/third_party/blink/renderer/core/css/properties/css_parsing_utils.h b/third_party/blink/renderer/core/css/properties/css_parsing_utils.h
index 4e704134..4949d8f 100644
--- a/third_party/blink/renderer/core/css/properties/css_parsing_utils.h
+++ b/third_party/blink/renderer/core/css/properties/css_parsing_utils.h
@@ -105,11 +105,11 @@
                                                     const CSSParserContext&,
                                                     ValueRange);
 
-CSSPrimitiveValue* ConsumeAngle(
+CORE_EXPORT CSSPrimitiveValue* ConsumeAngle(
     CSSParserTokenRange&,
     const CSSParserContext&,
     absl::optional<WebFeature> unitless_zero_feature);
-CSSPrimitiveValue* ConsumeAngle(
+CORE_EXPORT CSSPrimitiveValue* ConsumeAngle(
     CSSParserTokenRange&,
     const CSSParserContext&,
     absl::optional<WebFeature> unitless_zero_feature,
diff --git a/third_party/blink/renderer/core/css/properties/css_parsing_utils_test.cc b/third_party/blink/renderer/core/css/properties/css_parsing_utils_test.cc
index 5abb059..078f6f3 100644
--- a/third_party/blink/renderer/core/css/properties/css_parsing_utils_test.cc
+++ b/third_party/blink/renderer/core/css/properties/css_parsing_utils_test.cc
@@ -4,15 +4,23 @@
 
 #include "third_party/blink/renderer/core/css/properties/css_parsing_utils.h"
 #include "testing/gtest/include/gtest/gtest.h"
+#include "third_party/blink/renderer/core/css/parser/css_parser_context.h"
 #include "third_party/blink/renderer/core/css/parser/css_tokenizer.h"
 #include "third_party/blink/renderer/core/html/html_html_element.h"
 #include "third_party/blink/renderer/core/testing/dummy_page_holder.h"
 #include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
 
 namespace blink {
+namespace {
 
+using css_parsing_utils::ConsumeAngle;
 using css_parsing_utils::ConsumeIdSelector;
 
+CSSParserContext* MakeContext() {
+  return MakeGarbageCollected<CSSParserContext>(
+      kHTMLStandardMode, SecureContextMode::kInsecureContext);
+}
+
 TEST(CSSParsingUtilsTest, BasicShapeUseCount) {
   auto dummy_page_holder = std::make_unique<DummyPageHolder>(IntSize(800, 600));
   Page::InsertOrdinaryPageForTesting(&dummy_page_holder->GetPage());
@@ -88,4 +96,35 @@
   }
 }
 
+double ConsumeAngleValue(String target) {
+  auto tokens = CSSTokenizer(target).TokenizeToEOF();
+  CSSParserTokenRange range(tokens);
+  return ConsumeAngle(range, *MakeContext(), absl::nullopt)->ComputeDegrees();
+}
+
+double ConsumeAngleValue(String target, double min, double max) {
+  auto tokens = CSSTokenizer(target).TokenizeToEOF();
+  CSSParserTokenRange range(tokens);
+  return ConsumeAngle(range, *MakeContext(), absl::nullopt, min, max)
+      ->ComputeDegrees();
+}
+
+TEST(CSSParsingUtilsTest, ConsumeAngles) {
+  const double kMaxDegreeValue = 2867080569122160;
+
+  EXPECT_EQ(10.0, ConsumeAngleValue("10deg"));
+  EXPECT_EQ(-kMaxDegreeValue, ConsumeAngleValue("-3.40282e+38deg"));
+  EXPECT_EQ(kMaxDegreeValue, ConsumeAngleValue("3.40282e+38deg"));
+
+  EXPECT_EQ(kMaxDegreeValue, ConsumeAngleValue("calc(infinity * 1deg)"));
+  EXPECT_EQ(-kMaxDegreeValue, ConsumeAngleValue("calc(-infinity * 1deg)"));
+  EXPECT_EQ(kMaxDegreeValue, ConsumeAngleValue("calc(NaN * 1deg)"));
+
+  // Math function with min and max ranges
+
+  EXPECT_EQ(-100, ConsumeAngleValue("calc(-3.40282e+38deg)", -100, 100));
+  EXPECT_EQ(100, ConsumeAngleValue("calc(3.40282e+38deg)", -100, 100));
+}
+
+}  // namespace
 }  // namespace blink
diff --git a/third_party/blink/renderer/core/html/forms/internal_popup_menu.cc b/third_party/blink/renderer/core/html/forms/internal_popup_menu.cc
index 8c28d67..06bdd61 100644
--- a/third_party/blink/renderer/core/html/forms/internal_popup_menu.cc
+++ b/third_party/blink/renderer/core/html/forms/internal_popup_menu.cc
@@ -10,6 +10,7 @@
 #include "third_party/blink/public/platform/task_type.h"
 #include "third_party/blink/renderer/core/css/css_font_selector.h"
 #include "third_party/blink/renderer/core/css/css_value_id_mappings.h"
+#include "third_party/blink/renderer/core/css/properties/computed_style_utils.h"
 #include "third_party/blink/renderer/core/css/style_engine.h"
 #include "third_party/blink/renderer/core/css/style_request.h"
 #include "third_party/blink/renderer/core/dom/element.h"
@@ -195,13 +196,11 @@
                     : String(),
                 buffer_);
 
-    PagePopupClient::AddString("fontFamily: [", buffer_);
-    for (const FontFamily* f = &BaseFont().Family(); f; f = f->Next()) {
-      AddJavaScriptString(f->Family().GetString(), buffer_);
-      if (f->Next())
-        PagePopupClient::AddString(",", buffer_);
-    }
-    PagePopupClient::AddString("]", buffer_);
+    AddProperty(
+        "fontFamily",
+        ComputedStyleUtils::ValueForFontFamily(BaseFont().Family())->CssText(),
+        buffer_);
+
     PagePopupClient::AddString("},\n", buffer_);
   }
 
@@ -418,13 +417,11 @@
     AddProperty("fontWeight", font_description.Weight().ToString(), data);
   }
   if (base_font.Family() != font_description.Family()) {
-    PagePopupClient::AddString("fontFamily: [\n", data);
-    for (const FontFamily* f = &font_description.Family(); f; f = f->Next()) {
-      AddJavaScriptString(f->Family().GetString(), data);
-      if (f->Next())
-        PagePopupClient::AddString(",\n", data);
-    }
-    PagePopupClient::AddString("],\n", data);
+    AddProperty(
+        "fontFamily",
+        ComputedStyleUtils::ValueForFontFamily(font_description.Family())
+            ->CssText(),
+        data);
   }
   if (base_font.Style() != font_description.Style()) {
     AddProperty("fontStyle",
diff --git a/third_party/blink/renderer/core/html/forms/resources/listPicker.js b/third_party/blink/renderer/core/html/forms/resources/listPicker.js
index 8a30c470..26f3e923 100644
--- a/third_party/blink/renderer/core/html/forms/resources/listPicker.js
+++ b/third_party/blink/renderer/core/html/forms/resources/listPicker.js
@@ -309,8 +309,7 @@
   this._selectElement.style.textTransform =
       this._config.baseStyle.textTransform;
   this._selectElement.style.fontSize = this._config.baseStyle.fontSize + 'px';
-  this._selectElement.style.fontFamily =
-      this._config.baseStyle.fontFamily.map(s => '"' + s + '"').join(',');
+  this._selectElement.style.fontFamily = this._config.baseStyle.fontFamily;
   this._selectElement.style.fontStyle = this._config.baseStyle.fontStyle;
   this._selectElement.style.fontVariant = this._config.baseStyle.fontVariant;
   if (this._config.baseStyle.textAlign)
@@ -448,9 +447,7 @@
   style.fontSize =
       styleConfig.fontSize !== undefined ? styleConfig.fontSize + 'px' : '';
   style.fontWeight = styleConfig.fontWeight ? styleConfig.fontWeight : '';
-  style.fontFamily = styleConfig.fontFamily ?
-      styleConfig.fontFamily.map(s => '"' + s + '"').join(',') :
-      '';
+  style.fontFamily = styleConfig.fontFamily ? styleConfig.fontFamily : '';
   style.fontStyle = styleConfig.fontStyle ? styleConfig.fontStyle : '';
   style.fontVariant = styleConfig.fontVariant ? styleConfig.fontVariant : '';
   style.textTransform =
diff --git a/third_party/blink/renderer/core/html/lazy_load_image_observer.cc b/third_party/blink/renderer/core/html/lazy_load_image_observer.cc
index 61b2779f..be42a618 100644
--- a/third_party/blink/renderer/core/html/lazy_load_image_observer.cc
+++ b/third_party/blink/renderer/core/html/lazy_load_image_observer.cc
@@ -206,7 +206,8 @@
 }
 
 void LazyLoadImageObserver::StopMonitoring(Element* element) {
-  lazy_load_intersection_observer_->unobserve(element);
+  if (lazy_load_intersection_observer_)
+    lazy_load_intersection_observer_->unobserve(element);
 }
 
 void LazyLoadImageObserver::LoadIfNearViewport(
diff --git a/third_party/blink/renderer/core/layout/build.gni b/third_party/blink/renderer/core/layout/build.gni
index e3a803e..199397e 100644
--- a/third_party/blink/renderer/core/layout/build.gni
+++ b/third_party/blink/renderer/core/layout/build.gni
@@ -327,6 +327,8 @@
   "ng/grid/ng_grid_layout_algorithm.h",
   "ng/grid/ng_grid_placement.cc",
   "ng/grid/ng_grid_placement.h",
+  "ng/grid/ng_grid_properties.cc",
+  "ng/grid/ng_grid_properties.h",
   "ng/grid/ng_grid_track_collection.cc",
   "ng/grid/ng_grid_track_collection.h",
   "ng/inline/empty_offset_mapping_builder.h",
diff --git a/third_party/blink/renderer/core/layout/layout_text.cc b/third_party/blink/renderer/core/layout/layout_text.cc
index 8babc115..2c33356 100644
--- a/third_party/blink/renderer/core/layout/layout_text.cc
+++ b/third_party/blink/renderer/core/layout/layout_text.cc
@@ -177,10 +177,13 @@
   if (node)
     GetFrameView()->IncrementVisuallyNonEmptyCharacterCount(text_.length());
 
-  // Call GetSecureTextTimers() to ensure map exists. It is called in
-  // pre-finalizer where allocation is not allowed.
-  // TODO(yukiy): Remove this once converting SecureTextTimer to GCed.
+  // Call GetSecureTextTimers() and GetSelectionDisplayItemClientMap() to ensure
+  // map exists. They are called in pre-finalizer where allocation is not
+  // allowed.
+  // TODO(yukiy): Remove these if CanvasFormattedTextRun::Dispose() can be
+  // removed.
   GetSecureTextTimers();
+  GetSelectionDisplayItemClientMap();
 }
 
 LayoutText* LayoutText::CreateEmptyAnonymous(
diff --git a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
index dca70e8..644b0f7 100644
--- a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
+++ b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
@@ -5,6 +5,7 @@
 #include "third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.h"
 
 #include "third_party/blink/renderer/core/layout/ng/grid/ng_grid_placement.h"
+#include "third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.h"
 #include "third_party/blink/renderer/core/layout/ng/ng_box_fragment.h"
 #include "third_party/blink/renderer/core/layout/ng/ng_constraint_space_builder.h"
 #include "third_party/blink/renderer/core/layout/ng/ng_disable_side_effects_scope.h"
@@ -130,8 +131,10 @@
 
   // Measure items.
   GridItems grid_items;
+  NGGridProperties grid_properties;
   GridItemStorageVector out_of_flow_items;
-  ConstructAndAppendGridItems(&grid_items, &out_of_flow_items);
+  ConstructAndAppendGridItems(&grid_items, &grid_properties,
+                              &out_of_flow_items);
 
   const auto& container_style = Style();
   NGGridPlacement grid_placement(container_style,
@@ -152,10 +155,10 @@
     // Build algorithm track collections from the block track collections.
     column_track_collection = NGGridLayoutAlgorithmTrackCollection(
         column_block_track_collection,
-        grid_available_size_.inline_size == kIndefiniteSize);
+        grid_available_size_.inline_size == kIndefiniteSize, &grid_properties);
     row_track_collection = NGGridLayoutAlgorithmTrackCollection(
         row_block_track_collection,
-        grid_available_size_.block_size == kIndefiniteSize);
+        grid_available_size_.block_size == kIndefiniteSize, &grid_properties);
 
     // Cache set indices for grid items.
     for (auto& grid_item : grid_items.item_data) {
@@ -177,17 +180,22 @@
     // Store column baselines, as these contributions can influence column
     // sizing.
     bool needs_additional_pass = false;
-    CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
-                                &needs_additional_pass);
+    if (grid_properties.HasBaseline(kForColumns)) {
+      CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
+                                  &needs_additional_pass);
+    }
 
     // Resolve inline size.
     bool has_block_size_dependent_item = false;
     grid_geometry.column_geometry = ComputeUsedTrackSizes(
-        SizingConstraint::kLayout, grid_geometry, &column_track_collection,
-        &grid_items, &needs_additional_pass, &has_block_size_dependent_item);
+        SizingConstraint::kLayout, grid_geometry, grid_properties,
+        &column_track_collection, &grid_items, &needs_additional_pass,
+        &has_block_size_dependent_item);
 
-    CalculateAlignmentBaselines(kForRows, &grid_geometry, &grid_items,
-                                &needs_additional_pass);
+    if (grid_properties.HasBaseline(kForRows)) {
+      CalculateAlignmentBaselines(kForRows, &grid_geometry, &grid_items,
+                                  &needs_additional_pass);
+    }
 
     absl::optional<SetGeometry> initial_row_geometry;
     if (!needs_additional_pass && has_block_size_dependent_item)
@@ -196,8 +204,8 @@
     // Resolve block size.
     bool unused_needs_additional_pass = false;
     grid_geometry.row_geometry = ComputeUsedTrackSizes(
-        SizingConstraint::kLayout, grid_geometry, &row_track_collection,
-        &grid_items, &unused_needs_additional_pass);
+        SizingConstraint::kLayout, grid_geometry, grid_properties,
+        &row_track_collection, &grid_items, &unused_needs_additional_pass);
 
     if (initial_row_geometry) {
       DCHECK(!needs_additional_pass && has_block_size_dependent_item);
@@ -209,28 +217,36 @@
     // If we had an orthogonal item which may have depended on the resolved row
     // tracks, re-run the track sizing algorithm for both dimensions.
     if (needs_additional_pass) {
-      CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
-                                  &unused_needs_additional_pass);
+      if (grid_properties.HasBaseline(kForColumns)) {
+        CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
+                                    &unused_needs_additional_pass);
+      }
 
       grid_geometry.column_geometry =
           InitializeTrackSizes(&column_track_collection);
       grid_geometry.column_geometry = ComputeUsedTrackSizes(
-          SizingConstraint::kLayout, grid_geometry, &column_track_collection,
-          &grid_items, &unused_needs_additional_pass);
+          SizingConstraint::kLayout, grid_geometry, grid_properties,
+          &column_track_collection, &grid_items, &unused_needs_additional_pass);
 
-      CalculateAlignmentBaselines(kForRows, &grid_geometry, &grid_items,
-                                  &unused_needs_additional_pass);
+      if (grid_properties.HasBaseline(kForRows)) {
+        CalculateAlignmentBaselines(kForRows, &grid_geometry, &grid_items,
+                                    &unused_needs_additional_pass);
+      }
 
       grid_geometry.row_geometry = InitializeTrackSizes(&row_track_collection);
       grid_geometry.row_geometry = ComputeUsedTrackSizes(
-          SizingConstraint::kLayout, grid_geometry, &row_track_collection,
-          &grid_items, &unused_needs_additional_pass);
+          SizingConstraint::kLayout, grid_geometry, grid_properties,
+          &row_track_collection, &grid_items, &unused_needs_additional_pass);
     }
 
-    CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
-                                &unused_needs_additional_pass);
-    CalculateAlignmentBaselines(kForRows, &grid_geometry, &grid_items,
-                                &unused_needs_additional_pass);
+    if (grid_properties.HasBaseline(kForColumns)) {
+      CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
+                                  &unused_needs_additional_pass);
+    }
+    if (grid_properties.HasBaseline(kForRows)) {
+      CalculateAlignmentBaselines(kForRows, &grid_geometry, &grid_items,
+                                  &unused_needs_additional_pass);
+    }
     DCHECK(!unused_needs_additional_pass);
   };
 
@@ -380,8 +396,9 @@
 
   // Measure items. If we have inline size containment, ignore all children.
   GridItems grid_items;
+  NGGridProperties grid_properties;
   if (!Node().ShouldApplyInlineSizeContainment())
-    ConstructAndAppendGridItems(&grid_items);
+    ConstructAndAppendGridItems(&grid_items, &grid_properties);
 
   const auto& container_style = Style();
   NGGridPlacement grid_placement(container_style,
@@ -397,10 +414,10 @@
   // Build algorithm track collections from the block track collections.
   NGGridLayoutAlgorithmTrackCollection column_track_collection(
       column_block_track_collection,
-      grid_available_size_.inline_size == kIndefiniteSize);
+      grid_available_size_.inline_size == kIndefiniteSize, &grid_properties);
   NGGridLayoutAlgorithmTrackCollection row_track_collection(
       row_block_track_collection,
-      grid_available_size_.block_size == kIndefiniteSize);
+      grid_available_size_.block_size == kIndefiniteSize, &grid_properties);
 
   // Cache set indices for grid items.
   for (auto& grid_item : grid_items) {
@@ -418,16 +435,21 @@
                                InitializeTrackSizes(&row_track_collection));
 
     bool needs_additional_pass = false;
-    CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
-                                &needs_additional_pass);
+    if (grid_properties.HasBaseline(kForColumns)) {
+      CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
+                                  &needs_additional_pass);
+    }
 
     bool has_block_size_dependent_item = false;
     grid_geometry.column_geometry = ComputeUsedTrackSizes(
-        sizing_constraint, grid_geometry, &column_track_collection, &grid_items,
-        &needs_additional_pass, &has_block_size_dependent_item);
+        sizing_constraint, grid_geometry, grid_properties,
+        &column_track_collection, &grid_items, &needs_additional_pass,
+        &has_block_size_dependent_item);
 
-    CalculateAlignmentBaselines(kForRows, &grid_geometry, &grid_items,
-                                &needs_additional_pass);
+    if (grid_properties.HasBaseline(kForRows)) {
+      CalculateAlignmentBaselines(kForRows, &grid_geometry, &grid_items,
+                                  &needs_additional_pass);
+    }
 
     if (needs_additional_pass || has_block_size_dependent_item) {
       absl::optional<SetGeometry> initial_row_geometry;
@@ -438,8 +460,8 @@
       // and max-content block sizes are the size of the content after layout.
       bool unused_needs_additional_pass = false;
       grid_geometry.row_geometry = ComputeUsedTrackSizes(
-          SizingConstraint::kLayout, grid_geometry, &row_track_collection,
-          &grid_items, &unused_needs_additional_pass);
+          SizingConstraint::kLayout, grid_geometry, grid_properties,
+          &row_track_collection, &grid_items, &unused_needs_additional_pass);
 
       if (initial_row_geometry) {
         DCHECK(!needs_additional_pass && has_block_size_dependent_item);
@@ -449,14 +471,17 @@
       }
 
       if (needs_additional_pass) {
-        CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
-                                    &unused_needs_additional_pass);
+        if (grid_properties.HasBaseline(kForColumns)) {
+          CalculateAlignmentBaselines(kForColumns, &grid_geometry, &grid_items,
+                                      &unused_needs_additional_pass);
+        }
 
         grid_geometry.column_geometry =
             InitializeTrackSizes(&column_track_collection);
-        grid_geometry.column_geometry = ComputeUsedTrackSizes(
-            sizing_constraint, grid_geometry, &column_track_collection,
-            &grid_items, &unused_needs_additional_pass);
+        grid_geometry.column_geometry =
+            ComputeUsedTrackSizes(sizing_constraint, grid_geometry,
+                                  grid_properties, &column_track_collection,
+                                  &grid_items, &unused_needs_additional_pass);
       }
       DCHECK(!unused_needs_additional_pass);
     }
@@ -997,9 +1022,10 @@
                              &row_block_track_collection, &grid_placement);
 
   // Build algorithm row track collection from the block track collection.
+  NGGridProperties grid_properties;
   NGGridLayoutAlgorithmTrackCollection row_track_collection(
       row_block_track_collection,
-      grid_available_size_.block_size == kIndefiniteSize);
+      grid_available_size_.block_size == kIndefiniteSize, &grid_properties);
 
   GridGeometry grid_geometry(SetGeometry(),
                              InitializeTrackSizes(&row_track_collection));
@@ -1007,8 +1033,8 @@
   // Resolve the rows.
   bool unused_needs_additional_pass = false;
   grid_geometry.row_geometry = ComputeUsedTrackSizes(
-      SizingConstraint::kLayout, grid_geometry, &row_track_collection,
-      &grid_items, &unused_needs_additional_pass);
+      SizingConstraint::kLayout, grid_geometry, grid_properties,
+      &row_track_collection, &grid_items, &unused_needs_additional_pass);
 
   return grid_geometry.row_geometry.sets.back().offset -
          grid_geometry.row_geometry.FinalGutterSize() +
@@ -1295,7 +1321,9 @@
 
 void NGGridLayoutAlgorithm::ConstructAndAppendGridItems(
     GridItems* grid_items,
+    NGGridProperties* grid_properties,
     GridItemStorageVector* out_of_flow_items) const {
+  DCHECK(grid_properties);
   DCHECK(grid_items);
 
   const auto& container_style = Style();
@@ -1318,6 +1346,13 @@
     } else if (out_of_flow_items) {
       out_of_flow_items->emplace_back(grid_item);
     }
+
+    grid_properties->has_baseline_column |=
+        grid_item.IsBaselineSpecifiedForDirection(kForColumns);
+    grid_properties->has_baseline_row |=
+        grid_item.IsBaselineSpecifiedForDirection(kForRows);
+    grid_properties->has_orthogonal_item |= !IsParallelWritingMode(
+        container_style.GetWritingMode(), child.Style().GetWritingMode());
   }
 
   // We only need to sort this when we encounter a non-initial order property.
@@ -1990,6 +2025,7 @@
 NGGridLayoutAlgorithm::SetGeometry NGGridLayoutAlgorithm::ComputeUsedTrackSizes(
     SizingConstraint sizing_constraint,
     const GridGeometry& grid_geometry,
+    const NGGridProperties& grid_properties,
     NGGridLayoutAlgorithmTrackCollection* track_collection,
     GridItems* grid_items,
     bool* needs_additional_pass,
@@ -1997,9 +2033,15 @@
   DCHECK(track_collection && grid_items && needs_additional_pass);
 
   // 2. Resolve intrinsic track sizing functions to absolute lengths.
-  ResolveIntrinsicTrackSizes(sizing_constraint, grid_geometry, track_collection,
-                             grid_items, needs_additional_pass,
-                             has_block_size_dependent_item);
+  if (grid_properties.HasIntrinsicTrack(track_collection->Direction())) {
+    ResolveIntrinsicTrackSizes(
+        sizing_constraint, grid_geometry, track_collection, grid_items,
+        needs_additional_pass, has_block_size_dependent_item);
+  }
+
+  // If any track still has an infinite growth limit (i.e. it had no items
+  // placed in it), set its growth limit to its base size before maximizing.
+  track_collection->SetAllGrowthLimitsToBaseSize();
 
   // 3. If the free space is positive, distribute it equally to the base sizes
   // of all tracks, freezing tracks as they reach their growth limits (and
@@ -2008,12 +2050,15 @@
 
   // 4. This step sizes flexible tracks using the largest value it can assign to
   // an 'fr' without exceeding the available space.
-  ExpandFlexibleTracks(sizing_constraint, grid_geometry, track_collection,
-                       grid_items, needs_additional_pass,
-                       has_block_size_dependent_item);
+  if (grid_properties.HasFlexibleTrack(track_collection->Direction())) {
+    ExpandFlexibleTracks(sizing_constraint, grid_geometry, track_collection,
+                         grid_items, needs_additional_pass,
+                         has_block_size_dependent_item);
+  }
 
   // 5. Stretch tracks with an 'auto' max track sizing function.
-  StretchAutoTracks(sizing_constraint, track_collection);
+  if (grid_properties.HasAutoMaxTrack(track_collection->Direction()))
+    StretchAutoTracks(sizing_constraint, track_collection);
 
   return ComputeSetGeometry(*track_collection);
 }
@@ -2291,8 +2336,13 @@
       // Straightforward comparison of definite growth potentials.
       return growth_potential_a < growth_potential_b;
     };
-    std::sort(sets_to_grow->begin(), sets_to_grow->end(),
-              CompareSetsByGrowthPotential);
+    // If we only have flex growth potential, there's no need to sort because
+    // flex growth potentials are infinite.
+    if (AreEqual<double>(flex_factor_sum, 0)) {
+      DCHECK(is_equal_distribution);
+      std::sort(sets_to_grow->begin(), sets_to_grow->end(),
+                CompareSetsByGrowthPotential);
+    }
   }
 
   auto ExtraSpaceShare = [&](const NGGridSet& set,
@@ -2693,15 +2743,6 @@
         GridItemContributionType::kForMaxContentMinimums, track_collection,
         needs_additional_pass, has_block_size_dependent_item);
   }
-
-  // If any track still has an infinite growth limit (i.e. it had no items
-  // placed in it), set its growth limit to its base size.
-  for (auto set_iterator = track_collection->GetSetIterator();
-       !set_iterator.IsAtEnd(); set_iterator.MoveToNextSet()) {
-    auto& set = set_iterator.CurrentSet();
-    if (set.GrowthLimit() == kIndefiniteSize)
-      set.SetGrowthLimit(set.BaseSize());
-  }
 }
 
 namespace {
diff --git a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.h b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.h
index f5adb66f..10cc687 100644
--- a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.h
+++ b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.h
@@ -15,6 +15,7 @@
 namespace blink {
 
 class NGGridPlacement;
+struct NGGridProperties;
 
 class CORE_EXPORT NGGridLayoutAlgorithm
     : public NGLayoutAlgorithm<NGBlockNode,
@@ -327,6 +328,7 @@
 
   void ConstructAndAppendGridItems(
       GridItems* grid_items,
+      NGGridProperties* grid_properties,
       GridItemStorageVector* out_of_flow_items = nullptr) const;
 
   static GridItemData MeasureGridItem(const NGBlockNode node,
@@ -371,6 +373,7 @@
   SetGeometry ComputeUsedTrackSizes(
       SizingConstraint sizing_constraint,
       const GridGeometry& grid_geometry,
+      const NGGridProperties& grid_properties,
       NGGridLayoutAlgorithmTrackCollection* track_collection,
       GridItems* grid_items,
       bool* needs_additional_pass,
diff --git a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm_test.cc b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm_test.cc
index 41a82d56..6284b72 100644
--- a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm_test.cc
+++ b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm_test.cc
@@ -6,6 +6,7 @@
 
 #include "build/build_config.h"
 #include "third_party/blink/renderer/core/layout/ng/grid/ng_grid_placement.h"
+#include "third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.h"
 #include "third_party/blink/renderer/core/layout/ng/ng_base_layout_algorithm_test.h"
 #include "third_party/blink/renderer/core/layout/ng/ng_length_utils.h"
 #include "third_party/blink/renderer/core/layout/ng/ng_physical_box_fragment.h"
@@ -46,7 +47,9 @@
   void BuildGridItemsAndTrackCollections(
       const NGGridLayoutAlgorithm& algorithm) {
     // Measure items.
-    algorithm.ConstructAndAppendGridItems(&grid_items_, &out_of_flow_items_);
+    NGGridProperties grid_properties;
+    algorithm.ConstructAndAppendGridItems(&grid_items_, &grid_properties,
+                                          &out_of_flow_items_);
 
     NGGridPlacement grid_placement(
         algorithm.Style(), algorithm.ComputeAutomaticRepetitions(kForColumns),
@@ -62,11 +65,13 @@
     // Build algorithm track collections from the block track collections.
     column_track_collection_ = NGGridLayoutAlgorithmTrackCollection(
         column_block_track_collection,
-        algorithm.grid_available_size_.inline_size == kIndefiniteSize);
+        algorithm.grid_available_size_.inline_size == kIndefiniteSize,
+        &grid_properties);
 
     row_track_collection_ = NGGridLayoutAlgorithmTrackCollection(
         row_block_track_collection,
-        algorithm.grid_available_size_.block_size == kIndefiniteSize);
+        algorithm.grid_available_size_.block_size == kIndefiniteSize,
+        &grid_properties);
 
     for (auto& grid_item : grid_items_) {
       grid_item.ComputeSetIndices(column_track_collection_);
@@ -86,11 +91,11 @@
     bool unused;
     algorithm.ComputeUsedTrackSizes(
         NGGridLayoutAlgorithm::SizingConstraint::kLayout, grid_geometry_,
-        &column_track_collection_, &grid_items_, &unused);
+        grid_properties, &column_track_collection_, &grid_items_, &unused);
     // Resolve block size.
     algorithm.ComputeUsedTrackSizes(
         NGGridLayoutAlgorithm::SizingConstraint::kLayout, grid_geometry_,
-        &row_track_collection_, &grid_items_, &unused);
+        grid_properties, &row_track_collection_, &grid_items_, &unused);
   }
 
   NGGridLayoutAlgorithmTrackCollection& TrackCollection(
diff --git a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.cc b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.cc
new file mode 100644
index 0000000..8c19e73
--- /dev/null
+++ b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.cc
@@ -0,0 +1,49 @@
+// Copyright 2021 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 "third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.h"
+
+#include "third_party/blink/renderer/core/style/grid_positions_resolver.h"
+
+namespace blink {
+
+NGGridProperties::NGGridProperties()
+    : has_auto_max_column(false),
+      has_auto_max_row(false),
+      has_auto_min_column(false),
+      has_auto_min_row(false),
+      has_baseline_column(false),
+      has_baseline_row(false),
+      has_flexible_column(false),
+      has_flexible_row(false),
+      has_intrinsic_column(false),
+      has_intrinsic_row(false),
+      has_orthogonal_item(false) {}
+
+bool NGGridProperties::HasBaseline(GridTrackSizingDirection direction) const {
+  return (direction == kForColumns)
+             ? (has_baseline_column ||
+                (has_orthogonal_item && has_baseline_row))
+             : (has_baseline_row ||
+                (has_orthogonal_item && has_baseline_column));
+}
+
+bool NGGridProperties::HasFlexibleTrack(
+    GridTrackSizingDirection direction) const {
+  return (direction == kForColumns) ? has_flexible_column : has_flexible_row;
+}
+
+bool NGGridProperties::HasIntrinsicTrack(
+    GridTrackSizingDirection direction) const {
+  return (direction == kForColumns) ? has_intrinsic_column : has_intrinsic_row;
+}
+
+bool NGGridProperties::HasAutoMaxTrack(
+    GridTrackSizingDirection direction) const {
+  return (direction == kForColumns)
+             ? (has_auto_min_column || has_auto_max_column)
+             : (has_auto_min_row || has_auto_max_row);
+}
+
+}  // namespace blink
diff --git a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.h b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.h
new file mode 100644
index 0000000..99431d6
--- /dev/null
+++ b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.h
@@ -0,0 +1,43 @@
+// Copyright 2021 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 THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_NG_GRID_NG_GRID_PROPERTIES_H_
+#define THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_NG_GRID_NG_GRID_PROPERTIES_H_
+
+#include "third_party/blink/renderer/core/core_export.h"
+#include "third_party/blink/renderer/core/style/grid_positions_resolver.h"
+
+namespace blink {
+// This class stores various grid properties. Some of these properties
+// depend on grid items and some depend on tracks, hence the need for a
+// separate class to consolidate them. These properties can then be used
+// to skip certain parts of the grid algorithm for better performance.
+struct CORE_EXPORT NGGridProperties {
+  NGGridProperties();
+
+ public:
+  bool HasBaseline(GridTrackSizingDirection direction) const;
+  bool HasFlexibleTrack(GridTrackSizingDirection direction) const;
+  bool HasIntrinsicTrack(GridTrackSizingDirection direction) const;
+  bool HasAutoMaxTrack(GridTrackSizingDirection direction) const;
+
+  // TODO(layout-dev) Initialize these with {false} and remove the constructor
+  // when the codebase moves to C++20 (this syntax isn't allowed in bitfields
+  // prior to C++20).
+  bool has_auto_max_column : 1;
+  bool has_auto_max_row : 1;
+  bool has_auto_min_column : 1;
+  bool has_auto_min_row : 1;
+  bool has_baseline_column : 1;
+  bool has_baseline_row : 1;
+  bool has_flexible_column : 1;
+  bool has_flexible_row : 1;
+  bool has_intrinsic_column : 1;
+  bool has_intrinsic_row : 1;
+  bool has_orthogonal_item : 1;
+};
+
+}  // namespace blink
+
+#endif  // THIRD_PARTY_BLINK_RENDERER_CORE_LAYOUT_NG_GRID_NG_GRID_PROPERTIES_H_
diff --git a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.cc b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.cc
index c5c0141..40f9f22 100644
--- a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.cc
+++ b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.cc
@@ -5,6 +5,7 @@
 #include "third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.h"
 
 #include "base/check.h"
+#include "third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.h"
 #include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
 
 namespace blink {
@@ -597,7 +598,8 @@
 
 NGGridLayoutAlgorithmTrackCollection::NGGridLayoutAlgorithmTrackCollection(
     const NGGridBlockTrackCollection& block_track_collection,
-    bool is_available_size_indefinite)
+    bool is_available_size_indefinite,
+    NGGridProperties* grid_properties)
     : non_collapsed_track_count_(0),
       direction_(block_track_collection.Direction()),
       depends_on_available_size_(false),
@@ -611,7 +613,7 @@
                      block_track_range.IsImplicit()
                          ? block_track_collection.ImplicitTracks()
                          : block_track_collection.ExplicitTracks(),
-                     is_available_size_indefinite);
+                     is_available_size_indefinite, grid_properties);
   }
 }
 
@@ -620,10 +622,22 @@
     GridTrackSizingDirection direction)
     : direction_(direction), ranges_(ranges) {}
 
+void NGGridLayoutAlgorithmTrackCollection::SetAllGrowthLimitsToBaseSize() {
+  for (auto set_iterator = GetSetIterator(); !set_iterator.IsAtEnd();
+       set_iterator.MoveToNextSet()) {
+    auto& set = set_iterator.CurrentSet();
+    if (set.GrowthLimit() == kIndefiniteSize)
+      set.SetGrowthLimit(set.BaseSize());
+  }
+}
+
 void NGGridLayoutAlgorithmTrackCollection::AppendTrackRange(
     const NGGridBlockTrackCollection::Range& block_track_range,
     const NGGridTrackList& specified_track_list,
-    bool is_available_size_indefinite) {
+    bool is_available_size_indefinite,
+    NGGridProperties* grid_properties) {
+  DCHECK(grid_properties);
+
   Range new_range(block_track_range, /* starting_set_index */ sets_.size());
 
   if (block_track_range.repeater_index == kInvalidRangeIndex) {
@@ -690,6 +704,7 @@
   bool is_range_spanning_flexible_track = false;
   bool is_range_spanning_intrinsic_track = false;
   bool is_range_spanning_auto_minimum_track = false;
+  bool is_range_spanning_auto_maximum_track = false;
 
   for (wtf_size_t i = 0; i < new_range.set_count; ++i) {
     const auto& set_track_size =
@@ -705,6 +720,8 @@
         set_track_size.HasIntrinsicMaxTrackBreadth();
     is_range_spanning_auto_minimum_track |=
         set_track_size.HasAutoMinTrackBreadth();
+    is_range_spanning_auto_maximum_track |=
+        set_track_size.HasAutoMaxTrackBreadth();
 
     is_spanning_only_definite_tracks_ &=
         set_track_size.HasFixedMinTrackBreadth() &&
@@ -722,6 +739,20 @@
   if (is_range_spanning_auto_minimum_track)
     new_range.properties.SetProperty(TrackSpanProperties::kHasAutoMinimumTrack);
   ranges_.push_back(new_range);
+
+  if (direction_ == kForColumns) {
+    grid_properties->has_flexible_column |= is_range_spanning_flexible_track;
+    grid_properties->has_intrinsic_column |= is_range_spanning_intrinsic_track;
+    grid_properties->has_auto_min_column |=
+        is_range_spanning_auto_minimum_track;
+    grid_properties->has_auto_max_column |=
+        is_range_spanning_auto_maximum_track;
+  } else {
+    grid_properties->has_flexible_row |= is_range_spanning_flexible_track;
+    grid_properties->has_intrinsic_row |= is_range_spanning_intrinsic_track;
+    grid_properties->has_auto_min_row |= is_range_spanning_auto_minimum_track;
+    grid_properties->has_auto_max_row |= is_range_spanning_auto_maximum_track;
+  }
 }
 
 wtf_size_t NGGridLayoutAlgorithmTrackCollection::EndLineOfImplicitGrid() const {
diff --git a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.h b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.h
index e0650a9..55ad2a7e 100644
--- a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.h
+++ b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.h
@@ -11,6 +11,8 @@
 
 namespace blink {
 
+struct NGGridProperties;
+
 // NGGridTrackCollectionBase provides an implementation for some shared
 // functionality on track range collections, specifically binary search on
 // the collection to get a range index given a track number.
@@ -336,13 +338,16 @@
   // sizing functions (see the constructor for |NGGridSet|).
   NGGridLayoutAlgorithmTrackCollection(
       const NGGridBlockTrackCollection& block_track_collection,
-      bool is_available_size_indefinite);
+      bool is_available_size_indefinite,
+      NGGridProperties* grid_properties);
 
   // TODO(ansollan): Refactor the track collection abstraction so that we only
   // pass what is needed for placing in flow and out of flow items.
   NGGridLayoutAlgorithmTrackCollection(const Vector<Range>& ranges,
                                        GridTrackSizingDirection direction);
 
+  void SetAllGrowthLimitsToBaseSize();
+
   wtf_size_t EndLineOfImplicitGrid() const;
   bool IsGridLineWithinImplicitGrid(wtf_size_t grid_line) const;
 
@@ -397,7 +402,8 @@
   void AppendTrackRange(
       const NGGridBlockTrackCollection::Range& block_track_range,
       const NGGridTrackList& specified_track_list,
-      bool is_available_size_indefinite);
+      bool is_available_size_indefinite,
+      NGGridProperties* grid_properties);
 
   wtf_size_t non_collapsed_track_count_;
   GridTrackSizingDirection direction_;
diff --git a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection_test.cc b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection_test.cc
index df15e0d..1cce963 100644
--- a/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection_test.cc
+++ b/third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection_test.cc
@@ -5,6 +5,7 @@
 #include <vector>
 
 #include "testing/gtest/include/gtest/gtest.h"
+#include "third_party/blink/renderer/core/layout/ng/grid/ng_grid_properties.h"
 #include "third_party/blink/renderer/core/layout/ng/grid/ng_grid_track_collection.h"
 #include "third_party/blink/renderer/core/layout/ng/ng_layout_test.h"
 
@@ -357,8 +358,18 @@
                                       /* auto_repeat_count */ 0,
                                       /* named_grid_area_track_count */ 0);
   block_collection.FinalizeRanges(/* start_offset */ 0);
+  NGGridProperties grid_properties;
   NGGridLayoutAlgorithmTrackCollection algorithm_collection(
-      block_collection, /* is_content_box_size_defined */ false);
+      block_collection, /* is_content_box_size_defined */ false,
+      &grid_properties);
+
+  EXPECT_FALSE(grid_properties.has_intrinsic_row);
+  EXPECT_TRUE(grid_properties.has_intrinsic_column);
+  EXPECT_FALSE(grid_properties.has_auto_min_row);
+  EXPECT_TRUE(grid_properties.has_auto_min_column);
+  EXPECT_FALSE(grid_properties.has_auto_max_row);
+  EXPECT_FALSE(grid_properties.has_auto_max_column);
+  EXPECT_FALSE(grid_properties.has_orthogonal_item);
 
   // Test the set iterator for the entire collection.
   wtf_size_t set_count = 0;
@@ -420,6 +431,7 @@
   wtf_size_t range3_end;
   wtf_size_t range4_start;
   wtf_size_t range4_end;
+
   block_collection.EnsureTrackCoverage(2, 4, &range1_start, &range1_end);
   block_collection.EnsureTrackCoverage(12, 4, &range2_start, &range2_end);
   block_collection.EnsureTrackCoverage(17, 3, &range3_start, &range3_end);
@@ -435,8 +447,10 @@
   EXPECT_EQ(9u, range4_start);
   EXPECT_EQ(9u, range4_end);
 
+  NGGridProperties grid_properties;
   NGGridLayoutAlgorithmTrackCollection algorithm_collection(
-      block_collection, /* is_content_box_size_defined */ false);
+      block_collection, /* is_content_box_size_defined */ false,
+      &grid_properties);
   NGGridTrackCollectionBase::RangeRepeatIterator range_iterator =
       algorithm_collection.RangeIterator();
 
@@ -559,8 +573,10 @@
   EXPECT_EQ(4u, range2_start);
   EXPECT_EQ(4u, range2_end);
 
+  NGGridProperties grid_properties;
   NGGridLayoutAlgorithmTrackCollection algorithm_collection(
-      block_collection, /* is_content_box_size_defined */ false);
+      block_collection, /* is_content_box_size_defined */ false,
+      &grid_properties);
   NGGridTrackCollectionBase::RangeRepeatIterator range_iterator =
       algorithm_collection.RangeIterator();
 
@@ -646,11 +662,23 @@
   EXPECT_EQ(3u, range2_start);
   EXPECT_EQ(4u, range2_end);
 
+  NGGridProperties grid_properties;
   NGGridLayoutAlgorithmTrackCollection algorithm_collection(
-      block_collection, /* is_content_box_size_defined */ false);
+      block_collection, /* is_content_box_size_defined */ false,
+      &grid_properties);
   NGGridTrackCollectionBase::RangeRepeatIterator range_iterator =
       algorithm_collection.RangeIterator();
 
+  EXPECT_FALSE(grid_properties.has_baseline_row);
+  EXPECT_FALSE(grid_properties.has_baseline_column);
+  EXPECT_FALSE(grid_properties.has_intrinsic_row);
+  EXPECT_TRUE(grid_properties.has_intrinsic_column);
+  EXPECT_FALSE(grid_properties.has_auto_min_row);
+  EXPECT_TRUE(grid_properties.has_auto_min_column);
+  EXPECT_FALSE(grid_properties.has_auto_max_row);
+  EXPECT_TRUE(grid_properties.has_auto_max_column);
+  EXPECT_FALSE(grid_properties.has_orthogonal_item);
+
   EXPECT_RANGE(0u, 1u, range_iterator);
   NGGridLayoutAlgorithmTrackCollection::SetIterator set_iterator =
       IteratorForRange(algorithm_collection, range_iterator.RangeIndex());
diff --git a/third_party/blink/renderer/platform/fonts/font_description_test.cc b/third_party/blink/renderer/platform/fonts/font_description_test.cc
index 7ad030c..c7933d5 100644
--- a/third_party/blink/renderer/platform/fonts/font_description_test.cc
+++ b/third_party/blink/renderer/platform/fonts/font_description_test.cc
@@ -173,7 +173,7 @@
   description.SetTextRendering(kOptimizeLegibility);
 
   EXPECT_EQ(
-      "family_list=[A,B], feature_settings=[cccc=76,dddd=94], "
+      "family_list=[A, B], feature_settings=[cccc=76,dddd=94], "
       "variation_settings=[aaaa=42,bbbb=8118], locale=no, "
       "specified_size=1.100000, "
       "computed_size=2.200000, adjusted_size=3.300000, size_adjust=4.400000, "
diff --git a/third_party/blink/renderer/platform/fonts/font_family.cc b/third_party/blink/renderer/platform/fonts/font_family.cc
index 1ad8aa0..da1044c 100644
--- a/third_party/blink/renderer/platform/fonts/font_family.cc
+++ b/third_party/blink/renderer/platform/fonts/font_family.cc
@@ -55,7 +55,7 @@
   builder.Append(family_);
   const FontFamily* current = Next();
   while (current) {
-    builder.Append(",");
+    builder.Append(", ");
     builder.Append(current->Family());
     current = current->Next();
   }
diff --git a/third_party/blink/renderer/platform/fonts/font_family.h b/third_party/blink/renderer/platform/fonts/font_family.h
index fa69d30..0a8e534 100644
--- a/third_party/blink/renderer/platform/fonts/font_family.h
+++ b/third_party/blink/renderer/platform/fonts/font_family.h
@@ -43,6 +43,15 @@
   ~FontFamily();
 
   void SetFamily(const AtomicString& family) { family_ = family; }
+  // Return this font family's name. Note that it is never quoted nor escaped.
+  // For web-exposed serialization, please rely instead on the functions
+  // ComputedStyleUtils::ValueForFontFamily(const FontFamily&) and
+  // CSSValue::CssText() in order to match formatting rules from the CSSOM
+  // specification.
+  // TODO(crbug.com/1065468): Generic font families "cursive", "fantasy",
+  // "monospace", "sans-serif" and "serif" are currently encoded internally with
+  // a "-webkit" prefix. The <generic-family> "system-ui" is encoded without
+  // prefix but can't be distinguished from the <family-name> "system-ui".
   const AtomicString& Family() const { return family_; }
 
   const FontFamily* Next() const;
@@ -52,7 +61,15 @@
   scoped_refptr<SharedFontFamily> ReleaseNext();
 
   // Returns this font family's name followed by all subsequent linked
-  // families delimited by commas.
+  // families separated ", " (comma and space). Font family names are never
+  // quoted nor escaped. For web-exposed serialization, please rely instead on
+  // the functions ComputedStyleUtils::ValueForFontFamily(const FontFamily&) and
+  // CSSValue::CssText() in order to match formatting rules from the CSSOM
+  // specification.
+  // TODO(crbug.com/1065468): Generic font families "cursive", "fantasy",
+  // "monospace", "sans-serif" and "serif" are currently encoded internally with
+  // a "-webkit" prefix. The <generic-family> "system-ui" is encoded without
+  // prefix but can't be distinguished from the <family-name> "system-ui".
   String ToString() const;
 
  private:
diff --git a/third_party/blink/renderer/platform/fonts/font_family_test.cc b/third_party/blink/renderer/platform/fonts/font_family_test.cc
index da00ee1..1c8517059 100644
--- a/third_party/blink/renderer/platform/fonts/font_family_test.cc
+++ b/third_party/blink/renderer/platform/fonts/font_family_test.cc
@@ -28,14 +28,14 @@
     FontFamily family;
     family.SetFamily("A");
     CreateAndAppendFamily(family, "B");
-    EXPECT_EQ("A,B", family.ToString());
+    EXPECT_EQ("A, B", family.ToString());
   }
   {
     FontFamily family;
     family.SetFamily("A");
     FontFamily* b_family = CreateAndAppendFamily(family, "B");
     CreateAndAppendFamily(*b_family, "C");
-    EXPECT_EQ("A,B,C", family.ToString());
+    EXPECT_EQ("A, B, C", family.ToString());
   }
 }
 
diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_shaper.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_shaper.cc
index 8ae7d3ec..57d9b5c 100644
--- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_shaper.cc
+++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_shaper.cc
@@ -88,13 +88,7 @@
   StringBuilder log;
   log.Append("Font='");
   const FontDescription& font_description = font->GetFontDescription();
-  for (const FontFamily* family = &font_description.Family();;) {
-    log.Append(family->Family());
-    family = family->Next();
-    if (!family)
-      break;
-    log.Append(", ");
-  }
+  log.Append(font_description.Family().ToString());
   log.AppendFormat("', %f", font_description.ComputedSize());
 
   // Log the primary font with its family name in the font file.
diff --git a/third_party/blink/renderer/platform/heap/test/heap_test.cc b/third_party/blink/renderer/platform/heap/test/heap_test.cc
index cdcd9a4..111fedb 100644
--- a/third_party/blink/renderer/platform/heap/test/heap_test.cc
+++ b/third_party/blink/renderer/platform/heap/test/heap_test.cc
@@ -2719,10 +2719,12 @@
   for (int i = 0; i < 100; i++) {
     EXPECT_EQ(1u, wrapper->GetMap().size());
 
+    EphemeronWrapper::Map::iterator it;
     if (i == 49)
-      wrapper = wrapper->GetMap().DeprecatedAtOrEmptyValue(key2);
+      it = wrapper->GetMap().find(key2);
     else
-      wrapper = wrapper->GetMap().DeprecatedAtOrEmptyValue(key);
+      it = wrapper->GetMap().find(key);
+    wrapper = it != wrapper->GetMap().end() ? it->value : nullptr;
   }
   EXPECT_EQ(nullptr, wrapper);
 
@@ -2732,7 +2734,8 @@
   wrapper = chain;
   for (int i = 0; i < 50; i++) {
     EXPECT_EQ(i == 49 ? 0u : 1u, wrapper->GetMap().size());
-    wrapper = wrapper->GetMap().DeprecatedAtOrEmptyValue(key);
+    auto it = wrapper->GetMap().find(key);
+    wrapper = it != wrapper->GetMap().end() ? it->value : nullptr;
   }
   EXPECT_EQ(nullptr, wrapper);
 
diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc b/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc
index d0ef7bd..c7ae11a 100644
--- a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc
+++ b/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc
@@ -2261,8 +2261,9 @@
   if (it != early_hints_preloaded_resources_.end()) {
     early_hints_preloaded_resources_.erase(it);
     const ResourceResponse& response = resource->GetResponse();
-    if (response.WasCached() && (!response.WasFetchedViaServiceWorker() ||
-                                 response.IsServiceWorkerPassThrough())) {
+    if (!response.NetworkAccessed() &&
+        (!response.WasFetchedViaServiceWorker() ||
+         response.IsServiceWorkerPassThrough())) {
       info->SetInitiatorType("early-hints");
     }
   }
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
index a128a86..9e48591 100644
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -521,6 +521,7 @@
     {
       // https://github.com/DevSDK/calc-infinity-and-NaN/blob/master/explainer.md
       name: "CSSCalcInfinityAndNaN",
+      status: "test",
     },
     {
       // https://drafts.csswg.org/css-cascade-5/#layering
@@ -1230,6 +1231,7 @@
       // the layout object tree.
       name: "LayoutNGFragmentTraversal",
       implied_by: ["LayoutNGBlockFragmentation"],
+      status: "stable",
     },
     {
       // Full support for PositionForPoint in NGPhysicalFragment. Without this
diff --git a/third_party/blink/renderer/platform/wtf/hash_map.h b/third_party/blink/renderer/platform/wtf/hash_map.h
index 6e28420..8c6f0bf 100644
--- a/third_party/blink/renderer/platform/wtf/hash_map.h
+++ b/third_party/blink/renderer/platform/wtf/hash_map.h
@@ -156,7 +156,6 @@
   iterator find(KeyPeekInType);
   const_iterator find(KeyPeekInType) const;
   bool Contains(KeyPeekInType) const;
-  // Returns a reference to the mapped value. Crashes if no mapped value exists.
   MappedPeekType at(KeyPeekInType) const;
   // Deprecated variant of at(). Created for refactor described in
   // https://crbug.com/1058527. Returns a reference to the mapped value or the
@@ -591,10 +590,7 @@
           typename Y>
 typename HashMap<T, U, V, W, X, Y>::MappedPeekType
 HashMap<T, U, V, W, X, Y>::at(KeyPeekInType key) const {
-  const ValueType* entry = impl_.Lookup(key);
-  CHECK(entry) << "HashMap::at found no value for the given key. See "
-                  "https://crbug.com/1058527.";
-  return MappedTraits::Peek(entry->value);
+  return DeprecatedAtOrEmptyValue(key);
 }
 
 template <typename T,
diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/web_tests/TestExpectations
index f15f444..f00b26f 100644
--- a/third_party/blink/web_tests/TestExpectations
+++ b/third_party/blink/web_tests/TestExpectations
@@ -1431,24 +1431,6 @@
 # Incorrect native scrollbar repaint
 crbug.com/891944 [ Mac ] external/wpt/css/css-scrollbars/scrollbar-width-paint-001.html [ Failure ]
 
-
-# ====== CSS Infinity and NaN ======
-
-crbug.com/1133390 external/wpt/css/css-values/calc-catch-divide-by-0.html [ Failure ]
-crbug.com/1133390 external/wpt/css/css-values/calc-infinity-nan-computed.html [ Failure ]
-crbug.com/1133390 external/wpt/css/css-values/round-function.html [ Failure ]
-crbug.com/1133390 external/wpt/css/css-values/calc-infinity-nan-serialize-length.html [ Failure ]
-crbug.com/1133390 external/wpt/css/css-values/calc-infinity-nan-serialize-time.html [ Failure ]
-crbug.com/1133390 external/wpt/css/css-values/calc-infinity-nan-serialize-angle.html [ Failure ]
-
-
-crbug.com/1133390 virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-catch-divide-by-0.html [ Pass ]
-crbug.com/1133390 virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-computed.html [ Pass ]
-crbug.com/1133390 virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/round-function.html [ Pass ]
-crbug.com/1133390 virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-serialize-length.html [ Pass ]
-crbug.com/1133390 virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-serialize-time.html [ Pass ]
-crbug.com/1133390 virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-serialize-angle.html [ Pass ]
-
 # css-variables
 
 crbug.com/1220145 external/wpt/css/css-variables/variable-declaration-29.html [ Failure ]
@@ -2664,6 +2646,9 @@
 crbug.com/626703 external/wpt/service-workers/service-worker/worker-interception.https.html [ Failure ]
 
 # ====== New tests from wpt-importer added here ======
+crbug.com/626703 virtual/dialogfocus-old-behavior/external/wpt/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html [ Failure ]
+crbug.com/626703 external/wpt/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html [ Failure ]
+crbug.com/626703 virtual/synchronous_html_parser/external/wpt/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html [ Failure ]
 crbug.com/626703 external/wpt/css/css-fonts/system-ui-zh.html [ Failure ]
 crbug.com/626703 external/wpt/css/css-fonts/font-synthesis-07.html [ Failure ]
 crbug.com/626703 external/wpt/css/selectors/nesting.html [ Failure ]
@@ -7596,7 +7581,6 @@
 # Sheriff on 2021-05-26
 crbug.com/1213322 [ Mac ] external/wpt/css/css-values/minmax-percentage-serialize.html [ Failure Pass ]
 crbug.com/1213322 [ Mac ] external/wpt/html/browsers/the-window-object/named-access-on-the-window-object/window-named-properties.html [ Failure Pass ]
-crbug.com/1213322 [ Mac ] virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/minmax-percentage-serialize.html [ Failure Pass ]
 
 # Do not retry slow tests that also timeouts
 crbug.com/1210687 [ Mac10.15 ] fast/events/open-window-from-another-frame.html [ Pass Timeout ]
diff --git a/third_party/blink/web_tests/VirtualTestSuites b/third_party/blink/web_tests/VirtualTestSuites
index d40bb135..03473bd 100644
--- a/third_party/blink/web_tests/VirtualTestSuites
+++ b/third_party/blink/web_tests/VirtualTestSuites
@@ -725,11 +725,6 @@
     "args": ["--enable-blink-features=CSSModules", "--js-flags=--harmony-import-assertions"]
   },
   {
-    "prefix":"css-calc-infinity-and-nan",
-    "bases": ["external/wpt/css/css-values/"],
-    "args": ["--enable-blink-features=CSSCalcInfinityAndNaN"]
-  },
-  {
     "prefix": "import-assertions",
     "bases": ["external/wpt/html/semantics/scripting-1/the-script-element/import-assertions"],
     "args": ["--js-flags=--harmony-import-assertions"]
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 8ae0bd1..e38ea2c 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
@@ -260,6 +260,62 @@
         null,
         {}
        ]
+      ],
+      "slot-content-visibility-1-crash.html": [
+       "7fd4ba7bbafae79309408d4aeb7ae99325de37a3",
+       [
+        null,
+        {}
+       ]
+      ],
+      "slot-content-visibility-2-crash.html": [
+       "47b7962ae0ba76f4387a1d8c35b782b64dc86a6b",
+       [
+        null,
+        {}
+       ]
+      ],
+      "slot-content-visibility-3-crash.html": [
+       "a84923946aa508e2e5e789958081eb7a1b3b6811",
+       [
+        null,
+        {}
+       ]
+      ],
+      "slot-content-visibility-4-crash.html": [
+       "83e85a14cf026822d2dffe3c5f5bdce0ea71673e",
+       [
+        null,
+        {}
+       ]
+      ],
+      "slot-content-visibility-5-crash.html": [
+       "01f063301c57985b06c29dc5982c3a7fea0c6bf3",
+       [
+        null,
+        {}
+       ]
+      ],
+      "slot-content-visibility-6-crash.html": [
+       "3055b04e805043049a6c0fde1f3dc6b6faa706a0",
+       [
+        null,
+        {}
+       ]
+      ],
+      "slot-content-visibility-7-crash.html": [
+       "896ebf7831f7a1aff9fa6a4b9b98976e5338f6e8",
+       [
+        null,
+        {}
+       ]
+      ],
+      "slot-content-visibility-8-crash.html": [
+       "208e2c72bfe43ff9574bb3ebcc360d40e58eff3e",
+       [
+        null,
+        {}
+       ]
       ]
      },
      "crashtests": {
@@ -200584,6 +200640,19 @@
          ],
          {}
         ]
+       ],
+       "modal-dialog-display-contents.html": [
+        "a3548d779a58311eda5bb0632415d5f88509cbd5",
+        [
+         null,
+         [
+          [
+           "/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents-expected.html",
+           "=="
+          ]
+         ],
+         {}
+        ]
        ]
       },
       "the-popup-element": {
@@ -268785,7 +268854,7 @@
          []
         ],
         "text-styles.yaml": [
-         "804251954a010ffd3b3508361ec0a3fd2fa43b46",
+         "c4d2caf007c86218c93c4933572b1b4aeb9263ad",
          []
         ],
         "the-canvas-element.yaml": [
@@ -268855,7 +268924,7 @@
          []
         ],
         "text.yaml": [
-         "8e493e0c75ded3de3acdb94b9dfe98c1d1c55df4",
+         "2fe6c2a88bc2bcbbc63e7f1b6e888aeaf966e3fc",
          []
         ],
         "the-canvas-state.yaml": [
@@ -276701,6 +276770,10 @@
         "6ffd72296d8302c71866624b08b1b3213f1b5e4e",
         []
        ],
+       "modal-dialog-display-contents-expected.html": [
+        "ab37ed1aca8ada537c55dc85f5bd819ee42355c4",
+        []
+       ],
        "resources": {
         "common.js": [
          "c72ed7f19c4544a203be1d8e6b72a8d3214b1ec7",
@@ -285109,7 +285182,7 @@
      []
     ],
     "payment-request-show-method.https-expected.txt": [
-     "58883acfd5a3eb12b4ef36cf471dab0de3322f63",
+     "9a156f529238c0dde0c2e65d8718ad98c7236221",
      []
     ],
     "payment-request-show-method.https.html.ini": [
@@ -401009,6 +401082,13 @@
          {}
         ]
        ],
+       "2d.text.font.parse.family.html": [
+        "f5c24bdd503beec493ad622256ef30779b87a1d8",
+        [
+         null,
+         {}
+        ]
+       ],
        "2d.text.font.parse.invalid.html": [
         "e2735440eddb71215845857ae7811c0bf74ccdd9",
         [
@@ -412539,6 +412619,20 @@
          {}
         ]
        ],
+       "2d.text.font.parse.family.html": [
+        "68cd6ea5adfa3257ea02a635b751403f18af5e32",
+        [
+         null,
+         {}
+        ]
+       ],
+       "2d.text.font.parse.family.worker.js": [
+        "6bc05b68c3f4462f1f80414c0e46629f062d6726",
+        [
+         "html/canvas/offscreen/text/2d.text.font.parse.family.worker.html",
+         {}
+        ]
+       ],
        "2d.text.font.parse.invalid.html": [
         "8180ea7573f127c4ecb04bd071f78d4885ffccab",
         [
@@ -446270,7 +446364,7 @@
      ]
     ],
     "payment-request-show-method.https.html": [
-     "e5ee5eed01b26c872d01f801bb0739f791b5be58",
+     "98135fefdc5afb15878982b6a350561ef4fe2fda",
      [
       null,
       {
diff --git a/third_party/blink/web_tests/external/wpt/css/css-animations/non-invertible-transform-animation.html b/third_party/blink/web_tests/external/wpt/css/css-animations/non-invertible-transform-animation.html
deleted file mode 100644
index 782bb09..0000000
--- a/third_party/blink/web_tests/external/wpt/css/css-animations/non-invertible-transform-animation.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!DOCTYPE html>
-<html class="reftest-wait">
-<title>CSS animations test: Animations should run even if the initial transform is non-invertible</title>
-<link rel="author" title="Philip Rogers" href="mailto:pdr@chromium.org">
-<link rel="help" href="https://crbug.com/1238327">
-<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
-<style>
-  @keyframes animationKeyframes {
-    0% { transform: scale(0); }
-    /* 0.027% * 60s = 16.2ms */
-    0.027% { transform: scale(0); }
-    0.0271% { transform: scale(1); }
-    100% { transform: scale(1); }
-  }
-  #anim {
-    width: 100px;
-    height: 100px;
-    background: green;
-    animation: animationKeyframes 60s;
-  }
-</style>
-<p>Test passes if there is a filled green square.</p>
-<div id="anim"></div>
-<script>
-  requestAnimationFrame(function() {
-    // Wait for 100ms which should be enough time for the animation to have
-    // progressed to the "scale(1)" state.
-    setTimeout(function() {
-      document.documentElement.classList.remove('reftest-wait');
-    }, 100);
-  });
-</script>
-</html>
diff --git a/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-serialize-angle-expected.txt b/third_party/blink/web_tests/external/wpt/css/css-values/calc-infinity-nan-serialize-angle-expected.txt
similarity index 100%
rename from third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-serialize-angle-expected.txt
rename to third_party/blink/web_tests/external/wpt/css/css-values/calc-infinity-nan-serialize-angle-expected.txt
diff --git a/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-serialize-length-expected.txt b/third_party/blink/web_tests/external/wpt/css/css-values/calc-infinity-nan-serialize-length-expected.txt
similarity index 100%
rename from third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-serialize-length-expected.txt
rename to third_party/blink/web_tests/external/wpt/css/css-values/calc-infinity-nan-serialize-length-expected.txt
diff --git a/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-serialize-time-expected.txt b/third_party/blink/web_tests/external/wpt/css/css-values/calc-infinity-nan-serialize-time-expected.txt
similarity index 100%
rename from third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/calc-infinity-nan-serialize-time-expected.txt
rename to third_party/blink/web_tests/external/wpt/css/css-values/calc-infinity-nan-serialize-time-expected.txt
diff --git a/third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents-expected.html b/third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents-expected.html
new file mode 100644
index 0000000..ab37ed1
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents-expected.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<html>
+<title>Reference: Test that display: contents; on modal dialog & ::backdrop acts like display: block</title>
+<meta charset="utf-8">
+<link rel="author" title="Tim Nguyen" href="https://github.com/nt1m">
+<p>Test passes if there is a green dialog</p>
+<p id="computed-value">block</p>
+<p id="computed-value-backdrop">block</p>
+<dialog></dialog>
+<style>
+dialog {
+    background-color: green;
+}
+</style>
+<script>
+document.querySelector("dialog").showModal();
+</script>
+</html>
diff --git a/third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html b/third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html
new file mode 100644
index 0000000..a3548d7
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html>
+<title>Test that display: contents; on modal dialog & ::backdrop acts like display: block</title>
+<meta charset="utf-8">
+<link rel="author" title="Tim Nguyen" href="https://github.com/nt1m">
+<link rel="match" href="modal-dialog-display-contents-expected.html">
+<p>Test passes if there is a green dialog</p>
+<p id="computed-value"></p>
+<p id="computed-value-backdrop"></p>
+<dialog></dialog>
+<style>
+dialog {
+    display: contents;
+    background-color: green;
+}
+dialog::backdrop {
+    display: contents;
+}
+</style>
+<script>
+dialog = document.querySelector("dialog");
+dialog.showModal();
+document.getElementById("computed-value").textContent = getComputedStyle(dialog).display;
+document.getElementById("computed-value-backdrop").textContent = getComputedStyle(dialog, "::backdrop").display;
+</script>
+</html>
diff --git a/third_party/blink/web_tests/external/wpt/lint.ignore b/third_party/blink/web_tests/external/wpt/lint.ignore
index b94917b..d486fb9 100644
--- a/third_party/blink/web_tests/external/wpt/lint.ignore
+++ b/third_party/blink/web_tests/external/wpt/lint.ignore
@@ -142,7 +142,6 @@
 SET TIMEOUT: common/reftest-wait.js
 SET TIMEOUT: conformance-checkers/*
 SET TIMEOUT: content-security-policy/*
-SET TIMEOUT: css/css-animations/non-invertible-transform-animation.html
 SET TIMEOUT: css/css-display/display-contents-shadow-dom-1.html
 SET TIMEOUT: css/selectors/selector-placeholder-shown-type-change-001.html
 SET TIMEOUT: css/selectors/selector-placeholder-shown-type-change-002.html
diff --git a/third_party/blink/web_tests/external/wpt/payment-request/payment-request-show-method.https-expected.txt b/third_party/blink/web_tests/external/wpt/payment-request/payment-request-show-method.https-expected.txt
index 58883acfd..9a156f5 100644
--- a/third_party/blink/web_tests/external/wpt/payment-request/payment-request-show-method.https-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/payment-request/payment-request-show-method.https-expected.txt
@@ -1,7 +1,7 @@
 This is a testharness.js-based test.
-FAIL Calling show() without being triggered by user interaction throws promise_rejects_dom: function "function() { throw e }" threw object "UnknownError: Renderer process could not establish or lost IPC connection to the PaymentRequest service in the browser process." that is not a DOMException NotAllowedError: property "name" is equal to "UnknownError", expected "NotAllowedError"
-FAIL Throws if the promise [[state]] is not 'created'. promise_rejects_dom: function "function() { throw e }" threw object "InvalidStateError: Failed to execute 'show' on 'PaymentRequest': Already called show() once" that is not a DOMException NotAllowedError: property "code" is equal to 11, expected 0
-FAIL If the user agent's "payment request is showing" boolean is true, then return a promise rejected with an "AbortError" DOMException. promise_rejects_dom: function "function() { throw e }" threw object "InvalidStateError: Failed to execute 'show' on 'PaymentRequest': Already called show() once" that is not a DOMException NotAllowedError: property "code" is equal to 11, expected 0
+FAIL Calling show() without being triggered by user interaction throws promise_rejects_dom: function "function() { throw e }" threw object "UnknownError: Renderer process could not establish or lost IPC connection to the PaymentRequest service in the browser process." that is not a DOMException SecurityError: property "code" is equal to 0, expected 18
+FAIL Throws if the promise [[state]] is not 'created'. promise_rejects_dom: function "function() { throw e }" threw object "InvalidStateError: Failed to execute 'show' on 'PaymentRequest': Already called show() once" that is not a DOMException SecurityError: property "code" is equal to 11, expected 18
+FAIL If the user agent's "payment request is showing" boolean is true, then return a promise rejected with an "AbortError" DOMException. promise_rejects_dom: function "function() { throw e }" threw object "InvalidStateError: Failed to execute 'show' on 'PaymentRequest': Already called show() once" that is not a DOMException SecurityError: property "code" is equal to 11, expected 18
 FAIL If payment method consultation produces no supported method of payment, then return a promise rejected with a "NotSupportedError" DOMException. promise_rejects_dom: function "function() { throw e }" threw object "InvalidStateError: Failed to execute 'show' on 'PaymentRequest': Already called show() once" that is not a DOMException NotSupportedError: property "code" is equal to 11, expected 9
 FAIL Calling show() multiple times always returns a new promise. promise_test: Unhandled rejection with value: object "InvalidStateError: Failed to execute 'abort' on 'PaymentRequest': No show() or retry() in progress, so nothing to abort"
 Harness: the test ran to completion.
diff --git a/third_party/blink/web_tests/external/wpt/payment-request/payment-request-show-method.https.html b/third_party/blink/web_tests/external/wpt/payment-request/payment-request-show-method.https.html
index e5ee5eed..98135fe 100644
--- a/third_party/blink/web_tests/external/wpt/payment-request/payment-request-show-method.https.html
+++ b/third_party/blink/web_tests/external/wpt/payment-request/payment-request-show-method.https.html
@@ -46,7 +46,7 @@
     request.abort();
   }, 2000);
 
-  await promise_rejects_dom(t, "NotAllowedError", acceptPromise);
+  await promise_rejects_dom(t, "SecurityError", acceptPromise);
 }, `Calling show() without being triggered by user interaction throws`);
 
 promise_test(async (t) => {
@@ -56,7 +56,7 @@
   );
   const acceptPromise = request.show(); // Sets state to "interactive"
   // No user activation...
-  await promise_rejects_dom(t, "NotAllowedError", request.show());
+  await promise_rejects_dom(t, "SecurityError", request.show());
 
   // Get user activation
   await test_driver.bless(
@@ -76,7 +76,7 @@
   const acceptPromise1 = request1.show();
 
   // User activation consumed, so...
-  await promise_rejects_dom(t, "NotAllowedError", request2.show());
+  await promise_rejects_dom(t, "SecurityError", request2.show());
 
   // Payment request already showing, so...
   await test_driver.bless("payment request");
diff --git a/third_party/blink/web_tests/flag-specific/highdpi/fast/forms/select-popup/popup-menu-appearance-styled-expected.png b/third_party/blink/web_tests/flag-specific/highdpi/fast/forms/select-popup/popup-menu-appearance-styled-expected.png
index 81c4dd9..a0fcb3b 100644
--- a/third_party/blink/web_tests/flag-specific/highdpi/fast/forms/select-popup/popup-menu-appearance-styled-expected.png
+++ b/third_party/blink/web_tests/flag-specific/highdpi/fast/forms/select-popup/popup-menu-appearance-styled-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/highdpi/virtual/scroll-unification/fast/forms/select-popup/popup-menu-appearance-styled-expected.png b/third_party/blink/web_tests/flag-specific/highdpi/virtual/scroll-unification/fast/forms/select-popup/popup-menu-appearance-styled-expected.png
index 81c4dd9..a0fcb3b 100644
--- a/third_party/blink/web_tests/flag-specific/highdpi/virtual/scroll-unification/fast/forms/select-popup/popup-menu-appearance-styled-expected.png
+++ b/third_party/blink/web_tests/flag-specific/highdpi/virtual/scroll-unification/fast/forms/select-popup/popup-menu-appearance-styled-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/fast/forms/select-popup/popup-menu-appearance-styled-expected.png b/third_party/blink/web_tests/platform/linux/fast/forms/select-popup/popup-menu-appearance-styled-expected.png
index 79b1dcb..195f372 100644
--- a/third_party/blink/web_tests/platform/linux/fast/forms/select-popup/popup-menu-appearance-styled-expected.png
+++ b/third_party/blink/web_tests/platform/linux/fast/forms/select-popup/popup-menu-appearance-styled-expected.png
Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac-arm11.0/external/wpt/payment-request/payment-request-show-method.https-expected.txt b/third_party/blink/web_tests/platform/mac-mac-arm11.0/external/wpt/payment-request/payment-request-show-method.https-expected.txt
new file mode 100644
index 0000000..58883acfd
--- /dev/null
+++ b/third_party/blink/web_tests/platform/mac-mac-arm11.0/external/wpt/payment-request/payment-request-show-method.https-expected.txt
@@ -0,0 +1,8 @@
+This is a testharness.js-based test.
+FAIL Calling show() without being triggered by user interaction throws promise_rejects_dom: function "function() { throw e }" threw object "UnknownError: Renderer process could not establish or lost IPC connection to the PaymentRequest service in the browser process." that is not a DOMException NotAllowedError: property "name" is equal to "UnknownError", expected "NotAllowedError"
+FAIL Throws if the promise [[state]] is not 'created'. promise_rejects_dom: function "function() { throw e }" threw object "InvalidStateError: Failed to execute 'show' on 'PaymentRequest': Already called show() once" that is not a DOMException NotAllowedError: property "code" is equal to 11, expected 0
+FAIL If the user agent's "payment request is showing" boolean is true, then return a promise rejected with an "AbortError" DOMException. promise_rejects_dom: function "function() { throw e }" threw object "InvalidStateError: Failed to execute 'show' on 'PaymentRequest': Already called show() once" that is not a DOMException NotAllowedError: property "code" is equal to 11, expected 0
+FAIL If payment method consultation produces no supported method of payment, then return a promise rejected with a "NotSupportedError" DOMException. promise_rejects_dom: function "function() { throw e }" threw object "InvalidStateError: Failed to execute 'show' on 'PaymentRequest': Already called show() once" that is not a DOMException NotSupportedError: property "code" is equal to 11, expected 9
+FAIL Calling show() multiple times always returns a new promise. promise_test: Unhandled rejection with value: object "InvalidStateError: Failed to execute 'abort' on 'PaymentRequest': No show() or retry() in progress, so nothing to abort"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/README.md b/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/README.md
deleted file mode 100644
index 724ec0a..0000000
--- a/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# This suite runs the tests related in infinity and NaN with
-# --enable-blink-features=CSSCalcInfinityAndNaN
-
diff --git a/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/README.md b/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/README.md
deleted file mode 100644
index 585f0c1..0000000
--- a/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# This suite runs the tests related in infinity and NaN with
-# --enable-blink-features=CSSCalcInfinityAndNaN
diff --git a/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/minmax-percentage-serialize-expected.txt b/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/minmax-percentage-serialize-expected.txt
deleted file mode 100644
index a25b56c..0000000
--- a/third_party/blink/web_tests/virtual/css-calc-infinity-and-nan/external/wpt/css/css-values/minmax-percentage-serialize-expected.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-This is a testharness.js-based test.
-FAIL 'min(1%)' as a specified value should serialize as 'calc(1%)'. assert_equals: 'min(1%)' and 'calc(1%)' should serialize the same in specified values. expected "calc(1%)" but got "min(1%)"
-PASS 'min(1%)' as a computed value should serialize as '1%'.
-PASS 'min(1%)' as a used value should serialize as '1px'.
-FAIL 'max(1%)' as a specified value should serialize as 'calc(1%)'. assert_equals: 'max(1%)' and 'calc(1%)' should serialize the same in specified values. expected "calc(1%)" but got "max(1%)"
-PASS 'max(1%)' as a computed value should serialize as '1%'.
-PASS 'max(1%)' as a used value should serialize as '1px'.
-PASS 'min(1%, 2%, 3%)' as a specified value should serialize as 'min(1%, 2%, 3%)'.
-FAIL 'min(1%, 2%, 3%)' as a computed value should serialize as 'min(1%, 2%, 3%)'. assert_equals: 'min(1%, 2%, 3%)' should round-trip exactly in computed values. expected "min(1%, 2%, 3%)" but got "1%"
-PASS 'min(1%, 2%, 3%)' as a used value should serialize as '1px'.
-PASS 'min(3%, 2%, 1%)' as a specified value should serialize as 'min(3%, 2%, 1%)'.
-FAIL 'min(3%, 2%, 1%)' as a computed value should serialize as 'min(3%, 2%, 1%)'. assert_equals: 'min(3%, 2%, 1%)' should round-trip exactly in computed values. expected "min(3%, 2%, 1%)" but got "1%"
-PASS 'min(3%, 2%, 1%)' as a used value should serialize as '1px'.
-PASS 'max(1%, 2%, 3%)' as a specified value should serialize as 'max(1%, 2%, 3%)'.
-FAIL 'max(1%, 2%, 3%)' as a computed value should serialize as 'max(1%, 2%, 3%)'. assert_equals: 'max(1%, 2%, 3%)' should round-trip exactly in computed values. expected "max(1%, 2%, 3%)" but got "3%"
-PASS 'max(1%, 2%, 3%)' as a used value should serialize as '3px'.
-PASS 'max(3%, 2%, 1%)' as a specified value should serialize as 'max(3%, 2%, 1%)'.
-FAIL 'max(3%, 2%, 1%)' as a computed value should serialize as 'max(3%, 2%, 1%)'. assert_equals: 'max(3%, 2%, 1%)' should round-trip exactly in computed values. expected "max(3%, 2%, 1%)" but got "3%"
-PASS 'max(3%, 2%, 1%)' as a used value should serialize as '3px'.
-PASS 'min(1%, 2%, 3%) 0px' as a specified value should serialize as 'min(1%, 2%, 3%) 0px'.
-FAIL 'min(1%, 2%, 3%) 0px' as a computed value should serialize as 'min(1%, 2%, 3%) 0px'. assert_equals: 'min(1%, 2%, 3%) 0px' should round-trip exactly in computed values. expected "min(1%, 2%, 3%) 0px" but got "min(1% + 0px, 2% + 0px, 3% + 0px) 0px"
-FAIL 'calc(min(1%, 2%) + max(3%, 4%) + 10%)' as a specified value should serialize as 'calc(10% + min(1%, 2%) + max(3%, 4%))'. assert_equals: 'calc(min(1%, 2%) + max(3%, 4%) + 10%)' and 'calc(10% + min(1%, 2%) + max(3%, 4%))' should serialize the same in specified values. expected "calc(10% + min(1%, 2%) + max(3%, 4%))" but got "calc(15%)"
-FAIL 'calc(min(1%, 2%) + max(3%, 4%) + 10%)' as a computed value should serialize as 'calc(10% + min(1%, 2%) + max(3%, 4%))'. assert_equals: 'calc(10% + min(1%, 2%) + max(3%, 4%))' should round-trip exactly in computed values. expected "calc(10% + min(1%, 2%) + max(3%, 4%))" but got "15%"
-PASS 'calc(min(1%, 2%) + max(3%, 4%) + 10%)' as a used value should serialize as '15px'.
-Harness: the test ran to completion.
-
diff --git a/third_party/blink/web_tests/wpt_internal/prerender/resources/audio-setSinkId.https.html b/third_party/blink/web_tests/wpt_internal/prerender/resources/audio-setSinkId.https.html
index 5b70ea05..38238b4 100644
--- a/third_party/blink/web_tests/wpt_internal/prerender/resources/audio-setSinkId.https.html
+++ b/third_party/blink/web_tests/wpt_internal/prerender/resources/audio-setSinkId.https.html
@@ -1,9 +1,3 @@
-<!--
- Copyright 2021 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.
--->
-
 <!DOCTYPE html>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
diff --git a/third_party/blink/web_tests/wpt_internal/prerender/restriction-audio-setSinkId-with-invalid-sinkId.https.html b/third_party/blink/web_tests/wpt_internal/prerender/restriction-audio-setSinkId-with-invalid-sinkId.https.html
index c3a1490..b15c9c7 100644
--- a/third_party/blink/web_tests/wpt_internal/prerender/restriction-audio-setSinkId-with-invalid-sinkId.https.html
+++ b/third_party/blink/web_tests/wpt_internal/prerender/restriction-audio-setSinkId-with-invalid-sinkId.https.html
@@ -1,8 +1,3 @@
-<!--
- Copyright 2021 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.
--->
 <!DOCTYPE html>
 <!--
 This file cannot be upstreamed to WPT until:
diff --git a/third_party/blink/web_tests/wpt_internal/prerender/restriction-audio-setSinkId.https.html b/third_party/blink/web_tests/wpt_internal/prerender/restriction-audio-setSinkId.https.html
index e1d5bd0..33cd9ba 100644
--- a/third_party/blink/web_tests/wpt_internal/prerender/restriction-audio-setSinkId.https.html
+++ b/third_party/blink/web_tests/wpt_internal/prerender/restriction-audio-setSinkId.https.html
@@ -1,8 +1,3 @@
-<!--
- Copyright 2021 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.
--->
 <!DOCTYPE html>
 <!--
 This file cannot be upstreamed to WPT until:
diff --git a/third_party/libaddressinput/chromium/resources/address_input_strings_te.xtb b/third_party/libaddressinput/chromium/resources/address_input_strings_te.xtb
index 0f32c54..464d617 100644
--- a/third_party/libaddressinput/chromium/resources/address_input_strings_te.xtb
+++ b/third_party/libaddressinput/chromium/resources/address_input_strings_te.xtb
@@ -26,22 +26,22 @@
 <translation id="6403469950615936250">ఈ పోస్టల్ కోడ్ ఆకృతి గుర్తించబడలేదు. ఇది చెల్లుబాటు అయ్యే పోస్టల్ కోడ్‌కు ఉదాహరణ: <ph name="EXAMPLE" />. మీ పోస్టల్ కోడ్ తెలియదా? దాన్ని <ph name="BEGIN_LINK" />ఇక్కడ<ph name="END_LINK" /> కనుగొనండి.</translation>
 <translation id="6735419622867539268"><ph name="FIELD_VALUE" /> అనేది ఈ ఫీల్డ్‌కు తగిన విలువలుగా తెలిసిన వాటిలో లేదు.</translation>
 <translation id="6768780634682399515">ఈర్‌కోడ్</translation>
-<translation id="6777217372746654521">ఈ చిరునామా పంక్తి తపాలా కార్యాలయ పెట్టెను కలిగి ఉన్నట్లుగా కనిపిస్తోంది. దయచేసి వీధి లేదా భవన చిరునామాను ఉపయోగించండి.</translation>
+<translation id="6777217372746654521">ఈ అడ్రస్‌ పంక్తి తపాలా కార్యాలయ పెట్టెను కలిగి ఉన్నట్లుగా కనిపిస్తోంది. దయచేసి వీధి లేదా భవన అడ్రస్‌ను ఉపయోగించండి.</translation>
 <translation id="6839929833149231406">ప్రాంతం</translation>
 <translation id="684852933191805996">పట్టణ ప్రాంతం</translation>
 <translation id="6970216967273061347">జిల్లా</translation>
 <translation id="7087282848513945231">కౌంటి</translation>
 <translation id="7139724024395191329">ఎమిరేట్</translation>
-<translation id="7393381084163773901">వీధి చిరునామా</translation>
+<translation id="7393381084163773901">వీధి అడ్రస్‌</translation>
 <translation id="7602447984296396718">ఈ జిప్ కోడ్ ఈ చిరునామాలోని మిగిలిన భాగానికి సరిపోలుతున్నట్లు కనిపించడం లేదు.</translation>
-<translation id="7738983109397305830">ఈ జిప్ కోడ్ ఈ చిరునామాలో మిగిలిన భాగానికి సరిపోలడం లేదు. మీ జిప్ కోడ్ తెలియదా? దాన్ని <ph name="BEGIN_LINK" />ఇక్కడ<ph name="END_LINK" /> కనుగొనండి.</translation>
+<translation id="7738983109397305830">ఈ జిప్ కోడ్ ఈ అడ్రస్‌లో మిగిలిన భాగానికి సరిపోలడం లేదు. మీ జిప్ కోడ్ తెలియదా? దాన్ని <ph name="BEGIN_LINK" />ఇక్కడ<ph name="END_LINK" /> కనుగొనండి.</translation>
 <translation id="777702478322588152">అధికారిక నివాసం</translation>
 <translation id="7805765407568469194">గ్రామం / పట్టణ సముదాయం</translation>
 <translation id="8184169487503545976">ఈ జిప్ కోడ్ ఆకృతి గుర్తించబడలేదు.</translation>
 <translation id="820600307078153032">ఈ జిప్ కోడ్ ఆకృతి గుర్తించబడలేదు. చెల్లుబాటు అయ్యే జిప్ కోడ్‌కు ఉదాహరణ: <ph name="EXAMPLE" />.</translation>
 <translation id="8446364922515257065">డొ/సి</translation>
 <translation id="8449204988444194299">తపాలా పట్టణం</translation>
-<translation id="8471101563037901452">ఈ పోస్టల్ కోడ్ ఈ చిరునామాలో మిగిలిన భాగానికి సరిపోలడం లేదు. మీ పోస్టల్ కోడ్ తెలియదా? దాన్ని <ph name="BEGIN_LINK" />ఇక్కడ<ph name="END_LINK" /> కనుగొనండి.</translation>
+<translation id="8471101563037901452">ఈ పోస్టల్ కోడ్ ఈ అడ్రస్‌లో మిగిలిన భాగానికి సరిపోలడం లేదు. మీ పోస్టల్ కోడ్ తెలియదా? దాన్ని <ph name="BEGIN_LINK" />ఇక్కడ<ph name="END_LINK" /> కనుగొనండి.</translation>
 <translation id="9104066683700680171">ఈ పోస్టల్ కోడ్ ఈ చిరునామాలోని మిగిలిన భాగానికి సరిపోలుతున్నట్లు కనిపించడం లేదు.</translation>
 <translation id="9207002871037636573">మీరు తప్పనిసరిగా జిప్ కోడ్‌ను అందించాలి. ఉదాహరణకు <ph name="EXAMPLE" />.</translation>
 </translationbundle>
\ No newline at end of file
diff --git a/tools/metrics/histograms/enums.xml b/tools/metrics/histograms/enums.xml
index 514fed8..c4754f3 100644
--- a/tools/metrics/histograms/enums.xml
+++ b/tools/metrics/histograms/enums.xml
@@ -7166,7 +7166,13 @@
       label="Unload handler exists in a sub frame, and the current
              experimental config doesn't permit it to be BFCached."/>
   <int value="52" label="ServiceWorker is unregistered"/>
-  <int value="53" label="No valid HTTP response header"/>
+  <int value="53" label="CacheControlNoStore is present"/>
+  <int value="54"
+      label="CacheControlNoStore is present and cookie is modified"/>
+  <int value="55"
+      label="CacheControlNoStore is present and HTTPOnly cookie is modified"/>
+  <int value="56" label="No valid HTTP response header"/>
+  <int value="57" label="Disallow activation navigations for Bug1234857"/>
 </enum>
 
 <enum name="BackForwardCacheReloadsAfterHistoryNavigation">
@@ -47381,6 +47387,7 @@
   <int value="-1606215707" label="WebAppWindowControlsOverlay:enabled"/>
   <int value="-1605920602" label="AVFoundationCaptureV2:disabled"/>
   <int value="-1605567628" label="disable-overlay-scrollbar"/>
+  <int value="-1604519960" label="SystemKoreanPhysicalTyping:enabled"/>
   <int value="-1604051051" label="SpecialLocale:disabled"/>
   <int value="-1603404046" label="V8VmFuture:disabled"/>
   <int value="-1603074997" label="LensRegionSearch:enabled"/>
@@ -47748,6 +47755,7 @@
   <int value="-1336110789" label="CastMediaRouteProvider:disabled"/>
   <int value="-1335017208" label="KeyboardLockAPI:enabled"/>
   <int value="-1334909143" label="NtpModulesDragAndDrop:disabled"/>
+  <int value="-1334336593" label="SystemKoreanPhysicalTyping:disabled"/>
   <int value="-1334327410" label="ash-enable-touch-view-testing"/>
   <int value="-1333946113" label="ContentIndexingDownloadHome:disabled"/>
   <int value="-1332267458" label="RemoveNavigationHistory:enabled"/>
@@ -49394,6 +49402,7 @@
   <int value="6523501" label="lacros-availability-ignore"/>
   <int value="7444737" label="NTPSuggestionsStandaloneUI:disabled"/>
   <int value="7533886" label="disable-offer-store-unmasked-wallet-cards"/>
+  <int value="7642326" label="hdrnet-override"/>
   <int value="8891567" label="CaptionSettings:enabled"/>
   <int value="9609535" label="BrowsingDataLifetimeManager:disabled"/>
   <int value="10405060" label="BluetoothSessionizedMetrics:disabled"/>
@@ -71687,6 +71696,12 @@
   <int value="3" label="Do not restore"/>
 </enum>
 
+<enum name="RestoreTabResult">
+  <int value="0" label="Tabs can be restored"/>
+  <int value="1" label="No restored tabs"/>
+  <int value="2" label="Write error"/>
+</enum>
+
 <enum name="ReusedPasswordType">
   <int value="0" label="Saved password"/>
   <int value="1" label="Primary account password"/>
diff --git a/tools/metrics/histograms/histogram_paths.py b/tools/metrics/histograms/histogram_paths.py
index 31e28c6..b255b19 100755
--- a/tools/metrics/histograms/histogram_paths.py
+++ b/tools/metrics/histograms/histogram_paths.py
@@ -70,8 +70,9 @@
 def main():
   with open(HISTOGRAMS_INDEX, 'w+') as f:
     # Force all OSes to use '/' as the separator.
-    f.write("\n".join(
-        [path.replace(os.sep, '/') for path in HISTOGRAMS_XMLS_RELATIVE]))
+    f.write(''.join([
+        path.replace(os.sep, '/') + '\n' for path in HISTOGRAMS_XMLS_RELATIVE
+    ]))
 
 
 if __name__ == '__main__':
diff --git a/tools/metrics/histograms/metadata/METRIC_REVIEWER_OWNERS b/tools/metrics/histograms/metadata/METRIC_REVIEWER_OWNERS
index 2c6d0b6..7c4fe43 100644
--- a/tools/metrics/histograms/metadata/METRIC_REVIEWER_OWNERS
+++ b/tools/metrics/histograms/metadata/METRIC_REVIEWER_OWNERS
@@ -2,6 +2,7 @@
 alcooper@chromium.org
 alexilin@chromium.org
 altimin@chromium.org
+andypaicu@chromium.org
 anise@chromium.org
 ayui@chromium.org
 bingler@chromium.org
diff --git a/tools/metrics/histograms/metadata/apps/histograms.xml b/tools/metrics/histograms/metadata/apps/histograms.xml
index 3efb3ed..8d9a990 100644
--- a/tools/metrics/histograms/metadata/apps/histograms.xml
+++ b/tools/metrics/histograms/metadata/apps/histograms.xml
@@ -2416,6 +2416,16 @@
   </summary>
 </histogram>
 
+<histogram name="Apps.RestoreBrowserResult" enum="RestoreTabResult"
+    expires_after="2021-12-31">
+  <owner>nancylingwang@chromium.org</owner>
+  <owner>sammiequon@chromium.org</owner>
+  <summary>
+    Records the browser restore result, whether tabs can be restored, when the
+    browser is restored during the system startup phase.
+  </summary>
+</histogram>
+
 <histogram name="Apps.RestoredAppLaunch" enum="AppType"
     expires_after="2021-11-01">
   <owner>nancylingwang@chromium.org</owner>
diff --git a/tools/metrics/histograms/metadata/permissions/OWNERS b/tools/metrics/histograms/metadata/permissions/OWNERS
index 0911e08..9306fd2 100644
--- a/tools/metrics/histograms/metadata/permissions/OWNERS
+++ b/tools/metrics/histograms/metadata/permissions/OWNERS
@@ -2,4 +2,5 @@
 
 # Prefer sending CLs to the owners listed below.
 # Use chromium-metrics-reviews@google.com as a backup.
+andypaicu@chromium.org
 ravjit@chromium.org
diff --git a/ui/accessibility/extensions/strings/accessibility_extensions_strings_te.xtb b/ui/accessibility/extensions/strings/accessibility_extensions_strings_te.xtb
index 05028b4..6ce3037 100644
--- a/ui/accessibility/extensions/strings/accessibility_extensions_strings_te.xtb
+++ b/ui/accessibility/extensions/strings/accessibility_extensions_strings_te.xtb
@@ -18,7 +18,7 @@
 <translation id="2648340354586434750">పదాల వారీగా తరలించడానికి &lt;span class='key'&gt;Option&lt;/span&gt;ని నొక్కి పట్టుకోండి.</translation>
 <translation id="2795227192542594043">ఈ ఎక్స్‌టెన్ష‌న్‌ మీకు వెబ్ పేజీలో తరలించదగిన కర్సర్‌ను అందిస్తుంది. కీబోర్డ్‌తో వచనాన్ని ఎంచుకోవడానికి మిమ్మల్ని అనుమతిస్తుంది.</translation>
 <translation id="2808027189040546825">దశ 1: మిరుమిట్లు గొలిపే నక్షత్రాలు గల అడ్డు వరుసను ఎంచుకోండి:</translation>
-<translation id="2965611304828530558">&lt;p&gt;మీరు లింక్ లేదా నియంత్రణ వద్ద ఉంటే, ఆటోమేటిక్‌గా దానిపై దృష్టి కేంద్రీకరించబడుతుంది.   లింక్ లేదా బటన్‌ను క్లిక్ చేయడానికి &lt;span class='key'&gt;Enter&lt;/span&gt; నొక్కండి. &lt;/p&gt; &lt;p&gt;   దృష్టి కేంద్రీకృత నియంత్రణ (వచన బాక్స్‌ లేదా జాబితా బాక్స్‌ వంటిది) బాణం కీలను క్యాప్చర్ చేస్తున్నప్పుడు, క్యారెట్‌ బ్రౌజింగ్‌ను కొనసాగించడానికి &lt;span class='key'&gt;Esc&lt;/span&gt; నొక్కి, ఆపై   ఎడమ లేదా కుడి బాణం నొక్కండి. &lt;/p&gt; &lt;p&gt;   ప్రత్యామ్నాయంగా, తదుపరి దృష్టి కేంద్రీకృత నియంత్రణకు తరలించడానికి &lt;span class='key'&gt;Tab&lt;/span&gt; నొక్కండి. &lt;/p&gt;</translation>
+<translation id="2965611304828530558">&lt;p&gt;మీరు లింక్ లేదా నియంత్రణ వద్ద ఉంటే, ఆటోమేటిక్‌గా దానిపై దృష్టి కేంద్రీకరించబడుతుంది.   లింక్ లేదా బటన్‌ను క్లిక్ చేయడానికి &lt;span class='key'&gt;Enter&lt;/span&gt; నొక్కండి. &lt;/p&gt; &lt;p&gt;   దృష్టి కేంద్రీకృత నియంత్రణ (వచన బాక్స్‌ లేదా లిస్ట్‌ బాక్స్‌ వంటిది) బాణం కీలను క్యాప్చర్ చేస్తున్నప్పుడు, క్యారెట్‌ బ్రౌజింగ్‌ను కొనసాగించడానికి &lt;span class='key'&gt;Esc&lt;/span&gt; నొక్కి, ఆపై   ఎడమ లేదా కుడి బాణం నొక్కండి. &lt;/p&gt; &lt;p&gt;   ప్రత్యామ్నాయంగా, తదుపరి దృష్టి కేంద్రీకృత నియంత్రణకు తరలించడానికి &lt;span class='key'&gt;Tab&lt;/span&gt; నొక్కండి. &lt;/p&gt;</translation>
 <translation id="3252573918265662711">సెటప్ చేయి</translation>
 <translation id="3410969471888629217">సైట్ అనుకూలీకరణలను విస్మరించు</translation>
 <translation id="3435896845095436175">ప్రారంభించండి</translation>
diff --git a/ui/accessibility/platform/ax_platform_node_mac.mm b/ui/accessibility/platform/ax_platform_node_mac.mm
index b067549..cb43343 100644
--- a/ui/accessibility/platform/ax_platform_node_mac.mm
+++ b/ui/accessibility/platform/ax_platform_node_mac.mm
@@ -904,7 +904,7 @@
 }
 
 - (NSNumber*)AXInsertionPointLineNumber {
-  // Multiline is not supported on views.
+  // TODO: multiline is not supported on views.
   return @0;
 }
 
@@ -912,7 +912,7 @@
 
 - (id)AXLineForIndex:(id)parameter {
   DCHECK([parameter isKindOfClass:[NSNumber class]]);
-  // Multiline is not supported on views.
+  // TODO: multiline is not supported on views.
   return @0;
 }
 
@@ -956,12 +956,14 @@
 
 - (id)AXStyleRangeForIndex:(id)parameter {
   DCHECK([parameter isKindOfClass:[NSNumber class]]);
-  NOTIMPLEMENTED();
-  return nil;
+  // TODO(https://crbug.com/958811): Implement this for real.
+  return [NSValue
+      valueWithRange:NSMakeRange(0, [self accessibilityNumberOfCharacters])];
 }
 
 - (id)AXAttributedStringForRange:(id)parameter {
   DCHECK([parameter isKindOfClass:[NSValue class]]);
+  // TODO(https://crbug.com/958811): Implement this for real.
   base::scoped_nsobject<NSAttributedString> attributedString(
       [[NSAttributedString alloc]
           initWithString:[self AXStringForRange:parameter]]);
@@ -1121,14 +1123,14 @@
 // the old API as well).
 
 - (NSInteger)accessibilityInsertionPointLineNumber {
-  return 0;
+  return [[self AXInsertionPointLineNumber] integerValue];
 }
 
 - (NSInteger)accessibilityNumberOfCharacters {
   if (!_node)
     return 0;
 
-  return [[self getAXValueAsString] length];
+  return [[self AXNumberOfCharacters] integerValue];
 }
 
 - (NSString*)accessibilityPlaceholderValue {
@@ -1165,57 +1167,55 @@
   if (!_node)
     return NSMakeRange(0, 0);
 
-  return NSMakeRange(0, [self accessibilityNumberOfCharacters]);
+  return [[self AXVisibleCharacterRange] rangeValue];
 }
 
 - (NSString*)accessibilityStringForRange:(NSRange)range {
   if (!_node)
     return nil;
 
-  return [[self getAXValueAsString] substringWithRange:range];
+  return (NSString*)[self AXStringForRange:[NSValue valueWithRange:range]];
 }
 
 - (NSAttributedString*)accessibilityAttributedStringForRange:(NSRange)range {
   if (!_node)
     return nil;
 
-  // TODO(https://crbug.com/958811): Implement this for real.
-  base::scoped_nsobject<NSAttributedString> attributedString(
-      [[NSAttributedString alloc]
-          initWithString:[self accessibilityStringForRange:range]]);
-  return attributedString.autorelease();
+  return [self AXAttributedStringForRange:[NSValue valueWithRange:range]];
 }
 
 - (NSInteger)accessibilityLineForIndex:(NSInteger)index {
-  // Views textfields are single-line.
-  return 0;
+  if (!_node)
+    return 0;
+
+  return
+      [[self AXLineForIndex:[NSNumber numberWithInteger:index]] integerValue];
 }
 
 - (NSRange)accessibilityRangeForIndex:(NSInteger)index {
-  NOTIMPLEMENTED();
-  return NSMakeRange(0, 0);
+  if (!_node)
+    return NSMakeRange(0, 0);
+
+  return [[self AXRangeForIndex:[NSNumber numberWithInteger:index]] rangeValue];
 }
 
 - (NSRange)accessibilityStyleRangeForIndex:(NSInteger)index {
   if (!_node)
     return NSMakeRange(0, 0);
 
-  // TODO(https://crbug.com/958811): Implement this for real.
-  return NSMakeRange(0, [self accessibilityNumberOfCharacters]);
+  return [[self AXStyleRangeForIndex:[NSNumber numberWithInteger:index]]
+      rangeValue];
 }
 
 - (NSRange)accessibilityRangeForLine:(NSInteger)line {
   if (!_node)
     return NSMakeRange(0, 0);
 
-  if (line != 0)
-    NOTIMPLEMENTED() << "Views textfields are single-line.";
-  return NSMakeRange(0, [self accessibilityNumberOfCharacters]);
+  return [[self AXRangeForLine:[NSNumber numberWithInteger:line]] rangeValue];
 }
 
 - (NSRange)accessibilityRangeForPosition:(NSPoint)point {
-  NOTIMPLEMENTED();
-  return NSMakeRange(0, 0);
+  return [[self AXRangeForPosition:[NSValue valueWithPoint:point]] rangeValue];
 }
 
 @end
diff --git a/ui/android/java/res/values/color_palette.xml b/ui/android/java/res/values/color_palette.xml
index 688e77b..e900838 100644
--- a/ui/android/java/res/values/color_palette.xml
+++ b/ui/android/java/res/values/color_palette.xml
@@ -11,6 +11,7 @@
     <color name="baseline_primary_100">#D3E3FD</color>
     <color name="baseline_primary_200">#A8C7FA</color>
     <color name="baseline_primary_200_alpha_10" tools:ignore="UnusedResources">#19A8C7FA</color>
+    <color name="baseline_primary_200_alpha_20">#33A8C7FA</color>
     <color name="baseline_primary_200_alpha_50">#80A8C7FA</color>
     <color name="baseline_primary_600">#0B57D0</color>
     <color name="baseline_primary_600_alpha_6">#0F0B57D0</color>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_te.xtb b/ui/chromeos/translations/ui_chromeos_strings_te.xtb
index a26a6dd..f119c99 100644
--- a/ui/chromeos/translations/ui_chromeos_strings_te.xtb
+++ b/ui/chromeos/translations/ui_chromeos_strings_te.xtb
@@ -151,7 +151,7 @@
 <translation id="2326539130272988168">బల్గేరియన్</translation>
 <translation id="2352947182261340447">స్థానిక నిల్వలో తగినంత స్థలం అందుబాటులో లేదు.</translation>
 <translation id="23721837607121582"><ph name="NETWORK_NAME" />, <ph name="NETWORK_COUNT" />లో <ph name="NETWORK_INDEX" />వ నెట్‌వర్క్ మొబైల్ ప్రొఫైల్‌ను డౌన్‌లోడ్ చేయండి</translation>
-<translation id="2377319039870049694">జాబితా వీక్షణకు మార్చు</translation>
+<translation id="2377319039870049694">లిస్ట్‌ వీక్షణకు మార్చు</translation>
 <translation id="2377590462528165447">Linuxతో <ph name="NUMBER_OF_ITEMS" /> ఫోల్డర్‌లు షేర్ చేయబడ్డాయి</translation>
 <translation id="2378075407703503998"><ph name="SELCTED_FILE_COUNT" /> ఫైళ్లు ఎంచుకోబడ్డాయి</translation>
 <translation id="2387458720915042159">ప్రాక్సీ కనెక్షన్ రకం</translation>
@@ -342,7 +342,7 @@
 <translation id="4057991113334098539">సక్రియం చేస్తోంది...</translation>
 <translation id="4092890906744441904">ఐరిష్</translation>
 <translation id="4124935795427217608">యునికార్న్</translation>
-<translation id="4158739975813877944">ప్లే జాబితాను తెరువు</translation>
+<translation id="4158739975813877944">ప్లే లిస్ట్‌ను తెరువు</translation>
 <translation id="4159731583141908892"><ph name="FILE_NAME" /> తరలించబడింది.</translation>
 <translation id="4186579485882418952">ఆఫ్‌లైన్ మోడ్‌ను ఎనేబుల్ చేయి</translation>
 <translation id="4193154014135846272">Google పత్రం</translation>
@@ -401,7 +401,7 @@
 <translation id="4693155481716051732">సుషి</translation>
 <translation id="4694604912444486114">కోతి</translation>
 <translation id="469612310041132144">చైనీస్ క్విక్</translation>
-<translation id="4697043402264950621">ఫైల్ జాబితా <ph name="COLUMN_NAME" /> ప్రకారం ఆరోహణ క్రమంలో వర్గీకరించబడింది.</translation>
+<translation id="4697043402264950621">ఫైల్ లిస్ట్‌ <ph name="COLUMN_NAME" /> ప్రకారం ఆరోహణ క్రమంలో వర్గీకరించబడింది.</translation>
 <translation id="4706042980341760088">టైప్‌రైటర్ కీబోర్డ్‌తో తమిళం</translation>
 <translation id="4711094779914110278">టర్కిష్</translation>
 <translation id="4712283082407695269">"<ph name="PATH" />"ను తెరుస్తోంది</translation>
@@ -512,7 +512,7 @@
 <translation id="5494920125229734069">అన్నీ ఎంచుకోండి</translation>
 <translation id="5500122897333236901">ఐస్‌లాండిక్</translation>
 <translation id="5508696409934741614">చుక్కలు</translation>
-<translation id="5522908512596376669">ఫైల్ జాబితా, "జాబితా వీక్షణ"కు మార్చబడింది.</translation>
+<translation id="5522908512596376669">ఫైల్ లిస్ట్‌, "లిస్ట్‌ వీక్షణ"కు మార్చబడింది.</translation>
 <translation id="5524517123096967210">ఫైల్‌ను చదవడం సాధ్యపడదు.</translation>
 <translation id="5533102081734025921"><ph name="IMAGE_TYPE" /> చిత్రం</translation>
 <translation id="5534520101572674276">పరిమాణాన్ని లెక్కిస్తోంది</translation>
@@ -669,7 +669,7 @@
 <translation id="6970230597523682626">బల్గేరియన్</translation>
 <translation id="6973630695168034713">ఫోల్డర్‌లు</translation>
 <translation id="6976795442547527108">సింహం</translation>
-<translation id="6978611942794658017">ఈ ఫైల్ Windows సాఫ్ట్‌వేర్‌ను ఉపయోగించే PC కోసం రూపొందించబడింది. ఇది Chrome OS అమలయ్యే మీ పరికరానికి అనుకూలంగా లేదు. దయచేసి తగిన ప్రత్యామ్నాయ యాప్‌ కోసం Chrome వెబ్ స్టోర్‌లో శోధించండి.</translation>
+<translation id="6978611942794658017">ఈ ఫైల్ Windows సాఫ్ట్‌వేర్‌ను ఉపయోగించే PC కోసం రూపొందించబడింది. ఇది Chrome OS అమలయ్యే మీ పరికరానికి అనుకూలంగా లేదు. దయచేసి తగిన ప్రత్యామ్నాయ యాప్‌ కోసం Chrome వెబ్ స్టోర్‌లో వెతకండి.</translation>
 <translation id="6979158407327259162">Google Drive</translation>
 <translation id="6989942356279143254">స్వీడిష్</translation>
 <translation id="6990081529015358884">మీకు ఖాళీ స్థలం లేదు</translation>
@@ -708,7 +708,7 @@
 <translation id="7339898014177206373">కొత్త విండో</translation>
 <translation id="7343393116438664539">వియత్నామీస్ టెలెక్స్</translation>
 <translation id="7359359531237882347"><ph name="NUMBER_OF_ITEMS" /> అంశాలను కాపీ చేస్తోంది...</translation>
-<translation id="7375951387215729722">ఫైల్ జాబితా <ph name="COLUMN_NAME" /> ప్రకారం అవరోహణ క్రమంలో వర్గీకరించబడింది.</translation>
+<translation id="7375951387215729722">ఫైల్ లిస్ట్‌ <ph name="COLUMN_NAME" /> ప్రకారం అవరోహణ క్రమంలో వర్గీకరించబడింది.</translation>
 <translation id="7408870451288633753">చెక్</translation>
 <translation id="7417453074306512035">ఇథియోపిక్ కీబోర్డ్</translation>
 <translation id="7417705661718309329">Google మ్యాప్</translation>
@@ -862,7 +862,7 @@
 <translation id="8577897833047451336">క్రోవేషియన్</translation>
 <translation id="8578308463707544055">ఇండోనేషియన్</translation>
 <translation id="8579285237314169903"><ph name="NUMBER_OF_FILES" /> అంశాలను సమకాలీకరిస్తోంది...</translation>
-<translation id="8600173386174225982">ఫైల్ జాబితా, "సూక్ష్మచిత్ర వీక్షణ"కు మార్చబడింది.</translation>
+<translation id="8600173386174225982">ఫైల్ లిస్ట్‌, "సూక్ష్మచిత్ర వీక్షణ"కు మార్చబడింది.</translation>
 <translation id="8601932370724196034">Crostini చిత్రం ఫైల్</translation>
 <translation id="8609695766746872526">ఐస్‌లాండిక్</translation>
 <translation id="863903787380594467">పిన్ తప్పు. మీకు <ph name="RETRIES" /> ప్రయత్నాలు మిగిలి ఉన్నాయి.</translation>
@@ -912,7 +912,7 @@
 <translation id="9130775360844693113">'<ph name="DESTINATION_NAME" />' యొక్క సభ్యులు ఈ అంశాలకు యాక్సెస్ పొందుతారు.</translation>
 <translation id="9131598836763251128">దయచేసి ఒకటి లేదా మరిన్ని ఫైళ్ళను ఎంచుకోండి</translation>
 <translation id="9133055936679483811">జిప్ చేయడంలో విఫలమైంది. <ph name="ERROR_MESSAGE" /></translation>
-<translation id="9134524245363717059">ఈ ఫైల్ Macintosh సాఫ్ట్‌వేర్‌ను ఉపయోగించే కంప్యూటర్ కోసం రూపొందించబడింది. ఇది Chrome OS అమలయ్యే మీ పరికరానికి అనుకూలంగా లేదు. దయచేసి తగిన ప్రత్యామ్నాయ యాప్‌ కోసం Chrome వెబ్ స్టోర్‌లో శోధించండి.</translation>
+<translation id="9134524245363717059">ఈ ఫైల్ Macintosh సాఫ్ట్‌వేర్‌ను ఉపయోగించే కంప్యూటర్ కోసం రూపొందించబడింది. ఇది Chrome OS అమలయ్యే మీ పరికరానికి అనుకూలంగా లేదు. దయచేసి తగిన ప్రత్యామ్నాయ యాప్‌ కోసం Chrome వెబ్ స్టోర్‌లో వెతకండి.</translation>
 <translation id="9144340019284012223">కేటలాన్</translation>
 <translation id="914873105831852105">పిన్ చెల్లదు. మీకు 1 ప్రయత్నం మిగిలి ఉంది.</translation>
 <translation id="9153934054460603056">గుర్తింపు మరియు పాస్‌వర్డ్‌ సేవ్ చేయి</translation>
diff --git a/ui/file_manager/file_manager/common/js/mock_chrome.js b/ui/file_manager/file_manager/common/js/mock_chrome.js
index bbbde71..1cefb752 100644
--- a/ui/file_manager/file_manager/common/js/mock_chrome.js
+++ b/ui/file_manager/file_manager/common/js/mock_chrome.js
@@ -95,3 +95,120 @@
     }
   }
 }
+
+/**
+ * Mocks out the chrome.fileManagerPrivate.onDirectoryChanged and getSizeStats
+ * methods to be useful in unit tests.
+ */
+export class MockChromeFileManagerPrivateDirectoryChanged {
+  constructor() {
+    /**
+     * Listeners attached to listen for directory changes.
+     * @private {!Array<!function(!Event)>}
+     * */
+    this.listeners_ = [];
+
+    /**
+     * Mocked out size stats to return when testing.
+     * @private {!Object<string,
+     *     (!chrome.fileManagerPrivate.MountPointSizeStats|undefined)>}
+     */
+    this.sizeStats_ = {};
+
+    /** @suppress {const} */
+    window.chrome = window.chrome || {};
+
+    /** @suppress {const} */
+    window.chrome.fileManagerPrivate = window.chrome.fileManagerPrivate || {};
+
+    /** @suppress {const} */
+    window.chrome.fileManagerPrivate.onDirectoryChanged =
+        window.chrome.fileManagerPrivate.onDirectoryChanged || {};
+
+    /** @suppress {const} */
+    window.chrome.fileManagerPrivate.onDirectoryChanged.addListener =
+        this.addListener_.bind(this);
+
+    /** @suppress {const} */
+    window.chrome.fileManagerPrivate.onDirectoryChanged.removeListener =
+        this.removeListener_.bind(this);
+
+    /** @suppress {const} */
+    window.chrome.fileManagerPrivate.getSizeStats =
+        this.getSizeStats_.bind(this);
+
+    this.dispatchOnDirectoryChanged =
+        this.dispatchOnDirectoryChanged.bind(this);
+  }
+
+  /**
+   * Store a copy of the listener to emit changes to
+   * @param {!function(!Event)} newListener
+   * @private
+   */
+  addListener_(newListener) {
+    this.listeners_.push(newListener);
+  }
+
+  /**
+   *
+   * @param {!function(!Event)} listenerToRemove
+   * @private
+   */
+  removeListener_(listenerToRemove) {
+    for (let i = 0; i < this.listeners_.length; i++) {
+      if (this.listeners_[i] === listenerToRemove) {
+        this.listeners_.splice(i, 1);
+        return;
+      }
+    }
+  }
+
+  /**
+   * Returns the stubbed out file stats for a directory change.
+   * @param {string} volumeId The underlying volumeId requesting size stats for.
+   * @param {!function((!chrome.fileManagerPrivate.MountPointSizeStats|undefined))}
+   *     callback
+   * @private
+   */
+  getSizeStats_(volumeId, callback) {
+    if (!this.sizeStats_[volumeId]) {
+      callback(undefined);
+      return;
+    }
+
+    callback(this.sizeStats_[volumeId]);
+  }
+
+  /**
+   * Sets the size stats for the volumeId, to return when testing.
+   * @param {string} volumeId
+   * @param {(!chrome.fileManagerPrivate.MountPointSizeStats|undefined)}
+   *     sizeStats
+   */
+  setVolumeSizeStats(volumeId, sizeStats) {
+    this.sizeStats_[volumeId] = sizeStats;
+  }
+
+  /**
+   * Remove the sizeStats for the volumeId which can emulate getSizeStats
+   * returning back undefined.
+   * @param {string} volumeId The volumeId to unset.
+   */
+  unsetVolumeSizeStats(volumeId) {
+    delete this.sizeStats_[volumeId];
+  }
+
+  /**
+   * Invoke all the listeners attached to the
+   * chrome.fileManagerPrivate.onDirectoryChanged method.
+   */
+  dispatchOnDirectoryChanged() {
+    const event = new Event('fake-event');
+    event.entry = 'fake-entry';
+
+    for (const listener of this.listeners_) {
+      listener(event);
+    }
+  }
+}
diff --git a/ui/file_manager/file_manager/externs/banner.js b/ui/file_manager/file_manager/externs/banner.js
index ec50f6e..6105365 100644
--- a/ui/file_manager/file_manager/externs/banner.js
+++ b/ui/file_manager/file_manager/externs/banner.js
@@ -30,7 +30,7 @@
 
   /**
    * The size threshold to trigger a banner if it goes below.
-   * @return {!Banner.DiskThresholdMinSize|!Banner.DiskThresholdMinRatio|!undefined}
+   * @return {!Banner.DiskThresholdMinSize|!Banner.DiskThresholdMinRatio|undefined}
    */
   diskThreshold() {}
 
@@ -64,6 +64,7 @@
 Banner.AllowedVolumeType;
 
 /**
+ * The minSize is denoted in bytes.
  * @typedef {{
  *            type: VolumeManagerCommon.VolumeType,
  *            minSize: number,
diff --git a/ui/file_manager/file_manager/foreground/js/BUILD.gn b/ui/file_manager/file_manager/foreground/js/BUILD.gn
index d244f1c..e413227 100644
--- a/ui/file_manager/file_manager/foreground/js/BUILD.gn
+++ b/ui/file_manager/file_manager/foreground/js/BUILD.gn
@@ -197,9 +197,11 @@
 js_library("banner_controller") {
   deps = [
     ":directory_model",
+    "//ui/file_manager/file_manager/common/js:volume_manager_types",
     "//ui/file_manager/file_manager/common/js:xfm",
     "//ui/file_manager/file_manager/externs:banner",
     "//ui/file_manager/file_manager/externs:volume_info",
+    "//ui/file_manager/file_manager/externs:volume_manager",
     "//ui/webui/resources/js/cr:event_target.m",
   ]
 }
@@ -210,12 +212,14 @@
     ":directory_model",
     ":mock_directory_model",
     "//chrome/test/data/webui:chai_assert",
+    "//ui/file_manager/file_manager/background/js:mock_volume_manager",
     "//ui/file_manager/file_manager/common/js:mock_chrome",
     "//ui/file_manager/file_manager/common/js:test_error_reporting",
     "//ui/file_manager/file_manager/common/js:volume_manager_types",
     "//ui/file_manager/file_manager/common/js:xfm",
     "//ui/file_manager/file_manager/externs:banner",
     "//ui/file_manager/file_manager/externs:volume_info",
+    "//ui/file_manager/file_manager/externs:volume_manager",
   ]
 }
 
diff --git a/ui/file_manager/file_manager/foreground/js/banner_controller.js b/ui/file_manager/file_manager/foreground/js/banner_controller.js
index ac34c6a1..f384083 100644
--- a/ui/file_manager/file_manager/foreground/js/banner_controller.js
+++ b/ui/file_manager/file_manager/foreground/js/banner_controller.js
@@ -4,9 +4,11 @@
 
 import {NativeEventTarget as EventTarget} from 'chrome://resources/js/cr/event_target.m.js';
 
+import {VolumeManagerCommon} from '../../common/js/volume_manager_types.js';
 import {xfm} from '../../common/js/xfm.js';
 import {Banner} from '../../externs/banner.js';
 import {VolumeInfo} from '../../externs/volume_info.js';
+import {VolumeManager} from '../../externs/volume_manager.js';
 
 import {DirectoryModel} from './directory_model.js';
 
@@ -31,8 +33,9 @@
 export class BannerController extends EventTarget {
   /**
    * @param {!DirectoryModel} directoryModel
+   * @param {!VolumeManager} volumeManager
    */
-  constructor(directoryModel) {
+  constructor(directoryModel, volumeManager) {
     super();
 
     /**
@@ -48,6 +51,12 @@
     this.educationalBanners_ = [];
 
     /**
+     * Keep track of banners that subscribe to volume changes.
+     * @private {!Object<!VolumeManagerCommon.VolumeType, !Array<!Banner>>}
+     */
+    this.volumeSizeObservers_ = {};
+
+    /**
      * Stores the state of each banner, such as view count or last dismissed
      * time. This is kept in sync with local storage.
      * @private {!Object<string, number>}
@@ -57,14 +66,45 @@
     /**
      * Maintains the state of the current volume that has been navigated. This
      * is updated by the directory-changed event.
-     * @type {?VolumeInfo}
-     * @private
+     * @private {?VolumeInfo}
      */
     this.currentVolume_ = null;
 
+    /**
+     * Maintains a cache of the current size for all observed volumes. If a
+     * banner requests to observe a volumeType on initialization, the volume
+     * size is cached here, keyed by volumeId.
+     * @private {!Object<string,
+     *     (!chrome.fileManagerPrivate.MountPointSizeStats|undefined)>}
+     */
+    this.volumeSizeStats_ = {};
+
+    /**
+     * The directory model is maintained to get the current volume and also to
+     * listen to the directory-changed event.
+     * @private {!DirectoryModel}
+     */
     this.directoryModel_ = directoryModel;
+
+    /**
+     * The volume manager used to extract volumes from events when the
+     * underlying volume size has changed.
+     * @private {!VolumeManager}
+     */
+    this.volumeManager_ = volumeManager;
+
+    /**
+     * The container where all the banners will be appended to.
+     * @private {?Element}
+     */
     this.container_ = document.querySelector('#banners');
 
+    /**
+     * Bind the onDirectorySizeChanged_ method to this instance once.
+     * @private {!function(!chrome.fileManagerPrivate.FileWatchEvent)}
+     */
+    this.onDirectorySizeChanged_ = this.onDirectorySizeChanged_.bind(this);
+
     xfm.storage.onChanged.addListener(this.onStorageChanged_.bind(this));
     this.directoryModel_.addEventListener(
         'directory-changed', this.onDirectoryChanged_.bind(this));
@@ -82,10 +122,14 @@
     for (const banner of this.warningBanners_) {
       this.localStorageCache_[`${banner.tagName}_${VIEW_COUNTER_SUFFIX}`] = 0;
       this.localStorageCache_[`${banner.tagName}_${LAST_DISMISSED_SUFFIX}`] = 0;
+
+      this.maybeAddVolumeSizeObserver_(banner);
     }
 
     for (const banner of this.educationalBanners_) {
       this.localStorageCache_[`${banner.tagName}_${VIEW_COUNTER_SUFFIX}`] = 0;
+
+      this.maybeAddVolumeSizeObserver_(banner);
     }
 
     const cacheKeys = Object.keys(this.localStorageCache_);
@@ -152,6 +196,15 @@
       return false;
     }
 
+    const diskThreshold = banner.diskThreshold();
+    if (diskThreshold) {
+      const currentVolumeSizeStats = this.currentVolume_ &&
+          this.volumeSizeStats_[this.currentVolume_.volumeId];
+      if (!isBelowThreshold(diskThreshold, currentVolumeSizeStats)) {
+        return false;
+      }
+    }
+
     return true;
   }
 
@@ -192,6 +245,25 @@
   }
 
   /**
+   * If the banner implements diskThreshold, add the banner to the observers of
+   * volume size for the specified volumeType.
+   * @param {!Banner} banner The banner to add.
+   * @private
+   */
+  maybeAddVolumeSizeObserver_(banner) {
+    if (!banner.diskThreshold()) {
+      return;
+    }
+
+    const diskThreshold = banner.diskThreshold();
+    if (!this.volumeSizeObservers_[diskThreshold.type]) {
+      this.volumeSizeObservers_[diskThreshold.type] = [];
+    }
+
+    this.volumeSizeObservers_[diskThreshold.type].push(banner);
+  }
+
+  /**
    * Creates all the warning banners with the supplied tagName's. This will
    * populate the |warningBanners_| array with HTMLElement's.
    * @param {!Array<string>} bannerTagNames The HTMLElement tagName's to create.
@@ -242,6 +314,52 @@
    * @private
    */
   async onDirectoryChanged_(event) {
+    const previousVolume = this.currentVolume_;
+    await this.reconcile();
+
+    // Don't change subscriptions if the volume hasn't changed.
+    if (this.currentVolume_ === previousVolume) {
+      return;
+    }
+
+    if (!this.currentVolume_ ||
+        !this.volumeSizeObservers_[this.currentVolume_.volumeType]) {
+      chrome.fileManagerPrivate.onDirectoryChanged.removeListener(
+          this.onDirectorySizeChanged_);
+      return;
+    }
+
+    const isSubscribedByPreviousVolume =
+        previousVolume && this.volumeSizeStats_[previousVolume.volumeType];
+    if (!isSubscribedByPreviousVolume &&
+        this.volumeSizeObservers_[this.currentVolume_.volumeType]) {
+      chrome.fileManagerPrivate.onDirectoryChanged.addListener(
+          this.onDirectorySizeChanged_);
+    }
+  }
+
+  /**
+   * When a directory changes, grab the current directory size. This is useful
+   * if events are occurring on the current Files app directory (e.g. a copy
+   * operation occurs and the disk size changes). Use this event to check if
+   * the underlying disk space has changed.
+   * @param {!chrome.fileManagerPrivate.FileWatchEvent} event
+   * @private
+   */
+  async onDirectorySizeChanged_(event) {
+    if (!event.entry) {
+      return;
+    }
+    const eventVolumeInfo =
+        this.volumeManager_.getVolumeInfo(/** @type{!Entry} */ (event.entry));
+    if (!eventVolumeInfo || !eventVolumeInfo.volumeId) {
+      return;
+    }
+    const sizeStats = await getSizeStats(eventVolumeInfo.volumeId);
+    if (!sizeStats || sizeStats.totalSize === 0) {
+      return;
+    }
+    this.volumeSizeStats_[eventVolumeInfo.volumeId] = sizeStats;
     await this.reconcile();
   }
 
@@ -317,3 +435,15 @@
   }
   return true;
 }
+
+/**
+ * Wrap the chrome.fileManagerPrivate.getSizeStats function in an async/await
+ * compatible style.
+ * @param {string} volumeId The volumeId to retrieve the size stats for.
+ * @returns {!Promise<(!chrome.fileManagerPrivate.MountPointSizeStats|undefined)>}
+ */
+async function getSizeStats(volumeId) {
+  return new Promise((resolve) => {
+    chrome.fileManagerPrivate.getSizeStats(volumeId, resolve);
+  });
+}
diff --git a/ui/file_manager/file_manager/foreground/js/banner_controller_unittest.m.js b/ui/file_manager/file_manager/foreground/js/banner_controller_unittest.m.js
index 0d4dc28..24f1799 100644
--- a/ui/file_manager/file_manager/foreground/js/banner_controller_unittest.m.js
+++ b/ui/file_manager/file_manager/foreground/js/banner_controller_unittest.m.js
@@ -4,12 +4,13 @@
 
 import {assertEquals} from 'chrome://test/chai_assert.js';
 
-import {MockChromeStorageAPI} from '../../common/js/mock_chrome.js';
+import {MockChromeFileManagerPrivateDirectoryChanged, MockChromeStorageAPI} from '../../common/js/mock_chrome.js';
 import {waitUntil} from '../../common/js/test_error_reporting.js';
 import {VolumeManagerCommon} from '../../common/js/volume_manager_types.js';
 import {xfm} from '../../common/js/xfm.js';
 import {Banner} from '../../externs/banner.js';
 import {VolumeInfo} from '../../externs/volume_info.js';
+import {VolumeManager} from '../../externs/volume_manager.js';
 
 import {BannerController} from './banner_controller.js';
 import {DirectoryModel} from './directory_model.js';
@@ -24,10 +25,18 @@
 /** @type {!Element} */
 let bannerContainer;
 
+/** @type {!MockChromeFileManagerPrivateDirectoryChanged} */
+let mockChromeFileManagerPrivate;
+
+/** @type {?VolumeInfo} */
+let volumeManagerGetVolumeInfoType;
+
 /**
  * @typedef {{
  *    setAllowedVolumeTypes: function(!Array<!Banner.AllowedVolumeType>),
  *    setShowLimit: function(number),
+ *    setDiskThreshold:
+ * function((!Banner.DiskThresholdMinSize|!Banner.DiskThresholdMinRatio|!undefined)),
  *    reset: function(),
  *    tagName: string,
  * }}
@@ -87,6 +96,11 @@
   /** @type {number|undefined} */
   let showLimit;
 
+  /**
+   * @type {!Banner.DiskThresholdMinSize|!Banner.DiskThresholdMinRatio|undefined}
+   */
+  let diskThreshold;
+
   class FakeBanner extends Banner {
     allowedVolumeTypes() {
       return allowedVolumeTypes;
@@ -95,6 +109,10 @@
     showLimit() {
       return showLimit;
     }
+
+    diskThreshold() {
+      return diskThreshold;
+    }
   }
 
   customElements.define(tagName, FakeBanner);
@@ -106,10 +124,14 @@
     reset: () => {
       allowedVolumeTypes = [];
       showLimit = undefined;
+      diskThreshold = undefined;
     },
     setShowLimit: (limit) => {
       showLimit = limit;
     },
+    setDiskThreshold: (threshold) => {
+      diskThreshold = threshold;
+    },
     // Element.tagName returns uppercase.
     tagName: tagName.toUpperCase(),
   };
@@ -181,6 +203,30 @@
   directoryModel.dispatchEvent(new Event('directory-changed'));
 }
 
+/**
+ * Update the current volume size stats that are returned by
+ * chrome.fileManagerPrivate.getSizeStats.
+ * @param {(?chrome.fileManagerPrivate.MountPointSizeStats|undefined)}
+ *     newSizeStats
+ * @param {boolean=} dispatchEvent True to dispatch onDirectoryChanged event.
+ */
+function changeCurrentVolumeDiskSpace(newSizeStats, dispatchEvent = true) {
+  const currentVolume = directoryModel.getCurrentVolumeInfo();
+  if (!currentVolume.volumeId) {
+    return;
+  }
+  if (!newSizeStats) {
+    mockChromeFileManagerPrivate.unsetVolumeSizeStats(currentVolume.volumeId);
+  } else {
+    mockChromeFileManagerPrivate.setVolumeSizeStats(
+        currentVolume.volumeId, newSizeStats);
+  }
+  volumeManagerGetVolumeInfoType = currentVolume;
+  if (dispatchEvent) {
+    mockChromeFileManagerPrivate.dispatchOnDirectoryChanged();
+  }
+}
+
 export function setUpPage() {
   bannerContainer = document.createElement('div');
   bannerContainer.setAttribute('id', 'banners');
@@ -199,8 +245,17 @@
   assertEquals(bannerContainer.childElementCount, 0);
 
   new MockChromeStorageAPI();
+
+  mockChromeFileManagerPrivate =
+      new MockChromeFileManagerPrivateDirectoryChanged();
+
   directoryModel = createFakeDirectoryModel();
-  controller = new BannerController(directoryModel);
+  const volumeManager = /** @type{!VolumeManager} */ ({
+    getVolumeInfo: (entry) => {
+      return volumeManagerGetVolumeInfoType;
+    }
+  });
+  controller = new BannerController(directoryModel, volumeManager);
 
   // Ensure localStorage is cleared between each test.
   xfm.storage.local.clear();
@@ -434,3 +489,184 @@
   changeCurrentVolume(VolumeManagerCommon.VolumeType.DOWNLOADS);
   await waitUntil(isAllBannersHidden);
 }
+
+/**
+ * Test that when chrome.fileManagerPrivate.getSizeStats returns null,
+ * banners relying on specific size are not shown.
+ */
+export async function testNullGetSizeStatsDoesntTriggerThreshold() {
+  controller.setWarningBannersInOrder([testWarningBanners[0].tagName]);
+  testWarningBanners[0].setAllowedVolumeTypes([downloadsAllowedVolumeType]);
+  testWarningBanners[0].setDiskThreshold({
+    type: VolumeManagerCommon.VolumeType.DOWNLOADS,
+    minSize: 1 * 1024 * 1024 * 1024,  // 1 GB
+  });
+
+  await controller.initialize();
+  changeCurrentVolume(VolumeManagerCommon.VolumeType.DOWNLOADS, 'downloads');
+  changeCurrentVolumeDiskSpace(null);
+  await waitUntil(isAllBannersHidden);
+}
+
+/**
+ * Test that setting the remaining size coming back from getSizeStats triggers
+ * the banner to display.
+ */
+export async function testVolumeSizeChangeShowsBanner() {
+  controller.setWarningBannersInOrder([testWarningBanners[0].tagName]);
+  testWarningBanners[0].setAllowedVolumeTypes([downloadsAllowedVolumeType]);
+  testWarningBanners[0].setDiskThreshold({
+    type: VolumeManagerCommon.VolumeType.DOWNLOADS,
+    minSize: 1 * 1024 * 1024 * 1024,  // 1 GB
+  });
+
+  await controller.initialize();
+  changeCurrentVolume(VolumeManagerCommon.VolumeType.DOWNLOADS, 'downloads');
+  await waitUntil(isAllBannersHidden);
+
+  // Change remaining size in the current volume to 512 KB (less than 1 GB)
+  changeCurrentVolumeDiskSpace({
+    totalSize: 20 * 1024 * 1024 * 1024,  // 20 GB
+    remainingSize: 512 * 1024 * 1024,    // 512 KB
+  });
+  await waitUntil(isBannerVisible(testWarningBanners[0]));
+}
+
+/**
+ * Test that when the remaining space goes below the threshold, the banner is
+ * show and if enough free space is reclaimed the banner is hidden.
+ */
+export async function testVolumeSizeBelowShowsBannerAndAboveHidesBanner() {
+  controller.setWarningBannersInOrder([testWarningBanners[0].tagName]);
+  testWarningBanners[0].setAllowedVolumeTypes([downloadsAllowedVolumeType]);
+  testWarningBanners[0].setDiskThreshold({
+    type: VolumeManagerCommon.VolumeType.DOWNLOADS,
+    minSize: 1 * 1024 * 1024 * 1024,  // 1 GB
+  });
+
+  await controller.initialize();
+  changeCurrentVolume(VolumeManagerCommon.VolumeType.DOWNLOADS, 'downloads');
+  await waitUntil(isAllBannersHidden);
+
+  // Verify banner is shown when disk space goes below threshold.
+  changeCurrentVolumeDiskSpace({
+    totalSize: 20 * 1024 * 1024 * 1024,  // 20 GB
+    remainingSize: 512 * 1024 * 1024,    // 512 KB
+  });
+  await waitUntil(isBannerVisible(testWarningBanners[0]));
+
+  // Verify banner is hidden when free space goes above minSize.
+  changeCurrentVolumeDiskSpace({
+    totalSize: 20 * 1024 * 1024 * 1024,     // 20 GB
+    remainingSize: 2 * 1024 * 1024 * 1024,  // 2 GB
+  });
+  await waitUntil(isAllBannersHidden);
+}
+
+/**
+ * Test that multiple banners (with different volume size observers; minRatio
+ * and minSize) can co-exist and will be shown at appropriate times.
+ */
+export async function testTwoVolumeBannersShowOnWatchedVolumeTypes() {
+  controller.setWarningBannersInOrder([
+    testWarningBanners[0].tagName,
+    testWarningBanners[1].tagName,
+  ]);
+
+  // Banner should show on Downloads when volume goes below 1GB remaining size.
+  testWarningBanners[0].setAllowedVolumeTypes([downloadsAllowedVolumeType]);
+  testWarningBanners[0].setDiskThreshold({
+    type: VolumeManagerCommon.VolumeType.DOWNLOADS,
+    minSize: 1 * 1024 * 1024 * 1024,  // 1 GB
+  });
+
+  // Banner should show on Drive when volume goes below 10% remaining free
+  // space.
+  testWarningBanners[1].setAllowedVolumeTypes([driveAllowedVolumeType]);
+  testWarningBanners[1].setDiskThreshold({
+    type: VolumeManagerCommon.VolumeType.DRIVE,
+    minRatio: 0.1,
+  });
+
+  await controller.initialize();
+  changeCurrentVolume(VolumeManagerCommon.VolumeType.DOWNLOADS, 'downloads');
+  await waitUntil(isAllBannersHidden);
+
+  // Verify well below threshold, banner is triggered for minSize.
+  changeCurrentVolumeDiskSpace({
+    totalSize: 20 * 1024 * 1024 * 1024,  // 20 GB
+    remainingSize: 512 * 1024 * 1024,    // 512 KB
+  });
+  await waitUntil(isBannerVisible(testWarningBanners[0]));
+
+  // Verify equal to threshold, banner is triggered for minSize.
+  changeCurrentVolumeDiskSpace({
+    totalSize: 20 * 1024 * 1024 * 1024,     // 20 GB
+    remainingSize: 1 * 1024 * 1024 * 1024,  // 1 GB
+  });
+  await waitUntil(isBannerVisible(testWarningBanners[0]));
+
+  // Change volume to Drive and ensure banner is not shown.
+  changeCurrentVolume(VolumeManagerCommon.VolumeType.DRIVE, 'drive-hash');
+  await waitUntil(isAllBannersHidden);
+
+  // Verify well below threshold, banner is triggered for minRatio.
+  changeCurrentVolumeDiskSpace({
+    totalSize: 20 * 1024 * 1024 * 1024,     // 20 GB
+    remainingSize: 1 * 1024 * 1024 * 1024,  // 1 GB
+  });
+  await waitUntil(isBannerVisible(testWarningBanners[1]));
+
+  // Verify equal to threshold, banner is triggered for minRatio.
+  changeCurrentVolumeDiskSpace({
+    totalSize: 20 * 1024 * 1024 * 1024,     // 20 GB
+    remainingSize: 2 * 1024 * 1024 * 1024,  // 2 GB
+  });
+  await waitUntil(isBannerVisible(testWarningBanners[1]));
+}
+
+/**
+ * Test that if a volume is changed mid way through a volume size request, the
+ * banner is not shown, but the cache is maintained such that navigating back
+ * to the volume causes the banner to show.
+ */
+export async function testChangingDirectoryMidSizeUpdateHidesBanner() {
+  controller.setWarningBannersInOrder(
+      [testWarningBanners[0].tagName, testWarningBanners[1].tagName]);
+  testWarningBanners[0].setAllowedVolumeTypes([downloadsAllowedVolumeType]);
+  testWarningBanners[0].setDiskThreshold({
+    type: VolumeManagerCommon.VolumeType.DOWNLOADS,
+    minSize: 1 * 1024 * 1024 * 1024,  // 1 GB
+  });
+  testWarningBanners[1].setAllowedVolumeTypes([driveAllowedVolumeType]);
+  testWarningBanners[1].setDiskThreshold({
+    type: VolumeManagerCommon.VolumeType.DRIVE,
+    minRatio: 0.1,
+  });
+
+  // Change volume to downloads to ensure the appropriate event listener is
+  // attached to the volume.
+  await controller.initialize();
+  changeCurrentVolume(VolumeManagerCommon.VolumeType.DOWNLOADS, 'downloads');
+  await waitUntil(isAllBannersHidden);
+
+  // Change the underlying disk space to breach the threshold, but don't
+  // dispatch an onDirectoryChanged event.
+  changeCurrentVolumeDiskSpace(
+      {
+        totalSize: 20 * 1024 * 1024 * 1024,  // 20 GB
+        remainingSize: 512 * 1024 * 1024,    // 512 KB
+      },
+      /* dispatchEvent */ false);
+
+  // Change the current volume and dispatch an onDirectoryChanged event, this
+  // emulates a user changing the directory mid volume size request.
+  changeCurrentVolume(VolumeManagerCommon.VolumeType.DRIVE, 'drive-hash');
+  mockChromeFileManagerPrivate.dispatchOnDirectoryChanged();
+  await waitUntil(isAllBannersHidden);
+
+  // Change the volume back to the downloads directory and assert the directory
+  // size causes the banner to be shown.
+  changeCurrentVolume(VolumeManagerCommon.VolumeType.DOWNLOADS, 'downloads');
+  await waitUntil(isBannerVisible(testWarningBanners[0]));
+}
diff --git a/ui/file_manager/file_manager/foreground/js/file_manager.js b/ui/file_manager/file_manager/foreground/js/file_manager.js
index 21a21ad..1e7eeb7 100644
--- a/ui/file_manager/file_manager/foreground/js/file_manager.js
+++ b/ui/file_manager/file_manager/foreground/js/file_manager.js
@@ -738,7 +738,8 @@
     this.ui_.listContainer.endBatchUpdates();
 
     if (util.isBannerFrameworkEnabled()) {
-      this.ui_.initBanners(new BannerController(this.directoryModel_));
+      this.ui_.initBanners(
+          new BannerController(this.directoryModel_, this.volumeManager_));
     } else {
       this.ui_.initBanners(new Banners(
           this.directoryModel_, this.volumeManager_, this.document_,
diff --git a/ui/webui/webui_allowlist.cc b/ui/webui/webui_allowlist.cc
index 525848a..adc307e 100644
--- a/ui/webui/webui_allowlist.cc
+++ b/ui/webui/webui_allowlist.cc
@@ -107,10 +107,9 @@
 
 std::unique_ptr<content_settings::RuleIterator> WebUIAllowlist::GetRuleIterator(
     ContentSettingsType content_type) const {
-  const auto& type_to_origin_rules = permissions_.find(content_type);
-  if (type_to_origin_rules != permissions_.cend()) {
-    return std::make_unique<AllowlistRuleIterator>(
-        type_to_origin_rules->second);
+  auto permissions_it = permissions_.find(content_type);
+  if (permissions_it != permissions_.end()) {
+    return std::make_unique<AllowlistRuleIterator>(permissions_it->second);
   }
 
   return nullptr;
diff --git a/ui/wm/core/transient_window_manager.cc b/ui/wm/core/transient_window_manager.cc
index f045c10..0bf41b4 100644
--- a/ui/wm/core/transient_window_manager.cc
+++ b/ui/wm/core/transient_window_manager.cc
@@ -62,6 +62,9 @@
   // isn't installed stacking is going to be wrong.
   DCHECK(TransientWindowStackingClient::instance_);
 
+  // Self-owning windows break things, shouldn't happen.
+  DCHECK_NE(this->window_, child);
+
   TransientWindowManager* child_manager = GetOrCreate(child);
   if (child_manager->transient_parent_)
     GetOrCreate(child_manager->transient_parent_)->RemoveTransientChild(child);